/******************************************************************************
 *                                                                            *
 * Copyright (C) 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at:
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 *****************************************************************************
 * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
*/
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <assert.h>

#include <ixheaacd_type_def.h>
#include "ixheaacd_bitbuffer.h"
#include "ixheaacd_config.h"

#include "ixheaacd_mps_polyphase.h"
#include "ixheaacd_mps_dec.h"
#include "ixheaacd_mps_interface.h"

#include "ixheaacd_mps_nlc_dec.h"
#include "ixheaacd_mps_huff_tab.h"

ia_huff_cld_nodes_struct ixheaacd_huff_cld_nodes = {
    {{{{-1, 1},   {-2, 2},   {-3, 3},    {-4, 4},    {-5, 5},    {-6, 6},
       {-7, 7},   {-8, 8},   {-9, 9},    {-10, 10},  {-11, 11},  {-12, 12},
       {-13, 13}, {15, 14},  {-14, 16},  {-15, 17},  {-16, 18},  {-17, 19},
       {-18, 20}, {-19, 21}, {-20, -21}, {-23, 22},  {-22, 23},  {-24, 24},
       {-25, 25}, {27, 26},  {29, 28},   {-30, -31}, {-28, -29}, {-26, -27}}},
     {{{-1, 1},   {-2, 2},    {-3, 3},   {-4, 4},    {-5, 5},    {-6, 6},
       {-7, 7},   {9, 8},     {-8, 10},  {-9, 11},   {-10, 12},  {-11, 13},
       {-12, 14}, {-13, 15},  {-14, 16}, {-15, 17},  {-16, 18},  {-17, 19},
       {-18, 20}, {-19, -20}, {-21, 21}, {-22, 22},  {-23, 23},  {25, 24},
       {-24, 26}, {-25, 27},  {29, 28},  {-26, -31}, {-29, -30}, {-27, -28}}},
     {{{-1, 1},   {-2, 2},    {-3, 3},   {-4, 4},    {-5, 5},    {-6, 6},
       {-7, 7},   {9, 8},     {-8, 10},  {-9, 11},   {-10, 12},  {-11, 13},
       {-12, 14}, {-13, 15},  {-14, 16}, {-15, 17},  {-16, 18},  {-17, 19},
       {-18, 20}, {-19, -20}, {-21, 21}, {-22, 22},  {-23, 23},  {25, 24},
       {-24, 26}, {-25, 27},  {29, 28},  {-26, -31}, {-29, -30}, {-27, -28}}}},
    {{{{{2, 1},
        {-1, -52},
        {4, 3},
        {-2, 5},
        {-51, 6},
        {-17, -18},
        {8, 7},
        {10, 9},
        {-3, -36},
        {-19, 11},
        {-35, -50},
        {-34, 12},
        {-4, 13},
        {-33, 14},
        {-20, -49}},
       {{2, 1},     {4, 3},     {-86, 5},  {7, 6},    {9, 8},     {-1, -2},
        {-85, 10},  {-18, 11},  {-17, 12}, {14, 13},  {-70, 15},  {17, 16},
        {-19, -69}, {-84, 18},  {-3, 19},  {21, 20},  {-34, -68}, {-20, 22},
        {-35, 23},  {-83, 24},  {-33, 25}, {-4, 26},  {-53, 27},  {-54, -67},
        {-36, 28},  {-21, -52}, {-82, 29}, {-5, -50}, {-51, 30},  {-38, 31},
        {-37, -49}, {-6, 32},   {-66, 33}, {-65, 34}, {-22, -81}},
       {{2, 1},      {4, 3},     {-120, 5},   {7, 6},      {9, 8},
        {11, 10},    {-1, 12},   {-18, -119}, {-2, 13},    {15, 14},
        {-17, 16},   {-104, 17}, {19, 18},    {-19, 20},   {-103, 21},
        {-118, 22},  {24, 23},   {-3, 25},    {27, 26},    {-34, 28},
        {-102, 29},  {-20, 30},  {-35, 31},   {33, 32},    {-117, 34},
        {-33, 35},   {-88, 36},  {-4, 37},    {-87, 38},   {40, 39},
        {-36, -101}, {-86, 41},  {-21, -37},  {-85, -100}, {-52, 42},
        {-22, 43},   {-116, 44}, {-50, 45},   {47, 46},    {-5, -51},
        {-115, 48},  {-70, 49},  {-84, 50},   {-38, -49},  {-72, -99},
        {-53, 51},   {-69, -71}, {-23, 52},   {-6, -67},   {-114, 53},
        {-7, 54},    {-66, -68}, {-55, 55},   {57, 56},    {-54, -65},
        {-8, -56},   {-82, -83}, {59, 58},    {-39, -40},  {-81, 60},
        {-98, 61},   {-97, 62},  {-24, -113}},
       {{2, 1},      {4, 3},      {6, 5},      {-154, 7},    {9, 8},
        {11, 10},    {13, 12},    {15, 14},    {-18, 16},    {-153, 17},
        {-1, -2},    {19, 18},    {-138, 20},  {-17, 21},    {23, 22},
        {25, 24},    {-19, -137}, {27, 26},    {-152, 28},   {30, 29},
        {-3, -34},   {32, 31},    {34, 33},    {36, 35},     {-136, 37},
        {-35, 38},   {-20, 39},   {-122, 40},  {-151, 41},   {-33, 42},
        {-121, 43},  {45, 44},    {47, 46},    {-4, 48},     {-36, -120},
        {-135, 49},  {51, 50},    {-21, 52},   {54, 53},     {56, 55},
        {-50, -150}, {58, 57},    {-51, 59},   {61, 60},     {-119, 62},
        {-52, 63},   {-5, 64},    {-37, 65},   {-117, -134}, {-39, -54},
        {-22, 66},   {-106, 67},  {-69, -102}, {-132, 68},   {-105, 69},
        {-49, 70},   {-149, 71},  {-24, -104}, {73, 72},     {-53, 74},
        {-38, -118}, {-103, 75},  {-6, 76},    {-66, -87},   {-133, -147},
        {-23, 77},   {-67, 78},   {-68, -86},  {-70, -101},  {-40, -148},
        {-116, 79},  {-55, 80},   {-84, -131}, {82, 81},     {-89, -90},
        {-7, -25},   {-85, -88},  {-65, 83},   {-72, -146},  {85, 84},
        {-9, -71},   {-83, 86},   {-82, 87},   {-8, 88},     {-100, 89},
        {-74, -99},  {-73, 90},   {-10, -81},  {-56, 91},    {-57, -98},
        {93, 92},    {-58, -114}, {-97, -115}, {95, 94},     {-41, 96},
        {-42, 97},   {-26, -129}, {-113, 98},  {-130, -145}}},
      {{{-1, 1},
        {-52, 2},
        {-17, 3},
        {5, 4},
        {-36, 6},
        {-33, 7},
        {-2, -18},
        {-20, 8},
        {10, 9},
        {-34, -49},
        {-51, 11},
        {-35, 12},
        {-19, 13},
        {-3, 14},
        {-4, -50}},
       {{2, 1},    {4, 3},     {-86, 5},  {-1, 6},   {-17, 7},   {-70, 8},
        {10, 9},   {-18, 11},  {-33, 12}, {-54, 13}, {-2, 14},   {-34, 15},
        {-38, 16}, {-49, 17},  {-85, 18}, {-50, 19}, {-69, 20},  {-53, -65},
        {-22, 21}, {-66, 22},  {-19, 23}, {-37, 24}, {-35, -81}, {-3, 25},
        {-51, 26}, {-68, -84}, {-52, 27}, {29, 28},  {-20, 30},  {-4, -36},
        {-83, 31}, {-67, 32},  {-21, 33}, {-5, 34},  {-6, -82}},
       {{2, 1},      {4, 3},     {6, 5},       {-120, 7},  {-17, 8},
        {-1, -104},  {10, 9},    {12, 11},     {-18, 13},  {-33, -88},
        {15, 14},    {17, 16},   {-2, 18},     {-34, 19},  {-72, 20},
        {-49, 21},   {-119, 22}, {-50, 23},    {-103, 24}, {-56, 25},
        {-65, 26},   {28, 27},   {-40, -87},   {-66, 29},  {-82, 30},
        {32, 31},    {-19, -81}, {-71, 33},    {-97, 34},  {-35, -55},
        {-24, 35},   {37, 36},   {-3, -98},    {-51, 38},  {-67, 39},
        {-39, -118}, {-113, 40}, {-102, 41},   {-86, 42},  {-70, -83},
        {44, 43},    {-20, -54}, {-52, 45},    {-36, 46},  {-4, 47},
        {-68, 48},   {-85, 49},  {-101, -117}, {-69, 50},  {52, 51},
        {-21, -37},  {-53, 53},  {55, 54},     {-5, -100}, {-116, 56},
        {-84, 57},   {-38, 58},  {-22, -99},   {-115, 59}, {-6, 60},
        {-23, 61},   {-7, 62},   {-114, 0}},
       {{2, 1},      {4, 3},       {6, 5},       {-154, 7},    {9, 8},
        {-17, 10},   {-138, 11},   {-1, 12},     {14, 13},     {16, 15},
        {-33, -122}, {-18, 17},    {19, 18},     {-34, 20},    {-2, 21},
        {-106, 22},  {-49, 23},    {25, 24},     {-50, 26},    {-153, 27},
        {-90, 28},   {-137, 29},   {-65, 30},    {32, 31},     {-66, 33},
        {-121, 34},  {-74, 35},    {-81, 36},    {38, 37},     {-42, 39},
        {-82, 40},   {-105, 41},   {-19, -114},  {-58, 42},    {-35, 43},
        {-97, 44},   {46, 45},     {-129, 47},   {-26, -89},   {-57, -98},
        {-51, 48},   {-3, 49},     {-113, 50},   {-130, 51},   {-152, 52},
        {-67, -73},  {-99, -136},  {-145, 53},   {-120, 54},   {-41, 55},
        {-83, 56},   {-72, 57},    {-104, 58},   {-115, 59},   {-20, 60},
        {62, 61},    {-36, -88},   {-84, 63},    {-52, -56},   {65, 64},
        {-4, -87},   {-68, 66},    {-151, 67},   {-100, -135}, {69, 68},
        {-69, -119}, {-103, 70},   {-71, 71},    {73, 72},     {-21, 74},
        {-85, 75},   {-37, -53},   {-86, 76},    {78, 77},     {-102, -150},
        {-5, 79},    {-134, 80},   {-118, 81},   {-54, -117},  {83, 82},
        {-38, -70},  {-22, 84},    {-6, 85},     {87, 86},     {-55, 88},
        {-101, 89},  {-133, -149}, {-24, -39},   {91, 90},     {-132, 92},
        {-23, 93},   {-7, 94},     {-147, -148}, {-116, -131}, {-25, 95},
        {-40, 0},    {0, 0},       {0, 0},       {0, 0}}}},
     {{{{-1, 1},
        {-52, 2},
        {-17, 3},
        {5, 4},
        {-2, -36},
        {-18, 6},
        {8, 7},
        {-51, 9},
        {-33, 10},
        {-34, 11},
        {-20, -35},
        {-19, 12},
        {-3, 13},
        {-49, 14},
        {-4, -50}},
       {{2, 1},     {-86, 3},   {-1, 4},   {-17, 5},   {7, 6},    {-70, 8},
        {-2, -18},  {10, 9},    {12, 11},  {-85, 13},  {-33, 14}, {-34, -54},
        {16, 15},   {-69, 17},  {19, 18},  {-50, -53}, {-19, 20}, {-38, 21},
        {-35, -49}, {-3, 22},   {24, 23},  {-68, 25},  {-84, 26}, {-65, 27},
        {-51, -66}, {-22, -37}, {-52, 28}, {-20, 29},  {-36, 30}, {-81, 31},
        {-4, -83},  {-67, 32},  {-21, 33}, {-5, 34},   {-6, -82}},
       {{2, 1},     {-120, 3},  {-1, 4},     {6, 5},      {-17, 7},
        {-104, 8},  {-18, 9},   {-2, 10},    {12, 11},    {14, 13},
        {-119, 15}, {-33, 16},  {-34, -88},  {-103, 17},  {19, 18},
        {21, 20},   {23, 22},   {25, 24},    {-19, -72},  {-50, 26},
        {-49, 27},  {-87, 28},  {30, 29},    {32, 31},    {-3, -35},
        {34, 33},   {-56, 35},  {-65, -66},  {-40, 36},   {-82, -118},
        {-71, 37},  {-55, 38},  {-67, -102}, {-51, 39},   {-70, 40},
        {42, 41},   {-81, 43},  {-86, 44},   {-52, -97},  {-98, 45},
        {-24, -39}, {-20, 46},  {-54, -83},  {-36, 47},   {-85, 48},
        {-68, 49},  {-4, 50},   {-69, -113}, {-117, 51},  {-37, -101},
        {-53, 52},  {-21, 53},  {55, 54},    {-84, -100}, {-5, 56},
        {-116, 57}, {-22, 58},  {-38, -115}, {60, 59},    {-6, -99},
        {-23, 61},  {-114, 62}, {-7, -8}},
       {{2, 1},     {-154, 3},    {5, 4},      {-1, 6},      {8, 7},
        {-17, 9},   {-138, 10},   {-18, 11},   {-2, 12},     {14, 13},
        {16, 15},   {-153, 17},   {-34, 18},   {-33, -122},  {20, 19},
        {22, 21},   {-137, 23},   {25, 24},    {27, 26},     {-106, 28},
        {30, 29},   {-50, 31},    {-19, 32},   {-49, -121},  {34, 33},
        {36, 35},   {-35, 37},    {-90, 38},   {-66, 39},    {-3, 40},
        {42, 41},   {-65, 43},    {-105, 44},  {46, 45},     {-74, 47},
        {-51, 48},  {-82, -152},  {-136, 49},  {-81, 50},    {-42, -89},
        {-114, 51}, {53, 52},     {-57, -58},  {-120, 54},   {-98, 55},
        {-67, 56},  {-97, 57},    {59, 58},    {-99, 60},    {-73, -104},
        {-72, 61},  {-113, 62},   {-20, -83},  {-84, -130},  {-36, 63},
        {-26, 64},  {-41, 65},    {-52, -129}, {-87, -88},   {67, 66},
        {-115, 68}, {-68, 69},    {-56, -69},  {-4, -100},   {-151, 70},
        {-135, 71}, {-103, -119}, {73, 72},    {-71, -145},  {-102, 74},
        {76, 75},   {-53, -85},   {-37, 77},   {-21, -86},   {79, 78},
        {-5, 80},   {-54, -134},  {-150, 81},  {-118, 82},   {-70, 83},
        {-117, 84}, {-22, -38},   {-101, 85},  {-55, 86},    {-149, 87},
        {-39, 88},  {-133, 89},   {-6, 90},    {-116, 91},   {-24, 92},
        {-7, -132}, {-23, 93},    {-40, 94},   {-131, -148}, {-25, 95},
        {-147, 96}, {-146, 97},   {-8, 0},     {0, 0}}},
      {{{-1, 1},
        {-52, 2},
        {4, 3},
        {-2, 5},
        {-17, 6},
        {-18, 7},
        {-36, -51},
        {9, 8},
        {-35, 10},
        {-34, 11},
        {-19, -33},
        {-3, 12},
        {-20, 13},
        {-50, 14},
        {-4, -49}},
       {{2, 1},    {-86, 3},   {5, 4},     {-1, 6},   {8, 7},    {-17, -18},
        {-2, 9},   {-70, 10},  {-85, 11},  {13, 12},  {-69, 14}, {-34, 15},
        {17, 16},  {-19, 18},  {-33, -35}, {-54, 19}, {-53, 20}, {-3, 21},
        {-68, 22}, {-84, 23},  {-50, 24},  {-52, 25}, {-51, 26}, {-20, -36},
        {-49, 27}, {-38, 28},  {-37, 29},  {-4, -83}, {-67, 30}, {-66, 31},
        {-21, 32}, {-22, -65}, {-5, 33},   {-82, 34}, {-6, -81}},
       {{2, 1},      {4, 3},     {-120, 5},  {7, 6},      {9, 8},
        {-1, 10},    {-18, 11},  {-17, 12},  {-2, -104},  {-119, 13},
        {15, 14},    {-103, 16}, {18, 17},   {-34, 19},   {-19, 20},
        {22, 21},    {-35, 23},  {-33, 24},  {-88, 25},   {-87, 26},
        {28, 27},    {-3, -102}, {-86, 29},  {-52, -118}, {31, 30},
        {-50, 32},   {-51, 33},  {-70, 34},  {-36, 35},   {-85, 36},
        {-20, 37},   {39, 38},   {-69, -71}, {-72, 40},   {-49, -67},
        {42, 41},    {-68, 43},  {-4, -101}, {-53, -117}, {-37, 44},
        {-66, 45},   {-55, 46},  {48, 47},   {-54, 49},   {-21, 50},
        {-84, -100}, {-56, -65}, {52, 51},   {-82, -83},  {54, 53},
        {-5, -116},  {-22, 55},  {-38, 56},  {-39, -40},  {58, 57},
        {-81, -115}, {-98, -99}, {-6, 59},   {-23, 60},   {-24, 61},
        {-7, -97},   {-114, 62}, {-8, -113}},
       {{2, 1},       {4, 3},      {-154, 5},    {7, 6},      {9, 8},
        {11, 10},     {-1, 12},    {-18, 13},    {-17, 14},   {-2, -138},
        {16, 15},     {-153, 17},  {-137, 18},   {20, 19},    {22, 21},
        {-34, 23},    {-19, 24},   {-35, 25},    {27, 26},    {29, 28},
        {-121, 30},   {-120, 31},  {-136, 32},   {-33, -122}, {34, 33},
        {-152, 35},   {-3, 36},    {-51, 37},    {-52, 38},   {-69, 39},
        {-36, 40},    {-50, 41},   {43, 42},     {-20, 44},   {-104, 45},
        {-103, 46},   {-87, 47},   {-119, 48},   {-105, 49},  {-86, 50},
        {-102, 51},   {-106, 52},  {-49, -135},  {-68, 53},   {55, 54},
        {-53, 56},    {-67, -151}, {-4, 57},     {-84, 58},   {-85, 59},
        {-66, 60},    {-37, 61},   {-70, 62},    {-54, -88},  {-21, 63},
        {65, 64},     {-89, 66},   {-118, 67},   {-72, 68},   {-90, 69},
        {-71, 70},    {-65, -134}, {-150, 71},   {-83, 72},   {-5, 73},
        {-101, -117}, {-82, 74},   {76, 75},     {-99, 77},   {-38, 78},
        {-100, 79},   {-22, 80},   {-73, 81},    {-39, -74},  {83, 82},
        {-55, -81},   {-57, 84},   {-133, -149}, {-56, 85},   {-6, 86},
        {-98, 87},    {-132, 88},  {-23, 89},    {-114, 90},  {-116, 91},
        {-58, -115},  {-24, 92},   {-97, -148},  {-40, -41},  {-7, -42},
        {-147, 93},   {95, 94},    {-131, 96},   {-8, -130},  {-25, -113},
        {-9, 97},     {-26, -129}, {-146, 98},   {-10, -145}}}},
     {{{{-1, 1},
        {-52, 2},
        {-17, 3},
        {5, 4},
        {-36, 6},
        {-33, 7},
        {-2, -18},
        {-20, 8},
        {10, 9},
        {-34, -49},
        {-51, 11},
        {-35, 12},
        {-19, 13},
        {-3, 14},
        {-4, -50}},
       {{2, 1},    {4, 3},     {-86, 5},  {-1, 6},   {-17, 7},   {-70, 8},
        {10, 9},   {-18, 11},  {-33, 12}, {-54, 13}, {-2, 14},   {-34, 15},
        {-38, 16}, {-49, 17},  {-85, 18}, {-50, 19}, {-69, 20},  {-53, -65},
        {-22, 21}, {-66, 22},  {-19, 23}, {-37, 24}, {-35, -81}, {-3, 25},
        {-51, 26}, {-68, -84}, {-52, 27}, {29, 28},  {-20, 30},  {-4, -36},
        {-83, 31}, {-67, 32},  {-21, 33}, {-5, 34},  {-6, -82}},
       {{2, 1},      {4, 3},     {6, 5},       {-120, 7},  {-17, 8},
        {-1, -104},  {10, 9},    {12, 11},     {-18, 13},  {-33, -88},
        {15, 14},    {17, 16},   {-2, 18},     {-34, 19},  {-72, 20},
        {-49, 21},   {-119, 22}, {-50, 23},    {-103, 24}, {-56, 25},
        {-65, 26},   {28, 27},   {-40, -87},   {-66, 29},  {-82, 30},
        {32, 31},    {-19, -81}, {-71, 33},    {-97, 34},  {-35, -55},
        {-24, 35},   {37, 36},   {-3, -98},    {-51, 38},  {-67, 39},
        {-39, -118}, {-113, 40}, {-102, 41},   {-86, 42},  {-70, -83},
        {44, 43},    {-20, -54}, {-52, 45},    {-36, 46},  {-4, 47},
        {-68, 48},   {-85, 49},  {-101, -117}, {-69, 50},  {52, 51},
        {-21, -37},  {-53, 53},  {55, 54},     {-5, -100}, {-116, 56},
        {-84, 57},   {-38, 58},  {-22, -99},   {-115, 59}, {-6, 60},
        {-23, 61},   {-7, 62},   {-114, 0}},
       {{2, 1},      {4, 3},       {6, 5},       {-154, 7},    {9, 8},
        {-17, 10},   {-138, 11},   {-1, 12},     {14, 13},     {16, 15},
        {-33, -122}, {-18, 17},    {19, 18},     {-34, 20},    {-2, 21},
        {-106, 22},  {-49, 23},    {25, 24},     {-50, 26},    {-153, 27},
        {-90, 28},   {-137, 29},   {-65, 30},    {32, 31},     {-66, 33},
        {-121, 34},  {-74, 35},    {-81, 36},    {38, 37},     {-42, 39},
        {-82, 40},   {-105, 41},   {-19, -114},  {-58, 42},    {-35, 43},
        {-97, 44},   {46, 45},     {-129, 47},   {-26, -89},   {-57, -98},
        {-51, 48},   {-3, 49},     {-113, 50},   {-130, 51},   {-152, 52},
        {-67, -73},  {-99, -136},  {-145, 53},   {-120, 54},   {-41, 55},
        {-83, 56},   {-72, 57},    {-104, 58},   {-115, 59},   {-20, 60},
        {62, 61},    {-36, -88},   {-84, 63},    {-52, -56},   {65, 64},
        {-4, -87},   {-68, 66},    {-151, 67},   {-100, -135}, {69, 68},
        {-69, -119}, {-103, 70},   {-71, 71},    {73, 72},     {-21, 74},
        {-85, 75},   {-37, -53},   {-86, 76},    {78, 77},     {-102, -150},
        {-5, 79},    {-134, 80},   {-118, 81},   {-54, -117},  {83, 82},
        {-38, -70},  {-22, 84},    {-6, 85},     {87, 86},     {-55, 88},
        {-101, 89},  {-133, -149}, {-24, -39},   {91, 90},     {-132, 92},
        {-23, 93},   {-7, 94},     {-147, -148}, {-116, -131}, {-25, 95},
        {-40, 0},    {0, 0},       {0, 0},       {0, 0}}},
      {{{-1, 1},
        {-52, 2},
        {-17, 3},
        {5, 4},
        {-36, 6},
        {-33, 7},
        {-2, -18},
        {-20, 8},
        {10, 9},
        {-34, -49},
        {-51, 11},
        {-35, 12},
        {-19, 13},
        {-3, 14},
        {-4, -50}},
       {{2, 1},    {4, 3},     {-86, 5},  {-1, 6},   {-17, 7},   {-70, 8},
        {10, 9},   {-18, 11},  {-33, 12}, {-54, 13}, {-2, 14},   {-34, 15},
        {-38, 16}, {-49, 17},  {-85, 18}, {-50, 19}, {-69, 20},  {-53, -65},
        {-22, 21}, {-66, 22},  {-19, 23}, {-37, 24}, {-35, -81}, {-3, 25},
        {-51, 26}, {-68, -84}, {-52, 27}, {29, 28},  {-20, 30},  {-4, -36},
        {-83, 31}, {-67, 32},  {-21, 33}, {-5, 34},  {-6, -82}},
       {{2, 1},      {4, 3},     {6, 5},       {-120, 7},  {-17, 8},
        {-1, -104},  {10, 9},    {12, 11},     {-18, 13},  {-33, -88},
        {15, 14},    {17, 16},   {-2, 18},     {-34, 19},  {-72, 20},
        {-49, 21},   {-119, 22}, {-50, 23},    {-103, 24}, {-56, 25},
        {-65, 26},   {28, 27},   {-40, -87},   {-66, 29},  {-82, 30},
        {32, 31},    {-19, -81}, {-71, 33},    {-97, 34},  {-35, -55},
        {-24, 35},   {37, 36},   {-3, -98},    {-51, 38},  {-67, 39},
        {-39, -118}, {-113, 40}, {-102, 41},   {-86, 42},  {-70, -83},
        {44, 43},    {-20, -54}, {-52, 45},    {-36, 46},  {-4, 47},
        {-68, 48},   {-85, 49},  {-101, -117}, {-69, 50},  {52, 51},
        {-21, -37},  {-53, 53},  {55, 54},     {-5, -100}, {-116, 56},
        {-84, 57},   {-38, 58},  {-22, -99},   {-115, 59}, {-6, 60},
        {-23, 61},   {-7, 62},   {-114, 0}},
       {{2, 1},      {4, 3},       {6, 5},       {-154, 7},    {9, 8},
        {-17, 10},   {-138, 11},   {-1, 12},     {14, 13},     {16, 15},
        {-33, -122}, {-18, 17},    {19, 18},     {-34, 20},    {-2, 21},
        {-106, 22},  {-49, 23},    {25, 24},     {-50, 26},    {-153, 27},
        {-90, 28},   {-137, 29},   {-65, 30},    {32, 31},     {-66, 33},
        {-121, 34},  {-74, 35},    {-81, 36},    {38, 37},     {-42, 39},
        {-82, 40},   {-105, 41},   {-19, -114},  {-58, 42},    {-35, 43},
        {-97, 44},   {46, 45},     {-129, 47},   {-26, -89},   {-57, -98},
        {-51, 48},   {-3, 49},     {-113, 50},   {-130, 51},   {-152, 52},
        {-67, -73},  {-99, -136},  {-145, 53},   {-120, 54},   {-41, 55},
        {-83, 56},   {-72, 57},    {-104, 58},   {-115, 59},   {-20, 60},
        {62, 61},    {-36, -88},   {-84, 63},    {-52, -56},   {65, 64},
        {-4, -87},   {-68, 66},    {-151, 67},   {-100, -135}, {69, 68},
        {-69, -119}, {-103, 70},   {-71, 71},    {73, 72},     {-21, 74},
        {-85, 75},   {-37, -53},   {-86, 76},    {78, 77},     {-102, -150},
        {-5, 79},    {-134, 80},   {-118, 81},   {-54, -117},  {83, 82},
        {-38, -70},  {-22, 84},    {-6, 85},     {87, 86},     {-55, 88},
        {-101, 89},  {-133, -149}, {-24, -39},   {91, 90},     {-132, 92},
        {-23, 93},   {-7, 94},     {-147, -148}, {-116, -131}, {-25, 95},
        {-40, 0},    {0, 0},       {0, 0},       {0, 0}}}}}};

ia_huff_icc_nodes_struct ixheaacd_huff_icc_nodes = {
    {{{{-1, 1}, {-2, 2}, {-3, 3}, {-4, 4}, {-5, 5}, {-6, 6}, {-7, -8}}},
     {{{-1, 1}, {-2, 2}, {-3, 3}, {-4, 4}, {-5, 5}, {-6, 6}, {-7, -8}}},
     {{{-1, 1}, {-2, 2}, {-3, 3}, {-4, 4}, {-5, 5}, {-6, 6}, {-7, -8}}}},
    {{{{{-1, 1}, {-18, 2}, {-2, -17}},
       {{2, 1},
        {-1, -52},
        {-2, 3},
        {5, 4},
        {-51, 6},
        {-18, 7},
        {-17, 8},
        {-3, 9},
        {-36, 10},
        {-19, -50},
        {-35, 11},
        {-4, 12},
        {-34, 13},
        {-33, 14},
        {-20, -49}},
       {{2, 1},     {-86, 3},  {-1, 4},   {6, 5},     {-2, 7},    {-85, 8},
        {-18, 9},   {11, 10},  {-17, 12}, {14, 13},   {-70, 15},  {-3, -19},
        {-69, 16},  {-84, 17}, {-68, 18}, {-20, -35}, {-34, -83}, {20, 19},
        {-4, 21},   {-33, 22}, {-5, 23},  {-53, 24},  {-36, -52}, {-67, 25},
        {-21, -82}, {-54, 26}, {-6, 27},  {-51, 28},  {-50, 29},  {-49, 30},
        {-37, 31},  {-38, 0},  {0, 0},    {0, 0},     {0, 0}},
       {{2, 1},     {4, 3},     {-1, -120}, {6, 5},      {8, 7},     {-18, 9},
        {-2, 10},   {12, 11},   {14, 13},   {-17, -119}, {16, 15},   {-103, 17},
        {-104, 18}, {-52, 19},  {21, 20},   {-69, 22},   {24, 23},   {-3, -35},
        {-19, 25},  {-34, -85}, {27, 26},   {-86, 28},   {-118, 29}, {-37, 30},
        {32, 31},   {-102, 33}, {-20, -22}, {-4, -117},  {-87, 34},  {-100, 35},
        {-33, -36}, {37, 36},   {-70, -88}, {-101, 38},  {-5, 39},   {-51, -53},
        {-50, 40},  {-115, 41}, {-21, 42},  {-116, 43},  {-38, 44},  {-23, -84},
        {-49, -99}, {46, 45},   {-6, -114}, {-7, -72},   {-71, 47},  {-8, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0}}},
      {{{-1, 1}, {-18, 2}, {-2, -17}},
       {{2, 1},
        {-1, -52},
        {-17, 3},
        {5, 4},
        {-36, 6},
        {-2, 7},
        {-18, -33},
        {9, 8},
        {-20, 10},
        {-34, -51},
        {-49, 11},
        {-35, 12},
        {-19, 13},
        {-3, 14},
        {-4, -50}},
       {{2, 1},     {-86, 3},   {-1, 4},   {-17, 5},   {7, 6},    {-70, 8},
        {-33, 9},   {-18, 10},  {-2, 11},  {-54, 12},  {-49, 13}, {-38, 14},
        {-34, -65}, {-85, 15},  {-50, 16}, {-69, 17},  {-22, 18}, {-53, 19},
        {21, 20},   {-19, -81}, {-66, 22}, {-3, -35},  {24, 23},  {-37, 25},
        {-68, -84}, {-51, 26},  {28, 27},  {-20, -52}, {30, 29},  {-4, -36},
        {-83, 31},  {-67, 32},  {-82, 33}, {-21, 34},  {-5, -6}},
       {{2, 1},     {-1, 3},     {-120, 4},   {-17, 5},   {7, 6},
        {-104, 8},  {-33, 9},    {11, 10},    {13, 12},   {-49, 14},
        {-88, 15},  {-18, -97},  {-65, 16},   {-40, 17},  {-2, -72},
        {19, 18},   {-113, 20},  {-34, 21},   {-56, -81}, {23, 22},
        {-50, 24},  {-82, -119}, {-24, -103}, {26, 25},   {28, 27},
        {30, 29},   {-55, -87},  {-66, 31},   {33, 32},   {-98, 34},
        {-35, -67}, {-19, 35},   {-70, 36},   {-71, 37},  {-51, -52},
        {-3, 38},   {40, 39},    {-86, -118}, {42, 41},   {-39, -69},
        {-54, -83}, {44, 43},    {-102, 45},  {-101, 46}, {-68, -85},
        {-36, -53}, {-5, 0},     {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0}}}},
     {{{{-1, 1}, {-18, 2}, {-2, -17}},
       {{-52, 1},
        {-1, 2},
        {4, 3},
        {-2, -17},
        {-18, 5},
        {-36, 6},
        {-51, 7},
        {9, 8},
        {-33, 10},
        {-34, 11},
        {-35, 12},
        {-19, -20},
        {-3, 13},
        {-49, 14},
        {-4, -50}},
       {{-1, 1},    {-86, 2},  {4, 3},     {-17, 5},  {-2, 6},    {-18, 7},
        {-70, 8},   {-85, 9},  {11, 10},   {13, 12},  {-33, 14},  {16, 15},
        {-34, -54}, {-69, 17}, {-38, 18},  {-50, 19}, {-35, -53}, {-49, 20},
        {-19, 21},  {-3, 22},  {-65, 23},  {-68, 24}, {-22, 25},  {-81, -84},
        {-66, 26},  {-37, 27}, {-20, -51}, {29, 28},  {-52, 30},  {-4, -83},
        {-36, 31},  {-67, 32}, {-5, 33},   {-82, 34}, {-21, 0}},
       {{-1, 1},   {-120, 2},   {4, 3},     {-17, 5},   {-2, 6},
        {8, 7},    {-18, 9},    {-104, 10}, {12, 11},   {14, 13},
        {16, 15},  {-119, 17},  {-81, 18},  {20, 19},   {-33, 21},
        {-88, 22}, {-103, 23},  {-34, 24},  {-56, 25},  {-72, 26},
        {-49, 27}, {-82, 28},   {-50, 29},  {-65, 30},  {-55, -87},
        {-19, 31}, {-67, 32},   {-35, -40}, {34, 33},   {-52, -71},
        {-66, 35}, {-70, 36},   {38, 37},   {-51, -97}, {-86, -102},
        {-3, 39},  {-118, 40},  {42, 41},   {-24, -85}, {-54, 43},
        {-39, 44}, {-98, -113}, {-36, -37}, {-20, -69}, {-4, 45},
        {-5, 46},  {-21, 0},    {0, 0},     {0, 0},     {0, 0},
        {0, 0},    {0, 0},      {0, 0},     {0, 0},     {0, 0},
        {0, 0},    {0, 0},      {0, 0},     {0, 0},     {0, 0},
        {0, 0},    {0, 0},      {0, 0}}},
      {{{-1, 1}, {-18, 2}, {-2, -17}},
       {{-52, 1},
        {-1, 2},
        {4, 3},
        {-2, 5},
        {-17, -18},
        {-51, 6},
        {-36, 7},
        {9, 8},
        {-35, 10},
        {-3, 11},
        {-19, -34},
        {-33, 12},
        {-50, 13},
        {-20, 14},
        {-4, -49}},
       {{2, 1},    {-86, 3},   {-1, 4},    {6, 5},     {-18, 7},  {-2, -17},
        {9, 8},    {-70, 10},  {-69, -85}, {-35, 11},  {13, 12},  {-34, 14},
        {-19, 15}, {-53, 16},  {-68, 17},  {-33, 18},  {-3, -52}, {20, 19},
        {-54, 21}, {-84, 22},  {-50, 23},  {-20, -51}, {-36, 24}, {26, 25},
        {-83, 27}, {-4, -38},  {-49, 28},  {-37, 29},  {-67, 30}, {-5, 31},
        {-21, 32}, {-65, -66}, {-82, 33},  {-22, 34},  {-6, -81}},
       {{2, 1},     {-1, -120}, {4, 3},     {6, 5},     {-18, 7},    {9, 8},
        {-17, 10},  {-2, 11},   {-103, 12}, {-52, 13},  {-35, -104}, {-119, 14},
        {16, 15},   {-69, -86}, {18, 17},   {-34, 19},  {-19, 20},   {22, 21},
        {-70, 23},  {-87, 24},  {-102, 25}, {-85, 26},  {-33, 27},   {-36, 28},
        {-3, 29},   {-88, 30},  {-51, 31},  {-118, 32}, {34, 33},    {-68, 35},
        {-53, 36},  {-67, 37},  {-20, 38},  {-101, 39}, {-50, 40},   {42, 41},
        {-37, 43},  {-116, 44}, {-117, 45}, {-49, 46},  {-21, -100}, {48, 47},
        {-55, -71}, {-4, 49},   {-22, -84}, {-115, 50}, {-66, -82},  {-72, 51},
        {-5, -6},   {-54, 52},  {-38, 53},  {-83, 54},  {-40, 55},   {-39, 56},
        {-99, 57},  {-23, -56}, {-7, 58},   {-65, -97}, {-8, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0}}}},
     {{{{-1, 1}, {-18, 2}, {-2, -17}},
       {{2, 1},
        {-1, -52},
        {-17, 3},
        {5, 4},
        {-36, 6},
        {-2, 7},
        {-18, -33},
        {9, 8},
        {-20, 10},
        {-34, -51},
        {-49, 11},
        {-35, 12},
        {-19, 13},
        {-3, 14},
        {-4, -50}},
       {{2, 1},     {-86, 3},   {-1, 4},   {-17, 5},   {7, 6},    {-70, 8},
        {-33, 9},   {-18, 10},  {-2, 11},  {-54, 12},  {-49, 13}, {-38, 14},
        {-34, -65}, {-85, 15},  {-50, 16}, {-69, 17},  {-22, 18}, {-53, 19},
        {21, 20},   {-19, -81}, {-66, 22}, {-3, -35},  {24, 23},  {-37, 25},
        {-68, -84}, {-51, 26},  {28, 27},  {-20, -52}, {30, 29},  {-4, -36},
        {-83, 31},  {-67, 32},  {-82, 33}, {-21, 34},  {-5, -6}},
       {{2, 1},     {-1, 3},     {-120, 4},   {-17, 5},   {7, 6},
        {-104, 8},  {-33, 9},    {11, 10},    {13, 12},   {-49, 14},
        {-88, 15},  {-18, -97},  {-65, 16},   {-40, 17},  {-2, -72},
        {19, 18},   {-113, 20},  {-34, 21},   {-56, -81}, {23, 22},
        {-50, 24},  {-82, -119}, {-24, -103}, {26, 25},   {28, 27},
        {30, 29},   {-55, -87},  {-66, 31},   {33, 32},   {-98, 34},
        {-35, -67}, {-19, 35},   {-70, 36},   {-71, 37},  {-51, -52},
        {-3, 38},   {40, 39},    {-86, -118}, {42, 41},   {-39, -69},
        {-54, -83}, {44, 43},    {-102, 45},  {-101, 46}, {-68, -85},
        {-36, -53}, {-5, 0},     {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0}}},
      {{{-1, 1}, {-18, 2}, {-2, -17}},
       {{2, 1},
        {-1, -52},
        {-17, 3},
        {5, 4},
        {-36, 6},
        {-2, 7},
        {-18, -33},
        {9, 8},
        {-20, 10},
        {-34, -51},
        {-49, 11},
        {-35, 12},
        {-19, 13},
        {-3, 14},
        {-4, -50}},
       {{2, 1},     {-86, 3},   {-1, 4},   {-17, 5},   {7, 6},    {-70, 8},
        {-33, 9},   {-18, 10},  {-2, 11},  {-54, 12},  {-49, 13}, {-38, 14},
        {-34, -65}, {-85, 15},  {-50, 16}, {-69, 17},  {-22, 18}, {-53, 19},
        {21, 20},   {-19, -81}, {-66, 22}, {-3, -35},  {24, 23},  {-37, 25},
        {-68, -84}, {-51, 26},  {28, 27},  {-20, -52}, {30, 29},  {-4, -36},
        {-83, 31},  {-67, 32},  {-82, 33}, {-21, 34},  {-5, -6}},
       {{2, 1},     {-1, 3},     {-120, 4},   {-17, 5},   {7, 6},
        {-104, 8},  {-33, 9},    {11, 10},    {13, 12},   {-49, 14},
        {-88, 15},  {-18, -97},  {-65, 16},   {-40, 17},  {-2, -72},
        {19, 18},   {-113, 20},  {-34, 21},   {-56, -81}, {23, 22},
        {-50, 24},  {-82, -119}, {-24, -103}, {26, 25},   {28, 27},
        {30, 29},   {-55, -87},  {-66, 31},   {33, 32},   {-98, 34},
        {-35, -67}, {-19, 35},   {-70, 36},   {-71, 37},  {-51, -52},
        {-3, 38},   {40, 39},    {-86, -118}, {42, 41},   {-39, -69},
        {-54, -83}, {44, 43},    {-102, 45},  {-101, 46}, {-68, -85},
        {-36, -53}, {-5, 0},     {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0},      {0, 0},     {0, 0},
        {0, 0},     {0, 0},      {0, 0}}}}}};

