#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.044081f, 0.047957f, 0.046628f, 0.044177f, 0.046973f, 0.041779f, 0.040622f, 0.041175f, 0.035240f, 0.034748f, 0.037021f, 0.035800f, 0.036003f, 0.036224f, 0.036575f, 0.036652f, 0.036141f, 0.034849f, 0.024070f, 0.019157f, 0.008776f, 0.019864f, 0.008735f, 0.014492f, 0.020627f, 0.025182f, 0.029185f, 0.031698f, 0.035491f, 0.037868f, 0.041423f, 0.044743f, 0.047164f, 0.046583f, 0.050937f, 0.035276f, 0.028400f, 0.023336f, 0.042767f, 0.050300f, 0.044358f, 0.033453f, 0.035425f, 0.037871f, 0.031229f, 0.026803f, 0.020465f, 0.021162f, 0.026447f, 0.026127f, 0.031478f, 0.030293f, 0.030601f, 0.027489f, 0.028188f, 0.022225f, 0.022667f, 0.028554f, 0.022036f, 0.019128f, 0.017643f, 0.010965f, 0.008436f, -0.010017f, -0.005280f, -0.010124f, -0.017634f, -0.005005f, -0.014465f, -0.006459f, -0.006689f, -0.012043f, 0.006231f, -0.005899f, -0.009183f, -0.000917f, -0.007002f, -0.003068f, -0.004746f, -0.007794f, -0.014313f, -0.033063f, -0.020626f, -0.007614f, -0.015627f, -0.027616f, -0.026054f, -0.016569f, -0.020587f, -0.010154f, -0.029006f, -0.006167f, -0.008660f, 0.011834f, 0.007152f, 0.010409f, -0.010674f, 0.007439f, 0.016686f, 0.008565f, 0.007182f, 0.017701f, 0.004813f, 0.004389f, 0.019722f, -0.000514f, -0.000514f, 0.015410f, 0.018507f, 0.029138f, 0.030474f, 0.029094f, 0.020097f, 0.029223f, 0.033407f, 0.041578f, 0.033195f, 0.020169f, 0.003778f, 0.002473f, 0.019578f, 0.032496f, 0.033358f, 0.038842f, 0.039217f, 0.043870f, 0.047798f, 0.040843f}, { -0.044591f, -0.053452f, -0.054579f, -0.056610f, -0.061246f, -0.051879f, -0.046948f, -0.057483f, -0.052142f, -0.038952f, -0.035517f, -0.030050f, -0.029433f, -0.028723f, -0.028006f, -0.027434f, -0.028133f, -0.030035f, -0.022839f, -0.146143f, -0.131814f, -0.128004f, -0.112214f, -0.101020f, -0.104277f, -0.100010f, -0.100871f, -0.105586f, -0.106340f, -0.091914f, -0.100734f, -0.084305f, -0.082402f, -0.076051f, -0.079399f, -0.126988f, -0.132551f, -0.133342f, -0.111215f, -0.060146f, -0.073832f, -0.090613f, -0.084098f, -0.078961f, -0.073083f, -0.084128f, -0.079300f, -0.065893f, -0.060608f, -0.052260f, -0.059419f, -0.038435f, -0.024628f, 0.002083f, -0.005913f, 0.009559f, -0.002265f, -0.010884f, -0.008468f, -0.011128f, -0.007704f, -0.008945f, -0.011773f, -0.141268f, -0.133064f, -0.128064f, -0.119134f, -0.111186f, -0.106745f, -0.104938f, -0.086116f, -0.080098f, 0.034544f, 0.031093f, 0.028047f, 0.015283f, 0.016604f, 0.008018f, 0.005097f, 0.002223f, 0.008441f, 0.050928f, 0.048055f, 0.038300f, 0.035074f, 0.038305f, 0.029129f, 0.018269f, 0.013852f, 0.023598f, 0.050214f, 0.008392f, 0.020207f, 0.001839f, 0.009656f, 0.012199f, 0.031330f, -0.072535f, -0.073269f, -0.078413f, -0.091371f, -0.084140f, -0.101091f, -0.108233f, 0.024584f, -0.093501f, -0.155669f, 0.003049f, 0.006894f, -0.010805f, -0.016086f, -0.011355f, -0.050011f, -0.065590f, -0.062491f, -0.078975f, -0.116491f, -0.120181f, -0.117739f, -0.141183f, -0.019020f, -0.021174f, -0.042016f, -0.039545f, -0.039230f, -0.065303f, -0.058228f, -0.038123f}, { 0.098196f, 0.088529f, 0.076702f, 0.064263f, 0.069163f, 0.053836f, 0.033806f, 0.025398f, 0.010647f, 0.011326f, 0.023145f, 0.031630f, 0.044723f, 0.057794f, 0.070799f, 0.083925f, 0.097902f, 0.112618f, 0.126394f, 0.027385f, 0.009339f, 0.014616f, -0.003687f, -0.006803f, 0.003312f, 0.008084f, 0.019399f, 0.028817f, 0.037191f, 0.033729f, 0.046983f, 0.050505f, 0.060859f, 0.061382f, 0.069667f, 0.039209f, 0.031235f, 0.021235f, 0.051391f, 0.082492f, 0.045382f, 0.019611f, 0.016984f, 0.020137f, 0.004076f, -0.001001f, -0.014522f, -0.015529f, -0.006047f, -0.007905f, 0.003483f, -0.001109f, 0.002801f, 0.031719f, 0.046427f, 0.052936f, 0.071387f, 0.070989f, 0.092477f, 0.108496f, 0.103373f, 0.126183f, 0.141324f, 0.009837f, 0.003598f, -0.002115f, -0.017763f, -0.016293f, -0.025848f, -0.022567f, -0.034258f, -0.039998f, 0.048803f, 0.066734f, 0.082614f, 0.093918f, 0.107945f, 0.120181f, 0.132881f, 0.148723f, 0.146738f, 0.068803f, 0.062174f, 0.058486f, 0.080697f, 0.096010f, 0.119336f, 0.128678f, 0.140871f, 0.097815f, 0.069181f, 0.128152f, 0.102828f, 0.093944f, 0.085990f, 0.070326f, 0.077881f, -0.035153f, -0.022163f, -0.031444f, -0.023182f, -0.015827f, -0.016507f, -0.010625f, 0.043830f, -0.026875f, 0.021991f, 0.080115f, 0.062831f, 0.052851f, 0.036722f, 0.026241f, -0.019841f, -0.000590f, 0.007094f, 0.031576f, 0.034304f, 0.011985f, -0.003746f, 0.012405f, 0.128941f, 0.049074f, 0.007299f, 0.028769f, 0.046318f, 0.052605f, 0.074088f, 0.107786f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.913454f, 0.913896f, 0.952672f, 0.992845f, 0.948412f, 1.026179f, 1.022757f, 1.014371f, 0.930147f, 0.964451f, 0.990119f, 0.963034f, 0.964533f, 0.967985f, 0.973606f, 0.959457f, 0.903525f, 0.812940f, 0.730408f, 0.679579f, 0.469647f, 0.660367f, 0.588720f, 0.682357f, 0.749162f, 0.897457f, 0.922334f, 0.920589f, 0.904846f, 0.908088f, 0.954342f, 1.019728f, 0.991626f, 0.995188f, 0.932287f, 0.858835f, 0.862462f, 0.866393f, 0.931421f, 0.939425f, 1.039938f, 0.868544f, 0.918487f, 0.970134f, 0.905175f, 0.916475f, 0.824232f, 0.893279f, 0.907677f, 0.916979f, 0.918667f, 0.985262f, 1.013185f, 1.023463f, 1.007946f, 0.838137f, 0.806069f, 0.889786f, 0.741838f, 0.723968f, 0.721967f, 0.714691f, 0.712132f, -0.037850f, 0.192357f, 0.170151f, 0.151024f, 0.511803f, 0.308730f, 0.446248f, 0.327647f, 0.378462f, 0.591289f, 0.662593f, 0.681983f, 0.702811f, 0.694439f, 0.700636f, 0.682175f, 0.638835f, 0.487743f, -0.020339f, 0.539665f, 0.611705f, 0.626342f, 0.205399f, 0.408507f, 0.582603f, 0.308328f, 0.688373f, 0.267818f, 0.685870f, 0.693181f, 0.715640f, 0.710877f, 0.707542f, 0.674297f, 0.580228f, 0.870182f, 0.605454f, 0.547536f, 0.773832f, 0.550121f, 0.565556f, 0.774198f, 0.453218f, 0.275997f, 0.730164f, 0.763504f, 0.988017f, 0.991051f, 1.009090f, 0.936962f, 0.912551f, 0.914322f, 0.984950f, 0.898600f, 0.723680f, 0.529259f, 0.335127f, 0.723615f, 0.962667f, 0.956591f, 1.005134f, 1.007676f, 1.032345f, 0.955041f, 0.889494f}, { 0.445796f, 0.424511f, 0.343123f, 0.141804f, 0.182123f, 0.116383f, 0.135698f, 0.018921f, -0.037295f, 0.080703f, 0.245810f, 0.343059f, 0.341013f, 0.331568f, 0.318466f, 0.357644f, 0.459945f, 0.575006f, 0.642786f, -0.747249f, -0.612166f, -0.422516f, -0.602033f, -0.578580f, -0.519930f, -0.418013f, -0.378347f, -0.302469f, -0.234600f, -0.413261f, -0.222147f, -0.144664f, -0.002045f, 0.046005f, 0.043143f, -0.261805f, -0.411832f, -0.422939f, -0.135390f, 0.357554f, -0.057047f, -0.491839f, -0.390192f, -0.283724f, -0.187761f, -0.300794f, -0.274676f, -0.101983f, -0.107829f, -0.168583f, -0.074430f, -0.076603f, 0.090912f, 0.087910f, 0.191322f, 0.426314f, 0.588884f, 0.491537f, 0.648627f, 0.655921f, 0.659714f, 0.658944f, 0.656113f, -0.749524f, -0.761561f, -0.858046f, -0.829364f, -0.680905f, -0.613269f, -0.642896f, -0.539539f, -0.578045f, 0.589507f, 0.686437f, 0.706841f, 0.683150f, 0.686147f, 0.675904f, 0.684495f, 0.710052f, 0.827515f, 0.962668f, 0.739481f, 0.624073f, 0.756901f, 0.989785f, 0.817132f, 0.738072f, 0.832449f, 0.696167f, 0.934655f, 0.683319f, 0.689545f, 0.669670f, 0.677533f, 0.663187f, 0.712623f, -0.400705f, -0.219130f, -0.466149f, -0.621205f, -0.413485f, -0.658438f, -0.646378f, 0.558774f, -0.601718f, -0.778220f, 0.661679f, 0.574751f, 0.271920f, 0.260682f, 0.187658f, -0.215207f, -0.101830f, -0.071904f, -0.282429f, -0.191256f, -0.397861f, -0.628274f, -0.690176f, 0.648627f, 0.343956f, 0.000241f, 0.203866f, 0.209776f, 0.076827f, 0.305258f, 0.489972f}, { 0.037260f, -0.058780f, -0.067925f, -0.182030f, -0.288858f, 0.002410f, -0.011473f, -0.191515f, -0.435357f, -0.337005f, -0.088479f, -0.000407f, 0.020197f, 0.012937f, 0.026878f, 0.095971f, 0.194981f, 0.281442f, 0.367289f, -0.422631f, -0.736892f, -0.694621f, -0.654606f, -0.577673f, -0.541179f, -0.363413f, -0.334567f, -0.384837f, -0.440063f, -0.339706f, -0.342680f, -0.163412f, -0.257786f, -0.230598f, -0.386628f, -0.511767f, -0.444520f, -0.431962f, -0.406549f, -0.104547f, -0.047021f, -0.356741f, -0.338693f, -0.278120f, -0.468224f, -0.402921f, -0.576471f, -0.503494f, -0.476371f, -0.447054f, -0.457678f, -0.295350f, -0.142732f, 0.057597f, 0.080667f, 0.453690f, 0.263286f, 0.147487f, 0.316330f, 0.349838f, 0.345202f, 0.368454f, 0.383688f, -0.783416f, -0.748686f, -0.661377f, -0.701231f, -0.655300f, -0.825209f, -0.733663f, -0.860471f, -0.814307f, 0.640177f, 0.418360f, 0.330664f, 0.336242f, 0.352264f, 0.362523f, 0.390869f, 0.433060f, 0.424330f, 0.479374f, 0.518248f, 0.581281f, 0.339235f, 0.296978f, 0.555463f, 0.479215f, 0.611735f, 0.342171f, 0.429264f, 0.384194f, 0.346565f, 0.336138f, 0.328295f, 0.370692f, 0.336059f, -0.786297f, -0.522433f, -0.733856f, -0.676859f, -0.581334f, -0.642609f, -0.639505f, 0.425154f, -0.758888f, -0.710110f, 0.315343f, 0.412858f, 0.077734f, 0.010417f, 0.026680f, -0.383255f, -0.467943f, -0.466087f, -0.230447f, -0.461159f, -0.642207f, -0.684352f, -0.754373f, 0.370972f, 0.010824f, -0.374611f, -0.055082f, 0.037186f, 0.000487f, -0.137544f, 0.137921f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.020749f, 0.021985f, 0.023727f, 0.027888f, -0.008568f, -0.007002f, -0.011395f, -0.019410f, -0.006903f, -0.005844f, -0.001418f, -0.003698f, -0.001953f, -0.004534f, -0.035152f, -0.034654f, -0.040141f, -0.037708f, -0.045359f, -0.030578f, -0.035051f, -0.027127f, -0.030500f, -0.048994f, -0.021335f, -0.021755f, -0.015960f, -0.017924f, -0.024473f, -0.030945f, 0.011242f, 0.011611f, 0.017344f, 0.007017f, 0.007175f, 0.007498f, 0.003249f, 0.000315f, 0.014511f, 0.014334f, 0.016129f, 0.019299f, 0.024260f, 0.021050f, 0.028192f, 0.027083f, 0.025690f, 0.030816f, 0.028874f, 0.030492f, 0.029796f, 0.029740f, 0.027857f, 0.027354f, 0.021889f, -0.001683f, 0.009915f, 0.009156f, 0.025039f, -0.013870f, -0.021173f, -0.005448f, 0.028764f, 0.019111f}, { -0.024972f, -0.005988f, 0.008332f, 0.002163f, -0.049962f, -0.042475f, -0.039756f, -0.031977f, -0.018654f, -0.006171f, 0.086760f, 0.075774f, 0.063424f, 0.059128f, 0.073700f, 0.077515f, 0.095291f, 0.106584f, -0.011383f, -0.031031f, -0.051531f, -0.065677f, -0.052101f, 0.118210f, 0.092384f, 0.083119f, 0.072834f, 0.070260f, 0.077027f, 0.094650f, 0.045546f, 0.072831f, 0.068591f, 0.002509f, -0.005321f, -0.012184f, -0.034018f, -0.038730f, -0.033107f, -0.016815f, -0.003393f, 0.007137f, 0.014331f, 0.015069f, 0.056094f, 0.055654f, 0.054931f, 0.034276f, 0.042314f, 0.020931f, 0.021004f, 0.023802f, 0.023425f, 0.028801f, 0.019137f, -0.025003f, -0.011593f, 0.006086f, 0.041571f, 0.096836f, -0.023743f, -0.050041f, 0.015673f, -0.022360f}, { -0.041786f, -0.041780f, -0.044697f, -0.022470f, -0.061952f, -0.069065f, -0.080580f, -0.093617f, -0.093091f, -0.101404f, -0.020003f, -0.000861f, 0.011484f, 0.024812f, 0.048488f, 0.042288f, 0.018262f, 0.004670f, -0.104999f, -0.097353f, -0.087916f, -0.066156f, -0.085734f, -0.003215f, 0.003142f, 0.014469f, 0.020898f, 0.032513f, 0.030526f, 0.012902f, 0.017909f, -0.019830f, -0.025047f, -0.088604f, -0.074068f, -0.069136f, -0.062294f, -0.062565f, -0.047429f, -0.055624f, -0.056697f, -0.057494f, -0.051499f, -0.067964f, -0.049798f, -0.035495f, -0.021316f, -0.022068f, -0.009798f, -0.008325f, -0.035088f, -0.042966f, -0.055152f, -0.066715f, -0.073210f, -0.079262f, -0.065249f, -0.087864f, 0.000375f, -0.013544f, -0.099278f, -0.058902f, -0.036362f, -0.045418f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.870070f, 0.927603f, 0.860200f, 1.023458f, 0.566630f, 0.665570f, 0.650401f, 0.354028f, 0.655580f, 0.651340f, 0.694679f, 0.635830f, 0.652956f, 0.692917f, 0.035519f, -0.001529f, 0.124756f, 0.260901f, -0.530302f, 0.056183f, 0.206403f, 0.600583f, 0.343858f, -0.332444f, 0.651302f, 0.651947f, 0.674808f, 0.657758f, 0.567629f, 0.526917f, 0.698050f, 0.712031f, 0.759476f, 0.848849f, 0.842494f, 0.833972f, 0.751336f, 0.726687f, 0.823208f, 0.881339f, 0.913655f, 0.914298f, 0.861700f, 0.872242f, 0.999745f, 0.971613f, 0.917368f, 1.028105f, 0.945405f, 1.025258f, 1.019198f, 1.013009f, 0.948918f, 0.954885f, 0.862571f, 0.843008f, 0.845841f, 0.854005f, 0.812530f, 0.681067f, 0.515481f, 0.566108f, 1.003591f, 0.853658f}, { -0.229566f, -0.056602f, -0.366002f, -0.067888f, -0.649927f, -0.627111f, -0.631834f, -0.503733f, -0.434883f, -0.534757f, 0.735220f, 0.660948f, 0.673369f, 0.725943f, 0.703338f, 1.013614f, 0.838419f, 0.847138f, -0.554670f, -0.530942f, -0.627289f, -0.687945f, -0.659941f, 0.682908f, 0.642925f, 0.675518f, 0.723361f, 0.748180f, 0.814658f, 0.711326f, 0.687285f, 0.716067f, 0.695218f, -0.474469f, -0.381989f, -0.286242f, -0.444553f, -0.497305f, -0.382172f, -0.176116f, -0.242384f, -0.379336f, -0.459160f, -0.455211f, 0.278300f, 0.369275f, 0.480502f, 0.105555f, 0.372344f, -0.073894f, -0.114087f, -0.140787f, -0.314587f, -0.223440f, -0.430625f, -0.385559f, -0.265857f, -0.473374f, 0.502340f, 0.714992f, -0.532477f, -0.613509f, -0.181289f, -0.211123f}, { -0.528402f, -0.462843f, -0.444930f, -0.085181f, -0.618000f, -0.522769f, -0.540438f, -0.892360f, -0.715882f, -0.638719f, 0.288134f, 0.497712f, 0.457647f, 0.287339f, 0.822155f, 0.392461f, 0.666775f, 0.606677f, -0.790323f, -0.959073f, -0.869070f, -0.533877f, -0.786011f, 0.771880f, 0.497573f, 0.456270f, 0.336579f, 0.322133f, 0.355049f, 0.568330f, 0.359178f, 0.289460f, 0.212816f, -0.341211f, -0.474522f, -0.560899f, -0.583665f, -0.574516f, -0.520886f, -0.527774f, -0.427277f, -0.280241f, -0.324447f, -0.301009f, 0.032113f, 0.061994f, 0.132957f, -0.040324f, 0.216146f, 0.029732f, -0.088322f, -0.121022f, -0.248528f, -0.342506f, -0.374819f, -0.474857f, -0.551642f, -0.325241f, 0.409705f, 0.353805f, -0.772474f, -0.655415f, -0.140852f, -0.563008f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.022143f, -0.006723f, -0.007853f, -0.002709f, 0.002509f, 0.005379f, -0.068024f, -0.074204f, -0.067133f, -0.067044f, -0.068624f, -0.074706f, -0.073941f, -0.059142f, -0.066453f, -0.066478f, -0.066012f, -0.060570f, -0.060661f, -0.073960f, -0.067193f, -0.074205f, -0.088744f, -0.089362f, -0.084266f, -0.089039f, -0.090421f, -0.097273f, -0.088798f, -0.090751f, -0.088135f, -0.095761f, -0.094167f, -0.094307f, -0.100620f, -0.096178f, -0.084239f, -0.103417f, -0.112864f, -0.123768f, -0.121228f, -0.124251f, -0.121340f, -0.117338f, -0.121347f, -0.112785f, -0.119941f, -0.121502f, -0.125872f, -0.126221f, -0.113951f, -0.110169f, -0.111269f, -0.108698f, -0.104523f, -0.114920f, -0.122846f, -0.120925f, -0.115949f, -0.128418f, -0.129605f, -0.129163f, -0.127817f, -0.124408f, -0.129882f, -0.128396f, -0.130549f, -0.110260f, -0.125885f, -0.100600f, -0.107789f, -0.110251f, -0.101424f, -0.086012f, -0.099312f, -0.079757f, -0.041564f, -0.034583f, -0.041004f, -0.043676f, -0.036839f, -0.039254f, -0.041910f, -0.039578f, -0.033645f, -0.042937f, -0.033977f, -0.042566f, -0.024181f, -0.033837f, -0.031801f, -0.033588f, -0.034166f, -0.048425f, -0.048365f, -0.041845f, -0.004058f, 0.008400f, 0.010289f, 0.001912f, -0.006030f, 0.000802f, -0.000695f, 0.001829f, -0.006146f, -0.007517f, -0.007464f, 0.001206f, -0.008062f, -0.003475f, -0.003643f, -0.002691f, 0.004267f, 0.000393f, 0.011001f, -0.000003f, -0.004808f, 0.008913f, 0.009580f, 0.007848f, 0.003827f, 0.023277f, 0.023974f, 0.011813f, 0.008307f, 0.022537f, 0.022291f, 0.032892f, 0.033481f, 0.032640f, 0.028474f, 0.035070f, 0.022236f, 0.031079f, 0.035872f, 0.043827f, 0.037191f, 0.050606f, 0.050746f, 0.048869f, 0.040711f, 0.040737f, 0.043770f, 0.035315f, 0.041139f, 0.033200f, 0.048854f, 0.045764f, 0.035671f, 0.040015f, 0.063354f, 0.059815f, 0.048839f, 0.056001f, 0.046160f, 0.046433f, 0.059548f, 0.064189f, 0.064492f, 0.064701f, 0.078212f, 0.069546f, 0.062502f, 0.077202f, 0.063115f, 0.058936f, 0.058569f, 0.066094f, 0.086131f, 0.082462f, 0.087741f, 0.089160f, 0.090358f, 0.083178f, 0.078860f, 0.074550f, 0.057088f, 0.080096f, 0.052489f, 0.068611f, 0.067791f, 0.067656f, 0.053335f, 0.052480f, 0.022892f, 0.023258f, 0.054800f, 0.023322f, 0.022591f, 0.029172f, 0.027504f, 0.032178f, 0.033003f, 0.030265f, 0.027955f, 0.010664f, 0.018048f, 0.019201f, 0.022122f, 0.041213f, 0.015816f, 0.027545f, 0.027931f, -0.018615f, -0.008241f, -0.019301f, -0.021608f, 0.014056f, 0.015094f, -0.013416f, -0.017789f, -0.019871f, -0.023368f, -0.021836f, -0.018613f, -0.022706f, -0.028842f, -0.026845f, -0.020870f, -0.013704f, -0.016670f, -0.009739f, -0.009103f, -0.009512f, -0.025645f, -0.013306f, -0.011789f, -0.026053f, -0.027888f, 0.013984f, 0.005731f, -0.008560f, 0.012385f, -0.040942f, -0.045824f, -0.052043f, -0.043998f, -0.048657f, -0.050267f, -0.056059f, -0.046258f, -0.028891f, -0.051813f, -0.042883f, -0.051869f, -0.061587f, -0.079679f, -0.054606f, -0.053887f, -0.082467f, -0.082179f, -0.053504f, -0.055531f, -0.001505f, 0.000166f, -0.028556f}, { 0.053667f, 0.056215f, 0.067811f, 0.078287f, 0.086857f, 0.087862f, 0.062914f, 0.074004f, 0.089352f, 0.103074f, 0.110585f, 0.122570f, 0.136525f, 0.142425f, 0.151506f, 0.155895f, 0.158387f, 0.161755f, 0.164835f, 0.165485f, 0.167142f, 0.163684f, 0.158778f, 0.166761f, 0.167339f, 0.168375f, 0.166524f, 0.166544f, 0.163751f, 0.159783f, 0.149490f, 0.137478f, 0.116350f, 0.102567f, 0.094050f, 0.084681f, 0.070629f, 0.093126f, 0.109430f, 0.115145f, 0.111101f, 0.123124f, 0.124592f, 0.141813f, 0.152020f, 0.157198f, 0.157918f, 0.163239f, 0.160886f, 0.152955f, 0.166908f, 0.170127f, 0.171115f, 0.168447f, 0.167384f, 0.162776f, 0.149779f, 0.130537f, 0.122625f, 0.128389f, 0.133897f, 0.136732f, 0.138869f, 0.136675f, 0.151997f, 0.131381f, 0.149749f, 0.152892f, 0.131494f, 0.087343f, 0.143346f, 0.163962f, 0.168087f, 0.169473f, 0.158033f, 0.159331f, 0.182047f, 0.176028f, 0.177057f, 0.173782f, 0.179452f, 0.177430f, 0.173381f, 0.172173f, 0.172634f, 0.160138f, 0.145290f, 0.149416f, 0.129409f, 0.116017f, 0.109505f, 0.096954f, 0.082197f, 0.081434f, 0.067919f, 0.056354f, 0.089168f, 0.091938f, 0.098101f, 0.110388f, 0.130186f, 0.142195f, 0.149548f, 0.171757f, 0.171704f, 0.179930f, 0.192743f, 0.210744f, 0.206906f, 0.217461f, 0.217932f, 0.216551f, 0.219994f, 0.212125f, 0.220328f, 0.206355f, 0.184046f, 0.183608f, 0.170684f, 0.164452f, 0.144881f, 0.115304f, 0.104637f, 0.094704f, 0.091969f, 0.097798f, 0.095124f, 0.098242f, 0.091598f, 0.090271f, 0.088391f, 0.089267f, 0.097836f, 0.107262f, 0.228284f, 0.214635f, 0.198500f, 0.197376f, 0.184785f, 0.178289f, 0.165876f, 0.152346f, 0.133446f, 0.124782f, 0.111404f, 0.105878f, 0.110482f, 0.104711f, 0.099769f, 0.101721f, 0.102556f, 0.096626f, 0.093318f, 0.089866f, 0.087551f, 0.087359f, 0.205269f, 0.184147f, 0.171409f, 0.158102f, 0.159485f, 0.154667f, 0.133198f, 0.132525f, 0.124067f, 0.105968f, 0.111113f, 0.105211f, 0.112645f, 0.104271f, 0.168970f, 0.121448f, 0.134481f, 0.161229f, 0.101743f, 0.103160f, 0.129100f, 0.151722f, 0.208732f, 0.093503f, 0.094924f, 0.096618f, 0.104954f, 0.115503f, 0.128617f, 0.144055f, 0.152834f, 0.157393f, 0.170173f, 0.186204f, 0.193806f, 0.207224f, 0.215586f, 0.216984f, 0.231583f, 0.223235f, 0.231396f, 0.126969f, 0.118440f, 0.086448f, 0.091708f, 0.099141f, 0.104630f, 0.164245f, 0.157781f, 0.167856f, 0.169012f, 0.153086f, 0.185328f, 0.193194f, 0.196126f, 0.196221f, 0.192942f, 0.191809f, 0.189511f, 0.179437f, 0.177009f, 0.158145f, 0.152285f, 0.148058f, 0.131727f, 0.118128f, 0.112928f, 0.208485f, 0.186513f, 0.204821f, 0.204365f, 0.190155f, 0.187071f, 0.218114f, 0.226927f, 0.159445f, 0.091644f, 0.098198f, 0.116475f, 0.132984f, 0.142236f, 0.154731f, 0.161134f, 0.158474f, 0.169670f, 0.178487f, 0.174139f, 0.183649f, 0.175177f, 0.171429f, 0.166433f, 0.162990f, 0.155407f, 0.150872f, 0.124018f, 0.089620f, 0.083121f, 0.060837f, 0.072419f, 0.056069f}, { -0.173586f, -0.169909f, -0.173515f, -0.167762f, -0.169537f, -0.158518f, -0.170568f, -0.172205f, -0.174258f, -0.174751f, -0.175405f, -0.176046f, -0.176895f, -0.175862f, -0.169682f, -0.159512f, -0.153756f, -0.148279f, -0.136135f, -0.115848f, -0.110697f, -0.096080f, -0.103867f, -0.111542f, -0.132265f, -0.141158f, -0.152581f, -0.166720f, -0.161054f, -0.171632f, -0.175712f, -0.175152f, -0.174061f, -0.173254f, -0.169782f, -0.167847f, -0.166143f, -0.167553f, -0.166943f, -0.153488f, -0.144276f, -0.142268f, -0.130756f, -0.117082f, -0.129720f, -0.123353f, -0.135901f, -0.146852f, -0.168299f, -0.170955f, -0.171294f, -0.169998f, -0.153930f, -0.139599f, -0.128582f, -0.135734f, -0.172384f, -0.172238f, -0.171726f, -0.160703f, -0.160042f, -0.148333f, -0.134505f, -0.125916f, -0.167267f, -0.155981f, -0.148924f, -0.115449f, -0.131261f, -0.166451f, -0.174265f, -0.173210f, -0.168144f, -0.114766f, -0.105087f, -0.095900f, -0.085513f, -0.100593f, -0.114943f, -0.129823f, -0.121870f, -0.134934f, -0.148512f, -0.162855f, -0.177640f, -0.170650f, -0.195974f, -0.182188f, -0.203769f, -0.187067f, -0.185077f, -0.179681f, -0.176458f, -0.174629f, -0.174445f, -0.174564f, -0.178692f, -0.188433f, -0.210879f, -0.215586f, -0.224078f, -0.235723f, -0.235906f, -0.230852f, -0.218048f, -0.210863f, -0.203775f, -0.209302f, -0.190728f, -0.185035f, -0.171708f, -0.157327f, -0.149031f, -0.135772f, -0.139114f, -0.130279f, -0.124057f, -0.123239f, -0.124581f, -0.124565f, -0.114928f, -0.119823f, -0.134054f, -0.149857f, -0.167428f, -0.164055f, -0.176425f, -0.169752f, -0.193024f, -0.198674f, -0.206206f, -0.223664f, -0.222300f, -0.237930f, -0.149460f, -0.131162f, -0.125742f, -0.125862f, -0.125772f, -0.125631f, -0.123751f, -0.123813f, -0.126785f, -0.125322f, -0.131304f, -0.139806f, -0.136892f, -0.151644f, -0.164963f, -0.159744f, -0.162739f, -0.182424f, -0.189863f, -0.204677f, -0.226620f, -0.212177f, -0.135803f, -0.126363f, -0.126169f, -0.126357f, -0.128711f, -0.127414f, -0.132490f, -0.140167f, -0.136520f, -0.152495f, -0.142141f, -0.157712f, -0.170079f, -0.184382f, -0.130601f, -0.161781f, -0.148368f, -0.130365f, -0.184650f, -0.168001f, -0.131639f, -0.131403f, -0.131404f, -0.210031f, -0.196780f, -0.188748f, -0.153572f, -0.133672f, -0.120638f, -0.124694f, -0.124729f, -0.125017f, -0.123478f, -0.124217f, -0.125029f, -0.127816f, -0.133095f, -0.135788f, -0.155916f, -0.143087f, -0.162034f, -0.246251f, -0.239995f, -0.217805f, -0.204864f, -0.162815f, -0.140789f, -0.102325f, -0.114764f, -0.108811f, -0.086773f, -0.124402f, -0.122957f, -0.130895f, -0.143089f, -0.155357f, -0.162675f, -0.176609f, -0.189101f, -0.190377f, -0.182469f, -0.198561f, -0.210343f, -0.221398f, -0.215483f, -0.211387f, -0.206334f, -0.183293f, -0.177239f, -0.156770f, -0.148384f, -0.149705f, -0.136476f, -0.137634f, -0.183407f, -0.222938f, -0.194261f, -0.178122f, -0.181508f, -0.181732f, -0.184581f, -0.171058f, -0.160279f, -0.157596f, -0.142107f, -0.115512f, -0.107879f, -0.088773f, -0.095284f, -0.101551f, -0.130702f, -0.148591f, -0.164326f, -0.174750f, -0.175294f, -0.174840f, -0.174346f, -0.167182f, -0.164353f, -0.174342f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.159082f, 0.405440f, 0.437374f, 0.663098f, 0.711859f, 0.907670f, -0.402346f, -0.317626f, -0.084825f, -0.159979f, -0.193217f, -0.202887f, -0.118601f, -0.201902f, 0.065688f, 0.014034f, -0.118292f, -0.255090f, -0.210388f, -0.064041f, -0.471029f, -0.676244f, -0.105990f, -0.326225f, 0.131855f, 0.266794f, 0.329222f, 0.317618f, 0.358855f, 0.255817f, -0.029475f, -0.203006f, -0.129368f, -0.280763f, -0.572097f, -0.587615f, -0.580136f, -0.775841f, -0.669941f, -1.052521f, -1.026162f, -1.040795f, -0.939079f, -0.975808f, -0.856211f, -0.729797f, -0.800964f, -0.744409f, -0.744049f, -0.629984f, -0.481878f, -0.004762f, -0.273068f, -0.571433f, -0.626367f, -0.723185f, -0.396903f, -0.408904f, -0.484170f, -1.087403f, -1.104917f, -1.095253f, -1.106652f, -0.934633f, -0.998075f, -1.094565f, -1.104111f, -0.765977f, -1.021375f, -0.736842f, -0.203848f, -0.236504f, 0.246391f, 0.005293f, -0.649351f, -0.708020f, 0.091823f, 0.228760f, -0.342900f, -0.666313f, -0.455388f, -0.728682f, -0.788029f, -0.813619f, -0.852967f, -0.798752f, -0.809974f, -0.737478f, -0.780127f, -0.473632f, -0.423019f, -0.284254f, -0.172350f, -0.118764f, -0.065737f, -0.085151f, 0.115540f, -0.134769f, -0.543028f, -0.570749f, -0.580792f, -0.693604f, -0.753740f, -0.813397f, -0.774608f, -0.773692f, -0.802736f, -0.860177f, -0.857108f, -0.784635f, -0.715709f, -0.621741f, -0.641666f, -0.702183f, 0.120599f, -0.577476f, -0.019634f, -0.057548f, 0.023994f, 0.169829f, 0.606437f, 0.595471f, 0.417021f, 0.665103f, 0.527117f, 0.244435f, 0.197218f, 0.150067f, 0.057482f, 0.041113f, -0.038491f, -0.332921f, -0.503510f, -0.550661f, -0.044389f, 0.202582f, -0.020229f, 0.172602f, 0.083806f, 0.115353f, 0.125718f, 0.016304f, 0.178905f, 0.319557f, 0.352385f, 0.238254f, 0.350948f, 0.158475f, 0.149957f, 0.152898f, 0.176820f, 0.205529f, 0.144024f, 0.277354f, -0.149188f, 0.109186f, 0.699396f, 0.181687f, 0.112375f, 0.202317f, 0.375904f, 0.269600f, 0.450347f, 0.516944f, 0.544133f, 0.220933f, 0.441468f, 0.312426f, 0.790148f, 0.633907f, 0.969392f, 0.870638f, 0.720944f, 0.527286f, 0.537313f, 0.461563f, 0.458582f, 0.502546f, 0.615987f, 0.511022f, 0.350964f, 0.335164f, 0.152382f, 0.516194f, 0.541931f, 0.259238f, 0.211224f, -0.038917f, -0.041581f, 0.140301f, 0.125019f, -0.240823f, -0.197669f, -0.291861f, -0.121622f, -0.021331f, -0.428994f, -0.615477f, -0.592434f, -0.008860f, -0.411961f, 0.217246f, 0.260804f, 0.717086f, 0.614638f, 0.661643f, 0.667606f, 0.240183f, 0.019466f, -0.523987f, -0.663004f, -0.736753f, -0.740909f, -0.806694f, -0.808170f, -0.790452f, -0.822959f, -0.795159f, -0.785880f, -0.773438f, -0.692067f, -0.620445f, -0.631763f, -0.863545f, -0.824218f, -0.795574f, -0.738068f, -0.677037f, -0.582922f, 0.221957f, -0.655978f, -0.781169f, -0.215657f, -0.260653f, -0.398438f, -0.506899f, -0.729481f, -0.535654f, -0.653985f, -0.483820f, -0.688248f, 0.084841f, -0.373893f, -0.078871f, -0.418594f, -0.496697f, 0.050216f, -0.397667f, -0.337877f, 0.098754f, -0.194361f, -0.146870f, -0.091051f, 0.867872f, 0.681039f, 0.023905f}, { -0.059833f, -0.439137f, 0.076637f, -0.135893f, -0.588076f, -0.324644f, -0.284370f, -0.159721f, 0.079152f, 0.015335f, -0.004388f, 0.014143f, 0.198106f, 0.594335f, 0.919968f, 1.103173f, 1.024917f, 1.095039f, 1.127478f, 1.131288f, 1.074159f, 0.961317f, 0.868259f, 0.939326f, 1.143653f, 1.091314f, 1.054489f, 1.012253f, 1.028369f, 0.806500f, 0.329266f, 0.051263f, 0.093332f, 0.000876f, -0.125088f, -0.414588f, -0.448300f, -0.239598f, -0.312994f, -0.254314f, -0.198796f, -0.178688f, -0.386689f, 0.331056f, 0.649643f, 0.778027f, 0.778810f, 0.853463f, 0.784097f, 0.231823f, 0.579290f, 1.053297f, 1.147830f, 1.031062f, 0.944123f, 0.879864f, 0.186565f, -0.102569f, -0.174594f, -0.151675f, -0.062774f, -0.095770f, 0.095665f, 0.078718f, 0.226432f, -0.098940f, 0.276561f, 0.705847f, -0.221322f, -0.440997f, 0.103549f, 0.399746f, 1.027071f, 1.048047f, 0.868522f, 0.934913f, 1.072359f, 1.127156f, 1.129476f, 0.946540f, 1.084011f, 0.901465f, 0.828271f, 0.768506f, 0.558498f, 0.637608f, 0.347979f, 0.465791f, -0.254490f, -0.271484f, -0.274013f, -0.167257f, -0.072458f, 0.018809f, 0.062512f, 0.012161f, -0.704774f, -0.884808f, -0.584652f, -0.446245f, -0.283629f, -0.102430f, 0.096324f, 0.493755f, 0.507977f, 0.582898f, 0.439959f, 0.550895f, 0.648215f, 0.829459f, 0.919334f, 0.973871f, 0.972154f, 0.812144f, 0.989463f, 0.670304f, 0.361129f, 0.138202f, 0.099111f, 0.238786f, 0.651929f, -0.076156f, -0.784012f, -0.660321f, -0.762911f, -0.862875f, -0.862696f, -0.864968f, -0.875557f, -0.882075f, -0.895282f, -0.700964f, -0.484864f, -0.481681f, 1.064738f, 0.955307f, 0.272365f, 0.335915f, 0.182215f, 0.216463f, 0.222338f, 0.052020f, 0.019359f, 0.157922f, -0.596498f, -0.840875f, -0.687503f, -0.852849f, -0.863357f, -0.851193f, -0.829348f, -0.854795f, -0.846658f, -0.870326f, -0.856699f, -0.894357f, 0.839600f, 0.304089f, 0.157239f, 0.118451f, 0.001604f, 0.028802f, -0.225955f, -0.319426f, -0.230077f, -0.816615f, -0.612755f, -0.781300f, -0.539113f, -0.718644f, -0.039899f, -0.329739f, -0.350609f, 0.024468f, -0.776220f, -0.757238f, -0.154459f, -0.144054f, 0.747151f, -0.790668f, -0.850740f, -0.841054f, -0.847056f, -0.361023f, 0.302300f, 0.306503f, 0.118868f, 0.072157f, 0.091322f, 0.282538f, 0.374178f, 0.571175f, 0.875602f, 0.902648f, 1.026813f, 1.090954f, 1.077347f, -0.411004f, -0.458144f, -0.911685f, -0.798303f, -0.861382f, -0.850536f, 0.834137f, 0.624733f, 0.755362f, 0.878914f, 0.370417f, 0.192815f, 0.806985f, 0.925034f, 0.889759f, 0.888072f, 0.769201f, 0.618101f, 0.553322f, 0.591635f, 0.492931f, 0.434349f, 0.275805f, -0.234096f, -0.440142f, -0.487877f, 0.686253f, 0.719784f, 0.816367f, 0.847183f, 0.946805f, 1.003119f, 0.932008f, 0.976658f, 0.491810f, -0.880959f, -0.110810f, -0.155309f, 0.160720f, 0.581770f, 0.919224f, 0.764686f, 0.831957f, 0.924870f, 1.061270f, 1.114666f, 1.144464f, 1.103845f, 1.064021f, 1.155096f, 1.079753f, 1.044536f, 0.515857f, 0.020504f, 0.001565f, 0.058186f, -0.123873f, 0.010044f, 0.022276f}, { -1.150456f, -0.934597f, -1.068889f, -0.882484f, -0.372731f, -0.283858f, -1.046709f, -1.113544f, -1.174049f, -1.166550f, -1.160929f, -1.161852f, -1.173997f, -1.056428f, -0.795784f, -0.469646f, -0.650135f, -0.450179f, -0.361746f, 0.143237f, -0.230014f, -0.132551f, 0.600646f, 0.477558f, -0.142343f, -0.288014f, -0.340781f, -0.502341f, -0.389180f, -0.851079f, -1.157669f, -1.165639f, -1.173176f, -1.150440f, -1.023999f, -0.881444f, -0.862419f, -0.828720f, -0.881942f, -0.183801f, 0.147372f, 0.120135f, 0.133619f, 0.359590f, 0.331092f, 0.360246f, 0.252301f, 0.221355f, -0.647324f, -1.031190f, -1.004703f, -0.627054f, -0.013041f, 0.064781f, 0.224059f, 0.204560f, -1.133394f, -1.101070f, -1.052677f, -0.116960f, -0.059605f, -0.036022f, 0.065531f, 0.457331f, -0.657879f, -0.039925f, 0.041068f, 0.398628f, 0.140064f, -0.728637f, -1.168845f, -1.136780f, -0.543872f, 0.354031f, 0.333846f, -0.034594f, 0.349863f, -0.261857f, -0.073026f, -0.252984f, -0.040697f, -0.156456f, -0.268621f, -0.375567f, -0.601692f, -0.618719f, -0.793257f, -0.827946f, -0.734021f, -0.997266f, -1.021654f, -1.111002f, -1.154715f, -1.170184f, -1.174280f, -1.172648f, -0.774806f, -0.348025f, -0.688046f, -0.817432f, -0.930056f, -0.912449f, -0.891718f, -0.712229f, -0.762462f, -0.711455f, -0.757333f, -0.586552f, -0.481189f, -0.308510f, -0.140134f, 0.050622f, -0.018548f, 0.246804f, 0.490504f, 0.541491f, 0.860027f, 0.873516f, 0.872750f, 0.859426f, 0.501321f, 0.677634f, 0.102204f, -0.093738f, -0.171448f, 0.002883f, 0.051569f, 0.072107f, 0.060028f, 0.034715f, -0.039165f, -0.713681f, -0.842018f, -0.798933f, 0.392669f, 0.521680f, 0.869872f, 0.856952f, 0.873678f, 0.871426f, 0.871029f, 0.870842f, 0.857452f, 0.832857f, 0.502730f, 0.108408f, 0.384605f, 0.113642f, 0.078610f, 0.121702f, 0.181760f, 0.088805f, 0.137834f, -0.034287f, -0.491632f, -0.032462f, 0.298038f, 0.859440f, 0.872584f, 0.863335f, 0.812805f, 0.844253f, 0.716383f, 0.635956f, 0.665480f, 0.197644f, 0.431795f, 0.233974f, 0.112006f, -0.047559f, 0.292560f, 0.269174f, 0.457478f, 0.755109f, -0.046798f, 0.163566f, 0.739221f, 0.725366f, 0.495155f, -0.059985f, -0.036991f, 0.033085f, 0.136027f, 0.613250f, 0.716281f, 0.833390f, 0.862377f, 0.869398f, 0.871341f, 0.864909f, 0.853724f, 0.762695f, 0.581866f, 0.516976f, 0.431652f, 0.352936f, 0.128692f, -0.801020f, -0.778392f, -0.252774f, -0.362622f, 0.040678f, 0.042043f, -0.002382f, 0.512912f, 0.328397f, 0.058220f, 0.825142f, 0.877005f, 0.471250f, 0.085799f, -0.084051f, -0.206602f, -0.401586f, -0.628316f, -0.710738f, -0.626836f, -0.744100f, -0.789309f, -0.858959f, -0.855805f, -0.772968f, -0.707660f, -0.389122f, -0.456350f, -0.038159f, 0.095138f, -0.088878f, 0.024784f, 0.531023f, -0.176729f, -0.763871f, -0.239437f, -1.131035f, -1.076939f, -1.071865f, -0.765031f, -0.593413f, -0.681095f, -0.760457f, -0.274476f, 0.340295f, -0.215920f, 0.186072f, -0.150858f, -0.219705f, -0.206012f, -0.353175f, -0.523212f, -1.087956f, -1.163575f, -1.166571f, -1.173404f, -0.625512f, -0.894094f, -1.172393f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.036766f, 0.044953f, 0.035425f, 0.018361f, 0.014940f, 0.018792f, 0.011054f, 0.009987f, 0.011340f, 0.013531f, 0.065380f, 0.063198f, 0.056718f, 0.054265f, 0.062278f, 0.072378f, 0.073560f, 0.074249f, 0.073545f, 0.071364f, 0.076876f, 0.081416f, 0.078120f, 0.076986f, 0.080064f, 0.059544f, 0.062900f, 0.044610f, 0.050813f, 0.066161f, 0.074168f, 0.071536f, 0.080184f, 0.081020f, 0.078928f, 0.075305f, 0.072892f, 0.072526f, 0.022567f, 0.023511f, 0.038118f, 0.063932f, 0.039064f, 0.043099f, 0.024493f, 0.076116f, 0.076438f, 0.075309f, 0.080825f, 0.068043f, 0.074771f, 0.067597f, 0.027016f, 0.028172f, 0.045867f, 0.064794f, 0.005553f, -0.005468f, -0.003015f, 0.001904f, -0.000358f, 0.023486f, -0.001069f, 0.048935f}, { -0.070960f, -0.061081f, -0.047473f, -0.041448f, -0.047325f, -0.068082f, -0.223884f, -0.207174f, -0.194147f, -0.187129f, -0.078340f, -0.074369f, -0.071566f, -0.085903f, -0.105974f, -0.100016f, -0.105233f, -0.112590f, -0.110387f, -0.132875f, -0.133214f, -0.141142f, -0.129005f, -0.126312f, -0.128445f, -0.195822f, -0.187534f, -0.179171f, -0.159341f, -0.160231f, -0.159025f, -0.175785f, -0.173455f, -0.165276f, -0.160354f, -0.176914f, -0.150575f, -0.140891f, -0.171811f, -0.185594f, -0.164476f, -0.173695f, -0.192727f, -0.203768f, -0.220474f, -0.116346f, -0.123103f, -0.121079f, -0.146619f, -0.084934f, -0.115520f, -0.087903f, -0.086347f, -0.069395f, -0.095582f, -0.076316f, -0.027123f, -0.046793f, -0.208536f, -0.070726f, -0.192084f, -0.212431f, -0.051349f, -0.069834f}, { 0.191770f, 0.170440f, 0.161343f, 0.183442f, 0.193162f, 0.209908f, 0.114677f, 0.091351f, 0.075315f, 0.068715f, 0.126000f, 0.148300f, 0.165406f, 0.188744f, 0.196666f, 0.165543f, 0.158940f, 0.123876f, 0.116546f, 0.083662f, 0.097553f, 0.114478f, 0.130041f, 0.149440f, 0.169240f, 0.118743f, 0.111741f, 0.084610f, 0.074717f, 0.086870f, 0.099279f, 0.111710f, 0.140672f, 0.133747f, 0.114312f, 0.123470f, 0.085946f, 0.075320f, 0.062178f, 0.075478f, 0.068113f, 0.097026f, 0.095286f, 0.112402f, 0.115861f, 0.184679f, 0.152252f, 0.115774f, 0.108629f, 0.120004f, 0.129144f, 0.168529f, 0.220478f, 0.199762f, 0.205753f, 0.143906f, 0.183399f, 0.215139f, 0.091352f, 0.233826f, 0.068212f, 0.102500f, 0.215198f, 0.178406f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.612714f, 0.731984f, 0.738152f, 0.673971f, 0.673259f, 0.643347f, 0.082626f, 0.152840f, 0.397378f, 0.499432f, 0.973503f, 0.885326f, 0.778236f, 0.636753f, 0.738179f, 1.041770f, 1.059417f, 1.063889f, 1.060746f, 0.833385f, 1.003473f, 1.068305f, 1.036698f, 1.052387f, 1.040682f, 0.772471f, 0.784026f, 0.455555f, 0.589160f, 0.678033f, 0.913151f, 0.866622f, 1.055319f, 1.067281f, 0.997849f, 0.937113f, 0.872780f, 0.736514f, 0.569174f, 0.509538f, 0.589226f, 0.718515f, 0.545932f, 0.352044f, 0.592760f, 0.968891f, 1.048260f, 1.037379f, 1.048316f, 0.997400f, 1.062205f, 0.935602f, 0.676403f, 0.662963f, 0.685504f, 0.923134f, 0.625475f, 0.562445f, 0.048321f, 0.619882f, 0.125435f, 0.409320f, 0.603747f, 0.692434f}, { 0.480256f, 0.592337f, 0.618811f, 0.524123f, 0.457672f, 0.519100f, -1.050853f, -0.994315f, -0.916791f, -0.834280f, 0.339755f, 0.486743f, 0.573738f, 0.433832f, 0.395579f, 0.136456f, 0.061548f, 0.027444f, 0.013027f, 0.356178f, 0.108902f, -0.011665f, 0.154113f, 0.081093f, 0.145007f, -0.808142f, -0.764059f, -0.769169f, -0.663174f, -0.705199f, -0.566355f, -0.649128f, -0.372859f, -0.318615f, -0.454131f, -0.593463f, -0.627986f, -0.253176f, -0.757911f, -0.767635f, -0.727332f, -0.696365f, -0.868779f, -0.943048f, -0.941580f, 0.280159f, 0.090249f, 0.135767f, -0.231580f, 0.282132f, 0.042100f, 0.357589f, 0.488444f, 0.512475f, 0.444583f, 0.435020f, 0.601770f, 0.547598f, -1.035967f, 0.499438f, -0.988393f, -0.940955f, 0.523001f, 0.545790f}, { 0.795463f, 0.488297f, 0.410821f, 0.683747f, 0.751367f, 0.724835f, -0.442996f, -0.508650f, -0.498061f, -0.518734f, 0.103422f, 0.244529f, 0.416393f, 0.813710f, 0.736669f, 0.231577f, 0.175400f, 0.092216f, 0.015531f, -0.340781f, -0.190194f, 0.018113f, 0.161227f, 0.074769f, 0.119875f, -0.223017f, -0.272443f, -0.610391f, -0.600809f, -0.486386f, -0.261542f, -0.267478f, 0.043983f, 0.072294f, -0.148900f, -0.165966f, -0.277728f, -0.663943f, -0.535908f, -0.576447f, -0.547901f, -0.449176f, -0.439539f, -0.485944f, -0.280472f, 0.398541f, 0.052043f, 0.023851f, -0.129580f, 0.080548f, 0.117734f, 0.387859f, 0.718386f, 0.708158f, 0.752639f, 0.186202f, 0.652643f, 0.784502f, -0.467864f, 0.775137f, -0.523453f, -0.463526f, 0.766851f, 0.633287f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.012884f, 0.021887f, 0.008049f, 0.020442f, 0.012411f, 0.007816f, 0.008550f, 0.020794f, 0.020305f, 0.014364f, 0.009048f, 0.005621f, 0.012686f, 0.006059f, 0.012048f, 0.017248f, 0.009957f, 0.048469f, 0.050897f, 0.052139f, 0.047758f, 0.051109f, 0.051454f, 0.055390f, 0.064743f, 0.069743f, 0.060442f, 0.073300f, 0.078117f, 0.079363f, 0.074188f, 0.072270f, 0.069041f, 0.063917f, 0.061100f, 0.058731f, 0.053558f, 0.050452f, 0.049328f, 0.052526f, 0.051033f, 0.054255f, 0.061913f, 0.053050f, 0.060874f, 0.049110f, 0.059900f, 0.049364f, 0.059250f, 0.051798f, 0.048079f, 0.056039f, 0.048864f, 0.064347f, 0.071150f, 0.069092f, 0.070371f, 0.067277f, 0.076087f, 0.074042f, 0.066298f, 0.077692f, 0.079599f, 0.081899f, 0.078661f, 0.080936f, 0.075845f, 0.041053f, 0.034631f, 0.039094f, 0.044695f, 0.035530f, 0.045182f, 0.036253f, 0.026846f, 0.029046f, 0.024516f, 0.039023f, 0.040888f, 0.035031f, 0.035772f, 0.036639f, 0.050313f, 0.029041f, 0.025102f, 0.026809f, 0.039492f, 0.038440f, 0.040923f, 0.043825f, 0.034379f, 0.038918f, 0.031592f, 0.022936f, 0.027275f, 0.027567f, 0.061603f, 0.062583f, 0.050292f, 0.062265f, 0.067783f, 0.043422f, 0.028635f, 0.026981f, 0.032960f, 0.057184f, -0.013133f, -0.005290f, -0.011541f, -0.018441f, -0.005206f, -0.012021f, -0.013392f, -0.005417f, -0.007568f, 0.000022f, -0.008564f, -0.011941f, -0.006613f, -0.010624f, -0.005567f, 0.000422f, 0.021878f, 0.001746f, 0.000275f, 0.017987f, 0.000704f, 0.001523f}, { -0.090738f, -0.099844f, -0.105832f, -0.111980f, -0.117478f, -0.132107f, -0.138713f, -0.145316f, -0.157274f, -0.234213f, -0.237215f, -0.240143f, -0.235110f, -0.239400f, -0.236511f, -0.234701f, -0.234296f, -0.111423f, -0.120594f, -0.126819f, -0.136664f, -0.141399f, -0.154123f, -0.140296f, -0.141269f, -0.141858f, -0.129774f, -0.132614f, -0.138836f, -0.150342f, -0.151430f, -0.157300f, -0.167379f, -0.163701f, -0.164439f, -0.166702f, -0.174382f, -0.166684f, -0.193143f, -0.185173f, -0.183111f, -0.192993f, -0.192841f, -0.203264f, -0.202342f, -0.212372f, -0.206062f, -0.216767f, -0.210499f, -0.217875f, -0.219300f, -0.209290f, -0.216398f, -0.204092f, -0.197692f, -0.201391f, -0.195640f, -0.193063f, -0.179824f, -0.172760f, -0.177977f, -0.164657f, -0.163834f, -0.173338f, -0.185741f, -0.159021f, -0.189932f, -0.219919f, -0.227011f, -0.225430f, -0.221217f, -0.223695f, -0.220507f, -0.220345f, -0.224743f, -0.222789f, -0.224965f, -0.190626f, -0.186054f, -0.184312f, -0.172892f, -0.161102f, -0.160812f, -0.165740f, -0.159050f, -0.138694f, -0.138574f, -0.151252f, -0.207189f, -0.211312f, -0.218357f, -0.211691f, -0.220178f, -0.228695f, -0.229979f, -0.228542f, -0.209076f, -0.205596f, -0.195602f, -0.177031f, -0.149406f, -0.151502f, -0.125625f, -0.112135f, -0.106916f, -0.115961f, -0.085430f, -0.101446f, -0.113307f, -0.127683f, -0.125790f, -0.139082f, -0.152969f, -0.154387f, -0.253308f, -0.247135f, -0.250890f, -0.249155f, -0.241317f, -0.237557f, -0.247731f, -0.084106f, -0.233227f, -0.241385f, -0.243482f, -0.230888f, -0.144522f, -0.099383f}, { 0.241099f, 0.240578f, 0.252872f, 0.249038f, 0.255292f, 0.261680f, 0.263287f, 0.259444f, 0.262514f, 0.194669f, 0.181881f, 0.168140f, 0.169203f, 0.160200f, 0.139684f, 0.139484f, 0.131931f, 0.220617f, 0.229026f, 0.232121f, 0.238627f, 0.233872f, 0.228703f, 0.228504f, 0.215716f, 0.209010f, 0.222817f, 0.202897f, 0.195252f, 0.188332f, 0.201127f, 0.202068f, 0.200899f, 0.215247f, 0.220311f, 0.222201f, 0.221720f, 0.227796f, 0.214652f, 0.216759f, 0.219903f, 0.201601f, 0.186746f, 0.191663f, 0.182738f, 0.187686f, 0.181925f, 0.176152f, 0.173545f, 0.161334f, 0.146801f, 0.140723f, 0.136439f, 0.149308f, 0.155836f, 0.167831f, 0.173297f, 0.179444f, 0.174024f, 0.181802f, 0.194968f, 0.181107f, 0.174664f, 0.162058f, 0.162740f, 0.175400f, 0.150477f, 0.134921f, 0.147942f, 0.153332f, 0.159882f, 0.172353f, 0.171882f, 0.186411f, 0.188125f, 0.195034f, 0.208412f, 0.230502f, 0.229635f, 0.240294f, 0.241644f, 0.243235f, 0.229015f, 0.253948f, 0.259156f, 0.254497f, 0.245595f, 0.244153f, 0.215232f, 0.196917f, 0.197817f, 0.208398f, 0.196082f, 0.174835f, 0.155126f, 0.140592f, 0.155800f, 0.178278f, 0.208370f, 0.208409f, 0.211336f, 0.238131f, 0.249633f, 0.244533f, 0.235937f, 0.213044f, 0.255775f, 0.258143f, 0.264459f, 0.269571f, 0.265178f, 0.269611f, 0.272396f, 0.270150f, 0.181634f, 0.188205f, 0.166921f, 0.154492f, 0.141547f, 0.134277f, 0.167143f, 0.246294f, 0.139809f, 0.148765f, 0.167697f, 0.194866f, 0.266935f, 0.253722f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.579835f, 0.574145f, 0.458387f, 0.505013f, 0.426811f, 0.376464f, 0.355468f, 0.484328f, 0.501953f, 0.668010f, 0.642213f, 0.601442f, 0.538642f, 0.467169f, 0.279769f, 0.363693f, 0.173324f, 0.718812f, 0.716012f, 0.734649f, 0.740072f, 0.800353f, 0.758342f, 0.849990f, 0.854797f, 0.875385f, 0.972189f, 0.890774f, 1.002809f, 1.029488f, 0.949418f, 0.945129f, 0.940288f, 0.920895f, 0.848526f, 0.684699f, 0.736043f, 0.641090f, 0.862778f, 0.792072f, 0.756630f, 0.865588f, 0.833792f, 0.787920f, 0.800965f, 0.623096f, 0.764966f, 0.575945f, 0.725299f, 0.599622f, 0.770413f, 0.751745f, 0.652246f, 0.803956f, 0.823436f, 0.845204f, 0.866278f, 0.832561f, 0.933435f, 0.944755f, 0.891336f, 0.983179f, 1.017797f, 1.059827f, 1.015052f, 1.039783f, 0.918871f, 0.385441f, 0.360321f, 0.525360f, 0.486424f, 0.364086f, 0.457170f, 0.477589f, 0.558350f, 0.610498f, 0.708382f, 0.837481f, 0.813650f, 0.905755f, 0.862537f, 0.825391f, 0.702704f, 0.863179f, 0.702224f, 0.527054f, 0.671684f, 0.788031f, 0.875066f, 0.719724f, 0.580734f, 0.789420f, 0.599223f, 0.505897f, 0.358613f, 0.645335f, 0.773070f, 0.797175f, 0.861932f, 0.892093f, 0.864893f, 0.778228f, 0.504822f, 0.558692f, 0.639462f, 0.742544f, 0.423037f, 0.418155f, 0.348730f, 0.254309f, 0.315016f, 0.265194f, 0.288511f, 0.284251f, 0.658838f, 0.716717f, 0.645393f, 0.309119f, 0.151899f, 0.051721f, 0.683061f, 0.543121f, 0.473425f, 0.399390f, 0.529131f, 0.669647f, 0.284158f, 0.448659f}, { 0.410757f, 0.412523f, 0.245681f, 0.254387f, 0.183708f, 0.106613f, 0.079950f, 0.066675f, -0.041200f, -0.987951f, -1.008981f, -1.043150f, -1.084312f, -1.126450f, -1.176515f, -1.158161f, -1.137832f, 0.485757f, 0.386959f, 0.202867f, -0.178813f, -0.384650f, -0.263434f, -0.335832f, -0.150908f, -0.132432f, -0.058624f, 0.038046f, -0.131943f, -0.351615f, -0.304431f, -0.416383f, -0.481919f, -0.466154f, -0.241387f, -0.536348f, -0.516881f, -0.376495f, -0.628818f, -0.612926f, -0.545912f, -0.695987f, -0.565884f, -0.631628f, -0.536836f, -0.926481f, -0.687034f, -1.027636f, -0.929576f, -1.052476f, -0.909152f, -0.893983f, -0.943773f, -0.849930f, -0.840214f, -0.825319f, -0.604541f, -0.518667f, -0.421375f, -0.526163f, -0.658736f, -0.479030f, -0.436912f, -0.309023f, -0.518631f, -0.372711f, -0.697224f, -1.050019f, -1.161212f, -1.089176f, -1.118347f, -1.157841f, -1.111389f, -1.087526f, -1.062683f, -1.024447f, -0.954027f, -0.378242f, -0.437239f, -0.341644f, -0.300552f, -0.315453f, -0.257087f, -0.226602f, -0.098824f, 0.056825f, -0.099276f, -0.365384f, -0.730665f, -0.848801f, -1.040752f, -0.853342f, -1.020729f, -1.092533f, -1.173340f, -1.013588f, -0.903052f, -0.770794f, -0.707490f, -0.558024f, -0.176155f, -0.395527f, 0.164970f, 0.302157f, 0.415192f, 0.440364f, 0.301340f, 0.213606f, 0.094467f, 0.040412f, 0.091042f, 0.019579f, 0.002643f, -0.009940f, -0.980400f, -0.939916f, -0.993391f, -1.118530f, -1.119383f, -1.084188f, -0.968271f, 0.365333f, -1.118035f, -1.148011f, -1.079604f, -0.989128f, 0.003409f, 0.263736f}, { 0.894604f, 0.898218f, 1.073624f, 1.043372f, 1.114105f, 1.160074f, 1.175336f, 1.119790f, 1.131158f, 0.126658f, 0.122892f, 0.154840f, 0.216380f, 0.137395f, -0.071785f, -0.025430f, -0.264218f, 0.661088f, 0.776759f, 0.884414f, 0.958991f, 0.849876f, 0.927531f, 0.803289f, 0.828677f, 0.801338f, 0.627360f, 0.752999f, 0.575905f, 0.426559f, 0.660000f, 0.615582f, 0.577719f, 0.632513f, 0.831899f, 0.908879f, 0.867405f, 1.006978f, 0.599989f, 0.736470f, 0.828597f, 0.499485f, 0.701568f, 0.717468f, 0.766159f, 0.588422f, 0.703028f, 0.431501f, 0.371806f, 0.103629f, 0.195136f, -0.076508f, -0.190447f, -0.040091f, 0.010126f, 0.259281f, 0.619764f, 0.734712f, 0.628564f, 0.523803f, 0.491925f, 0.466174f, 0.387299f, 0.320949f, 0.273900f, 0.362348f, -0.028304f, -0.303635f, 0.002363f, 0.285578f, 0.154234f, 0.311717f, 0.363182f, 0.417104f, 0.312056f, 0.333810f, 0.180211f, 0.802572f, 0.812511f, 0.706219f, 0.789516f, 0.838253f, 0.980759f, 0.802136f, 0.992558f, 1.098017f, 1.019410f, 0.870461f, 0.388950f, 0.566739f, 0.356442f, 0.366609f, 0.388212f, 0.318127f, 0.171955f, 0.095141f, 0.045298f, 0.553678f, 0.489816f, 0.616121f, 0.814577f, 0.870991f, 1.079572f, 0.983210f, 0.835569f, 0.682920f, 1.068280f, 1.107518f, 1.173874f, 1.216857f, 1.187372f, 1.217228f, 1.212949f, 1.216314f, 0.016588f, 0.108189f, 0.021893f, -0.221151f, -0.309977f, -0.394239f, 0.085826f, 0.955859f, 0.024824f, 0.007666f, 0.022057f, 0.174572f, 1.214443f, 1.071165f}, { 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 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.994421f, 0.094730f, -0.046401f}, {-0.095661f, -0.789197f, -0.606644f}, {-0.263141f, 0.607808f, -0.749217f}, { 0.960003f, 0.087962f, -0.265814f}, { 0.174284f, -0.733861f, -0.656562f}, {-0.123760f, 0.645154f, -0.753962f}, { 0.976887f, 0.212659f, 0.021618f}, { 0.125691f, -0.748258f, -0.651392f}, { 0.444563f, 0.629465f, -0.637289f}, { 0.886886f, -0.209483f, 0.411765f}, {-0.094593f, -0.674492f, -0.732198f}, {-0.914922f, 0.348802f, -0.203113f}, { 0.392390f, 0.650691f, -0.650101f}, { 0.095661f, 0.789197f, 0.606644f}, { 0.077190f, -0.613485f, 0.785925f}, { 0.992417f, -0.028355f, -0.119605f}, { 0.003333f, 0.788431f, 0.615114f}, {-0.481004f, -0.538019f, 0.692221f}, { 0.876712f, -0.298180f, 0.377446f} }; //anchor points along each rotation axis const float q[Nrots][3] = { { 0.000000f, 0.000000f, 0.000000f}, { 0.035447f, -0.093433f, 0.099346f}, { 0.035447f, -0.093433f, 0.099346f}, { 0.035447f, -0.093433f, 0.099346f}, {-0.001341f, -0.008460f, -0.005397f}, {-0.001341f, -0.008460f, -0.005397f}, {-0.001341f, -0.008460f, -0.005397f}, {-0.015170f, 0.079055f, -0.108595f}, {-0.015170f, 0.079055f, -0.108595f}, {-0.015170f, 0.079055f, -0.108595f}, { 0.004702f, 0.107194f, -0.137083f}, { 0.004702f, 0.107194f, -0.137083f}, { 0.004702f, 0.107194f, -0.137083f}, { 0.035447f, -0.093433f, 0.099346f}, { 0.035447f, -0.093433f, 0.099346f}, { 0.035447f, -0.093433f, 0.099346f}, { 0.043083f, -0.154119f, 0.177089f}, { 0.043083f, -0.154119f, 0.177089f}, { 0.043083f, -0.154119f, 0.177089f} }; 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}, };