Преглед на файлове

encoder_offset_map 使用s16替代float

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui преди 3 години
родител
ревизия
0b560a2d02
променени са 2 файла, в които са добавени 110 реда и са изтрити 109 реда
  1. 5 4
      Applications/foc/motor/encoder.c
  2. 105 105
      Applications/foc/motor/encoder_off.h

+ 5 - 4
Applications/foc/motor/encoder.c

@@ -111,7 +111,7 @@ static __INLINE float _eccentricity_compensation(int cnt) {
 	if (g_encoder.encoder_off_map != NULL) { //do offset calibrate, can not do encentricity compensation
 		return 0.0f;
 	}
-	return -((_encoder_off_map[cnt_off])/100.0f);
+	return -(S16Q10toF(_encoder_off_map[cnt_off]));
 #else
 	return 0.0f;
 #endif
@@ -181,6 +181,7 @@ void _encoder_caliberate_deinit(void) {
 	g_encoder.encoder_off_count = NULL;
 }
 
+#define MIN_OFF_COUNT 2
 void encoder_detect_offset(float angle){
 	_encoder_caliberate_init();
 	float delta = (g_encoder.abi_angle - angle);
@@ -191,12 +192,12 @@ void encoder_detect_offset(float angle){
 		delta = delta + 360;
 	}
 	if (g_encoder.direction == POSITIVE) {
-		if ((g_encoder.encoder_off_count[g_encoder.last_cnt] & 0xF) <= 2) {
+		if ((g_encoder.encoder_off_count[g_encoder.last_cnt] & 0xF) <= MIN_OFF_COUNT) {
 			g_encoder.encoder_off_map[g_encoder.last_cnt] += (s16)(delta*100.0f);
 			g_encoder.encoder_off_count[g_encoder.last_cnt] += 0x01;
 		}
 	}else {
-		if (((g_encoder.encoder_off_count[g_encoder.last_cnt] >> 4) & 0xF) <= 2) {
+		if (((g_encoder.encoder_off_count[g_encoder.last_cnt] >> 4) & 0xF) <= MIN_OFF_COUNT) {
 			g_encoder.encoder_off_map[g_encoder.last_cnt] += (s16)(delta*100.0f);
 			g_encoder.encoder_off_count[g_encoder.last_cnt] += 0x10;
 		}
@@ -211,7 +212,7 @@ bool encoder_detect_finish(void) {
 		}else {
 			off_count = (g_encoder.encoder_off_count[i] >> 4)& 0xF;
 		}
-		if (off_count <= 2) {
+		if (off_count <= MIN_OFF_COUNT) {
 			return false;
 		}
 	}

+ 105 - 105
Applications/foc/motor/encoder_off.h

@@ -1,4 +1,4 @@
-#include "os/os_types.h" 
+#include "math/fix_math.h" 
 
 /* Auto gen by my tools, and use matlab to desing a FIR filter-(MC100/Simulink/Fir_angle.m) */
 /* Matlib Command: Fir=Fir_angle; angle_off=filter(Fir.Numerator, 1, angle_in); */
@@ -6,108 +6,108 @@
 /* Use angle_out=single(angle_off) convert double to float */
 
 #define FIR_PHASE_SHIFT 542
-const static float _encoder_off_map[] = {
--11.709626f,-11.025469f,-10.348366f,-9.677769f,-9.012818f,-8.353265f,-7.701627f,-7.057623f,-6.419540f,-5.787866f,-5.163483f,-4.547264f,-3.938902f,-3.337871f,-2.745079f,-2.160679f,
--1.584892f,-1.016804f,-0.458164f,0.090785f,0.630896f,1.163335f,1.685593f,2.196823f,2.699283f,3.192395f,3.674905f,4.146735f,4.608125f,5.060034f,5.500354f,5.929474f,6.347721f,6.755309f,7.150391f,7.532778f,
-7.904088f,8.263895f,8.611121f,8.945454f,9.267470f,9.577625f,9.874879f,10.158731f,10.430134f,10.688970f,10.934389f,11.165828f,11.383739f,11.588875f,11.780142f,11.956353f,12.118855f,12.267150f,12.401057f,12.519690f,
-12.624034f,12.714013f,12.788465f,12.847351f,12.891816f,12.924930f,12.938406f,12.934103f,12.914685f,12.880808f,12.831861f,12.764849f,12.680910f,12.582322f,12.467851f,12.336022f,12.186927f,12.021371f,11.839053f,11.639188f,
-11.421788f,11.188109f,10.937921f,10.669419f,10.382176f,10.078671f,9.758460f,9.419482f,9.061252f,8.686399f,8.293701f,7.881402f,7.450992f,7.002828f,6.536880f,6.051233f,5.546902f,5.024176f,4.483571f,3.922322f,
-3.342052f,2.744127f,2.127333f,1.490588f,0.834706f,0.160016f,-0.533506f,-1.247272f,-1.980915f,-2.732923f,-3.504051f,-4.295920f,-5.107911f,-5.939118f,-6.788767f,-7.659239f,-8.550577f,-9.460196f,-10.389377f,-11.339470f,
--12.309464f,-13.299123f,-14.307539f,-15.337227f,-16.387461f,-17.456766f,-18.545980f,-19.655903f,-20.786520f,-21.936377f,-23.106005f,-24.296671f,-25.507820f,-26.738546f,-27.988884f,-29.259979f,-30.552231f,-31.862942f,-33.193447f,-34.544411f,
--35.915794f,-37.307098f,-38.717583f,-40.148788f,-41.600040f,-43.070999f,-44.561279f,-46.073166f,-47.603806f,-49.154049f,-50.723949f,-52.313599f,-53.923344f,-55.552135f,-57.199631f,-58.867901f,-60.554478f,-62.260494f,-63.985722f,-65.730453f,
--67.495110f,-69.276863f,-71.077965f,-72.898537f,-74.738159f,-76.595009f,-78.471169f,-80.366554f,-82.279755f,-84.211250f,-86.160439f,-88.128540f,-90.113861f,-92.116684f,-94.137245f,-96.175629f,-98.231926f,-100.304977f,-102.394478f,-104.501663f,
--106.626846f,-108.766983f,-110.924896f,-113.099243f,-115.290222f,-117.496429f,-119.719383f,-121.958061f,-124.213089f,-126.482582f,-128.767502f,-131.068207f,-133.384430f,-135.714676f,-138.058945f,-140.419128f,-142.793396f,-145.181564f,-147.582993f,-149.999176f,
--152.428436f,-154.870575f,-157.326584f,-159.795868f,-162.277618f,-164.771729f,-167.277176f,-169.795319f,-172.326309f,-174.867447f,-177.420486f,-179.985596f,-182.561005f,-185.146637f,-187.743423f,-190.351440f,-192.969757f,-195.595917f,-198.232895f,-200.879730f,
--203.534805f,-206.199112f,-208.871094f,-211.553040f,-214.241730f,-216.938721f,-219.642075f,-222.354797f,-225.074402f,-227.799179f,-230.531021f,-233.270477f,-236.015472f,-238.764801f,-241.520599f,-244.282562f,-247.049118f,-249.819702f,-252.594482f,-255.374161f,
--258.157928f,-260.944336f,-263.732880f,-266.526733f,-269.323120f,-272.120819f,-274.920105f,-277.722717f,-280.526398f,-283.330719f,-286.136475f,-288.943817f,-291.751312f,-294.557251f,-297.363464f,-300.170135f,-302.976776f,-305.780670f,-308.582703f,-311.384491f,
--314.183838f,-316.980316f,-319.774109f,-322.566345f,-325.354401f,-328.138641f,-330.919647f,-333.697083f,-336.470367f,-339.237946f,-342.000610f,-344.760040f,-347.513702f,-350.260315f,-353.000885f,-355.735596f,-358.463867f,-361.183929f,-363.897308f,-366.604462f,
--369.303162f,-371.991913f,-374.673248f,-377.347290f,-380.012543f,-382.665894f,-385.311310f,-387.946838f,-390.572815f,-393.186981f,-395.791077f,-398.384308f,-400.967590f,-403.536804f,-406.095398f,-408.643616f,-411.179138f,-413.700134f,-416.209106f,-418.706268f,
--421.190002f,-423.658417f,-426.113800f,-428.555817f,-430.983398f,-433.395477f,-435.792511f,-438.176086f,-440.543427f,-442.893921f,-445.228638f,-447.549011f,-449.852661f,-452.138916f,-454.407043f,-456.660370f,-458.896332f,-461.113617f,-463.313049f,-465.496002f,
--467.660492f,-469.804657f,-471.931122f,-474.039581f,-476.129364f,-478.198242f,-480.248169f,-482.279327f,-484.290894f,-486.280975f,-488.251038f,-490.201294f,-492.131226f,-494.039246f,-495.926239f,-497.793884f,-499.639069f,-501.461517f,-503.263092f,-505.043549f,
--506.802551f,-508.537628f,-510.250397f,-511.941071f,-513.609192f,-515.253601f,-516.874878f,-518.474792f,-520.050537f,-521.601379f,-523.129456f,-524.635376f,-526.116577f,-527.573364f,-529.005676f,-530.414978f,-531.799927f,-533.159241f,-534.493164f,-535.804443f,
--537.090942f,-538.350464f,-539.584473f,-540.795166f,-541.980896f,-543.138733f,-544.272156f,-545.380493f,-546.464355f,-547.520508f,-548.550781f,-549.556702f,-550.536377f,-551.488953f,-552.415405f,-553.316406f,-554.191589f,-555.038208f,-555.858887f,-556.654358f,
--557.423645f,-558.164795f,-558.879456f,-559.568481f,-560.230286f,-560.864807f,-561.473022f,-562.054932f,-562.610107f,-563.137085f,-563.636780f,-564.111206f,-564.558044f,-564.976624f,-565.368408f,-565.734131f,-566.073242f,-566.383423f,-566.666870f,-566.924988f,
--567.154480f,-567.356567f,-567.531982f,-567.681030f,-567.802673f,-567.896118f,-567.963257f,-568.004028f,-568.018494f,-568.004211f,-567.962402f,-567.895752f,-567.801086f,-567.678650f,-567.529358f,-567.355103f,-567.153320f,-566.923401f,-566.667358f,-566.385559f,
--566.077637f,-565.741699f,-565.379089f,-564.991272f,-564.576355f,-564.134338f,-563.666199f,-563.173096f,-562.653870f,-562.107300f,-561.534851f,-560.937195f,-560.314697f,-559.664185f,-558.988831f,-558.288330f,-557.562439f,-556.810547f,-556.032898f,-555.232117f,
--554.405273f,-553.552979f,-552.675903f,-551.775269f,-550.849609f,-549.898254f,-548.921753f,-547.923218f,-546.900208f,-545.851746f,-544.779358f,-543.684631f,-542.565613f,-541.421936f,-540.255615f,-539.066772f,-537.854858f,-536.618347f,-535.359009f,-534.078308f,
--532.775269f,-531.447998f,-530.098511f,-528.728394f,-527.335815f,-525.920532f,-524.483643f,-523.026672f,-521.547363f,-520.046692f,-518.525024f,-516.983582f,-515.421997f,-513.837952f,-512.234375f,-510.611786f,-508.969757f,-507.306549f,-505.624268f,-503.923950f,
--502.203217f,-500.462891f,-498.704224f,-496.928436f,-495.133698f,-493.319214f,-491.487610f,-489.639587f,-487.773895f,-485.890350f,-483.989441f,-482.072876f,-480.139130f,-478.188599f,-476.221130f,-474.239746f,-472.241943f,-470.227905f,-468.198730f,-466.155548f,
--464.097626f,-462.023346f,-459.935913f,-457.835144f,-455.719849f,-453.589844f,-451.448059f,-449.292816f,-447.125183f,-444.943848f,-442.750214f,-440.545258f,-438.328400f,-436.098816f,-433.857910f,-431.606567f,-429.343811f,-427.070160f,-424.786041f,-422.492462f,
--420.188995f,-417.875397f,-415.552216f,-413.221008f,-410.881256f,-408.531860f,-406.174316f,-403.809692f,-401.436707f,-399.055359f,-396.667236f,-394.272278f,-391.871521f,-389.463837f,-387.048676f,-384.628998f,-382.203033f,-379.771240f,-377.334442f,-374.894012f,
--372.448975f,-369.997345f,-367.543030f,-365.086029f,-362.625214f,-360.160004f,-357.691772f,-355.222443f,-352.749420f,-350.273499f,-347.795837f,-345.317993f,-342.838318f,-340.355988f,-337.873688f,-335.391571f,-332.909760f,-330.426300f,-327.943695f,-325.462494f,
--322.982056f,-320.501129f,-318.020905f,-315.544525f,-313.069305f,-310.594360f,-308.121643f,-305.653564f,-303.187439f,-300.723114f,-298.262543f,-295.806488f,-293.353790f,-290.904022f,-288.459137f,-286.019989f,-283.584747f,-281.153717f,-278.728119f,-276.309235f,
--273.896057f,-271.487183f,-269.085114f,-266.690247f,-264.301270f,-261.919098f,-259.543823f,-257.177185f,-254.817230f,-252.463165f,-250.118103f,-247.782730f,-245.454666f,-243.135101f,-240.824066f,-238.522385f,-236.230026f,-233.945633f,-231.670990f,-229.407822f,
--227.153198f,-224.908463f,-222.674454f,-220.452560f,-218.240707f,-216.038025f,-213.847168f,-211.668274f,-209.500839f,-207.343262f,-205.198135f,-203.065948f,-200.945969f,-198.836823f,-196.740417f,-194.658218f,-192.587585f,-190.528305f,-188.482742f,-186.451584f,
--184.433502f,-182.427780f,-180.435303f,-178.457108f,-176.493637f,-174.542542f,-172.605606f,-170.683838f,-168.776184f,-166.881790f,-165.001236f,-163.137299f,-161.287994f,-159.452133f,-157.630859f,-155.825745f,-154.036346f,-152.260880f,-150.500580f,-148.756393f,
--147.027695f,-145.314209f,-143.615997f,-141.934830f,-140.269577f,-138.618546f,-136.984344f,-135.366531f,-133.765305f,-132.178925f,-130.608200f,-129.054916f,-127.518303f,-125.996613f,-124.492020f,-123.004158f,-121.532761f,-120.077271f,-118.638313f,-117.216454f,
--115.811943f,-114.422096f,-113.049606f,-111.694817f,-110.356819f,-109.034401f,-107.728554f,-106.440430f,-105.168579f,-103.912804f,-102.674202f,-101.453247f,-100.248528f,-99.060402f,-97.888435f,-96.734711f,-95.597740f,-94.476334f,-93.371437f,-92.284706f,
--91.214447f,-90.160225f,-89.123138f,-88.103241f,-87.099228f,-86.111465f,-85.140297f,-84.186501f,-83.249084f,-82.327766f,-81.422546f,-80.533691f,-79.661690f,-78.806335f,-77.966835f,-77.143478f,-76.336441f,-75.545403f,-74.770126f,-74.011322f,
--73.268898f,-72.541702f,-71.830467f,-71.134972f,-70.455704f,-69.791977f,-69.143463f,-68.510445f,-67.892914f,-67.290718f,-66.704002f,-66.132164f,-65.575508f,-65.033676f,-64.506416f,-63.995049f,-63.498386f,-63.015713f,-62.547852f,-62.094040f,
--61.655296f,-61.231045f,-60.820362f,-60.424366f,-60.041824f,-59.673569f,-59.319077f,-58.978745f,-58.651791f,-58.338249f,-58.037426f,-57.750774f,-57.477211f,-57.216255f,-56.968796f,-56.733860f,-56.511642f,-56.302219f,-56.105347f,-55.920872f,
--55.748566f,-55.587971f,-55.439575f,-55.303982f,-55.180054f,-55.066784f,-54.965435f,-54.875675f,-54.797485f,-54.730385f,-54.674557f,-54.628883f,-54.593964f,-54.570011f,-54.556816f,-54.554600f,-54.561714f,-54.578690f,-54.605755f,-54.642677f,
--54.689743f,-54.746094f,-54.812191f,-54.886791f,-54.969975f,-55.062881f,-55.164520f,-55.275143f,-55.393478f,-55.519936f,-55.655125f,-55.798122f,-55.949356f,-56.108078f,-56.274170f,-56.447247f,-56.628143f,-56.816505f,-57.011753f,-57.213623f,
--57.421326f,-57.636356f,-57.858585f,-58.086452f,-58.320290f,-58.559464f,-58.804932f,-59.055832f,-59.311897f,-59.573738f,-59.840584f,-60.111217f,-60.387074f,-60.667629f,-60.952724f,-61.241634f,-61.534550f,-61.831490f,-62.131931f,-62.435371f,
--62.742779f,-63.053482f,-63.367031f,-63.682964f,-64.002472f,-64.324692f,-64.648911f,-64.974899f,-65.303162f,-65.633858f,-65.966164f,-66.299866f,-66.634254f,-66.970535f,-67.308296f,-67.645905f,-67.984917f,-68.324753f,-68.664421f,-69.003670f,
--69.343285f,-69.683434f,-70.022949f,-70.362022f,-70.699684f,-71.037010f,-71.373901f,-71.708755f,-72.043030f,-72.375946f,-72.706612f,-73.035133f,-73.361938f,-73.687401f,-74.010368f,-74.330612f,-74.647964f,-74.963127f,-75.275627f,-75.584633f,
--75.890541f,-76.193123f,-76.491920f,-76.786980f,-77.078911f,-77.367119f,-77.650749f,-77.930038f,-78.204872f,-78.475441f,-78.742180f,-79.003029f,-79.258797f,-79.510101f,-79.756073f,-79.996208f,-80.231224f,-80.460915f,-80.685066f,-80.902519f,
--81.113480f,-81.319969f,-81.519775f,-81.712776f,-81.899330f,-82.079681f,-82.253418f,-82.419319f,-82.578865f,-82.732193f,-82.877663f,-83.015427f,-83.145454f,-83.268776f,-83.384834f,-83.492203f,-83.591492f,-83.683594f,-83.768295f,-83.844681f,
--83.912437f,-83.972595f,-84.024567f,-84.067795f,-84.102570f,-84.129456f,-84.146973f,-84.155983f,-84.155533f,-84.147156f,-84.130379f,-84.104202f,-84.068558f,-84.024422f,-83.971382f,-83.909302f,-83.838104f,-83.757675f,-83.668251f,-83.569092f,
--83.460289f,-83.342751f,-83.216209f,-83.079285f,-82.932533f,-82.777420f,-82.613358f,-82.439163f,-82.255402f,-82.061905f,-81.859207f,-81.647820f,-81.425880f,-81.194778f,-80.954567f,-80.704720f,-80.444397f,-80.175919f,-79.897919f,-79.610397f,
--79.312943f,-79.005951f,-78.690231f,-78.365265f,-78.030663f,-77.686623f,-77.333366f,-76.971649f,-76.599930f,-76.219109f,-75.830101f,-75.432304f,-75.025024f,-74.607948f,-74.182907f,-73.749290f,-73.306320f,-72.854652f,-72.395218f,-71.927162f,
--71.450928f,-70.965927f,-70.472313f,-69.971291f,-69.461472f,-68.943710f,-68.418976f,-67.886147f,-67.345665f,-66.796753f,-66.241539f,-65.679337f,-65.108963f,-64.531746f,-63.947582f,-63.355984f,-62.757576f,-62.151688f,-61.540573f,-60.923683f,
--60.299202f,-59.667603f,-59.031235f,-58.389729f,-57.741520f,-57.086998f,-56.427406f,-55.762924f,-55.093052f,-54.417397f,-53.736542f,-53.052391f,-52.362637f,-51.667618f,-50.968018f,-50.265739f,-49.558769f,-48.846355f,-48.131161f,-47.413334f,
--46.691826f,-45.966240f,-45.237850f,-44.507519f,-43.773808f,-43.037075f,-42.297630f,-41.557686f,-40.814732f,-40.068508f,-39.320545f,-38.572918f,-37.823395f,-37.071384f,-36.318882f,-35.566235f,-34.812309f,-34.056995f,-33.301933f,-32.548576f,
--31.794197f,-31.038944f,-30.284048f,-29.530386f,-28.778368f,-28.025517f,-27.274679f,-26.525764f,-25.778835f,-25.031500f,-24.286755f,-23.545662f,-22.806223f,-22.067678f,-21.332323f,-20.601440f,-19.872141f,-19.145342f,-18.422464f,-17.705357f,
--16.990997f,-16.278864f,-15.571356f,-14.869671f,-14.171355f,-13.476915f,-12.787113f,-12.104268f,-11.425644f,-10.751867f,-10.084347f,-9.423292f,-8.768794f,-8.118172f,-7.475220f,-6.839772f,-6.211228f,-5.588218f,-4.971616f,-4.363459f,
--3.763738f,-3.170528f,-2.584927f,-2.007931f,-1.439904f,-0.878003f,-0.325492f,0.217171f,0.750049f,1.276983f,1.794182f,2.299769f,2.795597f,3.283551f,3.761352f,4.227379f,4.682990f,5.130264f,5.566881f,5.991579f,
-6.404877f,6.808776f,7.201293f,7.580972f,7.948988f,8.305903f,8.651197f,8.982660f,9.302001f,9.609636f,9.905892f,10.187147f,10.455523f,10.712256f,10.956389f,11.186290f,11.401634f,11.605371f,11.795970f,11.970403f,
-12.130858f,12.278466f,12.412258f,12.529469f,12.632153f,12.721844f,12.796059f,12.854102f,12.896466f,12.924930f,12.938406f,12.934103f,12.914685f,12.880808f,12.831861f,12.764849f,12.680910f,12.582322f,12.467851f,12.336022f,
-12.186927f,12.021371f,11.839053f,11.639188f,11.421788f,11.188109f,10.937921f,10.669419f,10.382176f,10.078671f,9.758460f,9.419482f,9.061252f,8.686399f,8.293701f,7.881402f,7.450992f,7.002828f,6.536880f,6.051233f,
-5.546902f,5.024176f,4.483571f,3.922322f,3.342052f,2.744127f,2.127333f,1.490588f,0.834706f,0.160016f,-0.533506f,-1.247272f,-1.980915f,-2.732923f,-3.504051f,-4.295920f,-5.107911f,-5.939118f,-6.788767f,-7.659239f,
--8.550577f,-9.460196f,-10.389377f,-11.339470f,-12.309464f,-13.299123f,-14.307539f,-15.337227f,-16.387461f,-17.456766f,-18.545980f,-19.655903f,-20.786520f,-21.936377f,-23.106005f,-24.296671f,-25.507820f,-26.738546f,-27.988884f,-29.259979f,
--30.552231f,-31.862942f,-33.193447f,-34.544411f,-35.915794f,-37.307098f,-38.717583f,-40.148788f,-41.600040f,-43.070999f,-44.561279f,-46.073166f,-47.603806f,-49.154049f,-50.723949f,-52.313599f,-53.923344f,-55.552135f,-57.199631f,-58.867901f,
--60.554478f,-62.260494f,-63.985722f,-65.730453f,-67.495110f,-69.276863f,-71.077965f,-72.898537f,-74.738159f,-76.595009f,-78.471169f,-80.366554f,-82.279755f,-84.211250f,-86.160439f,-88.128540f,-90.113861f,-92.116684f,-94.137245f,-96.175629f,
--98.231926f,-100.304977f,-102.394478f,-104.501663f,-106.626846f,-108.766983f,-110.924896f,-113.099243f,-115.290222f,-117.496429f,-119.719383f,-121.958061f,-124.213089f,-126.482582f,-128.767502f,-131.068207f,-133.384430f,-135.714676f,-138.058945f,-140.419128f,
--142.793396f,-145.181564f,-147.582993f,-149.999176f,-152.428436f,-154.870575f,-157.326584f,-159.795868f,-162.277618f,-164.771729f,-167.277176f,-169.795319f,-172.326309f,-174.867447f,-177.420486f,-179.985596f,-182.561005f,-185.146637f,-187.743423f,-190.351440f,
--192.969757f,-195.595917f,-198.232895f,-200.879730f,-203.534805f,-206.199112f,-208.871094f,-211.553040f,-214.241730f,-216.938721f,-219.642075f,-222.354797f,-225.074402f,-227.799179f,-230.531021f,-233.270477f,-236.015472f,-238.764801f,-241.520599f,-244.282562f,
--247.049118f,-249.819702f,-252.594482f,-255.374161f,-258.157928f,-260.944336f,-263.732880f,-266.526733f,-269.323120f,-272.120819f,-274.920105f,-277.722717f,-280.526398f,-283.330719f,-286.136475f,-288.943817f,-291.751312f,-294.557251f,-297.363464f,-300.170135f,
--302.976776f,-305.780670f,-308.582703f,-311.384491f,-314.183838f,-316.980316f,-319.774109f,-322.566345f,-325.354401f,-328.138641f,-330.919647f,-333.697083f,-336.470367f,-339.237946f,-342.000610f,-344.760040f,-347.513702f,-350.260315f,-353.000885f,-355.735596f,
--358.463867f,-361.183929f,-363.897308f,-366.604462f,-369.303162f,-371.991913f,-374.673248f,-377.347290f,-380.012543f,-382.665894f,-385.311310f,-387.946838f,-390.572815f,-393.186981f,-395.791077f,-398.384308f,-400.967590f,-403.536804f,-406.095398f,-408.643616f,
--411.179138f,-413.700134f,-416.209106f,-418.706268f,-421.190002f,-423.658417f,-426.113800f,-428.555817f,-430.983398f,-433.395477f,-435.792511f,-438.176086f,-440.543427f,-442.893921f,-445.228638f,-447.549011f,-449.852661f,-452.138916f,-454.407043f,-456.660370f,
--458.896332f,-461.113617f,-463.313049f,-465.496002f,-467.660492f,-469.804657f,-471.931122f,-474.039581f,-476.129364f,-478.198242f,-480.248169f,-482.279327f,-484.290894f,-486.280975f,-488.251038f,-490.201294f,-492.131226f,-494.039246f,-495.926239f,-497.793884f,
--499.639069f,-501.461517f,-503.263092f,-505.043549f,-506.802551f,-508.537628f,-510.250397f,-511.941071f,-513.609192f,-515.253601f,-516.874878f,-518.474792f,-520.050537f,-521.601379f,-523.129456f,-524.635376f,-526.116577f,-527.573364f,-529.005676f,-530.414978f,
--531.799927f,-533.159241f,-534.493164f,-535.804443f,-537.090942f,-538.350464f,-539.584473f,-540.795166f,-541.980896f,-543.138733f,-544.272156f,-545.380493f,-546.464355f,-547.520508f,-548.550781f,-549.556702f,-550.536377f,-551.488953f,-552.415405f,-553.316406f,
--554.191589f,-555.038208f,-555.858887f,-556.654358f,-557.423645f,-558.164795f,-558.879456f,-559.568481f,-560.230286f,-560.864807f,-561.473022f,-562.054932f,-562.610107f,-563.137085f,-563.636780f,-564.111206f,-564.558044f,-564.976624f,-565.368408f,-565.734131f,
--566.073242f,-566.383423f,-566.666870f,-566.924988f,-567.154480f,-567.356567f,-567.531982f,-567.681030f,-567.802673f,-567.896118f,-567.963257f,-568.004028f,-568.018494f,-568.004211f,-567.962402f,-567.895752f,-567.801086f,-567.678650f,-567.529358f,-567.355103f,
--567.153320f,-566.923401f,-566.667358f,-566.385559f,-566.077637f,-565.741699f,-565.379089f,-564.991272f,-564.576355f,-564.134338f,-563.666199f,-563.173096f,-562.653870f,-562.107300f,-561.534851f,-560.937195f,-560.314697f,-559.664185f,-558.988831f,-558.288330f,
--557.562439f,-556.810547f,-556.032898f,-555.232117f,-554.405273f,-553.552979f,-552.675903f,-551.775269f,-550.849609f,-549.898254f,-548.921753f,-547.923218f,-546.900208f,-545.851746f,-544.779358f,-543.684631f,-542.565613f,-541.421936f,-540.255615f,-539.066772f,
--537.854858f,-536.618347f,-535.359009f,-534.078308f,-532.775269f,-531.447998f,-530.098511f,-528.728394f,-527.335815f,-525.920532f,-524.483643f,-523.026672f,-521.547363f,-520.046692f,-518.525024f,-516.983582f,-515.421997f,-513.837952f,-512.234375f,-510.611786f,
--508.969757f,-507.306549f,-505.624268f,-503.923950f,-502.203217f,-500.462891f,-498.704224f,-496.928436f,-495.133698f,-493.319214f,-491.487610f,-489.639587f,-487.773895f,-485.890350f,-483.989441f,-482.072876f,-480.139130f,-478.188599f,-476.221130f,-474.239746f,
--472.241943f,-470.227905f,-468.198730f,-466.155548f,-464.097626f,-462.023346f,-459.935913f,-457.835144f,-455.719849f,-453.589844f,-451.448059f,-449.292816f,-447.125183f,-444.943848f,-442.750214f,-440.545258f,-438.328400f,-436.098816f,-433.857910f,-431.606567f,
--429.343811f,-427.070160f,-424.786041f,-422.492462f,-420.188995f,-417.875397f,-415.552216f,-413.221008f,-410.881256f,-408.531860f,-406.174316f,-403.809692f,-401.436707f,-399.055359f,-396.667236f,-394.272278f,-391.871521f,-389.463837f,-387.048676f,-384.628998f,
--382.203033f,-379.771240f,-377.334442f,-374.894012f,-372.448975f,-369.997345f,-367.543030f,-365.086029f,-362.625214f,-360.160004f,-357.691772f,-355.222443f,-352.749420f,-350.273499f,-347.795837f,-345.317993f,-342.838318f,-340.355988f,-337.873688f,-335.391571f,
--332.909760f,-330.426300f,-327.943695f,-325.462494f,-322.982056f,-320.501129f,-318.020905f,-315.544525f,-313.069305f,-310.594360f,-308.121643f,-305.653564f,-303.187439f,-300.723114f,-298.262543f,-295.806488f,-293.353790f,-290.904022f,-288.459137f,-286.019989f,
--283.584747f,-281.153717f,-278.728119f,-276.309235f,-273.896057f,-271.487183f,-269.085114f,-266.690247f,-264.301270f,-261.919098f,-259.543823f,-257.177185f,-254.817230f,-252.463165f,-250.118103f,-247.782730f,-245.454666f,-243.135101f,-240.824066f,-238.522385f,
--236.230026f,-233.945633f,-231.670990f,-229.407822f,-227.153198f,-224.908463f,-222.674454f,-220.452560f,-218.240707f,-216.038025f,-213.847168f,-211.668274f,-209.500839f,-207.343262f,-205.198135f,-203.065948f,-200.945969f,-198.836823f,-196.740417f,-194.658218f,
--192.587585f,-190.528305f,-188.482742f,-186.451584f,-184.433502f,-182.427780f,-180.435303f,-178.457108f,-176.493637f,-174.542542f,-172.605606f,-170.683838f,-168.776184f,-166.881790f,-165.001236f,-163.137299f,-161.287994f,-159.452133f,-157.630859f,-155.825745f,
--154.036346f,-152.260880f,-150.500580f,-148.756393f,-147.027695f,-145.314209f,-143.615997f,-141.934830f,-140.269577f,-138.618546f,-136.984344f,-135.366531f,-133.765305f,-132.178925f,-130.608200f,-129.054916f,-127.518303f,-125.996613f,-124.492020f,-123.004158f,
--121.532761f,-120.077271f,-118.638313f,-117.216454f,-115.811943f,-114.422096f,-113.049606f,-111.694817f,-110.356819f,-109.034401f,-107.728554f,-106.440430f,-105.168579f,-103.912804f,-102.674202f,-101.453247f,-100.248528f,-99.060402f,-97.888435f,-96.734711f,
--95.597740f,-94.476334f,-93.371437f,-92.284706f,-91.214447f,-90.160225f,-89.123138f,-88.103241f,-87.099228f,-86.111465f,-85.140297f,-84.186501f,-83.249084f,-82.327766f,-81.422546f,-80.533691f,-79.661690f,-78.806335f,-77.966835f,-77.143478f,
--76.336441f,-75.545403f,-74.770126f,-74.011322f,-73.268898f,-72.541702f,-71.830467f,-71.134972f,-70.455704f,-69.791977f,-69.143463f,-68.510445f,-67.892914f,-67.290718f,-66.704002f,-66.132164f,-65.575508f,-65.033676f,-64.506416f,-63.995049f,
--63.498386f,-63.015713f,-62.547852f,-62.094040f,-61.655296f,-61.231045f,-60.820362f,-60.424366f,-60.041824f,-59.673569f,-59.319077f,-58.978745f,-58.651791f,-58.338249f,-58.037426f,-57.750774f,-57.477211f,-57.216255f,-56.968796f,-56.733860f,
--56.511642f,-56.302219f,-56.105347f,-55.920872f,-55.748566f,-55.587971f,-55.439575f,-55.303982f,-55.180054f,-55.066784f,-54.965435f,-54.875675f,-54.797485f,-54.730385f,-54.674557f,-54.628883f,-54.593964f,-54.570011f,-54.556816f,-54.554600f,
--54.561714f,-54.578690f,-54.605755f,-54.642677f,-54.689743f,-54.746094f,-54.812191f,-54.886791f,-54.969975f,-55.062881f,-55.164520f,-55.275143f,-55.393478f,-55.519936f,-55.655125f,-55.798122f,-55.949356f,-56.108078f,-56.274170f,-56.447247f,
--56.628143f,-56.816505f,-57.011753f,-57.213623f,-57.421326f,-57.636356f,-57.858585f,-58.086452f,-58.320290f,-58.559464f,-58.804932f,-59.055832f,-59.311897f,-59.573738f,-59.840584f,-60.111217f,-60.387074f,-60.667629f,-60.952724f,-61.241634f,
--61.534550f,-61.831490f,-62.131931f,-62.435371f,-62.742779f,-63.053482f,-63.367031f,-63.682964f,-64.002472f,-64.324692f,-64.648911f,-64.974899f,-65.303162f,-65.633858f,-65.966164f,-66.299866f,-66.634254f,-66.970535f,-67.308296f,-67.645905f,
--67.984917f,-68.324753f,-68.664421f,-69.003670f,-69.343285f,-69.683434f,-70.022949f,-70.362022f,-70.699684f,-71.037010f,-71.373901f,-71.708755f,-72.043030f,-72.375946f,-72.706612f,-73.035133f,-73.361938f,-73.687401f,-74.010368f,-74.330612f,
--74.647964f,-74.963127f,-75.275627f,-75.584633f,-75.890541f,-76.193123f,-76.491920f,-76.786980f,-77.078911f,-77.367119f,-77.650749f,-77.930038f,-78.204872f,-78.475441f,-78.742180f,-79.003029f,-79.258797f,-79.510101f,-79.756073f,-79.996208f,
--80.231224f,-80.460915f,-80.685066f,-80.902519f,-81.113480f,-81.319969f,-81.519775f,-81.712776f,-81.899330f,-82.079681f,-82.253418f,-82.419319f,-82.578865f,-82.732193f,-82.877663f,-83.015427f,-83.145454f,-83.268776f,-83.384834f,-83.492203f,
--83.591492f,-83.683594f,-83.768295f,-83.844681f,-83.912437f,-83.972595f,-84.024567f,-84.067795f,-84.102570f,-84.129456f,-84.146973f,-84.155983f,-84.155533f,-84.147156f,-84.130379f,-84.104202f,-84.068558f,-84.024422f,-83.971382f,-83.909302f,
--83.838104f,-83.757675f,-83.668251f,-83.569092f,-83.460289f,-83.342751f,-83.216209f,-83.079285f,-82.932533f,-82.777420f,-82.613358f,-82.439163f,-82.255402f,-82.061905f,-81.859207f,-81.647820f,-81.425880f,-81.194778f,-80.954567f,-80.704720f,
--80.444397f,-80.175919f,-79.897919f,-79.610397f,-79.312943f,-79.005951f,-78.690231f,-78.365265f,-78.030663f,-77.686623f,-77.333366f,-76.971649f,-76.599930f,-76.219109f,-75.830101f,-75.432304f,-75.025024f,-74.607948f,-74.182907f,-73.749290f,
--73.306320f,-72.854652f,-72.395218f,-71.927162f,-71.450928f,-70.965927f,-70.472313f,-69.971291f,-69.461472f,-68.943710f,-68.418976f,-67.886147f,-67.345665f,-66.796753f,-66.241539f,-65.679337f,-65.108963f,-64.531746f,-63.947582f,-63.355984f,
--62.757576f,-62.151688f,-61.540573f,-60.923683f,-60.299202f,-59.667603f,-59.031235f,-58.389729f,-57.741520f,-57.086998f,-56.427406f,-55.762924f,-55.093052f,-54.417397f,-53.736542f,-53.052391f,-52.362637f,-51.667618f,-50.968018f,-50.265739f,
--49.558769f,-48.846355f,-48.131161f,-47.413334f,-46.691826f,-45.966240f,-45.237850f,-44.507519f,-43.773808f,-43.037075f,-42.297630f,-41.557686f,-40.814732f,-40.068508f,-39.320545f,-38.572918f,-37.823395f,-37.071384f,-36.318882f,-35.566235f,
--34.812309f,-34.056995f,-33.301933f,-32.548576f,-31.794197f,-31.038944f,-30.284048f,-29.530386f,-28.778368f,-28.025517f,-27.274679f,-26.525764f,-25.778835f,-25.031500f,-24.286755f,-23.545662f,-22.806223f,-22.067678f,-21.332323f,-20.601440f,
--19.872141f,-19.145342f,-18.422464f,-17.705357f,-16.990997f,-16.278864f,-15.571356f,-14.869671f,-14.171355f,-13.476915f,-12.787113f,-12.104268f,
+const static s16q10_t _encoder_off_map[] = {
+-119,-112,-105,-99,-92,-85,-78,-72,-65,-59,-52,-46,-40,-34,-28,-22,
+-16,-10,-4,0,6,11,17,22,27,32,37,42,47,51,56,60,65,69,73,77,
+80,84,88,91,94,98,101,104,106,109,111,114,116,118,120,122,124,125,126,128,
+129,130,130,131,132,132,132,132,132,131,131,130,129,128,127,126,124,123,121,119,
+116,114,112,109,106,103,99,96,92,88,84,80,76,71,66,61,56,51,45,40,
+34,28,21,15,8,1,-5,-12,-20,-27,-35,-43,-52,-60,-69,-78,-87,-96,-106,-116,
+-126,-136,-146,-157,-167,-178,-189,-201,-212,-224,-236,-248,-261,-273,-286,-299,-312,-326,-339,-353,
+-367,-382,-396,-411,-425,-441,-456,-471,-487,-503,-519,-535,-552,-568,-585,-602,-620,-637,-655,-673,
+-691,-709,-727,-746,-765,-784,-803,-822,-842,-862,-882,-902,-922,-943,-963,-984,-1005,-1027,-1048,-1070,
+-1091,-1113,-1135,-1158,-1180,-1203,-1225,-1248,-1271,-1295,-1318,-1342,-1365,-1389,-1413,-1437,-1462,-1486,-1511,-1535,
+-1560,-1585,-1611,-1636,-1661,-1687,-1712,-1738,-1764,-1790,-1816,-1843,-1869,-1895,-1922,-1949,-1976,-2002,-2029,-2057,
+-2084,-2111,-2138,-2166,-2193,-2221,-2249,-2276,-2304,-2332,-2360,-2388,-2416,-2444,-2473,-2501,-2529,-2558,-2586,-2615,
+-2643,-2672,-2700,-2729,-2757,-2786,-2815,-2843,-2872,-2901,-2930,-2958,-2987,-3016,-3045,-3073,-3102,-3131,-3159,-3188,
+-3217,-3245,-3274,-3303,-3331,-3360,-3388,-3417,-3445,-3473,-3502,-3530,-3558,-3586,-3614,-3642,-3670,-3698,-3726,-3754,
+-3781,-3809,-3836,-3864,-3891,-3918,-3945,-3972,-3999,-4026,-4052,-4079,-4105,-4132,-4158,-4184,-4210,-4236,-4261,-4287,
+-4312,-4338,-4363,-4388,-4413,-4437,-4462,-4486,-4511,-4535,-4559,-4582,-4606,-4629,-4653,-4676,-4699,-4721,-4744,-4766,
+-4788,-4810,-4832,-4854,-4875,-4896,-4917,-4938,-4959,-4979,-4999,-5019,-5039,-5058,-5078,-5097,-5116,-5134,-5153,-5171,
+-5189,-5207,-5224,-5242,-5259,-5276,-5292,-5309,-5325,-5341,-5356,-5372,-5387,-5402,-5417,-5431,-5445,-5459,-5473,-5486,
+-5499,-5512,-5525,-5537,-5549,-5561,-5573,-5584,-5595,-5606,-5617,-5627,-5637,-5647,-5656,-5665,-5674,-5683,-5691,-5700,
+-5708,-5715,-5722,-5729,-5736,-5743,-5749,-5755,-5761,-5766,-5771,-5776,-5781,-5785,-5789,-5793,-5796,-5799,-5802,-5805,
+-5807,-5809,-5811,-5813,-5814,-5815,-5815,-5816,-5816,-5816,-5815,-5815,-5814,-5813,-5811,-5809,-5807,-5805,-5802,-5799,
+-5796,-5793,-5789,-5785,-5781,-5776,-5771,-5766,-5761,-5755,-5750,-5743,-5737,-5730,-5724,-5716,-5709,-5701,-5693,-5685,
+-5677,-5668,-5659,-5650,-5640,-5630,-5620,-5610,-5600,-5589,-5578,-5567,-5555,-5544,-5532,-5520,-5507,-5494,-5482,-5468,
+-5455,-5442,-5428,-5414,-5399,-5385,-5370,-5355,-5340,-5325,-5309,-5293,-5277,-5261,-5245,-5228,-5211,-5194,-5177,-5160,
+-5142,-5124,-5106,-5088,-5070,-5051,-5032,-5013,-4994,-4975,-4956,-4936,-4916,-4896,-4876,-4856,-4835,-4815,-4794,-4773,
+-4752,-4731,-4709,-4688,-4666,-4644,-4622,-4600,-4578,-4556,-4533,-4511,-4488,-4465,-4442,-4419,-4396,-4373,-4349,-4326,
+-4302,-4279,-4255,-4231,-4207,-4183,-4159,-4135,-4110,-4086,-4061,-4037,-4012,-3988,-3963,-3938,-3913,-3888,-3863,-3838,
+-3813,-3788,-3763,-3738,-3713,-3688,-3662,-3637,-3612,-3586,-3561,-3536,-3510,-3485,-3459,-3434,-3408,-3383,-3358,-3332,
+-3307,-3281,-3256,-3231,-3205,-3180,-3155,-3129,-3104,-3079,-3054,-3029,-3003,-2978,-2953,-2928,-2903,-2879,-2854,-2829,
+-2804,-2780,-2755,-2730,-2706,-2682,-2657,-2633,-2609,-2585,-2561,-2537,-2513,-2489,-2466,-2442,-2418,-2395,-2372,-2349,
+-2326,-2303,-2280,-2257,-2234,-2212,-2189,-2167,-2145,-2123,-2101,-2079,-2057,-2036,-2014,-1993,-1972,-1951,-1930,-1909,
+-1888,-1868,-1847,-1827,-1807,-1787,-1767,-1747,-1728,-1708,-1689,-1670,-1651,-1632,-1614,-1595,-1577,-1559,-1541,-1523,
+-1505,-1488,-1470,-1453,-1436,-1419,-1402,-1386,-1369,-1353,-1337,-1321,-1305,-1290,-1274,-1259,-1244,-1229,-1214,-1200,
+-1185,-1171,-1157,-1143,-1130,-1116,-1103,-1089,-1076,-1064,-1051,-1038,-1026,-1014,-1002,-990,-978,-967,-956,-944,
+-934,-923,-912,-902,-891,-881,-871,-862,-852,-843,-833,-824,-815,-806,-798,-789,-781,-773,-765,-757,
+-750,-742,-735,-728,-721,-714,-708,-701,-695,-689,-683,-677,-671,-665,-660,-655,-650,-645,-640,-635,
+-631,-627,-622,-618,-614,-611,-607,-603,-600,-597,-594,-591,-588,-585,-583,-580,-578,-576,-574,-572,
+-570,-569,-567,-566,-565,-563,-562,-561,-561,-560,-559,-559,-559,-558,-558,-558,-558,-558,-559,-559,
+-560,-560,-561,-562,-562,-563,-564,-566,-567,-568,-569,-571,-572,-574,-576,-578,-579,-581,-583,-585,
+-587,-590,-592,-594,-597,-599,-602,-604,-607,-610,-612,-615,-618,-621,-624,-627,-630,-633,-636,-639,
+-642,-645,-648,-652,-655,-658,-662,-665,-668,-672,-675,-678,-682,-685,-689,-692,-696,-699,-703,-706,
+-710,-713,-717,-720,-723,-727,-730,-734,-737,-741,-744,-747,-751,-754,-757,-761,-764,-767,-770,-773,
+-777,-780,-783,-786,-789,-792,-795,-798,-800,-803,-806,-808,-811,-814,-816,-819,-821,-823,-826,-828,
+-830,-832,-834,-836,-838,-840,-842,-843,-845,-847,-848,-850,-851,-852,-853,-854,-855,-856,-857,-858,
+-859,-859,-860,-860,-861,-861,-861,-861,-861,-861,-861,-861,-860,-860,-859,-859,-858,-857,-856,-855,
+-854,-853,-852,-850,-849,-847,-845,-844,-842,-840,-838,-836,-833,-831,-828,-826,-823,-821,-818,-815,
+-812,-809,-805,-802,-799,-795,-791,-788,-784,-780,-776,-772,-768,-763,-759,-755,-750,-746,-741,-736,
+-731,-726,-721,-716,-711,-705,-700,-695,-689,-683,-678,-672,-666,-660,-654,-648,-642,-636,-630,-623,
+-617,-610,-604,-597,-591,-584,-577,-571,-564,-557,-550,-543,-536,-529,-521,-514,-507,-500,-492,-485,
+-478,-470,-463,-455,-448,-440,-433,-425,-417,-410,-402,-394,-387,-379,-371,-364,-356,-348,-341,-333,
+-325,-317,-310,-302,-294,-286,-279,-271,-263,-256,-248,-241,-233,-225,-218,-210,-203,-196,-188,-181,
+-173,-166,-159,-152,-145,-138,-130,-123,-116,-110,-103,-96,-89,-83,-76,-70,-63,-57,-50,-44,
+-38,-32,-26,-20,-14,-8,-3,2,7,13,18,23,28,33,38,43,47,52,57,61,
+65,69,73,77,81,85,88,91,95,98,101,104,107,109,112,114,116,118,120,122,
+124,125,127,128,129,130,131,131,132,132,132,132,132,131,131,130,129,128,127,126,
+124,123,121,119,116,114,112,109,106,103,99,96,92,88,84,80,76,71,66,61,
+56,51,45,40,34,28,21,15,8,1,-5,-12,-20,-27,-35,-43,-52,-60,-69,-78,
+-87,-96,-106,-116,-126,-136,-146,-157,-167,-178,-189,-201,-212,-224,-236,-248,-261,-273,-286,-299,
+-312,-326,-339,-353,-367,-382,-396,-411,-425,-441,-456,-471,-487,-503,-519,-535,-552,-568,-585,-602,
+-620,-637,-655,-673,-691,-709,-727,-746,-765,-784,-803,-822,-842,-862,-882,-902,-922,-943,-963,-984,
+-1005,-1027,-1048,-1070,-1091,-1113,-1135,-1158,-1180,-1203,-1225,-1248,-1271,-1295,-1318,-1342,-1365,-1389,-1413,-1437,
+-1462,-1486,-1511,-1535,-1560,-1585,-1611,-1636,-1661,-1687,-1712,-1738,-1764,-1790,-1816,-1843,-1869,-1895,-1922,-1949,
+-1976,-2002,-2029,-2057,-2084,-2111,-2138,-2166,-2193,-2221,-2249,-2276,-2304,-2332,-2360,-2388,-2416,-2444,-2473,-2501,
+-2529,-2558,-2586,-2615,-2643,-2672,-2700,-2729,-2757,-2786,-2815,-2843,-2872,-2901,-2930,-2958,-2987,-3016,-3045,-3073,
+-3102,-3131,-3159,-3188,-3217,-3245,-3274,-3303,-3331,-3360,-3388,-3417,-3445,-3473,-3502,-3530,-3558,-3586,-3614,-3642,
+-3670,-3698,-3726,-3754,-3781,-3809,-3836,-3864,-3891,-3918,-3945,-3972,-3999,-4026,-4052,-4079,-4105,-4132,-4158,-4184,
+-4210,-4236,-4261,-4287,-4312,-4338,-4363,-4388,-4413,-4437,-4462,-4486,-4511,-4535,-4559,-4582,-4606,-4629,-4653,-4676,
+-4699,-4721,-4744,-4766,-4788,-4810,-4832,-4854,-4875,-4896,-4917,-4938,-4959,-4979,-4999,-5019,-5039,-5058,-5078,-5097,
+-5116,-5134,-5153,-5171,-5189,-5207,-5224,-5242,-5259,-5276,-5292,-5309,-5325,-5341,-5356,-5372,-5387,-5402,-5417,-5431,
+-5445,-5459,-5473,-5486,-5499,-5512,-5525,-5537,-5549,-5561,-5573,-5584,-5595,-5606,-5617,-5627,-5637,-5647,-5656,-5665,
+-5674,-5683,-5691,-5700,-5708,-5715,-5722,-5729,-5736,-5743,-5749,-5755,-5761,-5766,-5771,-5776,-5781,-5785,-5789,-5793,
+-5796,-5799,-5802,-5805,-5807,-5809,-5811,-5813,-5814,-5815,-5815,-5816,-5816,-5816,-5815,-5815,-5814,-5813,-5811,-5809,
+-5807,-5805,-5802,-5799,-5796,-5793,-5789,-5785,-5781,-5776,-5771,-5766,-5761,-5755,-5750,-5743,-5737,-5730,-5724,-5716,
+-5709,-5701,-5693,-5685,-5677,-5668,-5659,-5650,-5640,-5630,-5620,-5610,-5600,-5589,-5578,-5567,-5555,-5544,-5532,-5520,
+-5507,-5494,-5482,-5468,-5455,-5442,-5428,-5414,-5399,-5385,-5370,-5355,-5340,-5325,-5309,-5293,-5277,-5261,-5245,-5228,
+-5211,-5194,-5177,-5160,-5142,-5124,-5106,-5088,-5070,-5051,-5032,-5013,-4994,-4975,-4956,-4936,-4916,-4896,-4876,-4856,
+-4835,-4815,-4794,-4773,-4752,-4731,-4709,-4688,-4666,-4644,-4622,-4600,-4578,-4556,-4533,-4511,-4488,-4465,-4442,-4419,
+-4396,-4373,-4349,-4326,-4302,-4279,-4255,-4231,-4207,-4183,-4159,-4135,-4110,-4086,-4061,-4037,-4012,-3988,-3963,-3938,
+-3913,-3888,-3863,-3838,-3813,-3788,-3763,-3738,-3713,-3688,-3662,-3637,-3612,-3586,-3561,-3536,-3510,-3485,-3459,-3434,
+-3408,-3383,-3358,-3332,-3307,-3281,-3256,-3231,-3205,-3180,-3155,-3129,-3104,-3079,-3054,-3029,-3003,-2978,-2953,-2928,
+-2903,-2879,-2854,-2829,-2804,-2780,-2755,-2730,-2706,-2682,-2657,-2633,-2609,-2585,-2561,-2537,-2513,-2489,-2466,-2442,
+-2418,-2395,-2372,-2349,-2326,-2303,-2280,-2257,-2234,-2212,-2189,-2167,-2145,-2123,-2101,-2079,-2057,-2036,-2014,-1993,
+-1972,-1951,-1930,-1909,-1888,-1868,-1847,-1827,-1807,-1787,-1767,-1747,-1728,-1708,-1689,-1670,-1651,-1632,-1614,-1595,
+-1577,-1559,-1541,-1523,-1505,-1488,-1470,-1453,-1436,-1419,-1402,-1386,-1369,-1353,-1337,-1321,-1305,-1290,-1274,-1259,
+-1244,-1229,-1214,-1200,-1185,-1171,-1157,-1143,-1130,-1116,-1103,-1089,-1076,-1064,-1051,-1038,-1026,-1014,-1002,-990,
+-978,-967,-956,-944,-934,-923,-912,-902,-891,-881,-871,-862,-852,-843,-833,-824,-815,-806,-798,-789,
+-781,-773,-765,-757,-750,-742,-735,-728,-721,-714,-708,-701,-695,-689,-683,-677,-671,-665,-660,-655,
+-650,-645,-640,-635,-631,-627,-622,-618,-614,-611,-607,-603,-600,-597,-594,-591,-588,-585,-583,-580,
+-578,-576,-574,-572,-570,-569,-567,-566,-565,-563,-562,-561,-561,-560,-559,-559,-559,-558,-558,-558,
+-558,-558,-559,-559,-560,-560,-561,-562,-562,-563,-564,-566,-567,-568,-569,-571,-572,-574,-576,-578,
+-579,-581,-583,-585,-587,-590,-592,-594,-597,-599,-602,-604,-607,-610,-612,-615,-618,-621,-624,-627,
+-630,-633,-636,-639,-642,-645,-648,-652,-655,-658,-662,-665,-668,-672,-675,-678,-682,-685,-689,-692,
+-696,-699,-703,-706,-710,-713,-717,-720,-723,-727,-730,-734,-737,-741,-744,-747,-751,-754,-757,-761,
+-764,-767,-770,-773,-777,-780,-783,-786,-789,-792,-795,-798,-800,-803,-806,-808,-811,-814,-816,-819,
+-821,-823,-826,-828,-830,-832,-834,-836,-838,-840,-842,-843,-845,-847,-848,-850,-851,-852,-853,-854,
+-855,-856,-857,-858,-859,-859,-860,-860,-861,-861,-861,-861,-861,-861,-861,-861,-860,-860,-859,-859,
+-858,-857,-856,-855,-854,-853,-852,-850,-849,-847,-845,-844,-842,-840,-838,-836,-833,-831,-828,-826,
+-823,-821,-818,-815,-812,-809,-805,-802,-799,-795,-791,-788,-784,-780,-776,-772,-768,-763,-759,-755,
+-750,-746,-741,-736,-731,-726,-721,-716,-711,-705,-700,-695,-689,-683,-678,-672,-666,-660,-654,-648,
+-642,-636,-630,-623,-617,-610,-604,-597,-591,-584,-577,-571,-564,-557,-550,-543,-536,-529,-521,-514,
+-507,-500,-492,-485,-478,-470,-463,-455,-448,-440,-433,-425,-417,-410,-402,-394,-387,-379,-371,-364,
+-356,-348,-341,-333,-325,-317,-310,-302,-294,-286,-279,-271,-263,-256,-248,-241,-233,-225,-218,-210,
+-203,-196,-188,-181,-173,-166,-159,-152,-145,-138,-130,-123,
 };