ia_huff_ipd_nodes_struct ixheaacd_huff_ipd_nodes = {
    {{{-1, 1}, {-8, 2}, {-2, 3}, {5, 4}, {-7, 6}, {-3, -5}, {-4, -6}}},
    {{{{-1, 1}, {-8, 2}, {-2, 3}, {5, 4}, {-3, -7}, {-6, 6}, {-4, -5}}},
     {{{-1, 1}, {-2, 2}, {-8, 3}, {-3, 4}, {-7, 5}, {-4, 6}, {-5, -6}}},
     {{{-1, 1}, {-8, 2}, {-2, 3}, {5, 4}, {-3, -7}, {-6, 6}, {-4, -5}}}},
    {{{{{-1, 1}, {-18, 2}, {-17, 0}},
       {{-1, 1},
        {-36, 2},
        {-18, 3},
        {-35, 4},
        {-52, 5},
        {7, 6},
        {-34, 8},
        {-33, -49},
        {-20, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0}},
       {{-1, 1},    {3, 2},    {5, 4},     {-86, 6},   {-66, 7},  {9, 8},
        {11, 10},   {-18, 12}, {-51, 13},  {-37, -52}, {-69, 14}, {-38, 15},
        {-53, 16},  {-35, 17}, {-50, -70}, {-22, -49}, {-33, 18}, {-17, 19},
        {-34, -65}, {-81, 20}, {-54, 0},   {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0}},
       {{2, 1},    {4, 3},       {-1, 5},    {-69, 6},   {-120, 7}, {-68, 8},
        {10, 9},   {12, 11},     {14, 13},   {-52, -54}, {-18, 15}, {-70, 16},
        {-67, 17}, {19, 18},     {-17, 20},  {-113, 21}, {23, 22},  {-83, 24},
        {-24, 25}, {-103, -104}, {-51, -55}, {27, 26},   {-71, 28}, {-86, 29},
        {-35, 30}, {-66, 31},    {-39, -50}, {-82, -98}, {-72, 32}, {-56, -87},
        {-34, 33}, {-33, -88},   {-40, -97}, {-65, 34},  {-49, 35}, {-81, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0}}},
      {{{-1, 1}, {-18, 2}, {-17, 0}},
       {{-1, 1},
        {-36, 2},
        {-18, 3},
        {-35, 4},
        {-52, 5},
        {7, 6},
        {-34, 8},
        {-33, -49},
        {-20, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0}},
       {{-1, 1},    {3, 2},    {5, 4},     {-86, 6},   {-66, 7},  {9, 8},
        {11, 10},   {-18, 12}, {-51, 13},  {-37, -52}, {-69, 14}, {-38, 15},
        {-53, 16},  {-35, 17}, {-50, -70}, {-22, -49}, {-33, 18}, {-17, 19},
        {-34, -65}, {-81, 20}, {-54, 0},   {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0}},
       {{2, 1},    {4, 3},       {-1, 5},    {-69, 6},   {-120, 7}, {-68, 8},
        {10, 9},   {12, 11},     {14, 13},   {-52, -54}, {-18, 15}, {-70, 16},
        {-67, 17}, {19, 18},     {-17, 20},  {-113, 21}, {23, 22},  {-83, 24},
        {-24, 25}, {-103, -104}, {-51, -55}, {27, 26},   {-71, 28}, {-86, 29},
        {-35, 30}, {-66, 31},    {-39, -50}, {-82, -98}, {-72, 32}, {-56, -87},
        {-34, 33}, {-33, -88},   {-40, -97}, {-65, 34},  {-49, 35}, {-81, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0}}}},
     {{{{-1, 1}, {-18, 2}, {-17, 0}},
       {{-1, 1},
        {3, 2},
        {-18, 4},
        {-52, 5},
        {-34, -36},
        {-35, 6},
        {-17, 7},
        {-33, 8},
        {-20, 9},
        {-49, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0}},
       {{-1, 1},    {3, 2},   {-52, 4},   {-86, 5}, {-35, 6},   {-53, 7},
        {-70, 8},   {-17, 9}, {-37, 10},  {12, 11}, {-38, -66}, {-18, 13},
        {-51, 14},  {16, 15}, {-34, -69}, {18, 17}, {-54, -65}, {-50, 19},
        {-33, -49}, {-22, 0}, {0, 0},     {0, 0},   {0, 0},     {0, 0},
        {0, 0},     {0, 0},   {0, 0},     {0, 0},   {0, 0},     {0, 0},
        {0, 0},     {0, 0},   {0, 0},     {0, 0},   {0, 0}},
       {{-1, 1},    {-69, 2},   {4, 3},     {-120, 5},  {7, 6},     {-113, 8},
        {-68, 9},   {11, 10},   {-17, 12},  {-52, 13},  {-24, 14},  {-18, 15},
        {17, 16},   {-104, 18}, {20, 19},   {-54, -70}, {22, 21},   {24, 23},
        {-86, -97}, {-103, 25}, {-83, 26},  {-35, 27},  {-34, -98}, {-40, 28},
        {-39, -67}, {30, 29},   {-33, -51}, {-87, 31},  {-88, 32},  {-82, 33},
        {-55, -81}, {-56, -71}, {-72, 34},  {-50, -66}, {-65, 35},  {-49, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0}}},
      {{{-1, 1}, {-18, 2}, {-17, 0}},
       {{-1, 1},
        {3, 2},
        {-18, 4},
        {-52, 5},
        {-34, -36},
        {-35, 6},
        {-17, 7},
        {-33, 8},
        {-20, 9},
        {-49, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0}},
       {{-1, 1},    {3, 2},   {-52, 4},   {-86, 5}, {-35, 6},   {-53, 7},
        {-70, 8},   {-17, 9}, {-37, 10},  {12, 11}, {-38, -66}, {-18, 13},
        {-51, 14},  {16, 15}, {-34, -69}, {18, 17}, {-54, -65}, {-50, 19},
        {-33, -49}, {-22, 0}, {0, 0},     {0, 0},   {0, 0},     {0, 0},
        {0, 0},     {0, 0},   {0, 0},     {0, 0},   {0, 0},     {0, 0},
        {0, 0},     {0, 0},   {0, 0},     {0, 0},   {0, 0}},
       {{-1, 1},    {-69, 2},   {4, 3},     {-120, 5},  {7, 6},     {-113, 8},
        {-68, 9},   {11, 10},   {-17, 12},  {-52, 13},  {-24, 14},  {-18, 15},
        {17, 16},   {-104, 18}, {20, 19},   {-54, -70}, {22, 21},   {24, 23},
        {-86, -97}, {-103, 25}, {-83, 26},  {-35, 27},  {-34, -98}, {-40, 28},
        {-39, -67}, {30, 29},   {-33, -51}, {-87, 31},  {-88, 32},  {-82, 33},
        {-55, -81}, {-56, -71}, {-72, 34},  {-50, -66}, {-65, 35},  {-49, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},     {0, 0},
        {0, 0},     {0, 0},     {0, 0}}}},
     {{{{-1, 1}, {-18, 2}, {-17, 0}},
       {{-1, 1},
        {-36, 2},
        {-18, 3},
        {-35, 4},
        {-52, 5},
        {7, 6},
        {-34, 8},
        {-33, -49},
        {-20, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0}},
       {{-1, 1},    {3, 2},    {5, 4},     {-86, 6},   {-66, 7},  {9, 8},
        {11, 10},   {-18, 12}, {-51, 13},  {-37, -52}, {-69, 14}, {-38, 15},
        {-53, 16},  {-35, 17}, {-50, -70}, {-22, -49}, {-33, 18}, {-17, 19},
        {-34, -65}, {-81, 20}, {-54, 0},   {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0}},
       {{2, 1},    {4, 3},       {-1, 5},    {-69, 6},   {-120, 7}, {-68, 8},
        {10, 9},   {12, 11},     {14, 13},   {-52, -54}, {-18, 15}, {-70, 16},
        {-67, 17}, {19, 18},     {-17, 20},  {-113, 21}, {23, 22},  {-83, 24},
        {-24, 25}, {-103, -104}, {-51, -55}, {27, 26},   {-71, 28}, {-86, 29},
        {-35, 30}, {-66, 31},    {-39, -50}, {-82, -98}, {-72, 32}, {-56, -87},
        {-34, 33}, {-33, -88},   {-40, -97}, {-65, 34},  {-49, 35}, {-81, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0}}},
      {{{-1, 1}, {-18, 2}, {-17, 0}},
       {{-1, 1},
        {-36, 2},
        {-18, 3},
        {-35, 4},
        {-52, 5},
        {7, 6},
        {-34, 8},
        {-33, -49},
        {-20, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0},
        {0, 0}},
       {{-1, 1},    {3, 2},    {5, 4},     {-86, 6},   {-66, 7},  {9, 8},
        {11, 10},   {-18, 12}, {-51, 13},  {-37, -52}, {-69, 14}, {-38, 15},
        {-53, 16},  {-35, 17}, {-50, -70}, {-22, -49}, {-33, 18}, {-17, 19},
        {-34, -65}, {-81, 20}, {-54, 0},   {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},     {0, 0},    {0, 0},     {0, 0},     {0, 0}},
       {{2, 1},    {4, 3},       {-1, 5},    {-69, 6},   {-120, 7}, {-68, 8},
        {10, 9},   {12, 11},     {14, 13},   {-52, -54}, {-18, 15}, {-70, 16},
        {-67, 17}, {19, 18},     {-17, 20},  {-113, 21}, {23, 22},  {-83, 24},
        {-24, 25}, {-103, -104}, {-51, -55}, {27, 26},   {-71, 28}, {-86, 29},
        {-35, 30}, {-66, 31},    {-39, -50}, {-82, -98}, {-72, 32}, {-56, -87},
        {-34, 33}, {-33, -88},   {-40, -97}, {-65, 34},  {-49, 35}, {-81, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0},     {0, 0},     {0, 0},    {0, 0},
        {0, 0},    {0, 0},       {0, 0}}}}}};

ia_huff_pt0_nodes_struct ixheaacd_huff_part0_nodes = {
    {{2, 1},     {4, 3},     {6, 5},     {8, 7},    {10, 9},    {12, 11},
     {14, 13},   {-8, 15},   {-9, 16},   {-10, 17}, {-18, 18},  {-17, -19},
     {-16, 19},  {-11, -20}, {-15, -21}, {-7, 20},  {-22, 21},  {-12, -14},
     {-13, -23}, {23, 22},   {-24, -31}, {-6, 24},  {-25, -26}, {26, 25},
     {-5, -27},  {-28, 27},  {-4, 28},   {-29, 29}, {-1, -30},  {-2, -3}},
    {{2, 1}, {-5, 3}, {-4, -6}, {-3, 4}, {-2, 5}, {-1, 6}, {-7, -8}},
    {{2, 1},    {4, 3},    {6, 5},     {-15, 7},  {-14, -16},
     {-13, 8},  {-12, 9},  {-11, 10},  {-10, 11}, {-8, -9},
     {-17, 12}, {14, 13},  {-7, 15},   {-18, 16}, {-6, 17},
     {-5, 18},  {-4, -19}, {-3, 19},   {-1, 20},  {-2, -20},
     {22, 21},  {-21, 23}, {-22, -26}, {-23, 24}, {-24, -25}}};

ia_huff_pt0_nodes_struct ixheaacd_huff_pilot_nodes = {
    {{2, 1},     {4, 3},     {6, 5},     {8, 7},    {10, 9},    {12, 11},
     {14, 13},   {-8, 15},   {-9, 16},   {-10, 17}, {-18, 18},  {-17, -19},
     {-16, 19},  {-11, -20}, {-15, -21}, {-7, 20},  {-22, 21},  {-12, -14},
     {-13, -23}, {23, 22},   {-24, -31}, {-6, 24},  {-25, -26}, {26, 25},
     {-5, -27},  {-28, 27},  {-4, 28},   {-29, 29}, {-1, -30},  {-2, -3}},
    {{2, 1}, {-5, 3}, {-4, -6}, {-3, 4}, {-2, 5}, {-1, 6}, {-7, -8}},
    {{2, 1},    {4, 3},    {6, 5},     {-15, 7},  {-14, -16},
     {-13, 8},  {-12, 9},  {-11, 10},  {-10, 11}, {-8, -9},
     {-17, 12}, {14, 13},  {-7, 15},   {-18, 16}, {-6, 17},
     {-5, 18},  {-4, -19}, {-3, 19},   {-1, 20},  {-2, -20},
     {22, 21},  {-21, 23}, {-22, -26}, {-23, 24}, {-24, -25}}};

ia_huff_lav_nodes_struct ixheaacd_huff_lav_idx_nodes = {
    {{-1, 1}, {-2, 2}, {-3, -4}}};

ia_huff_res_nodes_struct ixheaacd_huff_reshape_nodes = {
    {{2, 1},    {4, 3},     {6, 5},     {-33, 7},  {-17, 8},  {-49, 9},
     {-34, 10}, {12, 11},   {-18, -35}, {-50, 13}, {15, 14},  {-40, 16},
     {-36, 17}, {-19, 18},  {-1, -37},  {-51, 19}, {21, 20},  {-38, -65},
     {-2, -39}, {-20, 22},  {-52, 23},  {25, 24},  {-21, 26}, {-66, 27},
     {-53, 28}, {-3, 29},   {31, 30},   {-22, 32}, {-54, 33}, {-4, 34},
     {-56, 35}, {-24, -67}, {-23, -55}, {-8, -72}, {-5, 36},  {-68, 37},
     {-6, 38},  {-7, -69},  {-70, -71}}};

