#include "kmModelData.h" //loop variables const int szData[Nsegs] = {szData0, szData1, szData2, szData3, szData4}; const int tierOffsets[Ntiers] = {tierOffset0, tierOffset1, tierOffset2}; //CUDA tier processing variables const int tierIdx0[2] = {30, 4}; const int tierIdx1[1] = {35}; const int tierIdx2[3] = {35, 32, 26}; const int tierIdx3[3] = {20, 27, 16}; const int tierIdx4[3] = {20, 27, 34}; const int* TierIdxPtrArr[Nsegs] = {&tierIdx0[0], &tierIdx1[0], &tierIdx2[0], &tierIdx3[0], &tierIdx4[0]}; const int tierIdxN[Nsegs] = {2, 1, 3, 3, 3}; //Default kinematic model configuration: points and norms by segment const float Data0[4][szData0] = { { 0.002764f, 0.005804f, 0.015107f, 0.014045f, 0.003342f, -0.020860f, -0.015258f, -0.031529f, -0.021339f, -0.021279f, -0.011115f, -0.024749f, -0.011054f, -0.008858f, -0.012011f, -0.021266f, -0.061188f, -0.061232f, -0.062642f, -0.053378f, -0.056225f, -0.055818f, -0.051005f, -0.099711f, -0.097519f, -0.092144f, -0.100377f, -0.101718f, -0.049440f, -0.056757f, -0.054789f, -0.054230f, -0.052858f, -0.063597f, -0.039975f, -0.070464f, -0.081725f, -0.042681f, -0.110632f, -0.108019f, -0.111866f, -0.109683f, -0.121889f, -0.130721f, -0.126189f, -0.121613f, -0.121821f, -0.125540f, -0.116597f, -0.105864f, -0.107405f, -0.104789f, -0.105232f, -0.116378f, -0.114587f, -0.116663f, -0.122665f, -0.118069f, -0.119872f, -0.132921f, -0.130417f, -0.129252f, -0.125930f, -0.121064f, -0.117036f, -0.122091f, -0.134777f, -0.135613f, -0.139185f, -0.137235f, -0.137122f, -0.141383f, -0.139900f, -0.142463f, -0.139113f, -0.129270f, -0.116035f, -0.114388f, -0.114548f, -0.117739f, -0.117549f, -0.092531f, -0.093164f, -0.090002f, -0.096412f, -0.100238f, -0.094880f, -0.089825f, -0.098487f, -0.109643f, -0.103673f, -0.111544f, -0.115279f, -0.072952f, -0.100997f, -0.079708f, -0.076656f, -0.064775f, -0.078767f, -0.074308f, -0.081030f, -0.083113f, -0.101971f, -0.095413f, -0.102228f, -0.109342f, -0.112362f, -0.114498f, -0.131509f, -0.115710f, -0.116109f, -0.118445f, -0.112249f, -0.087836f, -0.107234f, -0.073700f, -0.035334f, -0.044402f, -0.075236f, -0.068047f, -0.065957f, -0.004433f, -0.036528f, -0.034969f, -0.033209f, -0.003332f, -0.003994f, -0.004832f}, { -0.119480f, -0.124978f, -0.131801f, -0.135474f, -0.137918f, -0.132935f, -0.128331f, -0.123943f, -0.120945f, -0.116240f, -0.118185f, 0.171468f, 0.170834f, 0.167630f, 0.163090f, 0.152901f, 0.139830f, 0.138740f, 0.144631f, 0.151765f, 0.154825f, 0.159666f, 0.162682f, -0.094815f, -0.097710f, -0.104249f, -0.101575f, -0.102304f, -0.127520f, -0.120577f, -0.114188f, -0.109725f, -0.108577f, -0.101879f, -0.110518f, -0.111972f, -0.112103f, -0.129604f, -0.083845f, -0.083381f, -0.074119f, -0.095442f, -0.080400f, -0.060398f, -0.066261f, 0.068149f, 0.061995f, 0.045486f, 0.072763f, 0.073020f, 0.055907f, 0.037152f, 0.027137f, -0.029327f, -0.042639f, -0.026125f, -0.012940f, 0.012079f, 0.027829f, 0.011262f, 0.002694f, -0.025449f, -0.031599f, -0.046481f, -0.058328f, -0.055048f, -0.048557f, -0.036806f, -0.024252f, 0.025183f, 0.013492f, -0.007244f, -0.013389f, 0.003664f, -0.030818f, -0.014486f, 0.034130f, -0.050022f, -0.046060f, -0.021008f, -0.002162f, 0.075139f, 0.064437f, 0.073673f, 0.091179f, 0.109152f, 0.129153f, 0.135831f, 0.126120f, 0.101961f, 0.112469f, 0.091652f, 0.079544f, 0.149290f, 0.119854f, 0.131712f, 0.125828f, 0.133157f, 0.100013f, 0.122677f, 0.086530f, 0.108996f, 0.099208f, 0.056236f, 0.051445f, 0.038232f, 0.049426f, 0.056199f, 0.043446f, -0.083069f, -0.080878f, -0.073970f, -0.095424f, -0.112193f, -0.097127f, -0.098924f, 0.167741f, 0.159478f, 0.146686f, 0.139267f, 0.135413f, 0.152751f, 0.158930f, -0.112160f, -0.128493f, -0.134896f, -0.123880f, -0.115904f}, { -0.092274f, -0.047779f, -0.016609f, 0.009175f, 0.047953f, 0.054653f, 0.012295f, 0.015075f, -0.029713f, -0.079048f, -0.085842f, -0.004616f, 0.040322f, 0.068821f, 0.088768f, 0.125406f, 0.133667f, 0.127837f, 0.078429f, 0.073062f, 0.037914f, -0.006014f, -0.014599f, -0.062887f, -0.036331f, -0.005850f, 0.029380f, 0.064800f, 0.067054f, 0.040052f, -0.010484f, -0.043287f, -0.052627f, -0.085762f, -0.084210f, -0.000525f, 0.024086f, 0.067170f, 0.092449f, 0.044272f, 0.038541f, 0.006653f, -0.017253f, -0.020917f, -0.066073f, -0.017403f, -0.006937f, 0.029952f, 0.027715f, 0.056086f, 0.062425f, 0.079643f, 0.098136f, 0.098065f, 0.069950f, 0.063265f, 0.053503f, 0.064324f, 0.052888f, 0.025712f, 0.030252f, 0.014783f, 0.021943f, 0.035380f, 0.045925f, 0.016783f, -0.023983f, -0.046256f, -0.042447f, -0.024160f, 0.008307f, -0.023340f, -0.015073f, -0.042980f, -0.033102f, 0.023076f, 0.057109f, 0.061030f, 0.082742f, 0.096984f, 0.097957f, 0.133914f, 0.101082f, 0.091957f, 0.065001f, 0.045771f, 0.030360f, 0.020714f, -0.009569f, -0.015217f, 0.012272f, 0.023603f, 0.011309f, 0.013837f, 0.028511f, 0.070225f, 0.081469f, 0.100968f, 0.123522f, 0.136633f, 0.115714f, 0.081791f, 0.049325f, 0.099858f, 0.115865f, 0.127362f, 0.056074f, 0.047946f, -0.006322f, -0.077503f, -0.052498f, -0.041099f, -0.004623f, 0.049684f, -0.016528f, -0.085152f, 0.002979f, 0.044891f, 0.027886f, 0.080292f, 0.135338f, 0.125951f, 0.081358f, -0.072875f, 0.048133f, 0.038195f, -0.039895f, -0.119632f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Norms0[4][szData0] = { { -0.126749f, -0.183170f, -0.260639f, -0.239892f, -0.229024f, -0.263892f, -0.280792f, -0.295649f, -0.267227f, -0.266107f, -0.170043f, -0.239017f, -0.107312f, 0.086314f, -0.022920f, -0.005595f, -0.707944f, -0.816628f, -0.689332f, -0.542048f, -0.476174f, -0.465376f, -0.453577f, -0.480014f, -0.541979f, -0.410722f, -0.790363f, -0.932644f, -0.236135f, -0.297290f, -0.319979f, -0.331781f, -0.328168f, -0.367053f, -0.390692f, -0.335365f, -0.416320f, -0.327536f, -1.098385f, -1.048473f, -1.053645f, -0.756523f, -0.989684f, -1.059162f, -1.043273f, -0.949073f, -0.913807f, -1.030065f, -1.034694f, -0.975758f, -0.976731f, -0.984244f, -0.931045f, -1.099921f, -1.114042f, -1.073761f, -1.067101f, -1.005506f, -0.991665f, -1.075469f, -1.080208f, -1.066970f, -1.080662f, -1.091044f, -1.062638f, -1.060118f, -1.091404f, -1.085665f, -1.112513f, -1.052314f, -1.132761f, -1.134428f, -1.123312f, -1.141278f, -1.110922f, -1.081317f, -0.988370f, -1.094862f, -1.111946f, -1.098031f, -1.098736f, -0.948934f, -1.018297f, -1.001157f, -0.965348f, -0.965850f, -0.907293f, -0.829163f, -0.940423f, -1.023139f, -1.035919f, -1.076536f, -1.032007f, -0.562005f, -0.971175f, -0.732727f, -0.862868f, -0.808219f, -0.973769f, -0.908420f, -0.965081f, -0.955995f, -0.969151f, -1.053517f, -1.005951f, -1.065178f, -0.981732f, -0.988641f, -1.069073f, -0.785194f, -0.944587f, -0.983538f, -0.712178f, -0.553276f, -0.591429f, -0.329850f, -0.397039f, -0.453972f, -0.579839f, -0.798574f, -0.824258f, -0.047127f, -0.407537f, -0.346004f, -0.326939f, -0.247843f, -0.219017f, -0.014796f}, { -1.096893f, -1.101205f, -1.081477f, -1.095247f, -1.104304f, -1.092941f, -1.083570f, -1.081462f, -1.083915f, -1.085768f, -1.104677f, 1.147995f, 1.164446f, 1.127744f, 1.145073f, 1.094161f, 0.901321f, 0.765909f, 0.901169f, 1.014866f, 1.056625f, 1.066917f, 1.074902f, -1.017489f, -0.985782f, -1.047419f, -0.825103f, -0.604141f, -1.037855f, -1.080880f, -1.064251f, -1.058717f, -1.057433f, -1.035409f, -1.046920f, -1.058314f, -1.049584f, -1.018155f, -0.238448f, -0.409343f, -0.372427f, -0.838848f, -0.539984f, -0.431863f, -0.405599f, 0.515779f, 0.641347f, 0.324877f, 0.421931f, 0.312411f, 0.294904f, 0.362282f, 0.589700f, -0.189797f, -0.070926f, -0.189158f, -0.129899f, 0.186243f, 0.261079f, -0.048716f, -0.114817f, -0.228133f, -0.231156f, -0.280298f, -0.357088f, -0.263193f, -0.337964f, -0.312733f, -0.215153f, 0.358016f, -0.030840f, -0.028495f, -0.105410f, -0.039384f, -0.242248f, -0.202546f, 0.272383f, -0.154227f, -0.020135f, -0.146202f, 0.185120f, 0.588165f, 0.437551f, 0.428330f, 0.332287f, 0.438445f, 0.700531f, 0.808221f, 0.590944f, 0.390774f, 0.463073f, 0.353758f, 0.478930f, 1.017204f, 0.599164f, 0.725809f, 0.585173f, 0.663954f, 0.436728f, 0.528657f, 0.528279f, 0.350763f, 0.365042f, 0.283968f, 0.375505f, 0.290769f, 0.288875f, 0.306480f, 0.391188f, -0.813800f, -0.610295f, -0.563892f, -0.893341f, -0.992300f, -0.945089f, -1.040637f, 1.097657f, 1.066172f, 1.002713f, 0.782322f, 0.770015f, 1.114079f, 1.076363f, -1.062313f, -1.072977f, -1.092371f, -1.093923f, -1.095503f}, { -0.259276f, -0.153935f, -0.165201f, -0.110628f, -0.062071f, -0.084356f, -0.118121f, -0.100678f, -0.140300f, -0.087742f, -0.125536f, 0.017425f, 0.099222f, 0.331731f, 0.277424f, 0.462726f, 0.090785f, -0.061996f, 0.265271f, 0.200575f, 0.139891f, 0.089685f, 0.061494f, -0.126466f, -0.153724f, -0.100399f, 0.050012f, -0.175452f, -0.302318f, -0.101235f, -0.174968f, -0.192889f, -0.207149f, -0.276644f, -0.072068f, -0.185633f, -0.071697f, -0.292462f, 0.071428f, 0.140680f, 0.193666f, 0.176788f, -0.206237f, -0.024228f, 0.143229f, 0.321619f, 0.185699f, 0.352092f, 0.215276f, 0.487335f, 0.495036f, 0.427277f, 0.137585f, 0.015038f, 0.086927f, 0.302814f, 0.360684f, 0.491082f, 0.483667f, 0.354353f, 0.320231f, 0.296923f, 0.242544f, 0.102223f, 0.174687f, 0.293875f, 0.009310f, -0.192081f, -0.169686f, 0.203552f, 0.090388f, 0.092465f, 0.141237f, -0.020264f, -0.137428f, 0.264402f, 0.484037f, 0.227797f, 0.150009f, -0.055839f, 0.051081f, 0.075793f, 0.030986f, 0.301756f, 0.497225f, 0.422973f, 0.146600f, 0.056355f, 0.264442f, 0.271334f, -0.077138f, 0.014018f, 0.021316f, 0.100738f, 0.142760f, 0.539921f, 0.494837f, 0.507842f, -0.169044f, -0.236781f, -0.036965f, 0.505614f, 0.470431f, -0.073853f, -0.163902f, -0.022980f, 0.488347f, 0.464158f, -0.013242f, -0.211003f, 0.130101f, -0.148763f, 0.053802f, -0.044009f, -0.232203f, -0.303245f, 0.069509f, 0.145671f, 0.140113f, 0.310099f, -0.013854f, 0.398026f, 0.225123f, -0.094472f, -0.099081f, -0.114955f, -0.152951f, -0.320346f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Data1[4][szData1] = { { -0.024261f, -0.064449f, -0.056831f, -0.052996f, -0.062128f, -0.096263f, -0.104745f, -0.085263f, -0.061877f, -0.045494f, -0.049201f, -0.051396f, -0.039144f, -0.073824f, -0.126176f, -0.116359f, -0.127022f, -0.124255f, -0.114117f, -0.123200f, -0.120745f, -0.122995f, -0.137949f, -0.141046f, -0.145220f, -0.149002f, -0.152496f, -0.158186f, -0.154902f, -0.152805f, -0.142768f, -0.138628f, -0.143912f, -0.149899f, -0.141882f, -0.135423f, -0.137477f, -0.135362f, -0.147262f, -0.135694f, -0.153239f, -0.151770f, -0.129836f, -0.143406f, -0.146519f, -0.152702f, -0.142642f, -0.136890f, -0.133366f, -0.091321f, -0.099900f, -0.084426f, -0.070712f, -0.086250f, -0.104763f, -0.108284f, -0.117500f, -0.126461f, -0.139062f, -0.086727f, -0.074726f, -0.074885f, -0.071851f, -0.028750f}, { -0.093385f, 0.156814f, 0.158514f, 0.164646f, 0.174257f, -0.061775f, -0.072768f, -0.086703f, -0.088762f, -0.084559f, -0.075056f, -0.069624f, -0.073810f, -0.091441f, -0.059518f, -0.074174f, -0.049487f, 0.144278f, 0.141712f, 0.118696f, 0.102040f, 0.090273f, -0.028852f, -0.029983f, -0.031491f, -0.023387f, 0.003646f, 0.029047f, 0.034345f, 0.056915f, 0.049193f, 0.051426f, 0.010561f, 0.025647f, -0.002386f, 0.061272f, 0.089255f, 0.100372f, 0.108666f, 0.116698f, 0.072550f, 0.065166f, 0.108656f, 0.073453f, -0.008142f, -0.004046f, -0.013621f, -0.022576f, -0.048236f, 0.150430f, 0.152167f, 0.160371f, 0.168456f, 0.156103f, 0.140389f, 0.126604f, 0.101882f, 0.125900f, -0.042788f, -0.092219f, -0.068272f, 0.163355f, 0.155660f, -0.093205f}, { -0.153054f, -0.091829f, -0.101160f, -0.119157f, -0.172042f, -0.194461f, -0.158783f, -0.142260f, -0.135554f, -0.155176f, -0.199023f, -0.211992f, -0.198542f, -0.128910f, -0.128369f, -0.139242f, -0.182455f, -0.147400f, -0.120960f, -0.104471f, -0.087257f, -0.077875f, -0.104002f, -0.149705f, -0.163805f, -0.167827f, -0.155180f, -0.147717f, -0.134000f, -0.128741f, -0.103641f, -0.076307f, -0.110409f, -0.123827f, -0.104799f, -0.090706f, -0.115423f, -0.117456f, -0.146351f, -0.127523f, -0.137455f, -0.130507f, -0.111251f, -0.118356f, -0.144310f, -0.163744f, -0.130300f, -0.112225f, -0.103774f, -0.091205f, -0.128068f, -0.136963f, -0.154079f, -0.110855f, -0.094443f, -0.065892f, -0.079412f, -0.118131f, -0.178494f, -0.125940f, -0.199088f, -0.129588f, -0.083517f, -0.146755f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Norms1[4][szData1] = { { -0.564971f, -0.129396f, -0.056233f, -0.157192f, -0.473624f, -0.507977f, -0.521372f, -0.324273f, 0.002665f, -0.162205f, -0.098800f, -0.222838f, 0.124575f, 0.071918f, -1.035568f, -0.732502f, -0.601144f, -0.371625f, -0.763693f, -0.982558f, -0.982574f, -1.019544f, -1.117958f, -1.062465f, -1.053703f, -1.064463f, -1.084660f, -1.098262f, -1.093915f, -1.039885f, -1.076608f, -1.075869f, -1.126642f, -1.085175f, -1.130915f, -1.056399f, -1.003659f, -1.001862f, -1.018364f, -0.967973f, -1.024609f, -1.023496f, -0.990546f, -1.011847f, -1.085688f, -1.070830f, -1.095200f, -1.131339f, -1.056094f, -0.561798f, -0.542152f, -0.495790f, -0.478072f, -0.459453f, -0.836230f, -1.011201f, -1.035866f, -0.934114f, -0.811532f, -0.354646f, -0.369768f, -0.399649f, -0.253463f, -0.547471f}, { -0.839340f, 1.148960f, 1.125142f, 1.100485f, 1.080675f, -0.897930f, -0.912529f, -0.996125f, -1.071466f, -1.042048f, -1.026490f, -0.987182f, -1.041784f, -1.076388f, -0.462696f, -0.822466f, -0.888912f, 1.005939f, 0.876366f, 0.444626f, 0.454878f, 0.500166f, -0.113178f, -0.291668f, -0.365730f, -0.301161f, -0.283855f, -0.187040f, -0.104350f, 0.228824f, 0.229240f, 0.399769f, -0.140909f, -0.152595f, -0.143512f, 0.411993f, 0.334164f, 0.344775f, 0.385608f, 0.422201f, 0.308368f, 0.288833f, 0.382042f, 0.314302f, -0.308994f, -0.253671f, -0.272657f, -0.099587f, -0.417368f, 1.019476f, 1.038688f, 1.065791f, 1.076178f, 1.072623f, 0.787022f, 0.556291f, 0.429843f, 0.586671f, -0.779191f, -1.046849f, -0.949636f, 1.092446f, 1.139030f, -0.852386f}, { -0.541878f, 0.015079f, 0.155023f, 0.217517f, -0.076773f, -0.556865f, -0.506953f, -0.482593f, -0.309125f, -0.418980f, -0.502855f, -0.570733f, -0.388867f, -0.221859f, -0.026124f, -0.385060f, -0.448112f, 0.295711f, 0.074834f, 0.289577f, 0.277098f, 0.090017f, -0.284197f, 0.137537f, 0.087078f, 0.123328f, 0.064850f, 0.116029f, 0.180672f, 0.299671f, 0.205434f, -0.091710f, -0.004114f, 0.181932f, -0.148343f, 0.078992f, 0.320179f, 0.317797f, 0.259216f, 0.335058f, 0.292781f, 0.305458f, 0.318212f, 0.315005f, 0.021374f, 0.144036f, 0.029493f, -0.040527f, -0.214746f, 0.061803f, 0.007923f, -0.032118f, -0.053591f, 0.033053f, 0.121943f, -0.076372f, 0.142049f, 0.249819f, -0.252608f, -0.255944f, -0.568068f, 0.047381f, -0.083004f, -0.539913f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Data2[4][szData2] = { { -0.031861f, -0.017365f, -0.011112f, -0.034464f, -0.025867f, -0.015701f, -0.015125f, -0.013944f, -0.029499f, -0.016077f, -0.016420f, -0.066820f, -0.057645f, -0.046925f, -0.063075f, -0.058961f, -0.055476f, -0.057418f, -0.044672f, -0.049244f, -0.055443f, -0.062336f, -0.051986f, -0.047395f, -0.097587f, -0.093357f, -0.090758f, -0.096827f, -0.051427f, -0.127108f, -0.119865f, -0.114822f, -0.131042f, -0.150904f, -0.133542f, -0.153928f, -0.152551f, -0.143683f, -0.119766f, -0.131500f, -0.138044f, -0.139555f, -0.137019f, -0.124768f, -0.138724f, -0.149363f, -0.174534f, -0.163387f, -0.173579f, -0.186050f, -0.188687f, -0.182839f, -0.179793f, -0.179597f, -0.182502f, -0.165318f, -0.189500f, -0.173181f, -0.170668f, -0.180259f, -0.204851f, -0.204181f, -0.195622f, -0.195582f, -0.197809f, -0.205427f, -0.204761f, -0.202484f, -0.222546f, -0.212849f, -0.214437f, -0.222204f, -0.206002f, -0.202941f, -0.204330f, -0.225494f, -0.206082f, -0.222926f, -0.213401f, -0.215259f, -0.204369f, -0.196924f, -0.198542f, -0.220697f, -0.213723f, -0.219156f, -0.208310f, -0.215247f, -0.235358f, -0.232009f, -0.238716f, -0.230907f, -0.233619f, -0.238739f, -0.252346f, -0.245533f, -0.237547f, -0.251437f, -0.240538f, -0.250748f, -0.266085f, -0.281031f, -0.290116f, -0.291013f, -0.309631f, -0.295306f, -0.309150f, -0.294883f, -0.313341f, -0.319827f, -0.309893f, -0.301167f, -0.309156f, -0.289951f, -0.294762f, -0.303361f, -0.299224f, -0.332774f, -0.331461f, -0.348965f, -0.318842f, -0.323479f, -0.336759f, -0.319172f, -0.319707f, -0.323019f, -0.283580f, -0.278330f, -0.270302f, -0.278154f, -0.273488f, -0.255746f, -0.268682f, -0.260699f, -0.266439f, -0.260545f, -0.266132f, -0.257143f, -0.257991f, -0.266834f, -0.265970f, -0.258832f, -0.256124f, -0.256137f, -0.270135f, -0.259730f, -0.254911f, -0.237895f, -0.221023f, -0.234432f, -0.242868f, -0.249774f, -0.241277f, -0.226582f, -0.248057f, -0.238616f, -0.250514f, -0.241148f, -0.240014f, -0.233158f, -0.281129f, -0.239829f, -0.237113f, -0.292556f, -0.284911f, -0.248905f, -0.319045f, -0.285014f, -0.341087f, -0.279218f, -0.314579f, -0.283478f, -0.237230f, -0.230492f, -0.234514f, -0.264000f, -0.212390f, -0.214200f, -0.206642f, -0.210149f, -0.247758f, -0.247152f, -0.229196f, -0.225135f, -0.189638f, -0.219745f, -0.185514f, -0.192668f, -0.215903f, -0.191147f, -0.225583f, -0.201081f, -0.210972f, -0.185563f, -0.208514f, -0.162172f, -0.151682f, -0.157948f, -0.158412f, -0.167467f, -0.143126f, -0.169665f, -0.163873f, -0.185953f, -0.161797f, -0.195147f, -0.143182f, -0.095778f, -0.096296f, -0.103021f, -0.080309f, -0.097142f, -0.100985f, -0.090743f, -0.090613f, -0.083451f, -0.104329f, -0.119569f, -0.116869f, -0.118672f, -0.101218f, -0.072894f, -0.071894f, -0.107751f, -0.076920f, -0.120554f, -0.108292f, -0.140910f, -0.143504f, -0.110056f, -0.145658f, -0.136019f, -0.142201f, -0.110574f, -0.063361f, -0.038706f, -0.041145f, -0.032626f, -0.074809f, -0.073808f, -0.002295f, -0.008147f, -0.011955f, -0.001377f, 0.003849f, 0.008647f, 0.006539f, 0.003388f, -0.011250f, -0.027791f, -0.009502f, -0.011866f, -0.007181f, -0.039708f, -0.035384f, -0.037275f}, { 0.022735f, 0.036732f, 0.069478f, 0.091814f, 0.117661f, 0.131889f, 0.155018f, 0.159976f, 0.179281f, 0.171158f, 0.171612f, 0.196392f, 0.189122f, 0.199622f, 0.190413f, 0.188489f, 0.165921f, 0.155450f, 0.139060f, 0.116859f, 0.089333f, 0.061786f, 0.051364f, 0.028725f, 0.047026f, 0.020770f, 0.003028f, -0.005881f, 0.007309f, -0.011976f, -0.009231f, 0.011071f, 0.041291f, 0.047142f, 0.066031f, 0.094382f, 0.121799f, 0.125749f, 0.142005f, 0.167317f, 0.180761f, 0.198728f, 0.195939f, 0.194549f, 0.183351f, -0.005833f, 0.008925f, 0.023954f, 0.029990f, 0.045576f, 0.075074f, 0.090339f, 0.108507f, 0.127129f, 0.149938f, 0.156251f, 0.166338f, 0.182897f, 0.179280f, 0.172125f, 0.101509f, 0.022775f, -0.003567f, -0.004427f, -0.003074f, 0.004128f, 0.018588f, 0.023555f, 0.038181f, 0.048566f, 0.081167f, 0.098065f, 0.113192f, 0.126673f, 0.149512f, 0.177822f, 0.180362f, 0.174956f, 0.160781f, 0.137380f, 0.154232f, 0.162619f, 0.157964f, 0.116318f, 0.108302f, 0.071968f, 0.060184f, 0.039978f, 0.033950f, 0.008751f, 0.004392f, -0.003749f, -0.007062f, -0.002249f, 0.005173f, 0.051607f, 0.064122f, 0.090547f, 0.097378f, 0.128721f, 0.121972f, 0.118024f, 0.169557f, 0.180065f, 0.168528f, 0.134773f, 0.108239f, 0.086123f, 0.064576f, 0.044173f, 0.040286f, 0.029449f, 0.017745f, 0.014373f, 0.006724f, 0.006662f, 0.027810f, 0.107518f, 0.071973f, 0.053096f, -0.000453f, 0.012906f, 0.018069f, 0.021019f, 0.086796f, 0.125907f, 0.102059f, 0.058339f, 0.050713f, 0.007550f, 0.003595f, 0.004634f, 0.016525f, 0.023792f, 0.033233f, 0.046446f, 0.086932f, 0.090781f, 0.108870f, 0.152359f, 0.160973f, 0.170950f, 0.184972f, 0.185795f, 0.176358f, 0.153236f, 0.153089f, 0.152239f, 0.133112f, 0.159669f, 0.176598f, 0.183037f, 0.182053f, 0.187757f, 0.176809f, 0.167349f, 0.142664f, 0.125395f, 0.097230f, 0.143391f, 0.142171f, 0.081279f, 0.064686f, 0.055947f, 0.031984f, 0.009557f, 0.003903f, 0.018001f, 0.055084f, 0.129548f, 0.156866f, 0.165188f, 0.106731f, 0.063318f, 0.046772f, 0.032787f, -0.003242f, -0.008553f, -0.006629f, 0.001023f, -0.003617f, 0.013915f, 0.049876f, 0.129895f, 0.167799f, 0.186952f, 0.167701f, 0.158444f, 0.160700f, 0.123650f, 0.072858f, 0.039319f, 0.002444f, -0.003246f, 0.086357f, 0.179842f, 0.186348f, 0.184842f, 0.189319f, 0.175281f, 0.150741f, 0.186124f, 0.143034f, 0.123985f, 0.077212f, 0.033355f, -0.002454f, 0.203895f, 0.205410f, 0.207852f, 0.201597f, 0.182356f, 0.162012f, 0.136709f, 0.131109f, 0.110106f, 0.093068f, 0.071974f, 0.086313f, 0.112122f, 0.110423f, 0.143532f, 0.168486f, 0.169005f, 0.191453f, 0.204941f, 0.208860f, 0.185601f, 0.194290f, 0.147433f, 0.110597f, 0.019366f, -0.009417f, 0.009457f, 0.054028f, 0.134459f, 0.185406f, 0.191600f, 0.200689f, 0.200206f, 0.137847f, 0.153610f, 0.162081f, 0.119556f, 0.105096f, 0.091872f, 0.121095f, 0.080514f, 0.164552f, 0.189757f, 0.151551f, 0.148384f, 0.127236f, 0.100678f, 0.071773f, 0.012080f}, { -0.408101f, -0.412145f, -0.427783f, -0.457541f, -0.479199f, -0.476705f, -0.465647f, -0.452085f, -0.434781f, -0.412512f, -0.390500f, -0.354732f, -0.365698f, -0.401297f, -0.423325f, -0.427384f, -0.457697f, -0.464850f, -0.476927f, -0.478046f, -0.451396f, -0.428123f, -0.422702f, -0.415504f, -0.420774f, -0.405443f, -0.381062f, -0.349224f, -0.399524f, -0.340797f, -0.349190f, -0.391758f, -0.404578f, -0.391401f, -0.417666f, -0.401645f, -0.389727f, -0.398800f, -0.413949f, -0.398665f, -0.383695f, -0.364092f, -0.329563f, -0.304139f, -0.268941f, -0.342333f, -0.372003f, -0.382061f, -0.387726f, -0.399190f, -0.409400f, -0.412738f, -0.409482f, -0.400095f, -0.388587f, -0.371831f, -0.348984f, -0.329291f, -0.304304f, -0.277177f, -0.269024f, -0.297043f, -0.325431f, -0.331275f, -0.365331f, -0.402955f, -0.405888f, -0.403941f, -0.436203f, -0.417501f, -0.424932f, -0.433822f, -0.425266f, -0.420645f, -0.408254f, -0.406213f, -0.382277f, -0.346394f, -0.321661f, -0.293655f, -0.278963f, -0.260420f, -0.295991f, -0.296100f, -0.287727f, -0.289239f, -0.283330f, -0.294821f, -0.305867f, -0.337097f, -0.356709f, -0.365842f, -0.395730f, -0.417395f, -0.425010f, -0.456870f, -0.454187f, -0.467129f, -0.450391f, -0.452923f, -0.460434f, -0.463178f, -0.436214f, -0.393603f, -0.372720f, -0.338597f, -0.332038f, -0.318660f, -0.323224f, -0.324557f, -0.322435f, -0.332575f, -0.346841f, -0.361031f, -0.391690f, -0.426904f, -0.452925f, -0.341579f, -0.325981f, -0.324879f, -0.414732f, -0.369896f, -0.355919f, -0.340654f, -0.330973f, -0.344294f, -0.472277f, -0.474594f, -0.467568f, -0.426769f, -0.400551f, -0.383950f, -0.359481f, -0.338526f, -0.319231f, -0.303491f, -0.314531f, -0.313958f, -0.319987f, -0.337713f, -0.344824f, -0.355642f, -0.403498f, -0.418006f, -0.431035f, -0.444570f, -0.444084f, -0.436514f, -0.434937f, -0.430510f, -0.423646f, -0.419886f, -0.392579f, -0.388187f, -0.356141f, -0.330205f, -0.321527f, -0.311978f, -0.303960f, -0.311067f, -0.340744f, -0.303856f, -0.299148f, -0.313270f, -0.322165f, -0.360813f, -0.398839f, -0.354579f, -0.324550f, -0.334879f, -0.356112f, -0.438380f, -0.446215f, -0.443834f, -0.449160f, -0.453053f, -0.400609f, -0.366585f, -0.343170f, -0.318690f, -0.401569f, -0.348674f, -0.297003f, -0.301088f, -0.313869f, -0.376904f, -0.376997f, -0.394539f, -0.415003f, -0.414066f, -0.431067f, -0.406697f, -0.410249f, -0.305209f, -0.283242f, -0.286872f, -0.303374f, -0.312288f, -0.353240f, -0.355472f, -0.391224f, -0.337085f, -0.379647f, -0.409989f, -0.402715f, -0.401784f, -0.352762f, -0.343404f, -0.349200f, -0.378229f, -0.387572f, -0.406667f, -0.416221f, -0.434446f, -0.437145f, -0.455191f, -0.435818f, -0.427978f, -0.430786f, -0.422554f, -0.436230f, -0.451215f, -0.435290f, -0.409578f, -0.411495f, -0.388188f, -0.371527f, -0.276885f, -0.338345f, -0.416584f, -0.399165f, -0.378923f, -0.341884f, -0.391708f, -0.426646f, -0.479995f, -0.431581f, -0.404657f, -0.383826f, -0.357058f, -0.402260f, -0.415913f, -0.424744f, -0.455141f, -0.441875f, -0.431289f, -0.411115f, -0.440881f, -0.402931f, -0.410485f, -0.447664f, -0.473194f, -0.468385f, -0.467705f, -0.430836f, -0.399578f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Norms2[4][szData2] = { { 0.111407f, 0.205215f, 0.055730f, -0.092924f, 0.036737f, 0.543562f, 0.820838f, 0.830475f, 0.401486f, 0.862165f, 0.507175f, 0.421984f, 0.624620f, 0.316922f, -0.421505f, -0.306594f, -0.685650f, -0.583135f, -0.370732f, -0.284291f, -0.119059f, 0.172770f, 0.227404f, 0.173603f, -0.283406f, -0.259153f, -0.109570f, -0.124596f, 0.175971f, -0.067886f, 0.009596f, -0.458742f, -0.618785f, -0.487463f, -0.762845f, -0.394685f, -0.635588f, -0.946904f, -0.591117f, -0.804487f, -0.858041f, -0.590333f, -0.526400f, -0.174985f, -0.185665f, -0.539131f, 0.026742f, 0.020742f, 0.169079f, 0.256879f, 0.117709f, 0.197392f, 0.532534f, 0.542897f, 0.540667f, -0.291754f, -0.148923f, -0.689761f, -0.541134f, -0.458819f, -1.119327f, -0.810217f, 0.059889f, 0.014172f, 0.232232f, 0.607413f, 0.621588f, 0.438351f, 0.591064f, 0.472839f, 0.334397f, 0.339756f, 0.347792f, 0.372584f, 0.427324f, 0.176566f, 0.296013f, -0.052069f, -0.178568f, -0.900251f, -1.080599f, -0.622458f, -0.968677f, -0.925233f, -1.057804f, -0.722005f, -0.772371f, -0.652751f, -0.521855f, -0.860736f, -0.809228f, -0.681051f, -0.348581f, -0.425180f, -0.291361f, 0.200675f, 0.459420f, 0.266970f, 0.606258f, 0.135754f, -0.222538f, -0.042861f, -0.201961f, -0.592769f, -0.658122f, -0.278145f, -0.790285f, -0.699695f, -0.530303f, -0.567174f, -0.661847f, -0.207387f, -0.240915f, -0.097693f, -0.272084f, -0.149536f, -0.235171f, -0.364654f, -0.258282f, -0.357728f, 0.112547f, -0.299104f, -0.438333f, -0.370733f, -0.531942f, -0.797642f, -0.085144f, -0.277231f, 0.039844f, -0.310427f, -0.381560f, -0.583292f, -0.374879f, -0.467864f, -0.273171f, -0.445445f, -0.391389f, -0.576244f, -0.727757f, -0.912439f, -0.887528f, -0.765080f, -0.084689f, -0.053822f, -0.276782f, -0.189673f, 0.004467f, 0.197309f, 0.324250f, 0.233993f, 0.185115f, 0.099520f, -0.352779f, -0.435554f, -0.629812f, -0.337914f, -0.778048f, -0.742384f, -0.870884f, -0.777601f, -0.522573f, -0.767139f, -0.624880f, -0.700997f, -0.461805f, -0.702518f, -0.256479f, -0.150272f, -0.348979f, -0.477992f, -0.743268f, -0.227209f, 0.405675f, 0.656618f, 0.358510f, -0.120636f, 0.234998f, -0.184442f, -0.103011f, -0.543081f, -0.631851f, -0.694935f, -0.554999f, -0.934207f, -0.899353f, 0.018073f, 0.484421f, 0.410111f, 0.448626f, 0.341938f, 0.532534f, 0.320712f, 0.503922f, -0.720581f, -0.930769f, -0.526021f, -0.538959f, -0.514579f, -0.786371f, -0.786184f, -0.835024f, -0.730832f, -0.188209f, 0.466482f, -0.167411f, 0.307892f, -0.526989f, 0.077608f, 0.077026f, -0.043778f, 0.067726f, -0.390712f, -0.495533f, -0.677144f, -0.699626f, -0.848212f, -0.552087f, -0.525478f, -0.603869f, -0.641513f, -0.755328f, -0.878030f, -0.691440f, -0.250540f, -0.598803f, -0.572664f, -0.159536f, -0.287104f, -0.490010f, -0.557364f, -0.961794f, -0.535767f, -0.450172f, -0.277064f, 0.139968f, -0.258169f, 0.142303f, 0.556224f, 0.159192f, 0.339609f, 0.930431f, 0.895266f, 0.841023f, 0.959669f, 0.967069f, 0.950163f, 0.917823f, 0.553823f, 0.912671f, 0.647626f, 0.908565f, 0.895657f, 0.804569f, -0.049624f, -0.030648f, 0.099179f}, { -0.538215f, -0.204842f, -0.691591f, -0.682953f, -0.235046f, 0.235623f, 0.666038f, 0.593649f, 1.025450f, 0.603326f, 0.849300f, 1.068179f, 0.915128f, 1.011934f, 0.876259f, 0.901642f, 0.652219f, 0.630034f, 0.445539f, -0.148832f, -0.731325f, -0.233219f, -0.146317f, -0.329664f, -0.445266f, -0.587195f, -0.935003f, -0.952057f, -0.894953f, -0.988137f, -0.973903f, -0.686127f, -0.627996f, -0.417314f, -0.148486f, 0.521846f, 0.275048f, 0.291137f, 0.477973f, 0.424260f, 0.477755f, 1.088292f, 1.110147f, 1.156346f, 1.133651f, -0.819764f, -0.832225f, -0.420524f, -0.353838f, -0.184506f, -0.252239f, -0.109905f, 0.331535f, 0.495178f, 0.526979f, 0.692635f, 1.163300f, 1.031764f, 1.105328f, 1.110197f, -0.202062f, -0.343234f, -0.926401f, -0.982150f, -0.898883f, -0.422949f, -0.005414f, -0.117551f, 0.102247f, -0.023136f, -0.105782f, -0.054498f, 0.102088f, 0.418207f, 0.573007f, 1.032813f, 1.040625f, 1.079488f, 1.081537f, 0.546156f, 0.589769f, 1.022998f, 0.794166f, 0.144396f, 0.009155f, 0.087354f, -0.031072f, -0.357427f, -0.590120f, -0.657812f, -0.753520f, -0.878729f, -0.987626f, -0.796800f, -0.852419f, -0.218958f, 0.022645f, 0.191011f, 0.239090f, 0.405700f, 0.599177f, 0.572941f, 0.772229f, 1.121262f, 1.039805f, 0.581878f, 0.316038f, 0.284458f, 0.305088f, -0.290095f, -0.522827f, -0.727906f, -0.835537f, -0.897318f, -0.952661f, -0.910223f, -0.636358f, 0.491588f, 0.334087f, -0.153973f, -0.892438f, -0.911684f, -0.942092f, -0.796145f, 0.419112f, 0.379780f, 0.496842f, -0.446811f, -0.459099f, -0.887922f, -0.972635f, -0.885438f, -0.903546f, -0.893923f, -0.796623f, -0.307289f, 0.493673f, 0.399740f, 0.341657f, 0.564832f, 0.794972f, 1.010071f, 1.134103f, 1.113651f, 0.902609f, 0.622012f, 0.672658f, 0.577728f, 0.362711f, 0.576094f, 0.873130f, 1.021381f, 1.175802f, 1.158474f, 1.083179f, 0.949033f, 0.358665f, 0.327401f, 0.136078f, 0.436618f, 0.558259f, 0.207271f, 0.171880f, 0.041142f, -0.837540f, -0.813479f, -0.966694f, -0.868230f, -0.178738f, 0.534408f, 0.847759f, 0.667620f, 0.065308f, 0.224224f, -0.113303f, -0.559709f, -0.838387f, -1.006865f, -0.999262f, -0.632882f, -0.922820f, -0.789103f, -0.165141f, 0.204002f, 0.871420f, 1.151482f, 0.854661f, 0.567772f, 0.533502f, 0.439295f, 0.010242f, -0.164949f, -0.560373f, -0.846647f, 0.058607f, 1.102149f, 1.101041f, 1.111798f, 0.863223f, 0.754340f, 0.377588f, 1.012715f, 0.588241f, 0.424214f, -0.051051f, -0.178456f, -0.746540f, 1.163938f, 1.169214f, 1.186509f, 1.186808f, 0.521230f, 0.583190f, 0.443349f, 0.526208f, 0.273569f, 0.117849f, -0.169379f, 0.170481f, 0.298621f, 0.303292f, 0.420906f, 0.704443f, 0.753997f, 0.676853f, 1.039860f, 1.206947f, 1.139529f, 1.121375f, 0.499806f, 0.237208f, -0.616990f, -0.889374f, -0.758601f, -0.165580f, 0.330956f, 0.986179f, 0.939472f, 1.172755f, 1.107024f, 0.498429f, 0.578400f, 0.678399f, 0.318526f, 0.295831f, 0.148385f, 0.531510f, -0.623547f, 0.520869f, 0.926592f, 0.414478f, 0.533140f, 0.120120f, -0.594216f, -0.644382f, -0.741016f}, { -1.223460f, -1.356656f, -1.073001f, -1.087079f, -1.412836f, -1.299179f, -0.665707f, -0.766542f, -0.748229f, -0.617259f, 0.125822f, -0.387257f, -0.279501f, 0.054515f, -1.056684f, -1.083197f, -1.063002f, -1.170819f, -1.371218f, -1.413012f, -1.019263f, -1.354242f, -1.362310f, -1.322542f, -1.271139f, -1.181903f, -0.727105f, -0.671683f, -0.765876f, -0.549608f, -0.578642f, -1.020751f, -0.965080f, -1.210552f, -1.164633f, -1.273029f, -1.251811f, -0.971061f, -1.229396f, -1.092257f, -1.010911f, -0.438078f, -0.217288f, -0.035020f, 0.038835f, -0.773142f, -0.873955f, -1.258723f, -1.245200f, -1.265721f, -1.303261f, -1.315693f, -1.074951f, -0.985366f, -0.967263f, -1.206280f, -0.282499f, -0.217173f, -0.232250f, -0.071205f, -0.001484f, 0.409184f, -0.037176f, -0.323483f, -0.477541f, -0.799055f, -0.968534f, -1.158540f, -1.014073f, -1.141856f, -1.239690f, -1.246796f, -1.257845f, -1.184699f, -1.057611f, -0.733837f, -0.470862f, 0.044284f, 0.066920f, 0.309411f, -0.485189f, 0.020059f, -0.342224f, 0.413013f, 0.239242f, 0.574998f, 0.537345f, 0.511814f, 0.421083f, 0.063398f, -0.040346f, -0.187566f, -0.236741f, -0.995261f, -0.937857f, -1.309919f, -1.170089f, -1.316342f, -0.963083f, -1.332638f, -1.338147f, -1.321272f, -1.229319f, -0.241649f, -0.027131f, 0.555720f, 0.519624f, 0.573972f, 0.622863f, 0.584885f, 0.425249f, 0.313659f, 0.170123f, 0.002089f, -0.110504f, -0.795226f, -1.197759f, 0.581174f, 0.636277f, 0.653408f, -0.279577f, 0.010287f, -0.095588f, 0.233441f, 0.588006f, 0.498488f, -1.369366f, -1.337624f, -1.270002f, -0.870715f, -0.212680f, -0.066955f, 0.017602f, 0.000418f, 0.238707f, 0.613396f, 0.590385f, 0.581988f, 0.531559f, 0.304985f, 0.115296f, -0.156673f, -0.139378f, -0.731299f, -1.118432f, -1.325105f, -1.258192f, -1.229960f, -1.241139f, -1.209719f, -0.999557f, -0.838422f, -0.398178f, -0.506679f, -0.175152f, 0.285513f, 0.500088f, 0.529423f, 0.470955f, 0.474808f, 0.535940f, 0.536424f, 0.616355f, 0.599395f, 0.138960f, -0.018986f, -0.166401f, 0.088637f, 0.647698f, 0.557633f, 0.226033f, -1.301164f, -1.211040f, -0.876435f, -1.238272f, -1.245766f, -0.720572f, -0.416452f, -0.280393f, 0.379393f, -0.314746f, 0.044583f, 0.623660f, 0.400143f, -0.278913f, -0.262342f, -0.658551f, -1.079454f, -1.062628f, -1.199043f, -1.080173f, -1.234952f, -0.825176f, -0.354508f, 0.407828f, -0.156626f, -0.187811f, -0.195809f, -0.742500f, -0.886395f, -1.076656f, -0.379977f, -1.274744f, -1.105828f, -1.394440f, -1.239691f, -0.899596f, -0.123737f, -0.146618f, -0.575003f, -0.473858f, -1.300524f, -1.232886f, -1.184184f, -1.124896f, -1.078425f, -1.329630f, -1.309446f, -1.300123f, -1.254332f, -1.167627f, -0.975448f, -1.008799f, -1.207948f, -1.112941f, -0.702047f, -0.406122f, -0.014875f, -0.195353f, -1.238623f, -0.962983f, -1.038660f, -0.703586f, -1.010067f, -1.380811f, -1.435623f, -1.001764f, -0.098158f, -0.402053f, -0.274797f, -0.400857f, -0.357620f, -0.348294f, -0.646975f, -0.631156f, -0.763486f, -0.377656f, -0.889566f, -0.542243f, -0.380709f, -0.744350f, -0.641610f, -1.052347f, -1.186749f, -1.128761f, -1.043182f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Data3[4][szData3] = { { 0.054739f, 0.063458f, 0.025719f, 0.024243f, 0.012325f, -0.022349f, -0.013564f, -0.013939f, -0.015681f, -0.013024f, -0.027603f, -0.057218f, -0.081754f, -0.064578f, -0.080199f, -0.083258f, -0.071074f, -0.067402f, -0.049498f, -0.048276f, -0.060703f, -0.041781f, -0.095619f, -0.088203f, -0.083350f, -0.064879f, -0.050329f, -0.054760f, -0.055884f, -0.087649f, -0.086521f, -0.044319f, -0.072427f, -0.079404f, -0.093130f, -0.096907f, -0.103958f, -0.103558f, -0.095709f, -0.097990f, -0.087343f, -0.085217f, -0.109555f, -0.102454f, -0.092582f, -0.100914f, -0.049190f, -0.058085f, -0.051413f, -0.082087f, -0.074574f, 0.040300f, 0.035208f, 0.025141f, 0.017709f, 0.000590f, -0.032369f, -0.008713f, -0.038903f, -0.003057f, 0.034518f, 0.041670f, 0.047867f, 0.048184f}, { -0.222255f, -0.184746f, -0.160333f, -0.185071f, -0.218307f, -0.187978f, -0.209748f, -0.165556f, 0.111828f, 0.090531f, 0.056219f, -0.068005f, -0.066898f, -0.026041f, 0.003610f, 0.021815f, 0.045157f, 0.031488f, 0.054287f, 0.074950f, 0.067778f, 0.121695f, -0.138048f, -0.135612f, -0.119098f, -0.119482f, -0.177508f, -0.194893f, -0.155267f, -0.160132f, -0.161582f, -0.199761f, -0.159961f, -0.139027f, -0.095094f, -0.103415f, -0.092304f, -0.059085f, -0.049103f, -0.024142f, 0.001684f, 0.001547f, -0.065923f, -0.092824f, -0.102088f, -0.129990f, 0.093859f, 0.004251f, 0.055652f, 0.011192f, -0.101632f, 0.105745f, 0.117131f, 0.115647f, 0.097010f, 0.113427f, 0.052109f, 0.114920f, -0.201001f, -0.204092f, -0.209901f, -0.177426f, -0.157249f, -0.225333f}, { 0.221037f, 0.150965f, 0.115294f, 0.173638f, 0.212671f, 0.266246f, 0.214747f, 0.131574f, 0.230438f, 0.291651f, 0.330830f, 0.309689f, 0.281336f, 0.303360f, 0.269136f, 0.204740f, 0.221313f, 0.279906f, 0.303984f, 0.294242f, 0.231504f, 0.211057f, 0.169841f, 0.229871f, 0.267913f, 0.298939f, 0.252531f, 0.192595f, 0.126622f, 0.174579f, 0.209445f, 0.189417f, 0.255030f, 0.269344f, 0.241054f, 0.224164f, 0.164896f, 0.220145f, 0.256850f, 0.244322f, 0.218655f, 0.254402f, 0.167891f, 0.171132f, 0.238276f, 0.187284f, 0.256486f, 0.306957f, 0.299397f, 0.238072f, 0.290223f, 0.275102f, 0.211651f, 0.217793f, 0.300722f, 0.229410f, 0.327709f, 0.222091f, 0.193134f, 0.252512f, 0.200318f, 0.142252f, 0.092801f, 0.232188f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Norms3[4][szData3] = { { 0.166168f, -0.015921f, 0.017057f, -0.117601f, -0.134931f, -0.452250f, -0.415719f, -0.214474f, -0.001877f, -0.111159f, -0.517580f, -0.839848f, -0.800957f, -0.707663f, -0.954208f, -0.957566f, -1.011020f, -0.953123f, -0.909063f, -0.919021f, -0.971058f, -0.508728f, -1.036910f, -1.017100f, -1.058017f, -0.682883f, -0.514492f, -0.518338f, -0.167146f, -1.013457f, -1.001532f, -0.277552f, -0.883820f, -1.038184f, -1.029708f, -1.028291f, -0.961813f, -1.092902f, -1.051965f, -0.971640f, -0.983561f, -1.040172f, -1.080627f, -1.075328f, -1.029863f, -1.053317f, -0.915655f, -0.778892f, -0.922337f, -1.009312f, -0.764499f, 0.061202f, -0.047512f, 0.114908f, -0.161317f, -0.043258f, -0.668248f, -0.025059f, -0.241160f, -0.413536f, 0.092450f, -0.145864f, -0.216122f, -0.011613f}, { -1.159958f, -1.093360f, -1.066789f, -0.959882f, -1.181083f, -1.036607f, -1.073862f, -1.102965f, 1.041043f, 1.038591f, 0.172075f, -0.033053f, -0.039374f, -0.025227f, 0.267213f, 0.313637f, 0.339086f, 0.274694f, 0.287272f, 0.421853f, 0.431494f, 0.979136f, -0.474877f, -0.344543f, -0.157648f, -0.091525f, -1.000381f, -1.077792f, -1.074874f, -0.473019f, -0.539250f, -1.170119f, -0.734452f, -0.391957f, -0.284197f, -0.298057f, -0.033258f, 0.003050f, -0.101160f, 0.324537f, 0.431740f, 0.262189f, -0.250957f, -0.260610f, -0.297624f, -0.434754f, 0.592989f, 0.126977f, 0.289536f, 0.384835f, -0.083302f, 1.057807f, 1.088488f, 1.060776f, 1.052969f, 1.051970f, 0.091846f, 1.047566f, -1.179467f, -1.069250f, -0.957312f, -1.035902f, -1.101053f, -1.221383f}, { -0.108049f, -0.259058f, -0.306916f, -0.442437f, -0.013996f, 0.574491f, 0.517365f, -0.153119f, 0.599719f, 0.594227f, 1.194833f, 0.931194f, 0.975590f, 1.069155f, 0.677328f, 0.592585f, 0.394825f, 0.675317f, 0.758808f, 0.642755f, 0.428900f, 0.427290f, 0.147117f, 0.535645f, 0.488228f, 1.084616f, 0.580302f, 0.267335f, -0.250131f, 0.386666f, 0.351297f, 0.126116f, 0.362744f, 0.398832f, 0.536115f, 0.531797f, 0.675384f, 0.351818f, 0.544711f, 0.583673f, 0.327487f, 0.396268f, 0.318828f, 0.011870f, 0.526839f, 0.194237f, 0.266913f, 0.989141f, 0.731589f, 0.212701f, 1.013871f, 0.580291f, 0.434413f, 0.531916f, 0.533297f, 0.571776f, 1.098475f, 0.582514f, 0.151932f, 0.540623f, -0.461514f, -0.335085f, -0.106057f, 0.166550f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Data4[4][szData4] = { { 0.055528f, 0.074192f, 0.073360f, 0.059586f, 0.070170f, 0.065602f, 0.075350f, 0.059084f, 0.064690f, 0.063791f, 0.068762f, 0.066861f, 0.071862f, 0.055834f, 0.022396f, 0.022167f, 0.005953f, 0.017058f, 0.000269f, -0.004344f, 0.004354f, -0.007529f, 0.018520f, 0.029773f, 0.025030f, 0.025789f, 0.029198f, 0.045940f, 0.039489f, 0.034073f, 0.043235f, 0.034461f, 0.053565f, 0.045301f, 0.048803f, 0.046150f, 0.038534f, 0.056043f, 0.096326f, 0.099188f, 0.090936f, 0.071929f, 0.086351f, 0.090740f, 0.105892f, 0.092547f, 0.105610f, 0.110269f, 0.109069f, 0.127558f, 0.117889f, 0.117484f, 0.146376f, 0.172550f, 0.163473f, 0.172046f, 0.164004f, 0.206627f, 0.180903f, 0.185936f, 0.177548f, 0.160140f, 0.153000f, 0.164025f, 0.153678f, 0.154569f, 0.148671f, 0.128714f, 0.133842f, 0.126848f, 0.130990f, 0.149122f, 0.126733f, 0.157084f, 0.112609f, 0.121147f, 0.113961f, 0.111561f, 0.100300f, 0.106590f, 0.106844f, 0.111842f, 0.099683f, 0.080448f, 0.081519f, 0.095425f, 0.075421f, 0.128052f, 0.134131f, 0.117690f, 0.129150f, 0.121700f, 0.125936f, 0.136433f, 0.117850f, 0.142023f, 0.135353f, 0.169970f, 0.170936f, 0.186676f, 0.189525f, 0.134922f, 0.117962f, 0.101946f, 0.087272f, 0.111481f, 0.083848f, 0.115560f, 0.064362f, 0.022959f, 0.026334f, 0.029238f, 0.039408f, 0.036156f, 0.010617f, 0.013542f, 0.027625f, 0.033683f, -0.001859f, 0.040731f, 0.041944f, 0.083396f, 0.083461f, 0.047345f, 0.051016f, 0.050510f, 0.075166f, 0.054794f}, { -0.015008f, -0.014737f, -0.049521f, -0.076134f, -0.086227f, -0.129383f, -0.136638f, -0.151452f, -0.173184f, -0.173934f, -0.192785f, -0.204742f, -0.209799f, -0.211524f, -0.183365f, -0.167016f, -0.147418f, -0.133894f, -0.121325f, -0.099880f, -0.074710f, -0.143207f, -0.020684f, -0.059420f, -0.054568f, -0.085455f, -0.102797f, -0.130179f, -0.136927f, -0.124632f, -0.075532f, -0.062730f, -0.024266f, 0.003655f, 0.022030f, 0.031490f, 0.052838f, 0.072890f, 0.083575f, 0.070064f, 0.045223f, 0.019906f, -0.001562f, -0.025260f, -0.036294f, -0.060111f, -0.070681f, -0.090723f, -0.113950f, -0.130922f, -0.150664f, -0.171275f, -0.024153f, 0.027994f, 0.035117f, 0.053278f, 0.067379f, 0.019469f, -0.202007f, -0.203708f, -0.200968f, -0.204045f, -0.208482f, -0.207076f, -0.209322f, -0.208588f, -0.210338f, 0.086549f, 0.071346f, 0.052737f, 0.026557f, 0.010707f, -0.013183f, 0.035892f, 0.060857f, 0.087642f, 0.096307f, -0.223092f, -0.219994f, -0.214528f, -0.207911f, -0.203286f, -0.191142f, -0.180935f, -0.173976f, -0.160118f, -0.178413f, -0.201710f, -0.190417f, -0.203103f, -0.209059f, -0.216236f, -0.217354f, -0.215446f, -0.220253f, -0.213742f, -0.204852f, -0.204805f, -0.204304f, 0.052350f, 0.021567f, -0.029076f, -0.063289f, -0.150163f, -0.125830f, -0.076963f, -0.055856f, 0.005654f, 0.058225f, 0.037915f, -0.005404f, -0.013788f, 0.060116f, -0.002118f, -0.049610f, -0.070843f, -0.136805f, -0.168115f, -0.148186f, -0.185996f, -0.198651f, -0.224426f, -0.207243f, -0.171034f, -0.133520f, -0.098077f, -0.056609f, -0.006722f}, { 0.415362f, 0.432664f, 0.432594f, 0.422064f, 0.427653f, 0.432671f, 0.438778f, 0.419416f, 0.396556f, 0.391482f, 0.365245f, 0.340573f, 0.329858f, 0.303613f, 0.337394f, 0.356289f, 0.371417f, 0.384669f, 0.374415f, 0.370503f, 0.379128f, 0.365517f, 0.385524f, 0.396828f, 0.393849f, 0.393801f, 0.397310f, 0.415405f, 0.404528f, 0.401979f, 0.409232f, 0.399927f, 0.412621f, 0.408494f, 0.410819f, 0.405611f, 0.389077f, 0.370646f, 0.377004f, 0.392534f, 0.416358f, 0.423718f, 0.436894f, 0.443269f, 0.452365f, 0.442091f, 0.446165f, 0.448193f, 0.444851f, 0.443997f, 0.438059f, 0.431372f, 0.457810f, 0.437132f, 0.430637f, 0.388304f, 0.357570f, 0.440336f, 0.333125f, 0.359676f, 0.393759f, 0.395493f, 0.361400f, 0.352443f, 0.321005f, 0.273588f, 0.248744f, 0.354795f, 0.381057f, 0.410577f, 0.437055f, 0.453648f, 0.448807f, 0.430838f, 0.404036f, 0.358429f, 0.350001f, 0.263893f, 0.300201f, 0.316583f, 0.346422f, 0.367345f, 0.390995f, 0.400311f, 0.426937f, 0.433972f, 0.412642f, 0.375011f, 0.414429f, 0.370194f, 0.352871f, 0.311704f, 0.296662f, 0.256509f, 0.288336f, 0.292634f, 0.371162f, 0.388220f, 0.335848f, 0.389660f, 0.439921f, 0.455292f, 0.456006f, 0.437487f, 0.445714f, 0.447820f, 0.438491f, 0.441312f, 0.397901f, 0.386110f, 0.390895f, 0.395382f, 0.383347f, 0.400970f, 0.379809f, 0.384742f, 0.392430f, 0.367159f, 0.365247f, 0.349950f, 0.334665f, 0.284353f, 0.342694f, 0.377617f, 0.418701f, 0.420157f, 0.431126f, 0.415494f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; const float Norms4[4][szData4] = { { -0.653047f, -0.429601f, -0.631634f, -0.402250f, -0.281618f, -0.610898f, -0.357097f, -0.595925f, -0.406230f, -0.374821f, -0.364752f, -0.154578f, -0.075262f, -0.277805f, -0.466471f, -0.449369f, -0.512190f, -0.598197f, -0.513793f, -0.696962f, -0.599633f, -0.552773f, -0.678151f, -0.545380f, -0.589161f, -0.633001f, -0.743616f, -0.599973f, -0.740744f, -0.759669f, -0.644664f, -0.576807f, -0.474134f, -0.603761f, -0.626912f, -0.685017f, -0.446449f, -0.281066f, 0.138405f, 0.124245f, -0.087351f, -0.346044f, -0.389284f, -0.333224f, -0.310276f, -0.380155f, -0.315470f, -0.231975f, -0.014229f, -0.055360f, -0.035193f, -0.228573f, -0.254381f, 0.415223f, 0.316579f, 0.184928f, 0.547960f, 0.293242f, 0.347291f, 0.630691f, 0.458263f, 0.130598f, 0.216696f, 0.312402f, 0.446547f, 0.526012f, 0.533938f, 0.453615f, 0.447805f, 0.361298f, -0.097375f, -0.289852f, -0.003654f, 0.187132f, 0.116045f, 0.465817f, 0.292091f, 0.347269f, 0.190760f, 0.083234f, 0.046764f, 0.004709f, -0.130544f, -0.361141f, -0.250275f, 0.200658f, -0.395632f, -0.007807f, -0.147503f, 0.021337f, 0.018595f, 0.088741f, 0.286867f, 0.496969f, 0.330782f, 0.450233f, -0.003514f, 0.387332f, 0.398132f, 0.354058f, 0.354196f, -0.041316f, -0.282843f, 0.121773f, -0.377287f, -0.275130f, -0.456638f, 0.026439f, -0.171177f, -0.475876f, -0.702819f, -0.675504f, -0.364790f, -0.643186f, -0.712865f, -0.587274f, -0.587948f, -0.449460f, -0.446457f, -0.436463f, -0.372942f, 0.085638f, -0.046686f, -0.383281f, -0.555947f, -0.517742f, -0.537026f, -0.597298f}, { -0.114056f, 0.242681f, -0.376828f, 0.007897f, 0.049910f, -0.250730f, -0.305297f, -0.437782f, -1.039118f, -1.036711f, -0.920949f, -1.100128f, -1.146827f, -1.108873f, -0.842448f, -0.885241f, -0.681855f, -0.256600f, -0.140655f, -0.054851f, 0.066558f, -0.612057f, 0.107896f, -0.088066f, -0.113809f, -0.081158f, -0.094114f, -0.326005f, -0.403764f, -0.282320f, 0.048549f, -0.066887f, 0.051996f, 0.019523f, 0.120004f, 0.243242f, 0.539753f, 0.973301f, 0.907690f, 0.827635f, 0.684621f, 0.258668f, 0.159899f, 0.118131f, 0.050853f, -0.325646f, -0.248836f, -0.082362f, -0.163087f, -0.290355f, -0.412102f, -0.486095f, 0.144388f, 0.811042f, 0.855376f, 0.994791f, 0.745462f, 0.936445f, -1.174237f, -1.090804f, -1.152986f, -1.160291f, -1.199911f, -1.195229f, -1.165356f, -1.136805f, -1.132799f, 0.869576f, 0.926653f, 0.773114f, 0.593132f, 0.373695f, 0.321051f, 0.885045f, 0.828132f, 0.865374f, 0.961067f, -1.193327f, -1.175675f, -1.197328f, -1.176793f, -1.153271f, -1.081423f, -1.076505f, -0.862328f, -0.499510f, -1.038666f, -1.086936f, -1.106030f, -1.131221f, -1.188434f, -1.211729f, -1.196671f, -1.148124f, -1.180586f, -1.164963f, -1.125558f, -1.159193f, -1.173577f, 0.944529f, 0.899077f, 0.235168f, -0.337812f, -0.522334f, -0.121878f, -0.143712f, -0.386956f, 0.327354f, 0.752019f, 0.191261f, 0.079537f, 0.069767f, 0.757539f, 0.061797f, 0.036583f, -0.015516f, -0.338608f, -0.962912f, -0.789005f, -0.857058f, -0.985358f, -1.202133f, -1.154866f, -0.991771f, -0.343793f, 0.049285f, -0.327128f, -0.061601f}, { 1.114012f, 1.257241f, 1.061763f, 1.305040f, 1.353780f, 1.159049f, 1.324523f, 1.118686f, 0.565059f, 0.642948f, 0.896133f, 0.726900f, 0.646613f, 0.592491f, 0.908900f, 0.867959f, 1.039178f, 1.163389f, 1.231950f, 1.090401f, 1.163502f, 1.060419f, 1.091298f, 1.214372f, 1.180779f, 1.146116f, 1.031883f, 1.153273f, 0.970244f, 0.989438f, 1.124353f, 1.191340f, 1.258622f, 1.169064f, 1.141442f, 1.054114f, 1.115510f, 0.645634f, 0.941861f, 1.044805f, 1.164277f, 1.300240f, 1.301592f, 1.337525f, 1.357467f, 1.282355f, 1.335521f, 1.387767f, 1.436004f, 1.414111f, 1.391062f, 1.315190f, 1.358358f, 1.009797f, 0.981756f, 0.725033f, 0.984292f, 0.829760f, 0.168557f, 0.483178f, 0.515663f, 0.686561f, 0.475464f, 0.313222f, 0.336075f, 0.252556f, 0.223560f, 0.885180f, 0.793219f, 1.063333f, 1.228789f, 1.275561f, 1.382234f, 0.958129f, 1.045345f, 0.884106f, 0.819533f, 0.319458f, 0.580364f, 0.499773f, 0.586541f, 0.660691f, 0.783927f, 0.454656f, 1.071983f, 1.368712f, 0.607767f, 0.819891f, 0.701370f, 0.729796f, 0.521992f, 0.400624f, 0.419299f, 0.245338f, 0.468392f, 0.279006f, 0.735876f, 0.592908f, 0.241547f, 0.809183f, 0.890321f, 1.403509f, 1.330073f, 1.365439f, 1.331248f, 1.367644f, 1.211956f, 1.383950f, 1.078467f, 1.239133f, 1.069954f, 1.099908f, 0.975145f, 1.132003f, 1.064750f, 1.182212f, 1.154234f, 0.734404f, 0.991093f, 0.917367f, 0.791788f, 0.494311f, 0.634369f, 0.753054f, 1.185110f, 1.229708f, 1.174120f, 1.171645f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f}, }; //Map Data and Norms Arrays to Pointer Arrays const float* DataPtrArr[Nsegs] = { &Data0[0][0], &Data1[0][0], &Data2[0][0], &Data3[0][0], &Data4[0][0] }; const float* NormsPtrArr[Nsegs] = { &Norms0[0][0], &Norms1[0][0], &Norms2[0][0], &Norms3[0][0], &Norms4[0][0] }; //The rotation axes: global followed by joints const float w[Nrots][3] = { {-0.912693f, -0.242616f, 0.328830f}, { 0.134603f, 0.959645f, 0.246908f}, {-0.163397f, 0.267260f, -0.949670f}, {-0.977335f, 0.087484f, 0.192777f}, {-0.265878f, 0.915062f, 0.303267f}, {-0.330813f, 0.208879f, -0.920289f}, {-0.905468f, -0.345010f, 0.247178f}, { 0.026383f, 0.976862f, 0.212235f}, {-0.589389f, 0.186683f, -0.785983f}, {-0.807418f, -0.104353f, 0.580677f}, {-0.034875f, 0.966146f, 0.255626f}, { 0.670875f, 0.212218f, -0.710557f}, {-0.740750f, 0.146712f, -0.655564f}, {-0.134603f, -0.959645f, -0.246908f}, { 0.278356f, -0.275761f, 0.920040f}, {-0.951000f, 0.055112f, 0.304241f}, { 0.073919f, -0.948907f, -0.306777f}, { 0.815108f, -0.119747f, 0.566798f}, {-0.574574f, -0.291953f, 0.764609f} }; //anchor points along each rotation axis const float q[Nrots][3] = { { 0.000000f, 0.000000f, 0.000000f}, {-0.039071f, -0.021976f, 0.130688f}, {-0.039071f, -0.021976f, 0.130688f}, {-0.039071f, -0.021976f, 0.130688f}, {-0.073871f, 0.034944f, -0.071569f}, {-0.073871f, 0.034944f, -0.071569f}, {-0.073871f, 0.034944f, -0.071569f}, {-0.132058f, 0.071684f, -0.233441f}, {-0.132058f, 0.071684f, -0.233441f}, {-0.132058f, 0.071684f, -0.233441f}, {-0.182555f, 0.087679f, -0.300782f}, {-0.182555f, 0.087679f, -0.300782f}, {-0.182555f, 0.087679f, -0.300782f}, {-0.039071f, -0.021976f, 0.130688f}, {-0.039071f, -0.021976f, 0.130688f}, {-0.039071f, -0.021976f, 0.130688f}, { 0.012602f, -0.073168f, 0.301482f}, { 0.012602f, -0.073168f, 0.301482f}, { 0.012602f, -0.073168f, 0.301482f} }; const float bounds[2][Njoints] = { { -0.785398f, -0.523599f, -1.047198f, -1.047198f, -0.523599f, -1.570796f, -1.047198f, -0.785398f, -1.570796f, -1.570796f, -0.785398f, -1.047198f, -0.785398f, -0.261799f, -0.523599f, -0.785398f, -0.261799f, -0.261799f}, { 0.785398f, 0.523599f, 1.047198f, 1.047198f, 0.523599f, 1.570796f, 2.617994f, 0.785398f, 1.570796f, 1.047198f, 0.785398f, 1.047198f, 0.785398f, 0.261799f, 0.523599f, 0.785398f, 0.261799f, 0.261799f}, };