decoder excitation now in 16-bit precision (was 32), which saves quite a bit
[speexdsp.git] / libspeex / exc_5_256_table.c
index 4c737fd..4137996 100644 (file)
-float exc_5_256_table[256][5]={
-{0.19028,-1.19216,1.01496,-1.68505,0.530342},
-{1.43114,1.76482,1.13029,0.467325,-0.118456},
-{-1.70027,-1.04753,0.163115,1.78991,0.715999},
-{-0.349082,0.600766,-0.658972,0.00712033,1.10185},
-{0.707736,-0.240468,-0.148016,0.365392,0.15358},
-{-0.291232,-1.29587,0.675609,1.95325,-1.75773},
-{0.384438,0.359208,0.192474,-2.21698,-2.13492},
-{-2.02315,1.29534,-0.48924,1.10493,-1.20365},
-{-0.00809715,-1.94497,1.37629,-0.175045,0.132235},
-{-0.522044,-0.140311,0.604364,2.32491,-0.363157},
-{-0.343704,0.0198448,1.25282,0.0271826,0.834806},
-{0.173456,1.60276,0.679361,-0.165157,0.601343},
-{-0.148854,-0.30341,-0.729362,1.82971,1.2929},
-{0.211454,1.09323,-0.522278,-1.20368,-0.888268},
-{-0.556048,0.717144,-0.452017,-1.42375,1.26429},
-{-0.0674071,0.0814805,-0.0752756,1.66794,-3.07519},
-{0.746281,0.258262,-0.119019,-0.550581,-0.416475},
-{0.223079,0.400795,-0.810151,1.01507,-0.112121},
-{-1.0015,-0.332818,0.126392,0.346198,1.91743},
-{-0.863116,0.986972,-1.59637,1.10265,1.1985},
-{1.16033,1.66989,-2.2818,-0.28701,0.360093},
-{1.11615,-0.873836,0.564808,-0.230663,-1.60369},
-{0.428631,1.18423,-0.289242,-1.18637,0.375181},
-{-0.993522,0.498477,-1.11803,2.11574,-0.534347},
-{0.787547,-1.99658,2.45624,-2.00842,1.20949},
-{0.0421546,-0.396605,0.508831,0.429771,-0.0377948},
-{-0.676053,0.188737,1.03056,0.126578,-0.595505},
-{-1.30631,0.544544,-0.00711868,-0.650046,0.692036},
-{0.448392,-2.11804,-0.28171,-0.241554,0.00506657},
-{-0.419691,-0.408426,-1.1623,-1.48962,-1.32172},
-{0.651377,0.630634,1.27962,-0.633464,1.29209},
-{1.03546,-1.20945,0.223839,1.86249,-2.75887},
-{1.19968,-2.87206,2.23684,-0.278886,-0.377211},
-{0.891759,0.180826,1.56942,-0.00463022,-0.061534},
-{-1.47405,-2.02081,-0.577162,-0.203813,0.274341},
-{-1.81044,2.573,-1.63586,-0.134374,0.956315},
-{2.16886,-1.30587,-0.370774,1.20093,-0.901648},
-{-0.694017,-0.758904,1.73323,-0.138912,-0.614558},
-{-1.09635,0.877675,-0.0840189,-1.45155,-0.257058},
-{-0.941981,1.41089,-1.32564,1.08113,-1.11444},
-{-0.162032,-0.34072,2.31174,-2.18734,-0.643509},
-{-0.3929,0.248084,1.10439,1.62262,1.41702},
-{-1.79664,1.09215,1.89197,-1.58008,-0.130777},
-{-2.6216,0.184975,-0.0914826,0.853891,0.172371},
-{0.888984,0.0274795,-0.555739,0.186501,1.14181},
-{1.37008,0.514867,0.70117,-0.299958,-1.4497},
-{0.251172,0.762633,-1.83227,-1.99544,2.40336},
-{0.0318121,-0.447745,-2.03871,3.26916,-0.440572},
-{-0.0596678,-0.431491,0.830744,-0.646988,-0.231428},
-{-0.333352,0.0783209,0.11058,0.312093,-0.60373},
-{-0.521066,-0.0566533,0.43388,-0.831533,1.054},
-{-0.609329,1.0381,-0.786306,0.504327,-0.182011},
-{0.279684,0.806427,-1.3499,0.231412,-0.478314},
-{1.42834,-2.3633,0.224642,1.83987,-1.20767},
-{0.368394,0.687205,-1.48928,-1.15415,0.342704},
-{0.46995,1.7856,-1.62329,0.723173,-1.44426},
-{0.202997,-0.348456,0.711341,-1.44627,1.64784},
-{-0.823471,-1.8262,0.448283,1.15121,1.67559},
-{-1.69768,1.56435,0.824513,-0.0621726,-1.69301},
-{-1.57452,1.84101,-0.637741,-0.166914,-0.310526},
-{1.48966,-0.462308,-1.88234,0.637998,1.19021},
-{-0.570594,-0.848838,-0.546898,-0.630661,-0.102711},
-{-0.847047,-0.0408755,1.32864,-1.72291,0.787156},
-{0.541875,-1.48094,-0.205537,1.11339,-0.211444},
-{1.96752,0.0807473,0.793642,0.215757,1.03221},
-{0.507011,0.830942,0.312623,0.665426,1.90298},
-{-1.43651,-0.33832,1.35088,1.02514,0.438064},
-{-0.547367,-0.28566,-1.5438,-0.732139,0.871887},
-{1.92317,-1.00872,-0.331481,-0.0963572,-0.647448},
-{-0.635618,-0.325097,1.45627,0.469713,-2.28562},
-{1.32978,-0.357695,1.24993,-1.42685,-0.329201},
-{-2.02894,2.75117,-1.65516,1.02933,-0.732393},
-{0.450553,-1.30463,2.00577,-0.594163,-1.25333},
-{0.038118,-0.359635,-0.482839,0.689927,-0.606359},
-{-1.22328,-0.696521,0.748815,-1.31627,-0.335667},
-{-0.667347,0.867484,-1.062,-0.596875,0.139979},
-{-0.497509,-1.05327,-0.337831,-0.892041,1.54069},
-{1.20125,1.24913,0.503919,-1.33946,-0.497861},
-{-0.234669,0.434697,0.288012,-2.87405,2.67479},
-{-0.11988,0.312599,-1.20657,2.69089,-2.45326},
-{0.540548,-0.660943,-0.0605836,-0.496024,0.70002},
-{-0.00214932,0.431302,0.52739,0.0762017,0.0889467},
-{-0.259553,-0.0276753,0.1063,0.745896,0.907723},
-{1.04164,0.610987,-0.568739,1.19214,0.742597},
-{0.731911,-0.318515,-2.20743,-0.310207,-0.456912},
-{0.981054,-0.960425,0.270429,0.390834,-0.360971},
-{-0.0277036,2.44139,-1.05388,-0.74964,-0.270852},
-{-0.932991,0.517182,-0.407817,0.913109,-0.687894},
-{1.01696,-1.53923,1.72382,-1.04312,0.216397},
-{0.778734,-1.02577,-0.00493828,0.936902,1.26431},
-{-0.0684221,0.441359,0.327278,-0.717768,-0.3262},
-{-0.974972,1.04767,0.574647,0.194013,1.3787},
-{0.381109,-0.869183,-0.931576,0.00152842,0.991125},
-{-0.0443438,-0.108462,-0.556814,-0.578148,-0.670548},
-{0.366094,-0.662259,0.835222,-0.774465,0.76728},
-{0.759677,-0.75612,-0.0181272,1.16358,-1.19526},
-{2.59997,-2.56623,0.557706,0.408959,-0.504487},
-{0.625822,0.526661,0.302188,0.553011,-0.307633},
-{-0.466246,-0.321924,-0.354624,-0.0549628,0.72471},
-{-0.387772,1.75881,-1.72635,-0.679351,1.74729},
-{2.73966,0.387433,0.149282,-0.767636,-0.475763},
-{-0.61366,-1.62708,0.604493,1.27502,-0.296148},
-{-0.582606,2.11498,0.609263,-1.29045,-0.484934},
-{0.520947,0.920302,-3.03009,1.75364,0.390494},
-{0.0677055,-0.155892,1.21549,-0.567356,-1.2364},
-{-1.03823,0.238909,0.409599,0.230183,0.321788},
-{-3.50614,0.573843,1.75049,-0.0776375,0.348235},
-{-0.603445,0.314016,-0.273993,-0.140601,0.03399},
-{0.192533,0.108472,0.0681388,-0.070508,0.679395},
-{0.389971,-0.333753,0.465182,0.591594,-2.09498},
-{0.449983,0.183708,-0.317023,-0.823983,1.1638},
-{1.51877,0.647862,-1.62904,0.925579,-0.477286},
-{1.40308,-0.277546,0.38678,-0.169444,-0.334669},
-{0.111654,-0.837242,-0.0511925,-0.036591,-0.297364},
-{-0.416566,1.0614,0.712534,-1.80311,0.702184},
-{-1.24209,0.477076,-1.90088,0.566501,-0.240059},
-{0.659692,0.0169712,-1.15038,1.3165,-1.56297},
-{1.13619,-1.89708,1.6056,0.634573,-2.20027},
-{0.866701,0.400374,0.00937341,-2.09431,1.25358},
-{-0.483753,1.89332,0.00652508,0.643874,-0.916144},
-{1.40294,-0.724324,-0.278423,-0.971145,1.99646},
-{-1.55145,-2.54094,1.96945,0.408641,0.850295},
-{-1.39758,0.200329,2.30027,-0.404522,-1.31998},
-{-2.30688,1.47142,0.200574,-0.889742,0.777914},
-{1.57892,-0.933662,-0.3776,0.046213,0.642265},
-{-1.2863,-1.40852,-1.30923,-1.12566,-1.07639},
-{0.286342,-0.11991,1.55991,-2.83116,1.19984},
-{0.563194,-0.331787,-0.694438,2.06163,-0.63832},
-{0.809687,-1.09489,0.355407,-0.886394,-0.162859},
-{1.23369,1.30684,1.38779,1.39689,1.17775},
-{-1.2003,0.313085,-0.331041,1.2843,0.574714},
-{0.236435,0.830994,-0.431979,-0.105534,0.16366},
-{0.810472,0.0176487,-0.465491,0.440226,-0.775976},
-{-1.56774,0.243787,0.97205,1.23011,-1.17481},
-{0.105133,0.479514,0.80207,-3.42883,-0.393037},
-{-1.70598,1.4029,-1.18661,1.12237,-0.070917},
-{-0.736219,-0.898515,0.831095,-0.00453536,0.0789794},
-{-0.00649844,-0.367979,0.115022,1.33323,0.0133272},
-{-0.878367,0.428921,0.944957,-0.777181,0.126341},
-{-0.163343,1.67583,-0.049944,1.19347,0.511661},
-{-1.10358,-0.929787,-1.22499,0.679921,1.07709},
-{0.408735,1.67377,0.539616,-0.818885,-1.97843},
-{-0.132753,2.00692,-0.746771,-2.43548,0.781178},
-{-0.928001,0.827395,-0.604006,1.55876,-2.08659},
-{0.0995075,-0.0675411,-0.276552,-1.03479,0.225148},
-{-0.192136,0.330222,-0.232127,0.537886,0.0805576},
-{-1.95953,0.0990088,1.07206,-0.670887,1.07465},
-{0.0223182,0.0236161,-1.25699,0.367047,2.21307},
-{0.379852,1.29189,-1.17325,0.144147,0.821168},
-{1.85473,-1.40522,1.19505,-0.289904,-0.626981},
-{1.55791,1.48283,-0.393811,-0.610646,0.882772},
-{-0.244116,0.505547,-1.05088,1.21014,-1.05128},
-{2.24139,-2.37231,1.57313,-1.19786,0.742049},
-{0.107608,-0.867461,1.43922,1.06761,0.402202},
-{-0.831304,-0.135738,0.1596,-0.480094,-0.64993},
-{-1.64757,0.705436,-0.86111,-0.164398,1.79808},
-{-0.248553,-1.35459,-1.4573,0.160096,-0.116618},
-{0.790895,-1.04686,-0.586939,-1.41923,-0.999843},
-{0.307025,0.145249,0.778719,-1.26754,0.449511},
-{1.15712,-1.06611,-1.12584,2.57872,-1.73128},
-{1.38467,-1.86296,0.687756,0.349266,0.35664},
-{0.219942,1.02723,1.38998,0.630558,-1.47098},
-{-1.57339,-0.704243,0.144248,-0.0198811,0.73625},
-{-1.416,1.81122,-0.488872,-1.65748,2.19069},
-{1.78187,-0.053241,-0.492537,0.845289,-1.69662},
-{-0.863607,-1.54377,2.26269,0.950316,-1.21215},
-{-0.841207,0.788055,0.985189,-1.08145,-1.2181},
-{-1.10495,1.78946,-2.16727,2.20319,-1.45648},
-{-0.162632,-0.52261,1.81161,-1.03098,0.288429},
-{-0.369607,1.07256,2.06284,0.87391,0.0952004},
-{-1.74527,1.42744,1.11355,-2.48317,1.27285},
-{-1.45767,0.713398,-0.119637,0.144398,-0.456656},
-{1.27707,0.399941,-1.4299,-0.613828,1.47831},
-{-0.00619842,0.0938817,0.0171415,-0.636745,-1.79667},
-{-0.259894,-0.0368634,-0.627313,-1.01524,3.54701},
-{0.25873,-0.39802,-1.65095,1.4934,-0.00341877},
-{0.545702,-0.943357,1.12782,-0.227133,-0.31751},
-{-0.153848,0.049658,-0.00749219,1.2402,-1.3001},
-{-0.343917,-0.290318,0.345584,-0.33186,0.316601},
-{-1.36889,1.06432,-0.551676,0.244923,0.551692},
-{-0.0276763,0.584269,-0.42451,0.239586,-0.749546},
-{0.231223,-2.08994,-0.688945,2.3942,0.215306},
-{1.53269,0.574478,-1.05564,-1.79264,-0.452717},
-{0.173909,0.666313,-0.5096,0.49805,-1.92343},
-{0.430774,-1.04565,1.23915,-2.00704,2.6583},
-{-0.462386,-1.22395,0.0105176,0.591751,0.644931},
-{-0.655371,0.664044,0.348365,0.251285,-1.40261},
-{-2.149,3.13084,0.0661202,-0.874691,0.0956278},
-{0.335288,-0.865692,-2.54938,2.02115,1.70326},
-{-0.448381,-0.485002,-0.631383,-2.11612,0.30968},
-{-0.735516,-1.22709,1.15927,-0.704025,1.20259},
-{0.153153,-0.635713,-0.627858,0.760019,0.428093},
-{1.34021,-0.956121,0.744043,-0.559711,0.648136},
-{0.626107,0.510506,0.755866,0.787732,0.642833},
-{-1.89071,-1.10595,0.842442,0.437928,-0.678282},
-{0.870728,-1.19676,-1.52737,-1.19324,0.796867},
-{0.81119,-0.610714,-0.792216,-0.379163,-0.128446},
-{-0.479662,-1.37028,0.345657,-0.519847,-1.13405},
-{0.169647,-0.0563525,0.52336,-1.64669,-0.677671},
-{-0.640391,2.37128,-2.75925,1.16527,0.0695876},
-{-0.3733,-1.82476,2.97421,-1.15691,-0.228234},
-{-0.828448,-0.839076,-0.674098,1.51312,-0.720853},
-{-1.97361,0.292853,0.916762,-0.322976,-0.47707},
-{-0.603522,1.83262,-1.54464,0.315431,0.201071},
-{0.234608,-1.81257,-1.09685,0.611685,1.79785},
-{1.31403,0.421531,-0.823543,-0.583267,-1.39425},
-{-1.14904,0.272896,0.667171,-1.49178,2.01005},
-{0.460527,0.79763,-2.35457,2.21996,-1.37082},
-{0.360818,-1.05239,0.528468,0.0850664,0.54885},
-{0.0445125,-0.0350261,-0.0515455,-0.0346206,-0.0592469},
-{0.239184,-0.47589,0.323468,-0.157084,1.69493},
-{0.27711,0.302142,-1.64066,0.627447,0.747964},
-{1.29571,0.376546,-0.881293,-0.172447,0.128355},
-{0.728564,-0.252627,1.31012,1.03382,-0.863095},
-{1.03741,1.55655,-0.42375,0.0403849,-0.591733},
-{-1.18674,-0.281121,-0.187374,0.337543,-1.63181},
-{1.39033,-1.0686,1.15823,-1.60164,1.2609},
-{1.30579,-0.484485,0.444282,1.58096,0.317492},
-{0.289953,0.94153,0.508968,-0.190116,-0.791474},
-{-0.825431,1.74646,-0.424484,-0.665043,0.862056},
-{0.236474,0.049332,-0.83923,-0.0126438,0.241728},
-{-0.680787,-0.166925,-1.23387,-0.0127659,-0.938279},
-{0.632204,-1.01897,1.68251,-0.269847,1.34398},
-{0.367608,-1.18096,-0.793604,0.225597,-1.46933},
-{2.78323,-1.44366,0.302513,-0.581947,0.664438},
-{1.90105,0.497221,0.102284,0.822388,-0.261319},
-{-0.933907,-0.471725,-0.0232733,0.58765,-0.184327},
-{0.144204,0.855746,-3.07527,0.201719,1.93255},
-{2.62884,-0.248928,-1.31487,-0.0056057,0.212603},
-{-0.379831,-0.705531,0.7224,0.646366,-0.968565},
-{0.142813,1.00255,1.6555,-0.951911,-0.467476},
-{-0.0614304,1.1189,-1.6834,1.39554,-0.180169},
-{0.254685,-0.334372,1.92007,-1.2238,-2.59537},
-{-0.44957,0.698307,0.713511,1.07112,-0.120608},
-{-1.91423,-0.783101,2.45388,-0.619217,0.340919},
-{-0.617196,1.1361,0.057868,-0.225498,-0.232603},
-{1.01345,0.556792,0.311637,-0.259719,0.456758},
-{0.206309,0.0627397,0.203837,-0.0537736,-3.93683},
-{-0.0486324,0.623811,-0.299438,-0.816827,2.12427},
-{1.87226,-0.738473,-2.14884,1.87192,-0.443316},
-{0.558853,-0.270151,0.455833,-0.359485,0.1406},
-{0.365228,-0.232937,0.354605,0.0544514,-0.89841},
-{-0.316966,0.65717,0.0960539,-0.620677,0.609045},
-{-0.654946,0.0752009,-0.96066,0.545351,0.175407},
-{0.657254,1.08245,-0.20363,1.52414,-0.857756},
-{0.563223,-1.68366,0.930438,0.627758,-0.932365},
-{1.47214,-0.227279,-0.0597862,-1.20844,0.499824},
-{-0.801789,1.2829,-0.817963,-0.191834,-1.27485},
-{0.775766,-2.01294,0.576715,-0.571016,1.44615},
-{0.387854,-3.40224,1.19526,1.29251,0.0313001},
-{-1.46059,1.4302,1.03478,0.152466,-0.0199198},
-{-3.06896,2.01041,-0.19494,0.458657,-0.044554},
-{1.68951,-2.0608,-1.1908,1.07823,0.507044},
-{-1.77241,-0.300115,-0.832881,-0.561991,-0.13801},
-{-0.784571,-0.811958,2.34641,-2.23665,1.52917},
-{1.21407,-0.578038,-0.937705,0.885334,-0.134932},
-};
+/* Copyright (C) 2002 Jean-Marc Valin 
+   File: exc_5_256_table.c
+   Codebook for excitation in narrowband CELP mode (12800 bps)
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+   
+   - Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+   
+   - Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+   
+   - Neither the name of the Xiph.org Foundation nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+   
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+
+const signed char exc_5_256_table[1280] = {
+-8,-37,5,-43,5,
+73,61,39,12,-3,
+-61,-32,2,42,30,
+-3,17,-27,9,34,
+20,-1,-5,2,23,
+-7,-46,26,53,-47,
+20,-2,-33,-89,-51,
+-64,27,11,15,-34,
+-5,-56,25,-9,-1,
+-29,1,40,67,-23,
+-16,16,33,19,7,
+14,85,22,-10,-10,
+-12,-7,-1,52,89,
+29,11,-20,-37,-46,
+-15,17,-24,-28,24,
+2,1,0,23,-101,
+23,14,-1,-23,-18,
+9,5,-13,38,1,
+-28,-28,4,27,51,
+-26,34,-40,35,47,
+54,38,-54,-26,-6,
+42,-25,13,-30,-36,
+18,41,-4,-33,23,
+-32,-7,-4,51,-3,
+17,-52,56,-47,36,
+-2,-21,36,10,8,
+-33,31,19,9,-5,
+-40,10,-9,-21,19,
+18,-78,-18,-5,0,
+-26,-36,-47,-51,-44,
+18,40,27,-2,29,
+49,-26,2,32,-54,
+30,-73,54,3,-5,
+36,22,53,10,-1,
+-84,-53,-29,-5,3,
+-44,53,-51,4,22,
+71,-35,-1,33,-5,
+-27,-7,36,17,-23,
+-39,16,-9,-55,-15,
+-20,39,-35,6,-39,
+-14,18,48,-64,-17,
+-15,9,39,81,37,
+-68,37,47,-21,-6,
+-104,13,6,9,-2,
+35,8,-23,18,42,
+45,21,33,-5,-49,
+9,-6,-43,-56,39,
+2,-16,-25,87,1,
+-3,-9,17,-25,-11,
+-9,-1,10,2,-14,
+-14,4,-1,-10,28,
+-23,40,-32,26,-9,
+26,4,-27,-23,3,
+42,-60,1,49,-3,
+27,10,-52,-40,-2,
+18,45,-23,17,-44,
+3,-3,17,-46,52,
+-40,-47,25,75,31,
+-49,53,30,-30,-32,
+-36,38,-6,-15,-16,
+54,-27,-48,3,38,
+-29,-32,-22,-14,-4,
+-23,-13,32,-39,9,
+8,-45,-13,34,-16,
+49,40,32,31,28,
+23,23,32,47,59,
+-68,8,62,44,25,
+-14,-24,-65,-16,36,
+67,-25,-38,-21,4,
+-33,-2,42,5,-63,
+40,11,26,-42,-23,
+-61,79,-31,23,-20,
+10,-32,53,-25,-36,
+10,-26,-5,3,0,
+-71,5,-10,-37,1,
+-24,21,-54,-17,1,
+-29,-25,-15,-27,32,
+68,45,-16,-37,-18,
+-5,1,0,-77,71,
+-6,3,-20,71,-67,
+29,-35,10,-30,19,
+4,16,17,5,0,
+-14,19,2,28,26,
+59,3,2,24,39,
+55,-50,-45,-18,-17,
+33,-35,14,-1,1,
+8,87,-35,-29,0,
+-27,13,-7,23,-13,
+37,-40,50,-35,14,
+19,-7,-14,49,54,
+-5,22,-2,-29,-8,
+-27,38,13,27,48,
+12,-41,-21,-15,28,
+7,-16,-24,-19,-20,
+11,-20,9,2,13,
+23,-20,11,27,-27,
+71,-69,8,2,-6,
+22,12,16,16,9,
+-16,-8,-17,1,25,
+1,40,-37,-33,66,
+94,53,4,-22,-25,
+-41,-42,25,35,-16,
+-15,57,31,-29,-32,
+21,16,-60,45,15,
+-1,7,57,-26,-47,
+-29,11,8,15,19,
+-105,-8,54,27,10,
+-17,6,-12,-1,-10,
+4,0,23,-10,31,
+13,11,10,12,-64,
+23,-3,-8,-19,16,
+52,24,-40,16,10,
+40,5,9,0,-13,
+-7,-21,-8,-6,-7,
+-21,59,16,-53,18,
+-60,11,-47,14,-18,
+25,-13,-24,4,-39,
+16,-28,54,26,-67,
+30,27,-20,-52,20,
+-12,55,12,18,-16,
+39,-14,-6,-26,56,
+-88,-55,12,25,26,
+-37,6,75,0,-34,
+-81,54,-30,1,-7,
+49,-23,-14,21,10,
+-62,-58,-57,-47,-34,
+15,-4,34,-78,31,
+25,-11,7,50,-10,
+42,-63,14,-36,-4,
+57,55,57,53,42,
+-42,-1,15,40,37,
+15,25,-11,6,1,
+31,-2,-6,-1,-7,
+-64,34,28,30,-1,
+3,21,0,-88,-12,
+-56,25,-28,40,8,
+-28,-14,9,12,2,
+-6,-17,22,49,-6,
+-26,14,28,-20,4,
+-12,50,35,40,13,
+-38,-58,-29,17,30,
+22,60,26,-54,-39,
+-12,58,-28,-63,10,
+-21,-8,-12,26,-62,
+6,-10,-11,-22,-6,
+-7,4,1,18,2,
+-70,11,14,4,13,
+19,-24,-34,24,67,
+17,51,-21,13,23,
+54,-30,48,1,-13,
+80,26,-16,-2,13,
+-4,6,-30,29,-24,
+73,-58,30,-27,20,
+-2,-21,41,45,30,
+-27,-3,-5,-18,-20,
+-49,-3,-35,10,42,
+-19,-67,-53,-11,9,
+13,-15,-33,-51,-30,
+15,7,25,-30,4,
+28,-22,-34,54,-29,
+39,-46,20,16,34,
+-4,47,75,1,-44,
+-55,-24,7,-1,9,
+-42,50,-8,-36,41,
+68,0,-4,-10,-23,
+-15,-50,64,36,-9,
+-27,12,25,-38,-47,
+-37,32,-49,51,-36,
+2,-4,69,-26,19,
+7,45,67,46,13,
+-63,46,15,-47,4,
+-41,13,-6,5,-21,
+37,26,-55,-7,33,
+-1,-28,10,-17,-64,
+-14,0,-36,-17,93,
+-3,-9,-66,44,-21,
+3,-12,38,-6,-13,
+-12,19,13,43,-43,
+-10,-12,6,-5,9,
+-49,32,-5,2,4,
+5,15,-16,10,-21,
+8,-62,-8,64,8,
+79,-1,-66,-49,-18,
+5,40,-5,-30,-45,
+1,-6,21,-32,93,
+-18,-30,-21,32,21,
+-18,22,8,5,-41,
+-54,80,22,-10,-7,
+-8,-23,-64,66,56,
+-14,-30,-41,-46,-14,
+-29,-37,27,-14,42,
+-2,-9,-29,34,14,
+33,-14,22,4,10,
+26,26,28,32,23,
+-72,-32,3,0,-14,
+35,-42,-78,-32,6,
+29,-18,-45,-5,7,
+-33,-45,-3,-22,-34,
+8,-8,4,-51,-25,
+-9,59,-78,21,-5,
+-25,-48,66,-15,-17,
+-24,-49,-13,25,-23,
+-64,-6,40,-24,-19,
+-11,57,-33,-8,1,
+10,-52,-54,28,39,
+49,34,-11,-61,-41,
+-43,10,15,-15,51,
+30,15,-51,32,-34,
+-2,-34,14,18,16,
+1,1,-3,-3,1,
+1,-18,6,16,48,
+12,-5,-42,7,36,
+48,7,-20,-10,7,
+12,2,54,39,-38,
+37,54,4,-11,-8,
+-46,-10,5,-10,-34,
+46,-12,29,-37,39,
+36,-11,24,56,17,
+14,20,25,0,-25,
+-28,55,-7,-5,27,
+3,9,-26,-8,6,
+-24,-10,-30,-31,-34,
+18,4,22,21,40,
+-1,-29,-37,-8,-21,
+92,-29,11,-3,11,
+73,23,22,7,4,
+-44,-9,-11,21,-13,
+11,9,-78,-1,47,
+114,-12,-37,-19,-5,
+-11,-22,19,12,-30,
+7,38,45,-21,-8,
+-9,55,-45,56,-21,
+7,17,46,-57,-87,
+-6,27,31,31,7,
+-56,-12,46,21,-5,
+-12,36,3,3,-21,
+43,19,12,-7,9,
+-14,0,-9,-33,-91,
+7,26,3,-11,64,
+83,-31,-46,25,2,
+9,5,2,2,-1,
+20,-17,10,-5,-27,
+-8,20,8,-19,16,
+-21,-13,-31,5,5,
+42,24,9,34,-20,
+28,-61,22,11,-39,
+64,-20,-1,-30,-9,
+-20,24,-25,-24,-29,
+22,-60,6,-5,41,
+-9,-87,14,34,15,
+-57,52,69,15,-3,
+-102,58,16,3,6,
+60,-75,-32,26,7,
+-57,-27,-32,-24,-21,
+-29,-16,62,-46,31,
+30,-27,-15,7,15};