const WORD32 ixheaacd_im_weight_Q28[16][8][31] = {
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    {
        {-3,        -574674,   -1017796,  -1796901,  -3154468,  -5481590,
         -7575016,  -10370478, -14006830, -18549081, -23865573, -27607851,
         -31193408, -34233661, -36296902, -37030589, -36296902, -34233661,
         -31193411, -27607851, -23865573, -18549082, -14006829, -10370478,
         -7575017,  -5481590,  -3154468,  -1796901,  -1017796,  -574674,
         -3},
        {-3,        -538644,   -954220,   -1685385,  -2960885,  -5151503,
         -7126422,  -9769580,  -13217236, -17537304, -22610489, -26190951,
         -29627877, -32546501, -34529291, -35234746, -34529291, -32546501,
         -29627879, -26190951, -22610489, -17537304, -13217236, -9769579,
         -7126423,  -5151503,  -2960885,  -1685385,  -954220,   -538644,
         -3},
        {-3,        -483799,   -857386,   -1515349,  -2665174,  -4645760,
         -6437353,  -8843606,  -11995831, -15965514, -20652239, -23974316,
         -27173122, -29896409, -31749795, -32409817, -31749798, -29896409,
         -27173122, -23974316, -20652241, -15965512, -11995831, -8843606,
         -6437353,  -4645760,  -2665174,  -1515349,  -857386,   -483799,
         -3},
        {-2,        -346044,   -613840,   -1086712,  -1916795,  -3357478,
         -4672194,  -6454555,  -8816980,  -11833773, -15450674, -18047554,
         -20571857, -22737959, -24220523, -24750059, -24220526, -22737954,
         -20571860, -18047555, -15450674, -11833774, -8816980,  -6454555,
         -4672195,  -3357477,  -1916795,  -1086712,  -613840,   -346044,
         -2},
        {-1,        -211963,   -376347,   -667357,   -1180477,  -2077857,
         -2904213,  -4035616,  -5554462,  -7524805,  -9930552,  -11685604,
         -13412726, -14910621, -15943947, -16314578, -15943948, -14910621,
         -13412728, -11685605, -9930552,  -7524805,  -5554462,  -4035615,
         -2904213,  -2077857,  -1180477,  -667357,   -376347,   -211963,
         -1},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {2,        341283,   608313,   1086175,  1945172,  3500199,  4995375,
         7149357,  10257166, 14719094, 21095209, 27678683, 35807499, 44718702,
         52254129, 55306472, 52254135, 44718696, 35807506, 27678683, 21095208,
         14719092, 10257166, 7149356,  4995375,  3500199,  1945172,  1086175,
         608313,   341283,   2},
        {3,         574839,    1026313,   1838046,   3309837,   6017789,
         8678530,   12620302,  18566315,  29617673,  51387069,  78419391,
         127027624, 219233261, 378389618, 496423988, 378389858, 219233221,
         127027637, 78419391,  51387075,  29617673,  18566315,  12620301,
         8678531,   6017788,   3309837,   1838046,   1026313,   574839,
         3},
    },
    {
        {-6,        -1063142,  -1884657,  -3332697,  -5866780,  -10242061,
         -14210618, -19556015, -26583487, -35470365, -46010122, -53508848,
         -60748872, -66926406, -71137302, -72638110, -71137307, -66926401,
         -60748877, -53508853, -46010127, -35470363, -26583487, -19556013,
         -14210619, -10242061, -5866781,  -3332697,  -1884657,  -1063142,
         -6},
        {-6,        -996411,   -1766700,  -3125152,  -5504594,  -9619093,
         -13357671, -18402686, -25050704, -33480939, -43509452, -50662425,
         -57581404, -63494074, -67528860, -68967732, -67528865, -63494073,
         -57581409, -50662430, -43509452, -33480939, -25050704, -18402684,
         -13357672, -9619093,  -5504594,  -3125152,  -1766700,  -996411,
         -6},
        {-5,        -894854,   -1587094,  -2808873,  -4951863,  -8666114,
         -12050168, -16630008, -22687068, -30401449, -39622947, -46227133,
         -52634601, -58124037, -61876858, -63216462, -61876863, -58124037,
         -52634607, -46227138, -39622951, -30401449, -22687068, -16630007,
         -12050168, -8666115,  -4951864,  -2808873,  -1587094,  -894854,
         -5},
        {-4,        -639871,   -1135692,  -2012557,  -3555941,  -6246900,
         -8715879,  -12082768, -16579119, -22374143, -29395763, -34483541,
         -39463815, -43763084, -46718677, -47776809, -46718677, -43763084,
         -39463820, -34483541, -29395763, -22374143, -16579119, -12082768,
         -8715880,  -6246900,  -3555941,  -2012557,  -1135692,  -639871,
         -4},
        {-2,        -391832,   -695950,   -1234845,  -2186633,  -3856009,
         -5398614,  -7518849,  -10379694, -14115081, -18711418, -22088179,
         -25429852, -28342454, -30359291, -31084156, -30359294, -28342454,
         -25429854, -22088179, -18711418, -14115079, -10379693, -7518848,
         -5398615,  -3856009,  -2186633,  -1234845,  -695950,   -391832,
         -2},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {4,        630153,   1122569,  2002361,  3579289,  6418784,  9130132,
         13002758, 18518363, 26281774, 36854214, 45475090, 56006939, 67371285,
         76348185, 79832098, 76348185, 67371278, 56006945, 45475094, 36854219,
         26281774, 18518363, 13002756, 9130133,  6418784,  3579289,  2002361,
         1122569,  630153,   4},
        {6,         1060871,   1892248,   3382951,   6072244,   10973302,
         15727473,  22653420,  32821245,  47830061,  75342938,  103710864,
         142829663, 191958022, 239742154, 261023300, 239742208, 191958009,
         142829663, 103710864, 75342952,  47830061,  32821243,  22653418,
         15727475,  10973302,  6072245,   3382952,   1892248,   1060871,
         6},
    },
    {
        {-8,        -1391582,  -2470337,   -4379084,   -7741644,   -13613250,
         -19010161, -26384297, -36257343,  -49022548,  -64547243,  -75833181,
         -86908862, -96491301, -103089782, -105454184, -103089782, -96491301,
         -86908862, -75833172, -64547240,  -49022548,  -36257343,  -26384295,
         -19010165, -13613251, -7741645,   -4379084,   -2470337,   -1391582,
         -8},
        {-7,        -1304089,  -2315260,  -4104938,  -7259321,  -12772177,
         -17844573, -24783192, -34086929, -46138449, -60827308, -71526414,
         -82042251, -91152504, -97432108, -99683455, -97432108, -91152495,
         -82042260, -71526418, -60827312, -46138449, -34086931, -24783188,
         -17844578, -12772178, -7259321,  -4104938,  -2315260,  -1304089,
         -7},
        {-7,        -1170970,  -2079253,  -3687531,  -6524359,  -11488788,
         -16063810, -22333022, -30758491, -41703962, -55090554, -64871119,
         -74507479, -82873672, -88649676, -90722278, -88649676, -82873672,
         -74507487, -64871119, -55090554, -41703962, -30758489, -22333018,
         -16063811, -11488789, -6524359,  -3687531,  -2079253,  -1170970,
         -7},
        {-5,        -836946,   -1486730,  -2638556,  -4674179,  -8248466,
         -11555711, -16108121, -22262876, -30319528, -40263731, -47590055,
         -54856837, -61203595, -65605308, -67188665, -65605308, -61203586,
         -54856842, -47590059, -40263731, -30319526, -22262874, -16108120,
         -11555711, -8248465,  -4674180,  -2638556,  -1486730,  -836946,
         -5},
        {-3,        -512296,   -910384,   -1616803,  -2867623,  -5071172,
         -7118298,  -9948960,  -13799297, -18879453, -25211247, -29918728,
         -34622928, -38759529, -41643508, -42683912, -41643508, -38759525,
         -34622930, -29918732, -25211249, -18879451, -13799296, -9948958,
         -7118299,  -5071172,  -2867624,  -1616803,  -910384,   -512296,
         -3},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {5,        822447,   1463889,  2607236,  4647839,  8293870,  11741041,
         16605976, 23414447, 32754663, 45010872, 54604473, 64638836, 73862135,
         80529788, 82985438, 80529795, 73862128, 64638850, 54604473, 45010872,
         32754663, 23414449, 16605974, 11741042, 8293870,  4647839,  2607237,
         1463889,  822447,   5},
        {8,         1383579,   2464328,   4394383,   7850862,   14065144,
         19987153,  28424960,  40399126,  57162281,  79807987,  98105864,
         117845260, 140317143, 157927636, 164697609, 157927650, 140317143,
         117845274, 98105858,  79807994,  57162273,  40399123,  28424958,
         19987155,  14065143,  7850864,   4394383,   2464328,   1383579,
         8},
    },
    {
        {-8,         -1509476,   -2684086,   -4772023,   -8480193,   -15047650,
         -21188892,  -29744494,  -41501680,  -57227068,  -77169768,  -92246064,
         -107526888, -121143312, -130736632, -134217744, -130736624, -121143312,
         -107526896, -92246064,  -77169768,  -57227064,  -41501676,  -29744492,
         -21188894,  -15047650,  -8480194,   -4772023,   -2684086,   -1509476,
         -8},
        {-8,         -1414379,   -2514988,   -4471386,   -7945941,   -14099648,
         -19853990,  -27870592,  -38887072,  -53621760,  -72308072,  -86434552,
         -100752688, -113511272, -122500224, -125762016, -122500216, -113511280,
         -100752696, -86434560,  -72308072,  -53621760,  -38887072,  -27870588,
         -19853994,  -14099649,  -7945942,   -4471386,   -2514989,   -1414379,
         -8},
        {-7,        -1269741,   -2257800,   -4014131,   -7133369,   -12657783,
         -17823674, -25020474,  -34910384,  -48138264,  -64913664,  -77595552,
         -90449464, -101903328, -109973032, -112901280, -109973040, -101903328,
         -90449472, -77595544,  -64913668,  -48138264,  -34910384,  -25020472,
         -17823674, -12657783,  -7133369,   -4014131,   -2257800,   -1269741,
         -7},
        {-5,        -907074,   -1612921,  -2867604,  -5095918,  -9042434,
         -12732830, -17874062, -24939188, -34388892, -46372856, -55432508,
         -64615056, -72797440, -78562256, -80654120, -78562256, -72797432,
         -64615064, -55432508, -46372860, -34388892, -24939190, -17874060,
         -12732831, -9042434,  -5095918,  -2867604,  -1612921,  -907074,
         -5},
        {-3,        -554944,   -986777,   -1754386,  -3117658,  -5532118,
         -7789884,  -10935266, -15257677, -21038960, -28370692, -33913340,
         -39531184, -44537124, -48064012, -49343804, -48064012, -44537124,
         -39531188, -33913344, -28370694, -21038958, -15257676, -10935264,
         -7789885,  -5532117,  -3117658,  -1754387,  -986777,   -554944,
         -3},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {5,        889081,   1580927,  2810722,  4994834,  8863066,  12480257,
         17519508, 24444488, 33706744, 45452992, 54332928, 63333332, 71353408,
         77003864, 79054240, 77003872, 71353400, 63333336, 54332932, 45452992,
         33706744, 24444488, 17519506, 12480258, 8863066,  4994834,  2810722,
         1580927,  889081,   5},
        {8,         1494381,   2657245,   4724303,   8395391,   14897174,
         20977002,  29447048,  41086664,  56654796,  76398072,  91323608,
         106451616, 119931880, 129429263, 132875552, 129429264, 119931878,
         106451624, 91323608,  76398072,  56654796,  41086660,  29447048,
         20977004,  14897174,  8395392,   4724304,   2657245,   1494381,
         8},
    },
    {
        {-8,         -1397585,   -2489316,   -4439078,   -7931147,   -14210401,
         -20195533,  -28725381,  -40834574,  -57795944,  -80727760,  -99273505,
         -119386757, -142482370, -160470890, -167392516, -160470890, -142482357,
         -119386757, -99273512,  -80727756,  -57795944,  -40834574,  -28725377,
         -20195535,  -14210400,  -7931148,   -4439078,   -2489316,   -1397585,
         -8},
        {-7,         -1309358,   -2331922,   -4157610,   -7425692,   -13296383,
         -18885003,  -26837459,  -38101253,  -53825212,  -74978577,  -91990894,
         -110257644, -129210650, -144934890, -150951436, -144934903, -129210650,
         -110257650, -91990901,  -74978584,  -53825215,  -38101253,  -26837455,
         -18885005,  -13296384,  -7425692,   -4157610,   -2331922,   -1309358,
         -7},
        {-7,        -1175217,   -2092682,   -3729980,   -6658434,   -11911179,
         -16901999, -23987347,  -33988896,  -47881077,  -66434665,  -81236418,
         -97003508, -111774388, -123343304, -128186650, -123343317, -111774382,
         -97003515, -81236418,  -66434665,  -47881077,  -33988892,  -23987347,
         -16902001, -11911179,  -6658434,   -3729980,   -2092681,   -1175217,
         -7},
        {-5,        -839113,   -1493583,  -2660218,  -4742594,  -8463942,
         -11983129, -16951064, -23906436, -33453557, -45991133, -55813174,
         -66094542, -75552455, -82394424, -84915283, -82394417, -75552441,
         -66094540, -55813171, -45991139, -33453554, -23906434, -16951065,
         -11983130, -8463941,  -4742595,  -2660218,  -1493583,  -839113,
         -5},
        {-3,        -513107,   -912949,   -1624911,  -2893228,  -5151802,
         -7278196,  -10264146, -14413252, -20048070, -27340204, -32966174,
         -38772409, -44037899, -47801354, -49178242, -47801358, -44037903,
         -38772413, -32966178, -27340208, -20048068, -14413250, -10264145,
         -7278196,  -5151802,  -2893229,  -1624911,  -912949,   -513107,
         -3},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {5,        820365,   1457305,  2586425,  4582113,  8086863,  11330426,
         15796198, 21835646, 29744456, 39510836, 46709319, 53851835, 60092071,
         64420974, 65978354, 64420974, 60092067, 53851844, 46709315, 39510836,
         29744457, 21835644, 15796195, 11330427, 8086863,  4582113,  2586425,
         1457305,  820365,   5},
        {8,        1377696,  2445727,   4335584,   7665133,   13479892,
         18825424, 26130668, 35913779,  48566398,  63959479,  75153138,
         86140901, 95649257, 102197733, 104544436, 102197742, 95649257,
         86140901, 75153138, 63959483,  48566398,  35913779,  26130668,
         18825426, 13479892, 7665134,   4335585,   2445727,   1377696,
         8},
    },
    {
        {-6,         -1071630,   -1911499,   -3417563,   -6135014,   -11088915,
         -15896315,  -22903493,  -33199122,  -48417346,  -76625352,  -105748897,
         -146157663, -197317649, -247522927, -270025194, -247522954, -197317609,
         -146157677, -105748904, -76625358,  -48417346,  -33199122,  -22903491,
         -15896315,  -11088915,  -6135014,   -3417563,   -1911499,   -1071630,
         -6},
        {-6,         -1003864,   -1790265,   -3199659,   -5740059,   -10362247,
         -14836237,  -21336047,  -30836947,  -44762533,  -68827345,  -93516451,
         -126532850, -166393343, -203549915, -219611661, -203549928, -166393329,
         -126532890, -93516458,  -68827352,  -44762536,  -30836951,  -21336046,
         -14836239,  -10362246,  -5740059,   -3199659,   -1790265,   -1003864,
         -6},
        {-5,         -900861,    -1606086,   -2868917,   -5141593,   -9264643,
         -13240198,  -18987808,  -27325830,  -39399654,  -58130792,  -77340471,
         -101814498, -129653024, -154062530, -164186529, -154062570, -129653010,
         -101814518, -77340471,  -58130799,  -39399654,  -27325828,  -18987806,
         -13240198,  -9264643,   -5141593,   -2868917,   -1606086,   -900860,
         -5},
        {-4,        -642936,   -1145384,  -2043195,  -3652724,  -6551934,
         -9321546,  -13279575, -18921457, -26872438, -37720430, -46584838,
         -57725379, -69582952, -78984425, -82641451, -78984418, -69582945,
         -57725385, -46584841, -37720434, -26872436, -18921457, -13279575,
         -9321547,  -6551934,  -3652725,  -2043195,  -1145384,  -642936,
         -4},
        {-2,        -392979,   -699578,   -1246312,  -2222848,  -3970081,
         -5624912,  -7965246,  -11250449, -15776819, -21752506, -26460379,
         -31414830, -35997598, -39328571, -40559278, -39328574, -35997598,
         -31414833, -26460381, -21752510, -15776818, -11250449, -7965245,
         -5624912,  -3970080,  -2222848,  -1246312,  -699578,   -392979,
         -2},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {4,        627208,   1113258,  1972927,  3486308,  6125748,  8548319,
         11853214, 16269000, 21963762, 28868936, 33875540, 38778800, 43013413,
         45925477, 46968213, 45925482, 43013409, 38778804, 33875542, 28868936,
         21963760, 16269001, 11853213, 8548320,  6125748,  3486308,  1972927,
         1113257,  627208,   4},
        {6,        1052552,  1865940,  3299774,  5809354,  10143366, 14075580,
         19373582, 26341294, 35156402, 45615999, 53060599, 60250435, 66386585,
         70569986, 72061134, 70569991, 66386585, 60250429, 53060599, 45615999,
         35156405, 26341292, 19373582, 14075583, 10143366, 5809355,  3299775,
         1865941,  1052552,  6},
    },
    {
        {-3,         -580676,    -1036778,   -1856927,   -3344306,   -6082086,
         -8773675,   -12764181,  -18791317,  -30111286,  -52494265,  -80589391,
         -131965584, -232564048, -416579297, -562298280, -416579510, -232563968,
         -131965624, -80589405,  -52494275,  -30111283,  -18791315,  -12764179,
         -8773676,   -6082086,   -3344306,   -1856927,   -1036778,   -580676,
         -3},
        {-3,         -543914,    -970885,    -1738082,   -3127514,   -5678284,
         -8177066,   -11864206,  -17389757,  -27104441,  -45909909,  -68054278,
         -104838298, -165555583, -249179407, -298573540, -249179487, -165555569,
         -104838338, -68054292,  -45909909,  -27104439,  -17389757,  -11864205,
         -8177067,   -5678284,   -3127513,   -1738082,   -970885,    -543913,
         -3},
        {-3,        -488046,    -870816,    -1557814,   -2799416,   -5069822,
         -7282155,  -10523970,  -15327605,  -22959079,  -37422722,  -53115972,
         -76430452, -108848624, -144319570, -161563289, -144319637, -108848611,
         -76430472, -53115969,  -37422729,  -22959078,  -15327603,  -10523969,
         -7282156,  -5069822,   -2799417,   -1557814,   -870816,    -488046,
         -3},
        {-2,        -348211,   -620694,   -1108379,  -1985253,  -3573386,
         -5101324,  -7304187,  -10486237, -15063094, -21722298, -28584446,
         -37112672, -46532696, -54556959, -57822712, -54556959, -46532689,
         -37112682, -28584446, -21722299, -15063095, -10486238, -7304186,
         -5101324,  -3573386,  -1985253,  -1108378,  -620694,   -348211,
         -2},
        {-1,        -212775,   -378912,   -675466,   -1206088,  -2158548,
         -3064349,  -4351732,  -6171956,  -8706333,  -12102898, -14823042,
         -17731555, -20482223, -22906153, -23829791, -22906156, -20482223,
         -17731555, -14823041, -12102899, -8706332,  -6171955,  -4351731,
         -3064349,  -2158548,  -1206088,  -675466,   -378913,   -212775,
         -1},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {2,        339200,   601729,   1065360,  1879405,  3292792,  4583180,
         6333406,  8654669,  11621118, 15180668, 17738214, 20225637, 22361080,
         23823154, 24345462, 23823157, 22361078, 20225641, 17738213, 15180668,
         11621118, 8654670,  6333406,  4583181,  3292792,  1879405,  1065360,
         601729,   339200,   2},
        {3,        568956,   1007710,  1779215,  3123785,  5429323,  7504044,
         10275511, 13882195, 18389595, 23668008, 27385006, 30947362, 33968646,
         36019344, 36748630, 36019347, 33968643, 30947364, 27385006, 23668008,
         18389595, 13882195, 10275510, 7504045,  5429323,  3123785,  1779215,
         1007710,  568956,   3},
    },
    {
        {0,   0,  0,  0,  1,  1, 2, 3, 4, 7, 13, 21, 39, 91, 367, -858993460,
         367, 91, 39, 21, 13, 7, 4, 3, 2, 1, 1,  0,  0,  0,  0},
        {0,   0,  0,  0,  1,  1, 2, 3, 4, 7, 11, 18, 29, 54, 102, 145,
         102, 54, 29, 18, 11, 7, 4, 3, 2, 1, 1,  0,  0,  0,  0},
        {0,  0,  0,  0,  1, 1, 2, 2, 4, 5, 9, 13, 20, 31, 44, 52,
         44, 31, 20, 13, 9, 5, 4, 2, 2, 1, 1, 0,  0,  0,  0},
        {0,  0,  0, 0, 0, 1, 1, 2, 2, 3, 5, 7, 9, 12, 14, 15,
         14, 12, 9, 7, 5, 3, 2, 2, 1, 1, 0, 0, 0, 0,  0},
        {0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 3, 3, 4, 5, 5, 6,
         5, 5, 4, 3, 3, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0,  0,  0,  0,  0,  -1, -1, -1, -2, -3, -3, -4, -5, -5, -5, -5,
         -5, -5, -5, -4, -3, -3, -2, -1, -1, -1, 0,  0,  0,  0,  0},
        {0,  0,  0,  0,  -1, -1, -2, -2, -3, -4, -5, -6, -7, -8, -8, -8,
         -8, -8, -7, -6, -5, -4, -3, -2, -2, -1, -1, 0,  0,  0,  0},
    },
    {
        {3,         580676,    1036777,   1856927,   3344305,   6082085,
         8773674,   12764179,  18791313,  30111279,  52494259,  80589378,
         131965557, 232564021, 416579217, 562298173, 416579430, 232563941,
         131965610, 80589391,  52494265,  30111279,  18791313,  12764177,
         8773674,   6082085,   3344306,   1856927,   1036778,   580676,
         3},
        {3,         543913,    970885,    1738082,   3127513,   5678283,
         8177065,   11864205,  17389754,  27104436,  45909902,  68054265,
         104838284, 165555556, 249179381, 298573513, 249179434, 165555543,
         104838318, 68054278,  45909902,  27104436,  17389756,  11864203,
         8177066,   5678283,   3127513,   1738082,   970885,    543913,
         3},
        {3,        488046,    870816,    1557814,   2799416,   5069821,
         7282153,  10523969,  15327601,  22959076,  37422716,  53115965,
         76430438, 108848611, 144319557, 161563263, 144319610, 108848597,
         76430458, 53115962,  37422722,  22959074,  15327601,  10523968,
         7282155,  5069821,   2799416,   1557814,   870816,    488046,
         3},
        {2,        348211,   620693,   1108378,  1985253,  3573386,  5101323,
         7304185,  10486235, 15063092, 21722294, 28584443, 37112666, 46532689,
         54556952, 57822705, 54556949, 46532682, 37112676, 28584443, 21722296,
         15063092, 10486236, 7304185,  5101323,  3573385,  1985253,  1108378,
         620693,   348211,   2},
        {1,        212775,   378912,   675465,   1206088,  2158547,  3064349,
         4351731,  6171955,  8706331,  12102897, 14823040, 17731552, 20482220,
         22906149, 23829786, 22906153, 20482220, 17731554, 14823040, 12102898,
         8706331,  6171954,  4351731,  3064349,  2158547,  1206088,  675466,
         378912,   212775,   1},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-2,        -339200,   -601729,   -1065360,  -1879405,  -3292791,
         -4583180,  -6333406,  -8654668,  -11621117, -15180664, -17738211,
         -20225634, -22361078, -23823152, -24345457, -23823152, -22361075,
         -20225636, -17738211, -15180665, -11621117, -8654668,  -6333405,
         -4583180,  -3292791,  -1879405,  -1065360,  -601729,   -339200,
         -2},
        {-3,        -568956,   -1007709,  -1779214,  -3123784,  -5429322,
         -7504043,  -10275508, -13882193, -18389592, -23668005, -27385003,
         -30947359, -33968641, -36019338, -36748625, -36019341, -33968638,
         -30947359, -27385003, -23668005, -18389591, -13882193, -10275507,
         -7504044,  -5429322,  -3123785,  -1779214,  -1007709,  -568956,
         -3},
    },
    {
        {6,         1071630,   1911498,   3417563,   6135013,   11088914,
         15896313,  22903491,  33199122,  48417342,  76625352,  105748897,
         146157663, 197317649, 247522954, 270025220, 247523007, 197317609,
         146157677, 105748911, 76625358,  48417339,  33199122,  22903489,
         15896315,  11088914,  6135014,   3417563,   1911498,   1071630,
         6},
        {6,         1003864,   1790265,   3199659,   5740058,   10362246,
         14836235,  21336046,  30836947,  44762529,  68827352,  93516444,
         126532850, 166393343, 203549915, 219611675, 203549942, 166393329,
         126532890, 93516458,  68827345,  44762533,  30836947,  21336044,
         14836238,  10362246,  5740058,   3199659,   1790265,   1003864,
         6},
        {5,         900860,    1606086,   2868917,   5141592,   9264643,
         13240197,  18987806,  27325827,  39399651,  58130785,  77340471,
         101814498, 129653024, 154062530, 164186529, 154062570, 129653010,
         101814518, 77340465,  58130799,  39399651,  27325825,  18987804,
         13240199,  9264643,   5141593,   2868916,   1606086,   900860,
         5},
        {4,        642936,   1145384,  2043195,  3652724,  6551933,  9321545,
         13279574, 18921455, 26872435, 37720428, 46584834, 57725379, 69582952,
         78984425, 82641458, 78984418, 69582945, 57725385, 46584838, 37720430,
         26872435, 18921455, 13279574, 9321546,  6551933,  3652724,  2043195,
         1145384,  642936,   4},
        {2,        392979,   699578,   1246311,  2222848,  3970080,  5624911,
         7965245,  11250448, 15776818, 21752506, 26460378, 31414826, 35997601,
         39328568, 40559278, 39328574, 35997598, 31414830, 26460379, 21752508,
         15776818, 11250448, 7965244,  5624912,  3970080,  2222848,  1246312,
         699578,   392979,   2},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-4,        -627208,   -1113257,  -1972926,  -3486308,  -6125748,
         -8548319,  -11853212, -16268999, -21963760, -28868934, -33875539,
         -38778795, -43013409, -45925473, -46968213, -45925477, -43013404,
         -38778795, -33875539, -28868932, -21963758, -16269000, -11853212,
         -8548319,  -6125747,  -3486308,  -1972926,  -1113257,  -627208,
         -4},
        {-6,        -1052552,  -1865940,  -3299774,  -5809354,  -10143366,
         -14075579, -19373580, -26341292, -35156400, -45615994, -53060594,
         -60250430, -66386576, -70569981, -72061118, -70569981, -66386576,
         -60250430, -53060594, -45615994, -35156400, -26341290, -19373580,
         -14075582, -10143365, -5809354,  -3299775,  -1865940,  -1052552,
         -6},
    },
    {
        {8,         1397585,   2489316,   4439077,   7931147,   14210400,
         20195533,  28725381,  40834574,  57795937,  80727756,  99273505,
         119386770, 142482397, 160470916, 167392556, 160470930, 142482397,
         119386770, 99273512,  80727763,  57795937,  40834574,  28725377,
         20195535,  14210399,  7931147,   4439077,   2489316,   1397584,
         8},
        {7,         1309358,   2331922,   4157610,   7425691,   13296383,
         18885003,  26837457,  38101253,  53825212,  74978579,  91990888,
         110257650, 129210677, 144934930, 150951463, 144934930, 129210664,
         110257648, 91990895,  74978579,  53825212,  38101253,  26837453,
         18885005,  13296383,  7425691,   4157609,   2331922,   1309358,
         7},
        {7,        1175217,   2092681,   3729980,   6658433,   11911178,
         16901999, 23987347,  33988892,  47881081,  66434656,  81236414,
         97003508, 111774386, 123343330, 128186677, 123343330, 111774379,
         97003515, 81236414,  66434672,  47881077,  33988888,  23987345,
         16901999, 11911179,  6658434,   3729980,   2092681,   1175217,
         7},
        {5,        839113,   1493583,  2660218,  4742594,  8463941,  11983129,
         16951064, 23906434, 33453557, 45991133, 55813174, 66094533, 75552445,
         82394424, 84915284, 82394424, 75552445, 66094548, 55813174, 45991133,
         33453557, 23906436, 16951064, 11983129, 8463941,  4742594,  2660218,
         1493583,  839113,   5},
        {3,        513107,   912949,   1624911,  2893228,  5151802,  7278195,
         10264146, 14413251, 20048070, 27340206, 32966174, 38772413, 44037903,
         47801358, 49178236, 47801358, 44037903, 38772413, 32966174, 27340206,
         20048066, 14413251, 10264145, 7278196,  5151802,  2893229,  1624911,
         912949,   513107,   3},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-5,        -820365,   -1457305,  -2586425,  -4582112,  -8086862,
         -11330425, -15796197, -21835644, -29744455, -39510832, -46709311,
         -53851837, -60092063, -64420965, -65978350, -64420972, -60092058,
         -53851841, -46709311, -39510837, -29744455, -21835644, -15796194,
         -11330427, -8086862,  -4582112,  -2586425,  -1457305,  -820365,
         -5},
        {-8,        -1377696,  -2445727,   -4335584,   -7665132,   -13479891,
         -18825424, -26130668, -35913775,  -48566394,  -63959470,  -75153128,
         -86140892, -95649238, -102197714, -104544419, -102197714, -95649247,
         -86140892, -75153132, -63959470,  -48566394,  -35913771,  -26130665,
         -18825426, -13479892, -7665133,   -4335584,   -2445727,   -1377696,
         -8},
    },
    {
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {8,         1414379,   2514989,   4471386,   7945941,   14099648,
         19853990,  27870592,  38887072,  53621760,  72308072,  86434552,
         100752688, 113511272, 122500216, 125762008, 122500216, 113511272,
         100752696, 86434560,  72308072,  53621760,  38887072,  27870588,
         19853994,  14099649,  7945942,   4471386,   2514989,   1414379,
         8},
        {7,        1269741,   2257800,   4014131,   7133370,   12657783,
         17823674, 25020474,  34910384,  48138264,  64913664,  77595552,
         90449464, 101903328, 109973032, 112901272, 109973040, 101903328,
         90449472, 77595544,  64913668,  48138264,  34910384,  25020472,
         17823674, 12657783,  7133370,   4014131,   2257800,   1269741,
         7},
        {5,        907074,   1612921,  2867604,  5095918,  9042434,  12732830,
         17874062, 24939188, 34388892, 46372856, 55432508, 64615056, 72797440,
         78562256, 80654120, 78562256, 72797432, 64615064, 55432508, 46372860,
         34388892, 24939190, 17874060, 12732831, 9042434,  5095919,  2867604,
         1612921,  907074,   5},
        {3,        554944,   986777,   1754387,  3117658,  5532118,  7789884,
         10935266, 15257677, 21038960, 28370692, 33913340, 39531184, 44537124,
         48064012, 49343804, 48064012, 44537124, 39531188, 33913344, 28370694,
         21038958, 15257676, 10935264, 7789885,  5532118,  3117659,  1754387,
         986777,   554944,   3},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-5,        -889081,   -1580927,  -2810721,  -4994834,  -8863066,
         -12480257, -17519508, -24444488, -33706744, -45452992, -54332928,
         -63333332, -71353408, -77003864, -79054240, -77003872, -71353400,
         -63333336, -54332932, -45452992, -33706744, -24444488, -17519506,
         -12480258, -8863066,  -4994834,  -2810722,  -1580927,  -889081,
         -5},
        {-8,         -1494381,   -2657245,   -4724303,   -8395391,   -14897174,
         -20977002,  -29447048,  -41086664,  -56654796,  -76398072,  -91323608,
         -106451616, -119931880, -129429256, -132875552, -129429264, -119931872,
         -106451624, -91323608,  -76398072,  -56654796,  -41086660,  -29447048,
         -20977004,  -14897174,  -8395392,   -4724303,   -2657245,   -1494381,
         -8},
    },
    {
        {8,        1391582,  2470337,   4379084,   7741644,   13613249,
         19010161, 26384295, 36257343,  49022539,  64547234,  75833163,
         86908844, 96491282, 103089763, 105454176, 103089763, 96491282,
         86908853, 75833163, 64547238,  49022539,  36257339,  26384293,
         19010161, 13613249, 7741645,   4379084,   2470337,   1391582,
         8},
        {7,        1304089,  2315260,  4104938,  7259320,  12772176, 17844574,
         24783190, 34086927, 46138445, 60827299, 71526405, 82042242, 91152486,
         97432080, 99683437, 97432080, 91152486, 82042242, 71526405, 60827303,
         46138450, 34086925, 24783185, 17844576, 12772176, 7259321,  4104938,
         2315260,  1304089,  7},
        {7,        1170970,  2079253,  3687531,  6524358,  11488787, 16063809,
         22333018, 30758490, 41703962, 55090551, 64871110, 74507473, 82873663,
         88649667, 90722260, 88649667, 82873663, 74507478, 64871105, 55090551,
         41703958, 30758487, 22333016, 16063810, 11488788, 6524359,  3687531,
         2079253,  1170970,  7},
        {5,        836946,   1486730,  2638556,  4674179,  8248466,  11555710,
         16108120, 22262872, 30319524, 40263723, 47590046, 54856833, 61203586,
         65605295, 67188663, 65605295, 61203577, 54856842, 47590051, 40263727,
         30319524, 22262872, 16108119, 11555711, 8248465,  4674180,  2638556,
         1486730,  836946,   5},
        {3,        512296,   910384,   1616803,  2867623,  5071172,  7118297,
         9948958,  13799293, 18879451, 25211243, 29918726, 34622925, 38759520,
         41643504, 42683904, 41643508, 38759520, 34622927, 29918726, 25211247,
         18879449, 13799293, 9948957,  7118298,  5071172,  2867623,  1616803,
         910384,   512296,   3},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-5,        -822447,   -1463889,  -2607236,  -4647839,  -8293870,
         -11741041, -16605976, -23414447, -32754663, -45010867, -54604470,
         -64638843, -73862135, -80529791, -82985440, -80529802, -73862128,
         -64638843, -54604470, -45010867, -32754663, -23414447, -16605974,
         -11741041, -8293870,  -4647839,  -2607236,  -1463889,  -822447,
         -5},
        {-8,         -1383579,   -2464327,   -4394383,   -7850861,   -14065144,
         -19987153,  -28424958,  -40399126,  -57162277,  -79807994,  -98105864,
         -117845265, -140317170, -157927676, -164697636, -157927690, -140317157,
         -117845279, -98105864,  -79807994,  -57162277,  -40399126,  -28424956,
         -19987155,  -14065143,  -7850863,   -4394383,   -2464328,   -1383579,
         -8},
    },
    {
        {6,        1063142,  1884657,  3332697,  5866781,  10242063, 14210621,
         19556019, 26583493, 35470370, 46010131, 53508858, 60748887, 66926417,
         71137316, 72638124, 71137318, 66926416, 60748892, 53508858, 46010131,
         35470372, 26583491, 19556017, 14210622, 10242063, 5866782,  3332697,
         1884657,  1063142,  6},
        {6,        996412,   1766700,  3125152,  5504595,  9619094,  13357673,
         18402690, 25050711, 33480946, 43509461, 50662435, 57581418, 63494088,
         67528881, 68967747, 67528880, 63494088, 57581423, 50662440, 43509461,
         33480946, 25050711, 18402688, 13357674, 9619095,  5504595,  3125152,
         1766700,  996411,   6},
        {5,        894855,   1587095,  2808874,  4951864,  8666115,  12050171,
         16630010, 22687072, 30401455, 39622952, 46227143, 52634611, 58124051,
         61876873, 63216472, 61876878, 58124046, 52634616, 46227147, 39622956,
         30401453, 22687072, 16630009, 12050171, 8666116,  4951865,  2808874,
         1587094,  894855,   5},
        {4,        639871,   1135693,  2012557,  3555941,  6246901,  8715881,
         12082770, 16579122, 22374147, 29395768, 34483545, 39463825, 43763098,
         46718682, 47776819, 46718682, 43763093, 39463829, 34483548, 29395770,
         22374147, 16579122, 12082770, 8715881,  6246901,  3555942,  2012557,
         1135693,  639871,   4},
        {2,        391832,   695950,   1234845,  2186633,  3856010,  5398615,
         7518850,  10379695, 14115083, 18711422, 22088181, 25429856, 28342458,
         30359295, 31084165, 30359297, 28342458, 25429858, 22088183, 18711424,
         14115081, 10379695, 7518850,  5398616,  3856010,  2186634,  1234845,
         695950,   391832,   2},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-4,        -630153,   -1122569,  -2002361,  -3579289,  -6418785,
         -9130134,  -13002760, -18518365, -26281781, -36854217, -45475104,
         -56006945, -67371285, -76348185, -79832098, -76348192, -67371278,
         -56006952, -45475104, -36854222, -26281779, -18518367, -13002758,
         -9130135,  -6418785,  -3579289,  -2002362,  -1122569,  -630153,
         -4},
        {-6,         -1060871,   -1892248,   -3382952,   -6072245,   -10973304,
         -15727476,  -22653422,  -32821252,  -47830065,  -75342945,  -103710871,
         -142829663, -191958009, -239742101, -261023247, -239742154, -191957982,
         -142829663, -103710864, -75342952,  -47830065,  -32821248,  -22653422,
         -15727478,  -10973304,  -6072246,   -3382952,   -1892248,   -1060871,
         -6},
    },
    {
        {3,        574674,   1017796,  1796900,  3154467,  5481590,  7575015,
         10370478, 14006828, 18549080, 23865568, 27607848, 31193405, 34233658,
         36296899, 37030586, 36296899, 34233658, 31193408, 27607848, 23865571,
         18549080, 14006828, 10370477, 7575016,  5481590,  3154468,  1796900,
         1017796,  574674,   3},
        {3,        538644,   954220,   1685385,  2960884,  5151503,  7126421,
         9769579,  13217235, 17537303, 22610486, 26190946, 29627874, 32546498,
         34529288, 35234744, 34529288, 32546498, 29627877, 26190948, 22610486,
         17537303, 13217235, 9769578,  7126422,  5151503,  2960885,  1685385,
         954220,   538644,   3},
        {3,        483799,   857386,   1515349,  2665173,  4645760,  6437352,
         8843606,  11995830, 15965511, 20652239, 23974315, 27173119, 29896409,
         31749793, 32409812, 31749796, 29896409, 27173119, 23974315, 20652239,
         15965511, 11995830, 8843605,  6437353,  4645760,  2665173,  1515349,
         857386,   483799,   3},
        {2,        346044,   613840,   1086712,  1916795,  3357477,  4672194,
         6454554,  8816978,  11833772, 15450673, 18047553, 20571855, 22737956,
         24220523, 24750056, 24220523, 22737954, 20571857, 18047553, 15450673,
         11833773, 8816979,  6454554,  4672195,  3357477,  1916795,  1086712,
         613840,   346044,   2},
        {1,        211963,   376347,   667357,   1180477,  2077857,  2904213,
         4035615,  5554462,  7524805,  9930550,  11685603, 13412725, 14910620,
         15943945, 16314576, 15943947, 14910620, 13412727, 11685603, 9930550,
         7524804,  5554462,  4035615,  2904213,  2077857,  1180477,  667357,
         376347,   211963,   1},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {-2,        -341283,   -608313,   -1086175,  -1945172,  -3500199,
         -4995375,  -7149356,  -10257165, -14719092, -21095208, -27678681,
         -35807499, -44718702, -52254129, -55306469, -52254132, -44718696,
         -35807502, -27678681, -21095206, -14719093, -10257165, -7149355,
         -4995375,  -3500199,  -1945172,  -1086175,  -608313,   -341283,
         -2},
        {-3,         -574839,    -1026313,   -1838045,   -3309836,   -6017788,
         -8678530,   -12620301,  -18566315,  -29617669,  -51387072,  -78419391,
         -127027637, -219233301, -378389804, -496424308, -378390018, -219233261,
         -127027650, -78419391,  -51387075,  -29617669,  -18566313,  -12620300,
         -8678531,   -6017788,   -3309837,   -1838046,   -1026313,   -574839,
         -3},
    },
};

