source: trunk/FACT++/sofa/src/xy06.c@ 18346

Last change on this file since 18346 was 18346, checked in by tbretz, 9 years ago
File size: 130.5 KB
Line 
1#include "sofa.h"
2
3void iauXy06(double date1, double date2, double *x, double *y)
4/*
5** - - - - - - - -
6** i a u X y 0 6
7** - - - - - - - -
8**
9** X,Y coordinates of celestial intermediate pole from series based
10** on IAU 2006 precession and IAU 2000A nutation.
11**
12** This function is part of the International Astronomical Union's
13** SOFA (Standards Of Fundamental Astronomy) software collection.
14**
15** Status: canonical model.
16**
17** Given:
18** date1,date2 double TT as a 2-part Julian Date (Note 1)
19**
20** Returned:
21** x,y double CIP X,Y coordinates (Note 2)
22**
23** Notes:
24**
25** 1) The TT date date1+date2 is a Julian Date, apportioned in any
26** convenient way between the two arguments. For example,
27** JD(TT)=2450123.7 could be expressed in any of these ways,
28** among others:
29**
30** date1 date2
31**
32** 2450123.7 0.0 (JD method)
33** 2451545.0 -1421.3 (J2000 method)
34** 2400000.5 50123.2 (MJD method)
35** 2450123.5 0.2 (date & time method)
36**
37** The JD method is the most natural and convenient to use in
38** cases where the loss of several decimal digits of resolution
39** is acceptable. The J2000 method is best matched to the way
40** the argument is handled internally and will deliver the
41** optimum resolution. The MJD method and the date & time methods
42** are both good compromises between resolution and convenience.
43**
44** 2) The X,Y coordinates are those of the unit vector towards the
45** celestial intermediate pole. They represent the combined effects
46** of frame bias, precession and nutation.
47**
48** 3) The fundamental arguments used are as adopted in IERS Conventions
49** (2003) and are from Simon et al. (1994) and Souchay et al.
50** (1999).
51**
52** 4) This is an alternative to the angles-based method, via the SOFA
53** function iauFw2xy and as used in iauXys06a for example. The two
54** methods agree at the 1 microarcsecond level (at present), a
55** negligible amount compared with the intrinsic accuracy of the
56** models. However, it would be unwise to mix the two methods
57** (angles-based and series-based) in a single application.
58**
59** Called:
60** iauFal03 mean anomaly of the Moon
61** iauFalp03 mean anomaly of the Sun
62** iauFaf03 mean argument of the latitude of the Moon
63** iauFad03 mean elongation of the Moon from the Sun
64** iauFaom03 mean longitude of the Moon's ascending node
65** iauFame03 mean longitude of Mercury
66** iauFave03 mean longitude of Venus
67** iauFae03 mean longitude of Earth
68** iauFama03 mean longitude of Mars
69** iauFaju03 mean longitude of Jupiter
70** iauFasa03 mean longitude of Saturn
71** iauFaur03 mean longitude of Uranus
72** iauFane03 mean longitude of Neptune
73** iauFapa03 general accumulated precession in longitude
74**
75** References:
76**
77** Capitaine, N., Wallace, P.T. & Chapront, J., 2003,
78** Astron.Astrophys., 412, 567
79**
80** Capitaine, N. & Wallace, P.T., 2006, Astron.Astrophys. 450, 855
81**
82** McCarthy, D. D., Petit, G. (eds.), 2004, IERS Conventions (2003),
83** IERS Technical Note No. 32, BKG
84**
85** Simon, J.L., Bretagnon, P., Chapront, J., Chapront-Touze, M.,
86** Francou, G. & Laskar, J., Astron.Astrophys., 1994, 282, 663
87**
88** Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M., 1999,
89** Astron.Astrophys.Supp.Ser. 135, 111
90**
91** Wallace, P.T. & Capitaine, N., 2006, Astron.Astrophys. 459, 981
92**
93** This revision: 2013 August 21
94**
95** SOFA release 2015-02-09
96**
97** Copyright (C) 2015 IAU SOFA Board. See notes at end.
98*/
99{
100
101/* Maximum power of T in the polynomials for X and Y */
102 enum { MAXPT = 5 };
103
104/* Polynomial coefficients (arcsec, X then Y). */
105 static const double xyp[2][MAXPT+1] = {
106
107 { -0.016617,
108 2004.191898,
109 -0.4297829,
110 -0.19861834,
111 0.000007578,
112 0.0000059285
113 },
114 { -0.006951,
115 -0.025896,
116 -22.4072747,
117 0.00190059,
118 0.001112526,
119 0.0000001358
120 }
121 };
122
123/* Fundamental-argument multipliers: luni-solar terms */
124 static const int mfals[][5] = {
125
126 /* 1-10 */
127 { 0, 0, 0, 0, 1 },
128 { 0, 0, 2, -2, 2 },
129 { 0, 0, 2, 0, 2 },
130 { 0, 0, 0, 0, 2 },
131 { 0, 1, 0, 0, 0 },
132 { 0, 1, 2, -2, 2 },
133 { 1, 0, 0, 0, 0 },
134 { 0, 0, 2, 0, 1 },
135 { 1, 0, 2, 0, 2 },
136 { 0, 1, -2, 2, -2 },
137
138 /* 11-20 */
139 { 0, 0, 2, -2, 1 },
140 { 1, 0, -2, 0, -2 },
141 { 1, 0, 0, -2, 0 },
142 { 1, 0, 0, 0, 1 },
143 { 1, 0, 0, 0, -1 },
144 { 1, 0, -2, -2, -2 },
145 { 1, 0, 2, 0, 1 },
146 { 2, 0, -2, 0, -1 },
147 { 0, 0, 0, 2, 0 },
148 { 0, 0, 2, 2, 2 },
149
150 /* 21-30 */
151 { 2, 0, 0, -2, 0 },
152 { 0, 2, -2, 2, -2 },
153 { 2, 0, 2, 0, 2 },
154 { 1, 0, 2, -2, 2 },
155 { 1, 0, -2, 0, -1 },
156 { 2, 0, 0, 0, 0 },
157 { 0, 0, 2, 0, 0 },
158 { 0, 1, 0, 0, 1 },
159 { 1, 0, 0, -2, -1 },
160 { 0, 2, 2, -2, 2 },
161
162 /* 31-40 */
163 { 0, 0, 2, -2, 0 },
164 { 1, 0, 0, -2, 1 },
165 { 0, 1, 0, 0, -1 },
166 { 0, 2, 0, 0, 0 },
167 { 1, 0, -2, -2, -1 },
168 { 1, 0, 2, 2, 2 },
169 { 0, 1, 2, 0, 2 },
170 { 2, 0, -2, 0, 0 },
171 { 0, 0, 2, 2, 1 },
172 { 0, 1, -2, 0, -2 },
173
174 /* 41-50 */
175 { 0, 0, 0, 2, 1 },
176 { 1, 0, 2, -2, 1 },
177 { 2, 0, 0, -2, -1 },
178 { 2, 0, 2, -2, 2 },
179 { 2, 0, 2, 0, 1 },
180 { 0, 0, 0, 2, -1 },
181 { 0, 1, -2, 2, -1 },
182 { 1, 1, 0, -2, 0 },
183 { 2, 0, 0, -2, 1 },
184 { 1, 0, 0, 2, 0 },
185
186 /* 51-60 */
187 { 0, 1, 2, -2, 1 },
188 { 1, -1, 0, 0, 0 },
189 { 0, 1, -1, 1, -1 },
190 { 2, 0, -2, 0, -2 },
191 { 0, 1, 0, -2, 0 },
192 { 1, 0, 0, -1, 0 },
193 { 3, 0, 2, 0, 2 },
194 { 0, 0, 0, 1, 0 },
195 { 1, -1, 2, 0, 2 },
196 { 1, 1, -2, -2, -2 },
197
198 /* 61-70 */
199 { 1, 0, -2, 0, 0 },
200 { 2, 0, 0, 0, -1 },
201 { 0, 1, -2, -2, -2 },
202 { 1, 1, 2, 0, 2 },
203 { 2, 0, 0, 0, 1 },
204 { 1, 1, 0, 0, 0 },
205 { 1, 0, -2, 2, -1 },
206 { 1, 0, 2, 0, 0 },
207 { 1, -1, 0, -1, 0 },
208 { 1, 0, 0, 0, 2 },
209
210 /* 71-80 */
211 { 1, 0, -1, 0, -1 },
212 { 0, 0, 2, 1, 2 },
213 { 1, 0, -2, -4, -2 },
214 { 1, -1, 0, -1, -1 },
215 { 1, 0, 2, 2, 1 },
216 { 0, 2, -2, 2, -1 },
217 { 1, 0, 0, 0, -2 },
218 { 2, 0, -2, -2, -2 },
219 { 1, 1, 2, -2, 2 },
220 { 2, 0, -2, -4, -2 },
221
222 /* 81-90 */
223 { 1, 0, -4, 0, -2 },
224 { 2, 0, 2, -2, 1 },
225 { 1, 0, 0, -1, -1 },
226 { 2, 0, 2, 2, 2 },
227 { 3, 0, 0, 0, 0 },
228 { 1, 0, 0, 2, 1 },
229 { 0, 0, 2, -2, -1 },
230 { 3, 0, 2, -2, 2 },
231 { 0, 0, 4, -2, 2 },
232 { 1, 0, 0, -4, 0 },
233
234 /* 91-100 */
235 { 0, 1, 2, 0, 1 },
236 { 2, 0, 0, -4, 0 },
237 { 1, 1, 0, -2, -1 },
238 { 2, 0, -2, 0, 1 },
239 { 0, 0, 2, 0, -1 },
240 { 0, 1, -2, 0, -1 },
241 { 0, 1, 0, 0, 2 },
242 { 0, 0, 2, -1, 2 },
243 { 0, 0, 2, 4, 2 },
244 { 2, 1, 0, -2, 0 },
245
246 /* 101-110 */
247 { 1, 1, 0, -2, 1 },
248 { 1, -1, 0, -2, 0 },
249 { 1, -1, 0, -1, -2 },
250 { 1, -1, 0, 0, 1 },
251 { 0, 1, -2, 2, 0 },
252 { 0, 1, 0, 0, -2 },
253 { 1, -1, 2, 2, 2 },
254 { 1, 0, 0, 2, -1 },
255 { 1, -1, -2, -2, -2 },
256 { 3, 0, 2, 0, 1 },
257
258 /* 111-120 */
259 { 0, 1, 2, 2, 2 },
260 { 1, 0, 2, -2, 0 },
261 { 1, 1, -2, -2, -1 },
262 { 1, 0, 2, -4, 1 },
263 { 0, 1, -2, -2, -1 },
264 { 2, -1, 2, 0, 2 },
265 { 0, 0, 0, 2, 2 },
266 { 1, -1, 2, 0, 1 },
267 { 1, -1, -2, 0, -2 },
268 { 0, 1, 0, 2, 0 },
269
270 /* 121-130 */
271 { 0, 1, 2, -2, 0 },
272 { 0, 0, 0, 1, 1 },
273 { 1, 0, -2, -2, 0 },
274 { 0, 3, 2, -2, 2 },
275 { 2, 1, 2, 0, 2 },
276 { 1, 1, 0, 0, 1 },
277 { 2, 0, 0, 2, 0 },
278 { 1, 1, 2, 0, 1 },
279 { 1, 0, 0, -2, -2 },
280 { 1, 0, -2, 2, 0 },
281
282 /* 131-140 */
283 { 1, 0, -1, 0, -2 },
284 { 0, 1, 0, -2, 1 },
285 { 0, 1, 0, 1, 0 },
286 { 0, 0, 0, 1, -1 },
287 { 1, 0, -2, 2, -2 },
288 { 1, -1, 0, 0, -1 },
289 { 0, 0, 0, 4, 0 },
290 { 1, -1, 0, 2, 0 },
291 { 1, 0, 2, 1, 2 },
292 { 1, 0, 2, -1, 2 },
293
294 /* 141-150 */
295 { 0, 0, 2, 1, 1 },
296 { 1, 0, 0, -2, 2 },
297 { 1, 0, -2, 0, 1 },
298 { 1, 0, -2, -4, -1 },
299 { 0, 0, 2, 2, 0 },
300 { 1, 1, 2, -2, 1 },
301 { 1, 0, -2, 1, -1 },
302 { 0, 0, 1, 0, 1 },
303 { 2, 0, -2, -2, -1 },
304 { 4, 0, 2, 0, 2 },
305
306 /* 151-160 */
307 { 2, -1, 0, 0, 0 },
308 { 2, 1, 2, -2, 2 },
309 { 0, 1, 2, 1, 2 },
310 { 1, 0, 4, -2, 2 },
311 { 1, 1, 0, 0, -1 },
312 { 2, 0, 2, 0, 0 },
313 { 2, 0, -2, -4, -1 },
314 { 1, 0, -1, 0, 0 },
315 { 1, 0, 0, 1, 0 },
316 { 0, 1, 0, 2, 1 },
317
318 /* 161-170 */
319 { 1, 0, -4, 0, -1 },
320 { 1, 0, 0, -4, -1 },
321 { 2, 0, 2, 2, 1 },
322 { 2, 1, 0, 0, 0 },
323 { 0, 0, 2, -3, 2 },
324 { 1, 2, 0, -2, 0 },
325 { 0, 3, 0, 0, 0 },
326 { 0, 0, 4, 0, 2 },
327 { 0, 0, 2, -4, 1 },
328 { 2, 0, 0, -2, -2 },
329
330 /* 171-180 */
331 { 1, 1, -2, -4, -2 },
332 { 0, 1, 0, -2, -1 },
333 { 0, 0, 0, 4, 1 },
334 { 3, 0, 2, -2, 1 },
335 { 1, 0, 2, 4, 2 },
336 { 1, 1, -2, 0, -2 },
337 { 0, 0, 4, -2, 1 },
338 { 2, -2, 0, -2, 0 },
339 { 2, 1, 0, -2, -1 },
340 { 0, 2, 0, -2, 0 },
341
342 /* 181-190 */
343 { 1, 0, 0, -1, 1 },
344 { 1, 1, 2, 2, 2 },
345 { 3, 0, 0, 0, -1 },
346 { 2, 0, 0, -4, -1 },
347 { 3, 0, 2, 2, 2 },
348 { 0, 0, 2, 4, 1 },
349 { 0, 2, -2, -2, -2 },
350 { 1, -1, 0, -2, -1 },
351 { 0, 0, 2, -1, 1 },
352 { 2, 0, 0, 2, 1 },
353
354 /* 191-200 */
355 { 1, -1, -2, 2, -1 },
356 { 0, 0, 0, 2, -2 },
357 { 2, 0, 0, -4, 1 },
358 { 1, 0, 0, -4, 1 },
359 { 2, 0, 2, -4, 1 },
360 { 4, 0, 2, -2, 2 },
361 { 2, 1, -2, 0, -1 },
362 { 2, 1, -2, -4, -2 },
363 { 3, 0, 0, -4, 0 },
364 { 1, -1, 2, 2, 1 },
365
366 /* 201-210 */
367 { 1, -1, -2, 0, -1 },
368 { 0, 2, 0, 0, 1 },
369 { 1, 2, -2, -2, -2 },
370 { 1, 1, 0, -4, 0 },
371 { 2, 0, 0, -2, 2 },
372 { 0, 2, 2, -2, 1 },
373 { 1, 0, 2, 0, -1 },
374 { 2, 1, 0, -2, 1 },
375 { 2, -1, -2, 0, -1 },
376 { 1, -1, -2, -2, -1 },
377
378 /* 211-220 */
379 { 0, 1, -2, 1, -2 },
380 { 1, 0, -4, 2, -2 },
381 { 0, 1, 2, 2, 1 },
382 { 3, 0, 0, 0, 1 },
383 { 2, -1, 2, 2, 2 },
384 { 0, 1, -2, -4, -2 },
385 { 1, 0, -2, -3, -2 },
386 { 2, 0, 0, 0, 2 },
387 { 1, -1, 0, -2, -2 },
388 { 2, 0, -2, 2, -1 },
389
390 /* 221-230 */
391 { 0, 2, -2, 0, -2 },
392 { 3, 0, -2, 0, -1 },
393 { 2, -1, 2, 0, 1 },
394 { 1, 0, -2, -1, -2 },
395 { 0, 0, 2, 0, 3 },
396 { 2, 0, -4, 0, -2 },
397 { 2, 1, 0, -4, 0 },
398 { 1, 1, -2, 1, -1 },
399 { 0, 2, 2, 0, 2 },
400 { 1, -1, 2, -2, 2 },
401
402 /* 231-240 */
403 { 1, -1, 0, -2, 1 },
404 { 2, 1, 2, 0, 1 },
405 { 1, 0, 2, -4, 2 },
406 { 1, 1, -2, 0, -1 },
407 { 1, 1, 0, 2, 0 },
408 { 1, 0, 0, -3, 0 },
409 { 2, 0, 2, -1, 2 },
410 { 0, 2, 0, 0, -1 },
411 { 2, -1, 0, -2, 0 },
412 { 4, 0, 0, 0, 0 },
413
414 /* 241-250 */
415 { 2, 1, -2, -2, -2 },
416 { 0, 2, -2, 2, 0 },
417 { 1, 0, 2, 1, 1 },
418 { 1, 0, -1, 0, -3 },
419 { 3, -1, 2, 0, 2 },
420 { 2, 0, 2, -2, 0 },
421 { 1, -2, 0, 0, 0 },
422 { 2, 0, 0, 0, -2 },
423 { 1, 0, 0, 4, 0 },
424 { 0, 1, 0, 1, 1 },
425
426 /* 251-260 */
427 { 1, 0, 2, 2, 0 },
428 { 0, 1, 0, 2, -1 },
429 { 0, 1, 0, 1, -1 },
430 { 0, 0, 2, -2, 3 },
431 { 3, 1, 2, 0, 2 },
432 { 1, 1, 2, 1, 2 },
433 { 1, 1, -2, 2, -1 },
434 { 2, -1, 2, -2, 2 },
435 { 1, -2, 2, 0, 2 },
436 { 1, 0, 2, -4, 0 },
437
438 /* 261-270 */
439 { 0, 0, 1, 0, 0 },
440 { 1, 0, 2, -3, 1 },
441 { 1, -2, 0, -2, 0 },
442 { 2, 0, 0, 2, -1 },
443 { 1, 1, 2, -4, 1 },
444 { 4, 0, 2, 0, 1 },
445 { 0, 1, 2, 1, 1 },
446 { 1, 2, 2, -2, 2 },
447 { 2, 0, 2, 1, 2 },
448 { 2, 1, 2, -2, 1 },
449
450 /* 271-280 */
451 { 1, 0, 2, -1, 1 },
452 { 1, 0, 4, -2, 1 },
453 { 1, -1, 2, -2, 1 },
454 { 0, 1, 0, -4, 0 },
455 { 3, 0, -2, -2, -2 },
456 { 0, 0, 4, -4, 2 },
457 { 2, 0, -4, -2, -2 },
458 { 2, -2, 0, -2, -1 },
459 { 1, 0, 2, -2, -1 },
460 { 2, 0, -2, -6, -2 },
461
462 /* 281-290 */
463 { 1, 0, -2, 1, -2 },
464 { 1, 0, -2, 2, 1 },
465 { 1, -1, 0, 2, -1 },
466 { 1, 0, -2, 1, 0 },
467 { 2, -1, 0, -2, 1 },
468 { 1, -1, 0, 2, 1 },
469 { 2, 0, -2, -2, 0 },
470 { 1, 0, 2, -3, 2 },
471 { 0, 0, 0, 4, -1 },
472 { 2, -1, 0, 0, 1 },
473
474 /* 291-300 */
475 { 2, 0, 4, -2, 2 },
476 { 0, 0, 2, 3, 2 },
477 { 0, 1, 4, -2, 2 },
478 { 0, 1, -2, 2, 1 },
479 { 1, 1, 0, 2, 1 },
480 { 1, 0, 0, 4, 1 },
481 { 0, 0, 4, 0, 1 },
482 { 2, 0, 0, -3, 0 },
483 { 1, 0, 0, -1, -2 },
484 { 1, -2, -2, -2, -2 },
485
486 /* 301-310 */
487 { 3, 0, 0, 2, 0 },
488 { 2, 0, 2, -4, 2 },
489 { 1, 1, -2, -4, -1 },
490 { 1, 0, -2, -6, -2 },
491 { 2, -1, 0, 0, -1 },
492 { 2, -1, 0, 2, 0 },
493 { 0, 1, 2, -2, -1 },
494 { 1, 1, 0, 1, 0 },
495 { 1, 2, 0, -2, -1 },
496 { 1, 0, 0, 1, -1 },
497
498 /* 311-320 */
499 { 0, 0, 1, 0, 2 },
500 { 3, 1, 2, -2, 2 },
501 { 1, 0, -4, -2, -2 },
502 { 1, 0, 2, 4, 1 },
503 { 1, -2, 2, 2, 2 },
504 { 1, -1, -2, -4, -2 },
505 { 0, 0, 2, -4, 2 },
506 { 0, 0, 2, -3, 1 },
507 { 2, 1, -2, 0, 0 },
508 { 3, 0, -2, -2, -1 },
509
510 /* 321-330 */
511 { 2, 0, 2, 4, 2 },
512 { 0, 0, 0, 0, 3 },
513 { 2, -1, -2, -2, -2 },
514 { 2, 0, 0, -1, 0 },
515 { 3, 0, 2, -4, 2 },
516 { 2, 1, 2, 2, 2 },
517 { 0, 0, 3, 0, 3 },
518 { 1, 1, 2, 2, 1 },
519 { 2, 1, 0, 0, -1 },
520 { 1, 2, 0, -2, 1 },
521
522 /* 331-340 */
523 { 3, 0, 2, 2, 1 },
524 { 1, -1, -2, 2, -2 },
525 { 1, 1, 0, -1, 0 },
526 { 1, 2, 0, 0, 0 },
527 { 1, 0, 4, 0, 2 },
528 { 1, -1, 2, 4, 2 },
529 { 2, 1, 0, 0, 1 },
530 { 1, 0, 0, 2, 2 },
531 { 1, -1, -2, 2, 0 },
532 { 0, 2, -2, -2, -1 },
533
534 /* 341-350 */
535 { 2, 0, -2, 0, 2 },
536 { 5, 0, 2, 0, 2 },
537 { 3, 0, -2, -6, -2 },
538 { 1, -1, 2, -1, 2 },
539 { 3, 0, 0, -4, -1 },
540 { 1, 0, 0, 1, 1 },
541 { 1, 0, -4, 2, -1 },
542 { 0, 1, 2, -4, 1 },
543 { 1, 2, 2, 0, 2 },
544 { 0, 1, 0, -2, -2 },
545
546 /* 351-360 */
547 { 0, 0, 2, -1, 0 },
548 { 1, 0, 1, 0, 1 },
549 { 0, 2, 0, -2, 1 },
550 { 3, 0, 2, 0, 0 },
551 { 1, 1, -2, 1, 0 },
552 { 2, 1, -2, -4, -1 },
553 { 3, -1, 0, 0, 0 },
554 { 2, -1, -2, 0, 0 },
555 { 4, 0, 2, -2, 1 },
556 { 2, 0, -2, 2, 0 },
557
558 /* 361-370 */
559 { 1, 1, 2, -2, 0 },
560 { 1, 0, -2, 4, -1 },
561 { 1, 0, -2, -2, 1 },
562 { 2, 0, 2, -4, 0 },
563 { 1, 1, 0, -2, -2 },
564 { 1, 1, -2, -2, 0 },
565 { 1, 0, 1, -2, 1 },
566 { 2, -1, -2, -4, -2 },
567 { 3, 0, -2, 0, -2 },
568 { 0, 1, -2, -2, 0 },
569
570 /* 371-380 */
571 { 3, 0, 0, -2, -1 },
572 { 1, 0, -2, -3, -1 },
573 { 0, 1, 0, -4, -1 },
574 { 1, -2, 2, -2, 1 },
575 { 0, 1, -2, 1, -1 },
576 { 1, -1, 0, 0, 2 },
577 { 2, 0, 0, 1, 0 },
578 { 1, -2, 0, 2, 0 },
579 { 1, 2, -2, -2, -1 },
580 { 0, 0, 4, -4, 1 },
581
582 /* 381-390 */
583 { 0, 1, 2, 4, 2 },
584 { 0, 1, -4, 2, -2 },
585 { 3, 0, -2, 0, 0 },
586 { 2, -1, 2, 2, 1 },
587 { 0, 1, -2, -4, -1 },
588 { 4, 0, 2, 2, 2 },
589 { 2, 0, -2, -3, -2 },
590 { 2, 0, 0, -6, 0 },
591 { 1, 0, 2, 0, 3 },
592 { 3, 1, 0, 0, 0 },
593
594 /* 391-400 */
595 { 3, 0, 0, -4, 1 },
596 { 1, -1, 2, 0, 0 },
597 { 1, -1, 0, -4, 0 },
598 { 2, 0, -2, 2, -2 },
599 { 1, 1, 0, -2, 2 },
600 { 4, 0, 0, -2, 0 },
601 { 2, 2, 0, -2, 0 },
602 { 0, 1, 2, 0, 0 },
603 { 1, 1, 0, -4, 1 },
604 { 1, 0, 0, -4, -2 },
605
606 /* 401-410 */
607 { 0, 0, 0, 1, 2 },
608 { 3, 0, 0, 2, 1 },
609 { 1, 1, 0, -4, -1 },
610 { 0, 0, 2, 2, -1 },
611 { 1, 1, 2, 0, 0 },
612 { 1, -1, 2, -4, 1 },
613 { 1, 1, 0, 0, 2 },
614 { 0, 0, 2, 6, 2 },
615 { 4, 0, -2, -2, -1 },
616 { 2, 1, 0, -4, -1 },
617
618 /* 411-420 */
619 { 0, 0, 0, 3, 1 },
620 { 1, -1, -2, 0, 0 },
621 { 0, 0, 2, 1, 0 },
622 { 1, 0, 0, 2, -2 },
623 { 3, -1, 2, 2, 2 },
624 { 3, -1, 2, -2, 2 },
625 { 1, 0, 0, -1, 2 },
626 { 1, -2, 2, -2, 2 },
627 { 0, 1, 0, 2, 2 },
628 { 0, 1, -2, -1, -2 },
629
630 /* 421-430 */
631 { 1, 1, -2, 0, 0 },
632 { 0, 2, 2, -2, 0 },
633 { 3, -1, -2, -1, -2 },
634 { 1, 0, 0, -6, 0 },
635 { 1, 0, -2, -4, 0 },
636 { 2, 1, 0, -4, 1 },
637 { 2, 0, 2, 0, -1 },
638 { 2, 0, -4, 0, -1 },
639 { 0, 0, 3, 0, 2 },
640 { 2, 1, -2, -2, -1 },
641
642 /* 431-440 */
643 { 1, -2, 0, 0, 1 },
644 { 2, -1, 0, -4, 0 },
645 { 0, 0, 0, 3, 0 },
646 { 5, 0, 2, -2, 2 },
647 { 1, 2, -2, -4, -2 },
648 { 1, 0, 4, -4, 2 },
649 { 0, 0, 4, -1, 2 },
650 { 3, 1, 0, -4, 0 },
651 { 3, 0, 0, -6, 0 },
652 { 2, 0, 0, 2, 2 },
653
654 /* 441-450 */
655 { 2, -2, 2, 0, 2 },
656 { 1, 0, 0, -3, 1 },
657 { 1, -2, -2, 0, -2 },
658 { 1, -1, -2, -3, -2 },
659 { 0, 0, 2, -2, -2 },
660 { 2, 0, -2, -4, 0 },
661 { 1, 0, -4, 0, 0 },
662 { 0, 1, 0, -1, 0 },
663 { 4, 0, 0, 0, -1 },
664 { 3, 0, 2, -1, 2 },
665
666 /* 451-460 */
667 { 3, -1, 2, 0, 1 },
668 { 2, 0, 2, -1, 1 },
669 { 1, 2, 2, -2, 1 },
670 { 1, 1, 0, 2, -1 },
671 { 0, 2, 2, 0, 1 },
672 { 3, 1, 2, 0, 1 },
673 { 1, 1, 2, 1, 1 },
674 { 1, 1, 0, -1, 1 },
675 { 1, -2, 0, -2, -1 },
676 { 4, 0, 0, -4, 0 },
677
678 /* 461-470 */
679 { 2, 1, 0, 2, 0 },
680 { 1, -1, 0, 4, 0 },
681 { 0, 1, 0, -2, 2 },
682 { 0, 0, 2, 0, -2 },
683 { 1, 0, -1, 0, 1 },
684 { 3, 0, 2, -2, 0 },
685 { 2, 0, 2, 2, 0 },
686 { 1, 2, 0, -4, 0 },
687 { 1, -1, 0, -3, 0 },
688 { 0, 1, 0, 4, 0 },
689
690 /* 471 - 480 */
691 { 0, 1, -2, 0, 0 },
692 { 2, 2, 2, -2, 2 },
693 { 0, 0, 0, 1, -2 },
694 { 0, 2, -2, 0, -1 },
695 { 4, 0, 2, -4, 2 },
696 { 2, 0, -4, 2, -2 },
697 { 2, -1, -2, 0, -2 },
698 { 1, 1, 4, -2, 2 },
699 { 1, 1, 2, -4, 2 },
700 { 1, 0, 2, 3, 2 },
701
702 /* 481-490 */
703 { 1, 0, 0, 4, -1 },
704 { 0, 0, 0, 4, 2 },
705 { 2, 0, 0, 4, 0 },
706 { 1, 1, -2, 2, 0 },
707 { 2, 1, 2, 1, 2 },
708 { 2, 1, 2, -4, 1 },
709 { 2, 0, 2, 1, 1 },
710 { 2, 0, -4, -2, -1 },
711 { 2, 0, -2, -6, -1 },
712 { 2, -1, 2, -1, 2 },
713
714 /* 491-500 */
715 { 1, -2, 2, 0, 1 },
716 { 1, -2, 0, -2, 1 },
717 { 1, -1, 0, -4, -1 },
718 { 0, 2, 2, 2, 2 },
719 { 0, 2, -2, -4, -2 },
720 { 0, 1, 2, 3, 2 },
721 { 0, 1, 0, -4, 1 },
722 { 3, 0, 0, -2, 1 },
723 { 2, 1, -2, 0, 1 },
724 { 2, 0, 4, -2, 1 },
725
726 /* 501-510 */
727 { 2, 0, 0, -3, -1 },
728 { 2, -2, 0, -2, 1 },
729 { 2, -1, 2, -2, 1 },
730 { 1, 0, 0, -6, -1 },
731 { 1, -2, 0, 0, -1 },
732 { 1, -2, -2, -2, -1 },
733 { 0, 1, 4, -2, 1 },
734 { 0, 0, 2, 3, 1 },
735 { 2, -1, 0, -1, 0 },
736 { 1, 3, 0, -2, 0 },
737
738 /* 511-520 */
739 { 0, 3, 0, -2, 0 },
740 { 2, -2, 2, -2, 2 },
741 { 0, 0, 4, -2, 0 },
742 { 4, -1, 2, 0, 2 },
743 { 2, 2, -2, -4, -2 },
744 { 4, 1, 2, 0, 2 },
745 { 4, -1, -2, -2, -2 },
746 { 2, 1, 0, -2, -2 },
747 { 2, 1, -2, -6, -2 },
748 { 2, 0, 0, -1, 1 },
749
750 /* 521-530 */
751 { 2, -1, -2, 2, -1 },
752 { 1, 1, -2, 2, -2 },
753 { 1, 1, -2, -3, -2 },
754 { 1, 0, 3, 0, 3 },
755 { 1, 0, -2, 1, 1 },
756 { 1, 0, -2, 0, 2 },
757 { 1, -1, 2, 1, 2 },
758 { 1, -1, 0, 0, -2 },
759 { 1, -1, -4, 2, -2 },
760 { 0, 3, -2, -2, -2 },
761
762 /* 531-540 */
763 { 0, 1, 0, 4, 1 },
764 { 0, 0, 4, 2, 2 },
765 { 3, 0, -2, -2, 0 },
766 { 2, -2, 0, 0, 0 },
767 { 1, 1, 2, -4, 0 },
768 { 1, 1, 0, -3, 0 },
769 { 1, 0, 2, -3, 0 },
770 { 1, -1, 2, -2, 0 },
771 { 0, 2, 0, 2, 0 },
772 { 0, 0, 2, 4, 0 },
773
774 /* 541-550 */
775 { 1, 0, 1, 0, 0 },
776 { 3, 1, 2, -2, 1 },
777 { 3, 0, 4, -2, 2 },
778 { 3, 0, 2, 1, 2 },
779 { 3, 0, 0, 2, -1 },
780 { 3, 0, 0, 0, 2 },
781 { 3, 0, -2, 2, -1 },
782 { 2, 0, 4, -4, 2 },
783 { 2, 0, 2, -3, 2 },
784 { 2, 0, 0, 4, 1 },
785
786 /* 551-560 */
787 { 2, 0, 0, -3, 1 },
788 { 2, 0, -4, 2, -1 },
789 { 2, 0, -2, -2, 1 },
790 { 2, -2, 2, 2, 2 },
791 { 2, -2, 0, -2, -2 },
792 { 2, -1, 0, 2, 1 },
793 { 2, -1, 0, 2, -1 },
794 { 1, 1, 2, 4, 2 },
795 { 1, 1, 0, 1, 1 },
796 { 1, 1, 0, 1, -1 },
797
798 /* 561-570 */
799 { 1, 1, -2, -6, -2 },
800 { 1, 0, 0, -3, -1 },
801 { 1, 0, -4, -2, -1 },
802 { 1, 0, -2, -6, -1 },
803 { 1, -2, 2, 2, 1 },
804 { 1, -2, -2, 2, -1 },
805 { 1, -1, -2, -4, -1 },
806 { 0, 2, 0, 0, 2 },
807 { 0, 1, 2, -4, 2 },
808 { 0, 1, -2, 4, -1 },
809
810 /* 571-580 */
811 { 5, 0, 0, 0, 0 },
812 { 3, 0, 0, -3, 0 },
813 { 2, 2, 0, -4, 0 },
814 { 1, -1, 2, 2, 0 },
815 { 0, 1, 0, 3, 0 },
816 { 4, 0, -2, 0, -1 },
817 { 3, 0, -2, -6, -1 },
818 { 3, 0, -2, -1, -1 },
819 { 2, 1, 2, 2, 1 },
820 { 2, 1, 0, 2, 1 },
821
822 /* 581-590 */
823 { 2, 0, 2, 4, 1 },
824 { 2, 0, 2, -6, 1 },
825 { 2, 0, 2, -2, -1 },
826 { 2, 0, 0, -6, -1 },
827 { 2, -1, -2, -2, -1 },
828 { 1, 2, 2, 0, 1 },
829 { 1, 2, 0, 0, 1 },
830 { 1, 0, 4, 0, 1 },
831 { 1, 0, 2, -6, 1 },
832 { 1, 0, 2, -4, -1 },
833
834 /* 591-600 */
835 { 1, 0, -1, -2, -1 },
836 { 1, -1, 2, 4, 1 },
837 { 1, -1, 2, -3, 1 },
838 { 1, -1, 0, 4, 1 },
839 { 1, -1, -2, 1, -1 },
840 { 0, 1, 2, -2, 3 },
841 { 3, 0, 0, -2, 0 },
842 { 1, 0, 1, -2, 0 },
843 { 0, 2, 0, -4, 0 },
844 { 0, 0, 2, -4, 0 },
845
846 /* 601-610 */
847 { 0, 0, 1, -1, 0 },
848 { 0, 0, 0, 6, 0 },
849 { 0, 2, 0, 0, -2 },
850 { 0, 1, -2, 2, -3 },
851 { 4, 0, 0, 2, 0 },
852 { 3, 0, 0, -1, 0 },
853 { 3, -1, 0, 2, 0 },
854 { 2, 1, 0, 1, 0 },
855 { 2, 1, 0, -6, 0 },
856 { 2, -1, 2, 0, 0 },
857
858 /* 611-620 */
859 { 1, 0, 2, -1, 0 },
860 { 1, -1, 0, 1, 0 },
861 { 1, -1, -2, -2, 0 },
862 { 0, 1, 2, 2, 0 },
863 { 0, 0, 2, -3, 0 },
864 { 2, 2, 0, -2, -1 },
865 { 2, -1, -2, 0, 1 },
866 { 1, 2, 2, -4, 1 },
867 { 0, 1, 4, -4, 2 },
868 { 0, 0, 0, 3, 2 },
869
870 /* 621-630 */
871 { 5, 0, 2, 0, 1 },
872 { 4, 1, 2, -2, 2 },
873 { 4, 0, -2, -2, 0 },
874 { 3, 1, 2, 2, 2 },
875 { 3, 1, 0, -2, 0 },
876 { 3, 1, -2, -6, -2 },
877 { 3, 0, 0, 0, -2 },
878 { 3, 0, -2, -4, -2 },
879 { 3, -1, 0, -3, 0 },
880 { 3, -1, 0, -2, 0 },
881
882 /* 631-640 */
883 { 2, 1, 2, 0, 0 },
884 { 2, 1, 2, -4, 2 },
885 { 2, 1, 2, -2, 0 },
886 { 2, 1, 0, -3, 0 },
887 { 2, 1, -2, 0, -2 },
888 { 2, 0, 0, -4, 2 },
889 { 2, 0, 0, -4, -2 },
890 { 2, 0, -2, -5, -2 },
891 { 2, -1, 2, 4, 2 },
892 { 2, -1, 0, -2, 2 },
893
894 /* 641-650 */
895 { 1, 3, -2, -2, -2 },
896 { 1, 1, 0, 0, -2 },
897 { 1, 1, 0, -6, 0 },
898 { 1, 1, -2, 1, -2 },
899 { 1, 1, -2, -1, -2 },
900 { 1, 0, 2, 1, 0 },
901 { 1, 0, 0, 3, 0 },
902 { 1, 0, 0, -4, 2 },
903 { 1, 0, -2, 4, -2 },
904 { 1, -2, 0, -1, 0 },
905
906 /* 651-NFLS */
907 { 0, 1, -4, 2, -1 },
908 { 1, 0, -2, 0, -3 },
909 { 0, 0, 4, -4, 4 }
910 };
911
912/* Number of frequencies: luni-solar */
913 static const int NFLS = (int) (sizeof mfals / sizeof (int) / 5);
914
915/* Fundamental-argument multipliers: planetary terms */
916 static const int mfapl[][14] = {
917
918 /* 1-10 */
919 { 0, 0, 1, -1, 1, 0, 0, -1, 0, -2, 5, 0, 0, 0 },
920 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, -1 },
921 { 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, 0, -2 },
922 { 0, 0, 1, -1, 1, 0, -8, 12, 0, 0, 0, 0, 0, 0 },
923 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2 },
924 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
925 { 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
926 { 0, 0, 0, 0, 0, 0, 0, 8,-16, 4, 5, 0, 0, 0 },
927 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
928 { 0, 0, 0, 0, 1, 0, 0, -1, 2, 0, 0, 0, 0, 0 },
929
930 /* 11-20 */
931 { 0, 0, 0, 0, 0, 0, 8,-13, 0, 0, 0, 0, 0, -1 },
932 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 2, -5, 0, 0, 0 },
933 { 0, 0, 2, -2, 1, 0, -5, 6, 0, 0, 0, 0, 0, 0 },
934 { 0, 0, 0, 0, 0, 0, 4, -6, 0, 0, 0, 0, 0, -2 },
935 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -1, 0, 0, 0, 2 },
936 { 0, 0, 0, 0, 0, 0, 0, 2, -8, 3, 0, 0, 0, -2 },
937 { 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, 0, -2 },
938 { 0, 0, 0, 0, 0, 0, 0, 6, -8, 3, 0, 0, 0, 2 },
939 { 0, 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, 0 },
940 { 0, 0, 0, 0, 0, 0, 2, -3, 0, 0, 0, 0, 0, 0 },
941
942 /* 21-30 */
943 { 0, 0, 0, 0, 0, 0, 2, -2, 0, 0, 0, 0, 0, 0 },
944 { 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 2 },
945 { 0, 0, 0, 0, 1, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
946 { 0, 0, 0, 0, 1, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
947 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, 0 },
948 { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 2 },
949 { 0, 0, 1, -1, 1, 0, 0, 0, -2, 0, 0, 0, 0, 0 },
950 { 2, 0, 0, -2, -1, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
951 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1 },
952 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
953
954 /* 31-40 */
955 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -2, 0, 0, 0, 0 },
956 { 0, 0, 0, 0, 0, 0, 8,-13, 0, 0, 0, 0, 0, 0 },
957 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 2 },
958 { 0, 0, 0, 0, 0, 0, 5, -8, 0, 0, 0, 0, 0, -2 },
959 { 0, 0, 0, 0, 0, 0, 0, 2, -2, 0, 0, 0, 0, 0 },
960 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, 1 },
961 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
962 { 0, 0, 1, -1, 1, 0, 0, -1, 0, -1, 0, 0, 0, 0 },
963 { 0, 0, 0, 0, 0, 0, 3, -4, 0, 0, 0, 0, 0, 0 },
964 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, -1, 0, 0, 0 },
965
966 /* 41-50 */
967 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -2, 0, 0, 0, 0 },
968 { 0, 0, 0, 0, 0, 0, 5, -7, 0, 0, 0, 0, 0, -2 },
969 { 0, 0, 1, -1, 0, 0, 0, 0, -2, 0, 0, 0, 0, 0 },
970 { 0, 0, 0, 0, 0, 0, 0, 4, 0, -2, 0, 0, 0, 2 },
971 { 0, 0, 0, 0, 0, 0, 8,-13, 0, 0, 0, 0, 0, -2 },
972 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 },
973 { 0, 0, 0, 0, 0, 0, 2, -1, 0, 0, 0, 0, 0, 2 },
974 { 1, 0, 0, 0, 0, 0,-18, 16, 0, 0, 0, 0, 0, 0 },
975 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
976 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 2 },
977
978 /* 51-60 */
979 { 0, 0, 1, -1, 1, 0, -5, 7, 0, 0, 0, 0, 0, 0 },
980 { 1, 0, 0, 0, 0, 0,-10, 3, 0, 0, 0, 0, 0, 0 },
981 { 0, 0, 2, -2, 0, 0, -5, 6, 0, 0, 0, 0, 0, 0 },
982 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -1, 0, 0, 0, 2 },
983 { 1, 0, 2, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
984 { 0, 0, 0, 0, 0, 0, 0, 4, -2, 0, 0, 0, 0, 2 },
985 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1 },
986 { 1, 0, -2, 0, -2, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
987 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, 2, 0, 0, 0 },
988 { 0, 0, 2, -2, 1, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
989
990 /* 61-70 */
991 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 2 },
992 { 0, 0, 0, 0, 0, 0, 0, 8,-16, 4, 5, 0, 0, -2 },
993 { 0, 0, 1, -1, 1, 0, 0, 3, -8, 3, 0, 0, 0, 0 },
994 { 0, 0, 0, 0, 0, 0, 8,-11, 0, 0, 0, 0, 0, -2 },
995 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2 },
996 { 0, 0, 0, 0, 0, 0, 0, 8,-16, 4, 5, 0, 0, 2 },
997 { 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, -1 },
998 { 0, 0, 0, 0, 0, 0, 4, -6, 0, 0, 0, 0, 0, -1 },
999 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -3, 0, 0, 0, -2 },
1000 { 0, 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, 0 },
1001
1002 /* 71-80 */
1003 { 0, 0, 0, 0, 0, 0, 6, -8, 0, 0, 0, 0, 0, -2 },
1004 { 0, 0, 0, 0, 0, 0, 3, -2, 0, 0, 0, 0, 0, 2 },
1005 { 0, 0, 0, 0, 0, 0, 8,-15, 0, 0, 0, 0, 0, -2 },
1006 { 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, 0, 0, 0, -2 },
1007 { 0, 0, 0, 0, 0, 0, 1, -3, 0, 0, 0, 0, 0, -2 },
1008 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -2, 0, 0, 0, 2 },
1009 { 0, 0, 1, -1, 1, 0, 0, -5, 8, -3, 0, 0, 0, 0 },
1010 { 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 2 },
1011 { 0, 0, 0, 0, 0, 0, 0, 3, -2, 0, 0, 0, 0, 2 },
1012 { 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, 0, 0 },
1013
1014 /* 81-90 */
1015 { 2, 0, 0, -2, 1, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1016 { 0, 0, 0, 0, 0, 0, 5, -8, 0, 0, 0, 0, 0, -1 },
1017 { 2, 0, 0, -2, 0, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1018 { 0, 0, 0, 0, 1, 0, 8,-13, 0, 0, 0, 0, 0, 0 },
1019 { 0, 0, 0, 0, 1, 0, 0, 0, 0, -2, 5, 0, 0, 0 },
1020 { 1, 0, 0, -1, 0, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1021 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 2 },
1022 { 1, 0, 0, 0, -1, 0,-18, 16, 0, 0, 0, 0, 0, 0 },
1023 { 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, -5, 0, 0, 0 },
1024 { 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0 },
1025
1026 /* 91-100 */
1027 { 1, 0, 0, -2, 0, 0, 19,-21, 3, 0, 0, 0, 0, 0 },
1028 { 0, 0, 0, 0, 1, 0, -8, 13, 0, 0, 0, 0, 0, 0 },
1029 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, 1, 0, 0, 0 },
1030 { 0, 0, 0, 0, 0, 0, 7, -9, 0, 0, 0, 0, 0, -2 },
1031 { 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 2 },
1032 { 1, 0, 0, 0, 1, 0,-18, 16, 0, 0, 0, 0, 0, 0 },
1033 { 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, 0, -1 },
1034 { 0, 0, 0, 0, 0, 0, 0, 6,-16, 4, 5, 0, 0, -2 },
1035 { 0, 0, 0, 0, 0, 0, 4, -7, 0, 0, 0, 0, 0, -2 },
1036 { 0, 0, 0, 0, 0, 0, 3, -7, 0, 0, 0, 0, 0, -2 },
1037
1038 /* 101-110 */
1039 { 0, 0, 0, 0, 0, 0, 2, -2, 0, 0, 0, 0, 0, -1 },
1040 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 },
1041 { 2, 0, 0, -2, 1, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1042 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, -1 },
1043 { 0, 0, 0, 0, 0, 0, 0, 3, -4, 0, 0, 0, 0, 0 },
1044 { 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, 0, 0 },
1045 { 2, 0, 0, -2, -1, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1046 { 0, 0, 0, 0, 0, 0, 3, -3, 0, 0, 0, 0, 0, 0 },
1047 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0 },
1048 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 2 },
1049
1050 /* 111-120 */
1051 { 0, 0, 0, 0, 1, 0, 0, 1, -2, 0, 0, 0, 0, 0 },
1052 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 2 },
1053 { 0, 0, 2, -2, 1, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1054 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -3, 0, 0, 0, 0 },
1055 { 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, 0, -1 },
1056 { 0, 0, 0, 0, 0, 0, 3, -3, 0, 0, 0, 0, 0, 2 },
1057 { 0, 0, 0, 0, 0, 0, 4, -4, 0, 0, 0, 0, 0, 0 },
1058 { 0, 0, 1, -1, 0, 0, 0, -1, 0, -1, 0, 0, 0, 0 },
1059 { 2, 0, 0, -2, 0, 0, -6, 8, 0, 0, 0, 0, 0, 0 },
1060 { 0, 0, 1, -1, 1, 0, 0, -2, 2, 0, 0, 0, 0, 0 },
1061
1062 /* 121-130 */
1063 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1 },
1064 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1065 { 0, 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, -1 },
1066 { 0, 0, 0, 0, 0, 0, 0, 2, -3, 0, 0, 0, 0, 0 },
1067 { 0, 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, -2 },
1068 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, -1, 0, 0, 0 },
1069 { 0, 0, 0, 0, 0, 0, 8,-10, 0, 0, 0, 0, 0, -2 },
1070 { 0, 0, 1, -1, 1, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1071 { 0, 0, 0, 0, 0, 0, 6, -9, 0, 0, 0, 0, 0, -2 },
1072 { 1, 0, 0, -1, 1, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
1073
1074 /* 131-140 */
1075 { 0, 0, 0, 0, 0, 0, 5, -7, 0, 0, 0, 0, 0, -1 },
1076 { 0, 0, 0, 0, 0, 0, 5, -5, 0, 0, 0, 0, 0, 0 },
1077 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, -1 },
1078 { 0, 0, 0, 0, 0, 0, 3, -3, 0, 0, 0, 0, 0, -1 },
1079 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0 },
1080 { 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 2 },
1081 { 0, 0, 0, 0, 0, 0, 0, 4, 0, -3, 0, 0, 0, 2 },
1082 { 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, 1 },
1083 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1 },
1084 { 0, 0, 0, 0, 1, 0, 2, -3, 0, 0, 0, 0, 0, 0 },
1085
1086 /* 141-150 */
1087 { 1, 0, 0, -1, 0, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1088 { 0, 0, 0, 0, 0, 0, 1, -3, 0, 0, 0, 0, 0, -1 },
1089 { 0, 0, 0, 0, 0, 0, 0, 5, -4, 0, 0, 0, 0, 2 },
1090 { 0, 0, 0, 0, 0, 0, 0, 4, -4, 0, 0, 0, 0, 2 },
1091 { 0, 0, 0, 0, 0, 0, 9,-11, 0, 0, 0, 0, 0, -2 },
1092 { 0, 0, 0, 0, 0, 0, 2, -3, 0, 0, 0, 0, 0, -1 },
1093 { 0, 0, 0, 0, 0, 0, 0, 8,-15, 0, 0, 0, 0, 0 },
1094 { 0, 0, 1, -1, 1, 0, -4, 5, 0, 0, 0, 0, 0, 0 },
1095 { 0, 0, 0, 0, 0, 0, 4, -6, 0, 0, 0, 0, 0, 0 },
1096 { 0, 0, 0, 0, 0, 0, 0, 4, 0, -1, 0, 0, 0, 2 },
1097
1098 /* 151-160 */
1099 { 1, 0, 0, -1, 1, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1100 { 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1101 { 0, 0, 1, -1, 1, 0, 0, -1, 0, -4, 10, 0, 0, 0 },
1102 { 0, 0, 0, 0, 1, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
1103 { 0, 0, 1, -1, 0, 0, 0, -1, 0, 0, -1, 0, 0, 0 },
1104 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -3, 0, 0, 0, 0 },
1105 { 0, 0, 0, 0, 0, 0, 3, -1, 0, 0, 0, 0, 0, 2 },
1106 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -4, 0, 0, 0, -2 },
1107 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, -2 },
1108 { 0, 0, 2, -2, 1, 0, -4, 4, 0, 0, 0, 0, 0, 0 },
1109
1110 /* 161-170 */
1111 { 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, -1, 0, 0, 2 },
1112 { 0, 0, 0, 0, 0, 0, 0, 4, -3, 0, 0, 0, 0, 2 },
1113 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, 0, 0, 2, 0 },
1114 { 0, 0, 0, 0, 0, 0, 4, -4, 0, 0, 0, 0, 0, -1 },
1115 { 0, 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, -1 },
1116 { 0, 0, 0, 0, 0, 0, 5, -8, 0, 0, 0, 0, 0, 0 },
1117 { 0, 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, 1 },
1118 { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0 },
1119 { 0, 0, 2, -2, 1, 0, 0, -9, 13, 0, 0, 0, 0, 0 },
1120 { 2, 0, 2, 0, 2, 0, 0, 2, 0, -3, 0, 0, 0, 0 },
1121
1122 /* 171-180 */
1123 { 0, 0, 0, 0, 0, 0, 3, -6, 0, 0, 0, 0, 0, -2 },
1124 { 0, 0, 1, -1, 2, 0, 0, -1, 0, 0, 2, 0, 0, 0 },
1125 { 1, 0, 0, -1, -1, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1126 { 0, 0, 0, 0, 0, 0, 0, 3, -6, 0, 0, 0, 0, -2 },
1127 { 0, 0, 0, 0, 0, 0, 6, -6, 0, 0, 0, 0, 0, 0 },
1128 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1 },
1129 { 1, 0, 2, 0, 1, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1130 { 1, 0, -2, 0, -1, 0, 0, -1, 0, 0, 0, 0, 0, 0 },
1131 { 0, 0, 0, 0, 1, 0, 0, -2, 4, 0, 0, 0, 0, 0 },
1132 { 0, 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, 0 },
1133
1134 /* 181-190 */
1135 { 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 2 },
1136 { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1 },
1137 { 0, 0, 2, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1138 { 0, 0, 0, 0, 0, 0, 0, 1, -8, 3, 0, 0, 0, -2 },
1139 { 0, 0, 0, 0, 0, 0, 6,-10, 0, 0, 0, 0, 0, -2 },
1140 { 0, 0, 0, 0, 0, 0, 0, 7, -8, 3, 0, 0, 0, 2 },
1141 { 0, 0, 0, 0, 1, 0, -3, 5, 0, 0, 0, 0, 0, 0 },
1142 { 0, 0, 1, -1, 1, 0, -1, 0, 0, 0, 0, 0, 0, 0 },
1143 { 0, 0, 1, -1, 0, 0, -5, 7, 0, 0, 0, 0, 0, 0 },
1144 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -2, 0, 0, 0, 1 },
1145
1146 /* 191-200 */
1147 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -1, 0, 0, 0, 0 },
1148 { 0, 0, 0, 0, 0, 0, 7,-10, 0, 0, 0, 0, 0, -2 },
1149 { 1, 0, 0, -2, 0, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1150 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0 },
1151 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, -5, 0, 0, 0 },
1152 { 0, 0, 0, 0, 0, 0, 6, -8, 0, 0, 0, 0, 0, -1 },
1153 { 0, 0, 1, -1, 1, 0, 0, -9, 15, 0, 0, 0, 0, 0 },
1154 { 0, 0, 0, 0, 1, 0, -2, 3, 0, 0, 0, 0, 0, 0 },
1155 { 0, 0, 0, 0, 1, 0, -1, 1, 0, 0, 0, 0, 0, 0 },
1156 { 0, 0, 0, 0, 0, 0, 0, 3, -6, 0, 0, 0, 0, 0 },
1157
1158 /* 201-210 */
1159 { 0, 0, 0, 0, 0, 0, 0, 1, -4, 0, 0, 0, 0, -2 },
1160 { 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 2 },
1161 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, -1, 0, 0, 2 },
1162 { 2, 0, 0, -2, 1, 0, -6, 8, 0, 0, 0, 0, 0, 0 },
1163 { 0, 0, 0, 0, 0, 0, 5, -5, 0, 0, 0, 0, 0, -1 },
1164 { 0, 0, 1, -1, 1, 0, 3, -6, 0, 0, 0, 0, 0, 0 },
1165 { 0, 0, 1, -1, 1, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1166 { 0, 0, 1, -1, 1, 0, 8,-14, 0, 0, 0, 0, 0, 0 },
1167 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0 },
1168 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1169
1170 /* 211-220 */
1171 { 0, 0, 0, 0, 1, 0, 0, 8,-15, 0, 0, 0, 0, 0 },
1172 { 0, 0, 0, 0, 0, 0, 0, 4, -6, 0, 0, 0, 0, 0 },
1173 { 0, 0, 0, 0, 0, 0, 7, -7, 0, 0, 0, 0, 0, 0 },
1174 { 2, 0, 0, -2, 1, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1175 { 0, 0, 0, 0, 0, 0, 0, 3, -1, 0, 0, 0, 0, 2 },
1176 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 2 },
1177 { 2, 0, -1, -1, 0, 0, 0, 3, -7, 0, 0, 0, 0, 0 },
1178 { 0, 0, 0, 0, 0, 0, 0, 4, -7, 0, 0, 0, 0, -2 },
1179 { 0, 0, 0, 0, 0, 0, 0, 3, -3, 0, 0, 0, 0, 0 },
1180 { 0, 0, 1, -1, 1, 0, 0, -3, 4, 0, 0, 0, 0, 0 },
1181
1182 /* 221-230 */
1183 { 2, 0, 0, -2, 0, 0, 0, -6, 8, 0, 0, 0, 0, 0 },
1184 { 2, 0, 0, -2, 0, 0, 0, -5, 6, 0, 0, 0, 0, 0 },
1185 { 0, 0, 0, 0, 1, 0, 0, 0, 0, -1, 0, 0, 0, 0 },
1186 { 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1 },
1187 { 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 1 },
1188 { 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 2 },
1189 { 0, 0, 0, 0, 1, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
1190 { 0, 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0 },
1191 { 0, 0, 0, 0, 0, 0, 3, -9, 4, 0, 0, 0, 0, -2 },
1192 { 0, 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, -2 },
1193
1194 /* 231-240 */
1195 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -4, 0, 0, 0, -2 },
1196 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1 },
1197 { 0, 0, 0, 0, 0, 0, 7,-11, 0, 0, 0, 0, 0, -2 },
1198 { 0, 0, 0, 0, 0, 0, 3, -5, 4, 0, 0, 0, 0, 2 },
1199 { 0, 0, 1, -1, 0, 0, 0, -1, 0, -1, 1, 0, 0, 0 },
1200 { 2, 0, 0, 0, 0, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1201 { 0, 0, 0, 0, 0, 0, 0, 8,-15, 0, 0, 0, 0, -2 },
1202 { 0, 0, 1, -1, 2, 0, 0, -2, 2, 0, 0, 0, 0, 0 },
1203 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 2 },
1204 { 0, 0, 0, 0, 0, 0, 6, -6, 0, 0, 0, 0, 0, -1 },
1205
1206 /* 241-250 */
1207 { 0, 0, 1, -1, 1, 0, 0, -1, 0, -1, 1, 0, 0, 0 },
1208 { 0, 0, 0, 0, 0, 0, 2, -2, 0, 0, 0, 0, 0, 1 },
1209 { 0, 0, 0, 0, 0, 0, 0, 4, -7, 0, 0, 0, 0, 0 },
1210 { 0, 0, 0, 0, 0, 0, 0, 3, -8, 3, 0, 0, 0, 0 },
1211 { 0, 0, 1, -1, 1, 0, 2, -4, 0, -3, 0, 0, 0, 0 },
1212 { 0, 0, 0, 0, 1, 0, 3, -5, 0, 2, 0, 0, 0, 0 },
1213 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -3, 0, 0, 0, 2 },
1214 { 0, 0, 2, -2, 2, 0, -8, 11, 0, 0, 0, 0, 0, 0 },
1215 { 0, 0, 0, 0, 0, 0, 0, 5, -8, 3, 0, 0, 0, 0 },
1216 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, -2, 0, 0, 0 },
1217
1218 /* 251-260 */
1219 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 2 },
1220 { 0, 0, 0, 0, 0, 0, 0, 5, -9, 0, 0, 0, 0, -2 },
1221 { 0, 0, 0, 0, 0, 0, 0, 5, -5, 0, 0, 0, 0, 2 },
1222 { 0, 0, 0, 0, 0, 0, 7, -9, 0, 0, 0, 0, 0, -1 },
1223 { 0, 0, 0, 0, 0, 0, 4, -7, 0, 0, 0, 0, 0, -1 },
1224 { 0, 0, 0, 0, 0, 0, 2, -1, 0, 0, 0, 0, 0, 0 },
1225 { 1, 0, -2, -2, -2, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1226 { 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 2 },
1227 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -2, 5, 0, 0, 2 },
1228 { 0, 0, 0, 0, 0, 0, 3, -3, 0, 0, 0, 0, 0, 1 },
1229
1230 /* 261-270 */
1231 { 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 2 },
1232 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, -5, 0, 0, 2 },
1233 { 2, 0, 0, -2, -1, 0, 0, -2, 0, 0, 5, 0, 0, 0 },
1234 { 2, 0, 0, -2, -1, 0, -6, 8, 0, 0, 0, 0, 0, 0 },
1235 { 1, 0, 0, -2, 0, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1236 { 0, 0, 0, 0, 0, 0, 8, -8, 0, 0, 0, 0, 0, 0 },
1237 { 0, 0, 0, 0, 0, 0, 0, 3, 0, 2, -5, 0, 0, 2 },
1238 { 0, 0, 0, 0, 1, 0, 3, -7, 4, 0, 0, 0, 0, 0 },
1239 { 0, 0, 2, -2, 1, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1240 { 0, 0, 0, 0, 1, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1241
1242 /* 271-280 */
1243 { 0, 0, 1, -1, 0, 0, 0, -1, 0, -2, 5, 0, 0, 0 },
1244 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -3, 0, 0, 0, 0 },
1245 { 0, 0, 0, 0, 0, 0, 3, -1, 0, 0, 0, 0, 0, 1 },
1246 { 0, 0, 0, 0, 0, 0, 2, -3, 0, 0, 0, 0, 0, -2 },
1247 { 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 2 },
1248 { 0, 0, 0, 0, 0, 0, 0, 6,-15, 0, 0, 0, 0, -2 },
1249 { 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0, 0, 0, 2 },
1250 { 1, 0, 0, -1, 0, 0, 0, -3, 4, 0, 0, 0, 0, 0 },
1251 { 0, 0, 0, 0, 1, 0, -3, 7, -4, 0, 0, 0, 0, 0 },
1252 { 0, 0, 0, 0, 0, 0, 0, 5, 0, -2, 0, 0, 0, 2 },
1253
1254 /* 281-290 */
1255 { 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, 0, 1 },
1256 { 0, 0, 2, -2, 2, 0, -5, 6, 0, 0, 0, 0, 0, 0 },
1257 { 0, 0, 2, -2, 2, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1258 { 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 2 },
1259 { 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0 },
1260 { 0, 0, 0, 0, 0, 0, 4, -4, 0, 0, 0, 0, 0, 2 },
1261 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 0, 0, 0, 0, -2 },
1262 { 0, 0, 0, 0, 0, 0, 0, 4, -5, 0, 0, 0, 0, 0 },
1263 { 0, 0, 0, 0, 0, 0, 5, -7, 0, 0, 0, 0, 0, 0 },
1264 { 0, 0, 0, 0, 0, 0, 0, 6,-11, 0, 0, 0, 0, -2 },
1265
1266 /* 291-300 */
1267 { 0, 0, 0, 0, 0, 0, 0, 1, -3, 0, 0, 0, 0, -2 },
1268 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 3, 0, 0, 0, 0 },
1269 { 0, 0, 1, -1, 0, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
1270 { 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, 0, 1 },
1271 { 0, 0, 0, 0, 0, 0, 9,-12, 0, 0, 0, 0, 0, -2 },
1272 { 0, 0, 0, 0, 0, 0, 4, -4, 0, 0, 0, 0, 0, 1 },
1273 { 0, 0, 1, -1, 0, 0, -8, 12, 0, 0, 0, 0, 0, 0 },
1274 { 0, 0, 1, -1, 1, 0, -2, 3, 0, 0, 0, 0, 0, 0 },
1275 { 0, 0, 0, 0, 0, 0, 7, -7, 0, 0, 0, 0, 0, -1 },
1276 { 0, 0, 0, 0, 0, 0, 0, 3, -6, 0, 0, 0, 0, -1 },
1277
1278 /* 301-310 */
1279 { 0, 0, 0, 0, 0, 0, 0, 6, -6, 0, 0, 0, 0, 2 },
1280 { 0, 0, 0, 0, 0, 1, 0, -4, 0, 0, 0, 0, 0, -2 },
1281 { 0, 0, 1, -1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1282 { 0, 0, 0, 0, 0, 0, 6, -9, 0, 0, 0, 0, 0, -1 },
1283 { 0, 0, 1, -1, -1, 0, 0, 0, -2, 0, 0, 0, 0, 0 },
1284 { 0, 0, 0, 0, 0, 0, 0, 1, -5, 0, 0, 0, 0, -2 },
1285 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 3, -1, 0, 0, 0 },
1286 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, -2, 0, 0, 0 },
1287 { 0, 0, 0, 0, 0, 0, 0, 5, -9, 0, 0, 0, 0, 0 },
1288 { 0, 0, 0, 0, 0, 0, 5, -6, 0, 0, 0, 0, 0, 2 },
1289
1290 /* 311-320 */
1291 { 0, 0, 0, 0, 0, 0, 9, -9, 0, 0, 0, 0, 0, -1 },
1292 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, 3, 0, 0, 0 },
1293 { 0, 0, 0, 0, 1, 0, 0, 2, -4, 0, 0, 0, 0, 0 },
1294 { 0, 0, 0, 0, 0, 0, 5, -3, 0, 0, 0, 0, 0, 2 },
1295 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 1 },
1296 { 0, 0, 1, -1, 2, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
1297 { 0, 0, 0, 0, 0, 0, 5, -9, 0, 0, 0, 0, 0, -2 },
1298 { 0, 0, 0, 0, 0, 0, 0, 5, -3, 0, 0, 0, 0, 2 },
1299 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 2 },
1300 { 0, 0, 2, 0, 2, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
1301
1302 /* 321-330 */
1303 { 0, 0, 2, 0, 2, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1304 { 0, 0, 0, 0, 0, 0, 0, 5, 0, -3, 0, 0, 0, 2 },
1305 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0 },
1306 { 2, 0, -1, -1, -1, 0, 0, -1, 0, 3, 0, 0, 0, 0 },
1307 { 0, 0, 0, 0, 0, 0, 4, -3, 0, 0, 0, 0, 0, 2 },
1308 { 0, 0, 0, 0, 0, 0, 4, -2, 0, 0, 0, 0, 0, 2 },
1309 { 0, 0, 0, 0, 0, 0, 5,-10, 0, 0, 0, 0, 0, -2 },
1310 { 0, 0, 0, 0, 0, 0, 8,-13, 0, 0, 0, 0, 0, 1 },
1311 { 0, 0, 2, -2, 1, -1, 0, 2, 0, 0, 0, 0, 0, 0 },
1312 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, 0, 2, 0, 0 },
1313
1314 /* 331-340 */
1315 { 0, 0, 0, 0, 1, 0, 3, -5, 0, 0, 0, 0, 0, 0 },
1316 { 1, 0, 0, -2, 0, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1317 { 0, 0, 2, -2, 0, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1318 { 0, 0, 0, 0, 0, 0, 9, -9, 0, 0, 0, 0, 0, 0 },
1319 { 0, 0, 2, 0, 2, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
1320 { 0, 0, 2, -2, 1, 0, 0, -8, 11, 0, 0, 0, 0, 0 },
1321 { 0, 0, 2, -2, 1, 0, 0, -2, 0, 0, 2, 0, 0, 0 },
1322 { 0, 0, 1, -1, 1, 0, 0, -1, 0, -1, 2, 0, 0, 0 },
1323 { 0, 0, 0, 0, 0, 0, 5, -5, 0, 0, 0, 0, 0, 2 },
1324 { 0, 0, 0, 0, 0, 0, 2, -6, 0, 0, 0, 0, 0, -2 },
1325
1326 /* 341-350 */
1327 { 0, 0, 0, 0, 0, 0, 0, 8,-15, 0, 0, 0, 0, -1 },
1328 { 0, 0, 0, 0, 0, 0, 0, 5, -2, 0, 0, 0, 0, 2 },
1329 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2 },
1330 { 0, 0, 0, 0, 0, 0, 0, 7,-13, 0, 0, 0, 0, -2 },
1331 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -2, 0, 0, 0, 0 },
1332 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0, 0, 2 },
1333 { 0, 0, 2, -2, 1, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1334 { 0, 0, 0, 0, 0, 0, 8, -8, 0, 0, 0, 0, 0, -1 },
1335 { 0, 0, 0, 0, 0, 0, 8,-10, 0, 0, 0, 0, 0, -1 },
1336 { 0, 0, 0, 0, 0, 0, 4, -2, 0, 0, 0, 0, 0, 1 },
1337
1338 /* 351-360 */
1339 { 0, 0, 0, 0, 0, 0, 3, -6, 0, 0, 0, 0, 0, -1 },
1340 { 0, 0, 0, 0, 0, 0, 3, -4, 0, 0, 0, 0, 0, -1 },
1341 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, 2 },
1342 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2 },
1343 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -4, 0, 0, 0, 0 },
1344 { 2, 0, 0, -2, -1, 0, 0, -5, 6, 0, 0, 0, 0, 0 },
1345 { 0, 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, 0, 0, -2 },
1346 { 2, 0, -1, -1, -1, 0, 0, 3, -7, 0, 0, 0, 0, 0 },
1347 { 0, 0, 0, 0, 0, 0, 0, 5, -8, 0, 0, 0, 0, 0 },
1348 { 0, 0, 2, 0, 2, 0, -1, 1, 0, 0, 0, 0, 0, 0 },
1349
1350 /* 361-370 */
1351 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 4, -3, 0, 0, 0 },
1352 { 0, 0, 0, 0, 0, 0, 0, 6,-11, 0, 0, 0, 0, 0 },
1353 { 2, 0, 0, -2, 1, 0, 0, -6, 8, 0, 0, 0, 0, 0 },
1354 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 1, 5, 0, 0, -2 },
1355 { 0, 0, 0, 0, 0, 0, 0, 6, -5, 0, 0, 0, 0, 2 },
1356 { 1, 0, -2, -2, -2, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1357 { 0, 0, 1, -1, 2, 0, 0, 0, -2, 0, 0, 0, 0, 0 },
1358 { 0, 0, 0, 0, 2, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
1359 { 0, 0, 0, 0, 2, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1360 { 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 1 },
1361
1362 /* 371-380 */
1363 { 0, 0, 0, 0, 0, 0, 0, 6, -7, 0, 0, 0, 0, 2 },
1364 { 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, -2, 0, 0, 2 },
1365 { 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, -2, 0, 0, 2 },
1366 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 1 },
1367 { 0, 0, 0, 0, 0, 0, 0, 1, -6, 0, 0, 0, 0, -2 },
1368 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, -5, 0, 0, 2 },
1369 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2 },
1370 { 0, 0, 0, 0, 0, 0, 3, -5, 0, 2, 0, 0, 0, 0 },
1371 { 0, 0, 0, 0, 0, 0, 0, 7,-13, 0, 0, 0, 0, 0 },
1372 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -2, 0, 0, 0, 2 },
1373
1374 /* 381-390 */
1375 { 0, 0, 1, -1, 0, 0, 0, -1, 0, 0, 2, 0, 0, 0 },
1376 { 0, 0, 0, 0, 1, 0, 0, -8, 15, 0, 0, 0, 0, 0 },
1377 { 2, 0, 0, -2, -2, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1378 { 2, 0, -1, -1, -1, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
1379 { 1, 0, 2, -2, 2, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1380 { 1, 0, -1, 1, -1, 0,-18, 17, 0, 0, 0, 0, 0, 0 },
1381 { 0, 0, 2, 0, 2, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
1382 { 0, 0, 2, 0, 2, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1383 { 0, 0, 2, -2, -1, 0, -5, 6, 0, 0, 0, 0, 0, 0 },
1384 { 0, 0, 1, -1, 2, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1385
1386 /* 391-400 */
1387 { 0, 0, 0, 0, 1, 0, 2, -2, 0, 0, 0, 0, 0, 0 },
1388 { 0, 0, 0, 0, 0, 0, 8,-16, 0, 0, 0, 0, 0, -2 },
1389 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 2 },
1390 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2 },
1391 { 0, 0, 0, 0, 2, 0, 0, -1, 2, 0, 0, 0, 0, 0 },
1392 { 2, 0, -1, -1, -2, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
1393 { 0, 0, 0, 0, 0, 0, 6,-10, 0, 0, 0, 0, 0, -1 },
1394 { 0, 0, 1, -1, 1, 0, 0, -1, 0, -2, 4, 0, 0, 0 },
1395 { 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2 },
1396 { 2, 0, 0, -2, -1, 0, 0, -2, 0, 4, -5, 0, 0, 0 },
1397
1398 /* 401-410 */
1399 { 2, 0, 0, -2, -1, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1400 { 2, 0, -1, -1, -1, 0, 0, -1, 0, 0, 0, 0, 0, 0 },
1401 { 1, 0, 1, -1, 1, 0, 0, -1, 0, 0, 0, 0, 0, 0 },
1402 { 1, 0, 0, -1, -1, 0, 0, -2, 2, 0, 0, 0, 0, 0 },
1403 { 1, 0, -1, -1, -1, 0, 20,-20, 0, 0, 0, 0, 0, 0 },
1404 { 0, 0, 2, -2, 1, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1405 { 0, 0, 1, -1, 1, 0, 1, -2, 0, 0, 0, 0, 0, 0 },
1406 { 0, 0, 1, -1, 1, 0, -2, 1, 0, 0, 0, 0, 0, 0 },
1407 { 0, 0, 0, 0, 1, 0, 5, -8, 0, 0, 0, 0, 0, 0 },
1408 { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0 },
1409
1410 /* 411-420 */
1411 { 0, 0, 0, 0, 0, 0, 9,-11, 0, 0, 0, 0, 0, -1 },
1412 { 0, 0, 0, 0, 0, 0, 5, -3, 0, 0, 0, 0, 0, 1 },
1413 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -3, 0, 0, 0, -1 },
1414 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1 },
1415 { 0, 0, 0, 0, 0, 0, 6, -7, 0, 0, 0, 0, 0, 0 },
1416 { 0, 0, 0, 0, 0, 0, 0, 3, -2, 0, 0, 0, 0, 0 },
1417 { 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, 0, -2 },
1418 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, -2, 0, 0, 0 },
1419 { 0, 0, 1, -1, 2, 0, 0, -1, 0, -2, 5, 0, 0, 0 },
1420 { 0, 0, 0, 0, 0, 0, 0, 5, -7, 0, 0, 0, 0, 0 },
1421
1422 /* 421-430 */
1423 { 0, 0, 0, 0, 0, 0, 1, -3, 0, 0, 0, 0, 0, 0 },
1424 { 0, 0, 0, 0, 0, 0, 0, 5, -8, 0, 0, 0, 0, -2 },
1425 { 0, 0, 0, 0, 0, 0, 0, 2, -6, 0, 0, 0, 0, -2 },
1426 { 1, 0, 0, -2, 0, 0, 20,-21, 0, 0, 0, 0, 0, 0 },
1427 { 0, 0, 0, 0, 0, 0, 8,-12, 0, 0, 0, 0, 0, 0 },
1428 { 0, 0, 0, 0, 0, 0, 5, -6, 0, 0, 0, 0, 0, 0 },
1429 { 0, 0, 0, 0, 0, 0, 0, 4, -4, 0, 0, 0, 0, 0 },
1430 { 0, 0, 1, -1, 2, 0, 0, -1, 0, -1, 0, 0, 0, 0 },
1431 { 0, 0, 0, 0, 0, 0, 8,-12, 0, 0, 0, 0, 0, -2 },
1432 { 0, 0, 0, 0, 0, 0, 0, 9,-17, 0, 0, 0, 0, 0 },
1433
1434 /* 431-440 */
1435 { 0, 0, 0, 0, 0, 0, 0, 5, -6, 0, 0, 0, 0, 2 },
1436 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 1, 5, 0, 0, 2 },
1437 { 0, 0, 0, 0, 0, 0, 0, 4, -6, 0, 0, 0, 0, -2 },
1438 { 0, 0, 0, 0, 0, 0, 0, 2, -7, 0, 0, 0, 0, -2 },
1439 { 1, 0, 0, -1, 1, 0, 0, -3, 4, 0, 0, 0, 0, 0 },
1440 { 1, 0, -2, 0, -2, 0,-10, 3, 0, 0, 0, 0, 0, 0 },
1441 { 0, 0, 0, 0, 1, 0, 0, -9, 17, 0, 0, 0, 0, 0 },
1442 { 0, 0, 0, 0, 0, 0, 1, -4, 0, 0, 0, 0, 0, -2 },
1443 { 1, 0, -2, -2, -2, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1444 { 1, 0, -1, 1, -1, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1445
1446 /* 441-450 */
1447 { 0, 0, 2, -2, 2, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1448 { 0, 0, 1, -1, 2, 0, 0, -1, 0, 0, 1, 0, 0, 0 },
1449 { 0, 0, 1, -1, 2, 0, -5, 7, 0, 0, 0, 0, 0, 0 },
1450 { 0, 0, 0, 0, 1, 0, 0, 2, -2, 0, 0, 0, 0, 0 },
1451 { 0, 0, 0, 0, 0, 0, 4, -5, 0, 0, 0, 0, 0, -1 },
1452 { 0, 0, 0, 0, 0, 0, 3, -4, 0, 0, 0, 0, 0, -2 },
1453 { 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, 0, 0 },
1454 { 0, 0, 0, 0, 0, 0, 0, 5,-10, 0, 0, 0, 0, -2 },
1455 { 0, 0, 0, 0, 0, 0, 0, 4, 0, -4, 0, 0, 0, 2 },
1456 { 0, 0, 0, 0, 0, 0, 0, 2, 0, -5, 0, 0, 0, -2 },
1457
1458 /* 451-460 */
1459 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -5, 0, 0, 0, -2 },
1460 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -2, 5, 0, 0, 2 },
1461 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -2, 0, 0, 0, -2 },
1462 { 0, 0, 0, 0, 0, 0, 2, -3, 0, 0, 0, 0, 0, 1 },
1463 { 1, 0, 0, -2, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
1464 { 0, 0, 0, 0, 0, 0, 3, -7, 4, 0, 0, 0, 0, 0 },
1465 { 2, 0, 2, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1466 { 0, 0, 1, -1, -1, 0, 0, -1, 0, -1, 0, 0, 0, 0 },
1467 { 0, 0, 0, 0, 1, 0, 0, 1, 0, -2, 0, 0, 0, 0 },
1468 { 0, 0, 0, 0, 0, 0, 0, 6,-10, 0, 0, 0, 0, -2 },
1469
1470 /* 461-470 */
1471 { 1, 0, 0, -1, 1, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1472 { 0, 0, 2, -2, 1, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
1473 { 0, 0, 2, -2, 1, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
1474 { 0, 0, 2, -2, 1, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1475 { 0, 0, 2, -2, 1, 0, 0, -3, 0, 3, 0, 0, 0, 0 },
1476 { 0, 0, 2, -2, 1, 0, -5, 5, 0, 0, 0, 0, 0, 0 },
1477 { 0, 0, 1, -1, 1, 0, 1, -3, 0, 0, 0, 0, 0, 0 },
1478 { 0, 0, 1, -1, 1, 0, 0, -4, 6, 0, 0, 0, 0, 0 },
1479 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 0, 0, -1, 0, 0 },
1480 { 0, 0, 1, -1, 1, 0, -5, 6, 0, 0, 0, 0, 0, 0 },
1481
1482 /* 471-480 */
1483 { 0, 0, 0, 0, 1, 0, 3, -4, 0, 0, 0, 0, 0, 0 },
1484 { 0, 0, 0, 0, 1, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1485 { 0, 0, 0, 0, 0, 0, 7,-10, 0, 0, 0, 0, 0, -1 },
1486 { 0, 0, 0, 0, 0, 0, 5, -5, 0, 0, 0, 0, 0, 1 },
1487 { 0, 0, 0, 0, 0, 0, 4, -5, 0, 0, 0, 0, 0, -2 },
1488 { 0, 0, 0, 0, 0, 0, 3, -8, 0, 0, 0, 0, 0, -2 },
1489 { 0, 0, 0, 0, 0, 0, 2, -5, 0, 0, 0, 0, 0, -1 },
1490 { 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0, 0, 0, -1 },
1491 { 0, 0, 0, 0, 0, 0, 0, 7, -9, 0, 0, 0, 0, 2 },
1492 { 0, 0, 0, 0, 0, 0, 0, 7, -8, 0, 0, 0, 0, 2 },
1493
1494 /* 481-490 */
1495 { 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 2 },
1496 { 0, 0, 0, 0, 0, 0, 0, 3, -8, 3, 0, 0, 0, -2 },
1497 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, -2, 0, 0, 1 },
1498 { 0, 0, 0, 0, 0, 0, 0, 2, -4, 0, 0, 0, 0, 1 },
1499 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -1 },
1500 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, -1 },
1501 { 2, 0, 0, -2, -1, 0, 0, -6, 8, 0, 0, 0, 0, 0 },
1502 { 2, 0, -1, -1, 1, 0, 0, 3, -7, 0, 0, 0, 0, 0 },
1503 { 0, 0, 2, -2, 1, 0, 0, -7, 9, 0, 0, 0, 0, 0 },
1504 { 0, 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0, 0, -1 },
1505
1506 /* 491-500 */
1507 { 0, 0, 1, -1, 2, 0, -8, 12, 0, 0, 0, 0, 0, 0 },
1508 { 1, 0, 0, 0, 0, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1509 { 1, 0, 0, -2, 0, 0, 2, -2, 0, 0, 0, 0, 0, 0 },
1510 { 0, 0, 0, 0, 0, 0, 7, -8, 0, 0, 0, 0, 0, 0 },
1511 { 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0 },
1512 { 2, 0, 0, -2, 1, 0, 0, -5, 6, 0, 0, 0, 0, 0 },
1513 { 2, 0, 0, -2, -1, 0, 0, -2, 0, 3, -1, 0, 0, 0 },
1514 { 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1515 { 1, 0, 0, -2, 1, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1516 { 1, 0, 0, -2, -1, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1517
1518 /* 501-510 */
1519 { 1, 0, 0, -1, -1, 0, 0, -3, 4, 0, 0, 0, 0, 0 },
1520 { 1, 0, -1, 0, -1, 0, -3, 5, 0, 0, 0, 0, 0, 0 },
1521 { 0, 0, 2, -2, 1, 0, 0, -4, 4, 0, 0, 0, 0, 0 },
1522 { 0, 0, 2, -2, 1, 0, 0, -2, 0, 0, 0, 0, 0, 0 },
1523 { 0, 0, 2, -2, 1, 0, -8, 11, 0, 0, 0, 0, 0, 0 },
1524 { 0, 0, 2, -2, 0, 0, 0, -9, 13, 0, 0, 0, 0, 0 },
1525 { 0, 0, 1, 1, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1526 { 0, 0, 1, -1, 1, 0, 0, 1, -4, 0, 0, 0, 0, 0 },
1527 { 0, 0, 1, -1, 1, 0, 0, -1, 0, 1, -3, 0, 0, 0 },
1528 { 0, 0, 0, 0, 1, 0, 0, 7,-13, 0, 0, 0, 0, 0 },
1529
1530 /* 511-520 */
1531 { 0, 0, 0, 0, 1, 0, 0, 2, 0, -2, 0, 0, 0, 0 },
1532 { 0, 0, 0, 0, 1, 0, 0, -2, 2, 0, 0, 0, 0, 0 },
1533 { 0, 0, 0, 0, 1, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1534 { 0, 0, 0, 0, 0, 1, 0, -4, 0, 0, 0, 0, 0, 0 },
1535 { 0, 0, 0, 0, 0, 0, 7,-11, 0, 0, 0, 0, 0, -1 },
1536 { 0, 0, 0, 0, 0, 0, 6, -6, 0, 0, 0, 0, 0, 1 },
1537 { 0, 0, 0, 0, 0, 0, 6, -4, 0, 0, 0, 0, 0, 1 },
1538 { 0, 0, 0, 0, 0, 0, 5, -6, 0, 0, 0, 0, 0, -1 },
1539 { 0, 0, 0, 0, 0, 0, 4, -2, 0, 0, 0, 0, 0, 0 },
1540 { 0, 0, 0, 0, 0, 0, 3, -4, 0, 0, 0, 0, 0, 1 },
1541
1542 /* 521-530 */
1543 { 0, 0, 0, 0, 0, 0, 1, -4, 0, 0, 0, 0, 0, -1 },
1544 { 0, 0, 0, 0, 0, 0, 0, 9,-17, 0, 0, 0, 0, -2 },
1545 { 0, 0, 0, 0, 0, 0, 0, 7, -7, 0, 0, 0, 0, 2 },
1546 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 3, 0, 0, 0, 1 },
1547 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 3, 0, 0, 0, -1 },
1548 { 0, 0, 0, 0, 0, 0, 0, 4, -8, 0, 0, 0, 0, 0 },
1549 { 0, 0, 0, 0, 0, 0, 0, 4, -7, 0, 0, 0, 0, -1 },
1550 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1 },
1551 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -4, 0, 0, 0, 0 },
1552 { 2, 0, 0, -2, 0, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1553
1554 /* 531-540 */
1555 { 2, 0, 0, -2, 0, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1556 { 1, 0, 0, 0, 0, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
1557 { 1, 0, 0, 0, 0, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1558 { 1, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0 },
1559 { 1, 0, 0, -2, 0, 0, 17,-16, 0, -2, 0, 0, 0, 0 },
1560 { 1, 0, 0, -1, 0, 0, 0, -2, 2, 0, 0, 0, 0, 0 },
1561 { 0, 0, 2, -2, 0, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1562 { 0, 0, 0, 0, 0, 0, 0, 6, -9, 0, 0, 0, 0, 0 },
1563 { 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0 },
1564 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -4, 0, 0, 0, 0 },
1565
1566 /* 541-550 */
1567 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -2, -2 },
1568 { 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 2 },
1569 { 2, 0, 0, -2, 0, 0, 0, -4, 4, 0, 0, 0, 0, 0 },
1570 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 2, 2, 0, 0, 0 },
1571 { 1, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
1572 { 1, 0, 0, 0, 0, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1573 { 1, 0, 0, 0, 0, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1574 { 1, 0, 0, -2, 0, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
1575 { 1, 0, 0, -2, 0, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
1576 { 1, 0, 0, -2, 0, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1577
1578 /* 551-560 */
1579 { 1, 0, 0, -2, 0, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1580 { 0, 0, 2, -2, 0, 0, -4, 4, 0, 0, 0, 0, 0, 0 },
1581 { 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1582 { 0, 0, 1, -1, 0, 0, 3, -6, 0, 0, 0, 0, 0, 0 },
1583 { 0, 0, 1, -1, 0, 0, 0, -2, 2, 0, 0, 0, 0, 0 },
1584 { 0, 0, 1, -1, 0, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1585 { 0, 0, 1, -1, 0, 0, 0, -1, 0, 0, 1, 0, 0, 0 },
1586 { 0, 0, 1, -1, 0, 0, -4, 5, 0, 0, 0, 0, 0, 0 },
1587 { 0, 0, 1, -1, 0, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1588 { 0, 0, 0, 2, 0, 0, 0, -1, 0, 1, 0, 0, 0, 0 },
1589
1590 /* 561-570 */
1591 { 0, 0, 0, 0, 0, 0, 8, -9, 0, 0, 0, 0, 0, 0 },
1592 { 0, 0, 0, 0, 0, 0, 3, -6, 0, 0, 0, 0, 0, 0 },
1593 { 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0 },
1594 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, -5, 0, 0, 0 },
1595 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -2, 0, 0, 0 },
1596 { 2, 0, -2, -2, -2, 0, 0, -2, 0, 2, 0, 0, 0, 0 },
1597 { 1, 0, 0, 0, 1, 0,-10, 3, 0, 0, 0, 0, 0, 0 },
1598 { 1, 0, 0, 0, -1, 0,-10, 3, 0, 0, 0, 0, 0, 0 },
1599 { 0, 0, 2, 0, 2, 0, 2, -3, 0, 0, 0, 0, 0, 0 },
1600 { 0, 0, 2, 0, 2, 0, 2, -2, 0, 0, 0, 0, 0, 0 },
1601
1602 /* 571-580 */
1603 { 0, 0, 2, 0, 2, 0, -2, 3, 0, 0, 0, 0, 0, 0 },
1604 { 0, 0, 2, 0, 2, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1605 { 0, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0 },
1606 { 0, 0, 0, 0, 1, 0, 0, -1, 0, 2, 0, 0, 0, 0 },
1607 { 2, 0, 2, -2, 2, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1608 { 2, 0, 1, -3, 1, 0, -6, 7, 0, 0, 0, 0, 0, 0 },
1609 { 2, 0, 0, -2, 0, 0, 2, -5, 0, 0, 0, 0, 0, 0 },
1610 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 5, -5, 0, 0, 0 },
1611 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 1, 5, 0, 0, 0 },
1612 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 0, 5, 0, 0, 0 },
1613
1614 /* 581-590 */
1615 { 2, 0, 0, -2, 0, 0, 0, -2, 0, 0, 2, 0, 0, 0 },
1616 { 2, 0, 0, -2, 0, 0, -4, 4, 0, 0, 0, 0, 0, 0 },
1617 { 2, 0, -2, 0, -2, 0, 0, 5, -9, 0, 0, 0, 0, 0 },
1618 { 2, 0, -1, -1, 0, 0, 0, -1, 0, 3, 0, 0, 0, 0 },
1619 { 1, 0, 2, 0, 2, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
1620 { 1, 0, 2, 0, 2, 0, 0, 4, -8, 3, 0, 0, 0, 0 },
1621 { 1, 0, 2, 0, 2, 0, 0, -4, 8, -3, 0, 0, 0, 0 },
1622 { 1, 0, 2, 0, 2, 0, -1, 1, 0, 0, 0, 0, 0, 0 },
1623 { 1, 0, 2, -2, 2, 0, -3, 3, 0, 0, 0, 0, 0, 0 },
1624 { 1, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
1625
1626 /* 591-600 */
1627 { 1, 0, 0, 0, 0, 0, 0, -2, 0, 3, 0, 0, 0, 0 },
1628 { 1, 0, 0, -2, 0, 0, 0, 2, 0, -2, 0, 0, 0, 0 },
1629 { 1, 0, -2, -2, -2, 0, 0, 1, 0, -1, 0, 0, 0, 0 },
1630 { 1, 0, -1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1631 { 1, 0, -1, -1, 0, 0, 0, 8,-15, 0, 0, 0, 0, 0 },
1632 { 0, 0, 2, 2, 2, 0, 0, 2, 0, -2, 0, 0, 0, 0 },
1633 { 0, 0, 2, -2, 1, 0, 1, -1, 0, 0, 0, 0, 0, 0 },
1634 { 0, 0, 2, -2, 1, 0, 0, -2, 0, 1, 0, 0, 0, 0 },
1635 { 0, 0, 2, -2, 1, 0, 0,-10, 15, 0, 0, 0, 0, 0 },
1636 { 0, 0, 2, -2, 0, -1, 0, 2, 0, 0, 0, 0, 0, 0 },
1637
1638 /* 601-610 */
1639 { 0, 0, 1, -1, 2, 0, 0, -1, 0, 0, -1, 0, 0, 0 },
1640 { 0, 0, 1, -1, 2, 0, -3, 4, 0, 0, 0, 0, 0, 0 },
1641 { 0, 0, 1, -1, 1, 0, -4, 6, 0, 0, 0, 0, 0, 0 },
1642 { 0, 0, 1, -1, 1, 0, -1, 2, 0, 0, 0, 0, 0, 0 },
1643 { 0, 0, 1, -1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 },
1644 { 0, 0, 1, -1, 0, 0, 0, -1, 0, 0, -2, 0, 0, 0 },
1645 { 0, 0, 1, -1, 0, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1646 { 0, 0, 1, -1, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0 },
1647 { 0, 0, 1, -1, -1, 0, -5, 7, 0, 0, 0, 0, 0, 0 },
1648 { 0, 0, 0, 2, 0, 0, 0, 2, 0, -2, 0, 0, 0, 0 },
1649
1650 /* 611-620 */
1651 { 0, 0, 0, 2, 0, 0, -2, 2, 0, 0, 0, 0, 0, 0 },
1652 { 0, 0, 0, 0, 2, 0, -3, 5, 0, 0, 0, 0, 0, 0 },
1653 { 0, 0, 0, 0, 1, 0, -1, 2, 0, 0, 0, 0, 0, 0 },
1654 { 0, 0, 0, 0, 0, 0, 9,-13, 0, 0, 0, 0, 0, -2 },
1655 { 0, 0, 0, 0, 0, 0, 8,-14, 0, 0, 0, 0, 0, -2 },
1656 { 0, 0, 0, 0, 0, 0, 8,-11, 0, 0, 0, 0, 0, -1 },
1657 { 0, 0, 0, 0, 0, 0, 6, -9, 0, 0, 0, 0, 0, 0 },
1658 { 0, 0, 0, 0, 0, 0, 6, -8, 0, 0, 0, 0, 0, 0 },
1659 { 0, 0, 0, 0, 0, 0, 6, -7, 0, 0, 0, 0, 0, -1 },
1660 { 0, 0, 0, 0, 0, 0, 5, -6, 0, 0, 0, 0, 0, -2 },
1661
1662 /* 621-630 */
1663 { 0, 0, 0, 0, 0, 0, 5, -6, -4, 0, 0, 0, 0, -2 },
1664 { 0, 0, 0, 0, 0, 0, 5, -4, 0, 0, 0, 0, 0, 2 },
1665 { 0, 0, 0, 0, 0, 0, 4, -8, 0, 0, 0, 0, 0, -2 },
1666 { 0, 0, 0, 0, 0, 0, 4, -5, 0, 0, 0, 0, 0, 0 },
1667 { 0, 0, 0, 0, 0, 0, 3, -3, 0, 2, 0, 0, 0, 2 },
1668 { 0, 0, 0, 0, 0, 0, 3, -1, 0, 0, 0, 0, 0, 0 },
1669 { 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0 },
1670 { 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, -2 },
1671 { 0, 0, 0, 0, 0, 0, 0, 7,-12, 0, 0, 0, 0, -2 },
1672 { 0, 0, 0, 0, 0, 0, 0, 6, -9, 0, 0, 0, 0, -2 },
1673
1674 /* 631-640 */
1675 { 0, 0, 0, 0, 0, 0, 0, 6, -8, 1, 5, 0, 0, 2 },
1676 { 0, 0, 0, 0, 0, 0, 0, 6, -4, 0, 0, 0, 0, 2 },
1677 { 0, 0, 0, 0, 0, 0, 0, 6,-10, 0, 0, 0, 0, 0 },
1678 { 0, 0, 0, 0, 0, 0, 0, 5, 0, -4, 0, 0, 0, 2 },
1679 { 0, 0, 0, 0, 0, 0, 0, 5, -9, 0, 0, 0, 0, -1 },
1680 { 0, 0, 0, 0, 0, 0, 0, 5, -8, 3, 0, 0, 0, 2 },
1681 { 0, 0, 0, 0, 0, 0, 0, 5, -7, 0, 0, 0, 0, -2 },
1682 { 0, 0, 0, 0, 0, 0, 0, 5, -6, 0, 0, 0, 0, 0 },
1683 { 0, 0, 0, 0, 0, 0, 0, 5,-16, 4, 5, 0, 0, -2 },
1684 { 0, 0, 0, 0, 0, 0, 0, 5,-13, 0, 0, 0, 0, -2 },
1685
1686 /* 641-650 */
1687 { 0, 0, 0, 0, 0, 0, 0, 3, 0, -5, 0, 0, 0, -2 },
1688 { 0, 0, 0, 0, 0, 0, 0, 3, -9, 0, 0, 0, 0, -2 },
1689 { 0, 0, 0, 0, 0, 0, 0, 3, -7, 0, 0, 0, 0, -2 },
1690 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 2 },
1691 { 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, -3, 0, 0, 0 },
1692 { 0, 0, 0, 0, 0, 0, 0, 2, -8, 1, 5, 0, 0, -2 },
1693 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, -5, 0, 0, 0 },
1694 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 2, 0, 0, 2 },
1695 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, -3, 0, 0, 0 },
1696 { 0, 0, 0, 0, 0, 0, 0, 1, 0, -3, 5, 0, 0, 0 },
1697
1698 /* 651-NFPL */
1699 { 0, 0, 0, 0, 0, 0, 0, 1, -3, 0, 0, 0, 0, 0 },
1700 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, -6, 3, 0, -2 },
1701 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -2, 0, 0, 0 },
1702 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0 },
1703 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2 },
1704 { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 }
1705 };
1706
1707/* Number of frequencies: planetary */
1708 static const int NFPL = (int) (sizeof mfapl / sizeof (int) / 14);
1709
1710/* Pointers into amplitudes array, one pointer per frequency */
1711 static const int nc[] = {
1712
1713 /* 1-100 */
1714 1, 21, 37, 51, 65, 79, 91, 103, 115, 127,
1715 139, 151, 163, 172, 184, 196, 207, 219, 231, 240,
1716 252, 261, 273, 285, 297, 309, 318, 327, 339, 351,
1717 363, 372, 384, 396, 405, 415, 423, 435, 444, 452,
1718 460, 467, 474, 482, 490, 498, 506, 513, 521, 528,
1719 536, 543, 551, 559, 566, 574, 582, 590, 597, 605,
1720 613, 620, 628, 636, 644, 651, 658, 666, 674, 680,
1721 687, 695, 702, 710, 717, 725, 732, 739, 746, 753,
1722 760, 767, 774, 782, 790, 798, 805, 812, 819, 826,
1723 833, 840, 846, 853, 860, 867, 874, 881, 888, 895,
1724
1725 /* 101-200 */
1726 901, 908, 914, 921, 928, 934, 941, 948, 955, 962,
1727 969, 976, 982, 989, 996, 1003, 1010, 1017, 1024, 1031,
1728 1037, 1043, 1050, 1057, 1064, 1071, 1078, 1084, 1091, 1098,
1729 1104, 1112, 1118, 1124, 1131, 1138, 1145, 1151, 1157, 1164,
1730 1171, 1178, 1185, 1192, 1199, 1205, 1212, 1218, 1226, 1232,
1731 1239, 1245, 1252, 1259, 1266, 1272, 1278, 1284, 1292, 1298,
1732 1304, 1310, 1316, 1323, 1329, 1335, 1341, 1347, 1353, 1359,
1733 1365, 1371, 1377, 1383, 1389, 1396, 1402, 1408, 1414, 1420,
1734 1426, 1434, 1440, 1446, 1452, 1459, 1465, 1471, 1477, 1482,
1735 1488, 1493, 1499, 1504, 1509, 1514, 1520, 1527, 1532, 1538,
1736
1737 /* 201-300 */
1738 1543, 1548, 1553, 1558, 1564, 1569, 1574, 1579, 1584, 1589,
1739 1594, 1596, 1598, 1600, 1602, 1605, 1608, 1610, 1612, 1617,
1740 1619, 1623, 1625, 1627, 1629, 1632, 1634, 1640, 1642, 1644,
1741 1646, 1648, 1650, 1652, 1654, 1658, 1660, 1662, 1664, 1668,
1742 1670, 1672, 1673, 1675, 1679, 1681, 1683, 1684, 1686, 1688,
1743 1690, 1693, 1695, 1697, 1701, 1703, 1705, 1707, 1709, 1711,
1744 1712, 1715, 1717, 1721, 1723, 1725, 1727, 1729, 1731, 1733,
1745 1735, 1737, 1739, 1741, 1743, 1745, 1747, 1749, 1751, 1753,
1746 1755, 1757, 1759, 1761, 1762, 1764, 1766, 1768, 1769, 1771,
1747 1773, 1775, 1777, 1779, 1781, 1783, 1785, 1787, 1788, 1790,
1748
1749 /* 301-400 */
1750 1792, 1794, 1796, 1798, 1800, 1802, 1804, 1806, 1807, 1809,
1751 1811, 1815, 1817, 1819, 1821, 1823, 1825, 1827, 1829, 1831,
1752 1833, 1835, 1837, 1839, 1840, 1842, 1844, 1848, 1850, 1852,
1753 1854, 1856, 1858, 1859, 1860, 1862, 1864, 1866, 1868, 1869,
1754 1871, 1873, 1875, 1877, 1879, 1881, 1883, 1885, 1887, 1889,
1755 1891, 1892, 1896, 1898, 1900, 1901, 1903, 1905, 1907, 1909,
1756 1910, 1911, 1913, 1915, 1919, 1921, 1923, 1927, 1929, 1931,
1757 1933, 1935, 1937, 1939, 1943, 1945, 1947, 1948, 1949, 1951,
1758 1953, 1955, 1957, 1958, 1960, 1962, 1964, 1966, 1968, 1970,
1759 1971, 1973, 1974, 1975, 1977, 1979, 1980, 1981, 1982, 1984,
1760
1761 /* 401-500 */
1762 1986, 1988, 1990, 1992, 1994, 1995, 1997, 1999, 2001, 2003,
1763 2005, 2007, 2008, 2009, 2011, 2013, 2015, 2017, 2019, 2021,
1764 2023, 2024, 2025, 2027, 2029, 2031, 2033, 2035, 2037, 2041,
1765 2043, 2045, 2046, 2047, 2049, 2051, 2053, 2055, 2056, 2057,
1766 2059, 2061, 2063, 2065, 2067, 2069, 2070, 2071, 2072, 2074,
1767 2076, 2078, 2080, 2082, 2084, 2086, 2088, 2090, 2092, 2094,
1768 2095, 2096, 2097, 2099, 2101, 2105, 2106, 2107, 2108, 2109,
1769 2110, 2111, 2113, 2115, 2119, 2121, 2123, 2125, 2127, 2129,
1770 2131, 2133, 2135, 2136, 2137, 2139, 2141, 2143, 2145, 2147,
1771 2149, 2151, 2153, 2155, 2157, 2159, 2161, 2163, 2165, 2167,
1772
1773 /* 501-600 */
1774 2169, 2171, 2173, 2175, 2177, 2179, 2181, 2183, 2185, 2186,
1775 2187, 2188, 2192, 2193, 2195, 2197, 2199, 2201, 2203, 2205,
1776 2207, 2209, 2211, 2213, 2217, 2219, 2221, 2223, 2225, 2227,
1777 2229, 2231, 2233, 2234, 2235, 2236, 2237, 2238, 2239, 2240,
1778 2241, 2244, 2246, 2248, 2250, 2252, 2254, 2256, 2258, 2260,
1779 2262, 2264, 2266, 2268, 2270, 2272, 2274, 2276, 2278, 2280,
1780 2282, 2284, 2286, 2288, 2290, 2292, 2294, 2296, 2298, 2300,
1781 2302, 2303, 2304, 2305, 2306, 2307, 2309, 2311, 2313, 2315,
1782 2317, 2319, 2321, 2323, 2325, 2327, 2329, 2331, 2333, 2335,
1783 2337, 2341, 2343, 2345, 2347, 2349, 2351, 2352, 2355, 2356,
1784
1785 /* 601-700 */
1786 2357, 2358, 2359, 2361, 2363, 2364, 2365, 2366, 2367, 2368,
1787 2369, 2370, 2371, 2372, 2373, 2374, 2376, 2378, 2380, 2382,
1788 2384, 2385, 2386, 2387, 2388, 2389, 2390, 2391, 2392, 2393,
1789 2394, 2395, 2396, 2397, 2398, 2399, 2400, 2401, 2402, 2403,
1790 2404, 2405, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2413,
1791 2414, 2415, 2417, 2418, 2430, 2438, 2445, 2453, 2460, 2468,
1792 2474, 2480, 2488, 2496, 2504, 2512, 2520, 2527, 2535, 2543,
1793 2550, 2558, 2566, 2574, 2580, 2588, 2596, 2604, 2612, 2619,
1794 2627, 2634, 2642, 2648, 2656, 2664, 2671, 2679, 2685, 2693,
1795 2701, 2709, 2717, 2725, 2733, 2739, 2747, 2753, 2761, 2769,
1796
1797 /* 701-800 */
1798 2777, 2785, 2793, 2801, 2809, 2817, 2825, 2833, 2841, 2848,
1799 2856, 2864, 2872, 2878, 2884, 2892, 2898, 2906, 2914, 2922,
1800 2930, 2938, 2944, 2952, 2958, 2966, 2974, 2982, 2988, 2996,
1801 3001, 3009, 3017, 3025, 3032, 3039, 3045, 3052, 3059, 3067,
1802 3069, 3076, 3083, 3090, 3098, 3105, 3109, 3111, 3113, 3120,
1803 3124, 3128, 3132, 3136, 3140, 3144, 3146, 3150, 3158, 3161,
1804 3165, 3166, 3168, 3172, 3176, 3180, 3182, 3185, 3189, 3193,
1805 3194, 3197, 3200, 3204, 3208, 3212, 3216, 3219, 3221, 3222,
1806 3226, 3230, 3234, 3238, 3242, 3243, 3247, 3251, 3254, 3258,
1807 3262, 3266, 3270, 3274, 3275, 3279, 3283, 3287, 3289, 3293,
1808
1809 /* 801-900 */
1810 3296, 3300, 3303, 3307, 3311, 3315, 3319, 3321, 3324, 3327,
1811 3330, 3334, 3338, 3340, 3342, 3346, 3350, 3354, 3358, 3361,
1812 3365, 3369, 3373, 3377, 3381, 3385, 3389, 3393, 3394, 3398,
1813 3402, 3406, 3410, 3413, 3417, 3421, 3425, 3429, 3433, 3435,
1814 3439, 3443, 3446, 3450, 3453, 3457, 3458, 3461, 3464, 3468,
1815 3472, 3476, 3478, 3481, 3485, 3489, 3493, 3497, 3501, 3505,
1816 3507, 3511, 3514, 3517, 3521, 3524, 3525, 3527, 3529, 3533,
1817 3536, 3540, 3541, 3545, 3548, 3551, 3555, 3559, 3563, 3567,
1818 3569, 3570, 3574, 3576, 3578, 3582, 3586, 3590, 3593, 3596,
1819 3600, 3604, 3608, 3612, 3616, 3620, 3623, 3626, 3630, 3632,
1820
1821 /* 901-1000 */
1822 3636, 3640, 3643, 3646, 3648, 3652, 3656, 3660, 3664, 3667,
1823 3669, 3671, 3675, 3679, 3683, 3687, 3689, 3693, 3694, 3695,
1824 3699, 3703, 3705, 3707, 3710, 3713, 3717, 3721, 3725, 3729,
1825 3733, 3736, 3740, 3744, 3748, 3752, 3754, 3757, 3759, 3763,
1826 3767, 3770, 3773, 3777, 3779, 3783, 3786, 3790, 3794, 3798,
1827 3801, 3805, 3809, 3813, 3817, 3821, 3825, 3827, 3831, 3835,
1828 3836, 3837, 3840, 3844, 3848, 3852, 3856, 3859, 3863, 3867,
1829 3869, 3871, 3875, 3879, 3883, 3887, 3890, 3894, 3898, 3901,
1830 3905, 3909, 3913, 3917, 3921, 3922, 3923, 3924, 3926, 3930,
1831 3932, 3936, 3938, 3940, 3944, 3948, 3952, 3956, 3959, 3963,
1832
1833 /* 1001-1100 */
1834 3965, 3969, 3973, 3977, 3979, 3981, 3982, 3986, 3989, 3993,
1835 3997, 4001, 4004, 4006, 4009, 4012, 4016, 4020, 4024, 4026,
1836 4028, 4032, 4036, 4040, 4044, 4046, 4050, 4054, 4058, 4060,
1837 4062, 4063, 4064, 4068, 4071, 4075, 4077, 4081, 4083, 4087,
1838 4089, 4091, 4095, 4099, 4101, 4103, 4105, 4107, 4111, 4115,
1839 4119, 4123, 4127, 4129, 4131, 4135, 4139, 4141, 4143, 4145,
1840 4149, 4153, 4157, 4161, 4165, 4169, 4173, 4177, 4180, 4183,
1841 4187, 4191, 4195, 4198, 4201, 4205, 4209, 4212, 4213, 4216,
1842 4217, 4221, 4223, 4226, 4230, 4234, 4236, 4240, 4244, 4248,
1843 4252, 4256, 4258, 4262, 4264, 4266, 4268, 4270, 4272, 4276,
1844
1845 /* 1101-1200 */
1846 4279, 4283, 4285, 4287, 4289, 4293, 4295, 4299, 4300, 4301,
1847 4305, 4309, 4313, 4317, 4319, 4323, 4325, 4329, 4331, 4333,
1848 4335, 4337, 4341, 4345, 4349, 4351, 4353, 4357, 4361, 4365,
1849 4367, 4369, 4373, 4377, 4381, 4383, 4387, 4389, 4391, 4395,
1850 4399, 4403, 4407, 4411, 4413, 4414, 4415, 4418, 4419, 4421,
1851 4423, 4427, 4429, 4431, 4433, 4435, 4437, 4439, 4443, 4446,
1852 4450, 4452, 4456, 4458, 4460, 4462, 4466, 4469, 4473, 4477,
1853 4481, 4483, 4487, 4489, 4491, 4493, 4497, 4499, 4501, 4504,
1854 4506, 4510, 4513, 4514, 4515, 4518, 4521, 4522, 4525, 4526,
1855 4527, 4530, 4533, 4534, 4537, 4541, 4542, 4543, 4544, 4545,
1856
1857 /* 1201-1300 */
1858 4546, 4547, 4550, 4553, 4554, 4555, 4558, 4561, 4564, 4567,
1859 4568, 4571, 4574, 4575, 4578, 4581, 4582, 4585, 4586, 4588,
1860 4590, 4592, 4596, 4598, 4602, 4604, 4608, 4612, 4613, 4616,
1861 4619, 4622, 4623, 4624, 4625, 4626, 4629, 4632, 4633, 4636,
1862 4639, 4640, 4641, 4642, 4643, 4644, 4645, 4648, 4649, 4650,
1863 4651, 4652, 4653, 4656, 4657, 4660, 4661, 4664, 4667, 4670,
1864 4671, 4674, 4675, 4676, 4677, 4678, 4681, 4682, 4683, 4684,
1865 4687, 4688, 4689, 4692, 4693, 4696, 4697, 4700, 4701, 4702,
1866 4703, 4704, 4707, 4708, 4711, 4712, 4715, 4716, 4717, 4718,
1867 4719, 4720, 4721, 4722, 4723, 4726, 4729, 4730, 4733, 4736,
1868
1869 /* 1301-(NFLS+NFPL) */
1870 4737, 4740, 4741, 4742, 4745, 4746, 4749, 4752, 4753
1871 };
1872
1873/* Amplitude coefficients (microarcsec); indexed using the nc array. */
1874 static const double a[] = {
1875
1876 /* 1-105 */
1877 -6844318.44, 9205236.26,1328.67,1538.18, 205833.11,
1878 153041.79, -3309.73, 853.32,2037.98, -2301.27,
1879 81.46, 120.56, -20.39, -15.22, 1.73, -1.61, -0.10, 0.11,
1880 -0.02, -0.02, -523908.04, 573033.42,-544.75,-458.66,
1881 12814.01, 11714.49, 198.97,-290.91, 155.74,-143.27,
1882 -2.75, -1.03, -1.27, -1.16, 0.00, -0.01, -90552.22,
1883 97846.69, 111.23, 137.41,2187.91,2024.68, 41.44, -51.26,
1884 26.92, -24.46, -0.46, -0.28, -0.22, -0.20, 82168.76,
1885 -89618.24, -27.64, -29.05, -2004.36, -1837.32,
1886 -36.07, 48.00, -24.43, 22.41, 0.47, 0.24, 0.20, 0.18,
1887 58707.02,7387.02, 470.05,-192.40, 164.33, -1312.21,
1888 -179.73, -28.93, -17.36, -1.83, -0.50, 3.57, 0.00, 0.13,
1889 -20557.78, 22438.42, -20.84, -17.40, 501.82, 459.68,
1890 59.20, -67.30, 6.08, -5.61, -1.36, -1.19, 28288.28,
1891 -674.99, -34.69, 35.80, -15.07,-632.54, -11.19, 0.78, -8.41,
1892 0.17, 0.01, 0.07, -15406.85, 20069.50, 15.12,
1893
1894 /* 106-219 */
1895 31.80, 448.76, 344.50, -5.77, 1.41, 4.59, -5.02, 0.17,
1896 0.24, -11991.74, 12902.66, 32.46, 36.70, 288.49,
1897 268.14, 5.70, -7.06, 3.57, -3.23, -0.06, -0.04,
1898 -8584.95, -9592.72, 4.42, -13.20,-214.50, 192.06,
1899 23.87, 29.83, 2.54, 2.40, 0.60, -0.48,5095.50,
1900 -6918.22, 7.19, 3.92,-154.91,-113.94, 2.86, -1.04,
1901 -1.52, 1.73, -0.07, -0.10, -4910.93, -5331.13,
1902 0.76, 0.40,-119.21, 109.81, 2.16, 3.20, 1.46, 1.33,
1903 0.04, -0.02, -6245.02,-123.48, -6.68, -8.20, -2.76,
1904 139.64, 2.71, 0.15, 1.86,2511.85, -3323.89, 1.07,
1905 -0.90, -74.33, -56.17, 1.16, -0.01, -0.75, 0.83, -0.02,
1906 -0.04,2307.58,3143.98, -7.52, 7.50, 70.31, -51.60, 1.46,
1907 0.16, -0.69, -0.79, 0.02, -0.05,2372.58,2554.51, 5.93,
1908 -6.60, 57.12, -53.05, -0.96, -1.24, -0.71, -0.64, -0.01,
1909 -2053.16,2636.13, 5.13, 7.80, 58.94, 45.91, -0.42,
1910 -0.12, 0.61, -0.66, 0.02, 0.03, -1825.49,
1911
1912 /* 220-339 */
1913 -2423.59, 1.23, -2.00, -54.19, 40.82, -1.07, -1.02,
1914 0.54, 0.61, -0.04, 0.04,2521.07,-122.28, -5.97, 2.90,
1915 -2.73, -56.37, -0.82, 0.13, -0.75, -1534.09,1645.01,
1916 6.29, 6.80, 36.78, 34.30, 0.92, -1.25, 0.46, -0.41,
1917 -0.02, -0.01,1898.27, 47.70, -0.72, 2.50, 1.07, -42.45,
1918 -0.94, 0.02, -0.56, -1292.02, -1387.00, 0.00,
1919 0.00, -31.01, 28.89, 0.68, 0.00, 0.38, 0.35, -0.01,
1920 -0.01, -1234.96,1323.81, 5.21, 5.90, 29.60, 27.61,
1921 0.74, -1.22, 0.37, -0.33, -0.02, -0.01,1137.48,
1922 -1233.89, -0.04, -0.30, -27.59, -25.43, -0.61, 1.00,
1923 -0.34, 0.31, 0.01, 0.01,-813.13, -1075.60, 0.40,
1924 0.30, -24.05, 18.18, -0.40, -0.01, 0.24, 0.27, -0.01,
1925 0.01,1163.22, -60.90, -2.94, 1.30, -1.36, -26.01, -0.58,
1926 0.07, -0.35,1029.70, -55.55, -2.63, 1.10, -1.25, -23.02,
1927 -0.52, 0.06, -0.31,-556.26, 852.85, 3.16, -4.48, 19.06,
1928 12.44, -0.81, -0.27, 0.17, -0.21, 0.00, 0.02,-603.52,
1929
1930 /* 340-467 */
1931 -800.34, 0.44, 0.10, -17.90, 13.49, -0.08, -0.01, 0.18,
1932 0.20, -0.01, 0.01,-628.24, 684.99, -0.64, -0.50, 15.32,
1933 14.05, 3.18, -4.19, 0.19, -0.17, -0.09, -0.07,-866.48,
1934 -16.26, 0.52, -1.30, -0.36, 19.37, 0.43, -0.01, 0.26,
1935 -512.37, 695.54, -1.47, -1.40, 15.55, 11.46, -0.16, 0.03,
1936 0.15, -0.17, 0.01, 0.01, 506.65, 643.75, 2.54, -2.62,
1937 14.40, -11.33, -0.77, -0.06, -0.15, -0.16, 0.00, 0.01,
1938 664.57, 16.81, -0.40, 1.00, 0.38, -14.86, -3.71, -0.09,
1939 -0.20, 405.91, 522.11, 0.99, -1.50, 11.67, -9.08, -0.25,
1940 -0.02, -0.12, -0.13,-305.78, 326.60, 1.75, 1.90, 7.30,
1941 6.84, 0.20, -0.04, 300.99,-325.03, -0.44, -0.50, -7.27,
1942 -6.73, -1.01, 0.01, 0.00, 0.08, 0.00, 0.02, 438.51,
1943 10.47, -0.56, -0.20, 0.24, -9.81, -0.24, 0.01, -0.13,
1944 -264.02, 335.24, 0.99, 1.40, 7.49, 5.90, -0.27, -0.02,
1945 284.09, 307.03, 0.32, -0.40, 6.87, -6.35, -0.99, -0.01,
1946 -250.54, 327.11, 0.08, 0.40, 7.31, 5.60, -0.30, 230.72,
1947
1948 /* 468-595 */
1949 -304.46, 0.08, -0.10, -6.81, -5.16, 0.27, 229.78, 304.17,
1950 -0.60, 0.50, 6.80, -5.14, 0.33, 0.01, 256.30,-276.81,
1951 -0.28, -0.40, -6.19, -5.73, -0.14, 0.01,-212.82, 269.45,
1952 0.84, 1.20, 6.02, 4.76, 0.14, -0.02, 196.64, 272.05,
1953 -0.84, 0.90, 6.08, -4.40, 0.35, 0.02, 188.95, 272.22,
1954 -0.12, 0.30, 6.09, -4.22, 0.34,-292.37, -5.10, -0.32,
1955 -0.40, -0.11, 6.54, 0.14, 0.01, 161.79,-220.67, 0.24,
1956 0.10, -4.93, -3.62, -0.08, 261.54, -19.94, -0.95, 0.20,
1957 -0.45, -5.85, -0.13, 0.02, 142.16,-190.79, 0.20, 0.10,
1958 -4.27, -3.18, -0.07, 187.95, -4.11, -0.24, 0.30, -0.09,
1959 -4.20, -0.09, 0.01, 0.00, 0.00, -79.08, 167.90, 0.04,
1960 0.00, 3.75, 1.77, 121.98, 131.04, -0.08, 0.10, 2.93,
1961 -2.73, -0.06,-172.95, -8.11, -0.40, -0.20, -0.18, 3.87,
1962 0.09, 0.01,-160.15, -55.30, -14.04, 13.90, -1.23, 3.58,
1963 0.40, 0.31,-115.40, 123.20, 0.60, 0.70, 2.75, 2.58,
1964 0.08, -0.01,-168.26, -2.00, 0.20, -0.20, -0.04, 3.76,
1965
1966 /* 596-723 */
1967 0.08,-114.49, 123.20, 0.32, 0.40, 2.75, 2.56, 0.07,
1968 -0.01, 112.14, 120.70, 0.28, -0.30, 2.70, -2.51, -0.07,
1969 -0.01, 161.34, 4.03, 0.20, 0.20, 0.09, -3.61, -0.08,
1970 91.31, 126.64, -0.40, 0.40, 2.83, -2.04, -0.04, 0.01,
1971 105.29, 112.90, 0.44, -0.50, 2.52, -2.35, -0.07, -0.01,
1972 98.69,-106.20, -0.28, -0.30, -2.37, -2.21, -0.06, 0.01,
1973 86.74,-112.94, -0.08, -0.20, -2.53, -1.94, -0.05,-134.81,
1974 3.51, 0.20, -0.20, 0.08, 3.01, 0.07, 79.03, 107.31,
1975 -0.24, 0.20, 2.40, -1.77, -0.04, 0.01, 132.81, -10.77,
1976 -0.52, 0.10, -0.24, -2.97, -0.07, 0.01,-130.31, -0.90,
1977 0.04, 0.00, 0.00, 2.91, -78.56, 85.32, 0.00, 0.00,
1978 1.91, 1.76, 0.04, 0.00, 0.00, -41.53, 89.10, 0.02,
1979 0.00, 1.99, 0.93, 66.03, -71.00, -0.20, -0.20, -1.59,
1980 -1.48, -0.04, 60.50, 64.70, 0.36, -0.40, 1.45, -1.35,
1981 -0.04, -0.01, -52.27, -70.01, 0.00, 0.00, -1.57, 1.17,
1982 0.03, -52.95, 66.29, 0.32, 0.40, 1.48, 1.18, 0.04,
1983
1984 /* 724-851 */
1985 -0.01, 51.02, 67.25, 0.00, 0.00, 1.50, -1.14, -0.03,
1986 -55.66, -60.92, 0.16, -0.20, -1.36, 1.24, 0.03, -54.81,
1987 -59.20, -0.08, 0.20, -1.32, 1.23, 0.03, 51.32, -55.60,
1988 0.00, 0.00, -1.24, -1.15, -0.03, 48.29, 51.80, 0.20,
1989 -0.20, 1.16, -1.08, -0.03, -45.59, -49.00, -0.12, 0.10,
1990 -1.10, 1.02, 0.03, 40.54, -52.69, -0.04, -0.10, -1.18,
1991 -0.91, -0.02, -40.58, -49.51, -1.00, 1.00, -1.11, 0.91,
1992 0.04, 0.02, -43.76, 46.50, 0.36, 0.40, 1.04, 0.98,
1993 0.03, -0.01, 62.65, -5.00, -0.24, 0.00, -0.11, -1.40,
1994 -0.03, 0.01, -38.57, 49.59, 0.08, 0.10, 1.11, 0.86,
1995 0.02, -33.22, -44.04, 0.08, -0.10, -0.98, 0.74, 0.02,
1996 37.15, -39.90, -0.12, -0.10, -0.89, -0.83, -0.02, 36.68,
1997 -39.50, -0.04, -0.10, -0.88, -0.82, -0.02, -53.22, -3.91,
1998 -0.20, 0.00, -0.09, 1.19, 0.03, 32.43, -42.19, -0.04,
1999 -0.10, -0.94, -0.73, -0.02, -51.00, -2.30, -0.12, -0.10,
2000 0.00, 1.14, -29.53, -39.11, 0.04, 0.00, -0.87, 0.66,
2001
2002 /* 852-979 */
2003 0.02, 28.50, -38.92, -0.08, -0.10, -0.87, -0.64, -0.02,
2004 26.54, 36.95, -0.12, 0.10, 0.83, -0.59, -0.01, 26.54,
2005 34.59, 0.04, -0.10, 0.77, -0.59, -0.02, 28.35, -32.55,
2006 -0.16, 0.20, -0.73, -0.63, -0.01, -28.00, 30.40, 0.00,
2007 0.00, 0.68, 0.63, 0.01, -27.61, 29.40, 0.20, 0.20,
2008 0.66, 0.62, 0.02, 40.33, 0.40, -0.04, 0.10, 0.00,
2009 -0.90, -23.28, 31.61, -0.08, -0.10, 0.71, 0.52, 0.01,
2010 37.75, 0.80, 0.04, 0.10, 0.00, -0.84, 23.66, 25.80,
2011 0.00, 0.00, 0.58, -0.53, -0.01, 21.01, -27.91, 0.00,
2012 0.00, -0.62, -0.47, -0.01, -34.81, 2.89, 0.04, 0.00,
2013 0.00, 0.78, -23.49, -25.31, 0.00, 0.00, -0.57, 0.53,
2014 0.01, -23.47, 25.20, 0.16, 0.20, 0.56, 0.52, 0.02,
2015 19.58, 27.50, -0.12, 0.10, 0.62, -0.44, -0.01, -22.67,
2016 -24.40, -0.08, 0.10, -0.55, 0.51, 0.01, -19.97, 25.00,
2017 0.12, 0.20, 0.56, 0.45, 0.01, 21.28, -22.80, -0.08,
2018 -0.10, -0.51, -0.48, -0.01, -30.47, 0.91, 0.04, 0.00,
2019
2020 /* 980-1107 */
2021 0.00, 0.68, 18.58, 24.00, 0.04, -0.10, 0.54, -0.42,
2022 -0.01, -18.02, 24.40, -0.04, -0.10, 0.55, 0.40, 0.01,
2023 17.74, 22.50, 0.08, -0.10, 0.50, -0.40, -0.01, -19.41,
2024 20.70, 0.08, 0.10, 0.46, 0.43, 0.01, -18.64, 20.11,
2025 0.00, 0.00, 0.45, 0.42, 0.01, -16.75, 21.60, 0.04,
2026 0.10, 0.48, 0.37, 0.01, -18.42, -20.00, 0.00, 0.00,
2027 -0.45, 0.41, 0.01, -26.77, 1.41, 0.08, 0.00, 0.00,
2028 0.60, -26.17, -0.19, 0.00, 0.00, 0.00, 0.59, -15.52,
2029 20.51, 0.00, 0.00, 0.46, 0.35, 0.01, -25.42, -1.91,
2030 -0.08, 0.00, -0.04, 0.57, 0.45, -17.42, 18.10, 0.00,
2031 0.00, 0.40, 0.39, 0.01, 16.39, -17.60, -0.08, -0.10,
2032 -0.39, -0.37, -0.01, -14.37, 18.91, 0.00, 0.00, 0.42,
2033 0.32, 0.01, 23.39, -2.40, -0.12, 0.00, 0.00, -0.52,
2034 14.32, -18.50, -0.04, -0.10, -0.41, -0.32, -0.01, 15.69,
2035 17.08, 0.00, 0.00, 0.38, -0.35, -0.01, -22.99, 0.50,
2036 0.04, 0.00, 0.00, 0.51, 0.00, 0.00, 14.47, -17.60,
2037
2038 /* 1108-1235 */
2039 -0.01, 0.00, -0.39, -0.32, -13.33, 18.40, -0.04, -0.10,
2040 0.41, 0.30, 22.47, -0.60, -0.04, 0.00, 0.00, -0.50,
2041 -12.78, -17.41, 0.04, 0.00, -0.39, 0.29, 0.01, -14.10,
2042 -15.31, 0.04, 0.00, -0.34, 0.32, 0.01, 11.98, 16.21,
2043 -0.04, 0.00, 0.36, -0.27, -0.01, 19.65, -1.90, -0.08,
2044 0.00, 0.00, -0.44, 19.61, -1.50, -0.08, 0.00, 0.00,
2045 -0.44, 13.41, -14.30, -0.04, -0.10, -0.32, -0.30, -0.01,
2046 -13.29, 14.40, 0.00, 0.00, 0.32, 0.30, 0.01, 11.14,
2047 -14.40, -0.04, 0.00, -0.32, -0.25, -0.01, 12.24, -13.38,
2048 0.04, 0.00, -0.30, -0.27, -0.01, 10.07, -13.81, 0.04,
2049 0.00, -0.31, -0.23, -0.01, 10.46, 13.10, 0.08, -0.10,
2050 0.29, -0.23, -0.01, 16.55, -1.71, -0.08, 0.00, 0.00,
2051 -0.37, 9.75, -12.80, 0.00, 0.00, -0.29, -0.22, -0.01,
2052 9.11, 12.80, 0.00, 0.00, 0.29, -0.20, 0.00, 0.00,
2053 -6.44, -13.80, 0.00, 0.00, -0.31, 0.14, -9.19, -12.00,
2054 0.00, 0.00, -0.27, 0.21, -10.30, 10.90, 0.08, 0.10,
2055
2056 /* 1236-1363 */
2057 0.24, 0.23, 0.01, 14.92, -0.80, -0.04, 0.00, 0.00,
2058 -0.33, 10.02, -10.80, 0.00, 0.00, -0.24, -0.22, -0.01,
2059 -9.75, 10.40, 0.04, 0.00, 0.23, 0.22, 0.01, 9.67,
2060 -10.40, -0.04, 0.00, -0.23, -0.22, -0.01, -8.28, -11.20,
2061 0.04, 0.00, -0.25, 0.19, 13.32, -1.41, -0.08, 0.00,
2062 0.00, -0.30, 8.27, 10.50, 0.04, 0.00, 0.23, -0.19,
2063 0.00, 0.00, 13.13, 0.00, 0.00, 0.00, 0.00, -0.29,
2064 -12.93, 0.70, 0.04, 0.00, 0.00, 0.29, 7.91, -10.20,
2065 0.00, 0.00, -0.23, -0.18, -7.84, -10.00, -0.04, 0.00,
2066 -0.22, 0.18, 7.44, 9.60, 0.00, 0.00, 0.21, -0.17,
2067 -7.64, 9.40, 0.08, 0.10, 0.21, 0.17, 0.01, -11.38,
2068 0.60, 0.04, 0.00, 0.00, 0.25, -7.48, 8.30, 0.00,
2069 0.00, 0.19, 0.17, -10.98, -0.20, 0.00, 0.00, 0.00,
2070 0.25, 10.98, 0.20, 0.00, 0.00, 0.00, -0.25, 7.40,
2071 -7.90, -0.04, 0.00, -0.18, -0.17, -6.09, 8.40, -0.04,
2072 0.00, 0.19, 0.14, -6.94, -7.49, 0.00, 0.00, -0.17,
2073
2074 /* 1364-1491 */
2075 0.16, 6.92, 7.50, 0.04, 0.00, 0.17, -0.15, 6.20,
2076 8.09, 0.00, 0.00, 0.18, -0.14, -6.12, 7.80, 0.04,
2077 0.00, 0.17, 0.14, 5.85, -7.50, 0.00, 0.00, -0.17,
2078 -0.13, -6.48, 6.90, 0.08, 0.10, 0.15, 0.14, 0.01,
2079 6.32, 6.90, 0.00, 0.00, 0.15, -0.14, 5.61, -7.20,
2080 0.00, 0.00, -0.16, -0.13, 9.07, 0.00, 0.00, 0.00,
2081 0.00, -0.20, 5.25, 6.90, 0.00, 0.00, 0.15, -0.12,
2082 -8.47, -0.40, 0.00, 0.00, 0.00, 0.19, 6.32, -5.39,
2083 -1.11, 1.10, -0.12, -0.14, 0.02, 0.02, 5.73, -6.10,
2084 -0.04, 0.00, -0.14, -0.13, 4.70, 6.60, -0.04, 0.00,
2085 0.15, -0.11, -4.90, -6.40, 0.00, 0.00, -0.14, 0.11,
2086 -5.33, 5.60, 0.04, 0.10, 0.13, 0.12, 0.01, -4.81,
2087 6.00, 0.04, 0.00, 0.13, 0.11, 5.13, 5.50, 0.04,
2088 0.00, 0.12, -0.11, 4.50, 5.90, 0.00, 0.00, 0.13,
2089 -0.10, -4.22, 6.10, 0.00, 0.00, 0.14, -4.53, 5.70,
2090 0.00, 0.00, 0.13, 0.10, 4.18, 5.70, 0.00, 0.00,
2091
2092 /* 1492-1619 */
2093 0.13, -4.75, -5.19, 0.00, 0.00, -0.12, 0.11, -4.06,
2094 5.60, 0.00, 0.00, 0.13, -3.98, 5.60, -0.04, 0.00,
2095 0.13, 4.02, -5.40, 0.00, 0.00, -0.12, 4.49, -4.90,
2096 -0.04, 0.00, -0.11, -0.10, -3.62, -5.40, -0.16, 0.20,
2097 -0.12, 0.00, 0.01, 4.38, 4.80, 0.00, 0.00, 0.11,
2098 -6.40, -0.10, 0.00, 0.00, 0.00, 0.14, -3.98, 5.00,
2099 0.04, 0.00, 0.11, -3.82, -5.00, 0.00, 0.00, -0.11,
2100 -3.71, 5.07, 0.00, 0.00, 0.11, 4.14, 4.40, 0.00,
2101 0.00, 0.10, -6.01, -0.50, -0.04, 0.00, 0.00, 0.13,
2102 -4.04, 4.39, 0.00, 0.00, 0.10, 3.45, -4.72, 0.00,
2103 0.00, -0.11, 3.31, 4.71, 0.00, 0.00, 0.11, 3.26,
2104 -4.50, 0.00, 0.00, -0.10, -3.26, -4.50, 0.00, 0.00,
2105 -0.10, -3.34, -4.40, 0.00, 0.00, -0.10, -3.74, -4.00,
2106 3.70, 4.00, 3.34, -4.30, 3.30, -4.30, -3.66, 3.90,
2107 0.04, 3.66, 3.90, 0.04, -3.62, -3.90, -3.61, 3.90,
2108 -0.20, 5.30, 0.00, 0.00, 0.12, 3.06, 4.30, 3.30,
2109
2110 /* 1620-1747 */
2111 4.00, 0.40, 0.20, 3.10, 4.10, -3.06, 3.90, -3.30,
2112 -3.60, -3.30, 3.36, 0.01, 3.14, 3.40, -4.57, -0.20,
2113 0.00, 0.00, 0.00, 0.10, -2.70, -3.60, 2.94, -3.20,
2114 -2.90, 3.20, 2.47, -3.40, 2.55, -3.30, 2.80, -3.08,
2115 2.51, 3.30, -4.10, 0.30, -0.12, -0.10, 4.10, 0.20,
2116 -2.74, 3.00, 2.46, 3.23, -3.66, 1.20, -0.20, 0.20,
2117 3.74, -0.40, -2.51, -2.80, -3.74, 2.27, -2.90, 0.00,
2118 0.00, -2.50, 2.70, -2.51, 2.60, -3.50, 0.20, 3.38,
2119 -2.22, -2.50, 3.26, -0.40, 1.95, -2.60, 3.22, -0.40,
2120 -0.04, -1.79, -2.60, 1.91, 2.50, 0.74, 3.05, -0.04,
2121 0.08, 2.11, -2.30, -2.11, 2.20, -1.87, -2.40, 2.03,
2122 -2.20, -2.03, 2.20, 2.98, 0.00, 0.00, 2.98, -1.71,
2123 2.40, 2.94, -0.10, -0.12, 0.10, 1.67, 2.40, -1.79,
2124 2.30, -1.79, 2.20, -1.67, 2.20, 1.79, -2.00, 1.87,
2125 -1.90, 1.63, -2.10, -1.59, 2.10, 1.55, -2.10, -1.55,
2126 2.10, -2.59, -0.20, -1.75, -1.90, -1.75, 1.90, -1.83,
2127
2128 /* 1748-1875 */
2129 -1.80, 1.51, 2.00, -1.51, -2.00, 1.71, 1.80, 1.31,
2130 2.10, -1.43, 2.00, 1.43, 2.00, -2.43, -1.51, 1.90,
2131 -1.47, 1.90, 2.39, 0.20, -2.39, 1.39, 1.90, 1.39,
2132 -1.80, 1.47, -1.60, 1.47, -1.60, 1.43, -1.50, -1.31,
2133 1.60, 1.27, -1.60, -1.27, 1.60, 1.27, -1.60, 2.03,
2134 1.35, 1.50, -1.39, -1.40, 1.95, -0.20, -1.27, 1.49,
2135 1.19, 1.50, 1.27, 1.40, 1.15, 1.50, 1.87, -0.10,
2136 -1.12, -1.50, 1.87, -1.11, -1.50, -1.11, -1.50, 0.00,
2137 0.00, 1.19, 1.40, 1.27, -1.30, -1.27, -1.30, -1.15,
2138 1.40, -1.23, 1.30, -1.23, -1.30, 1.22, -1.29, 1.07,
2139 -1.40, 1.75, -0.20, -1.03, -1.40, -1.07, 1.20, -1.03,
2140 1.15, 1.07, 1.10, 1.51, -1.03, 1.10, 1.03, -1.10,
2141 0.00, 0.00, -1.03, -1.10, 0.91, -1.20, -0.88, -1.20,
2142 -0.88, 1.20, -0.95, 1.10, -0.95, -1.10, 1.43, -1.39,
2143 0.95, -1.00, -0.95, 1.00, -0.80, 1.10, 0.91, -1.00,
2144 -1.35, 0.88, 1.00, -0.83, 1.00, -0.91, 0.90, 0.91,
2145
2146 /* 1876-2003 */
2147 0.90, 0.88, -0.90, -0.76, -1.00, -0.76, 1.00, 0.76,
2148 1.00, -0.72, 1.00, 0.84, -0.90, 0.84, 0.90, 1.23,
2149 0.00, 0.00, -0.52, -1.10, -0.68, 1.00, 1.19, -0.20,
2150 1.19, 0.76, 0.90, 1.15, -0.10, 1.15, -0.10, 0.72,
2151 -0.90, -1.15, -1.15, 0.68, 0.90, -0.68, 0.90, -1.11,
2152 0.00, 0.00, 0.20, 0.79, 0.80, -1.11, -0.10, 0.00,
2153 0.00, -0.48, -1.00, -0.76, -0.80, -0.72, -0.80, -1.07,
2154 -0.10, 0.64, 0.80, -0.64, -0.80, 0.64, 0.80, 0.40,
2155 0.60, 0.52, -0.50, -0.60, -0.80, -0.71, 0.70, -0.99,
2156 0.99, 0.56, 0.80, -0.56, 0.80, 0.68, -0.70, 0.68,
2157 0.70, -0.95, -0.64, 0.70, 0.64, 0.70, -0.60, 0.70,
2158 -0.60, -0.70, -0.91, -0.10, -0.51, 0.76, -0.91, -0.56,
2159 0.70, 0.88, 0.88, -0.63, -0.60, 0.55, -0.60, -0.80,
2160 0.80, -0.80, -0.52, 0.60, 0.52, 0.60, 0.52, -0.60,
2161 -0.48, 0.60, 0.48, 0.60, 0.48, 0.60, -0.76, 0.44,
2162 -0.60, 0.52, -0.50, -0.52, 0.50, 0.40, 0.60, -0.40,
2163
2164 /* 2004-2131 */
2165 -0.60, 0.40, -0.60, 0.72, -0.72, -0.51, -0.50, -0.48,
2166 0.50, 0.48, -0.50, -0.48, 0.50, -0.48, 0.50, 0.48,
2167 -0.50, -0.48, -0.50, -0.68, -0.68, 0.44, 0.50, -0.64,
2168 -0.10, -0.64, -0.10, -0.40, 0.50, 0.40, 0.50, 0.40,
2169 0.50, 0.00, 0.00, -0.40, -0.50, -0.36, -0.50, 0.36,
2170 -0.50, 0.60, -0.60, 0.40, -0.40, 0.40, 0.40, -0.40,
2171 0.40, -0.40, 0.40, -0.56, -0.56, 0.36, -0.40, -0.36,
2172 0.40, 0.36, -0.40, -0.36, -0.40, 0.36, 0.40, 0.36,
2173 0.40, -0.52, 0.52, 0.52, 0.32, 0.40, -0.32, 0.40,
2174 -0.32, 0.40, -0.32, 0.40, 0.32, -0.40, -0.32, -0.40,
2175 0.32, -0.40, 0.28, -0.40, -0.28, 0.40, 0.28, -0.40,
2176 0.28, 0.40, 0.48, -0.48, 0.48, 0.36, -0.30, -0.36,
2177 -0.30, 0.00, 0.00, 0.20, 0.40, -0.44, 0.44, -0.44,
2178 -0.44, -0.44, -0.44, 0.32, -0.30, 0.32, 0.30, 0.24,
2179 0.30, -0.12, -0.10, -0.28, 0.30, 0.28, 0.30, 0.28,
2180 0.30, 0.28, -0.30, 0.28, -0.30, 0.28, -0.30, 0.28,
2181
2182 /* 2132-2259 */
2183 0.30, -0.28, 0.30, 0.40, 0.40, -0.24, 0.30, 0.24,
2184 -0.30, 0.24, -0.30, -0.24, -0.30, 0.24, 0.30, 0.24,
2185 -0.30, -0.24, 0.30, 0.24, -0.30, -0.24, -0.30, 0.24,
2186 -0.30, 0.24, 0.30, -0.24, 0.30, -0.24, 0.30, 0.20,
2187 -0.30, 0.20, -0.30, 0.20, -0.30, 0.20, 0.30, 0.20,
2188 -0.30, 0.20, -0.30, 0.20, 0.30, 0.20, 0.30, -0.20,
2189 -0.30, 0.20, -0.30, 0.20, -0.30, -0.36, -0.36, -0.36,
2190 -0.04, 0.30, 0.12, -0.10, -0.32, -0.24, 0.20, 0.24,
2191 0.20, 0.20, -0.20, -0.20, -0.20, -0.20, -0.20, 0.20,
2192 0.20, 0.20, -0.20, 0.20, 0.20, 0.20, 0.20, -0.20,
2193 -0.20, 0.00, 0.00, -0.20, -0.20, -0.20, 0.20, -0.20,
2194 0.20, 0.20, -0.20, -0.20, -0.20, 0.20, 0.20, 0.20,
2195 0.20, 0.20, -0.20, 0.20, -0.20, 0.28, 0.28, 0.28,
2196 0.28, 0.28, 0.28, -0.28, 0.28, 0.12, 0.00, 0.24,
2197 0.16, -0.20, 0.16, -0.20, 0.16, -0.20, 0.16, 0.20,
2198 -0.16, 0.20, 0.16, 0.20, -0.16, 0.20, -0.16, 0.20,
2199
2200 /* 2260-2387 */
2201 -0.16, 0.20, 0.16, -0.20, 0.16, 0.20, 0.16, -0.20,
2202 -0.16, 0.20, -0.16, -0.20, -0.16, 0.20, 0.16, 0.20,
2203 0.16, -0.20, 0.16, -0.20, 0.16, 0.20, 0.16, 0.20,
2204 0.16, 0.20, -0.16, -0.20, 0.16, 0.20, -0.16, 0.20,
2205 0.16, 0.20, -0.16, -0.20, 0.16, -0.20, 0.16, -0.20,
2206 -0.16, -0.20, 0.24, -0.24, -0.24, 0.24, 0.24, 0.12,
2207 0.20, 0.12, 0.20, -0.12, -0.20, 0.12, -0.20, 0.12,
2208 -0.20, -0.12, 0.20, -0.12, 0.20, -0.12, -0.20, 0.12,
2209 0.20, 0.12, 0.20, 0.12, -0.20, -0.12, 0.20, 0.12,
2210 -0.20, -0.12, 0.20, 0.12, 0.20, 0.00, 0.00, -0.12,
2211 0.20, -0.12, 0.20, 0.12, -0.20, -0.12, 0.20, 0.12,
2212 0.20, 0.00, -0.21, -0.20, 0.00, 0.00, 0.20, -0.20,
2213 -0.20, -0.20, 0.20, -0.16, -0.10, 0.00, 0.17, 0.16,
2214 0.16, 0.16, 0.16, -0.16, 0.16, 0.16, -0.16, 0.16,
2215 -0.16, 0.16, 0.12, 0.10, 0.12, -0.10, -0.12, 0.10,
2216 -0.12, 0.10, 0.12, -0.10, -0.12, 0.12, -0.12, 0.12,
2217
2218 /* 2388-2515 */
2219 -0.12, 0.12, -0.12, -0.12, -0.12, -0.12, -0.12, -0.12,
2220 -0.12, 0.12, 0.12, 0.12, 0.12, -0.12, -0.12, 0.12,
2221 0.12, 0.12, -0.12, 0.12, -0.12, -0.12, -0.12, 0.12,
2222 -0.12, -0.12, 0.12, 0.00, 0.11, 0.11,-122.67, 164.70,
2223 203.78, 273.50, 3.58, 2.74, 6.18, -4.56, 0.00, -0.04,
2224 0.00, -0.07, 57.44, -77.10, 95.82, 128.60, -1.77, -1.28,
2225 2.85, -2.14, 82.14, 89.50, 0.00, 0.00, 2.00, -1.84,
2226 -0.04, 47.73, -64.10, 23.79, 31.90, -1.45, -1.07, 0.69,
2227 -0.53, -46.38, 50.50, 0.00, 0.00, 1.13, 1.04, 0.02,
2228 -18.38, 0.00, 63.80, 0.00, 0.00, 0.41, 0.00, -1.43,
2229 59.07, 0.00, 0.00, 0.00, 0.00, -1.32, 57.28, 0.00,
2230 0.00, 0.00, 0.00, -1.28, -48.65, 0.00, -1.15, 0.00,
2231 0.00, 1.09, 0.00, 0.03, -18.30, 24.60, -17.30, -23.20,
2232 0.56, 0.41, -0.51, 0.39, -16.91, 26.90, 8.43, 13.30,
2233 0.60, 0.38, 0.31, -0.19, 1.23, -1.70, -19.13, -25.70,
2234 -0.03, -0.03, -0.58, 0.43, -0.72, 0.90, -17.34, -23.30,
2235
2236 /* 2516-2643 */
2237 0.03, 0.02, -0.52, 0.39, -19.49, -21.30, 0.00, 0.00,
2238 -0.48, 0.44, 0.01, 20.57, -20.10, 0.64, 0.70, -0.45,
2239 -0.46, 0.00, -0.01, 4.89, 5.90, -16.55, 19.90, 0.14,
2240 -0.11, 0.44, 0.37, 18.22, 19.80, 0.00, 0.00, 0.44,
2241 -0.41, -0.01, 4.89, -5.30, -16.51, -18.00, -0.11, -0.11,
2242 -0.41, 0.37, -17.86, 0.00, 17.10, 0.00, 0.00, 0.40,
2243 0.00, -0.38, 0.32, 0.00, 24.42, 0.00, 0.00, -0.01,
2244 0.00, -0.55, -23.79, 0.00, 0.00, 0.00, 0.00, 0.53,
2245 14.72, -16.00, -0.32, 0.00, -0.36, -0.33, -0.01, 0.01,
2246 3.34, -4.50, 11.86, 15.90, -0.11, -0.07, 0.35, -0.27,
2247 -3.26, 4.40, 11.62, 15.60, 0.09, 0.07, 0.35, -0.26,
2248 -19.53, 0.00, 5.09, 0.00, 0.00, 0.44, 0.00, -0.11,
2249 -13.48, 14.70, 0.00, 0.00, 0.33, 0.30, 0.01, 10.86,
2250 -14.60, 3.18, 4.30, -0.33, -0.24, 0.09, -0.07, -11.30,
2251 -15.10, 0.00, 0.00, -0.34, 0.25, 0.01, 2.03, -2.70,
2252 10.82, 14.50, -0.07, -0.05, 0.32, -0.24, 17.46, 0.00,
2253
2254 /* 2644-2771 */
2255 0.00, 0.00, 0.00, -0.39, 16.43, 0.00, 0.52, 0.00,
2256 0.00, -0.37, 0.00, -0.01, 9.35, 0.00, 13.29, 0.00,
2257 0.00, -0.21, 0.00, -0.30, -10.42, 11.40, 0.00, 0.00,
2258 0.25, 0.23, 0.01, 0.44, 0.50, -10.38, 11.30, 0.02,
2259 -0.01, 0.25, 0.23, -14.64, 0.00, 0.00, 0.00, 0.00,
2260 0.33, 0.56, 0.80, -8.67, 11.70, 0.02, -0.01, 0.26,
2261 0.19, 13.88, 0.00, -2.47, 0.00, 0.00, -0.31, 0.00,
2262 0.06, -1.99, 2.70, 7.72, 10.30, 0.06, 0.04, 0.23,
2263 -0.17, -0.20, 0.00, 13.05, 0.00, 0.00, 0.00, 0.00,
2264 -0.29, 6.92, -9.30, 3.34, 4.50, -0.21, -0.15, 0.10,
2265 -0.07, -6.60, 0.00, 10.70, 0.00, 0.00, 0.15, 0.00,
2266 -0.24, -8.04, -8.70, 0.00, 0.00, -0.19, 0.18, -10.58,
2267 0.00, -3.10, 0.00, 0.00, 0.24, 0.00, 0.07, -7.32,
2268 8.00, -0.12, -0.10, 0.18, 0.16, 1.63, 1.70, 6.96,
2269 -7.60, 0.03, -0.04, -0.17, -0.16, -3.62, 0.00, 9.86,
2270 0.00, 0.00, 0.08, 0.00, -0.22, 0.20, -0.20, -6.88,
2271
2272 /* 2772-2899 */
2273 -7.50, 0.00, 0.00, -0.17, 0.15, -8.99, 0.00, 4.02,
2274 0.00, 0.00, 0.20, 0.00, -0.09, -1.07, 1.40, -5.69,
2275 -7.70, 0.03, 0.02, -0.17, 0.13, 6.48, -7.20, -0.48,
2276 -0.50, -0.16, -0.14, -0.01, 0.01, 5.57, -7.50, 1.07,
2277 1.40, -0.17, -0.12, 0.03, -0.02, 8.71, 0.00, 3.54,
2278 0.00, 0.00, -0.19, 0.00, -0.08, 0.40, 0.00, 9.27,
2279 0.00, 0.00, -0.01, 0.00, -0.21, -6.13, 6.70, -1.19,
2280 -1.30, 0.15, 0.14, -0.03, 0.03, 5.21, -5.70, -2.51,
2281 -2.60, -0.13, -0.12, -0.06, 0.06, 5.69, -6.20, -0.12,
2282 -0.10, -0.14, -0.13, -0.01, 2.03, -2.70, 4.53, 6.10,
2283 -0.06, -0.05, 0.14, -0.10, 5.01, 5.50, -2.51, 2.70,
2284 0.12, -0.11, 0.06, 0.06, -1.91, 2.60, -4.38, -5.90,
2285 0.06, 0.04, -0.13, 0.10, 4.65, -6.30, 0.00, 0.00,
2286 -0.14, -0.10, -5.29, 5.70, 0.00, 0.00, 0.13, 0.12,
2287 -2.23, -4.00, -4.65, 4.20, -0.09, 0.05, 0.10, 0.10,
2288 -4.53, 6.10, 0.00, 0.00, 0.14, 0.10, 2.47, 2.70,
2289
2290 /* 2900-3027 */
2291 -4.46, 4.90, 0.06, -0.06, 0.11, 0.10, -5.05, 5.50,
2292 0.84, 0.90, 0.12, 0.11, 0.02, -0.02, 4.97, -5.40,
2293 -1.71, 0.00, -0.12, -0.11, 0.00, 0.04, -0.99, -1.30,
2294 4.22, -5.70, -0.03, 0.02, -0.13, -0.09, 0.99, 1.40,
2295 4.22, -5.60, 0.03, -0.02, -0.13, -0.09, -4.69, -5.20,
2296 0.00, 0.00, -0.12, 0.10, -3.42, 0.00, 6.09, 0.00,
2297 0.00, 0.08, 0.00, -0.14, -4.65, -5.10, 0.00, 0.00,
2298 -0.11, 0.10, 0.00, 0.00, -4.53, -5.00, 0.00, 0.00,
2299 -0.11, 0.10, -2.43, -2.70, -3.82, 4.20, -0.06, 0.05,
2300 0.10, 0.09, 0.00, 0.00, -4.53, 4.90, 0.00, 0.00,
2301 0.11, 0.10, -4.49, -4.90, 0.00, 0.00, -0.11, 0.10,
2302 2.67, -2.90, -3.62, -3.90, -0.06, -0.06, -0.09, 0.08,
2303 3.94, -5.30, 0.00, 0.00, -0.12, -3.38, 3.70, -2.78,
2304 -3.10, 0.08, 0.08, -0.07, 0.06, 3.18, -3.50, -2.82,
2305 -3.10, -0.08, -0.07, -0.07, 0.06, -5.77, 0.00, 1.87,
2306 0.00, 0.00, 0.13, 0.00, -0.04, 3.54, -4.80, -0.64,
2307
2308 /* 3028-3155 */
2309 -0.90, -0.11, 0.00, -0.02, -3.50, -4.70, 0.68, -0.90,
2310 -0.11, 0.00, -0.02, 5.49, 0.00, 0.00, 0.00, 0.00,
2311 -0.12, 1.83, -2.50, 2.63, 3.50, -0.06, 0.00, 0.08,
2312 3.02, -4.10, 0.68, 0.90, -0.09, 0.00, 0.02, 0.00,
2313 0.00, 5.21, 0.00, 0.00, 0.00, 0.00, -0.12, -3.54,
2314 3.80, 2.70, 3.60, -1.35, 1.80, 0.08, 0.00, 0.04,
2315 -2.90, 3.90, 0.68, 0.90, 0.09, 0.00, 0.02, 0.80,
2316 -1.10, -2.78, -3.70, -0.02, 0.00, -0.08, 4.10, 0.00,
2317 -2.39, 0.00, 0.00, -0.09, 0.00, 0.05, -1.59, 2.10,
2318 2.27, 3.00, 0.05, 0.00, 0.07, -2.63, 3.50, -0.48,
2319 -0.60, -2.94, -3.20, -2.94, 3.20, 2.27, -3.00, -1.11,
2320 -1.50, -0.07, 0.00, -0.03, -0.56, -0.80, -2.35, 3.10,
2321 0.00, -0.60, -3.42, 1.90, -0.12, -0.10, 2.63, -2.90,
2322 2.51, 2.80, -0.64, 0.70, -0.48, -0.60, 2.19, -2.90,
2323 0.24, -0.30, 2.15, 2.90, 2.15, -2.90, 0.52, 0.70,
2324 2.07, -2.80, -3.10, 0.00, 1.79, 0.00, 0.00, 0.07,
2325
2326 /* 3156-3283 */
2327 0.00, -0.04, 0.88, 0.00, -3.46, 2.11, 2.80, -0.36,
2328 0.50, 3.54, -0.20, -3.50, -1.39, 1.50, -1.91, -2.10,
2329 -1.47, 2.00, 1.39, 1.90, 2.07, -2.30, 0.91, 1.00,
2330 1.99, -2.70, 3.30, 0.00, 0.60, -0.44, -0.70, -1.95,
2331 2.60, 2.15, -2.40, -0.60, -0.70, 3.30, 0.84, 0.00,
2332 -3.10, -3.10, 0.00, -0.72, -0.32, 0.40, -1.87, -2.50,
2333 1.87, -2.50, 0.32, 0.40, -0.24, 0.30, -1.87, -2.50,
2334 -0.24, -0.30, 1.87, -2.50, -2.70, 0.00, 1.55, 2.03,
2335 2.20, -2.98, -1.99, -2.20, 0.12, -0.10, -0.40, 0.50,
2336 1.59, 2.10, 0.00, 0.00, -1.79, 2.00, -1.03, 1.40,
2337 -1.15, -1.60, 0.32, 0.50, 1.39, -1.90, 2.35, -1.27,
2338 1.70, 0.60, 0.80, -0.32, -0.40, 1.35, -1.80, 0.44,
2339 0.00, 2.23, -0.84, 0.90, -1.27, -1.40, -1.47, 1.60,
2340 -0.28, -0.30, -0.28, 0.40, -1.27, -1.70, 0.28, -0.40,
2341 -1.43, -1.50, 0.00, 0.00, -1.27, -1.70, 2.11, -0.32,
2342 -0.40, -1.23, 1.60, 1.19, -1.30, -0.72, -0.80, 0.72,
2343
2344 /* 3284-3411 */
2345 -0.80, -1.15, -1.30, -1.35, -1.50, -1.19, -1.60, -0.12,
2346 0.20, 1.79, 0.00, -0.88, -0.28, 0.40, 1.11, 1.50,
2347 -1.83, 0.00, 0.56, -0.12, 0.10, -1.27, -1.40, 0.00,
2348 0.00, 1.15, 1.50, -0.12, 0.20, 1.11, 1.50, 0.36,
2349 -0.50, -1.07, -1.40, -1.11, 1.50, 1.67, 0.00, 0.80,
2350 -1.11, 0.00, 1.43, 1.23, -1.30, -0.24, -1.19, -1.30,
2351 -0.24, 0.20, -0.44, -0.90, -0.95, 1.10, 1.07, -1.40,
2352 1.15, -1.30, 1.03, -1.10, -0.56, -0.60, -0.68, 0.90,
2353 -0.76, -1.00, -0.24, -0.30, 0.95, -1.30, 0.56, 0.70,
2354 0.84, -1.10, -0.56, 0.00, -1.55, 0.91, -1.30, 0.28,
2355 0.30, 0.16, -0.20, 0.95, 1.30, 0.40, -0.50, -0.88,
2356 -1.20, 0.95, -1.10, -0.48, -0.50, 0.00, 0.00, -1.07,
2357 1.20, 0.44, -0.50, 0.95, 1.10, 0.00, 0.00, 0.92,
2358 -1.30, 0.95, 1.00, -0.52, 0.60, 1.59, 0.24, -0.40,
2359 0.91, 1.20, 0.84, -1.10, -0.44, -0.60, 0.84, 1.10,
2360 -0.44, 0.60, -0.44, 0.60, -0.84, -1.10, -0.80, 0.00,
2361
2362 /* 3412-3539 */
2363 1.35, 0.76, 0.20, -0.91, -1.00, 0.20, -0.30, -0.91,
2364 -1.20, -0.95, 1.00, -0.48, -0.50, 0.88, 1.00, 0.48,
2365 -0.50, -0.95, -1.10, 0.20, -0.20, -0.99, 1.10, -0.84,
2366 1.10, -0.24, -0.30, 0.20, -0.30, 0.84, 1.10, -1.39,
2367 0.00, -0.28, -0.16, 0.20, 0.84, 1.10, 0.00, 0.00,
2368 1.39, 0.00, 0.00, -0.95, 1.00, 1.35, -0.99, 0.00,
2369 0.88, -0.52, 0.00, -1.19, 0.20, 0.20, 0.76, -1.00,
2370 0.00, 0.00, 0.76, 1.00, 0.00, 0.00, 0.76, 1.00,
2371 -0.76, 1.00, 0.00, 0.00, 1.23, 0.76, 0.80, -0.32,
2372 0.40, -0.72, 0.80, -0.40, -0.40, 0.00, 0.00, -0.80,
2373 -0.90, -0.68, 0.90, -0.16, -0.20, -0.16, -0.20, 0.68,
2374 -0.90, -0.36, 0.50, -0.56, -0.80, 0.72, -0.90, 0.44,
2375 -0.60, -0.48, -0.70, -0.16, 0.00, -1.11, 0.32, 0.00,
2376 -1.07, 0.60, -0.80, -0.28, -0.40, -0.64, 0.00, 0.91,
2377 1.11, 0.64, -0.90, 0.76, -0.80, 0.00, 0.00, -0.76,
2378 -0.80, 1.03, 0.00, -0.36, -0.64, -0.70, 0.36, -0.40,
2379
2380 /* 3540-3667 */
2381 1.07, 0.36, -0.50, -0.52, -0.70, 0.60, 0.00, 0.88,
2382 0.95, 0.00, 0.48, 0.16, -0.20, 0.60, 0.80, 0.16,
2383 -0.20, -0.60, -0.80, 0.00, -1.00, 0.12, 0.20, 0.16,
2384 -0.20, 0.68, 0.70, 0.59, -0.80, -0.99, -0.56, -0.60,
2385 0.36, -0.40, -0.68, -0.70, -0.68, -0.70, -0.36, -0.50,
2386 -0.44, 0.60, 0.64, 0.70, -0.12, 0.10, -0.52, 0.60,
2387 0.36, 0.40, 0.00, 0.00, 0.95, -0.84, 0.00, 0.44,
2388 0.56, 0.60, 0.32, -0.30, 0.00, 0.00, 0.60, 0.70,
2389 0.00, 0.00, 0.60, 0.70, -0.12, -0.20, 0.52, -0.70,
2390 0.00, 0.00, 0.56, 0.70, -0.12, 0.10, -0.52, -0.70,
2391 0.00, 0.00, 0.88, -0.76, 0.00, -0.44, 0.00, 0.00,
2392 -0.52, -0.70, 0.52, -0.70, 0.36, -0.40, -0.44, -0.50,
2393 0.00, 0.00, 0.60, 0.60, 0.84, 0.00, 0.12, -0.24,
2394 0.00, 0.80, -0.56, 0.60, -0.32, -0.30, 0.48, -0.50,
2395 0.28, -0.30, -0.48, -0.50, 0.12, 0.20, 0.48, -0.60,
2396 0.48, 0.60, -0.12, 0.20, 0.24, 0.00, 0.76, -0.52,
2397
2398 /* 3668-3795 */
2399 -0.60, -0.52, 0.60, 0.48, -0.50, -0.24, -0.30, 0.12,
2400 -0.10, 0.48, 0.60, 0.52, -0.20, 0.36, 0.40, -0.44,
2401 0.50, -0.24, -0.30, -0.48, -0.60, -0.44, -0.60, -0.12,
2402 0.10, 0.76, 0.76, 0.20, -0.20, 0.48, 0.50, 0.40,
2403 -0.50, -0.24, -0.30, 0.44, -0.60, 0.44, -0.60, 0.36,
2404 0.00, -0.64, 0.72, 0.00, -0.12, 0.00, -0.10, -0.40,
2405 -0.60, -0.20, -0.20, -0.44, 0.50, -0.44, 0.50, 0.20,
2406 0.20, -0.44, -0.50, 0.20, -0.20, -0.20, 0.20, -0.44,
2407 -0.50, 0.64, 0.00, 0.32, -0.36, 0.50, -0.20, -0.30,
2408 0.12, -0.10, 0.48, 0.50, -0.12, 0.30, -0.36, -0.50,
2409 0.00, 0.00, 0.48, 0.50, -0.48, 0.50, 0.68, 0.00,
2410 -0.12, 0.56, -0.40, 0.44, -0.50, -0.12, -0.10, 0.24,
2411 0.30, -0.40, 0.40, 0.64, 0.00, -0.24, 0.64, 0.00,
2412 -0.20, 0.00, 0.00, 0.44, -0.50, 0.44, 0.50, -0.12,
2413 0.20, -0.36, -0.50, 0.12, 0.00, 0.64, -0.40, 0.50,
2414 0.00, 0.10, 0.00, 0.00, -0.40, 0.50, 0.00, 0.00,
2415
2416 /* 3796-3923 */
2417 -0.40, -0.50, 0.56, 0.00, 0.28, 0.00, 0.10, 0.36,
2418 0.50, 0.00, -0.10, 0.36, -0.50, 0.36, 0.50, 0.00,
2419 -0.10, 0.24, -0.20, -0.36, -0.40, 0.16, 0.20, 0.40,
2420 -0.40, 0.00, 0.00, -0.36, -0.50, -0.36, -0.50, -0.32,
2421 -0.50, -0.12, 0.10, 0.20, 0.20, -0.36, 0.40, -0.60,
2422 0.60, 0.28, 0.00, 0.52, 0.12, -0.10, 0.40, 0.40,
2423 0.00, -0.50, 0.20, -0.20, -0.32, 0.40, 0.16, 0.20,
2424 -0.16, 0.20, 0.32, 0.40, 0.56, 0.00, -0.12, 0.32,
2425 -0.40, -0.16, -0.20, 0.00, 0.00, 0.40, 0.40, -0.40,
2426 -0.40, -0.40, 0.40, -0.36, 0.40, 0.12, 0.10, 0.00,
2427 0.10, 0.36, 0.40, 0.00, -0.10, 0.36, 0.40, -0.36,
2428 0.40, 0.00, 0.10, 0.32, 0.00, 0.44, 0.12, 0.20,
2429 0.28, -0.40, 0.00, 0.00, 0.36, 0.40, 0.32, -0.40,
2430 -0.16, 0.12, 0.10, 0.32, -0.40, 0.20, 0.30, -0.24,
2431 0.30, 0.00, 0.10, 0.32, 0.40, 0.00, -0.10, -0.32,
2432 -0.40, -0.32, 0.40, 0.00, 0.10, -0.52, -0.52, 0.52,
2433
2434 /* 3924-4051 */
2435 0.32, -0.40, 0.00, 0.00, 0.32, 0.40, 0.32, -0.40,
2436 0.00, 0.00, -0.32, -0.40, -0.32, 0.40, 0.32, 0.40,
2437 0.00, 0.00, 0.32, 0.40, 0.00, 0.00, -0.32, -0.40,
2438 0.00, 0.00, 0.32, 0.40, 0.16, 0.20, 0.32, -0.30,
2439 -0.16, 0.00, -0.48, -0.20, 0.20, -0.28, -0.30, 0.28,
2440 -0.40, 0.00, 0.00, 0.28, -0.40, 0.00, 0.00, 0.28,
2441 -0.40, 0.00, 0.00, -0.28, -0.40, 0.28, 0.40, -0.28,
2442 -0.40, -0.48, -0.20, 0.20, 0.24, 0.30, 0.44, 0.00,
2443 0.16, 0.24, 0.30, 0.16, -0.20, 0.24, 0.30, -0.12,
2444 0.20, 0.20, 0.30, -0.16, 0.20, 0.00, 0.00, 0.44,
2445 -0.32, 0.30, 0.24, 0.00, -0.36, 0.36, 0.00, 0.24,
2446 0.12, -0.20, 0.20, 0.30, -0.12, 0.00, -0.28, 0.30,
2447 -0.24, 0.30, 0.12, 0.10, -0.28, -0.30, -0.28, 0.30,
2448 0.00, 0.00, -0.28, -0.30, 0.00, 0.00, -0.28, -0.30,
2449 0.00, 0.00, 0.28, 0.30, 0.00, 0.00, -0.28, -0.30,
2450 -0.28, 0.30, 0.00, 0.00, -0.28, -0.30, 0.00, 0.00,
2451
2452 /* 4052-4179 */
2453 0.28, 0.30, 0.00, 0.00, -0.28, 0.30, 0.28, -0.30,
2454 -0.28, 0.30, 0.40, 0.40, -0.24, 0.30, 0.00, -0.10,
2455 0.16, 0.00, 0.36, -0.20, 0.30, -0.12, -0.10, -0.24,
2456 -0.30, 0.00, 0.00, -0.24, 0.30, -0.24, 0.30, 0.00,
2457 0.00, -0.24, 0.30, -0.24, 0.30, 0.24, -0.30, 0.00,
2458 0.00, 0.24, -0.30, 0.00, 0.00, 0.24, 0.30, 0.24,
2459 -0.30, 0.24, 0.30, -0.24, 0.30, -0.24, 0.30, -0.20,
2460 0.20, -0.16, -0.20, 0.00, 0.00, -0.32, 0.20, 0.00,
2461 0.10, 0.20, -0.30, 0.20, -0.20, 0.12, 0.20, -0.16,
2462 0.20, 0.16, 0.20, 0.20, 0.30, 0.20, 0.30, 0.00,
2463 0.00, -0.20, 0.30, 0.00, 0.00, 0.20, 0.30, -0.20,
2464 -0.30, -0.20, -0.30, 0.20, -0.30, 0.00, 0.00, 0.20,
2465 0.30, 0.00, 0.00, 0.20, 0.30, 0.00, 0.00, 0.20,
2466 0.30, 0.00, 0.00, 0.20, 0.30, 0.00, 0.00, 0.20,
2467 -0.30, 0.00, 0.00, -0.20, -0.30, 0.00, 0.00, -0.20,
2468 0.30, 0.00, 0.00, -0.20, 0.30, 0.00, 0.00, 0.36,
2469
2470 /* 4180-4307 */
2471 0.00, 0.00, 0.36, 0.12, 0.10, -0.24, 0.20, 0.12,
2472 -0.20, -0.16, -0.20, -0.13, 0.10, 0.22, 0.21, 0.20,
2473 0.00, -0.28, 0.32, 0.00, -0.12, -0.20, -0.20, 0.12,
2474 -0.10, 0.12, 0.10, -0.20, 0.20, 0.00, 0.00, -0.32,
2475 0.32, 0.00, 0.00, 0.32, 0.32, 0.00, 0.00, -0.24,
2476 -0.20, 0.24, 0.20, 0.20, 0.00, -0.24, 0.00, 0.00,
2477 -0.24, -0.20, 0.00, 0.00, 0.24, 0.20, -0.24, -0.20,
2478 0.00, 0.00, -0.24, 0.20, 0.16, -0.20, 0.12, 0.10,
2479 0.20, 0.20, 0.00, -0.10, -0.12, 0.10, -0.16, -0.20,
2480 -0.12, -0.10, -0.16, 0.20, 0.20, 0.20, 0.00, 0.00,
2481 -0.20, 0.20, -0.20, 0.20, -0.20, 0.20, -0.20, 0.20,
2482 0.20, -0.20, -0.20, -0.20, 0.00, 0.00, -0.20, 0.20,
2483 0.20, 0.00, -0.20, 0.00, 0.00, -0.20, 0.20, -0.20,
2484 0.20, -0.20, -0.20, -0.20, -0.20, 0.00, 0.00, 0.20,
2485 0.20, 0.20, 0.20, 0.12, -0.20, -0.12, -0.10, 0.28,
2486 -0.28, 0.16, -0.20, 0.00, -0.10, 0.00, 0.10, -0.16,
2487
2488 /* 4308-4435 */
2489 0.20, 0.00, -0.10, -0.16, -0.20, 0.00, -0.10, 0.16,
2490 -0.20, 0.16, -0.20, 0.00, 0.00, 0.16, 0.20, -0.16,
2491 0.20, 0.00, 0.00, 0.16, 0.20, 0.16, -0.20, 0.16,
2492 -0.20, -0.16, 0.20, 0.16, -0.20, 0.00, 0.00, 0.16,
2493 0.20, 0.00, 0.00, 0.16, 0.20, 0.00, 0.00, -0.16,
2494 -0.20, 0.16, -0.20, -0.16, -0.20, 0.00, 0.00, -0.16,
2495 -0.20, 0.00, 0.00, -0.16, 0.20, 0.00, 0.00, 0.16,
2496 -0.20, 0.16, 0.20, 0.16, 0.20, 0.00, 0.00, -0.16,
2497 -0.20, 0.00, 0.00, -0.16, -0.20, 0.00, 0.00, 0.16,
2498 0.20, 0.16, 0.20, 0.00, 0.00, 0.16, 0.20, 0.16,
2499 -0.20, 0.16, 0.20, 0.00, 0.00, -0.16, 0.20, 0.00,
2500 0.10, 0.12, -0.20, 0.12, -0.20, 0.00, -0.10, 0.00,
2501 -0.10, 0.12, 0.20, 0.00, -0.10, -0.12, 0.20, -0.15,
2502 0.20, -0.24, 0.24, 0.00, 0.00, 0.24, 0.24, 0.12,
2503 -0.20, -0.12, -0.20, 0.00, 0.00, 0.12, 0.20, 0.12,
2504 -0.20, 0.12, 0.20, 0.12, 0.20, 0.12, 0.20, 0.12,
2505
2506 /* 4436-4563 */
2507 -0.20, -0.12, 0.20, 0.00, 0.00, 0.12, 0.20, 0.12,
2508 0.00, -0.20, 0.00, 0.00, -0.12, -0.20, 0.12, -0.20,
2509 0.00, 0.00, 0.12, 0.20, -0.12, 0.20, -0.12, 0.20,
2510 0.12, -0.20, 0.00, 0.00, 0.12, 0.20, 0.20, 0.00,
2511 0.12, 0.00, 0.00, -0.12, 0.20, 0.00, 0.00, -0.12,
2512 -0.20, 0.00, 0.00, -0.12, -0.20, -0.12, -0.20, 0.00,
2513 0.00, 0.12, -0.20, 0.12, -0.20, 0.12, 0.20, -0.12,
2514 -0.20, 0.00, 0.00, 0.12, -0.20, 0.12, -0.20, 0.12,
2515 0.20, 0.12, 0.00, 0.20, -0.12, -0.20, 0.00, 0.00,
2516 0.12, 0.20, -0.16, 0.00, 0.16, -0.20, 0.20, 0.00,
2517 0.00, -0.20, 0.00, 0.00, -0.20, 0.20, 0.00, 0.00,
2518 0.20, 0.20, -0.20, 0.00, 0.00, -0.20, 0.12, 0.00,
2519 -0.16, 0.20, 0.00, 0.00, 0.20, 0.12, -0.10, 0.00,
2520 0.10, 0.16, -0.16, -0.16, -0.16, -0.16, -0.16, 0.00,
2521 0.00, -0.16, 0.00, 0.00, -0.16, -0.16, -0.16, 0.00,
2522 0.00, -0.16, 0.00, 0.00, 0.16, 0.00, 0.00, 0.16,
2523
2524 /* 4564-4691 */
2525 0.00, 0.00, 0.16, 0.16, 0.00, 0.00, -0.16, 0.00,
2526 0.00, -0.16, -0.16, 0.00, 0.00, 0.16, 0.00, 0.00,
2527 -0.16, -0.16, 0.00, 0.00, -0.16, -0.16, 0.12, 0.10,
2528 0.12, -0.10, 0.12, 0.10, 0.00, 0.00, 0.12, 0.10,
2529 -0.12, 0.10, 0.00, 0.00, 0.12, 0.10, 0.12, -0.10,
2530 0.00, 0.00, -0.12, -0.10, 0.00, 0.00, 0.12, 0.10,
2531 0.12, 0.00, 0.00, 0.12, 0.00, 0.00, -0.12, 0.00,
2532 0.00, 0.12, 0.12, 0.12, 0.12, 0.12, 0.00, 0.00,
2533 0.12, 0.00, 0.00, 0.12, 0.12, 0.00, 0.00, 0.12,
2534 0.00, 0.00, 0.12, -0.12, -0.12, 0.12, 0.12, -0.12,
2535 -0.12, 0.00, 0.00, 0.12, -0.12, 0.12, 0.12, -0.12,
2536 -0.12, 0.00, 0.00, -0.12, -0.12, 0.00, 0.00, -0.12,
2537 0.12, 0.00, 0.00, 0.12, 0.00, 0.00, 0.12, 0.00,
2538 0.00, 0.12, -0.12, 0.00, 0.00, -0.12, 0.12, -0.12,
2539 -0.12, 0.12, 0.00, 0.00, 0.12, 0.12, 0.12, -0.12,
2540 0.00, 0.00, -0.12, -0.12, -0.12, 0.00, 0.00, -0.12,
2541
2542 /* 4692-NA */
2543 -0.12, 0.00, 0.00, 0.12, 0.12, 0.00, 0.00, -0.12,
2544 -0.12, -0.12, -0.12, 0.12, 0.00, 0.00, 0.12, -0.12,
2545 0.00, 0.00, -0.12, -0.12, 0.00, 0.00, 0.12, -0.12,
2546 -0.12, -0.12, -0.12, 0.12, 0.12, -0.12, -0.12, 0.00,
2547 0.00, -0.12, 0.00, 0.00, -0.12, 0.12, 0.00, 0.00,
2548 0.12, 0.00, 0.00, -0.12, -0.12, 0.00, 0.00, -0.12,
2549 -0.12, 0.12, 0.00, 0.00, 0.12, 0.12, 0.00, 0.00,
2550 0.12, 0.00, 0.00, 0.12, 0.12, 0.08, 0.00, 0.04
2551 };
2552
2553/* Number of amplitude coefficients */
2554 static const int NA = (int) (sizeof a / sizeof (double));
2555
2556/* Amplitude usage: X or Y, sin or cos, power of T. */
2557 static const int jaxy[] = {0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1};
2558 static const int jasc[] = {0,1,1,0,1,0,0,1,0,1,1,0,1,0,0,1,0,1,1,0};
2559 static const int japt[] = {0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4};
2560
2561/* Miscellaneous */
2562 double t, w, pt[MAXPT+1], fa[14], xypr[2], xypl[2], xyls[2], arg,
2563 sc[2];
2564 int jpt, i, j, jxy, ialast, ifreq, m, ia, jsc;
2565
2566/*--------------------------------------------------------------------*/
2567
2568/* Interval between fundamental date J2000.0 and given date (JC). */
2569 t = ((date1 - DJ00) + date2) / DJC;
2570
2571/* Powers of T. */
2572 w = 1.0;
2573 for (jpt = 0; jpt <= MAXPT; jpt++) {
2574 pt[jpt] = w;
2575 w *= t;
2576 }
2577
2578/* Initialize totals in X and Y: polynomial, luni-solar, planetary. */
2579 for (jxy = 0; jxy < 2; jxy++) {
2580 xypr[jxy] = 0.0;
2581 xyls[jxy] = 0.0;
2582 xypl[jxy] = 0.0;
2583 }
2584
2585/* --------------------------------- */
2586/* Fundamental arguments (IERS 2003) */
2587/* --------------------------------- */
2588
2589/* Mean anomaly of the Moon. */
2590 fa[0] = iauFal03(t);
2591
2592/* Mean anomaly of the Sun. */
2593 fa[1] = iauFalp03(t);
2594
2595/* Mean argument of the latitude of the Moon. */
2596 fa[2] = iauFaf03(t);
2597
2598/* Mean elongation of the Moon from the Sun. */
2599 fa[3] = iauFad03(t);
2600
2601/* Mean longitude of the ascending node of the Moon. */
2602 fa[4] = iauFaom03(t);
2603
2604/* Planetary longitudes, Mercury through Neptune. */
2605 fa[5] = iauFame03(t);
2606 fa[6] = iauFave03(t);
2607 fa[7] = iauFae03(t);
2608 fa[8] = iauFama03(t);
2609 fa[9] = iauFaju03(t);
2610 fa[10] = iauFasa03(t);
2611 fa[11] = iauFaur03(t);
2612 fa[12] = iauFane03(t);
2613
2614/* General accumulated precession in longitude. */
2615 fa[13] = iauFapa03(t);
2616
2617/* -------------------------------------- */
2618/* Polynomial part of precession-nutation */
2619/* -------------------------------------- */
2620
2621 for (jxy = 0; jxy < 2; jxy++) {
2622 for (j = MAXPT; j >= 0; j--) {
2623 xypr[jxy] += xyp[jxy][j] * pt[j];
2624 }
2625 }
2626
2627/* ---------------------------------- */
2628/* Nutation periodic terms, planetary */
2629/* ---------------------------------- */
2630
2631/* Work backwards through the coefficients per frequency list. */
2632 ialast = NA;
2633 for (ifreq = NFPL-1; ifreq >= 0; ifreq--) {
2634
2635 /* Obtain the argument functions. */
2636 arg = 0.0;
2637 for (i = 0; i < 14; i++) {
2638 m = mfapl[ifreq][i];
2639 if (m != 0) arg += (double)m * fa[i];
2640 }
2641 sc[0] = sin(arg);
2642 sc[1] = cos(arg);
2643
2644 /* Work backwards through the amplitudes at this frequency. */
2645 ia = nc[ifreq+NFLS];
2646 for (i = ialast; i >= ia; i--) {
2647
2648 /* Coefficient number (0 = 1st). */
2649 j = i-ia;
2650
2651 /* X or Y. */
2652 jxy = jaxy[j];
2653
2654 /* Sin or cos. */
2655 jsc = jasc[j];
2656
2657 /* Power of T. */
2658 jpt = japt[j];
2659
2660 /* Accumulate the component. */
2661 xypl[jxy] += a[i-1] * sc[jsc] * pt[jpt];
2662 }
2663 ialast = ia-1;
2664 }
2665
2666/* ----------------------------------- */
2667/* Nutation periodic terms, luni-solar */
2668/* ----------------------------------- */
2669
2670/* Continue working backwards through the number of coefficients list. */
2671 for (ifreq = NFLS-1; ifreq >= 0; ifreq--) {
2672
2673 /* Obtain the argument functions. */
2674 arg = 0.0;
2675 for (i = 0; i < 5; i++) {
2676 m = mfals[ifreq][i];
2677 if (m != 0) arg += (double)m * fa[i];
2678 }
2679 sc[0] = sin(arg);
2680 sc[1] = cos(arg);
2681
2682 /* Work backwards through the amplitudes at this frequency. */
2683 ia = nc[ifreq];
2684 for (i = ialast; i >= ia; i--) {
2685
2686 /* Coefficient number (0 = 1st). */
2687 j = i-ia;
2688
2689 /* X or Y. */
2690 jxy = jaxy[j];
2691
2692 /* Sin or cos. */
2693 jsc = jasc[j];
2694
2695 /* Power of T. */
2696 jpt = japt[j];
2697
2698 /* Accumulate the component. */
2699 xyls[jxy] += a[i-1] * sc[jsc] * pt[jpt];
2700 }
2701 ialast = ia-1;
2702 }
2703
2704/* ------------------------------------ */
2705/* Results: CIP unit vector components */
2706/* ------------------------------------ */
2707
2708 *x = DAS2R * (xypr[0] + (xyls[0] + xypl[0]) / 1e6);
2709 *y = DAS2R * (xypr[1] + (xyls[1] + xypl[1]) / 1e6);
2710
2711 return;
2712
2713/*----------------------------------------------------------------------
2714**
2715** Copyright (C) 2015
2716** Standards Of Fundamental Astronomy Board
2717** of the International Astronomical Union.
2718**
2719** =====================
2720** SOFA Software License
2721** =====================
2722**
2723** NOTICE TO USER:
2724**
2725** BY USING THIS SOFTWARE YOU ACCEPT THE FOLLOWING SIX TERMS AND
2726** CONDITIONS WHICH APPLY TO ITS USE.
2727**
2728** 1. The Software is owned by the IAU SOFA Board ("SOFA").
2729**
2730** 2. Permission is granted to anyone to use the SOFA software for any
2731** purpose, including commercial applications, free of charge and
2732** without payment of royalties, subject to the conditions and
2733** restrictions listed below.
2734**
2735** 3. You (the user) may copy and distribute SOFA source code to others,
2736** and use and adapt its code and algorithms in your own software,
2737** on a world-wide, royalty-free basis. That portion of your
2738** distribution that does not consist of intact and unchanged copies
2739** of SOFA source code files is a "derived work" that must comply
2740** with the following requirements:
2741**
2742** a) Your work shall be marked or carry a statement that it
2743** (i) uses routines and computations derived by you from
2744** software provided by SOFA under license to you; and
2745** (ii) does not itself constitute software provided by and/or
2746** endorsed by SOFA.
2747**
2748** b) The source code of your derived work must contain descriptions
2749** of how the derived work is based upon, contains and/or differs
2750** from the original SOFA software.
2751**
2752** c) The names of all routines in your derived work shall not
2753** include the prefix "iau" or "sofa" or trivial modifications
2754** thereof such as changes of case.
2755**
2756** d) The origin of the SOFA components of your derived work must
2757** not be misrepresented; you must not claim that you wrote the
2758** original software, nor file a patent application for SOFA
2759** software or algorithms embedded in the SOFA software.
2760**
2761** e) These requirements must be reproduced intact in any source
2762** distribution and shall apply to anyone to whom you have
2763** granted a further right to modify the source code of your
2764** derived work.
2765**
2766** Note that, as originally distributed, the SOFA software is
2767** intended to be a definitive implementation of the IAU standards,
2768** and consequently third-party modifications are discouraged. All
2769** variations, no matter how minor, must be explicitly marked as
2770** such, as explained above.
2771**
2772** 4. You shall not cause the SOFA software to be brought into
2773** disrepute, either by misuse, or use for inappropriate tasks, or
2774** by inappropriate modification.
2775**
2776** 5. The SOFA software is provided "as is" and SOFA makes no warranty
2777** as to its use or performance. SOFA does not and cannot warrant
2778** the performance or results which the user may obtain by using the
2779** SOFA software. SOFA makes no warranties, express or implied, as
2780** to non-infringement of third party rights, merchantability, or
2781** fitness for any particular purpose. In no event will SOFA be
2782** liable to the user for any consequential, incidental, or special
2783** damages, including any lost profits or lost savings, even if a
2784** SOFA representative has been advised of such damages, or for any
2785** claim by any third party.
2786**
2787** 6. The provision of any version of the SOFA software under the terms
2788** and conditions specified herein does not imply that future
2789** versions will also be made available under the same terms and
2790** conditions.
2791*
2792** In any published work or commercial product which uses the SOFA
2793** software directly, acknowledgement (see www.iausofa.org) is
2794** appreciated.
2795**
2796** Correspondence concerning SOFA software should be addressed as
2797** follows:
2798**
2799** By email: sofa@ukho.gov.uk
2800** By post: IAU SOFA Center
2801** HM Nautical Almanac Office
2802** UK Hydrographic Office
2803** Admiralty Way, Taunton
2804** Somerset, TA1 2DN
2805** United Kingdom
2806**
2807**--------------------------------------------------------------------*/
2808}
Note: See TracBrowser for help on using the repository browser.