Cog/Frameworks/g719/g719/reference_code/decoder/decoder_rom.c

348 lines
14 KiB
C
Executable file

/*-----------------------------------------------------------------------------------*/
/* ITU-T G.722.1 Fullband Extension Annex X. Source Code */
/* © 2008 Ericsson AB. and Polycom Inc. */
/* All rights reserved. */
/*-----------------------------------------------------------------------------------*/
float short_window[480] = {
0.00326538f,0.00982666f,0.0163574f, 0.0229187f, 0.0294495f, 0.0359802f,
0.0425415f, 0.0490723f, 0.055603f, 0.0621338f, 0.0686646f, 0.0751953f,
0.0817261f, 0.0882568f, 0.0947571f, 0.101288f, 0.107788f, 0.114288f,
0.120789f, 0.127289f, 0.133759f, 0.140259f, 0.146729f, 0.153198f,
0.159668f, 0.166138f, 0.172577f, 0.179016f, 0.185455f, 0.191895f,
0.198303f, 0.204712f, 0.211121f, 0.217499f, 0.223877f, 0.230255f,
0.236633f, 0.242981f, 0.249329f, 0.255646f, 0.261993f, 0.26828f,
0.274597f, 0.280884f, 0.28714f, 0.293427f, 0.299652f, 0.305908f,
0.312134f, 0.318329f, 0.324524f, 0.330719f, 0.336884f, 0.343048f,
0.349182f, 0.355316f, 0.36142f, 0.367523f, 0.373596f, 0.379669f,
0.385712f, 0.391724f, 0.397736f, 0.403748f, 0.409729f, 0.41568f,
0.421631f, 0.427551f, 0.433472f, 0.439362f, 0.445221f, 0.45108f,
0.456909f, 0.462708f, 0.468506f, 0.474274f, 0.480042f, 0.485748f,
0.491486f, 0.497162f, 0.502838f, 0.508484f, 0.514099f, 0.519714f,
0.525299f, 0.530853f, 0.536377f, 0.541901f, 0.547394f, 0.552856f,
0.558289f, 0.563721f, 0.569092f, 0.574463f, 0.579803f, 0.585144f,
0.590424f, 0.595703f, 0.600952f, 0.606171f, 0.611359f, 0.616516f,
0.621674f, 0.62677f, 0.631866f, 0.636932f, 0.641937f, 0.646942f,
0.651947f, 0.656891f, 0.661804f, 0.666687f, 0.67157f, 0.676392f,
0.681213f, 0.685974f, 0.690735f, 0.695435f, 0.700134f, 0.704803f,
0.709412f, 0.71402f, 0.718567f, 0.723114f, 0.727631f, 0.732086f,
0.736542f, 0.740936f, 0.745331f, 0.749664f, 0.753998f, 0.75827f,
0.762512f, 0.766754f, 0.770935f, 0.775085f, 0.779205f, 0.783295f,
0.787354f, 0.791351f, 0.795349f, 0.799286f, 0.803223f, 0.807098f,
0.810944f, 0.814758f, 0.818512f, 0.822266f, 0.825989f, 0.829651f,
0.833282f, 0.836884f, 0.840454f, 0.843964f, 0.847473f, 0.850922f,
0.85434f, 0.857727f, 0.861084f, 0.86438f, 0.867645f, 0.87088f,
0.874084f, 0.877258f, 0.880371f, 0.883453f, 0.886505f, 0.889526f,
0.892487f, 0.895416f, 0.898315f, 0.901184f, 0.903992f, 0.906769f,
0.909515f, 0.912201f, 0.914886f, 0.91748f, 0.920074f, 0.922607f,
0.92514f, 0.927582f, 0.930023f, 0.932404f, 0.934753f, 0.937042f,
0.939331f, 0.941559f, 0.943726f, 0.945862f, 0.947968f, 0.950043f,
0.952057f, 0.954041f, 0.955994f, 0.957886f, 0.959747f, 0.961548f,
0.963348f, 0.965088f, 0.966766f, 0.968414f, 0.970032f, 0.971588f,
0.973114f, 0.974609f, 0.976074f, 0.977448f, 0.978821f, 0.980133f,
0.981415f, 0.982666f, 0.983856f, 0.984985f, 0.986115f, 0.987183f,
0.98819f, 0.989166f, 0.990112f, 0.990997f, 0.991852f, 0.992676f,
0.993439f, 0.994171f, 0.994873f, 0.995514f, 0.996094f, 0.996643f,
0.997162f, 0.99765f, 0.998077f, 0.998444f, 0.99881f, 0.999084f,
0.999359f, 0.999573f, 0.999725f, 0.999878f, 0.999939f, 0.999969f,
0.999969f, 0.999939f, 0.999878f, 0.999725f, 0.999573f, 0.999359f,
0.999084f, 0.99881f, 0.998444f, 0.998077f, 0.99765f, 0.997162f,
0.996643f, 0.996094f, 0.995514f, 0.994873f, 0.994171f, 0.993439f,
0.992676f, 0.991852f, 0.990997f, 0.990112f, 0.989166f, 0.98819f,
0.987183f, 0.986115f, 0.984985f, 0.983856f, 0.982666f, 0.981415f,
0.980133f, 0.978821f, 0.977448f, 0.976074f, 0.974609f, 0.973114f,
0.971588f, 0.970032f, 0.968414f, 0.966766f, 0.965088f, 0.963348f,
0.961548f, 0.959747f, 0.957886f, 0.955994f, 0.954041f, 0.952057f,
0.950043f, 0.947968f, 0.945862f, 0.943726f, 0.941559f, 0.939331f,
0.937042f, 0.934753f, 0.932404f, 0.930023f, 0.927582f, 0.92514f,
0.922607f, 0.920074f, 0.91748f, 0.914886f, 0.912201f, 0.909515f,
0.906769f, 0.903992f, 0.901184f, 0.898315f, 0.895416f, 0.892487f,
0.889526f, 0.886505f, 0.883453f, 0.880371f, 0.877258f, 0.874084f,
0.87088f, 0.867645f, 0.86438f, 0.861084f, 0.857727f, 0.85434f,
0.850922f, 0.847473f, 0.843964f, 0.840454f, 0.836884f, 0.833282f,
0.829651f, 0.825989f, 0.822266f, 0.818512f, 0.814758f, 0.810944f,
0.807098f, 0.803223f, 0.799286f, 0.795349f, 0.791351f, 0.787354f,
0.783295f, 0.779205f, 0.775085f, 0.770935f, 0.766754f, 0.762512f,
0.75827f, 0.753998f, 0.749664f, 0.745331f, 0.740936f, 0.736542f,
0.732086f, 0.727631f, 0.723114f, 0.718567f, 0.71402f, 0.709412f,
0.704803f, 0.700134f, 0.695435f, 0.690735f, 0.685974f, 0.681213f,
0.676392f, 0.67157f, 0.666687f, 0.661804f, 0.656891f, 0.651947f,
0.646942f, 0.641937f, 0.636932f, 0.631866f, 0.62677f, 0.621674f,
0.616516f, 0.611359f, 0.606171f, 0.600952f, 0.595703f, 0.590424f,
0.585144f, 0.579803f, 0.574463f, 0.569092f, 0.563721f, 0.558289f,
0.552856f, 0.547394f, 0.541901f, 0.536377f, 0.530853f, 0.525299f,
0.519714f, 0.514099f, 0.508484f, 0.502838f, 0.497162f, 0.491486f,
0.485748f, 0.480042f, 0.474274f, 0.468506f, 0.462708f, 0.456909f,
0.45108f, 0.445221f, 0.439362f, 0.433472f, 0.427551f, 0.421631f,
0.41568f, 0.409729f, 0.403748f, 0.397736f, 0.391724f, 0.385712f,
0.379669f, 0.373596f, 0.367523f, 0.36142f, 0.355316f, 0.349182f,
0.343048f, 0.336884f, 0.330719f, 0.324524f, 0.318329f, 0.312134f,
0.305908f, 0.299652f, 0.293427f, 0.28714f, 0.280884f, 0.274597f,
0.26828f, 0.261993f, 0.255646f, 0.249329f, 0.242981f, 0.236633f,
0.230255f, 0.223877f, 0.217499f, 0.211121f, 0.204712f, 0.198303f,
0.191895f, 0.185455f, 0.179016f, 0.172577f, 0.166138f, 0.159668f,
0.153198f, 0.146729f, 0.140259f, 0.133759f, 0.127289f, 0.120789f,
0.114288f, 0.107788f, 0.101288f, 0.0947571f, 0.0882568f, 0.0817261f,
0.0751953f, 0.0686646f, 0.0621338f, 0.055603f, 0.0490723f, 0.0425415f,
0.0359802f, 0.0294495f, 0.0229187f, 0.0163574f, 0.00982666f,0.00326538f
};
short dic4[256][8] = {
{-2, 0, 0, 0, 0, 0, 0, 0},
{ 0, -2, 0, 0, 0, 0, 0, 0},
{ 0, 0, -2, 0, 0, 0, 0, 0},
{ 0, 0, 0, -2, 0, 0, 0, 0},
{ 0, 0, 0, 0, -2, 0, 0, 0},
{ 0, 0, 0, 0, 0, -2, 0, 0},
{ 0, 0, 0, 0, 0, 0, -2, 0},
{ 0, 0, 0, 0, 0, 0, 0, -2},
{ 2, 0, 0, 0, 0, 0, 0, 0},
{ 0, 2, 0, 0, 0, 0, 0, 0},
{ 0, 0, 2, 0, 0, 0, 0, 0},
{ 0, 0, 0, 2, 0, 0, 0, 0},
{ 0, 0, 0, 0, 2, 0, 0, 0},
{ 0, 0, 0, 0, 0, 2, 0, 0},
{ 0, 0, 0, 0, 0, 0, 2, 0},
{ 0, 0, 0, 0, 0, 0, 0, 2},
{-2, -2, 0, 0, 0, 0, 0, 0},
{-2, 0, -2, 0, 0, 0, 0, 0},
{-2, 0, 0, -2, 0, 0, 0, 0},
{-2, 0, 0, 0, -2, 0, 0, 0},
{-2, 0, 0, 0, 0, -2, 0, 0},
{-2, 0, 0, 0, 0, 0, -2, 0},
{-2, 0, 0, 0, 0, 0, 0, -2},
{ 0, -2, -2, 0, 0, 0, 0, 0},
{ 0, -2, 0, -2, 0, 0, 0, 0},
{ 0, -2, 0, 0, -2, 0, 0, 0},
{ 0, -2, 0, 0, 0, -2, 0, 0},
{ 0, -2, 0, 0, 0, 0, -2, 0},
{ 0, -2, 0, 0, 0, 0, 0, -2},
{ 0, 0, -2, -2, 0, 0, 0, 0},
{ 0, 0, -2, 0, -2, 0, 0, 0},
{ 0, 0, -2, 0, 0, -2, 0, 0},
{ 0, 0, -2, 0, 0, 0, -2, 0},
{ 0, 0, -2, 0, 0, 0, 0, -2},
{ 0, 0, 0, -2, -2, 0, 0, 0},
{ 0, 0, 0, -2, 0, -2, 0, 0},
{ 0, 0, 0, -2, 0, 0, -2, 0},
{ 0, 0, 0, -2, 0, 0, 0, -2},
{ 0, 0, 0, 0, -2, -2, 0, 0},
{ 0, 0, 0, 0, -2, 0, -2, 0},
{ 0, 0, 0, 0, -2, 0, 0, -2},
{ 0, 0, 0, 0, 0, -2, -2, 0},
{ 0, 0, 0, 0, 0, -2, 0, -2},
{ 0, 0, 0, 0, 0, 0, -2, -2},
{-2, 2, 0, 0, 0, 0, 0, 0},
{-2, 0, 2, 0, 0, 0, 0, 0},
{-2, 0, 0, 2, 0, 0, 0, 0},
{-2, 0, 0, 0, 2, 0, 0, 0},
{-2, 0, 0, 0, 0, 2, 0, 0},
{-2, 0, 0, 0, 0, 0, 2, 0},
{-2, 0, 0, 0, 0, 0, 0, 2},
{ 0, -2, 2, 0, 0, 0, 0, 0},
{ 0, -2, 0, 2, 0, 0, 0, 0},
{ 0, -2, 0, 0, 2, 0, 0, 0},
{ 0, -2, 0, 0, 0, 2, 0, 0},
{ 0, -2, 0, 0, 0, 0, 2, 0},
{ 0, -2, 0, 0, 0, 0, 0, 2},
{ 0, 0, -2, 2, 0, 0, 0, 0},
{ 0, 0, -2, 0, 2, 0, 0, 0},
{ 0, 0, -2, 0, 0, 2, 0, 0},
{ 0, 0, -2, 0, 0, 0, 2, 0},
{ 0, 0, -2, 0, 0, 0, 0, 2},
{ 0, 0, 0, -2, 2, 0, 0, 0},
{ 0, 0, 0, -2, 0, 2, 0, 0},
{ 0, 0, 0, -2, 0, 0, 2, 0},
{ 0, 0, 0, -2, 0, 0, 0, 2},
{ 0, 0, 0, 0, -2, 2, 0, 0},
{ 0, 0, 0, 0, -2, 0, 2, 0},
{ 0, 0, 0, 0, -2, 0, 0, 2},
{ 0, 0, 0, 0, 0, -2, 2, 0},
{ 0, 0, 0, 0, 0, -2, 0, 2},
{ 0, 0, 0, 0, 0, 0, -2, 2},
{ 2, -2, 0, 0, 0, 0, 0, 0},
{ 2, 0, -2, 0, 0, 0, 0, 0},
{ 2, 0, 0, -2, 0, 0, 0, 0},
{ 2, 0, 0, 0, -2, 0, 0, 0},
{ 2, 0, 0, 0, 0, -2, 0, 0},
{ 2, 0, 0, 0, 0, 0, -2, 0},
{ 2, 0, 0, 0, 0, 0, 0, -2},
{ 0, 2, -2, 0, 0, 0, 0, 0},
{ 0, 2, 0, -2, 0, 0, 0, 0},
{ 0, 2, 0, 0, -2, 0, 0, 0},
{ 0, 2, 0, 0, 0, -2, 0, 0},
{ 0, 2, 0, 0, 0, 0, -2, 0},
{ 0, 2, 0, 0, 0, 0, 0, -2},
{ 0, 0, 2, -2, 0, 0, 0, 0},
{ 0, 0, 2, 0, -2, 0, 0, 0},
{ 0, 0, 2, 0, 0, -2, 0, 0},
{ 0, 0, 2, 0, 0, 0, -2, 0},
{ 0, 0, 2, 0, 0, 0, 0, -2},
{ 0, 0, 0, 2, -2, 0, 0, 0},
{ 0, 0, 0, 2, 0, -2, 0, 0},
{ 0, 0, 0, 2, 0, 0, -2, 0},
{ 0, 0, 0, 2, 0, 0, 0, -2},
{ 0, 0, 0, 0, 2, -2, 0, 0},
{ 0, 0, 0, 0, 2, 0, -2, 0},
{ 0, 0, 0, 0, 2, 0, 0, -2},
{ 0, 0, 0, 0, 0, 2, -2, 0},
{ 0, 0, 0, 0, 0, 2, 0, -2},
{ 0, 0, 0, 0, 0, 0, 2, -2},
{ 2, 2, 0, 0, 0, 0, 0, 0},
{ 2, 0, 2, 0, 0, 0, 0, 0},
{ 2, 0, 0, 2, 0, 0, 0, 0},
{ 2, 0, 0, 0, 2, 0, 0, 0},
{ 2, 0, 0, 0, 0, 2, 0, 0},
{ 2, 0, 0, 0, 0, 0, 2, 0},
{ 2, 0, 0, 0, 0, 0, 0, 2},
{ 0, 2, 2, 0, 0, 0, 0, 0},
{ 0, 2, 0, 2, 0, 0, 0, 0},
{ 0, 2, 0, 0, 2, 0, 0, 0},
{ 0, 2, 0, 0, 0, 2, 0, 0},
{ 0, 2, 0, 0, 0, 0, 2, 0},
{ 0, 2, 0, 0, 0, 0, 0, 2},
{ 0, 0, 2, 2, 0, 0, 0, 0},
{ 0, 0, 2, 0, 2, 0, 0, 0},
{ 0, 0, 2, 0, 0, 2, 0, 0},
{ 0, 0, 2, 0, 0, 0, 2, 0},
{ 0, 0, 2, 0, 0, 0, 0, 2},
{ 0, 0, 0, 2, 2, 0, 0, 0},
{ 0, 0, 0, 2, 0, 2, 0, 0},
{ 0, 0, 0, 2, 0, 0, 2, 0},
{ 0, 0, 0, 2, 0, 0, 0, 2},
{ 0, 0, 0, 0, 2, 2, 0, 0},
{ 0, 0, 0, 0, 2, 0, 2, 0},
{ 0, 0, 0, 0, 2, 0, 0, 2},
{ 0, 0, 0, 0, 0, 2, 2, 0},
{ 0, 0, 0, 0, 0, 2, 0, 2},
{ 0, 0, 0, 0, 0, 0, 2, 2},
{-1, -1, 1, 1, 1, 1, 1, 1},
{-1, 1, -1, 1, 1, 1, 1, 1},
{-1, 1, 1, -1, 1, 1, 1, 1},
{-1, 1, 1, 1, -1, 1, 1, 1},
{-1, 1, 1, 1, 1, -1, 1, 1},
{-1, 1, 1, 1, 1, 1, -1, 1},
{-1, 1, 1, 1, 1, 1, 1, -1},
{ 1, -1, -1, 1, 1, 1, 1, 1},
{ 1, -1, 1, -1, 1, 1, 1, 1},
{ 1, -1, 1, 1, -1, 1, 1, 1},
{ 1, -1, 1, 1, 1, -1, 1, 1},
{ 1, -1, 1, 1, 1, 1, -1, 1},
{ 1, -1, 1, 1, 1, 1, 1, -1},
{ 1, 1, -1, -1, 1, 1, 1, 1},
{ 1, 1, -1, 1, -1, 1, 1, 1},
{ 1, 1, -1, 1, 1, -1, 1, 1},
{ 1, 1, -1, 1, 1, 1, -1, 1},
{ 1, 1, -1, 1, 1, 1, 1, -1},
{ 1, 1, 1, -1, -1, 1, 1, 1},
{ 1, 1, 1, -1, 1, -1, 1, 1},
{ 1, 1, 1, -1, 1, 1, -1, 1},
{ 1, 1, 1, -1, 1, 1, 1, -1},
{ 1, 1, 1, 1, -1, -1, 1, 1},
{ 1, 1, 1, 1, -1, 1, -1, 1},
{ 1, 1, 1, 1, -1, 1, 1, -1},
{ 1, 1, 1, 1, 1, -1, -1, 1},
{ 1, 1, 1, 1, 1, -1, 1, -1},
{ 1, 1, 1, 1, 1, 1, -1, -1},
{-1, -1, -1, -1, 1, 1, 1, 1},
{-1, -1, -1, 1, -1, 1, 1, 1},
{-1, -1, -1, 1, 1, -1, 1, 1},
{-1, -1, -1, 1, 1, 1, -1, 1},
{-1, -1, -1, 1, 1, 1, 1, -1},
{-1, -1, 1, -1, -1, 1, 1, 1},
{-1, -1, 1, -1, 1, -1, 1, 1},
{-1, -1, 1, -1, 1, 1, -1, 1},
{-1, -1, 1, -1, 1, 1, 1, -1},
{-1, -1, 1, 1, -1, -1, 1, 1},
{-1, -1, 1, 1, -1, 1, -1, 1},
{-1, -1, 1, 1, -1, 1, 1, -1},
{-1, -1, 1, 1, 1, 1, -1, -1},
{-1, -1, 1, 1, 1, -1, 1, -1},
{-1, -1, 1, 1, 1, -1, -1, 1},
{-1, 1, -1, -1, -1, 1, 1, 1},
{-1, 1, -1, -1, 1, -1, 1, 1},
{-1, 1, -1, -1, 1, 1, -1, 1},
{-1, 1, -1, -1, 1, 1, 1, -1},
{-1, 1, -1, 1, -1, -1, 1, 1},
{-1, 1, -1, 1, -1, 1, -1, 1},
{-1, 1, -1, 1, -1, 1, 1, -1},
{-1, 1, -1, 1, 1, 1, -1, -1},
{-1, 1, -1, 1, 1, -1, 1, -1},
{-1, 1, -1, 1, 1, -1, -1, 1},
{-1, 1, 1, 1, 1, -1, -1, -1},
{-1, 1, 1, 1, -1, 1, -1, -1},
{-1, 1, 1, 1, -1, -1, 1, -1},
{-1, 1, 1, 1, -1, -1, -1, 1},
{-1, 1, 1, -1, -1, -1, 1, 1},
{-1, 1, 1, -1, -1, 1, -1, 1},
{-1, 1, 1, -1, -1, 1, 1, -1},
{-1, 1, 1, -1, 1, 1, -1, -1},
{-1, 1, 1, -1, 1, -1, 1, -1},
{-1, 1, 1, -1, 1, -1, -1, 1},
{ 1, 1, 1, 1, -1, -1, -1, -1},
{ 1, 1, 1, -1, 1, -1, -1, -1},
{ 1, 1, 1, -1, -1, 1, -1, -1},
{ 1, 1, 1, -1, -1, -1, 1, -1},
{ 1, 1, 1, -1, -1, -1, -1, 1},
{ 1, 1, -1, 1, 1, -1, -1, -1},
{ 1, 1, -1, 1, -1, 1, -1, -1},
{ 1, 1, -1, 1, -1, -1, 1, -1},
{ 1, 1, -1, 1, -1, -1, -1, 1},
{ 1, 1, -1, -1, 1, 1, -1, -1},
{ 1, 1, -1, -1, 1, -1, 1, -1},
{ 1, 1, -1, -1, 1, -1, -1, 1},
{ 1, 1, -1, -1, -1, -1, 1, 1},
{ 1, 1, -1, -1, -1, 1, -1, 1},
{ 1, 1, -1, -1, -1, 1, 1, -1},
{ 1, -1, 1, 1, 1, -1, -1, -1},
{ 1, -1, 1, 1, -1, 1, -1, -1},
{ 1, -1, 1, 1, -1, -1, 1, -1},
{ 1, -1, 1, 1, -1, -1, -1, 1},
{ 1, -1, 1, -1, 1, 1, -1, -1},
{ 1, -1, 1, -1, 1, -1, 1, -1},
{ 1, -1, 1, -1, 1, -1, -1, 1},
{ 1, -1, 1, -1, -1, -1, 1, 1},
{ 1, -1, 1, -1, -1, 1, -1, 1},
{ 1, -1, 1, -1, -1, 1, 1, -1},
{ 1, -1, -1, -1, -1, 1, 1, 1},
{ 1, -1, -1, -1, 1, -1, 1, 1},
{ 1, -1, -1, -1, 1, 1, -1, 1},
{ 1, -1, -1, -1, 1, 1, 1, -1},
{ 1, -1, -1, 1, 1, 1, -1, -1},
{ 1, -1, -1, 1, 1, -1, 1, -1},
{ 1, -1, -1, 1, 1, -1, -1, 1},
{ 1, -1, -1, 1, -1, -1, 1, 1},
{ 1, -1, -1, 1, -1, 1, -1, 1},
{ 1, -1, -1, 1, -1, 1, 1, -1},
{ 1, 1, -1, -1, -1, -1, -1, -1},
{ 1, -1, 1, -1, -1, -1, -1, -1},
{ 1, -1, -1, 1, -1, -1, -1, -1},
{ 1, -1, -1, -1, 1, -1, -1, -1},
{ 1, -1, -1, -1, -1, 1, -1, -1},
{ 1, -1, -1, -1, -1, -1, 1, -1},
{ 1, -1, -1, -1, -1, -1, -1, 1},
{-1, 1, 1, -1, -1, -1, -1, -1},
{-1, 1, -1, 1, -1, -1, -1, -1},
{-1, 1, -1, -1, 1, -1, -1, -1},
{-1, 1, -1, -1, -1, 1, -1, -1},
{-1, 1, -1, -1, -1, -1, 1, -1},
{-1, 1, -1, -1, -1, -1, -1, 1},
{-1, -1, 1, 1, -1, -1, -1, -1},
{-1, -1, 1, -1, 1, -1, -1, -1},
{-1, -1, 1, -1, -1, 1, -1, -1},
{-1, -1, 1, -1, -1, -1, 1, -1},
{-1, -1, 1, -1, -1, -1, -1, 1},
{-1, -1, -1, 1, 1, -1, -1, -1},
{-1, -1, -1, 1, -1, 1, -1, -1},
{-1, -1, -1, 1, -1, -1, 1, -1},
{-1, -1, -1, 1, -1, -1, -1, 1},
{-1, -1, -1, -1, 1, 1, -1, -1},
{-1, -1, -1, -1, 1, -1, 1, -1},
{-1, -1, -1, -1, 1, -1, -1, 1},
{-1, -1, -1, -1, -1, 1, 1, -1},
{-1, -1, -1, -1, -1, 1, -1, 1},
{-1, -1, -1, -1, -1, -1, 1, 1},
{-1, -1, -1, -1, -1, -1, -1, -1},
{ 1, 1, 1, 1, 1, 1, 1, 1}
};