const WORD32 ixheaacd_re_weight_Q28[16][8][31] = {
    {
        {134217728,  133460863,  132868901,  131810111,  129908442,  126470291,
         123168465,  118415202,  111553289,  101653880,  87503416,   75055587,
         59853017,   41890564,   21615401,   0,          -21615400,  -41890567,
         -59853022,  -75055592,  -87503416,  -101653880, -111553289, -118415202,
         -123168474, -126470291, -129908442, -131810119, -132868916, -133460855,
         -134217736},
        {134217728,  133507641,  132951036,  131952906,  130152305,  126873835,
         123700894,  119097743,  112392608,  102624793,  88527346,   76037569,
         60709668,   42530952,   21959413,   0,          -21959412,  -42530956,
         -60709668,  -76037567,  -88527354,  -102624793, -112392608, -119097743,
         -123700897, -126873843, -130152314, -131952906, -132951044, -133507625,
         -134217736},
        {134217728,  133578889,  133076245,  132170971,  130525880,  127495076,
         124524084,  120158840,  113706267,  104156340,  90156022,   77607879,
         62086135,   43563841,   22515636,   0,          -22515635,  -43563843,
         -62086140,  -77607874,  -90156032,  -104156349, -113706267, -120158844,
         -124524084, -127495076, -130525880, -132170971, -133076253, -133578881,
         -134217736},
        {134217728,  133758012,  133391773,  132722523,  131476888,  129093806,
         126662688,  122949415,  117214012,  108319953,  94671025,   82017354,
         65996439,   46525651,   24120340,   0,          -24120340,  -46525655,
         -65996434,  -82017354,  -94671025,  -108319953, -117214003, -122949415,
         -126662696, -129093806, -131476888, -132722531, -133391781, -133758012,
         -134217736},
        {134217728,  133932649,  133700308,  133264733,  132420429,  130705061,
         128848242,  125853808,  120950424,  112880929,  99774559,   87108077,
         70599795,   50068507,   26060170,   0,          -26060170,  -50068507,
         -70599792,  -87108068,  -99774568,  -112880929, -120950424, -125853814,
         -128848243, -130705069, -132420430, -133264733, -133700308, -133932641,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217744,  134655979,  134988239,  135559790,  136513776,  138005964,
         139162482,  140361258,  141138020,  140293965,  138371877,  136502930,
         126746944,  102804704,  59370579,   0,          -59370579,  -102804704,
         -126746957, -136502930, -138371890, -140293970, -141138020, -140361258,
         -139162497, -138005964, -136513792, -135559805, -134988239, -134655979,
         -134217744},
        {134217744,  134962683,  135539295,  136557732,  138346233,  141452453,
         144288910,  148135620,  153292676,  175071409,  212428515,  254219167,
         323573619,  452387989,  709374650,  0,          -709375876, -452387936,
         -323573672, -254219167, -212428528, -175071409, -153292663, -148135606,
         -144288924, -141452453, -138346233, -136557732, -135539295, -134962683,
         -134217744},
    },
    {
        {134217728,  133517388,  132968168,  131982689,  130203271,  126958371,
         123812646,  119241372,  112569794,  102830521,  88745164,   76246965,
         60892748,   42668052,   22033146,   0,          -22033144,  -42668057,
         -60892753,  -76246965,  -88745164,  -102830531, -112569785, -119241363,
         -123812654, -126958371, -130203280, -131982697, -132968160, -133517380,
         -134217736},
        {134217728,  133560667,  133044207,  132115111,  130430074,  127335394,
         124312090,  119884885,  113366063,  103758318,  89731143,   77197214,
         61725371,   43292653,   22369435,   0,          -22369434,  -43292655,
         -61725371,  -77197209,  -89731143,  -103758309, -113366063, -119884894,
         -124312098, -127335394, -130430074, -132115119, -133044215, -133560651,
         -134217736},
        {134217728,  133626556,  133160120,  132317284,  130777308,  127915335,
         125083431,  120883935,  114610226,  105218864,  91295851,   78713132,
         63059915,   44297538,   22911785,   0,          -22911782,  -44297538,
         -63059910,  -78713137,  -91295851,  -105218855, -114610226, -120883935,
         -125083440, -127915335, -130777308, -132317293, -133160128, -133626540,
         -134217736},
        {134217728,  133792202,  133452102,  132828323,  131660297,  129405046,
         127082463,  123503081,  117919375,  109170723,  95610055,   82945267,
         66828178,   47161136,   24466610,   0,          -24466610,  -47161136,
         -66828178,  -82945267,  -95610064,  -109170725, -117919366, -123503090,
         -127082486, -129405039, -131660312, -132828331, -133452110, -133792210,
         -134217736},
        {134217728,  133953625,  133737455,  133330222,  132534982,  130902453,
         129118100,  126216242,  121423078,  113467678,  100443871,  87784612,
         71219199,   50550149,   26325706,   0,          -26325706,  -50550154,
         -71219202,  -87784612,  -100443871, -113467678, -121423078, -126216226,
         -129118109, -130902453, -132534997, -133330214, -133737456, -133953625,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217744,  134621813,  134927051,  135449572,  136313400,  137636071,
         138622650,  139566056,  139956832,  138536878,  133180717,  129783677,
         118675624,  94628804,   53853292,   0,          -53853295,  -94628804,
         -118675637, -129783677, -133180717, -138536864, -139956832, -139566056,
         -138622666, -137636071, -136313400, -135449556, -134927051, -134621813,
         -134217744},
        {134217744,  134904883,  135435203,  136368502,  137996233,  140785045,
         143282261,  146575942,  150720567,  165849956,  193015182,  218765195,
         250475781,  276007380,  232012261,  0,          -232012394, -276007380,
         -250475807, -218765195, -193015209, -165849956, -150720553, -146575942,
         -143282270, -140785029, -137996233, -136368502, -135435219, -134904883,
         -134217744},
    },
    {
        {134217728,  133678764,  133252044,  132477911,  131054012,  128379841,
         125703998,  121692333,  115624163,  106419205,  92593586,   79977946,
         64179408,   45144170,   23370016,   0,          -23370016,  -45144175,
         -64179408,  -79977946,  -92593586,  -106419196, -115624163, -121692324,
         -125704006, -128379848, -131054020, -132477902, -133252052, -133678756,
         -134217736},
        {134217728,  133712005,  133310620,  132580354,  131230923,  128677921,
         126103542,  122214988,  116283221,  107204353,  93448326,   80814826,
         64923233,   45708586,   23676171,   0,          -23676171,  -45708586,
         -64923233,  -80814831,  -93448326,  -107204344, -116283221, -122214988,
         -126103542, -128677921, -131230923, -132580362, -133310620, -133711997,
         -134217736},
        {134217728,  133762594,  133399847,  132736656,  131501355,  129135285,
         126718571,  123023009,  117307580,  108432548,  94794977,   82139614,
         66105841,   46609132,   24165789,   0,          -24165786,  -46609132,
         -66105847,  -82139614,  -94794987,  -108432548, -117307580, -123023009,
         -126718574, -129135283, -131501371, -132736656, -133399839, -133762594,
         -134217736},
        {134217728,  133889704,  133624356,  133130995,  132186884,  130303885,
         128301191,  125121697,  120000061,  111707953,  98445440,   85770865,
         69380893,   49124191,   25540859,   0,          -25540857,  -49124196,
         -69380888,  -85770874,  -98445440,  -111707944, -120000061, -125121697,
         -128301191, -130303893, -132186900, -133130995, -133624356, -133889712,
         -134217728},
        {134217728,  134013488,  133843425,  133517257,  132862879,  131469447,
         129895964,  127265729,  122800030,  115190043,  102426301,  89801131,
         73076637,   52001860,   27128796,   0,          -27128794,  -52001864,
         -73076641,  -89801131,  -102426301, -115190039, -122800030, -127265729,
         -129895972, -131469447, -132862879, -133517265, -133843441, -134013480,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134524667,  134753225,  135137152,  135747532,  136598811,
         137119080,  137373516,  136748951,  133873231,  125921352,  115399244,
         100457884,  77154931,   42583862,   0,          -42583862,  -77154938,
         -100457891, -115399244, -125921369, -133873231, -136748936, -137373501,
         -137119096, -136598811, -135747548, -135137152, -134753241, -134524667,
         -134217728},
        {134217744,  134740697,  135140165,  135833916,  137013874,  138934982,
         140527025,  142390637,  144197099,  144950624,  153156303,  156579063,
         152419543,  130790210,  79555611,   0,          -79555625,  -130790210,
         -152419556, -156579063, -153156316, -144950610, -144197089, -142390622,
         -140527040, -138934982, -137013890, -135833916, -135140150, -134740697,
         -134217744},
    },
    {
        {134217728,  133921369,  133680325,  133229561,  132358967,  130599331,
         128703866,  125660282,  120698624,  112569282,  99420258,   86750815,
         70273432,   49815216,   25920711,   0,          -25920711,  -49815221,
         -70273437,  -86750806,  -99420256,  -112569274, -120698624, -125660282,
         -128703883, -130599348, -132358983, -133229561, -133680325, -133921361,
         -134217728},
        {134217728,  133939441,  133712333,  133285932,  132457505,  130768900,
         128935466,  125970874,  121102931,  113070012,  99989913,   87325519,
         70798672,   50223025,   26145310,   0,          -26145308,  -50223025,
         -70798677,  -87325519,  -99989913,  -113070003, -121102931, -125970860,
         -128935481, -130768908, -132457513, -133285932, -133712341, -133939433,
         -134217728},
        {134217728,  133966965,  133761027,  133371807,  132607806,  131028081,
         129290134,  126447733,  121725737,  113844587,  100875426,  88221963,
         71620613,   50862941,   26498391,   0,          -26498388,  -50862946,
         -71620620,  -88221963,  -100875417, -113844587, -121725728, -126447716,
         -129290134, -131028089, -132607807, -133371815, -133761036, -133966957,
         -134217728},
        {134217728,  134036022,  133883399,  133587872,  132986916,  131684800,
         130192440,  127667609,  123330628,  115859003,  103203522,  90597004,
         73814421,   52581631,   27450709,   0,          -27450709,  -52581635,
         -73814421,  -90597004,  -103203522, -115858986, -123330612, -127667609,
         -130192441, -131684792, -132986917, -133587864, -133883399, -134036014,
         -134217728},
        {134217728,  134103202,  134002513,  133798640,  133358145,  132331971,
         131086862,  128886498,  124951227,  117920856,  105625498,  93096793,
         76149690,   54428903,   28481041,   0,          -28481039,  -54428903,
         -76149698,  -93096793,  -105625498, -117920856, -124951227, -128886489,
         -131086879, -132331963, -133358153, -133798640, -134002521, -134103194,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134379666,  134494354,  134673574,  134913679,  135089351,
         134957528,  134277005,  132335084,  127697337,  117706196,  106054041,
         88737129,   64741142,   34377364,   0,          -34377364,  -64741149,
         -88737144,  -106054041, -117706196, -127697337, -132335084, -134276990,
         -134957528, -135089351, -134913679, -134673590, -134494354, -134379666,
         -134217728},
        {134217728,  134496089,  134702142,  135045469,  135582090,  136297572,
         136685209,  136746798,  135844838,  132586209,  124167611,  113363711,
         96250730,   73172752,   40110146,   0,          -40110146,  -73172752,
         -96250737,  -113363711, -124167625, -132586192, -135844823, -136746798,
         -136685224, -136297557, -135582122, -135045469, -134702142, -134496073,
         -134217728},
    },
    {
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369938,   0,          -30369936,  -57781476,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369938,   0,          -30369936,  -57781476,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369938,   0,          -30369936,  -57781479,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
    },
    {
        {134217728,  134498993,  134707335,  135054789,  135598900,  136328115,
         136729141,  136810142,  135935959,  132715402,  124342638,  113565820,
         96534651,   73558852,   40348512,   0,          -40348509,  -73558852,
         -96534651,  -113565820, -124342622, -132715402, -135935959, -136810127,
         -136729141, -136328115, -135598916, -135054789, -134707335, -134498977,
         -134217728},
        {134217728,  134480680,  134674623,  134996162,  135493192,  136136017,
         136453048,  136412541,  135364880,  131907703,  123252219,  112310293,
         95147250,   71192218,   38892389,   0,          -38892389,  -71192225,
         -95147244,  -112310293, -123252233, -131907703, -135364880, -136412525,
         -136453064, -136136017, -135493192, -134996162, -134674623, -134480664,
         -134217728},
        {134217728,  134452852,  134624907,  134907111,  135332868,  135845392,
         136036318,  135814387,  134509950,  130707034,  121647428,  110478072,
         93245003,   68600479,   36868706,   0,          -36868706,  -68600486,
         -93245010,  -110478072, -121647428, -130707019, -134509933, -135814387,
         -136036318, -135845392, -135332868, -134907111, -134624907, -134452836,
         -134217728},
        {134217728,  134383129,  134500515,  134684594,  134933403,  135124815,
         135007943,  134348491,  132435517,  127834944,  117883926,  106251314,
         88935676,   64909118,   34475644,   0,          -34475641,  -64909118,
         -88935672,  -106251314, -117883941, -127834944, -132435502, -134348484,
         -135007943, -135124799, -134933403, -134684610, -134500515, -134383113,
         -134217728},
        {134217728,  134315558,  134380057,  134469604,  134548899,  134436000,
         134031448,  132969665,  130510521,  125220021,  114545007,  102579384,
         85276062,   61841165,   32692547,   0,          -32692543,  -61841172,
         -85276062,  -102579384, -114545015, -125220021, -130510514, -132969665,
         -134031463, -134436000, -134548899, -134469604, -134380057, -134315558,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134039455,  133889472,  133598612,  133005816,  131717634,
         130237695,  127729079,  123411911,  115961736,  103323251,  90719885,
         73928581,   52671501,   27500671,   0,          -27500669,  -52671505,
         -73928581,  -90719885,  -103323259, -115961741, -123411903, -127729055,
         -130237711, -131717634, -133005816, -133598612, -133889472, -134039447,
         -134217728},
        {134217728,  133924242,  133685411,  133238504,  132374593,  130626201,
         128740547,  125709420,  120762534,  112648312,  99510030,   86841272,
         70356024,   49879283,   25955974,   0,          -25955971,  -49879287,
         -70356024,  -86841272,  -99510039,  -112648312, -120762526, -125709412,
         -128740555, -130626209, -132374601, -133238504, -133685403, -133924234,
         -134217728},
    },
    {
        {134217744,  134746091,  135149853,  135851434,  137045902,  138994799,
         140615296,  142522879,  144398695,  145263100,  154205556,  158059463,
         154411290,  133097557,  81316205,   0,          -81316205,  -133097543,
         -154411303, -158059463, -154205556, -145263100, -144398695, -142522879,
         -140615296, -138994799, -137045918, -135851434, -135149837, -134746091,
         -134217744},
        {134217744,  134712087,  135088825,  135741208,  136844475,  138619336,
         140061990,  141695888,  143142475,  143327466,  147825370,  149173983,
         142666223,  119784477,  71366265,   0,          -71366265,  -119784477,
         -142666263, -149173983, -147825383, -143327466, -143142475, -141695873,
         -140062006, -138619320, -136844467, -135741224, -135088825, -134712087,
         -134217744},
        {134217744,  134660400,  134996180,  135574064,  136539790,  138054064,
         139232828,  140465192,  141293136,  140526367,  139073637,  137423970,
         127872797,  103967564,  60168572,   0,          -60168579,  -103967564,
         -127872810, -137423970, -139073650, -140526353, -141293121, -140465192,
         -139232828, -138054064, -136539805, -135574064, -134996180, -134660400,
         -134217744},
        {134217728,  134531071,  134764682,  135157698,  135784674,  136666568,
         137216832,  137515087,  136953956,  134166704,  126324479,  115870417,
         101486338,  78107065,   43180376,   0,          -43180372,  -78107065,
         -101486344, -115870417, -126324479, -134166690, -136953956, -137515087,
         -137216847, -136666568, -135784674, -135157698, -134764682, -134531071,
         -134217728},
        {134217728,  134405853,  134541061,  134757061,  135063333,  135358653,
         135340907,  134821548,  133101766,  128751135,  119073216,  107576641,
         90275394,   66047286,   35143667,   0,          -35143664,  -66047286,
         -90275401,  -107576641, -119073231, -128751120, -133101751, -134821548,
         -135340923, -135358653, -135063349, -134757077, -134541061, -134405853,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  133896028,  133635530,  133150648,  132221176,  130362696,
         128381245,  125228644,  120138520,  111878277,  98637718,   85963798,
         69556315,   49259814,   25615335,   0,          -25615335,  -49259818,
         -69556315,  -85963798,  -98637718,  -111878269, -120138520, -125228635,
         -128381253, -130362689, -132221184, -133150656, -133635522, -133896020,
         -134217728},
        {134217728,  133684024,  133261330,  132494150,  131082043,  128427016,
         125767162,  121774846,  115728035,  106542671,  92727700,   80109047,
         64295775,   45232367,   23417819,   0,          -23417819,  -45232367,
         -64295774,  -80109052,  -92727700,  -106542671, -115728027, -121774851,
         -125767170, -128427016, -131082043, -132494166, -133261346, -133684032,
         -134217736},
    },
    {
        {134217744,  134911968,  135447966,  136391663,  138039000,  140866367,
         143404554,  146764521,  151021632,  166927889,  195202182,  222570595,
         257610421,  289862500,  252874234,  0,          -252874341, -289862420,
         -257610501, -222570621, -195202209, -166927876, -151021632, -146764507,
         -143404554, -140866352, -138039000, -136391663, -135447966, -134911968,
         -134217744},
        {134217744,  134867355,  135367738,  136245965,  137770239,  140356424,
         142639355,  145588557,  149154344,  160361636,  182196342,  200588382,
         218415341,  220218448,  161428236,  0,          -161428263, -220218448,
         -218415395, -200588409, -182196329, -160361623, -149154344, -145588542,
         -142639355, -140356409, -137770238, -136245981, -135367738, -134867355,
         -134217744},
        {134217744,  134799630,  135245963,  136025282,  137364449,  139591338,
         141498666,  143852961,  146442545,  151309130,  165431889,  174391809,
         177370022,  161281089,  104146144,  0,          -104146171, -161281089,
         -177370049, -174391796, -165431903, -151309116, -146442531, -143852947,
         -141498681, -139591338, -137364449, -136025297, -135245963, -134799614,
         -134217744},
        {134217744,  134630198,  134942075,  135476620,  136362516,  137726655,
         138754657,  139760139,  140244217,  138962344,  134419383,  131372064,
         120561410,  96514144,   55111265,   0,          -55111262,  -96514144,
         -120561424, -131372064, -134419383, -138962344, -140244217, -139760124,
         -138754673, -137726655, -136362532, -135476604, -134942075, -134630198,
         -134217744},
        {134217728,  134466320,  134648961,  134950176,  135410401,  135985835,
         136237563,  136102933,  134921759,  131284100,  122416352,  111353663,
         94151405,   69439052,   37821289,   0,          -37821289,  -69439058,
         -94151405,  -111353655, -122416359, -131284100, -134921744, -136102933,
         -136237563, -135985836, -135410401, -134950176, -134648961, -134466304,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  133800456,  133466639,  132853833,  131704577,  129480322,
         127184162,  123637500,  118091100,  109378569,  95840339,   83173415,
         67033158,   47318062,   24552229,   0,          -24552227,  -47318062,
         -67033165,  -83173405,  -95840348,  -109378569, -118091100, -123637492,
         -127184170, -129480322, -131704577, -132853833, -133466647, -133800448,
         -134217736},
        {134217728,  133524250,  132980227,  132003691,  130239201,  127017985,
         123891524,  119342831,  112695071,  102976138,  88899495,   76395462,
         61022664,   42765392,   22085513,   0,          -22085512,  -42765395,
         -61022669,  -76395462,  -88899495,  -102976129, -112695062, -119342822,
         -123891527, -127017985, -130239210, -132003691, -132980227, -133524250,
         -134217736},
    },
    {
        {134217744,  134970359,  135553135,  136582894,  138392877,  141541743,
         144424094,  148346340,  153978836,  176372729,  215302062,  259806420,
         336609085,  494304735,  975787497,  -858993460, -975789097, -494304522,
         -336609192, -259806447, -215302075, -176372702, -153978836, -148346340,
         -144424109, -141541728, -138392877, -136582894, -135553135, -134970359,
         -134217744},
        {134217744,  134922022,  135466091,  136424566,  138099800,  140982070,
         143578731,  147033572,  151452343,  168483023,  198394635,  228208128,
         268470634,  312112739,  289892500,  0,          -289892633, -312112739,
         -268470714, -228208155, -198394649, -168483009, -151452340, -147033558,
         -143578731, -140982070, -138099815, -136424566, -135466075, -134922022,
         -134217744},
        {134217744,  134848627,  135333994,  136184803,  137657591,  140143456,
         142320970,  145102040,  148388972,  157750196,  177226889,  192583689,
         205271595,  199995929,  140105690,  0,          -140105757, -199995915,
         -205271635, -192583689, -177226916, -157750183, -148388958, -145102025,
         -142320985, -140143456, -137657591, -136184803, -135334009, -134848611,
         -134217744},
        {134217744,  134665058,  135004509,  135589124,  136567188,  138104822,
         139307072,  140574980,  141457125,  140772491,  139820837,  138408050,
         129080970,  105221711,  61032985,   0,          -61032985,  -105221711,
         -129080997, -138408050, -139820850, -140772477, -141457125, -140574962,
         -139307072, -138104806, -136567205, -135589140, -135004525, -134665058,
         -134217744},
        {134217728,  134487552,  134686918,  135018188,  135532903,  136208162,
         136556685,  136561648,  135578778,  132209698,  123658874,  112777500,
         95635765,   72064052,   39427432,   0,          -39427432,  -72064065,
         -95635772,  -112777498, -123658874, -132209683, -135578762, -136561648,
         -136556685, -136208146, -135532903, -135018204, -134686918, -134487552,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  133766932,  133407501,  132750065,  131524599,  129174690,
         126771678,  123092977,  117396601,  108539737,  94913060,   82256151,
         66210183,   46688771,   24209158,   0,          -24209156,  -46688776,
         -66210179,  -82256150,  -94913060,  -108539737, -117396605, -123092969,
         -126771680, -129174690, -131524607, -132750073, -133407493, -133766932,
         -134217736},
        {134217728,  133468277,  132881938,  131832762,  129947063,  126534099,
         123252524,  118522767,  111685262,  101806166,  87663578,   75208916,
         59986579,   41990286,   21668928,   0,          -21668926,  -41990288,
         -59986579,  -75208922,  -87663568,  -101806156, -111685259, -118522767,
         -123252524, -126534093, -129947064, -131832762, -132881938, -133468277,
         -134217736},
    },
    {
        {134217744,  134911968,  135447966,  136391663,  138039000,  140866367,
         143404554,  146764521,  151021632,  166927889,  195202182,  222570595,
         257610421,  289862500,  252874234,  0,          -252874341, -289862420,
         -257610501, -222570621, -195202209, -166927876, -151021632, -146764507,
         -143404554, -140866352, -138039000, -136391663, -135447966, -134911968,
         -134217744},
        {134217744,  134867355,  135367738,  136245965,  137770239,  140356424,
         142639355,  145588557,  149154344,  160361636,  182196342,  200588382,
         218415341,  220218448,  161428236,  0,          -161428263, -220218448,
         -218415395, -200588409, -182196329, -160361623, -149154344, -145588542,
         -142639355, -140356409, -137770238, -136245981, -135367738, -134867355,
         -134217744},
        {134217744,  134799630,  135245963,  136025282,  137364449,  139591338,
         141498666,  143852961,  146442545,  151309130,  165431889,  174391809,
         177370022,  161281089,  104146144,  0,          -104146171, -161281089,
         -177370049, -174391796, -165431903, -151309116, -146442531, -143852947,
         -141498681, -139591338, -137364449, -136025297, -135245963, -134799614,
         -134217744},
        {134217744,  134630198,  134942075,  135476620,  136362516,  137726655,
         138754657,  139760139,  140244217,  138962344,  134419383,  131372064,
         120561410,  96514144,   55111265,   0,          -55111262,  -96514144,
         -120561424, -131372064, -134419383, -138962344, -140244217, -139760124,
         -138754673, -137726655, -136362532, -135476604, -134942075, -134630198,
         -134217744},
        {134217728,  134466320,  134648961,  134950176,  135410401,  135985835,
         136237563,  136102933,  134921759,  131284100,  122416352,  111353663,
         94151405,   69439052,   37821289,   0,          -37821289,  -69439058,
         -94151405,  -111353655, -122416359, -131284100, -134921744, -136102933,
         -136237563, -135985836, -135410401, -134950176, -134648961, -134466304,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  133800456,  133466639,  132853833,  131704577,  129480322,
         127184162,  123637500,  118091100,  109378569,  95840339,   83173415,
         67033158,   47318062,   24552229,   0,          -24552227,  -47318062,
         -67033165,  -83173405,  -95840348,  -109378569, -118091100, -123637492,
         -127184170, -129480322, -131704577, -132853833, -133466647, -133800448,
         -134217736},
        {134217728,  133524250,  132980227,  132003691,  130239201,  127017985,
         123891524,  119342831,  112695071,  102976138,  88899495,   76395462,
         61022664,   42765392,   22085513,   0,          -22085512,  -42765395,
         -61022669,  -76395462,  -88899495,  -102976129, -112695062, -119342822,
         -123891527, -127017985, -130239210, -132003691, -132980227, -133524250,
         -134217736},
    },
    {
        {134217744,  134746091,  135149853,  135851434,  137045902,  138994799,
         140615296,  142522879,  144398709,  145263103,  154205570,  158059476,
         154411303,  133097570,  81316211,   0,          -81316218,  -133097557,
         -154411316, -158059490, -154205570, -145263103, -144398709, -142522879,
         -140615296, -138994799, -137045918, -135851434, -135149837, -134746091,
         -134217744},
        {134217744,  134712087,  135088825,  135741208,  136844475,  138619336,
         140061990,  141695888,  143142475,  143327470,  147825383,  149173983,
         142666250,  119784490,  71366272,   0,          -71366278,  -119784490,
         -142666277, -149173996, -147825383, -143327466, -143142475, -141695873,
         -140062006, -138619320, -136844467, -135741224, -135088825, -134712087,
         -134217744},
        {134217744,  134660400,  134996180,  135574064,  136539790,  138054064,
         139232828,  140465192,  141293136,  140526367,  139073637,  137423983,
         127872810,  103967578,  60168579,   0,          -60168585,  -103967578,
         -127872810, -137423970, -139073650, -140526353, -141293121, -140465192,
         -139232843, -138054064, -136539805, -135574064, -134996180, -134660400,
         -134217744},
        {134217728,  134531071,  134764682,  135157698,  135784674,  136666568,
         137216832,  137515087,  136953956,  134166704,  126324470,  115870417,
         101486344,  78107071,   43180379,   0,          -43180376,  -78107078,
         -101486351, -115870417, -126324479, -134166695, -136953956, -137515087,
         -137216847, -136666568, -135784674, -135157698, -134764682, -134531071,
         -134217728},
        {134217728,  134405853,  134541061,  134757061,  135063333,  135358653,
         135340907,  134821548,  133101766,  128751127,  119073224,  107576641,
         90275401,   66047293,   35143667,   0,          -35143667,  -66047293,
         -90275401,  -107576641, -119073231, -128751127, -133101751, -134821548,
         -135340923, -135358653, -135063349, -134757077, -134541061, -134405853,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  133896028,  133635530,  133150648,  132221176,  130362696,
         128381245,  125228635,  120138520,  111878281,  98637718,   85963798,
         69556315,   49259814,   25615335,   0,          -25615335,  -49259818,
         -69556310,  -85963798,  -98637709,  -111878269, -120138520, -125228635,
         -128381253, -130362689, -132221184, -133150656, -133635522, -133896020,
         -134217728},
        {134217728,  133684024,  133261330,  132494150,  131082043,  128427016,
         125767162,  121774843,  115728035,  106542671,  92727700,   80109047,
         64295775,   45232366,   23417819,   0,          -23417819,  -45232366,
         -64295775,  -80109047,  -92727700,  -106542662, -115728027, -121774851,
         -125767170, -128427016, -131082043, -132494166, -133261346, -133684032,
         -134217736},
    },
    {
        {134217728,  134498993,  134707335,  135054789,  135598916,  136328115,
         136729141,  136810142,  135935974,  132715400,  124342636,  113565825,
         96534671,   73558872,   40348522,   0,          -40348522,  -73558878,
         -96534671,  -113565825, -124342636, -132715400, -135935959, -136810142,
         -136729157, -136328114, -135598899, -135054789, -134707335, -134498977,
         -134217728},
        {134217728,  134480680,  134674623,  134996162,  135493192,  136136017,
         136453048,  136412541,  135364880,  131907703,  123252239,  112310291,
         95147257,   71192238,   38892402,   0,          -38892399,  -71192238,
         -95147250,  -112310298, -123252239, -131907703, -135364895, -136412525,
         -136453064, -136136017, -135493192, -134996146, -134674623, -134480664,
         -134217728},
        {134217728,  134452852,  134624907,  134907111,  135332868,  135845392,
         136036318,  135814387,  134509933,  130707049,  121647427,  110478071,
         93245017,   68600483,   36868716,   0,          -36868712,  -68600489,
         -93245017,  -110478064, -121647443, -130707034, -134509933, -135814387,
         -136036318, -135845392, -135332883, -134907111, -134624907, -134452836,
         -134217728},
        {134217728,  134383129,  134500499,  134684594,  134933403,  135124815,
         135007943,  134348507,  132435517,  127834959,  117883933,  106251321,
         88935672,   64909116,   34475648,   0,          -34475644,  -64909116,
         -88935679,  -106251321, -117883933, -127834944, -132435517, -134348491,
         -135007943, -135124799, -134933403, -134684610, -134500515, -134383113,
         -134217728},
        {134217728,  134315558,  134380057,  134469604,  134548899,  134436000,
         134031448,  132969681,  130510521,  125220028,  114545015,  102579384,
         85276069,   61841172,   32692547,   0,          -32692547,  -61841176,
         -85276077,  -102579384, -114545015, -125220021, -130510521, -132969665,
         -134031463, -134436000, -134548899, -134469604, -134380057, -134315558,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134039455,  133889472,  133598612,  133005800,  131717634,
         130237695,  127729079,  123411911,  115961741,  103323251,  90719885,
         73928580,   52671496,   27500669,   0,          -27500669,  -52671501,
         -73928580,  -90719885,  -103323262, -115961741, -123411903, -127729055,
         -130237711, -131717634, -133005808, -133598612, -133889472, -134039455,
         -134217728},
        {134217728,  133924242,  133685411,  133238504,  132374593,  130626201,
         128740547,  125709420,  120762531,  112648312,  99510021,   86841264,
         70356022,   49879278,   25955971,   0,          -25955969,  -49879283,
         -70356027,  -86841273,  -99510021,  -112648303, -120762517, -125709412,
         -128740555, -130626208, -132374601, -133238504, -133685403, -133924234,
         -134217728},
    },
    {
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
    },
    {
        {134217728,  133921369,  133680325,  133229561,  132358967,  130599331,
         128703866,  125660282,  120698624,  112569265,  99420249,   86750797,
         70273427,   49815207,   25920708,   0,          -25920706,  -49815216,
         -70273432,  -86750797,  -99420258,  -112569265, -120698624, -125660282,
         -128703874, -130599331, -132358983, -133229561, -133680325, -133921361,
         -134217728},
        {134217728,  133939441,  133712333,  133285932,  132457505,  130768900,
         128935465,  125970874,  121102931,  113070012,  99989904,   87325519,
         70798668,   50223016,   26145306,   0,          -26145303,  -50223020,
         -70798668,  -87325510,  -99989904,  -113070007, -121102923, -125970860,
         -128935481, -130768900, -132457513, -133285939, -133712341, -133939433,
         -134217728},
        {134217728,  133966965,  133761027,  133371807,  132607806,  131028081,
         129290132,  126447716,  121725742,  113844587,  100875428,  88221954,
         71620616,   50862942,   26498391,   0,          -26498387,  -50862942,
         -71620616,  -88221954,  -100875420, -113844579, -121725728, -126447716,
         -129290134, -131028089, -132607814, -133371815, -133761036, -133966957,
         -134217728},
        {134217728,  134036022,  133883399,  133587872,  132986916,  131684800,
         130192440,  127667609,  123330612,  115858986,  103203513,  90596996,
         73814421,   52581631,   27450707,   0,          -27450704,  -52581631,
         -73814421,  -90596996,  -103203522, -115858986, -123330612, -127667609,
         -130192441, -131684792, -132986917, -133587864, -133883399, -134036014,
         -134217728},
        {134217728,  134103202,  134002513,  133798640,  133358145,  132331971,
         131086862,  128886498,  124951211,  117920856,  105625489,  93096793,
         76149699,   54428898,   28481041,   0,          -28481039,  -54428898,
         -76149699,  -93096785,  -105625498, -117920856, -124951211, -128886489,
         -131086879, -132331963, -133358153, -133798640, -134002521, -134103194,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134379666,  134494354,  134673574,  134913679,  135089351,
         134957528,  134277005,  132335084,  127697337,  117706188,  106054041,
         88737144,   64741149,   34377366,   0,          -34377367,  -64741156,
         -88737144,  -106054041, -117706196, -127697337, -132335084, -134276990,
         -134957528, -135089351, -134913695, -134673590, -134494354, -134379666,
         -134217728},
        {134217728,  134496089,  134702142,  135045469,  135582090,  136297572,
         136685224,  136746798,  135844838,  132586207,  124167625,  113363717,
         96250743,   73172765,   40110159,   0,          -40110156,  -73172772,
         -96250750,  -113363724, -124167639, -132586207, -135844838, -136746798,
         -136685224, -136297572, -135582122, -135045469, -134702142, -134496073,
         -134217728},
    },
    {
        {134217728,  133678764,  133252044,  132477911,  131054012,  128379841,
         125703998,  121692333,  115624181,  106419205,  92593586,   79977943,
         64179408,   45144170,   23370016,   0,          -23370016,  -45144171,
         -64179414,  -79977946,  -92593586,  -106419205, -115624163, -121692333,
         -125704006, -128379841, -131054020, -132477902, -133252052, -133678756,
         -134217736},
        {134217728,  133712005,  133310620,  132580354,  131230923,  128677921,
         126103542,  122214988,  116283239,  107204353,  93448335,   80814831,
         64923238,   45708586,   23676173,   0,          -23676171,  -45708591,
         -64923238,  -80814831,  -93448335,  -107204344, -116283230, -122214988,
         -126103542, -128677921, -131230923, -132580362, -133310620, -133711997,
         -134217736},
        {134217728,  133762594,  133399847,  132736656,  131501355,  129135285,
         126718565,  123023009,  117307580,  108432557,  94794977,   82139615,
         66105845,   46609132,   24165789,   0,          -24165786,  -46609132,
         -66105845,  -82139614,  -94794987,  -108432548, -117307580, -123023009,
         -126718574, -129135285, -131501371, -132736656, -133399839, -133762594,
         -134217736},
        {134217728,  133889704,  133624356,  133130995,  132186884,  130303885,
         128301191,  125121697,  120000061,  111707953,  98445440,   85770865,
         69380893,   49124196,   25540859,   0,          -25540856,  -49124196,
         -69380893,  -85770874,  -98445449,  -111707944, -120000061, -125121697,
         -128301191, -130303893, -132186900, -133130995, -133624357, -133889712,
         -134217728},
        {134217728,  134013488,  133843425,  133517257,  132862879,  131469448,
         129895964,  127265729,  122800030,  115190043,  102426301,  89801131,
         73076634,   52001860,   27128796,   0,          -27128794,  -52001864,
         -73076638,  -89801131,  -102426301, -115190039, -122800030, -127265729,
         -129895972, -131469447, -132862879, -133517265, -133843441, -134013480,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217728,  134524667,  134753225,  135137152,  135747532,  136598811,
         137119081,  137373516,  136748951,  133873234,  125921352,  115399246,
         100457878,  77154925,   42583859,   0,          -42583859,  -77154925,
         -100457884, -115399246, -125921369, -133873234, -136748936, -137373501,
         -137119096, -136598811, -135747548, -135137152, -134753241, -134524667,
         -134217728},
        {134217744,  134740697,  135140165,  135833916,  137013874,  138934982,
         140527025,  142390622,  144197099,  144950610,  153156290,  156579036,
         152419516,  130790170,  79555585,   0,          -79555598,  -130790170,
         -152419516, -156579036, -153156290, -144950597, -144197099, -142390622,
         -140527040, -138934982, -137013891, -135833916, -135140150, -134740697,
         -134217744},
    },
    {
        {134217728,  133517388,  132968168,  131982689,  130203271,  126958371,
         123812646,  119241372,  112569785,  102830521,  88745154,   76246960,
         60892748,   42668052,   22033146,   0,          -22033144,  -42668058,
         -60892753,  -76246960,  -88745154,  -102830531, -112569785, -119241363,
         -123812646, -126958371, -130203280, -131982697, -132968160, -133517380,
         -134217736},
        {134217728,  133560667,  133044207,  132115111,  130430074,  127335394,
         124312090,  119884885,  113366063,  103758318,  89731133,   77197209,
         61725371,   43292651,   22369435,   0,          -22369434,  -43292655,
         -61725371,  -77197209,  -89731143,  -103758309, -113366066, -119884894,
         -124312098, -127335394, -130430074, -132115119, -133044215, -133560651,
         -134217736},
        {134217728,  133626556,  133160120,  132317284,  130777308,  127915335,
         125083431,  120883935,  114610226,  105218855,  91295851,   78713135,
         63059915,   44297538,   22911785,   0,          -22911782,  -44297538,
         -63059910,  -78713135,  -91295851,  -105218855, -114610226, -120883926,
         -125083440, -127915335, -130777308, -132317293, -133160128, -133626540,
         -134217736},
        {134217728,  133792202,  133452102,  132828323,  131660297,  129405046,
         127082463,  123503081,  117919375,  109170723,  95610055,   82945267,
         66828178,   47161136,   24466610,   0,          -24466610,  -47161136,
         -66828178,  -82945267,  -95610064,  -109170725, -117919366, -123503090,
         -127082486, -129405039, -131660312, -132828331, -133452110, -133792210,
         -134217736},
        {134217728,  133953625,  133737455,  133330222,  132534982,  130902453,
         129118100,  126216242,  121423078,  113467678,  100443871,  87784612,
         71219202,   50550149,   26325706,   0,          -26325706,  -50550154,
         -71219202,  -87784603,  -100443871, -113467678, -121423078, -126216226,
         -129118109, -130902436, -132534997, -133330214, -133737456, -133953625,
         -134217728},
        {134217728,  134209240,  134190888,  134132864,  133949552,  133371536,
         132534624,  130880344,  127640160,  121406192,  109814504,  97493904,
         80326624,   57781472,   30369936,   0,          -30369936,  -57781472,
         -80326624,  -97493904,  -109814504, -121406184, -127640152, -130880344,
         -132534632, -133371536, -133949560, -134132872, -134190888, -134209240,
         -134217728},
        {134217744,  134621813,  134927051,  135449572,  136313400,  137636071,
         138622650,  139566056,  139956832,  138536878,  133180717,  129783677,
         118675624,  94628818,   53853299,   0,          -53853295,  -94628811,
         -118675637, -129783677, -133180717, -138536882, -139956832, -139566056,
         -138622666, -137636071, -136313400, -135449572, -134927051, -134621813,
         -134217744},
        {134217744,  134904883,  135435219,  136368502,  137996233,  140785045,
         143282261,  146575942,  150720567,  165849956,  193015195,  218765208,
         250475834,  276007487,  232012394,  0,          -232012528, -276007460,
         -250475861, -218765208, -193015222, -165849956, -150720553, -146575942,
         -143282275, -140785029, -137996233, -136368502, -135435219, -134904883,
         -134217744},
    },
};

