blob: 8c6a89988953248a36e0ac8af53cf6ab7a9af856 [file] [log] [blame]
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <stdlib.h>
namespace android {
const int32_t resampler_filter_coefficients_10042011[] = {
2075076504,
2074870219,
2074269557,
2073262841,
2071862786,
2070051926,
2067849110,
2065243563,
2062248465,
2058846262,
2055055548,
2050866069,
2046291635,
2041315273,
2035955897,
2030204167,
2024074532,
2017550518,
2010651175,
2003368165,
1995716923,
1987682243,
1979283938,
1970514752,
1961390076,
1951894181,
1942045775,
1931837943,
1921286728,
1910377736,
1899130344,
1887538902,
1875619770,
1863358864,
1850775104,
1837863721,
1824641940,
1811097380,
1797249776,
1783095528,
1768651291,
1753903742,
1738870726,
1723548746,
1707955054,
1692078274,
1675937190,
1659529795,
1642873313,
1625956474,
1608797063,
1591393772,
1573764495,
1555899971,
1537818785,
1519520784,
1501022796,
1482314240,
1463411160,
1444313227,
1425037741,
1405576492,
1385946622,
1366149382,
1346201706,
1326095287,
1305845828,
1285455045,
1264940308,
1244295464,
1223536951,
1202667530,
1181703085,
1160635857,
1139479271,
1118235636,
1096921134,
1075530585,
1054078577,
1032568949,
1011017224,
989417949,
967783970,
946119336,
924439752,
902741900,
881039249,
859336703,
837648175,
815968557,
794308053,
772670861,
751070988,
729505896,
707986911,
686519594,
665117063,
643776375,
622506966,
601314359,
580211607,
559197735,
538282662,
517472516,
496778402,
476197491,
455736426,
435400430,
415200497,
395136166,
375215078,
355443561,
335831583,
316378199,
297089183,
277970603,
259032151,
240274557,
221703918,
203326638,
185150446,
167174280,
149401179,
131836509,
114487708,
97355714,
80444376,
63759844,
47308498,
31090767,
15108809,
-631654,
-16124677,
-31368536,
-46360908,
-61095999,
-75569692,
-89781876,
-103732869,
-117417959,
-130833461,
-143977734,
-156850513,
-169446641,
-181763420,
-193799687,
-205556559,
-217029409,
-228216068,
-239114500,
-249725794,
-260045485,
-270072966,
-279807538,
-289252364,
-298404017,
-307262396,
-315825804,
-324097052,
-332072584,
-339753137,
-347137398,
-354229167,
-361025450,
-367527527,
-373733643,
-379647676,
-385266970,
-390594013,
-395628043,
-400374357,
-404831217,
-409001628,
-412884357,
-416484569,
-419800667,
-422836272,
-425590412,
-428068799,
-430270358,
-432199204,
-433854305,
-435241518,
-436360214,
-437215297,
-437806349,
-438139967,
-438216244,
-438040549,
-437612462,
-436938620,
-436019455,
-434860689,
-433462013,
-431830172,
-429966019,
-427875663,
-425559045,
-423023081,
-420269108,
-417303590,
-414126712,
-410745497,
-407161766,
-403382348,
-399407797,
-395245305,
-390897144,
-386370224,
-381665062,
-376788564,
-371743279,
-366536360,
-361168782,
-355647611,
-349975843,
-344160581,
-338202705,
-332108851,
-325882239,
-319530194,
-313054213,
-306461164,
-299754744,
-292942106,
-286024571,
-279008412,
-271897436,
-264698872,
-257414606,
-250051032,
-242612307,
-235105276,
-227531464,
-219896432,
-212204319,
-204462036,
-196671840,
-188839540,
-180969700,
-173068854,
-165138974,
-157185076,
-149211664,
-141225186,
-133228184,
-125225726,
-117222535,
-109224429,
-101233397,
-93253442,
-85289050,
-77345947,
-69426846,
-61535955,
-53678071,
-45858404,
-38079310,
-30344121,
-22657427,
-15024209,
-7447312,
69952,
7522929,
14907403,
22221174,
29462063,
36625813,
43708432,
50707112,
57619541,
64441301,
71168979,
77800149,
84333341,
90764454,
97090405,
103308422,
109417126,
115412500,
121292248,
127054242,
132698149,
138220442,
143619140,
148891701,
154037743,
159053739,
163938275,
168689170,
173306749,
177787867,
182131495,
186335286,
190399716,
194321853,
198101380,
201736519,
205228586,
208575166,
211776310,
214830056,
217737773,
220497194,
223108861,
225571114,
227885824,
230051117,
232067922,
233934597,
235653195,
237222146,
238642925,
239914316,
241038916,
242015623,
242846277,
243529706,
244068632,
244462216,
244712654,
244818983,
244784181,
244607765,
244292268,
243836913,
243244874,
242516010,
241653201,
240655918,
239527557,
238268354,
236881508,
235366743,
233727638,
231964766,
230081521,
228077731,
225956985,
223720128,
221370808,
218909157,
216338938,
213661333,
210880096,
207995414,
205010946,
201928111,
198750891,
195479864,
192118892,
188669741,
185136417,
181519490,
177822602,
174047687,
170198894,
166277172,
162286302,
158228508,
154107834,
149925117,
145683777,
141386129,
137036351,
132635752,
128187958,
123695608,
119162747,
114590586,
109982363,
105340765,
100669861,
95971242,
91248228,
86503703,
81741443,
76962776,
72170457,
67367307,
62557108,
57741653,
52923856,
48106777,
43293939,
38486954,
33688240,
28900789,
24128036,
19371931,
14634917,
9920080,
5230446,
567618,
-4066612,
-8669336,
-13237622,
-17769457,
-22262939,
-26715017,
-31123091,
-35485370,
-39800471,
-44065504,
-48278050,
-52436071,
-56538223,
-60581634,
-64564356,
-68484740,
-72342096,
-76133828,
-79858170,
-83513191,
-87098163,
-90610469,
-94048704,
-97411174,
-100697628,
-103905676,
-107034151,
-110081227,
-113046738,
-115928406,
-118725517,
-121436605,
-124062060,
-126599916,
-129049689,
-131409767,
-133680567,
-135860199,
-137948517,
-139944122,
-141847799,
-143657917,
-145374591,
-146996418,
-148524310,
-149956828,
-151294475,
-152536152,
-153683178,
-154734431,
-155690674,
-156550825,
-157316298,
-157986149,
-158561410,
-159041176,
-159427086,
-159718451,
-159916548,
-160020582,
-160032332,
-159951337,
-159779143,
-159515147,
-159161329,
-158717499,
-158185432,
-157564678,
-156857347,
-156063474,
-155185008,
-154221601,
-153175426,
-152046727,
-150837654,
-149548057,
-148180246,
-146734704,
-145213706,
-143617181,
-141947434,
-140205146,
-138392776,
-136510514,
-134560819,
-132544622,
-130464445,
-128320507,
-126115178,
-123849532,
-121526221,
-119145720,
-116710510,
-114221879,
-111682456,
-109092675,
-106454825,
-103770291,
-101041818,
-98270160,
-95457755,
-92606223,
-89718259,
-86794577,
-83837395,
-80848397,
-77830331,
-74784179,
-71712237,
-68616354,
-65499123,
-62361390,
-59205117,
-56032152,
-52845129,
-49645224,
-46434530,
-43215084,
-39989380,
-36758496,
-33524217,
-30288565,
-27054001,
-23821849,
-20593926,
-17372347,
-14159320,
-10955954,
-7763647,
-4584416,
-1420431,
1726908,
4856115,
7965053,
11051765,
14114989,
17153587,
20165512,
23148908,
26102328,
29024647,
31913805,
34768253,
37586799,
40368755,
43112232,
45815788,
48478013,
51098183,
53674369,
56205373,
58689945,
61127693,
63516834,
65856322,
68144797,
70381920,
72565965,
74696201,
76771518,
78791971,
80756044,
82663155,
84512076,
86302872,
88034067,
89705316,
91315544,
92865092,
94352657,
95778072,
97140241,
98439585,
99674922,
100846363,
101953029,
102995643,
103973242,
104886114,
105733366,
106515783,
107232507,
107884029,
108469586,
108990146,
109445031,
109834907,
110159075,
110418598,
110612956,
110743021,
110808247,
110809873,
110747573,
110622392,
110433872,
110183341,
109870630,
109496925,
109061853,
108566821,
108011814,
107398172,
106725651,
105995758,
105208649,
104365776,
103466973,
102513780,
101506507,
100446746,
99334505,
98171433,
96958015,
95695913,
94385172,
93027406,
91623219,
90174378,
88681103,
87145094,
85567114,
83948941,
82290788,
80594255,
78860190,
77090470,
75285527,
73447070,
71576122,
69674546,
67742761,
65782346,
63794384,
61780793,
59742181,
57680191,
55596034,
53491542,
51367245,
49224577,
47064766,
44889688,
42700109,
40497558,
38283410,
36059459,
33826411,
31585598,
29338397,
27086596,
24831081,
22573215,
20314456,
18056430,
15799888,
13545910,
11295904,
9051483,
6813612,
4583444,
2362482,
152205,
-2046514,
-4232760,
-6405078,
-8562051,
-10702661,
-12825994,
-14930573,
-17015184,
-19078982,
-21121361,
-23140947,
-25136591,
-27107282,
-29052375,
-30970456,
-32860543,
-34721731,
-36553615,
-38354874,
-40124623,
-41861868,
-43566233,
-45236425,
-46871781,
-48471484,
-50035443,
-51562506,
-53052109,
-54503334,
-55916090,
-57289239,
-58622387,
-59914726,
-61166369,
-62376298,
-63544241,
-64669360,
-65751822,
-66790682,
-67785875,
-68736719,
-69643614,
-70505769,
-71323237,
-72095315,
-72822435,
-73503872,
-74139832,
-74729705,
-75274073,
-75772337,
-76224828,
-76630970,
-76991410,
-77305656,
-77574197,
-77796578,
-77973591,
-78104888,
-78191082,
-78231765,
-78227787,
-78178906,
-78085845,
-77948266,
-77767093,
-77542200,
-77274423,
-76963506,
-76610446,
-76215234,
-75778805,
-75300971,
-74782775,
-74224327,
-73626669,
-72989720,
-72314602,
-71601546,
-70851655,
-70064886,
-69242354,
-68384382,
-67492158,
-66565755,
-65606354,
-64614392,
-63591082,
-62536507,
-61451798,
-60337466,
-59194800,
-58024034,
-56826376,
-55602460,
-54353584,
-53079977,
-51782773,
-50462662,
-49120984,
-47758105,
-46375208,
-44973078,
-43553013,
-42115335,
-40661095,
-39191102,
-37706696,
-36208364,
-34697230,
-33174211,
-31640600,
-30096851,
-28543956,
-26982847,
-25414822,
-23840464,
-22260795,
-20676812,
-19089709,
-17499984,
-15908468,
-14316132,
-12724175,
-11133249,
-9544240,
-7958198,
-6376234,
-4798939,
-3227038,
-1661555,
-103565,
1446230,
2987101,
4517998,
6037984,
7546475,
9042956,
10526443,
11996036,
13451023,
14890857,
16314514,
17721207,
19110300,
20481414,
21833586,
23166092,
24478220,
25769611,
27039309,
28286749,
29511342,
30712939,
31890678,
33044057,
34172405,
35275563,
36352672,
37403349,
38427003,
39423626,
40392440,
41333144,
42245116,
43128383,
43982211,
44806449,
45600591,
46364840,
47098569,
47801711,
48473727,
49114838,
49724455,
50302623,
50848874,
51363545,
51846135,
52296779,
52715020,
53101240,
53455010,
53776585,
54065600,
54322557,
54547131,
54739663,
54899810,
55028111,
55124307,
55188827,
55221380,
55222572,
55192228,
55130859,
55038225,
54914980,
54761033,
54576974,
54362622,
54118682,
53845150,
53542695,
53211202,
52851427,
52463450,
52047991,
51604968,
51135146,
50638673,
50116337,
49568129,
48994861,
48396765,
47774658,
47128548,
46459228,
45766990,
45052710,
44316493,
43559189,
42781174,
41983339,
41165794,
40329347,
39474419,
38601939,
37712110,
36805777,
35883432,
34945984,
33993615,
33027089,
32046926,
31054070,
30048815,
29031979,
28004160,
26966277,
25918608,
24861885,
23796723,
22724052,
21644243,
20558050,
19466141,
18369382,
17268088,
16162890,
15054445,
13943628,
12830865,
11716830,
10602238,
9487911,
8374236,
7261776,
6151235,
5043417,
3938790,
2837924,
1741550,
650377,
-435204,
-1514773,
-2587638,
-3653109,
-4710700,
-5759963,
-6800171,
-7830712,
-8851149,
-9861153,
-10860035,
-11847221,
-12822216,
-13784698,
-14733981,
-15669597,
-16591140,
-17498438,
-18390866,
-19267997,
-20129356,
-20974762,
-21803581,
-22615471,
-23410012,
-24187134,
-24946258,
-25687095,
-26409195,
-27112509,
-27796483,
-28460937,
-29105505,
-29730269,
-30334749,
-30918819,
-31482081,
-32024624,
-32545988,
-33046126,
-33524693,
-33981867,
-34417247,
-34830850,
-35222329,
-35591891,
-35939181,
-36264307,
-36566990,
-36847536,
-37105661,
-37341533,
-37554878,
-37746021,
-37914721,
-38061211,
-38185256,
-38287239,
-38366977,
-38424762,
-38460388,
-38474270,
-38466280,
-38436775,
-38385595,
-38313205,
-38219543,
-38105021,
-37969515,
-37813522,
-37637035,
-37440507,
-37223843,
-36987554,
-36731686,
-36456739,
-36162666,
-35850010,
-35518873,
-35169788,
-34802724,
-34418227,
-34016443,
-33597949,
-33162777,
-32711507,
-32244345,
-31761885,
-31264164,
-30751745,
-30224868,
-29684158,
-29129713,
-28562123,
-27981679,
-27389002,
-26784181,
-26167762,
-25540059,
-24901722,
-24252917,
-23594223,
-22926012,
-22248923,
-21563113,
-20869110,
-20167303,
-19458342,
-18742448,
-18020168,
-17291929,
-16558346,
-15819604,
-15076174,
-14328481,
-13577150,
-12822445,
-12064865,
-11304882,
-10543086,
-9779720,
-9015209,
-8250021,
-7484741,
-6719667,
-5955234,
-5191932,
-4430285,
-3670541,
-2913036,
-2158236,
-1406657,
-658617,
85527,
825280,
1560174,
2289926,
3014260,
3732701,
4444806,
5150245,
5848747,
6539832,
7223129,
7898368,
8565383,
9223733,
9873071,
10513075,
11143565,
11764092,
12374365,
12974099,
13563194,
14141234,
14707964,
15263070,
15806466,
16337748,
16856735,
17363175,
17857079,
18338088,
18806059,
19260708,
19702046,
20129723,
20543652,
20943584,
21329597,
21701383,
22058894,
22401875,
22730421,
23044252,
23343385,
23627618,
23897120,
24151661,
24391299,
24615824,
24825417,
25019868,
25199285,
25363488,
25512702,
25646760,
25765809,
25869680,
25958622,
26032502,
26091517,
26135536,
26164850,
26179375,
26179344,
26164644,
26135585,
26092113,
26034498,
25962646,
25876887,
25777203,
25663899,
25536906,
25396578,
25242934,
25076305,
24896644,
24704311,
24499364,
24282163,
24052697,
23811348,
23558211,
23293664,
23017702,
22730703,
22432787,
22124357,
21805445,
21476448,
21137523,
20789074,
20431134,
20064079,
19688086,
19303582,
18910646,
18509679,
18100894,
17684716,
17261223,
16830785,
16393630,
15950197,
15500602,
15045231,
14584340,
14118348,
13647355,
13171699,
12691641,
12207609,
11719754,
11228437,
10733948,
10236700,
9736830,
9234652,
8730459,
8224662,
7717439,
7209110,
6699986,
6190443,
5680626,
5170792,
4661242,
4152348,
3644304,
3137385,
2631912,
2128229,
1626510,
1126973,
629931,
135715,
-355469,
-843402,
-1327763,
-1808270,
-2284755,
-2757069,
-3224916,
-3688026,
-4146190,
-4599250,
-5046898,
-5488901,
-5925074,
-6355314,
-6779333,
-7196918,
-7607862,
-8012069,
-8409254,
-8799255,
-9181907,
-9557181,
-9924822,
-10284691,
-10636595,
-10980501,
-11316157,
-11643459,
-11962240,
-12272514,
-12574056,
-12866786,
-13150528,
-13425307,
-13690910,
-13947306,
-14194356,
-14432139,
-14660477,
-14879363,
-15088645,
-15288408,
-15478483,
-15658898,
-15829522,
-15990474,
-16141613,
-16282992,
-16414484,
-16536222,
-16648083,
-16750160,
-16842353,
-16924831,
-16997506,
-17060493,
-17113697,
-17157297,
-17191222,
-17215613,
-17230389,
-17235750,
-17231648,
-17218249,
-17195484,
-17163567,
-17122473,
-17072392,
-17013271,
-16945340,
-16868599,
-16783258,
-16689284,
-16586915,
-16476178,
-16357294,
-16230239,
-16095254,
-15952382,
-15801866,
-15643700,
-15478137,
-15305245,
-15125274,
-14938221,
-14744336,
-14543701,
-14336583,
-14123005,
-13903232,
-13677369,
-13445685,
-13208205,
-12965179,
-12716724,
-12463120,
-12204418,
-11940874,
-11672628,
-11399952,
-11122887,
-10841668,
-10556438,
-10267479,
-9974863,
-9678839,
-9379572,
-9077334,
-8772193,
-8464370,
-8154033,
-7841459,
-7526740,
-7210102,
-6891729,
-6571875,
-6250617,
-5928143,
-5604631,
-5280339,
-4955374,
-4629936,
-4304221,
-3978468,
-3652773,
-3327303,
-3002250,
-2677848,
-2354215,
-2031520,
-1709962,
-1389747,
-1070968,
-753751,
-438281,
-124760,
186691,
495939,
802786,
1107056,
1408639,
1707439,
2003270,
2295964,
2585396,
2871472,
3154006,
3432861,
3707940,
3979193,
4246453,
4509594,
4768498,
5023110,
5273258,
5518843,
5759760,
5995988,
6227371,
6453823,
6675229,
6891575,
7102708,
7308575,
7509086,
7704267,
7893987,
8078205,
8256820,
8429855,
8597183,
8758786,
8914577,
9064605,
9208760,
9347039,
9479353,
9605758,
9726154,
9840566,
9948924,
10051316,
10147660,
10237999,
10322257,
10400525,
10472731,
10538934,
10599070,
10653248,
10701410,
10743630,
10779849,
10810183,
10834587,
10853155,
10865840,
10872775,
10873933,
10869421,
10859197,
10843400,
10822013,
10795156,
10762793,
10725068,
10681980,
10633658,
10580078,
10521391,
10457608,
10388869,
10315156,
10236621,
10153290,
10065313,
9972683,
9875561,
9773986,
9668111,
9557933,
9443609,
9325184,
9202823,
9076535,
8946481,
8812721,
8675419,
8534581,
8390359,
8242821,
8092134,
7938325,
7781551,
7621894,
7459519,
7294449,
7126832,
6956750,
6784374,
6609741,
6433003,
6254252,
6073651,
5891227,
5707114,
5521403,
5334259,
5145731,
4955957,
4765041,
4573140,
4380296,
4186630,
3992245,
3797298,
3601843,
3406004,
3209891,
3013645,
2817308,
2620977,
2424757,
2228787,
2033128,
1837884,
1643168,
1449107,
1255755,
1063192,
871528,
680885,
491329,
302942,
115833,
-69891,
-254183,
-436990,
-618208,
-797740,
-975518,
-1151487,
-1325539,
-1497588,
-1667578,
-1835474,
-2001175,
-2164603,
-2325693,
-2484411,
-2640658,
-2794375,
-2945514,
-3094068,
-3239949,
-3383105,
-3523475,
-3661049,
-3795739,
-3927507,
-4056301,
-4182128,
-4304909,
-4424616,
-4541189,
-4654642,
-4764898,
-4871946,
-4975742,
-5076322,
-5173620,
-5267633,
-5358312,
-5445689,
-5529702,
-5610360,
-5687620,
-5761528,
-5832032,
-5899149,
-5962833,
-6023137,
-6080011,
-6133489,
-6183535,
-6230216,
-6273495,
-6313411,
-6349927,
-6383111,
-6412929,
-6439430,
-6462582,
-6482459,
-6499037,
-6512371,
-6522432,
-6529297,
-6532949,
-6533453,
-6530785,
-6525030,
-6516181,
-6504306,
-6489387,
-6471510,
-6450672,
-6426949,
-6400323,
-6370884,
-6338633,
-6303653,
-6265930,
-6225556,
-6182542,
-6136972,
-6088835,
-6038222,
-5985148,
-5929704,
-5871883,
-5811781,
-5749418,
-5684887,
-5618180,
-5549390,
-5478541,
-5405727,
-5330951,
-5254303,
-5175817,
-5095584,
-5013604,
-4929960,
-4844689,
-4757882,
-4669550,
-4579780,
-4488613,
-4396142,
-4302370,
-4207380,
-4111213,
-4013962,
-3915640,
-3816329,
-3716076,
-3614967,
-3513009,
-3410272,
-3306801,
-3202684,
-3097938,
-2992636,
-2886829,
-2780600,
-2673962,
-2566977,
-2459696,
-2352199,
-2244507,
-2136684,
-2028782,
-1920874,
-1812971,
-1705121,
-1597373,
-1489799,
-1382421,
-1275290,
-1168459,
-1061994,
-955913,
-850253,
-745067,
-640414,
-536322,
-432828,
-329984,
-227841,
-126414,
-25726,
74177,
173245,
271455,
368780,
465170,
560585,
655003,
748412,
840765,
932024,
1022164,
1111173,
1199003,
1285630,
1371035,
1455222,
1538151,
1619799,
1700140,
1779174,
1856860,
1933182,
2008118,
2081679,
2153827,
2224550,
2293824,
2361659,
2428020,
2492903,
2556292,
2618211,
2678631,
2737549,
2794945,
2850839,
2905201,
2958036,
3009325,
3059097,
3107325,
3154018,
3199156,
3242768,
3284829,
3325357,
3364336,
3401806,
3437747,
3472179,
3505082,
3536494,
3566396,
3594812,
3621723,
3647174,
3671149,
3693673,
3714729,
3734362,
3752557,
3769346,
3784715,
3798715,
3811334,
3822606,
3832516,
3841112,
3848384,
3854368,
3859049,
3862479,
3864649,
3865599,
3865314,
3863845,
3861188,
3857383,
3852418,
3846346,
3839164,
3830915,
3821584,
3811225,
3799836,
3787460,
3774084,
3759760,
3744487,
3728310,
3711218,
3693263,
3674447,
3654814,
3634352,
3613113,
3591098,
3568353,
3544866,
3520689,
3495824,
3470316,
3444153,
3417383,
3390012,
3362082,
3333586,
3304570,
3275042,
3245044,
3214563,
3183645,
3152295,
3120556,
3088416,
3055921,
3023078,
2989927,
2956457,
2922708,
2888688,
2854437,
2819945,
2785255,
2750373,
2715338,
2680135,
2644802,
2609344,
2573798,
2538153,
2502446,
2466684,
2430901,
2395085,
2359269,
2323458,
2287688,
2251947,
2216270,
2180661,
2145152,
2109728,
2074417,
2039222,
2004173,
1969258,
1934504,
1899918,
1865524,
1831311,
1797303,
1763503,
1729936,
1696594,
1663499,
1630656,
1598085,
1565774,
1533740,
1501984,
1470527,
1439358,
1408495,
1377941,
1347715,
1317803,
1288221,
1258970,
1230067,
1201504,
1173294,
1145440,
1117954,
1090824,
1064057,
1037655,
1011629,
985969,
960683,
935774,
911250,
887101,
863334,
839947,
816951,
794337,
772110,
750271,
728827,
707764,
687085,
666787,
646876,
627343,
608189,
589415,
571023,
553003,
535356,
518081,
501181,
484646,
468479,
452677,
437242,
422161,
407434,
393055,
379026,
365337,
351987,
338974,
326296,
313944,
301916,
290208,
278820,
267744,
256978,
246518,
236362,
226500,
216928,
207640,
198636,
189906,
181447,
173255,
165327,
157655,
150236,
143064,
136137,
129449,
122995,
116772,
110776,
104999,
99436,
94081,
88932,
83981,
79224,
74658,
70277,
66077,
62052,
58198,
54512,
50989,
47624,
44413,
41353,
38438,
35663,
33023,
30515,
28134,
25876,
23736,
21712,
19799,
17992,
16290,
14687,
13182,
11769,
10446,
9210,
8057,
6982,
5983,
5056,
4198,
3407,
2678,
2010,
1400,
844,
341,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
};
}