const WORD32 ixheaacd_beta_Q28[16][8][31] = {
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        524548,   928967,   1639916,  2878403,  5000493,  6908550,
         9455203,  12765894, 16898498, 21732020, 25132388, 28389032, 31149502,
         33022448, 33688388, 33022450, 31149502, 28389032, 25132388, 21732022,
         16898498, 12765894, 9455202,  6908550,  5000493,  2878403,  1639916,
         928967,   524548,   3},
        {5,        812423,   1439377,  2542753,  4468501,  7778568,  10765468,
         14766874, 19992330, 26548934, 34259648, 39707896, 44942048, 49389848,
         52412912, 53488748, 52412912, 49389844, 44942052, 39707896, 34259652,
         26548934, 19992330, 14766874, 10765469, 7778568,  4468501,  2542753,
         1439377,  812423,   5},
        {7,        1202481,  2132639,  3774216,  6653171,  11641950, 16186106,
         22334354, 30462996, 40811628, 53176452, 62028444, 70614328, 77968304,
         82994936, 84789064, 82994936, 77968304, 70614328, 62028448, 53176452,
         40811628, 30462996, 22334354, 16186107, 11641950, 6653172,  3774216,
         2132639,  1202481,  7},
        {8,        1400871,  2486989,   4409108,   7796283,   13714060,
         19156910, 26599080, 36572432,  49482236,  65204176,  76647304,
         87887896, 97621072, 104327480, 106731360, 104327488, 97621064,
         87887896, 76647304, 65204180,  49482240,  36572432,  26599080,
         19156912, 13714061, 7796283,   4409108,   2486989,   1400871,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,         1223918,   2181987,   3897455,   6984316,   12583060,
         17979762,  25778776,  37085592,  53441976,  78581112,  104374688,
         137112768, 174183376, 206541584, 219922496, 206541600, 174183344,
         137112784, 104374688, 78581120,  53441980,  37085592,  25778774,
         17979764,  12583059,  6984316,   3897455,   2181987,   1223918,
         7},
        {1,        214133,    382441,    685346,     1235544,   2251347,
         3254155,  4749173,   7031145,   11641319,   21058462,  33931652,
         61102220, 133797576, 430779840, 1577812480, 430780608, 133797536,
         61102232, 33931652,  21058464,  11641320,   7031145,   4749173,
         3254155,  2251347,   1235544,   685346,     382441,    214133,
         1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        524756,   929618,   1641931,  2884546,  5018684,  6942684,
         9517694,  12876462, 17085148, 22027532, 25515680, 28863994, 31707368,
         33639036, 34326304, 33639036, 31707366, 28863996, 25515680, 22027532,
         17085148, 12876462, 9517694,  6942685,  5018684,  2884546,  1641932,
         929618,   524756,   3},
        {5,        812713,   1440285,  2545568,  4477108,  7804208,  10813826,
         14855985, 20151268, 26819764, 34692788, 40273396, 45646932, 50221664,
         53335084, 54443828, 53335084, 50221660, 45646932, 40273396, 34692788,
         26819762, 20151268, 14855984, 10813826, 7804208,  4477108,  2545568,
         1440285,  812713,   5},
        {7,        1202789,  2133603,  3777225,  6662453,  11670018, 16239749,
         22434930, 30646316, 41132172, 53703904, 62730216, 71504264, 79033256,
         84186408, 86026976, 84186408, 79033248, 71504272, 62730216, 53703904,
         41132176, 30646314, 22434930, 16239752, 11670018, 6662454,  3777225,
         2133603,  1202789,  7},
        {8,        1401091,  2487681,   4411274,   7803027,   13734770,
         19197032, 26675680, 36715348,  49739444,  65641580,  77242592,
         88658976, 98560160, 105390504, 107840400, 105390512, 98560152,
         88658992, 77242592, 65641576,  49739444,  36715348,  26675674,
         19197034, 13734770, 7803028,   4411274,   2487680,   1401091,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,         1223607,   2180998,   3894286,   6974063,   12549334,
         17910016,  25632730,  36775224,  52772652,  75633064,  99236928,
         128381344, 160330848, 187347760, 198291376, 187347792, 160330816,
         128381360, 99236928,  75633072,  52772648,  36775220,  25632728,
         17910018,  12549334,  6974064,   3894286,   2180998,   1223607,
         7},
        {1,        214041,   382148,    684396,    1232418,   2240724,
         3231452,  4699171,  6913169,   11028142,  19133978,  29199466,
         47298748, 81631520, 140893408, 184843504, 140893488, 81631504,
         47298752, 29199468, 19133982,  11028142,  6913169,   4699170,
         3231452,  2240724,  1232418,   684397,    382148,    214041,
         1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        525351,   931480,   1647714,  2902257,  5071597,  7042735,
         9702682,  13207802, 17652582, 22940042, 26711396, 30359376, 33476790,
         35604100, 36362732, 35604100, 33476786, 30359378, 26711396, 22940042,
         17652582, 13207802, 9702681,  7042735,  5071597,  2902257,  1647714,
         931480,   525351,   3},
        {5,        813540,   1442877,  2553636,  4501896,  7878638,  10955188,
         15118865, 20625528, 27638916, 36022472, 42026548, 47851776, 52842400,
         56254208, 57472080, 56254208, 52842396, 47851784, 42026548, 36022476,
         27638918, 20625528, 15118864, 10955189, 7878638,  4501896,  2553636,
         1442877,  813540,   5},
        {7,        1203665,  2136357,  3785832,  6689100,  11751078, 16395488,
         22728960, 31187070, 42088120, 55296528, 64867172, 74235600, 82322976,
         87882752, 89873216, 87882752, 82322968, 74235600, 64867176, 55296532,
         42088120, 31187070, 22728958, 16395489, 11751078, 6689101,  3785832,
         2136357,  1203665,  7},
        {8,        1401717,   2489652,   4417463,   7822332,   13794262,
         19312684, 26897488,  37131704,  50494456,  66937128,  79016952,
         90971256, 101390632, 108605536, 111198632, 108605544, 101390624,
         90971264, 79016952,  66937124,  50494456,  37131704,  26897486,
         19312686, 13794262,  7822333,   4417463,   2489652,   1401717,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,         1222724,   2178188,   3885304,   6945113,   12454759,
         17715754,  25230046,  35932316,  50996136,  71510480,  88238104,
         108673696, 130724624, 148143056, 154903104, 148143056, 130724616,
         108673712, 88238104,  71510496,  50996136,  35932312,  25230042,
         17715758,  12454758,  6945114,   3885304,   2178189,   1222724,
         7},
        {1,        213781,   381315,   681714,   1223645,  2211279,  3169313,
         4564991,  6613954,  9638447,  15182689, 20899234, 28782236, 38682308,
         48311500, 52599960, 48311512, 38682304, 28782238, 20899234, 15182691,
         9638447,  6613954,  4564991,  3169313,  2211279,  1223645,  681714,
         381315,   213781,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        526244,   934286,   1656482,  2929383,  5154009,  7200895,
         10000863, 13755239, 18618438, 24545894, 28863348, 33106848, 36783144,
         39317176, 40225672, 39317176, 36783140, 33106852, 28863350, 24545894,
         18618438, 13755239, 10000861, 7200896,  5154009,  2929384,  1656483,
         934287,   526244,   3},
        {5,        814783,   1446784,  2565855,  4539774,  7994119,  11177507,
         15539745, 21402348, 29018418, 38333064, 45138568, 51843732, 57665092,
         61684144, 63126300, 61684144, 57665092, 51843740, 45138568, 38333064,
         29018418, 21402346, 15539743, 11177508, 7994120,  4539775,  2565855,
         1446784,  814783,   5},
        {7,        1204981,  2140499,  3798824,  6729584,  11875611, 16637170,
         23191438, 32052658, 43652108, 57969132, 68517104, 78979352, 88117000,
         94454304, 96733920, 94454304, 88116992, 78979352, 68517104, 57969132,
         43652104, 32052654, 23191436, 16637170, 11875611, 6729584,  3798824,
         2140499,  1204981,  7},
        {8,        1402655,   2492611,   4426772,   7851491,   13884761,
         19489746, 27240036,  37782176,  51691532,  69027848,  81916832,
         94796824, 106122752, 114019032, 116867632, 114019032, 106122744,
         94796832, 81916840,  69027848,  51691532,  37782172,  27240034,
         19489748, 13884760,  7851492,   4426772,   2492611,   1402655,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1221406,   2174004,   3871976,   6902451,   12317130,
         17436482, 24661340,  34772520,  48643564,  66845116,  81092456,
         95994376, 109691784, 119593840, 123240696, 119593848, 109691776,
         95994392, 81092456,  66845116,  48643564,  34772520,  24661336,
         17436482, 12317130,  6902452,   3871976,   2174004,   1221406,
         7},
        {1,        213393,   380079,   677757,   1210858,  2169302,  3082668,
         4384052,  6230857,  8816279,  12308982, 15131108, 18175564, 21641460,
         24357568, 25401718, 24357570, 21641458, 18175566, 15131109, 12308983,
         8816278,  6230857,  4384051,  3082668,  2169302,  1210858,  677757,
         380079,   213393,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        527304,   937630,   1667008,  2962381,  5256587,  7401904,
         10390627, 14497757, 19991098, 26957670, 32224264, 37562304, 42318920,
         45670152, 46886204, 45670152, 42318924, 37562308, 32224264, 26957670,
         19991098, 14497757, 10390626, 7401904,  5256587,  2962381,  1667008,
         937630,   527304,   3},
        {5,        816257,   1451433,  2580496,  4585709,  8137095,  11458003,
         16084489, 22442248, 30945832, 41729952, 49882536, 58145720, 65508872,
         70696504, 72578936, 70696512, 65508868, 58145724, 49882536, 41729952,
         30945832, 22442248, 16084488, 11458004, 8137095,  4585709,  2580496,
         1451434,  816257,   5},
        {7,        1206538,  2145415,   3814322,   6778296,   12027725,
         16936476, 23775046, 33172672,  45742120,  61682500,  73733120,
         85947224, 96830952, 104498976, 107281456, 104498984, 96830952,
         85947232, 73733128, 61682504,  45742116,  33172670,  23775044,
         16936476, 12027724, 6778297,   3814322,   2145415,   1206538,
         7},
        {8,        1403765,   2496115,   4437830,   7886310,   13993836,
         19704996, 27661434,  38595240,  53219352,  71765424,  85785904,
         99996584, 112659424, 121580896, 124818216, 121580904, 112659416,
         99996592, 85785904,  71765432,  53219352,  38595240,  27661430,
         19704998, 13993836,  7886311,   4437830,   2496115,   1403764,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1219857,  2169099,   3856430,   6853125,   12160503,
         17123444, 24037508, 33538878,  46247084,  62363436,  74547088,
         86896032, 97899912, 105652584, 108465784, 105652592, 97899904,
         86896032, 74547096, 62363440,  46247084,  33538876,  24037506,
         17123446, 12160503, 6853125,   3856430,   2169099,   1219857,
         7},
        {1,        212938,   378637,   673176,   1196278,  2122731,  2989060,
         4195976,  5854530,  8072868,  10886130, 13012902, 15168527, 17089358,
         18442662, 18933732, 18442662, 17089358, 15168528, 13012903, 10886130,
         8072867,  5854530,  4195975,  2989060,  2122731,  1196278,  673176,
         378637,   212938,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        528371,   941010,   1677737,  2996520,  5365544,  7620743,
         10829829, 15375154, 21720308, 30256412, 37121464, 44492716, 52140904,
         58486168, 60914048, 58486172, 52140900, 44492720, 37121464, 30256412,
         21720308, 15375154, 10829827, 7620744,  5365544,  2996520,  1677737,
         941010,   528371,   3},
        {5,        817738,   1456128,  2595392,  4633066,  8288027,  11760734,
         16690856, 23650124, 33316570, 46226512, 56525852, 67496896, 77774760,
         85824632, 89194720, 85824640, 77774752, 67496904, 56525856, 46226512,
         33316570, 23650120, 16690854, 11760735, 8288027,  4633066,  2595392,
         1456128,  817738,   5},
        {7,        1208101,   2150365,   3830012,   6828082,   12185838,
         17252538, 24405052,  34418948,  48164280,  66215072,  80356216,
         95158664, 108775560, 118626184, 122255560, 118626184, 108775544,
         95158664, 80356216,  66215080,  48164276,  34418944,  24405050,
         17252540, 12185838,  6828083,   3830012,   2150365,   1208101,
         7},
        {8,         1404877,   2499634,   4448971,   7921597,   14105523,
         19927540,  28103010,  39463168,  54891176,  74856880,  90260672,
         106158016, 120574816, 130879072, 134648960, 130879072, 120574816,
         106158024, 90260672,  74856888,  54891176,  39463164,  28103008,
         19927542,  14105523,  7921598,   4448971,   2499634,   1404876,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1218314,  2164227,  3841070,  6804841,  12009704, 16826680,
         23458746, 32427858, 44173136, 58677072, 69367448, 79974728, 89242016,
         95670824, 97983664, 95670824, 89242016, 79974736, 69367448, 58677072,
         44173140, 32427856, 23458742, 16826682, 12009704, 6804841,  3841070,
         2164227,  1218314,  7},
        {1,        212485,   377211,   668688,   1182212,  2079037,  2903492,
         4030197,  5539070,  7490515,  9864627,  11591052, 13285722, 14752220,
         15762207, 16124145, 15762208, 14752220, 13285722, 11591053, 9864628,
         7490515,  5539070,  4030197,  2903492,  2079037,  1182212,  668688,
         377210,   212485,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        529280,   943904,    1686997,   3026404,   5463419,
         7822298,  11249275, 16258557,  23600720,  36288716,  49305868,
         66713524, 87729680, 107320208, 115788648, 107320216, 87729672,
         66713540, 49305872, 36288720,  23600720,  16258558,  11249274,
         7822299,  5463419,  3026404,   1686997,   943904,    529280,
         3},
        {5,        819001,    1460144,   2608223,   4674384,   8422779,
         12037082, 17262416,  24842774,  35819472,  52848540,  70312664,
         92562776, 117871664, 140063104, 149267152, 140063136, 117871648,
         92562792, 70312664,  52848544,  35819468,  24842772,  17262414,
         12037082, 8422779,   4674385,   2608223,   1460144,   819001,
         5},
        {7,         1209431,   2154588,   3843465,   6871159,   12324878,
         17534810,  24980280,  35593252,  50549888,  70956104,  87630984,
         108587520, 130892864, 148578016, 155457280, 148578016, 130892848,
         108587528, 87630992,  70956112,  50549884,  35593252,  24980278,
         17534812,  12324878,  6871160,   3843465,   2154588,   1209431,
         7},
        {8,         1405821,   2502628,   4458482,   7951885,   14202332,
         20122228,  28494402,  40246696,  56439064,  77816136,  94657800,
         112381552, 128775696, 140691712, 145094384, 140691728, 128775688,
         112381568, 94657808,  77816144,  56439060,  40246696,  28494400,
         20122230,  14202331,  7951885,   4458482,   2502629,   1405821,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1217010,  2160122,  3828190,  6764697,  11886164, 16586827,
         22999516, 31567738, 42617632, 56016164, 65730784, 75244880, 83461560,
         89112016, 91135304, 89112024, 83461552, 75244888, 65730788, 56016164,
         42617628, 31567738, 22999514, 16586829, 11886164, 6764698,  3828190,
         2160122,  1217010,  7},
        {1,        212104,   376014,   664952,   1170669,  2044035,  2836433,
         3904056,  5308151,  7084523,  9192281,  10692476, 12141331, 13377854,
         14220870, 14521357, 14220870, 13377854, 12141331, 10692476, 9192281,
         7084523,  5308151,  3904056,  2836433,  2044035,  1170669,  664952,
         376014,   212104,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,         529890,    945853,    1693270,   3046878,   5531883,
         7966241,   11558316,  16941404,  26405616,  44726228,  66299660,
         102135296, 161287136, 242754912, 290875520, 242754976, 161287104,
         102135328, 66299668,  44726228,  26405616,  16941404,  11558314,
         7966241,   5531883,   3046878,   1693270,   945853,    529890,
         3},
        {5,         819848,    1462845,   2616904,   4702616,   8516569,
         12232970,  17678754,  25748164,  38567944,  62864780,  89227176,
         128392144, 182850000, 242436080, 271403040, 242436160, 182849968,
         128392176, 89227168,  62864788,  38567940,  25748164,  17678752,
         12232972,  8516569,   4702617,   2616904,   1462845,   819848,
         5},
        {7,         1210322,   2157425,   3852534,   6900401,   12420479,
         17731328,  25388104,  36448364,  52356736,  75502992,  99354648,
         128997304, 161739680, 189630656, 200981856, 189630656, 161739664,
         128997328, 99354648,  75503000,  52356740,  36448368,  25388100,
         17731330,  12420478,  6900402,   3852534,   2157425,   1210322,
         7},
        {8,         1406453,   2504636,   4464871,   7972318,   14268137,
         20255542,  28765222,  40797016,  57549412,  80000928,  97981248,
         117206704, 135388800, 151411120, 157516432, 151411136, 135388784,
         117206704, 97981248,  80000928,  57549412,  40797012,  28765220,
         20255542,  14268138,  7972319,   4464871,   2504636,   1406453,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1216142,  2157392,  3819657,  6738267,  11805711, 16432165,
         22707286, 31029754, 41665420, 54427540, 63597164, 72515376, 80171616,
         85413624, 87286256, 85413624, 80171608, 72515384, 63597164, 54427544,
         41665420, 31029756, 22707284, 16432167, 11805712, 6738268,  3819657,
         2157392,  1216142,  7},
        {1,        211851,   375221,   662491,   1163142,  2021609,  2794131,
         3826087,  5169036,  6847367,  8812784,  10196808, 11523252, 12648227,
         13411804, 13683354, 13411805, 12648226, 11523253, 10196809, 8812784,
         6847366,  5169036,  3826086,  2794132,  2021609,  1163142,  662491,
         375221,   211851,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -858993460,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,         530105,    946540,    1695490,   3054166,   5556542,
         8018704,   11673036,  17202416,  27742908,  48702648,  75428704,
         125542128, 228590144, 435938784, 620187584, 435939008, 228590112,
         125542176, 75428712,  48702652,  27742906,  17202416,  11673035,
         8018704,   5556542,   3054167,   1695490,   946540,    530105,
         3},
        {5,         820146,    1463798,   2619972,   4712652,   8550255,
         12304061,  17832260,  26090394,  40209740,  67346928,  98535008,
         148589136, 226742368, 326144352, 380823904, 326144512, 226742336,
         148589184, 98535016,  67346936,  40209736,  26090392,  17832256,
         12304062,  8550254,   4712652,   2619972,   1463798,   820145,
         5},
        {7,         1210636,   2158423,   3855734,   6910758,   12454582,
         17801918,  25536124,  36763592,  53038744,  78536976,  104675848,
         138113008, 176331952, 210006528, 224018288, 210006544, 176331920,
         138113024, 104675856, 78536984,  53038744,  36763592,  25536118,
         17801920,  12454581,  6910759,   3855734,   2158423,   1210636,
         7},
        {8,         1406676,   2505341,   4467122,   7979530,   14291465,
         20302986,  28862170,  40995684,  57955156,  80812936,  99234096,
         119054544, 140506896, 157841056, 164487296, 157841072, 140506896,
         119054552, 99234096,  80812936,  57955148,  40995680,  28862168,
         20302988,  14291464,  7979531,   4467122,   2505342,   1406676,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1215837,  2156436,  3816673,  6729059,  11777845, 16378872,
         22607278, 30847268, 41345884, 53900940, 62895796, 71625096, 79105408,
         84220136, 86046016, 84220136, 79105408, 71625096, 62895796, 53900940,
         41345884, 30847270, 22607276, 16378873, 11777844, 6729060,  3816673,
         2156436,  1215837,  7},
        {1,        211762,   374943,   661633,   1160533,  2013907,  2779720,
         3799796,  5122719,  6769570,  8690265,  10038436, 11327602, 12418982,
         13158826, 13421767, 13158826, 12418981, 11327602, 10038436, 8690264,
         6769570,  5122719,  3799796,  2779720,  2013907,  1160533,  661633,
         374943,   211762,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,         529890,    945853,    1693270,   3046878,   5531883,
         7966241,   11558316,  16941404,  26405616,  44726228,  66299660,
         102135296, 161287136, 242754912, 290875520, 242754976, 161287104,
         102135328, 66299668,  44726228,  26405616,  16941404,  11558314,
         7966241,   5531883,   3046878,   1693270,   945853,    529890,
         3},
        {5,         819848,    1462845,   2616904,   4702616,   8516569,
         12232970,  17678754,  25748164,  38567944,  62864780,  89227176,
         128392144, 182850000, 242436080, 271403040, 242436160, 182849968,
         128392176, 89227168,  62864788,  38567940,  25748164,  17678752,
         12232972,  8516569,   4702617,   2616904,   1462845,   819848,
         5},
        {7,         1210322,   2157425,   3852534,   6900401,   12420479,
         17731328,  25388104,  36448364,  52356736,  75502992,  99354648,
         128997304, 161739680, 189630656, 200981856, 189630656, 161739664,
         128997328, 99354648,  75503000,  52356740,  36448368,  25388100,
         17731330,  12420478,  6900402,   3852534,   2157425,   1210322,
         7},
        {8,         1406453,   2504636,   4464871,   7972318,   14268137,
         20255542,  28765222,  40797016,  57549412,  80000928,  97981248,
         117206704, 135388800, 151411120, 157516432, 151411136, 135388784,
         117206704, 97981248,  80000928,  57549412,  40797012,  28765220,
         20255542,  14268138,  7972319,   4464871,   2504636,   1406453,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1216142,  2157392,  3819657,  6738267,  11805711, 16432165,
         22707286, 31029754, 41665420, 54427540, 63597164, 72515376, 80171616,
         85413624, 87286256, 85413624, 80171608, 72515384, 63597164, 54427544,
         41665420, 31029756, 22707284, 16432167, 11805712, 6738268,  3819657,
         2157392,  1216142,  7},
        {1,        211851,   375221,   662491,   1163142,  2021609,  2794131,
         3826087,  5169036,  6847367,  8812784,  10196808, 11523252, 12648227,
         13411804, 13683354, 13411805, 12648226, 11523253, 10196809, 8812784,
         6847366,  5169036,  3826086,  2794132,  2021609,  1163142,  662491,
         375221,   211851,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        529280,   943904,    1686997,   3026404,   5463419,
         7822298,  11249275, 16258558,  23600720,  36288720,  49305868,
         66713532, 87729688, 107320216, 115788672, 107320232, 87729680,
         66713548, 49305876, 36288720,  23600720,  16258558,  11249274,
         7822299,  5463419,  3026404,   1686997,   943904,    529280,
         3},
        {5,        819001,    1460144,   2608223,   4674384,   8422779,
         12037082, 17262416,  24842774,  35819472,  52848540,  70312672,
         92562784, 117871672, 140063120, 149267168, 140063152, 117871656,
         92562800, 70312664,  52848548,  35819468,  24842772,  17262414,
         12037084, 8422779,   4674385,   2608223,   1460144,   819001,
         5},
        {7,         1209431,   2154588,   3843465,   6871159,   12324878,
         17534810,  24980280,  35593252,  50549888,  70956104,  87630984,
         108587528, 130892872, 148578032, 155457296, 148578032, 130892856,
         108587536, 87630992,  70956112,  50549884,  35593252,  24980278,
         17534812,  12324878,  6871160,   3843465,   2154588,   1209431,
         7},
        {8,         1405821,   2502628,   4458482,   7951885,   14202332,
         20122228,  28494402,  40246696,  56439064,  77816144,  94657800,
         112381560, 128775712, 140691712, 145094384, 140691728, 128775696,
         112381568, 94657808,  77816144,  56439064,  40246696,  28494400,
         20122230,  14202331,  7951885,   4458482,   2502629,   1405821,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1217010,  2160122,  3828190,  6764697,  11886164, 16586827,
         22999514, 31567738, 42617632, 56016164, 65730788, 75244880, 83461560,
         89112016, 91135304, 89112024, 83461552, 75244880, 65730788, 56016160,
         42617628, 31567738, 22999514, 16586829, 11886164, 6764698,  3828190,
         2160122,  1217010,  7},
        {1,        212104,   376014,   664952,   1170669,  2044035,  2836433,
         3904056,  5308151,  7084523,  9192281,  10692476, 12141331, 13377854,
         14220870, 14521356, 14220870, 13377854, 12141332, 10692476, 9192281,
         7084522,  5308151,  3904056,  2836433,  2044035,  1170669,  664952,
         376014,   212104,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        528371,   941010,   1677737,  2996520,  5365544,  7620743,
         10829829, 15375155, 21720310, 30256414, 37121464, 44492724, 52140916,
         58486184, 60914064, 58486188, 52140912, 44492720, 37121464, 30256414,
         21720308, 15375156, 10829827, 7620744,  5365544,  2996520,  1677737,
         941010,   528371,   3},
        {5,        817738,   1456128,  2595392,  4633066,  8288027,  11760734,
         16690856, 23650122, 33316574, 46226512, 56525852, 67496904, 77774760,
         85824656, 89194744, 85824656, 77774760, 67496904, 56525852, 46226516,
         33316574, 23650120, 16690854, 11760735, 8288027,  4633067,  2595392,
         1456128,  817738,   5},
        {7,        1208101,   2150365,   3830012,   6828082,   12185838,
         17252538, 24405054,  34418948,  48164280,  66215076,  80356216,
         95158664, 108775560, 118626192, 122255568, 118626200, 108775552,
         95158672, 80356216,  66215080,  48164280,  34418948,  24405052,
         17252540, 12185838,  6828083,   3830012,   2150365,   1208101,
         7},
        {8,         1404877,   2499634,   4448971,   7921597,   14105523,
         19927540,  28103012,  39463168,  54891176,  74856888,  90260672,
         106158024, 120574824, 130879080, 134648944, 130879088, 120574824,
         106158032, 90260672,  74856888,  54891176,  39463168,  28103008,
         19927542,  14105523,  7921598,   4448971,   2499634,   1404876,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1218314,  2164227,  3841070,  6804840,  12009704, 16826680,
         23458746, 32427858, 44173136, 58677072, 69367448, 79974728, 89242016,
         95670816, 97983664, 95670824, 89242008, 79974736, 69367448, 58677076,
         44173140, 32427856, 23458742, 16826682, 12009704, 6804841,  3841070,
         2164227,  1218314,  7},
        {1,        212485,   377211,   668688,   1182212,  2079037,  2903492,
         4030197,  5539070,  7490515,  9864626,  11591052, 13285722, 14752218,
         15762206, 16124144, 15762206, 14752218, 13285723, 11591053, 9864626,
         7490515,  5539070,  4030197,  2903492,  2079037,  1182212,  668688,
         377210,   212485,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        527304,   937630,   1667008,  2962381,  5256587,  7401904,
         10390627, 14497757, 19991098, 26957670, 32224264, 37562304, 42318920,
         45670148, 46886200, 45670152, 42318920, 37562308, 32224264, 26957670,
         19991098, 14497757, 10390626, 7401904,  5256587,  2962381,  1667008,
         937630,   527304,   3},
        {5,        816257,   1451433,  2580496,  4585709,  8137095,  11458003,
         16084489, 22442248, 30945832, 41729952, 49882536, 58145720, 65508872,
         70696504, 72578928, 70696512, 65508868, 58145724, 49882536, 41729952,
         30945832, 22442248, 16084488, 11458004, 8137095,  4585709,  2580496,
         1451434,  816257,   5},
        {7,        1206538,  2145415,   3814322,   6778296,   12027725,
         16936476, 23775046, 33172672,  45742120,  61682500,  73733120,
         85947224, 96830952, 104498976, 107281456, 104498984, 96830952,
         85947232, 73733128, 61682504,  45742116,  33172670,  23775044,
         16936476, 12027724, 6778297,   3814322,   2145415,   1206538,
         7},
        {8,        1403765,   2496115,   4437830,   7886310,   13993836,
         19704996, 27661434,  38595240,  53219352,  71765424,  85785904,
         99996584, 112659424, 121580896, 124818216, 121580904, 112659416,
         99996592, 85785904,  71765432,  53219352,  38595240,  27661430,
         19704998, 13993836,  7886311,   4437830,   2496115,   1403764,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1219857,  2169099,   3856430,   6853125,   12160503,
         17123444, 24037508, 33538878,  46247084,  62363436,  74547088,
         86896032, 97899912, 105652584, 108465784, 105652592, 97899904,
         86896032, 74547096, 62363440,  46247084,  33538876,  24037506,
         17123446, 12160503, 6853125,   3856430,   2169099,   1219857,
         7},
        {1,        212938,   378637,   673176,   1196278,  2122731,  2989060,
         4195976,  5854530,  8072868,  10886130, 13012902, 15168527, 17089358,
         18442662, 18933732, 18442662, 17089358, 15168528, 13012903, 10886130,
         8072867,  5854530,  4195975,  2989060,  2122731,  1196278,  673176,
         378637,   212938,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        526244,   934286,   1656482,  2929383,  5154009,  7200895,
         10000863, 13755239, 18618438, 24545892, 28863346, 33106846, 36783140,
         39317168, 40225668, 39317172, 36783136, 33106846, 28863346, 24545892,
         18618438, 13755238, 10000861, 7200896,  5154009,  2929384,  1656483,
         934287,   526244,   3},
        {5,        814783,   1446784,  2565855,  4539774,  7994119,  11177507,
         15539743, 21402348, 29018418, 38333064, 45138564, 51843736, 57665092,
         61684144, 63126296, 61684144, 57665088, 51843736, 45138564, 38333064,
         29018416, 21402346, 15539743, 11177508, 7994120,  4539775,  2565855,
         1446784,  814783,   5},
        {7,        1204981,  2140499,  3798824,  6729584,  11875611, 16637170,
         23191438, 32052656, 43652104, 57969124, 68517096, 78979352, 88116992,
         94454288, 96733928, 94454296, 88116984, 78979352, 68517096, 57969132,
         43652104, 32052654, 23191436, 16637170, 11875611, 6729584,  3798824,
         2140499,  1204981,  7},
        {8,        1402655,   2492611,   4426772,   7851491,   13884761,
         19489746, 27240036,  37782168,  51691532,  69027848,  81916832,
         94796824, 106122744, 114019024, 116867616, 114019032, 106122736,
         94796832, 81916832,  69027848,  51691532,  37782168,  27240034,
         19489748, 13884760,  7851492,   4426772,   2492611,   1402655,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,        1221406,   2174004,   3871976,   6902451,   12317130,
         17436482, 24661340,  34772524,  48643564,  66845112,  81092456,
         95994392, 109691792, 119593848, 123240712, 119593864, 109691784,
         95994392, 81092456,  66845116,  48643564,  34772520,  24661336,
         17436482, 12317130,  6902452,   3871976,   2174004,   1221406,
         7},
        {1,        213393,   380079,   677757,   1210858,  2169302,  3082668,
         4384052,  6230858,  8816279,  12308984, 15131109, 18175568, 21641464,
         24357576, 25401724, 24357578, 21641462, 18175570, 15131110, 12308985,
         8816279,  6230857,  4384051,  3082668,  2169302,  1210858,  677757,
         380079,   213393,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        525351,   931480,   1647714,  2902257,  5071597,  7042735,
         9702682,  13207803, 17652582, 22940042, 26711398, 30359378, 33476790,
         35604104, 36362736, 35604104, 33476788, 30359380, 26711396, 22940042,
         17652582, 13207803, 9702681,  7042735,  5071597,  2902257,  1647714,
         931480,   525351,   3},
        {5,        813540,   1442877,  2553636,  4501896,  7878638,  10955188,
         15118865, 20625528, 27638920, 36022472, 42026544, 47851780, 52842400,
         56254208, 57472080, 56254208, 52842396, 47851784, 42026548, 36022476,
         27638918, 20625528, 15118864, 10955189, 7878638,  4501896,  2553636,
         1442877,  813540,   5},
        {7,        1203665,  2136357,  3785832,  6689100,  11751078, 16395488,
         22728960, 31187070, 42088120, 55296528, 64867172, 74235600, 82322976,
         87882752, 89873216, 87882752, 82322968, 74235600, 64867176, 55296532,
         42088120, 31187070, 22728958, 16395489, 11751078, 6689101,  3785832,
         2136357,  1203665,  7},
        {8,        1401717,   2489652,   4417463,   7822332,   13794261,
         19312684, 26897488,  37131704,  50494456,  66937128,  79016952,
         90971256, 101390632, 108605536, 111198640, 108605544, 101390624,
         90971264, 79016952,  66937132,  50494456,  37131704,  26897486,
         19312686, 13794262,  7822333,   4417463,   2489652,   1401717,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,         1222724,   2178188,   3885304,   6945113,   12454759,
         17715756,  25230046,  35932312,  50996136,  71510480,  88238112,
         108673688, 130724608, 148143040, 154903072, 148143056, 130724600,
         108673704, 88238112,  71510496,  50996136,  35932312,  25230042,
         17715758,  12454758,  6945114,   3885304,   2178189,   1222724,
         7},
        {1,        213781,   381315,   681714,   1223645,  2211279,  3169313,
         4564991,  6613954,  9638446,  15182688, 20899232, 28782230, 38682300,
         48311484, 52599940, 48311496, 38682296, 28782232, 20899232, 15182688,
         9638446,  6613954,  4564991,  3169313,  2211279,  1223645,  681714,
         381315,   213781,   1},
    },
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {3,        524756,   929618,   1641931,  2884546,  5018684,  6942684,
         9517694,  12876462, 17085148, 22027530, 25515680, 28863994, 31707368,
         33639036, 34326304, 33639036, 31707366, 28863994, 25515680, 22027532,
         17085148, 12876462, 9517694,  6942685,  5018684,  2884546,  1641932,
         929618,   524756,   3},
        {5,        812713,   1440285,  2545568,  4477108,  7804208,  10813826,
         14855985, 20151268, 26819762, 34692788, 40273396, 45646932, 50221664,
         53335084, 54443824, 53335084, 50221660, 45646932, 40273400, 34692788,
         26819762, 20151268, 14855983, 10813826, 7804208,  4477108,  2545568,
         1440285,  812713,   5},
        {7,        1202789,  2133603,  3777225,  6662453,  11670018, 16239749,
         22434930, 30646316, 41132172, 53703904, 62730216, 71504264, 79033256,
         84186408, 86026976, 84186408, 79033248, 71504272, 62730216, 53703904,
         41132176, 30646314, 22434930, 16239752, 11670018, 6662454,  3777225,
         2133603,  1202789,  7},
        {8,        1401091,  2487681,   4411274,   7803027,   13734770,
         19197032, 26675680, 36715348,  49739444,  65641580,  77242592,
         88658984, 98560160, 105390504, 107840400, 105390512, 98560152,
         88658992, 77242584, 65641576,  49739444,  36715348,  26675674,
         19197034, 13734769, 7803028,   4411274,   2487680,   1401091,
         8},
        {8,         1509476,   2684086,   4772024,   8480193,   15047650,
         21188892,  29744494,  41501680,  57227068,  77169768,  92246064,
         107526888, 121143312, 130736624, 134217728, 130736624, 121143304,
         107526896, 92246064,  77169768,  57227064,  41501676,  29744492,
         21188894,  15047650,  8480194,   4772024,   2684086,   1509476,
         8},
        {7,         1223607,   2180998,   3894286,   6974063,   12549334,
         17910016,  25632730,  36775224,  52772652,  75633064,  99236928,
         128381352, 160330848, 187347776, 198291392, 187347792, 160330832,
         128381360, 99236928,  75633072,  52772652,  36775220,  25632728,
         17910018,  12549334,  6974064,   3894286,   2180998,   1223607,
         7},
        {1,        214041,   382148,    684396,    1232418,   2240724,
         3231452,  4699171,  6913169,   11028142,  19133980,  29199468,
         47298756, 81631544, 140893488, 184843632, 140893568, 81631528,
         47298760, 29199470, 19133982,  11028142,  6913169,   4699170,
         3231452,  2240724,  1232418,   684397,    382148,    214041,
         1},
    },
};

const WORD32 ixheaacd_weight_Q28[16][8][31] = {
    {
        {134217744, 134970352, 135553120, 136582896, 138392880, 141541712,
         144424112, 148346336, 153572976, 160297488, 168439744, 174342928,
         180128864, 185132320, 188577760, 189812528, 188577760, 185132320,
         180128880, 174342928, 168439744, 160297488, 153572976, 148346336,
         144424112, 141541712, 138392880, 136582896, 135553136, 134970352,
         134217744},
        {134217728, 134923056, 135469392, 136435104, 138133568, 141091536,
         143802496, 147496192, 152426160, 158780944, 166491504, 172091408,
         177587152, 182344784, 185623536, 186799072, 185623552, 182344800,
         177587152, 172091392, 166491520, 158780944, 152426160, 147496192,
         143802480, 141091536, 138133568, 136435104, 135469392, 134923056,
         134217744},
        {134217728, 134851104, 135341920, 136210016, 137738240, 140404048,
         142851840, 146193664, 150665168, 156446176, 163483824, 168609296,
         173650000, 178021440, 181037920, 182120160, 181037920, 178021424,
         173650000, 168609296, 163483824, 156446176, 150665168, 146193680,
         142851840, 140404048, 137738240, 136210000, 135341920, 134851104,
         134217744},
        {134217728, 134670496, 135021776, 135643952, 136741952, 138665264,
         140439920, 142875520, 146156352, 150432704, 155687056, 159544432,
         163361216, 166688640, 168993616, 169822288, 168993632, 166688656,
         163361216, 159544432, 155687056, 150432704, 146156352, 142875520,
         140439920, 138665264, 136741952, 135643952, 135021776, 134670496,
         134217744},
        {134217728, 134494912, 134710224, 135092080, 135767616, 136955856,
         138057744, 139578304, 141641264, 144354416, 147723552, 150220400,
         152709488, 154893744, 156414336, 156962448, 156414336, 154893744,
         152709472, 150220400, 147723552, 144354416, 141641264, 139578320,
         138057728, 136955856, 135767600, 135092080, 134710224, 134494912,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 133772440, 133424920, 132804936, 131696632, 129710520,
         127825384, 125151792, 121381688, 116147984, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 116148000, 121381688, 125151792,
         127825384, 129710520, 131696632, 132804936, 133424920, 133772456,
         134217728},
        {134217728, 133468448, 132882456, 131834416, 129952248, 126550128,
         123283864, 118583656, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 118583656,
         123283864, 126550128, 129952248, 131834416, 132882456, 133468448,
         134217728},
    },
    {
        {134217728, 134913216, 135451936, 136404304, 138079504, 140997600,
         143672688, 147318512, 152186224, 158463280, 166082896, 171618768,
         177053216, 181758880, 185002352, 186165328, 185002352, 181758880,
         177053216, 171618768, 166082896, 158463296, 152186224, 147318512,
         143672688, 140997600, 138079504, 136404304, 135451936, 134913216,
         134217744},
        {134217728, 134869504, 135374512, 136267584, 137839408, 140580112,
         143095472, 146527744, 151117280, 157046336, 164257936, 169506256,
         174664912, 179136560, 182221168, 183327616, 182221168, 179136560,
         174664912, 169506256, 164257936, 157046336, 151117280, 146527744,
         143095472, 140580112, 137839408, 136267584, 135374512, 134869504,
         134217744},
        {134217728, 134802992, 135256672, 136059376, 137473424, 139942768,
         142213056, 145316768, 149476832, 154866368, 161442736, 166241760,
         170968496, 175072880, 177907744, 178925312, 177907744, 175072880,
         170968496, 166241760, 161442736, 154866368, 149476832, 145316768,
         142213056, 139942768, 137473424, 136059376, 135256672, 134802992,
         134217744},
        {134217728, 134636080, 134960736, 135535920, 136551440, 138331744,
         139976000, 142235024, 145282080, 149260352, 154157968, 157759584,
         161328032, 164442560, 166601920, 167378576, 166601920, 164442544,
         161328032, 157759584, 154157968, 149260368, 145282080, 142235024,
         139976016, 138331728, 136551456, 135535920, 134960736, 134636096,
         134217744},
        {134217728, 134473824, 134672800, 135025728, 135650240, 136749360,
         137769200, 139177520, 141089920, 143607984, 146739200, 149062688,
         151381312, 153417872, 154836624, 155348256, 154836640, 153417872,
         151381328, 149062688, 146739200, 143607984, 141089920, 139177520,
         137769200, 136749360, 135650256, 135025712, 134672784, 134473824,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 133806400, 133485440, 132913000, 131890240, 130059096,
         128323168, 125864856, 122406120, 117621128, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 117621128, 122406120, 125864856,
         128323168, 130059096, 131890240, 132913000, 133485440, 133806400,
         134217728},
        {134217728, 133525632, 132984568, 132017344, 130281848, 127150040,
         124150024, 119845456, 113664464, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 113664464, 119845456,
         124150032, 127150040, 130281848, 132017344, 132984568, 133525632,
         134217728},
    },
    {
        {134217728, 134750352, 135163360, 135894416, 137183168, 139436416,
         141510976, 144351440, 148166016, 153119584, 159180064, 163612736,
         167986224, 171789568, 174419392, 175363920, 174419392, 171789568,
         167986224, 163612736, 159180064, 153119584, 148166016, 144351440,
         141510976, 139436432, 137183168, 135894416, 135163360, 134750352,
         134217744},
        {134217728, 134716864, 135103984, 135789392, 136998240, 139113424,
         141062640, 143734096, 147326256, 151998160, 157724080, 161918432,
         166061616, 169668304, 172163984, 173060688, 172163984, 169668288,
         166061616, 161918432, 157724080, 151998160, 147326256, 143734096,
         141062640, 139113424, 136998240, 135789392, 135103984, 134716864,
         134217744},
        {134217728, 134665904, 135013632, 135629504, 136716496, 138620704,
         140377984, 142790048, 146039760, 150276480, 155483472, 159306944,
         163090832, 166390096, 168675808, 169497600, 168675808, 166390096,
         163090848, 159306944, 155483488, 150276480, 146039760, 142790048,
         140377968, 138620720, 136716496, 135629504, 135013616, 134665904,
         134217744},
        {134217728, 134538048, 134786784, 135227776, 136007472, 137377520,
         138646400, 140395008, 142763040, 145870208, 149717968, 152562416,
         155392320, 157871248, 159594640, 160215424, 159594640, 157871248,
         155392320, 152562416, 149717968, 145870208, 142763040, 140395008,
         138646400, 137377520, 136007472, 135227776, 134786784, 134538048,
         134217728},
        {134217728, 134413792, 134566144, 134836576, 135315504, 136159584,
         136944176, 138029792, 139507872, 141460704, 143899120, 145715424,
         147533584, 149135008, 150253024, 150656672, 150253040, 149135008,
         147533584, 145715424, 143899120, 141460688, 139507872, 138029792,
         136944176, 136159584, 135315504, 134836576, 134566160, 134413792,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 133903024, 133657608, 133220288, 132440008, 131046696,
         129730264, 127873712, 125277552, 121718592, 117049664, 113392512,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 113392512, 117049680, 121718592, 125277552, 127873712,
         129730280, 131046696, 132440024, 133220288, 133657624, 133903024,
         134217728},
        {134217728, 133688336, 133274944, 132536912, 131215936, 128843168,
         126584160, 123368104, 118806640, 112416656, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 112416656, 118806632, 123368104,
         126584160, 128843168, 131215936, 132536912, 133274944, 133688336,
         134217728},
    },
    {
        {134217728, 134506240, 134730320, 135127728, 135830656, 137066736,
         138212592, 139793296, 141936768, 144754096, 148250000, 150839072,
         153418688, 155681312, 157255888, 157823344, 157255888, 155681312,
         153418688, 150839072, 148249984, 144754096, 141936768, 139793296,
         138212592, 137066736, 135830656, 135127728, 134730320, 134506240,
         134217728},
        {134217728, 134488080, 134698096, 135070576, 135729600, 136888992,
         137964320, 139448608, 141462896, 144113040, 147405392, 149846352,
         152280496, 154417184, 155904992, 156441360, 155904992, 154417184,
         152280496, 149846352, 147405392, 144113040, 141462896, 139448592,
         137964336, 136888992, 135729600, 135070576, 134698096, 134488080,
         134217728},
        {134217728, 134460464, 134649040, 134983616, 135575776, 136618224,
         137585872, 138922720, 140739104, 143132528, 146111440, 148323744,
         150532864, 152474416, 153827600, 154315696, 153827600, 152474432,
         150532880, 148323744, 146111440, 143132528, 140739104, 138922720,
         137585872, 136618224, 135575760, 134983616, 134649040, 134460464,
         134217728},
        {134217728, 134391168, 134526000, 134765312, 135189280, 135936912,
         136632336, 137595280, 138907696, 140643920, 142815424, 144435360,
         146058944, 147490640, 148491024, 148852368, 148491024, 147490640,
         146058944, 144435360, 142815424, 140643920, 138907696, 137595280,
         136632320, 135936912, 135189264, 134765312, 134526000, 134391168,
         134217728},
        {134217728, 134323872, 134406416, 134552992, 134812944, 135272112,
         135700080, 136294032, 137106080, 138184736, 139540672, 140557056,
         141579776, 142484928, 143119200, 143348672, 143119200, 142484928,
         141579776, 140557056, 139540672, 138184736, 137106080, 136294032,
         135700080, 135272112, 134812944, 134552992, 134406416, 134323872,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134047496, 133914896, 133678832, 133258584, 132511008,
         131808096, 130822576, 129456008, 127605336, 125219016, 123384368,
         121496560, 119789320, 118571736, 118126816, 118571736, 119789320,
         121496560, 123384368, 125219016, 127605336, 129456008, 130822576,
         131808096, 132511008, 133258584, 133678848, 133914896, 134047496,
         134217728},
        {134217728, 133931488, 133708328, 133310696, 132601600, 131336352,
         130142072, 128459768, 126111336, 122900144, 118702864, 115428560,
         112012208, 111848104, 111848104, 111848104, 111848104, 111848104,
         112012208, 115428560, 118702864, 122900128, 126111336, 128459768,
         130142072, 131336352, 132601616, 133310696, 133708328, 133931488,
         134217728},
    },
    {
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217744, 134217728, 134217728, 134217744,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
    },
    {
        {134217728, 133928592, 133703168, 133301512, 132585192, 131306928,
         130100248, 128400288, 126026792, 122780504, 118535808, 115223152,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 115223152, 118535792, 122780504, 126026792, 128400288,
         130100248, 131306928, 132585192, 133301512, 133703168, 133928592,
         134217728},
        {134217728, 133946816, 133735640, 133359432, 132688632, 131492208,
         130363488, 128774544, 126558464, 123532296, 119584472, 116511248,
         113311296, 111848104, 111848104, 111848104, 111848104, 111848104,
         113311288, 116511248, 119584472, 123532296, 126558464, 128774544,
         130363488, 131492208, 132688632, 133359432, 133735640, 133946816,
         134217728},
        {134217728, 133974552, 133785016, 133447456, 132845800, 131773512,
         130762848, 129341696, 127362872, 124667064, 121162064, 118443520,
         115622880, 113050208, 111848104, 111848104, 111848104, 113050208,
         115622880, 118443520, 121162064, 124667064, 127362856, 129341696,
         130762848, 131773512, 132845800, 133447456, 133785016, 133974552,
         134217728},
        {134217728, 134044048, 133908760, 133667912, 133239096, 132476240,
         131758880, 130752952, 129357832, 127467976, 125030208, 123155288,
         121225344, 119479336, 118233720, 117778472, 118233720, 119479336,
         121225328, 123155288, 125030224, 127467976, 129357832, 130752960,
         131758880, 132476240, 133239096, 133667912, 133908760, 134044048,
         134217728},
        {134217728, 134111512, 134028776, 133881624, 133619856, 133154992,
         132718832, 132108784, 131265840, 130129840, 128674776, 127563760,
         126427688, 125406704, 124682360, 124418480, 124682360, 125406704,
         126427688, 127563760, 128674776, 130129840, 131265840, 132108784,
         132718832, 133154992, 133619856, 133881608, 134028776, 134111512,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134387728, 134519888, 134754464, 135170064, 135903024,
         136584848, 137529104, 138816208, 140519296, 142649904, 144239712,
         145833392, 147238976, 148221248, 148576080, 148221248, 147238976,
         145833392, 144239712, 142649904, 140519312, 138816208, 137529088,
         136584848, 135903024, 135170064, 134754464, 134519888, 134387728,
         134217728},
        {134217728, 134503360, 134725216, 135118656, 135814608, 137038528,
         138173216, 139738624, 141861648, 144652528, 148116256, 150681920,
         153238576, 155481344, 157042224, 157604800, 157042224, 155481344,
         153238576, 150681920, 148116256, 144652528, 141861648, 139738624,
         138173216, 137038528, 135814608, 135118656, 134725200, 134503360,
         134217728},
    },
    {
        {134217728, 133682984, 133265384, 132519816, 131185264, 128787744,
         126504696, 123253640, 118640752, 112174832, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 112174832, 118640752, 123253640,
         126504696, 128787744, 131185264, 132519816, 133265384, 133682984,
         134217728},
        {134217728, 133716728, 133325584, 132627440, 131378384, 129136568,
         127004448, 123973008, 119681960, 113689744, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 113689744, 119681960, 123973008,
         127004448, 129136568, 131378376, 132627440, 133325584, 133716744,
         134217728},
        {134217728, 133768056, 133417096, 132790928, 131671560, 129665320,
         127760792, 125059176, 121248440, 115955928, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 115955928, 121248440, 125059176,
         127760792, 129665320, 131671560, 132790928, 133417096, 133768056,
         134217728},
        {134217728, 133896640, 133646248, 133200016, 132403792, 130981736,
         129637848, 127742080, 125090024, 121452368, 116676152, 112931424,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 112931424, 116676152, 121452368, 125090024, 127742080,
         129637848, 130981736, 132403792, 133200016, 133646248, 133896640,
         134217728},
        {134217728, 134021376, 133868400, 133596016, 133110896, 132247376,
         131434736, 130294184, 128710328, 126560936, 123781432, 121638024,
         119426296, 117420384, 115986304, 115461520, 115986304, 117420384,
         119426296, 121638024, 123781432, 126560936, 128710328, 130294184,
         131434736, 132247360, 133110896, 133596016, 133868400, 134021376,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134531696, 134775520, 135207824, 135972192, 137315552,
         138559920, 140275120, 142598512, 145648128, 149426144, 152220016,
         155000416, 157436608, 159130592, 159740864, 159130592, 157436608,
         155000416, 152220016, 149426144, 145648128, 142598512, 140275120,
         138559920, 137315536, 135972192, 135207824, 134775504, 134531696,
         134217728},
        {134217728, 134745024, 135153936, 135877760, 137153824, 139385200,
         141439904, 144253616, 148033040, 152942128, 158949856, 163344976,
         167682224, 171454608, 174063344, 175000352, 174063344, 171454608,
         167682208, 163344976, 158949856, 152942128, 148033040, 144253632,
         141439904, 139385200, 137153824, 135877760, 135153936, 134745040,
         134217744},
    },
    {
        {134217728, 133518624, 132972056, 131994936, 130241488, 127076656,
         124044168, 119691480, 113437856, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 113437856, 119691480,
         124044168, 127076656, 130241488, 131994936, 132972056, 133518624,
         134217728},
        {134217728, 133562760, 133050888, 132136072, 130495576, 127538336,
         124709592, 120658264, 114858008, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 114858008, 120658264,
         124709592, 127538336, 130495560, 132136072, 133050888, 133562760,
         134217728},
        {134217728, 133629896, 133170680, 132350456, 130881064, 128237360,
         125714928, 122114032, 116984936, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 116984936, 122114032,
         125714928, 128237360, 130881064, 132350456, 133170680, 133629896,
         134217728},
        {134217728, 133798056, 133470584, 132886472, 131842704, 129973568,
         128201072, 125690088, 122155288, 117261000, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 117261000, 122155288, 125690088,
         128201072, 129973568, 131842704, 132886456, 133470584, 133798056,
         134217728},
        {134217728, 133961128, 133761128, 133404840, 132769744, 131637408,
         130569696, 129067480, 126974144, 124119080, 120401016, 117512176,
         114509792, 111848104, 111848104, 111848104, 111848104, 111848104,
         114509792, 117512160, 120401008, 124119080, 126974144, 129067480,
         130569696, 131637424, 132769744, 133404840, 133761128, 133961128,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134627808, 134946048, 135509888, 136505536, 138251328,
         139864096, 142080384, 145070800, 148976736, 153787568, 157326848,
         160834672, 163897216, 166020960, 166784896, 166020960, 163897200,
         160834688, 157326848, 153787568, 148976736, 145070800, 142080384,
         139864096, 138251328, 136505536, 135509888, 134946048, 134627808,
         134217744},
        {134217728, 134906272, 135439648, 136382608, 138041424, 140931408,
         143581232, 147193280, 152017056, 158239216, 165794560, 171285200,
         176676288, 181345168, 184563696, 185717792, 184563696, 181345168,
         176676272, 171285200, 165794560, 158239216, 152017056, 147193280,
         143581216, 140931408, 138041424, 136382608, 135439648, 134906272,
         134217744},
    },
    {
        {134217728, 133460856, 132868912, 131810120, 129908448, 126470312,
         123168472, 118415200, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 0,         111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 118415200,
         123168472, 126470312, 129908448, 131810120, 132868912, 133460856,
         134217728},
        {134217728, 133508664, 132954296, 131963096, 130184144, 126972336,
         123893664, 119472480, 113115264, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 113115272, 119472480,
         123893664, 126972336, 130184144, 131963096, 132954280, 133508664,
         134217728},
        {134217728, 133581352, 133084040, 132195432, 130602352, 127732136,
         124988584, 121062824, 115450448, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 115450448, 121062824,
         124988584, 127732136, 130602352, 132195432, 133084040, 133581352,
         134217728},
        {134217728, 133763416, 133408824, 132776176, 131645104, 129617688,
         127692704, 124961536, 121107872, 115753192, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 115753192, 121107872, 124961520,
         127692704, 129617688, 131645120, 132776176, 133408840, 133763416,
         134217728},
        {134217728, 133939968, 133723424, 133337648, 132649736, 131422568,
         130264576, 128633952, 126358808, 123250144, 119191232, 116028568,
         112732488, 111848104, 111848104, 111848104, 111848104, 111848104,
         112732488, 116028552, 119191232, 123250144, 126358808, 128633952,
         130264576, 131422568, 132649736, 133337648, 133723424, 133939968,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134661536, 135005888, 135615808, 136692320, 138578416,
         140319184, 142708880, 145929024, 150128080, 155290032, 159081232,
         162833824, 166106272, 168373648, 169188880, 168373648, 166106272,
         162833824, 159081248, 155290032, 150128080, 145929040, 142708880,
         140319168, 138578416, 136692320, 135615808, 135005872, 134661536,
         134217744},
        {134217744, 134962848, 135539840, 136559456, 138351760, 141470368,
         144325616, 148211728, 153391520, 160057728, 168132016, 173987488,
         179727840, 184692672, 188111936, 189337408, 188111936, 184692672,
         179727824, 173987488, 168132016, 160057728, 153391504, 148211728,
         144325616, 141470352, 138351744, 136559456, 135539840, 134962848,
         134217744},
    },
    {
        {134217728, 133518624, 132972056, 131994936, 130241488, 127076656,
         124044168, 119691480, 113437856, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 113437856, 119691480,
         124044168, 127076656, 130241488, 131994936, 132972056, 133518624,
         134217728},
        {134217728, 133562760, 133050888, 132136072, 130495576, 127538336,
         124709592, 120658264, 114858008, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 114858008, 120658264,
         124709592, 127538336, 130495560, 132136072, 133050888, 133562760,
         134217728},
        {134217728, 133629896, 133170680, 132350456, 130881064, 128237360,
         125714928, 122114032, 116984936, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 116984936, 122114032,
         125714928, 128237360, 130881064, 132350456, 133170680, 133629896,
         134217728},
        {134217728, 133798056, 133470584, 132886472, 131842704, 129973568,
         128201072, 125690088, 122155288, 117261000, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 117261000, 122155288, 125690088,
         128201072, 129973568, 131842704, 132886456, 133470584, 133798056,
         134217728},
        {134217728, 133961128, 133761128, 133404840, 132769744, 131637408,
         130569696, 129067480, 126974144, 124119080, 120401016, 117512176,
         114509792, 111848104, 111848104, 111848104, 111848104, 111848104,
         114509792, 117512160, 120401008, 124119080, 126974144, 129067480,
         130569696, 131637424, 132769744, 133404840, 133761128, 133961128,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134627808, 134946048, 135509888, 136505536, 138251328,
         139864096, 142080384, 145070800, 148976736, 153787568, 157326848,
         160834672, 163897216, 166020960, 166784896, 166020960, 163897200,
         160834688, 157326848, 153787568, 148976736, 145070800, 142080384,
         139864096, 138251328, 136505536, 135509888, 134946048, 134627808,
         134217744},
        {134217728, 134906272, 135439648, 136382608, 138041424, 140931408,
         143581232, 147193280, 152017056, 158239216, 165794560, 171285200,
         176676288, 181345168, 184563696, 185717792, 184563696, 181345168,
         176676272, 171285200, 165794560, 158239216, 152017056, 147193280,
         143581216, 140931408, 138041424, 136382608, 135439648, 134906272,
         134217744},
    },
    {
        {134217728, 133682984, 133265384, 132519816, 131185264, 128787744,
         126504696, 123253640, 118640752, 112174824, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 112174824, 118640752, 123253640,
         126504696, 128787744, 131185264, 132519816, 133265384, 133682984,
         134217728},
        {134217728, 133716728, 133325584, 132627440, 131378384, 129136568,
         127004448, 123973008, 119681960, 113689736, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 113689744, 119681960, 123973008,
         127004448, 129136568, 131378376, 132627440, 133325584, 133716744,
         134217728},
        {134217728, 133768056, 133417096, 132790928, 131671560, 129665320,
         127760792, 125059176, 121248440, 115955928, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 115955928, 121248440, 125059176,
         127760792, 129665320, 131671560, 132790928, 133417096, 133768056,
         134217728},
        {134217728, 133896640, 133646248, 133200016, 132403792, 130981736,
         129637848, 127742080, 125090024, 121452368, 116676144, 112931424,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 112931424, 116676152, 121452360, 125090024, 127742080,
         129637848, 130981736, 132403792, 133200016, 133646248, 133896640,
         134217728},
        {134217728, 134021376, 133868400, 133596016, 133110896, 132247376,
         131434736, 130294184, 128710328, 126560928, 123781432, 121638024,
         119426296, 117420384, 115986304, 115461520, 115986304, 117420384,
         119426296, 121638024, 123781432, 126560928, 128710328, 130294184,
         131434736, 132247360, 133110896, 133596016, 133868400, 134021376,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134531696, 134775520, 135207824, 135972192, 137315552,
         138559920, 140275120, 142598512, 145648144, 149426144, 152220032,
         155000416, 157436608, 159130592, 159740864, 159130592, 157436608,
         155000416, 152220032, 149426144, 145648128, 142598512, 140275120,
         138559920, 137315536, 135972192, 135207824, 134775504, 134531696,
         134217728},
        {134217728, 134745024, 135153936, 135877760, 137153824, 139385200,
         141439904, 144253632, 148033040, 152942128, 158949856, 163344976,
         167682224, 171454624, 174063344, 175000352, 174063344, 171454624,
         167682224, 163344976, 158949856, 152942128, 148033040, 144253632,
         141439904, 139385200, 137153824, 135877760, 135153936, 134745040,
         134217744},
    },
    {
        {134217728, 133928592, 133703168, 133301512, 132585192, 131306928,
         130100248, 128400288, 126026792, 122780488, 118535792, 115223136,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 115223136, 118535792, 122780488, 126026792, 128400288,
         130100248, 131306912, 132585176, 133301512, 133703168, 133928592,
         134217728},
        {134217728, 133946816, 133735640, 133359432, 132688632, 131492208,
         130363488, 128774544, 126558464, 123532296, 119584464, 116511232,
         113311288, 111848104, 111848104, 111848104, 111848104, 111848104,
         113311272, 116511232, 119584464, 123532296, 126558464, 128774544,
         130363488, 131492208, 132688632, 133359416, 133735640, 133946816,
         134217728},
        {134217728, 133974552, 133785016, 133447456, 132845800, 131773512,
         130762848, 129341696, 127362856, 124667064, 121162048, 118443504,
         115622880, 113050192, 111848104, 111848104, 111848104, 113050192,
         115622872, 118443504, 121162064, 124667064, 127362856, 129341696,
         130762848, 131773512, 132845800, 133447456, 133785016, 133974552,
         134217728},
        {134217728, 134044048, 133908744, 133667912, 133239096, 132476240,
         131758880, 130752952, 129357832, 127467976, 125030208, 123155288,
         121225328, 119479320, 118233720, 117778464, 118233720, 119479320,
         121225328, 123155288, 125030208, 127467976, 129357832, 130752952,
         131758880, 132476240, 133239096, 133667912, 133908760, 134044048,
         134217728},
        {134217728, 134111512, 134028776, 133881624, 133619856, 133154992,
         132718832, 132108784, 131265840, 130129840, 128674776, 127563760,
         126427688, 125406704, 124682360, 124418464, 124682360, 125406704,
         126427688, 127563760, 128674776, 130129840, 131265840, 132108784,
         132718832, 133154992, 133619856, 133881608, 134028776, 134111512,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134387728, 134519888, 134754464, 135170064, 135903024,
         136584848, 137529104, 138816208, 140519312, 142649904, 144239712,
         145833408, 147238976, 148221248, 148576080, 148221264, 147238976,
         145833408, 144239712, 142649920, 140519312, 138816208, 137529088,
         136584848, 135903024, 135170064, 134754464, 134519888, 134387744,
         134217728},
        {134217728, 134503360, 134725216, 135118656, 135814608, 137038528,
         138173216, 139738624, 141861664, 144652528, 148116256, 150681936,
         153238592, 155481344, 157042224, 157604816, 157042224, 155481344,
         153238592, 150681936, 148116256, 144652528, 141861648, 139738624,
         138173216, 137038544, 135814624, 135118656, 134725200, 134503360,
         134217728},
    },
    {
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
    },
    {
        {134217728, 134506240, 134730320, 135127728, 135830656, 137066736,
         138212592, 139793296, 141936768, 144754096, 148250000, 150839072,
         153418688, 155681312, 157255888, 157823360, 157255888, 155681312,
         153418688, 150839072, 148250000, 144754096, 141936768, 139793296,
         138212592, 137066736, 135830656, 135127728, 134730320, 134506240,
         134217728},
        {134217728, 134488080, 134698096, 135070576, 135729600, 136888992,
         137964336, 139448608, 141462896, 144113040, 147405392, 149846352,
         152280496, 154417184, 155904992, 156441360, 155904992, 154417184,
         152280496, 149846352, 147405392, 144113056, 141462896, 139448592,
         137964336, 136888992, 135729600, 135070592, 134698096, 134488080,
         134217728},
        {134217728, 134460464, 134649040, 134983616, 135575776, 136618224,
         137585888, 138922720, 140739120, 143132528, 146111456, 148323744,
         150532880, 152474432, 153827616, 154315712, 153827616, 152474432,
         150532880, 148323744, 146111456, 143132528, 140739104, 138922720,
         137585872, 136618224, 135575776, 134983616, 134649040, 134460464,
         134217728},
        {134217728, 134391168, 134526000, 134765312, 135189280, 135936912,
         136632336, 137595280, 138907696, 140643920, 142815424, 144435360,
         146058944, 147490640, 148491024, 148852384, 148491024, 147490640,
         146058944, 144435360, 142815424, 140643920, 138907696, 137595280,
         136632320, 135936912, 135189264, 134765312, 134526000, 134391168,
         134217728},
        {134217728, 134323872, 134406416, 134552992, 134812944, 135272112,
         135700080, 136294032, 137106080, 138184736, 139540672, 140557056,
         141579792, 142484928, 143119200, 143348672, 143119200, 142484928,
         141579792, 140557056, 139540672, 138184736, 137106080, 136294032,
         135700080, 135272112, 134812944, 134552992, 134406416, 134323872,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 134047496, 133914896, 133678832, 133258584, 132511008,
         131808096, 130822576, 129456008, 127605336, 125219000, 123384360,
         121496560, 119789320, 118571720, 118126808, 118571736, 119789320,
         121496560, 123384360, 125219000, 127605336, 129456008, 130822576,
         131808096, 132511008, 133258584, 133678848, 133914896, 134047496,
         134217728},
        {134217728, 133931488, 133708328, 133310696, 132601600, 131336352,
         130142072, 128459768, 126111336, 122900128, 118702864, 115428552,
         112012200, 111848104, 111848104, 111848104, 111848104, 111848104,
         112012200, 115428552, 118702864, 122900128, 126111336, 128459768,
         130142072, 131336352, 132601616, 133310696, 133708328, 133931488,
         134217728},
    },
    {
        {134217728, 134750352, 135163360, 135894416, 137183168, 139436416,
         141510976, 144351440, 148166016, 153119584, 159180064, 163612720,
         167986224, 171789568, 174419376, 175363904, 174419392, 171789552,
         167986224, 163612736, 159180064, 153119584, 148166016, 144351440,
         141510976, 139436416, 137183168, 135894416, 135163360, 134750352,
         134217744},
        {134217728, 134716864, 135103984, 135789392, 136998240, 139113424,
         141062640, 143734096, 147326256, 151998160, 157724080, 161918432,
         166061616, 169668288, 172163984, 173060688, 172163968, 169668288,
         166061616, 161918432, 157724080, 151998160, 147326256, 143734096,
         141062640, 139113424, 136998240, 135789392, 135103984, 134716864,
         134217744},
        {134217728, 134665904, 135013632, 135629504, 136716496, 138620704,
         140377968, 142790048, 146039760, 150276480, 155483472, 159306928,
         163090832, 166390080, 168675792, 169497600, 168675792, 166390080,
         163090832, 159306944, 155483488, 150276480, 146039760, 142790048,
         140377968, 138620704, 136716496, 135629504, 135013616, 134665904,
         134217744},
        {134217728, 134538048, 134786784, 135227776, 136007472, 137377520,
         138646400, 140395008, 142763040, 145870208, 149717968, 152562416,
         155392320, 157871248, 159594640, 160215424, 159594624, 157871248,
         155392320, 152562416, 149717968, 145870208, 142763040, 140395008,
         138646400, 137377520, 136007472, 135227776, 134786768, 134538048,
         134217728},
        {134217728, 134413792, 134566144, 134836576, 135315504, 136159568,
         136944176, 138029792, 139507872, 141460704, 143899120, 145715424,
         147533568, 149135008, 150253024, 150656672, 150253024, 149135008,
         147533568, 145715424, 143899120, 141460688, 139507872, 138029792,
         136944176, 136159584, 135315504, 134836576, 134566160, 134413792,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 133903024, 133657608, 133220288, 132440008, 131046696,
         129730280, 127873712, 125277552, 121718608, 117049664, 113392528,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 113392528, 117049680, 121718608, 125277552, 127873712,
         129730280, 131046696, 132440024, 133220288, 133657624, 133903024,
         134217728},
        {134217728, 133688336, 133274944, 132536912, 131215936, 128843168,
         126584160, 123368104, 118806640, 112416656, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 112416656, 118806640, 123368104,
         126584160, 128843168, 131215952, 132536912, 133274944, 133688336,
         134217728},
    },
    {
        {134217728, 134913216, 135451936, 136404304, 138079504, 140997600,
         143672688, 147318512, 152186224, 158463280, 166082896, 171618768,
         177053216, 181758880, 185002352, 186165344, 185002352, 181758896,
         177053216, 171618768, 166082896, 158463296, 152186224, 147318512,
         143672688, 140997600, 138079504, 136404304, 135451936, 134913216,
         134217744},
        {134217728, 134869504, 135374512, 136267584, 137839408, 140580112,
         143095472, 146527744, 151117280, 157046336, 164257936, 169506256,
         174664912, 179136576, 182221168, 183327616, 182221168, 179136560,
         174664928, 169506256, 164257936, 157046336, 151117296, 146527744,
         143095472, 140580112, 137839408, 136267584, 135374512, 134869504,
         134217744},
        {134217728, 134802992, 135256672, 136059376, 137473424, 139942768,
         142213056, 145316768, 149476832, 154866368, 161442736, 166241776,
         170968496, 175072880, 177907744, 178925312, 177907760, 175072880,
         170968496, 166241776, 161442736, 154866368, 149476832, 145316768,
         142213056, 139942768, 137473424, 136059376, 135256672, 134802992,
         134217744},
        {134217728, 134636080, 134960736, 135535920, 136551440, 138331744,
         139976000, 142235024, 145282080, 149260352, 154157968, 157759584,
         161328032, 164442560, 166601920, 167378576, 166601920, 164442544,
         161328032, 157759584, 154157968, 149260368, 145282080, 142235024,
         139976016, 138331728, 136551456, 135535920, 134960736, 134636096,
         134217744},
        {134217728, 134473824, 134672800, 135025728, 135650240, 136749360,
         137769200, 139177520, 141089920, 143607984, 146739200, 149062688,
         151381328, 153417872, 154836624, 155348256, 154836640, 153417872,
         151381328, 149062688, 146739200, 143607984, 141089920, 139177520,
         137769200, 136749360, 135650256, 135025712, 134672784, 134473824,
         134217728},
        {134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728, 134217728, 134217728, 134217728, 134217728, 134217728,
         134217728},
        {134217728, 133806400, 133485440, 132913000, 131890240, 130059096,
         128323168, 125864856, 122406120, 117621128, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 117621120, 122406120, 125864856,
         128323168, 130059096, 131890240, 132913000, 133485440, 133806400,
         134217728},
        {134217728, 133525632, 132984568, 132017344, 130281848, 127150040,
         124150024, 119845456, 113664464, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 111848104, 111848104,
         111848104, 111848104, 111848104, 111848104, 113664464, 119845456,
         124150024, 127150040, 130281848, 132017344, 132984568, 133525632,
         134217728},
    },
};

const WORD32 ixheaacd_atan_table_Q28[16][8][31] = {
    {
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    },
    {
        {105414360, 104839440, 104395760, 103614856, 102251296, 99903616,
         97777528,  94910424,  91113928,  86209256,  80075696,  75298264,
         70016792,  64317196,  58324216,  52191708,  46086824,  40171656,
         34586568,  29438704,  24797036,  18844526,  14076835,  10372791,
         7563109,   5470589,   3149178,   1794887,   1017097,   574441,
         3},
        {105414360, 104839456, 104395808, 103614992, 102251712, 99904768,
         97779568,  94913880,  91119464,  86217496,  80086976,  75311480,
         70031656,  64333272,  58341012,  52208712,  46103544,  40187596,
         34601260,  29451742,  24808156,  18852650,  14082295,  10376209,
         7565131,   5471733,   3149591,   1795028,   1017143,   574456,
         3},
        {105414360, 104839480, 104395880, 103615208, 102252344, 99906552,
         97782736,  94919288,  91128192,  86230640,  80105168,  75332944,
         70055936,  64359672,  58368684,  52236768,  46131100,  40213788,
         34625280,  29472930,  24826096,  18865614,  14090922,  10381562,
         7568273,   5473501,   3150225,   1795244,   1017214,   574479,
         3},
        {105414360, 104839536, 104396064, 103615760, 102253976, 99911160,
         97791048,  94933704,  91151936,  86267232,  80157136,  75395312,
         70127632,  64438612,  58452120,  52321616,  46214224,  40292168,
         34696284,  29534604,  24877446,  18901780,  14114422,  10395857,
         7576530,   5478088,   3151847,   1795790,   1017394,   574537,
         3},
        {105414360, 104839592, 104396240, 103616296, 102255600, 99915856,
         97799664,  94949000,  91177904,  86308736,  80218568,  75471136,
         70217072,  64539228,  58560004,  52431916,  46321792,  40392248,
         34785076,  29609790,  24938336,  18942938,  14140199,  10411065,
         7585108,   5482768,   3153468,   1796330,   1017569,   574594,
         3},
        {105414360, 104839680, 104396520, 103617168, 102258248, 99923736,
         97814472,  94976184,  91226104,  86390216,  80347528,  75638144,
         70423488,  64780944,  58826448,  52707184,  46587916,  40633420,
         34990876,  29776224,  25066838,  19024148,  14188262,  10438183,
         7599892,   5490633,   3156118,   1797198,   1017849,   574683,
         3},
        {105414360, 104839824, 104396976, 103618608, 102262752, 99937728,
         97841960,  95029816,  91329816,  86588048,  80716144,  76183448,
         71203432,  65834132,  60122612,  54107316,  47891724,  41697008,
         35779764,  30327720,  25439258,  19223604,  14292623,  10492064,
         7627470,   5504663,   3160627,   1798637,   1018307,   574828,
         3},
        {105414360, 104839928, 104397288, 103619616, 102266008, 99948384,
         97863952,  95076024,  91429712,  86814424,  81270904,  77262808,
         73480384,  71228240,  75154792,  90330880,  64216388,  47491216,
         38190000,  31457082,  26014456,  19455916,  14394385,  10538885,
         7649673,   5515393,   3163899,   1799652,   1018625,   574928,
         3},
    },
    {
        {210828704, 209763824, 208938560, 207478752, 204908032, 200419760,
         196290896, 190633616, 183000672, 172937648, 160110704, 149997200,
         138756608, 126624216, 113938336, 101099072, 88510592,  76526288,
         65413280,  55341428,  46391316,  35074004,  26116856,  19208962,
         13991278,  10114556,  5820107,   3316738,   1879389,   1061436,
         6},
        {210828704, 209763936, 208938896, 207479776, 204911072, 200428368,
         196306384, 190660432, 183044720, 173005232, 160205968, 150110720,
         138885968, 126765280, 114085952, 101247824, 88655264,  76662112,
         65536160,  55448352,  46480712,  35137556,  26158596,  19234612,
         14006231,  10122925,  5823092,   3317749,   1879722,   1061544,
         6},
        {210828704, 209764096, 208939392, 207481328, 204915728, 200441616,
         196330368, 190702240, 183113968, 173112496, 160358752, 150294096,
         139096288, 126995848, 114328120, 101492232, 88892824,  76884520,
         65736460,  55621620,  46624620,  35238800,  26224436,  19274734,
         14029455,  10135852,  5827674,   3319296,   1880230,   1061707,
         6},
        {210828704, 209764512, 208940688, 207485280, 204927584, 200475808,
         196392960, 190812912, 183300576, 173407904, 160790096, 150820544,
         139709584, 127677032, 115050024, 102223720, 89602656,  77544544,
         66324264,  56122904,  47034384,  35520108,  26403298,  19381644,
         14090386,  10169363,  5839388,   3323218,   1881511,   1062120,
         6},
        {210828704, 209764912, 208941952, 207489168, 204939376, 200510416,
         196457296, 190929072, 183501872, 173737520, 161290464, 151447920,
         140459456, 128528208, 115965984, 103158064, 90506880,  78375576,
         67050572,  56727860,  47516240,  35838300,  26598646,  19495050,
         14153544,  10203491,  5851081,   3327087,   1882766,   1062523,
         6},
        {210828704, 209765552, 208943952, 207495408, 204958528, 200567968,
         196566624, 191132320, 183868128, 174368352, 162309120, 152784192,
         142129632, 130500344, 118149712, 105414360, 92679000,  80328360,
         68699080,  58044528,  48519584,  36460364,  26960592,  19696396,
         14262089,  10260740,  5870181,   3333310,   1884767,   1063161,
         6},
        {210828704, 209766592, 208947200, 207505680, 204990800, 200668800,
         196765424, 191522096, 184625504, 175818192, 165011728, 156772288,
         147807440, 138128784, 127521456, 115591336, 102270680, 88260824,
         74642472,  62217964,  51336324,  37958764,  27737034,  20093352,
         14463533,  10362519,  5902623,   3343611,   1888032,   1064195,
         6},
        {210828704, 209767296, 208949456, 207512880, 205013952, 200744336,
         196920864, 191846656, 185318832, 177353312, 168608176, 163416640,
         160727504, 165029712, 189073968, 241456736, 178005808, 122049624,
         90479408,  70104040,  55475472,  39658732,  28482874,  20435210,
         14624799,  10440064,  5926123,   3350871,   1890298,   1064906,
         6},
    },
    {
        {316243072, 314846656, 313757568, 311816384, 308352896, 302171040,
         296337664, 288127488, 276678912, 261007920, 240267568, 223492192,
         204621200, 184231600, 163158624, 142328864, 122556352, 104403376,
         88154704,  73876200,  61498028,  46182704,  34260640,  25149108,
         18299352,  13222145,  7605578,   4333750,   2455581,   1386840,
         8},
        {316243072, 314846976, 313758496, 311819264, 308361632, 302196576,
         296384960, 288212480, 276825088, 261244544, 240620416, 223927248,
         205130368, 184795488, 163749776, 142917424, 123115312, 104911608,
         88598136,  74247992,  61798064,  46386176,  34389240,  25225820,
         18343072,  13246210,  7614005,   4336575,   2456504,   1387138,
         8},
        {316243072, 314847424, 313759936, 311823680, 308374976, 302235808,
         296457920, 288344224, 277053216, 261616816, 241180800, 224622832,
         205949680, 185708032, 164710624, 143876432, 124026392, 105738528,
         89317024,  74847744,  62279204,  46709404,  34591704,  25345632,
         18410910,  13283357,  7626934,   4340894,   2457913,   1387591,
         8},
        {316243072, 314848576, 313763520, 311834784, 308408896, 302336352,
         296646528, 288688608, 277658208, 262622336, 242727504, 226572640,
         208281664, 188341088, 167512304, 146689696, 126701240, 108155720,
         91400008,  76564704,  63637504,  47602004,  35139296,  25663918,
         18588502,  13379501,  7659962,   4351840,   2461468,   1388732,
         8},
        {316243072, 314849696, 313767008, 311845696, 308442400, 302437088,
         296837792, 289043680, 278295680, 263711664, 244460352, 228811376,
         211025776, 191509408, 170942688, 150169152, 130013904, 111127336,
         93923424,  78603792,  65214388,  48602512,  35733560,  26000040,
         18772012,  13477197,  7692890,   4362631,   2464949,   1389845,
         8},
        {316243072, 314851456, 313772576, 311863104, 308496480, 302602432,
         297156960, 289649728, 279417792, 265709120, 247806384, 233308320,
         216768720, 198401536, 178640624, 158121536, 137602432, 117841520,
         99474352,  82934752,  68436688,  50533952,  36825288,  26593334,
         19086120,  13640627,  7746590,   4379971,   2470496,   1391611,
         8},
        {316243072, 314854304, 313781600, 311891584, 308586432, 302885824,
         297719616, 290762432, 281600928, 269929056, 255733744, 245043360,
         233506176, 220942800, 206510464, 188780448, 167001392, 142516720,
         118085768, 95972968,  77157136,  55082256,  39133424,  27751766,
         19665234,  13929855,  7837575,   4408639,   2479541,   1394467,
         8},
        {316243072, 314856256, 313787808, 311911392, 308650144, 303093152,
         298144768, 291644096, 283459968, 273946560, 264748512, 260980608,
         262699168, 277087168, 321151200, 394123840, 324055360, 228764272,
         162653280, 119096696, 89459480,  60122168,  41317836,  28739580,
         20125738,  14149189,  7903307,   4428811,   2485814,   1396432,
         8},
    },
    {
        {421657440, 420139488, 418946528, 416800672, 412909824, 405768000,
         398798528, 388615200, 373701408, 352009344, 321306208, 295197120,
         265052208, 232374288, 199428848, 168474672, 140988912, 117445760,
         97614400,  80976864,  67001780,  50094056,  37102532,  27221784,
         19805402,  14310412,  8231902,   4690748,   2657888,   1501102,
         8},
        {421657440, 420140000, 418948192, 416805888, 412925952, 405817184,
         398893152, 388794176, 374031200, 352591488, 322263552, 296453088,
         266595344, 234127472, 201261264, 170245184, 142589072, 118816240,
         98738176,  81865128,  67681552,  50525452,  37361620,  27370528,
         19887816,  14354855,  8247121,   4695786,   2659523,   1501627,
         8},
        {421657440, 420140832, 418950752, 416813824, 412950592, 405892416,
         399038240, 389069504, 374540352, 353494496, 323757792, 298423616,
         269031008, 236912448, 204189776, 173088128, 145165408, 121023688,
         100545224, 83288680,  68766080,  51208348,  37768500,  27602440,
         20015536,  14423394,  8270460,   4703485,   2662016,   1502426,
         8},
        {421657440, 420142848, 418957120, 416833824, 413012864, 406083584,
         399408640, 389776736, 375859200, 355859264, 327727040, 303720672,
         275669600, 244617728, 212408608, 181157024, 152524352, 127334264,
         105689200, 87307640,  71794608,  53080056,  38863244,  28216278,
         20349054,  14600477,  8330018,   4722985,   2668305,   1504437,
         8},
        {421657440, 420144832, 418963328, 416853376, 413073952, 406272672,
         399777696, 390488160, 377202752, 358308992, 331931552, 309437728,
         282992896, 253322832, 221909888, 190657120, 161278448, 134848896,
         111768392, 91990440,  75259304,  55157184,  40043144,  28861386,
         20692490,  14779977,  8389313,   4742194,   2674461,   1506398,
         8},
        {421657440, 420147936, 418973184, 416884416, 413171584, 406578080,
         400379520, 391663936, 379464224, 362537056, 339441728, 319954336,
         296943136, 270562688, 241463968, 210828720, 180193472, 151094752,
         124714296, 101703104, 82215704,  59120396,  42193204,  29993510,
         21277910,  15079353,  8485847,   4773030,   2684265,   1509508,
         8},
        {421657440, 420152960, 418989056, 416934784, 413331648, 407087776,
         401401312, 393709888, 383542496, 370571008, 354857280, 343114528,
         330489120, 316523552, 299496928, 276320320, 244582704, 205903744,
         165901392, 130010112, 100638336, 68322528,  46691836,  32186576,
         22350768,  15606794,  8648967,   4823931,   2700238,   1514536,
         8},
        {421657440, 420156384, 418999936, 416969536, 413443296, 407450528,
         402143200, 395241024, 386740992, 377366336, 369662080, 368527968,
         375197056, 397609792, 449444704, 516205376, 465462368, 362087840,
         258438672, 179525856, 126554704, 78481920,  50925604,  34045784,
         23199528,  16005132,  8766508,   4859691,   2711304,   1517993,
         8},
    },
    {
        {527071776, 525663296, 524547840, 522522432, 518787424, 511719680,
         504553280, 493592128, 476455264, 449151072, 405692192, 364814688,
         314764480, 260204640, 208654512, 165799504, 132838864, 107993088,
         88864512,  73593016,  61016300,  45833920,  34080076,  25068088,
         18265786,  13208915,  7602957,   4333255,   2455490,   1386823,
         8},
        {527071776, 525663968, 524550016, 522529280, 518809216, 511789088,
         504692864, 493873536, 477023936, 450294176, 407912896, 368083040,
         319153344, 265360480, 213877824, 170466944, 136659360, 110950480,
         91074048,  75204000,  62168492,  46509388,  34462976,  25278940,
         18379172,  13268763,  7622987,   4339800,   2457598,   1387497,
         8},
        {527071776, 525665024, 524553312, 522539712, 518842368, 511894848,
         504905440, 494302048, 477888864, 452029248, 411276832, 373037344,
         325837408, 273286560, 222000448, 177798416, 142702912, 115647968,
         94588960,  77764896,  63995604,  47574420,  35062716,  25607106,
         18554672,  13360983,  7653688,   4349799,   2460814,   1388524,
         8},
        {527071776, 525667616, 524561568, 522565952, 518925728, 512160800,
         505440320, 495379776, 480060704, 456371808, 419671424, 385428736,
         342733856, 293748832, 243537984, 197712496, 159394864, 128736152,
         104401184, 84889304,  69041664,  50472228,  36668388,  26472714,
         19011836,  13598833,  7731958,   4375112,   2468920,   1391105,
         8},
        {527071776, 525670144, 524569600, 522591456, 519006944, 512420320,
         505962656, 496432544, 482180128, 460599008, 427832576, 397536000,
         359516736, 314728096, 266563520, 219861040, 178476000, 143891040,
         115765904, 93067576,  74749312,  53662744,  38389064,  27378586,
         19481140,  13839382,  7809780,   4400025,   2476852,   1393623,
         8},
        {527071776, 525674176, 524582304, 522631776, 519135520, 512832256,
         506793344, 498109984, 485562304, 467353856, 440933088, 417176416,
         387412832, 351185728, 309140992, 263535888, 217930800, 175886048,
         139658944, 109895352, 86138704,  59717932,  41509480,  28961788,
         20278430,  14239528,  7936269,   4439982,   2489476,   1397613,
         8},
        {527071776, 525680576, 524602688, 522696672, 519343104, 513501216,
         508149376, 500867616, 491177920, 478742400, 463639360, 452372192,
         440252448, 426573952, 408733792, 381475072, 338855168, 280525408,
         216504432, 159999104, 116811992, 73859864,  48033652,  32018526,
         21734042,  14942109,  8149504,   4505844,   2510026,   1404063,
         8},
        {527071776, 525684960, 524616608, 522741088, 519485728, 513964384,
         509095872, 502817408, 495235360, 487294368, 481973920, 483250624,
         492921600, 517327296, 563364480, 613069184, 582305664, 502086528,
         381071808, 253160960, 162730896, 89940184,  54233516,  34613092,
         22883530,  15471362,  8302829,   4552048,   2524252,   1408495,
         8},
    },
    {
        {632486144, 631404160, 630541632, 628962560, 626006848, 620254784,
         614202752, 604493888, 588124864, 558622016, 501272640, 434361248,
         339721664, 238866928, 162754096, 116484152, 89986864,  73763176,
         62238744,  52877240,  44742032,  34289616,  25778564,  19071620,
         13937721,  10094245,  5816231,   3316020,   1879259,   1061412,
         6},
        {632486144, 631404800, 630543680, 628969216, 626028480, 620326592,
         614353408, 604818816, 588856448, 560378560, 505802368, 442767520,
         353024832, 254136256, 175962480, 126430968, 96994048,  78520456,
         65419852,  54997780,  46155356,  35055980,  26190098,  19289814,
         14051970,  10153425,  5835647,   3322294,   1881268,   1062052,
         6},
        {632486144, 631405824, 630546880, 628979392, 626061312, 620435456,
         614581376, 605308288, 589949440, 562964736, 512317856, 454700768,
         372074880, 276762944, 196044128, 141682288, 107802384, 85920168,
         70405200,  58335116,  48381672,  36259776,  26833198,  19628898,
         14228628,  10244553,  5865397,   3331877,   1884330,   1063026,
         6},
        {632486144, 631408256, 630554752, 629004736, 626143360, 620706752,
         615146880, 606512512, 592597440, 569059456, 527028256, 480971968,
         414517856, 330765376, 247566576, 182256848, 137009328, 106116024,
         84093808,  67506720,  54475932,  39516588,  28548308,  20520860,
         14687895,  10479249,  5941177,   3356125,   1892049,   1065476,
         6},
        {632486144, 631410688, 630562432, 629029312, 626222784, 620968128,
         615688640, 607654336, 595061824, 574547584, 539620928, 502759456,
         449954304, 379751840, 300289600, 227398144, 170699200, 129631024,
         99970280,  78022152,  61351280,  43090368,  30380256,  21451668,
         15158278,  10716186,  6016439,   3379975,   1899599,   1067865,
         6},
        {632486144, 631414464, 630574528, 629067968, 626347520, 621376512,
         616530368, 609410496, 598784192, 582583360, 557211968, 532248416,
         497725888, 450454656, 388712384, 316243072, 243773744, 182031456,
         134760256, 100237736, 75274184,  49902756,  33701968,  23075620,
         15955780,  11109605,  6138617,   3418196,   1911610,   1071650,
         6},
        {632486144, 631420544, 630593856, 629129728, 626546304, 622024256,
         617857472, 612152256, 604500352, 594592960, 582468992, 573393728,
         563597248, 552304000, 536529024, 509232736, 458470464, 373144992,
         265980880, 175277520, 115809552, 66314040,  40717416,  26216598,
         17410064,  11799018,  6344228,   3481124,   1931149,   1077765,
         6},
        {632486144, 631424704, 630607040, 629171712, 626681152, 622462336,
         618753152, 613998592, 608344384, 602686208, 599701056, 602055040,
         611306560, 631195136, 663846400, 695665664, 678745600, 629219584,
         527619200, 345921568, 187985760, 86310936,  47549656,  28903180,
         18560056,  12317920,  6491857,   3525223,   1944665,   1081966,
         6},
    },
    {
        {737900480, 737313472, 736843456, 735978112, 734341632, 731092416,
         727578432, 721723200, 711172416, 689515200, 632898368, 524671456,
         291627872, 124282568, 61909856,  39166204,  32726406,  30782714,
         28778620,  26053694,  22893106,  18076024,  13777827,  10259417,
         7520912,   5455094,   3146319,   1794368,   1017003,   574424,
         3},
        {737900480, 737313856, 736844736, 735982272, 734355200, 731139072,
         727679616, 721953472, 711743296, 691176960, 639550656, 546400448,
         337176160, 153194576, 79696616,  51414392,  40409976,  35288896,
         31462072,  27703048,  23931236,  18606918,  14052068,  10401011,
         7593699,   5492314,   3158367,   1798231,   1018235,   574816,
         3},
        {737900480, 737314496, 736846656, 735988544, 734375872, 731209600,
         727831808, 722297216, 712582592, 693540736, 648325568, 572924864,
         400936960, 201170544, 106893592, 68502096,  51196844,  41932300,
         35558792,  30265664,  25555562,  19438326,  14479913,  10620826,
         7706165,   5549599,   3176820,   1804132,   1020113,   575412,
         3},
        {737900480, 737315968, 736851520, 736004224, 734427392, 731384128,
         728205504, 723128192, 714552448, 698767168, 665389440, 617851520,
         518249088, 341071744, 189979888, 115866720, 79793448,  59627348,
         46625756,  37240340,  29975502,  21679968,  15618320,  11198082,
         7998192,   5697000,   3223802,   1819057,   1024845,   576910,
         3},
        {737900480, 737317504, 736856256, 736019456, 734476992, 731550720,
         728558400, 723898048, 716313280, 703122688, 677714048, 645514624,
         585425152, 469729280, 304799264, 181937120, 116903752, 81417144,
         59804904,  45335940,  34988372,  24141316,  16833072,  11799646,
         8296896,   5845648,   3270431,   1833731,   1029473,   578371,
         3},
        {737900480, 737319808, 736863680, 736043264, 734554432, 731808256,
         729097600, 725051328, 718858688, 709018048, 692447360, 674422272,
         645810304, 597029312, 509281120, 368950240, 228619376, 140871152,
         92090184,  63478204,  45453116,  28882404,  19041826,  12849181,
         8802888,   6092218,   3346065,   1857236,   1036832,   580686,
         3},
        {737900480, 737323520, 736875456, 736081088, 734676800, 732210048,
         729927424, 726786624, 722546496, 717012160, 710183424, 705045120,
         699473920, 692939328, 683288384, 664622720, 621866048, 513176832,
         298800288, 144682432, 80228568,  40814640,  23774754,  14887523,
         9725975,   6523960,   3473221,   1895906,   1048798,   584424,
         3},
        {737900480, 737326016, 736883520, 736106688, 734759040, 732477632,
         730474944, 727916992, 724904832, 721986304, 720753536, 722497344,
         728061952, 739005568, 755619392, 771010688, 763544704, 740635136,
         685348544, 485060256, 169322848, 56755684,  28517764,  16647276,
         10457803,  6848975,   3564451,   1922987,   1057072,   586991,
         3},
    },
    {
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314752,
         -99,        -23,        -8,         0,          -5,         -6,
         -6,         -6,         -5,         -4,         -3,         -2,
         -2,         -1,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314752,
         -180,       -33,        -14,        -9,         -7,         -7,
         -7,         -6,         -5,         -4,         -3,         -2,
         -2,         -1,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314752,
         -3092,      -53,        -23,        -14,        -11,        -9,
         -8,         -7,         -6,         -4,         -3,         -2,
         -2,         -1,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314752, -298,       -55,        -28,        -19,        -14,
         -11,        -9,         -7,         -5,         -4,         -3,
         -2,         -1,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314688, -193,       -55,        -30,        -20,
         -14,        -11,        -8,         -6,         -4,         -3,
         -2,         -1,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314752, -421657440, -91,        -40,
         -24,        -16,        -11,        -7,         -4,         -3,
         -2,         -1,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314752,
         -252,       -43,        -21,        -10,        -6,         -3,
         -2,         -2,         -1,         0,          0,          0,
         0},
        {-843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314816, -843314816, -843314816, -843314816, -843314816,
         -843314816, -843314752, -56,        -14,        -7,         -4,
         -2,         -2,         -1,         0,          0,          0,
         0},
    },
    {
        {-737900480, -737313472, -736843456, -735978176, -734341632, -731092480,
         -727578496, -721723200, -711172416, -689515200, -632898368, -524671488,
         -291627872, -124282552, -61909848,  -39166196,  -32726402,  -30782708,
         -28778616,  -26053690,  -22893104,  -18076022,  -13777825,  -10259415,
         -7520911,   -5455092,   -3146318,   -1794368,   -1017003,   -574424,
         -3},
        {-737900480, -737313856, -736844736, -735982272, -734355264, -731139072,
         -727679616, -721953472, -711743360, -691176960, -639550656, -546400448,
         -337176160, -153194560, -79696608,  -51414384,  -40409972,  -35288892,
         -31462068,  -27703042,  -23931232,  -18606916,  -14052066,  -10401010,
         -7593697,   -5492313,   -3158366,   -1798231,   -1018235,   -574816,
         -3},
        {-737900480, -737314496, -736846656, -735988544, -734375872, -731209600,
         -727831808, -722297216, -712582592, -693540736, -648325568, -572924928,
         -400936960, -201170512, -106893576, -68502088,  -51196836,  -41932292,
         -35558788,  -30265660,  -25555558,  -19438322,  -14479910,  -10620825,
         -7706164,   -5549598,   -3176819,   -1804131,   -1020113,   -575412,
         -3},
        {-737900480, -737316032, -736851520, -736004288, -734427392, -731384128,
         -728205504, -723128192, -714552448, -698767168, -665389504, -617851520,
         -518249088, -341071712, -189979872, -115866704, -79793440,  -59627336,
         -46625748,  -37240336,  -29975498,  -21679964,  -15618318,  -11198080,
         -7998190,   -5696998,   -3223801,   -1819057,   -1024845,   -576910,
         -3},
        {-737900480, -737317504, -736856256, -736019456, -734476992, -731550784,
         -728558400, -723898112, -716313280, -703122688, -677714048, -645514624,
         -585425152, -469729280, -304799232, -181937104, -116903736, -81417128,
         -59804896,  -45335932,  -34988368,  -24141312,  -16833070,  -11799644,
         -8296895,   -5845647,   -3270430,   -1833731,   -1029472,   -578371,
         -3},
        {-737900480, -737319808, -736863680, -736043264, -734554432, -731808256,
         -729097600, -725051328, -718858688, -709018112, -692447360, -674422272,
         -645810304, -597029312, -509281120, -368950240, -228619360, -140871136,
         -92090168,  -63478192,  -45453108,  -28882400,  -19041824,  -12849179,
         -8802887,   -6092216,   -3346064,   -1857235,   -1036832,   -580686,
         -3},
        {-737900480, -737323520, -736875520, -736081152, -734676800, -732210112,
         -729927424, -726786624, -722546560, -717012224, -710183488, -705045120,
         -699473920, -692939328, -683288448, -664622784, -621866048, -513176832,
         -298800256, -144682416, -80228552,  -40814632,  -23774750,  -14887520,
         -9725973,   -6523959,   -3473220,   -1895905,   -1048798,   -584424,
         -3},
        {-737900480, -737326080, -736883520, -736106752, -734759104, -732477632,
         -730474944, -727917056, -724904896, -721986368, -720753536, -722497344,
         -728061952, -739005568, -755619456, -771010688, -763544704, -740635136,
         -685348544, -485060256, -169322832, -56755676,  -28517758,  -16647273,
         -10457802,  -6848973,   -3564450,   -1922987,   -1057072,   -586991,
         -3},
    },
    {
        {-632486144, -631404160, -630541632, -628962624, -626006912, -620254848,
         -614202752, -604493888, -588124928, -558622016, -501272672, -434361280,
         -339721664, -238866896, -162754096, -116484128, -89986864,  -73763168,
         -62238740,  -52877228,  -44742028,  -34289608,  -25778562,  -19071618,
         -13937720,  -10094244,  -5816230,   -3316020,   -1879259,   -1061412,
         -6},
        {-632486144, -631404800, -630543744, -628969280, -626028480, -620326656,
         -614353408, -604818880, -588856448, -560378624, -505802400, -442767552,
         -353024864, -254136224, -175962480, -126430968, -96994048,  -78520448,
         -65419836,  -54997768,  -46155352,  -35055976,  -26190096,  -19289814,
         -14051969,  -10153424,  -5835646,   -3322294,   -1881267,   -1062052,
         -6},
        {-632486144, -631405824, -630546880, -628979392, -626061312, -620435456,
         -614581376, -605308352, -589949440, -562964800, -512317888, -454700800,
         -372074880, -276762944, -196044080, -141682256, -107802384, -85920168,
         -70405192,  -58335112,  -48381668,  -36259772,  -26833196,  -19628898,
         -14228625,  -10244552,  -5865396,   -3331876,   -1884330,   -1063026,
         -6},
        {-632486144, -631408320, -630554816, -629004736, -626143424, -620706752,
         -615146880, -606512512, -592597440, -569059456, -527028288, -480972000,
         -414517888, -330765376, -247566576, -182256848, -137009312, -106116016,
         -84093792,  -67506712,  -54475932,  -39516584,  -28548306,  -20520858,
         -14687894,  -10479248,  -5941176,   -3356124,   -1892049,   -1065476,
         -6},
        {-632486144, -631410688, -630562496, -629029312, -626222848, -620968128,
         -615688640, -607654400, -595061824, -574547648, -539620928, -502759488,
         -449954304, -379751872, -300289600, -227398144, -170699200, -129631024,
         -99970272,  -78022152,  -61351276,  -43090364,  -30380254,  -21451666,
         -15158277,  -10716185,  -6016438,   -3379975,   -1899599,   -1067865,
         -6},
        {-632486144, -631414528, -630574528, -629067968, -626347520, -621376576,
         -616530368, -609410560, -598784192, -582583424, -557211968, -532248448,
         -497725920, -450454688, -388712416, -316243072, -243773744, -182031456,
         -134760256, -100237728, -75274176,  -49902756,  -33701964,  -23075618,
         -15955779,  -11109604,  -6138616,   -3418196,   -1911610,   -1071650,
         -6},
        {-632486144, -631420608, -630593920, -629129728, -626546368, -622024256,
         -617857472, -612152256, -604500352, -594593024, -582468992, -573393792,
         -563597248, -552304000, -536529056, -509232736, -458470496, -373144992,
         -265980880, -175277520, -115809544, -66314036,  -40717412,  -26216596,
         -17410062,  -11799017,  -6344227,   -3481124,   -1931149,   -1077765,
         -6},
        {-632486144, -631424704, -630607040, -629171712, -626681152, -622462336,
         -618753152, -613998656, -608344384, -602686272, -599701056, -602055040,
         -611306560, -631195136, -663846464, -695665728, -678745600, -629219648,
         -527619232, -345921600, -187985760, -86310936,  -47549652,  -28903178,
         -18560056,  -12317919,  -6491856,   -3525223,   -1944664,   -1081966,
         -6},
    },
    {
        {-527071808, -525663328, -524547904, -522522464, -518787456, -511719712,
         -504553344, -493592160, -476455328, -449151136, -405692224, -364814720,
         -314764512, -260204640, -208654496, -165799488, -132838856, -107993080,
         -88864496,  -73593008,  -61016300,  -45833920,  -34080072,  -25068086,
         -18265786,  -13208914,  -7602956,   -4333254,   -2455489,   -1386823,
         -8},
        {-527071808, -525664032, -524550048, -522529344, -518809248, -511789152,
         -504692896, -493873600, -477024000, -450294240, -407912928, -368083072,
         -319153344, -265360496, -213877824, -170466928, -136659360, -110950464,
         -91074040,  -75203984,  -62168492,  -46509388,  -34462972,  -25278938,
         -18379172,  -13268760,  -7622986,   -4339799,   -2457598,   -1387497,
         -8},
        {-527071808, -525665056, -524553344, -522539776, -518842432, -511894880,
         -504905472, -494302080, -477888896, -452029312, -411276864, -373037408,
         -325837408, -273286560, -222000464, -177798416, -142702912, -115647952,
         -94588960,  -77764888,  -63995600,  -47574416,  -35062712,  -25607104,
         -18554672,  -13360983,  -7653687,   -4349798,   -2460813,   -1388524,
         -8},
        {-527071808, -525667680, -524561632, -522566016, -518925792, -512160864,
         -505440352, -495379840, -480060736, -456371840, -419671488, -385428768,
         -342733888, -293748864, -243538000, -197712512, -159394864, -128736136,
         -104401192, -84889288,  -69041664,  -50472220,  -36668384,  -26472714,
         -19011836,  -13598832,  -7731957,   -4375111,   -2468919,   -1391105,
         -8},
        {-527071808, -525670208, -524569664, -522591520, -519007008, -512420384,
         -505962688, -496432608, -482180192, -460599072, -427832640, -397536032,
         -359516800, -314728128, -266563552, -219861056, -178475984, -143891040,
         -115765912, -93067576,  -74749312,  -53662744,  -38389064,  -27378586,
         -19481138,  -13839381,  -7809779,   -4400024,   -2476851,   -1393623,
         -8},
        {-527071808, -525674208, -524582336, -522631840, -519135552, -512832288,
         -506793408, -498110048, -485562336, -467353888, -440933120, -417176480,
         -387412896, -351185760, -309141024, -263535920, -217930816, -175886064,
         -139658944, -109895352, -86138704,  -59717932,  -41509480,  -28961786,
         -20278428,  -14239527,  -7936268,   -4439981,   -2489476,   -1397613,
         -8},
        {-527071808, -525680640, -524602720, -522696736, -519343168, -513501280,
         -508149440, -500867680, -491177984, -478742432, -463639424, -452372288,
         -440252512, -426573984, -408733888, -381475168, -338855200, -280525440,
         -216504464, -159999152, -116811992, -73859864,  -48033648,  -32018524,
         -21734040,  -14942109,  -8149503,   -4505843,   -2510026,   -1404062,
         -8},
        {-527071808, -525685024, -524616640, -522741120, -519485760, -513964448,
         -509095936, -502817440, -495235424, -487294400, -481973952, -483250688,
         -492921664, -517327360, -563364544, -613069184, -582305664, -502086560,
         -381071904, -253160976, -162730944, -89940184,  -54233516,  -34613092,
         -22883530,  -15471361,  -8302828,   -4552048,   -2524252,   -1408494,
         -8},
    },
    {
        {-421657408, -420139456, -418946528, -416800672, -412909824, -405768000,
         -398798528, -388615168, -373701408, -352009344, -321306208, -295197120,
         -265052192, -232374288, -199428848, -168474672, -140988896, -117445752,
         -97614400,  -80976864,  -67001780,  -50094052,  -37102532,  -27221788,
         -19805402,  -14310412,  -8231902,   -4690747,   -2657887,   -1501102,
         -8},
        {-421657408, -420140000, -418948192, -416805888, -412925952, -405817184,
         -398893120, -388794176, -374031200, -352591488, -322263520, -296453056,
         -266595328, -234127456, -201261264, -170245168, -142589072, -118816232,
         -98738176,  -81865128,  -67681552,  -50525456,  -37361620,  -27370528,
         -19887816,  -14354855,  -8247121,   -4695785,   -2659522,   -1501627,
         -8},
        {-421657408, -420140800, -418950720, -416813824, -412950592, -405892416,
         -399038240, -389069472, -374540320, -353494496, -323757792, -298423616,
         -269030976, -236912448, -204189776, -173088112, -145165408, -121023680,
         -100545224, -83288680,  -68766080,  -51208344,  -37768500,  -27602440,
         -20015536,  -14423394,  -8270459,   -4703484,   -2662016,   -1502426,
         -8},
        {-421657408, -420142816, -418957120, -416833824, -413012832, -406083552,
         -399408640, -389776736, -375859200, -355859232, -327727008, -303720672,
         -275669600, -244617712, -212408608, -181157008, -152524352, -127334256,
         -105689208, -87307640,  -71794608,  -53080056,  -38863244,  -28216278,
         -20349054,  -14600477,  -8330017,   -4722985,   -2668305,   -1504437,
         -8},
        {-421657408, -420144800, -418963328, -416853344, -413073952, -406272672,
         -399777664, -390488160, -377202752, -358308960, -331931552, -309437728,
         -282992896, -253322816, -221909888, -190657120, -161278432, -134848896,
         -111768392, -91990440,  -75259304,  -55157184,  -40043144,  -28861386,
         -20692490,  -14779979,  -8389313,   -4742193,   -2674461,   -1506398,
         -8},
        {-421657408, -420147904, -418973152, -416884384, -413171584, -406578080,
         -400379520, -391663904, -379464224, -362537024, -339441728, -319954336,
         -296943136, -270562688, -241463968, -210828720, -180193456, -151094736,
         -124714296, -101703096, -82215704,  -59120396,  -42193204,  -29993510,
         -21277910,  -15079353,  -8485847,   -4773029,   -2684265,   -1509508,
         -8},
        {-421657408, -420152928, -418989024, -416934752, -413331616, -407087776,
         -401401280, -393709888, -383542496, -370571008, -354857280, -343114528,
         -330489120, -316523520, -299496896, -276320320, -244582704, -205903728,
         -165901376, -130010112, -100638328, -68322528,  -46691836,  -32186576,
         -22350768,  -15606794,  -8648966,   -4823931,   -2700238,   -1514536,
         -8},
        {-421657408, -420156352, -418999936, -416969504, -413443264, -407450528,
         -402143200, -395241024, -386740960, -377366304, -369662048, -368527936,
         -375197024, -397609792, -449444704, -516205344, -465462368, -362087840,
         -258438672, -179525856, -126554704, -78481920,  -50925604,  -34045784,
         -23199528,  -16005132,  -8766508,   -4859691,   -2711304,   -1517993,
         -8},
    },
    {
        {-316243008, -314846624, -313757504, -311816352, -308352832, -302171008,
         -296337632, -288127456, -276678880, -261007888, -240267536, -223492144,
         -204621168, -184231584, -163158624, -142328848, -122556336, -104403368,
         -88154688,  -73876192,  -61498028,  -46182700,  -34260636,  -25149106,
         -18299350,  -13222144,  -7605577,   -4333749,   -2455580,   -1386840,
         -8},
        {-316243008, -314846912, -313758464, -311819232, -308361568, -302196544,
         -296384928, -288212416, -276825056, -261244496, -240620368, -223927216,
         -205130336, -184795472, -163749760, -142917408, -123115296, -104911600,
         -88598128,  -74247992,  -61798056,  -46386168,  -34389244,  -25225818,
         -18343070,  -13246209,  -7614004,   -4336575,   -2456504,   -1387137,
         -8},
        {-316243008, -314847392, -313759872, -311823616, -308374912, -302235744,
         -296457888, -288344192, -277053152, -261616784, -241180768, -224622800,
         -205949648, -185708016, -164710592, -143876416, -124026376, -105738512,
         -89317016,  -74847736,  -62279196,  -46709404,  -34591708,  -25345634,
         -18410908,  -13283356,  -7626933,   -4340893,   -2457913,   -1387591,
         -8},
        {-316243008, -314848512, -313763456, -311834752, -308408832, -302336288,
         -296646464, -288688576, -277658176, -262622288, -242727472, -226572608,
         -208281632, -188341072, -167512272, -146689680, -126701224, -108155704,
         -91399992,  -76564696,  -63637496,  -47602000,  -35139292,  -25663914,
         -18588502,  -13379500,  -7659961,   -4351839,   -2461468,   -1388732,
         -8},
        {-316243008, -314849632, -313766976, -311845632, -308442368, -302437024,
         -296837728, -289043648, -278295616, -263711632, -244460304, -228811328,
         -211025744, -191509376, -170942672, -150169120, -130013896, -111127320,
         -93923416,  -78603784,  -65214380,  -48602508,  -35733556,  -26000038,
         -18772010,  -13477196,  -7692889,   -4362630,   -2464949,   -1389845,
         -8},
        {-316243008, -314851424, -313772512, -311863040, -308496416, -302602400,
         -297156896, -289649696, -279417728, -265709072, -247806336, -233308272,
         -216768688, -198401504, -178640608, -158121504, -137602416, -117841504,
         -99474336,  -82934744,  -68436680,  -50533948,  -36825284,  -26593332,
         -19086118,  -13640626,  -7746589,   -4379970,   -2470496,   -1391610,
         -8},
        {-316243008, -314854272, -313781536, -311891520, -308586368, -302885760,
         -297719584, -290762368, -281600896, -269929024, -255733712, -245043328,
         -233506144, -220942752, -206510416, -188780416, -167001360, -142516672,
         -118085752, -95972952,  -77157128,  -55082252,  -39133420,  -27751764,
         -19665234,  -13929854,  -7837574,   -4408639,   -2479541,   -1394467,
         -8},
        {-316243008, -314856224, -313787744, -311911360, -308650080, -303093120,
         -298144704, -291644064, -283459904, -273946496, -264748464, -260980560,
         -262699104, -277087104, -321151136, -394123776, -324055296, -228764208,
         -162653232, -119096664, -89459472,  -60122148,  -41317832,  -28739578,
         -20125736,  -14149188,  -7903306,   -4428810,   -2485814,   -1396432,
         -8},
    },
    {
        {-210828752, -209763872, -208938592, -207478800, -204908080, -200419808,
         -196290928, -190633648, -183000704, -172937696, -160110736, -149997216,
         -138756640, -126624232, -113938360, -101099096, -88510608,  -76526296,
         -65413292,  -55341440,  -46391320,  -35074012,  -26116860,  -19208966,
         -13991280,  -10114557,  -5820108,   -3316738,   -1879390,   -1061436,
         -6},
        {-210828752, -209763984, -208938928, -207479824, -204911120, -200428400,
         -196306416, -190660464, -183044768, -173005280, -160206000, -150110752,
         -138886000, -126765304, -114085976, -101247840, -88655288,  -76662120,
         -65536172,  -55448360,  -46480720,  -35137564,  -26158602,  -19234616,
         -14006233,  -10122926,  -5823093,   -3317749,   -1879722,   -1061544,
         -6},
        {-210828752, -209764144, -208939440, -207481376, -204915760, -200441648,
         -196330416, -190702288, -183114016, -173112528, -160358784, -150294128,
         -139096320, -126995880, -114328144, -101492256, -88892840,  -76884536,
         -65736472,  -55621628,  -46624628,  -35238804,  -26224440,  -19274738,
         -14029458,  -10135854,  -5827674,   -3319296,   -1880230,   -1061707,
         -6},
        {-210828752, -209764560, -208940736, -207485328, -204927632, -200475856,
         -196392992, -190812944, -183300624, -173407952, -160790128, -150820560,
         -139709616, -127677056, -115050048, -102223736, -89602680,  -77544552,
         -66324276,  -56122908,  -47034392,  -35520116,  -26403304,  -19381648,
         -14090389,  -10169365,  -5839389,   -3323218,   -1881511,   -1062120,
         -6},
        {-210828752, -209764960, -208941984, -207489216, -204939424, -200510464,
         -196457344, -190929120, -183501920, -173737552, -161290496, -151447952,
         -140459488, -128528240, -115966008, -103158080, -90506904,  -78375592,
         -67050588,  -56727872,  -47516252,  -35838308,  -26598652,  -19495052,
         -14153547,  -10203492,  -5851082,   -3327087,   -1882766,   -1062523,
         -6},
        {-210828752, -209765600, -208944000, -207495456, -204958576, -200568016,
         -196566672, -191132352, -183868160, -174368384, -162309168, -152784224,
         -142129664, -130500376, -118149736, -105414376, -92679024,  -80328376,
         -68699096,  -58044540,  -48519596,  -36460372,  -26960598,  -19696400,
         -14262092,  -10260742,  -5870182,   -3333310,   -1884767,   -1063161,
         -6},
        {-210828752, -209766624, -208947248, -207505712, -204990848, -200668832,
         -196765472, -191522144, -184625552, -175818224, -165011760, -156772320,
         -147807488, -138128816, -127521488, -115591360, -102270704, -88260840,
         -74642488,  -62217976,  -51336332,  -37958768,  -27737038,  -20093356,
         -14463535,  -10362521,  -5902624,   -3343612,   -1888032,   -1064195,
         -6},
        {-210828752, -209767344, -208949504, -207512928, -205014000, -200744384,
         -196920912, -191846704, -185318880, -177353360, -168608208, -163416672,
         -160727552, -165029760, -189074016, -241456784, -178005872, -122049664,
         -90479424,  -70104056,  -55475480,  -39658748,  -28482878,  -20435214,
         -14624802,  -10440065,  -5926123,   -3350872,   -1890299,   -1064907,
         -6},
    },
    {
        {-105414352, -104839424, -104395752, -103614840, -102251280, -99903608,
         -97777512,  -94910408,  -91113920,  -86209240,  -80075680,  -75298248,
         -70016784,  -64317188,  -58324212,  -52191704,  -46086820,  -40171652,
         -34586568,  -29438702,  -24797034,  -18844524,  -14076834,  -10372790,
         -7563107,   -5470588,   -3149178,   -1794887,   -1017097,   -574441,
         -3},
        {-105414352, -104839440, -104395800, -103614984, -102251696, -99904760,
         -97779552,  -94913864,  -91119448,  -86217488,  -80086968,  -75311472,
         -70031648,  -64333264,  -58341004,  -52208708,  -46103540,  -40187592,
         -34601256,  -29451740,  -24808154,  -18852650,  -14082296,  -10376208,
         -7565130,   -5471732,   -3149590,   -1795028,   -1017143,   -574456,
         -3},
        {-105414352, -104839464, -104395864, -103615200, -102252328, -99906536,
         -97782720,  -94919272,  -91128184,  -86230632,  -80105160,  -75332928,
         -70055928,  -64359668,  -58368680,  -52236764,  -46131096,  -40213784,
         -34625276,  -29472926,  -24826094,  -18865612,  -14090921,  -10381562,
         -7568272,   -5473500,   -3150225,   -1795243,   -1017214,   -574479,
         -3},
        {-105414352, -104839520, -104396048, -103615744, -102253960, -99911152,
         -97791032,  -94933688,  -91151920,  -86267216,  -80157128,  -75395304,
         -70127624,  -64438604,  -58452116,  -52321612,  -46214216,  -40292164,
         -34696280,  -29534602,  -24877444,  -18901780,  -14114420,  -10395856,
         -7576529,   -5478088,   -3151847,   -1795790,   -1017393,   -574537,
         -3},
        {-105414352, -104839576, -104396224, -103616288, -102255584, -99915840,
         -97799648,  -94948992,  -91177888,  -86308728,  -80218552,  -75471128,
         -70217064,  -64539224,  -58559996,  -52431912,  -46321788,  -40392244,
         -34785072,  -29609788,  -24938334,  -18942936,  -14140198,  -10411064,
         -7585107,   -5482767,   -3153468,   -1796330,   -1017569,   -574593,
         -3},
        {-105414352, -104839672, -104396504, -103617152, -102258232, -99923720,
         -97814464,  -94976168,  -91226088,  -86390208,  -80347520,  -75638136,
         -70423480,  -64780936,  -58826440,  -52707176,  -46587912,  -40633416,
         -34990872,  -29776222,  -25066836,  -19024146,  -14188261,  -10438183,
         -7599891,   -5490632,   -3156117,   -1797198,   -1017849,   -574683,
         -3},
        {-105414352, -104839816, -104396960, -103618592, -102262736, -99937720,
         -97841944,  -95029800,  -91329808,  -86588032,  -80716136,  -76183440,
         -71203424,  -65834124,  -60122608,  -54107304,  -47891720,  -41697004,
         -35779764,  -30327718,  -25439256,  -19223604,  -14292622,  -10492064,
         -7627469,   -5504662,   -3160627,   -1798637,   -1018307,   -574828,
         -3},
        {-105414352, -104839912, -104397280, -103619608, -102266000, -99948376,
         -97863944,  -95076008,  -91429704,  -86814408,  -81270896,  -77262800,
         -73480376,  -71228232,  -75154784,  -90330848,  -64216360,  -47491208,
         -38189996,  -31457080,  -26014454,  -19455914,  -14394384,  -10538884,
         -7649672,   -5515392,   -3163898,   -1799652,   -1018624,   -574928,
         -3},
    }};

const WORD32 ixheaacd_c_l_table_Q31[31] = {
    68,         12075997,   21473763,   38182223,   67875466,   120571390,
    170045077,  239449100,  336157459,  469148859,  647490682,  794298694,
    962206904,  1145934076, 1335698887, 1518500250, 1681545272, 1816183116,
    1919855175, 1995188112, 2047545319, 2095610977, 2121010179, 2134092347,
    2140740687, 2144096210, 2146410711, 2147144182, 2147376282, 2147449694,
    2147483647};

const WORD32 ixheaacd_sin_table_Q31[8][31] = {
    {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    {750179061, 746245580, 743210706, 737870331, 728548620, 712505595,
     697979429, 678386783, 652421439, 618809885, 576615606, 543587743,
     506876195, 466993926, 424737371, 381140538, 337380886, 294653248,
     254039878, 216406178, 182341865, 138534277, 103401830, 76116249,
     55442477,  40067134,  23038730,  13121396,  7432107,   4196447,
     24},
    {1161262961, 1155790434, 1151559607, 1144096867, 1131016382, 1108345689,
     1087649071, 1059486043, 1021740286, 972201548,  909011376,  858841310,
     802424715,  740453756,  674139243,  605156167,  535487835,  467194735,
     402165023,  341910884,  287454637,  217648816,  161934922,  118876289,
     86395037,   62326858,   35765878,   20345239,   11515596,   6499487,
     37},
    {1716503346, 1710705303, 1706196326, 1698186767, 1683975371, 1658827737,
     1635302807, 1602433676, 1556860619, 1494490287, 1410930784, 1341611885,
     1260794215, 1168902519, 1067487796, 959278806,  847935697,  737527629,
     631893965,  534105311,  446175490,  334574700,  246745780,  179796016,
     129896719,  93282739,   53251977,   30198506,   17061963,   9620003,
     54},
    {1997091453, 1992944085, 1989690856, 1983852214, 1973306896, 1954076825,
     1935447004, 1908416859, 1869093029, 1812001456, 1730062329, 1657802892,
     1569207783, 1463537141, 1341868672, 1207527592, 1065884173, 923429508,
     786466908,  659983219,  547093745,  405656596,  296231282,  214127893,
     153738020,  109885815,  62401443,   35278435,   19896909,   11207148,
     63},
    {2147483647, 2147449694, 2147376282, 2147144182, 2146410711, 2144096210,
     2140740687, 2134092347, 2121010179, 2095610977, 2047545319, 1995188112,
     1919855175, 1816183116, 1681545272, 1518500250, 1335698887, 1145934076,
     962206904,  794298694,  647490682,  469148859,  336157459,  239449100,
     170045077,  120571390,  67875466,   38182223,   21473763,   12075997,
     68},
    {1735452507, 1741201627, 1745677174, 1753637197, 1767790913, 1792923770,
     1816518097, 1849561983, 1895318984, 1957003931, 2034703322, 2089967744,
     2134916861, 2144595142, 2081353083, 1914153740, 1653277521, 1353148056,
     1069993076, 832031145,  643429686,  438118607,  300387816,  207524268,
     144291161,  100823513,  55902457,   31184569,   17456772,   9791496,
     55},
    {302939858, 304635714, 305968630,  308367663,  312727041, 320788003,
     328771547, 340741324, 359192238,  388879484,  440075553, 497870534,
     595446097, 785304289, 1255861595, 2142108211, 997566324, 495493509,
     298429982, 198205829, 139164109,  87059272,   56928133,  38231805,
     26115252,  18039235,  9889297,    5483639,    3059686,   1713093,
     10}};

const WORD32 ixheaacd_cos_table_Q31[8][31] = {
    {2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647,
     2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647,
     2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647,
     2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647,
     2147483647, 2147483647, 2147483647, 2147483647, 2147483647, 2147483647,
     2147483647},
    {2012192186, 2013654279, 2014776381, 2016738305, 2020124483, 2025838542,
     2030889149, 2037517458, 2045979541, 2056394987, 2068622842, 2077546241,
     2086806781, 2096092243, 2105061563, 2113390146, 2120815918, 2127173120,
     2132404689, 2136551985, 2139728362, 2143010563, 2144992793, 2146134277,
     2146767838, 2147109835, 2147360062, 2147443561, 2147470787, 2147479548,
     2147483647},
    {1806420315, 1809926653, 1812621442, 1817341018, 1825510329, 1839362893,
     1851676407, 1867933442, 1888844304, 1914813351, 1945606419, 1968267671,
     1991933883, 2015791223, 2038926752, 2060454327, 2079648720, 2096047494,
     2109490297, 2120090320, 2128157854, 2136425756, 2141369445, 2144190861,
     2145745072, 2146578995, 2147185791, 2147387271, 2147452772, 2147473812,
     2147483647},
    {1290465917, 1298142282, 1304062927, 1314476217, 1332633846, 1363809575,
     1391930582, 1429647625, 1479145371, 1542136441, 1618938029, 1676831408,
     1738414210, 1801486309, 1863372164, 1921319908, 1972990388, 2016863658,
     2052412248, 2080004215, 2100622158, 2121260425, 2133261010, 2139943787,
     2143551460, 2145456676, 2146823292, 2147271308, 2147415867, 2147462101,
     2147483647},
    {789500947,  799912428,  807970493,  822202171,  847198862,  890656938,
     930446620,  984698487,  1057439013, 1152534920, 1272230465, 1365055160,
     1466039887, 1571542254, 1676625923, 1775827450, 1864289931, 1938804777,
     1998288223, 2043552830, 2076625737, 2108821648, 2126953936, 2136781520,
     2141973538, 2144670400, 2146576828, 2147193855, 2147391471, 2147454404,
     2147483647},
    {68,         12075997,   21473763,   38182223,   67875466,   120571390,
     170045077,  239449100,  336157459,  469148859,  647490682,  794298694,
     962206904,  1145934076, 1335698887, 1518500250, 1681545272, 1816183116,
     1919855175, 1995188112, 2047545319, 2095610977, 2121010179, 2134092347,
     2140740687, 2144096210, 2146410711, 2147144182, 2147376282, 2147449694,
     2147483647},
    {-1264867824, -1256941889, -1250718683, -1239533218, -1219262608,
     -1181994236, -1145402996, -1091240803, -1009679140, -884206781,
     -686781195,  -493680916,  -231982790,  111344931,   528824509,
     973499603,   1370532546,  1667536014,  1861934703,  1979750033,
     2048825092,  2102317318,  2126370894,  2137432969,  2142630645,
     2145115530,  2146755909,  2147257214,  2147412694,  2147461326,
     2147483647},
    {-2126008810, -2125766474, -2125575032, -2125228318, -2124591212,
     -2123389054, -2122167592, -2120278606, -2117230964, -2111979821,
     -2101908544, -2088973660, -2063281359, -1998745405, -1741980962,
     151850025,   1901722232,  2089538753,  2126646554,  2138317205,
     2142969755,  2145718225,  2146728955,  2147143299,  2147324850,
     2147407880,  2147460877,  2147476647,  2147481468,  2147482965,
     2147483647}};

const WORD32
    ixheaacd_mps_polyphase_filter_coeff_fix[10 * MAX_NUM_QMF_BANDS_SAC / 2] = {
        0x00000000, 0x0055dba0, 0xffede50e, 0x005b5370, 0xffed978a, 0x006090c3,
        0xffefc9b9, 0x0065fde5, 0xfff0065d, 0x006b47fa, 0xffeff6cb, 0x0070c8a4,
        0xffef7b8b, 0x0075fdec, 0xffeedfa4, 0x007b3874, 0xffee1650, 0x00807993,
        0xffed651e, 0x0085c217, 0xffecc31c, 0x008a7dd6, 0xffebe77b, 0x008f4bfc,
        0xffeb50b3, 0x009424c5, 0xffea9193, 0x0098b855, 0xffe9ca76, 0x009d10bf,
        0xffe940f4, 0x00a1039c, 0xffe88ba8, 0x00a520bb, 0xffe83a08, 0x00a8739d,
        0xffe79e16, 0x00abe79d, 0xffe7746f, 0x00af374c, 0xffe6d466, 0x00b1978d,
        0xffe6afee, 0x00b3d15b, 0xffe65416, 0x00b5c866, 0xffe681c6, 0x00b74c36,
        0xffe66dd0, 0x00b8394b, 0xffe66fac, 0x00b8fe0d, 0xffe69424, 0x00b8c6b0,
        0xffe6fed4, 0x00b85f70, 0xffe75361, 0x00b73aaf, 0xffe80415, 0x00b58c8c,
        0xffe85b4b, 0x00b36acd, 0xffe954d1, 0x00b06b68, 0xffea353b, 0x00acbd2e,
        0xffeb3849, 0x00a85e93, 0xffec8409, 0x00a3508f, 0xffedc419, 0x009da525,
        0xffef2395, 0x0096dcc1, 0xfff0e7f0, 0x008f87aa, 0xfff294c4, 0x00872c62,
        0xfff48701, 0x007e0392, 0xfff681d7, 0x007400b7, 0xfff91fca, 0x006928a0,
        0xfffb42b1, 0x005d36de, 0xfffdfa25, 0x00504f40, 0x00007134, 0x00426f36,
        0x00039608, 0x0033b926, 0x0006b1ce, 0x0023b989, 0x0009aa3e, 0x00131c75,
        0x000d31b4, 0x0000e790, 0x0010bc63, 0xffee183b, 0x001471f7, 0xffda17f2,
        0x0018703e, 0xffc4e365, 0x001c3549, 0xffaea5d6, 0x002064f7, 0xff975c02,
        0x0024dd50, 0xff7ee3f2, 0x00293718, 0xff6542d1, 0x002d8e42, 0xff4aabc9,
        0x00329ab6, 0xff2ef726, 0x003745f9, 0xff120d71, 0x003c1fa3, 0xfef3f6ac,
        0x004103f4, 0xfed4bec3, 0x00465347, 0xfeb48d0d, 0x004b6c45, 0xfe933dc1,
        0x0050b176, 0xfe70b8d1, 0x01b2e41c, 0x09015651, 0x01d78bfb, 0x08d3e41b,
        0x01fd3ba0, 0x08a24899, 0x02244a24, 0x086b1eeb, 0x024bf7a1, 0x082f552e,
        0x0274ba42, 0x07ee507b, 0x029e35b4, 0x07a8127c, 0x02c89900, 0x075ca90c,
        0x02f3e48d, 0x070bbf58, 0x03201115, 0x06b559c3, 0x034d01f0, 0x06593911,
        0x037ad437, 0x05f7fb90, 0x03a966bb, 0x0590a67d, 0x03d8afe6, 0x05237f9c,
        0x04083fec, 0x04b0adcb, 0x043889c5, 0x0437fb0a, 0x04694101, 0x03b8f8db,
        0x049aa82e, 0x03343533, 0x04cc2fce, 0x02a99097, 0x04fe20bd, 0x02186a91,
        0x05303f87, 0x01816e05, 0x05626209, 0x00e42fa2, 0x05950122, 0x0040c496,
        0x05c76fec, 0xff96db90, 0x05f9c050, 0xfee723c7, 0x062bf5eb, 0xfe310658,
        0x065dd569, 0xfd7475d8, 0x068f8b44, 0xfcb1d740, 0x06c0f0c0, 0xfbe8f5be,
        0x06f1825c, 0xfb19b7be, 0x0721bf21, 0xfa44a06a, 0x075112a1, 0xf96916f5,
        0x077fedb2, 0xf887507c, 0x07ad8c26, 0xf79fa13b, 0x07da2b7f, 0xf6b1f3c3,
        0x08061671, 0xf5be0fa9, 0x08303897, 0xf4c473c6, 0x08594887, 0xf3c4e887,
        0x0880ffdc, 0xf2bf6ea5, 0x08a75da4, 0xf1b461ab, 0x08cb4e22, 0xf0a395a0,
        0x08edfeaa, 0xef8d4d7c, 0x090ec1fc, 0xee71b2ff, 0x092d796f, 0xed50a31e,
        0x0949eaac, 0xec2a3f60, 0x0963ed46, 0xeafee7f2, 0x097c1ee8, 0xe9cea84b,
        0x099140a6, 0xe89971b7, 0x09a3e163, 0xe75f8bb8, 0x09b3d77f, 0xe620c476,
        0x09c0e59e, 0xe4de0cb0, 0x09cab9f1, 0xe396a45e, 0x09d19ca8, 0xe24b8f67,
        0x09d52709, 0xe0fc421f, 0x09d5560a, 0xdfa93ab5, 0x09d1fa22, 0xde529087,
        0x09caeb0e, 0xdcf898fb, 0x09c018ce, 0xdb9b5b13, 0x09b18a1c, 0xda3b176b,
        0x099ec3db, 0xd8d7f220, 0x09881dc5, 0xd7722f05, 0x096d0e21, 0xd60a46e6,
        0x094d7ec2, 0xd49fd55f, 0x09299ead, 0xd3337b3e, 0x2e3a7532, 0x6d474e1d,
        0x2faa221c, 0x6d41d963, 0x311af3a4, 0x6d32730f, 0x328cc6f0, 0x6d18520d,
        0x33ff670e, 0x6cf4073e, 0x3572ec70, 0x6cc59baa, 0x36e69691, 0x6c8c4c7a,
        0x385a49c3, 0x6c492216, 0x39ce0477, 0x6bfbdd97, 0x3b415115, 0x6ba4629e,
        0x3cb41218, 0x6b42a863, 0x3e25b17e, 0x6ad73e8d, 0x3f962fb8, 0x6a619c5e,
        0x41058bc5, 0x69e29784, 0x4272a385, 0x6959709d, 0x43de620a, 0x68c7269b,
        0x4547daea, 0x682b39a3, 0x46aea856, 0x6785c24d, 0x4812f848, 0x66d76725,
        0x4973fef1, 0x661fd6b7, 0x4ad237a2, 0x655f63f1, 0x4c2ca3df, 0x64964062,
        0x4d83976c, 0x63c45243, 0x4ed62be2, 0x62ea6473, 0x5024d70e, 0x6207f21f,
        0x516eefb9, 0x611d58a2, 0x52b449dd, 0x602b0c7f, 0x53f495a9, 0x5f30ff5f,
        0x552f8ff6, 0x5e2f6366, 0x56654bdd, 0x5d26be9b, 0x579505f5, 0x5c16d0ae,
        0x58befacd, 0x5b001db7, 0x59e2f69e, 0x59e2f69e, 0x5b001db7, 0x58befacd,
        0x5c16d0ae, 0x579505f5, 0x5d26be9b, 0x56654bdd, 0x5e2f6366, 0x552f8ff6,
        0x5f30ff5f, 0x53f495a9, 0x602b0c7f, 0x52b449dd, 0x611d58a2, 0x516eefb9,
        0x6207f21f, 0x5024d70e, 0x62ea6473, 0x4ed62be2, 0x63c45243, 0x4d83976c,
        0x64964062, 0x4c2ca3df, 0x655f63f1, 0x4ad237a2, 0x661fd6b7, 0x4973fef1,
        0x66d76725, 0x4812f848, 0x6785c24d, 0x46aea856, 0x682b39a3, 0x4547daea,
        0x68c7269b, 0x43de620a, 0x6959709d, 0x4272a385, 0x69e29784, 0x41058bc5,
        0x6a619c5e, 0x3f962fb8, 0x6ad73e8d, 0x3e25b17e, 0x6b42a863, 0x3cb41218,
        0x6ba4629e, 0x3b415115, 0x6bfbdd97, 0x39ce0477, 0x6c492216, 0x385a49c3,
        0x6c8c4c7a, 0x36e69691, 0x6cc59baa, 0x3572ec70, 0x6cf4073e, 0x33ff670e,
        0x6d18520d, 0x328cc6f0, 0x6d32730f, 0x311af3a4, 0x6d41d963, 0x2faa221c,
        0xd1c58ace, 0x09015651, 0xd3337b3e, 0x09299ead, 0xd49fd55f, 0x094d7ec2,
        0xd60a46e6, 0x096d0e21, 0xd7722f05, 0x09881dc5, 0xd8d7f220, 0x099ec3db,
        0xda3b176b, 0x09b18a1c, 0xdb9b5b13, 0x09c018ce, 0xdcf898fb, 0x09caeb0e,
        0xde529087, 0x09d1fa22, 0xdfa93ab5, 0x09d5560a, 0xe0fc421f, 0x09d52709,
        0xe24b8f67, 0x09d19ca8, 0xe396a45e, 0x09cab9f1, 0xe4de0cb0, 0x09c0e59e,
        0xe620c476, 0x09b3d77f, 0xe75f8bb8, 0x09a3e163, 0xe89971b7, 0x099140a6,
        0xe9cea84b, 0x097c1ee8, 0xeafee7f2, 0x0963ed46, 0xec2a3f60, 0x0949eaac,
        0xed50a31e, 0x092d796f, 0xee71b2ff, 0x090ec1fc, 0xef8d4d7c, 0x08edfeaa,
        0xf0a395a0, 0x08cb4e22, 0xf1b461ab, 0x08a75da4, 0xf2bf6ea5, 0x0880ffdc,
        0xf3c4e887, 0x08594887, 0xf4c473c6, 0x08303897, 0xf5be0fa9, 0x08061671,
        0xf6b1f3c3, 0x07da2b7f, 0xf79fa13b, 0x07ad8c26, 0xf887507c, 0x077fedb2,
        0xf96916f5, 0x075112a1, 0xfa44a06a, 0x0721bf21, 0xfb19b7be, 0x06f1825c,
        0xfbe8f5be, 0x06c0f0c0, 0xfcb1d740, 0x068f8b44, 0xfd7475d8, 0x065dd569,
        0xfe310658, 0x062bf5eb, 0xfee723c7, 0x05f9c050, 0xff96db90, 0x05c76fec,
        0x0040c496, 0x05950122, 0x00e42fa2, 0x05626209, 0x01816e05, 0x05303f87,
        0x02186a91, 0x04fe20bd, 0x02a99097, 0x04cc2fce, 0x03343533, 0x049aa82e,
        0x03b8f8db, 0x04694101, 0x0437fb0a, 0x043889c5, 0x04b0adcb, 0x04083fec,
        0x05237f9c, 0x03d8afe6, 0x0590a67d, 0x03a966bb, 0x05f7fb90, 0x037ad437,
        0x06593911, 0x034d01f0, 0x06b559c3, 0x03201115, 0x070bbf58, 0x02f3e48d,
        0x075ca90c, 0x02c89900, 0x07a8127c, 0x029e35b4, 0x07ee507b, 0x0274ba42,
        0x082f552e, 0x024bf7a1, 0x086b1eeb, 0x02244a24, 0x08a24899, 0x01fd3ba0,
        0x08d3e41b, 0x01d78bfb, 0xfe4d1be4, 0x0055dba0, 0xfe70b8d1, 0x0050b176,
        0xfe933dc1, 0x004b6c45, 0xfeb48d0d, 0x00465347, 0xfed4bec3, 0x004103f4,
        0xfef3f6ac, 0x003c1fa3, 0xff120d71, 0x003745f9, 0xff2ef726, 0x00329ab6,
        0xff4aabc9, 0x002d8e42, 0xff6542d1, 0x00293718, 0xff7ee3f2, 0x0024dd50,
        0xff975c02, 0x002064f7, 0xffaea5d6, 0x001c3549, 0xffc4e365, 0x0018703e,
        0xffda17f2, 0x001471f7, 0xffee183b, 0x0010bc63, 0x0000e790, 0x000d31b4,
        0x00131c75, 0x0009aa3e, 0x0023b989, 0x0006b1ce, 0x0033b926, 0x00039608,
        0x00426f36, 0x00007134, 0x00504f40, 0xfffdfa25, 0x005d36de, 0xfffb42b1,
        0x006928a0, 0xfff91fca, 0x007400b7, 0xfff681d7, 0x007e0392, 0xfff48701,
        0x00872c62, 0xfff294c4, 0x008f87aa, 0xfff0e7f0, 0x0096dcc1, 0xffef2395,
        0x009da525, 0xffedc419, 0x00a3508f, 0xffec8409, 0x00a85e93, 0xffeb3849,
        0x00acbd2e, 0xffea353b, 0x00b06b68, 0xffe954d1, 0x00b36acd, 0xffe85b4b,
        0x00b58c8c, 0xffe80415, 0x00b73aaf, 0xffe75361, 0x00b85f70, 0xffe6fed4,
        0x00b8c6b0, 0xffe69424, 0x00b8fe0d, 0xffe66fac, 0x00b8394b, 0xffe66dd0,
        0x00b74c36, 0xffe681c6, 0x00b5c866, 0xffe65416, 0x00b3d15b, 0xffe6afee,
        0x00b1978d, 0xffe6d466, 0x00af374c, 0xffe7746f, 0x00abe79d, 0xffe79e16,
        0x00a8739d, 0xffe83a08, 0x00a520bb, 0xffe88ba8, 0x00a1039c, 0xffe940f4,
        0x009d10bf, 0xffe9ca76, 0x0098b855, 0xffea9193, 0x009424c5, 0xffeb50b3,
        0x008f4bfc, 0xffebe77b, 0x008a7dd6, 0xffecc31c, 0x0085c217, 0xffed651e,
        0x00807993, 0xffee1650, 0x007b3874, 0xffeedfa4, 0x0075fdec, 0xffef7b8b,
        0x0070c8a4, 0xffeff6cb, 0x006b47fa, 0xfff0065d, 0x0065fde5, 0xffefc9b9,
        0x006090c3, 0xffed978a, 0x005b5370, 0xffede50e};

WORD32 ixheaacd_mps_pre_re[64] = {
    0x01fff621, 0x01ffa72e, 0x01ff0956, 0x01fe1caf, 0x01fce15f, 0x01fb5797,
    0x01f97f92, 0x01f7599a, 0x01f4e603, 0x01f2252f, 0x01ef178a, 0x01ebbd8c,
    0x01e817ba, 0x01e426a4, 0x01dfeae6, 0x01db6526, 0x01d69617, 0x01d17e77,
    0x01cc1f0f, 0x01c678b3, 0x01c08c42, 0x01ba5aa6, 0x01b3e4d3, 0x01ad2bc9,
    0x01a63091, 0x019ef43e, 0x019777ee, 0x018fbcc9, 0x0187c400, 0x017f8ecd,
    0x01771e75, 0x016e7444, 0x01659191, 0x015c77bb, 0x01532828, 0x0149a449,
    0x013fed94, 0x0136058a, 0x012bedb1, 0x0121a798, 0x011734d5, 0x010c9704,
    0x0101cfc7, 0x00f6e0c9, 0x00ebcbb9, 0x00e0924d, 0x00d53640, 0x00c9b952,
    0x00be1d48, 0x00b263ed, 0x00a68f10, 0x009aa084, 0x008e9a20, 0x00827dbf,
    0x00764d3e, 0x006a0a7f, 0x005db766, 0x005155d9, 0x0044e7c1, 0x00386f0a,
    0x002bed9e, 0x001f656d, 0x0012d864, 0x00064873};

WORD32 ixheaacd_mps_pre_im[64] = {
    0x00064874, 0x0012d865, 0x001f656e, 0x002beda0, 0x00386f0b, 0x0044e7c3,
    0x005155da, 0x005db767, 0x006a0a80, 0x00764d3f, 0x00827dc0, 0x008e9a22,
    0x009aa086, 0x00a68f12, 0x00b263ef, 0x00be1d49, 0x00c9b953, 0x00d53641,
    0x00e0924f, 0x00ebcbbb, 0x00f6e0cb, 0x0101cfc8, 0x010c9705, 0x011734d6,
    0x0121a79a, 0x012bedb2, 0x0136058b, 0x013fed95, 0x0149a44a, 0x01532829,
    0x015c77bc, 0x01659192, 0x016e7445, 0x01771e76, 0x017f8ece, 0x0187c401,
    0x018fbcca, 0x019777ef, 0x019ef43f, 0x01a63092, 0x01ad2bca, 0x01b3e4d4,
    0x01ba5aa6, 0x01c08c42, 0x01c678b3, 0x01cc1f0f, 0x01d17e77, 0x01d69617,
    0x01db6526, 0x01dfeae6, 0x01e426a5, 0x01e817bb, 0x01ebbd8c, 0x01ef178a,
    0x01f2252f, 0x01f4e603, 0x01f7599a, 0x01f97f92, 0x01fb5797, 0x01fce15f,
    0x01fe1caf, 0x01ff0956, 0x01ffa72f, 0x01fff621};

WORD32 ixheaacd_mps_post_re[128] = {
    0x7fffffff, 0x7ff62182, 0x7fd8878d, 0x7fa736b3, 0x7f62368e, 0x7f0991c2,
    0x7e9d55fa, 0x7e1d93e8, 0x7d8a5f3d, 0x7ce3ceae, 0x7c29fbea, 0x7b5d0399,
    0x7a7d0555, 0x798a23ab, 0x7884840c, 0x776c4ed3, 0x7641af33, 0x7504d33b,
    0x73b5ebc5, 0x72552c78, 0x70e2cbb8, 0x6f5f02a2, 0x6dca0d03, 0x6c24294e,
    0x6a6d9890, 0x68a69e6b, 0x66cf8109, 0x64e8890d, 0x62f20192, 0x60ec3814,
    0x5ed77c6c, 0x5cb420c0, 0x5a827978, 0x5842dd31, 0x55f5a4ad, 0x539b2ac8,
    0x5133cc6b, 0x4ebfe879, 0x4c3fdfc6, 0x49b41504, 0x471cecb5, 0x447acd1d,
    0x41ce1e2f, 0x3f174981, 0x3c56ba37, 0x398cdcf7, 0x36ba1fd6, 0x33def248,
    0x30fbc50c, 0x2e110a1e, 0x2b1f34a6, 0x2826b8e1, 0x25280c14, 0x2223a47a,
    0x1f19f92e, 0x1c0b821b, 0x18f8b7eb, 0x15e213f2, 0x12c8101a, 0x0fab26d5,
    0x0c8bd306, 0x096a8ff0, 0x0647d921, 0x03242a62, 0xffffffa3, 0xfcdbd4e2,
    0xf9b82624, 0xf6956f55, 0xf3742c3f, 0xf054d871, 0xed37ef2c, 0xea1deb55,
    0xe707475d, 0xe3f47d2e, 0xe0e6061c, 0xdddc5ad1, 0xdad7f338, 0xd7d9466d,
    0xd4e0caa9, 0xd1eef532, 0xcf043a47, 0xcc210d0d, 0xc945df80, 0xc6732261,
    0xc3a94524, 0xc0e8b5dc, 0xbe31e130, 0xbb853244, 0xb8e312ae, 0xb64bea62,
    0xb3c01fa3, 0xb14016f3, 0xaecc3304, 0xac64d4aa, 0xaa0a5ac8, 0xa7bd2247,
    0xa57d8603, 0xa34bdebf, 0xa1288316, 0x9f13c772, 0x9d0dfdf7, 0x9b17767f,
    0x99307e88, 0x97596128, 0x95926708, 0x93dbd64e, 0x9235f29c, 0x90a0fd01,
    0x8f1d33f0, 0x8daad334, 0x8c4a13eb, 0x8afb2c79, 0x89be5085, 0x8893b0ea,
    0x877b7bb4, 0x8675dc1a, 0x8582fa74, 0x84a2fc35, 0x83d603e8, 0x831c3129,
    0x8275a09e, 0x81e26bf8, 0x8162a9ea, 0x80f66e27, 0x809dc95f, 0x8058c93f,
    0x8027786a, 0x8009de7a};

WORD32 ixheaacd_mps_post_im[128] = {
    0x00000000, 0x03242ac0, 0x0647d97f, 0x096a904d, 0x0c8bd363, 0x0fab2732,
    0x12c81077, 0x15e2144e, 0x18f8b847, 0x1c0b8277, 0x1f19f989, 0x2223a4d4,
    0x25280c6e, 0x2826b93a, 0x2b1f34fe, 0x2e110a76, 0x30fbc563, 0x33def29e,
    0x36ba202b, 0x398cdd4b, 0x3c56ba89, 0x3f1749d2, 0x41ce1e80, 0x447acd6c,
    0x471ced03, 0x49b41551, 0x4c3fe012, 0x4ebfe8c3, 0x5133ccb3, 0x539b2b0f,
    0x55f5a4f2, 0x5842dd75, 0x5a8279bb, 0x5cb42101, 0x5ed77cab, 0x60ec3851,
    0x62f201cd, 0x64e88947, 0x66cf8141, 0x68a69ea2, 0x6a6d98c4, 0x6c242980,
    0x6dca0d34, 0x6f5f02d0, 0x70e2cbe4, 0x72552ca2, 0x73b5ebed, 0x7504d361,
    0x7641af57, 0x776c4ef5, 0x7884842c, 0x798a23c8, 0x7a7d0571, 0x7b5d03b2,
    0x7c29fc01, 0x7ce3cec3, 0x7d8a5f4f, 0x7e1d93f8, 0x7e9d5608, 0x7f0991ce,
    0x7f623697, 0x7fa736ba, 0x7fd88792, 0x7ff62184, 0x7fffffff, 0x7ff6217f,
    0x7fd88789, 0x7fa736ac, 0x7f623685, 0x7f0991b7, 0x7e9d55ed, 0x7e1d93d7,
    0x7d8a5f2b, 0x7ce3ce9a, 0x7c29fbd3, 0x7b5d0380, 0x7a7d053a, 0x798a238d,
    0x788483ed, 0x776c4eb1, 0x7641af0f, 0x7504d315, 0x73b5eb9d, 0x72552c4e,
    0x70e2cb8b, 0x6f5f0274, 0x6dca0cd3, 0x6c24291c, 0x6a6d985c, 0x68a69e35,
    0x66cf80d1, 0x64e888d4, 0x62f20156, 0x60ec37d6, 0x5ed77c2d, 0x5cb4207f,
    0x5a827936, 0x5842dced, 0x55f5a467, 0x539b2a81, 0x5133cc22, 0x4ebfe82f,
    0x4c3fdf7b, 0x49b414b7, 0x471cec67, 0x447accce, 0x41ce1ddf, 0x3f17492f,
    0x3c56b9e4, 0x398cdca3, 0x36ba1f81, 0x33def1f2, 0x30fbc4b5, 0x2e1109c7,
    0x2b1f344d, 0x2826b888, 0x25280bba, 0x2223a420, 0x1f19f8d3, 0x1c0b81c0,
    0x18f8b78f, 0x15e21395, 0x12c80fbd, 0x0fab2678, 0x0c8bd2a9, 0x096a8f92,
    0x0647d8c3, 0x03242a04};

WORD32 ixheaacd_ia_mps_hyb_filter_coeff_8[QMF_HYBRID_FILT_ORDER] = {
    8011005,   24378459,  48821601, 78019304, 106140545, 126634002, 134217728,
    126634002, 106140545, 78019304, 48821601, 24378459,  8011805};

WORD32 ixheaacd_mps_hyb_filter_coeff_2[QMF_HYBRID_FILT_ORDER] = {
    0,         20395592, 0,         -78309485, 0,        328528819, 536870911,
    328528819, 0,        -78309485, 0,         20395592, 0};

WORD32 ixheaacd_cosine[8][13] = {
    {
        -759250175, -410903263, -46, 410903167, 759250111, 992008063,
        1073741823, 992008063, 759250111, 410903167, -46, -410903263,
        -759250175,
    },
    {
        759249983, 992008191, 140, -992008063, -759250175, 410903167,
        1073741823, 410903167, -759250175, -992008063, 140, 992008191,
        759249983,
    },
    {
        759250367, -992007999, -234, 992008191, -759250047, -410903263,
        1073741823, -410903263, -759250047, 992008191, -234, -992007999,
        759250367,
    },
    {
        -759249791, 410902815, 328, -410903423, 759250239, -992008127,
        1073741823, -992008127, 759250239, -410903423, 328, 410902815,
        -759249791,
    },
    {
        -759250559, 410903679, -422, -410902911, 759249983, -992008063,
        1073741823, -992008063, 759249983, -410902911, -422, 410903679,
        -759250559,
    },
    {
        759249599, -992008319, 516, 992007935, -759250303, -410903071,
        1073741823, -410903071, -759250303, 992007935, 516, -992008319,
        759249599,
    },
    {
        759250751, 992007807, -610, -992008255, -759249919, 410903359,
        1073741823, 410903359, -759249919, -992008255, -610, 992007807,
        759250751,
    },
    {-759249407, -410902399, 704, 410903679, 759250367, 992008191, 1073741823,
     992008191, 759250367, 410903679, 704, -410902399, -759249407}};

WORD32 ixheaacd_sine[8][13] = {
    {
        759250047, 992008063, 1073741823, 992008127, 759250111, 410903231, 0,
        -410903231, -759250111, -992008127, -1073741823, -992008063, -759250047,
    },
    {
        759250303, -410903039, -1073741823, -410903295, 759250047, 992008127, 0,
        -992008127, -759250047, 410903295, 1073741823, 410903039, -759250303,
    },
    {
        -759249855, -410903487, 1073741823, -410903039, -759250175, 992008063,
        0, -992008063, 759250175, 410903039, -1073741823, 410903487, 759249855,
    },
    {
        -759250495, 992008255, -1073741823, 992007999, -759249983, 410903135, 0,
        -410903135, 759249983, -992007999, 1073741823, -992008255, 759250495,
    },
    {
        759249663, -992007871, 1073741823, -992008191, 759250303, -410903295, 0,
        410903295, -759250303, 992008191, -1073741823, 992007871, -759249663,
    },
    {
        759250687, 410902623, -1073741823, 410903551, 759249919, -992008127, 0,
        992008127, -759249919, -410903551, 1073741823, -410902623, -759250687,
    },
    {
        -759249471, 410903903, 1073741823, 410902783, -759250367, -992008063, 0,
        992008063, 759250367, -410902783, -1073741823, -410903903, 759249471,
    },
    {-759250879, -992008447, -1073741823, -992007871, -759249855, -410903039, 0,
     410903039, 759249855, 992007871, 1073741823, 992008447, 759250879}};

WORD32 ixheaacd_cosine2[2][13] = {
    {
        1073741823, 1073741823, 1073741823, 1073741823, 1073741823, 1073741823,
        1073741823, 1073741823, 1073741823, 1073741823, 1073741823, 1073741823,
        1073741823,
    },
    {
        1073741823, -1073741823, 1073741823, -1073741823, 1073741823,
        -1073741823, 1073741823, -1073741823, 1073741823, -1073741823,
        1073741823, -1073741823, 1073741823,
    },
};