├── src └── oyyq │ └── calendar │ └── util │ ├── elpmpp02 │ ├── data │ │ ├── Elp_Main.java │ │ ├── Elp_Pert.java │ │ ├── Elp_Main_S3.java │ │ └── Elp_Main_S2.java │ ├── ElpMpp02Constants.java │ └── ElpMpp02Util.java │ ├── Function.java │ ├── SolarTerms.java │ ├── SolarTermsCalculator.java │ ├── NewMoonCalculator.java │ ├── MathUtil.java │ ├── iau │ ├── Iau1980Util.java │ └── Iau2000BUtil.java │ ├── elp82simple │ └── Elp82Util.java │ └── CalendarUtil.java ├── .classpath ├── .gitignore ├── .project └── README.md /src/oyyq/calendar/util/elpmpp02/data/Elp_Main.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elpmpp02.data; 2 | 3 | public class Elp_Main {} 4 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/elpmpp02/data/Elp_Pert.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elpmpp02.data; 2 | 3 | public class Elp_Pert {} 4 | -------------------------------------------------------------------------------- /.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/Function.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util; 2 | 3 | public interface Function { 4 | 5 | /** 6 | * 计算函数值 7 | * 8 | * @param x 9 | * 自变量 10 | * @return 函数值 11 | */ 12 | public double f(double x); 13 | } 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | *.S* 3 | *Parser.java 4 | 5 | # Mobile Tools for Java (J2ME) 6 | .mtj.tmp/ 7 | 8 | # Package Files # 9 | *.jar 10 | *.war 11 | *.ear 12 | 13 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml 14 | hs_err_pid* 15 | 16 | #eclipse .settings 17 | .settings/ 18 | /bin 19 | -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | ChineseLunarCalendar 4 | 5 | 6 | 7 | 8 | 9 | org.eclipse.jdt.core.javabuilder 10 | 11 | 12 | 13 | 14 | 15 | org.eclipse.jdt.core.javanature 16 | 17 | 18 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 中国农历计算程序 2 | ================ 3 | 4 | 本程序利用天文数据推算二十四节气以及中国农历历法。目前已完成节气推算和新月时间推算功能,误差均在1秒以内 5 | 6 | 计算节气时间可调用`oyyq.calendar.util.SolarTermsCalculator.getJulianDayInYearForTermOrder(SolarTerms, int)`计算得到。 7 | 计算新月时间可调用`oyyq.calendar.util.NewMoonCalculator.getJulianDayInYearAndMonthForNewMoon(int, int)`计算得到。 8 | 以上得到的时间是以地球时计算的儒略日,如需转换成实际时间,还需要转成UTC时间再转成日历时间。 9 | 可参考`oyyq.calendar.util.CalendarUtil.fromJulianDate(double, TimeZone, boolean)`函数以及`oyyq.calendar.util.NewMoonCaculator.main(String[])`的调用。 10 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/SolarTerms.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util; 2 | 3 | public enum SolarTerms { 4 | 5 | XIAO_HAN(20, "小寒", 1, 5), 6 | DA_HAN(21, "大寒", 1, 22), 7 | LI_CHUN(22, "立春", 2, 5), 8 | YU_SHUI(23, "雨水", 2, 22), 9 | JING_ZHE(24, "惊蛰", 3, 5), 10 | CHUN_FEN(1, "春分", 3, 22), 11 | QING_MING(2, "清明", 4, 5), 12 | GU_YU(3, "谷雨", 4, 22), 13 | LI_XIA(4, "立夏", 5, 5), 14 | XIAO_MAN(5, "小满", 5, 22), 15 | MANG_ZHONG(6, "芒种", 6, 5), 16 | XIA_ZHI(7, "夏至", 6, 22), 17 | XIAO_SHU(8, "小暑", 7, 5), 18 | DA_SHU(9, "大暑", 7, 22), 19 | LI_QIU(10, "立秋", 8, 5), 20 | CHU_SHU(11, "处暑", 8, 22), 21 | BAI_LU(12, "白露", 9, 5), 22 | QIU_FEN(13, "秋分", 9, 22), 23 | HAN_LU(14, "寒露", 10, 5), 24 | SHUANG_JIANG(15, "霜降", 10, 22), 25 | LI_DONG(16, "立冬", 11, 5), 26 | XIAO_XUE(17, "小雪", 11, 22), 27 | DA_XUE(18, "大雪", 12, 5), 28 | DONG_ZHI(19, "冬至", 12, 22); 29 | 30 | private int order; 31 | private String name; 32 | private int month; 33 | private int estimateDate; 34 | 35 | SolarTerms(int order, String name, int month, int estimateDate) { 36 | this.order = order; 37 | this.name = name; 38 | this.month = month; 39 | this.estimateDate = estimateDate; 40 | } 41 | 42 | public int getOrder() { 43 | return order; 44 | } 45 | 46 | public String getName() { 47 | return name; 48 | } 49 | 50 | public int getMonth() { 51 | return month; 52 | } 53 | 54 | public int getEstimateDate() { 55 | return estimateDate; 56 | } 57 | 58 | } 59 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/SolarTermsCalculator.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util; 2 | 3 | import static java.lang.Math.PI; 4 | import static oyyq.calendar.util.CalendarUtil.fromJulianDate; 5 | import static oyyq.calendar.util.CalendarUtil.toJulianDate; 6 | import static oyyq.calendar.util.MathUtil.modPi; 7 | import static oyyq.calendar.util.MathUtil.newtonIteration; 8 | import static oyyq.calendar.util.Vsop87dEarthUtil.getEarthEclipticLongitudeForSun; 9 | 10 | import java.util.Calendar; 11 | import java.util.Map; 12 | 13 | /** 14 | * 使用牛顿迭代法计算24节气的时间 求解的方程为:
15 | * f(x) = Vsop87dEarthUtil.getEarthEclipticLongitudeForSun(x) - angle = 0 16 | * 17 | * @author oyyq 18 | */ 19 | public class SolarTermsCalculator { 20 | 21 | private static final double RADIANS_PER_TERM = PI / 12; 22 | 23 | /** 24 | * 用牛顿迭代计算节气时间 25 | * 26 | * @param term 27 | * 节气 28 | * @param year 29 | * 年份 30 | * @return 节气时间的儒略日 31 | */ 32 | public static double getJulianDayInYearForTermOrder(SolarTerms term, int year) { 33 | int order = term.getOrder(); 34 | double angle = (order - 1) * RADIANS_PER_TERM; 35 | int month = term.getMonth(); 36 | int estimateDate = term.getEstimateDate(); 37 | double jd1 = toJulianDate(year, month, estimateDate); 38 | double jd = newtonIteration( 39 | (double x) -> modPi(getEarthEclipticLongitudeForSun(x) - angle), jd1); 40 | return jd; 41 | } 42 | 43 | public static void main(String[] args) { 44 | for (SolarTerms term : SolarTerms.values()) { 45 | double jd = getJulianDayInYearForTermOrder(term, 2011); 46 | jd -= CalendarUtil.getDeltaT(jd) / 86400; // 由TT转换成UTC 47 | Calendar cal = fromJulianDate(jd + 8.0 / 24.0); // 东8区 48 | System.out.println(term.getName() 49 | + ": " 50 | + String.format("%04d-%02d-%02d %02d:%02d:%02d.%03d", cal.get(Calendar.YEAR), 51 | cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DATE), 52 | cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), 53 | cal.get(Calendar.SECOND), cal.get(Calendar.MILLISECOND))); 54 | } 55 | } 56 | 57 | } 58 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/NewMoonCalculator.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util; 2 | 3 | import static oyyq.calendar.util.CalendarUtil.fromJulianDate; 4 | import static oyyq.calendar.util.CalendarUtil.toJulianDate; 5 | import static oyyq.calendar.util.MathUtil.modPi; 6 | import static oyyq.calendar.util.MathUtil.newtonIteration; 7 | import static oyyq.calendar.util.Vsop87dEarthUtil.getEarthEclipticLongitudeForSun; 8 | import static oyyq.calendar.util.elp82simple.Elp82Util.getEarthEclipticLongitudeForMoon; 9 | 10 | import java.util.ArrayList; 11 | import java.util.Calendar; 12 | 13 | /** 14 | * 使用牛顿迭代法计算日月合朔的时间 求解的方程为:
15 | * f(x) = Vsop87dEarthUtil.getEarthEclipticLongitudeForSun(x) - 16 | * ElpMpp02Util.getEarthEclipticLongitudeForMoon(x) = 0 17 | * 18 | * @author oyyq 19 | */ 20 | public class NewMoonCalculator { 21 | 22 | /** 23 | * 用牛顿迭代计算日月合朔时间 24 | * 25 | * @param term 26 | * 节气 27 | * @param year 28 | * 年份 29 | * @return 节气时间的儒略日 30 | */ 31 | public static ArrayList getJulianDayInYearAndMonthForNewMoon(int year, int month) { 32 | ArrayList jds = new ArrayList(); 33 | double lastJd = 0.0d; 34 | for (int i = 0; i < 2; i++) { 35 | double jd1 = toJulianDate(year, month, 10 * (i + 1)); 36 | double jd = newtonIteration((double x) -> modPi(getEarthEclipticLongitudeForSun(x) 37 | - getEarthEclipticLongitudeForMoon(x)), jd1); 38 | Calendar cal = fromJulianDate(jd); 39 | if (cal.get(Calendar.MONTH) + 1 == month && (jd - lastJd > 1e-7)) { 40 | jds.add(jd); 41 | lastJd = jd; 42 | } 43 | } 44 | return jds; 45 | } 46 | 47 | public static void main(String[] args) { 48 | for (int month = 1; month <= 12; month++) { 49 | ArrayList jds = getJulianDayInYearAndMonthForNewMoon(1995, month); 50 | for (double jd : jds) { 51 | Calendar cal = fromJulianDate(jd); 52 | System.out.println(String.format("%04d-%02d-%02d %02d:%02d:%02d.%03d", 53 | cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DATE), 54 | cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), 55 | cal.get(Calendar.SECOND), cal.get(Calendar.MILLISECOND))); 56 | } 57 | } 58 | } 59 | 60 | } 61 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/MathUtil.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util; 2 | 3 | import static java.lang.Math.PI; 4 | import static java.lang.Math.toRadians; 5 | import static java.lang.Math.abs; 6 | 7 | public class MathUtil { 8 | 9 | /** 10 | * 把角秒换算成弧度 11 | * 12 | * @param seconds 13 | * 角秒 14 | * @return 对应的弧度值 15 | */ 16 | public static double secondsToRadians(double seconds) { 17 | return toRadians(secondsToDegrees(seconds)); 18 | } 19 | 20 | /** 21 | * 把角度限制在[0, 2π]之间 22 | * 23 | * @param r 24 | * 原角度(rad) 25 | * @return 转换后的角度(rad) 26 | */ 27 | public static double mod2Pi(double r) { 28 | while (r < 0) { 29 | r += PI * 2; 30 | } 31 | while (r > 2 * PI) { 32 | r -= PI * 2; 33 | } 34 | return r; 35 | } 36 | 37 | /** 38 | * 把角度限制在[-π, π]之间 39 | * 40 | * @param r 41 | * 原角度(rad) 42 | * @return 转换后的角度(rad) 43 | */ 44 | public static double modPi(double r) { 45 | while (r < -PI) { 46 | r += PI * 2; 47 | } 48 | while (r > PI) { 49 | r -= PI * 2; 50 | } 51 | return r; 52 | } 53 | 54 | /** 55 | * 把角秒换算成角度 56 | * 57 | * @param seconds 58 | * 角秒 59 | * @return 对应的弧度值 60 | */ 61 | public static double secondsToDegrees(double seconds) { 62 | return seconds / 3600; 63 | } 64 | 65 | /** 66 | * 把度分秒表示的角度换算成度(deg) 67 | * 68 | * @param d 69 | * 度 70 | * @param m 71 | * 分 72 | * @param s 73 | * 秒 74 | * @return 换算成度的值 75 | */ 76 | public static double dmsToDegrees(int d, int m, double s) { 77 | return d + m / 60.0 + s / 3600; 78 | } 79 | 80 | /** 81 | * 把度分秒表示的角度换算成秒(arcsecond) 82 | * 83 | * @param d 84 | * 度 85 | * @param m 86 | * 分 87 | * @param s 88 | * 秒 89 | * @return 换算成秒的值 90 | */ 91 | public static double dmsToSeconds(int d, int m, double s) { 92 | return d * 3600 + m * 60 + s; 93 | } 94 | 95 | /** 96 | * 把度分秒表示的角度换算成弧度(rad) 97 | * 98 | * @param d 99 | * 度 100 | * @param m 101 | * 分 102 | * @param s 103 | * 秒 104 | * @return 换算成弧度的值 105 | */ 106 | public static double dmsToRadians(int d, int m, double s) { 107 | return toRadians(dmsToDegrees(d, m, s)); 108 | } 109 | 110 | /** 111 | * 牛顿迭代求解方程的根 112 | * 113 | * @param f 114 | * 方程表达式 115 | * @param x0 116 | * 对根的估值 117 | * @return 在x0附近的一个根 118 | */ 119 | public static double newtonIteration(Function f, double x0) { 120 | final double EPSILON = 1e-7; 121 | final double DELTA = 5e-6; 122 | double x; 123 | do { 124 | x = x0; 125 | double fx = f.f(x); 126 | double fpx = (f.f(x + DELTA) - f.f(x - DELTA)) / DELTA / 2; 127 | x0 = x - fx / fpx; 128 | } while (abs(x0 - x) > EPSILON); 129 | return x; 130 | } 131 | } 132 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/iau/Iau1980Util.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.iau; 2 | 3 | import static java.lang.Math.sin; 4 | import static java.lang.Math.toRadians; 5 | import static oyyq.calendar.util.CalendarUtil.getJulianCentury; 6 | import oyyq.calendar.util.CalendarUtil; 7 | 8 | /** 9 | * 根据IAU 1980的数据计算章动 10 | * 11 | * @author oyyq 12 | */ 13 | public class Iau1980Util { 14 | 15 | /** 16 | * 计算黄经章动 17 | * 18 | * @param jd 19 | * 儒略日 20 | * @return 章动的值(rad) 21 | */ 22 | public static double getLongitudeNutation(double jd) { 23 | double t = getJulianCentury(jd); 24 | double el = getEl(t); 25 | double elp = getElp(t); 26 | double f = getF(t); 27 | double d = getD(t); 28 | double om = getOm(t); 29 | return getLongitudeNutation(t, el, elp, f, d, om); 30 | 31 | } 32 | 33 | private static double getLongitudeNutation(double t, double el, double elp, double f, double d, 34 | double om) { 35 | double n = 0.0; 36 | 37 | n += sin(om) * (-174.2 * t - 171996); 38 | n += sin(2 * (f + om - d)) * (-1.6 * t - 13187); 39 | n += sin(2 * (f + om)) * (-2274 - 0.2 * t); 40 | n += sin(2 * om) * (0.2 * t + 2062); 41 | n += sin(elp) * (1426 - 3.4 * t); 42 | n += sin(el) * (0.1 * t + 712); 43 | n += sin(2 * (f + om - d) + elp) * (1.2 * t - 517); 44 | n += sin(2 * f + om) * (-0.4 * t - 386); 45 | n -= 301 * sin(2 * (f + om) + el); 46 | n += sin(2 * (f + om - d) - elp) * (217 - 0.5 * t); 47 | n -= 158 * sin(el - 2 * d); 48 | n += sin(2 * (f - d) + om) * (129 + 0.1 * t); 49 | n += 123 * sin(2 * (f + om) - el); 50 | n += 63 * sin(2 * d); 51 | n += sin(el + om) * (0.1 * t + 63); 52 | n -= 59 * sin(2 * (d + f + om) - el); 53 | n += sin(om - el) * (-0.1 * t - 58); 54 | n -= 51 * sin(2 * f + el + om); 55 | n += 48 * sin(2 * (el - d)); 56 | n += 46 * sin(2 * (f - el) + om); 57 | n -= 38 * sin(2 * (d + f + om)); 58 | n -= 31 * sin(2 * (el + f + om)); 59 | n += 29 * sin(2 * el); 60 | n += 29 * sin(2 * (f + om - d) + el); 61 | n += 26 * sin(2 * f); 62 | n -= 22 * sin(2 * (f - d)); 63 | n += 21 * sin(2 * f + om - el); 64 | n += sin(2 * elp) * (17 - 0.1 * t); 65 | n += 16 * sin(2 * d - el + om); 66 | n += sin(2 * (elp + f + om - d)) * (0.1 * t - 16); 67 | n -= 15 * sin(elp + om); 68 | n -= 13 * sin(el + om - 2 * d); 69 | n -= 12 * sin(om - elp); 70 | n += 11 * sin(2 * (el - f)); 71 | n -= 10 * sin(2 * (f + d) + om - el); 72 | n -= 8 * sin(2 * (f + d + om) + el); 73 | n += 7 * sin(2 * (f + om) + elp); 74 | n -= 7 * sin(el - 2 * d + elp); 75 | n -= 7 * sin(2 * (f + om) - elp); 76 | n -= 7 * sin(2 * d + 2 * f + om); 77 | n += 6 * sin(2 * d + el); 78 | n += 6 * sin(2 * (el + f + om - d)); 79 | n += 6 * sin(2 * (f - d) + el + om); 80 | n -= 6 * sin(2 * (d - el) + om); 81 | n -= 6 * sin(2 * d + om); 82 | n += 5 * sin(el - elp); 83 | n -= 5 * sin(2 * (f - d) + om - elp); 84 | n -= 5 * sin(om - 2 * d); 85 | n -= 5 * sin(2 * (el + f) + om); 86 | n += 4 * sin(2 * (el - d) + om); 87 | n += 4 * sin(2 * (f - d) + elp + om); 88 | n += 4 * sin(el - 2 * f); 89 | n -= 4 * sin(el - d); 90 | n -= 4 * sin(elp - 2 * d); 91 | n -= 4 * sin(d); 92 | n += 3 * sin(2 * f + el); 93 | n -= 3 * sin(2 * (f + om - el)); 94 | n -= 3 * sin(el - d - elp); 95 | n -= 3 * sin(elp + el); 96 | n -= 3 * sin(2 * (f + om) + el - elp); 97 | n -= 3 * sin(2 * (d + f + om) - elp - el); 98 | n -= 3 * sin(2 * (f + om) + 3 * el); 99 | n -= 3 * sin(2 * (d + f + om) - elp); 100 | 101 | n /= 36000000.0d; 102 | return toRadians(n); 103 | } 104 | 105 | private static double getEl(double t) { 106 | double t2 = t * t; 107 | double t3 = t2 * t; 108 | return toRadians(134.96298 + 477198.867398 * t + 0.0086972 * t2 + (t3 / 56250)); 109 | } 110 | 111 | private static double getElp(double t) { 112 | double t2 = t * t; 113 | double t3 = t2 * t; 114 | return toRadians(357.52772 + 35999.05034 * t - 0.0001603 * t2 - (t3 / 300000)); 115 | } 116 | 117 | private static double getF(double t) { 118 | double t2 = t * t; 119 | double t3 = t2 * t; 120 | return toRadians(93.27191 + 483202.017538 * t - 0.0036825 * t2 + (t3 / 327270)); 121 | } 122 | 123 | private static double getD(double t) { 124 | double t2 = t * t; 125 | double t3 = t2 * t; 126 | return toRadians(297.85036 + 445267.11148 * t - 0.0019142 * t2 + (t3 / 189474)); 127 | } 128 | 129 | private static double getOm(double t) { 130 | double t2 = t * t; 131 | double t3 = t2 * t; 132 | return toRadians(125.04452 - 1934.136261 * t + 0.0020708 * t2 + (t3 / 450000)); 133 | } 134 | 135 | public static void main(String[] args) { 136 | double jd = CalendarUtil.toJulianDate(2014, 5, 5, 5, 5, 5); 137 | double t = getJulianCentury(jd); 138 | double ln = getLongitudeNutation(jd); 139 | System.out.println(jd); 140 | System.out.println(t); 141 | System.out.println(Math.toDegrees(ln)); 142 | System.out.println(Math.toDegrees(ln) * 3600); 143 | } 144 | } 145 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/elp82simple/Elp82Util.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elp82simple; 2 | 3 | import static java.lang.Math.sin; 4 | import static java.lang.Math.toRadians; 5 | import static oyyq.calendar.util.CalendarUtil.getJulianCentury; 6 | import static oyyq.calendar.util.MathUtil.mod2Pi; 7 | import static oyyq.calendar.util.iau.Iau2000BUtil.getLongitudeNutation; 8 | 9 | public class Elp82Util { 10 | 11 | /** 12 | * L' = 218.3164477 + 481267.88123421 * t - 0.0015786 * t² + t³ / 538841 - t⁴ / 6519400 13 | * 14 | * @param t 15 | * 儒略世纪数 16 | * @return L'的值(rad) 17 | */ 18 | private static double getLp(double t) { 19 | double t2 = t * t; 20 | double t3 = t2 * t; 21 | double t4 = t3 * t; 22 | return mod2Pi(toRadians(218.3164477 + 481267.88123421 * t - 0.0015786 * t2 + t3 / 538841 23 | - t4 / 6519400)); 24 | } 25 | 26 | /** 27 | * D = 297.8501921 + 445267.1114034 * t - 0.0018819 * t² + t³ / 545868 - t⁴ / 113065000 28 | * 29 | * @param t 30 | * 儒略世纪数 31 | * @return D的值(rad) 32 | */ 33 | private static double getD(double t) { 34 | double t2 = t * t; 35 | double t3 = t2 * t; 36 | double t4 = t3 * t; 37 | return mod2Pi(toRadians(297.8501921 + 445267.1114034 * t - 0.0018819 * t2 + t3 / 545868 38 | - t4 / 113065000)); 39 | } 40 | 41 | /** 42 | * M = 357.5291092 + 35999.0502909 * t - 0.0001536 * t² + t³ / 24490000 43 | * 44 | * @param t 45 | * 儒略世纪数 46 | * @return M的值(rad) 47 | */ 48 | private static double getM(double t) { 49 | double t2 = t * t; 50 | double t3 = t2 * t; 51 | return mod2Pi(toRadians(357.5291092 + 35999.0502909 * t - 0.0001536 * t2 + t3 / 24490000)); 52 | } 53 | 54 | /** 55 | * M' = 134.9633964 + 477198.8675055 * t + 0.0087414 * t² + t³ / 69699 - t⁴ / 14712000 56 | * 57 | * @param t 58 | * 儒略世纪数 59 | * @return M'的值(rad) 60 | */ 61 | private static double getMp(double t) { 62 | double t2 = t * t; 63 | double t3 = t2 * t; 64 | double t4 = t3 * t; 65 | return mod2Pi(toRadians(134.9633964 + 477198.8675055 * t + 0.0087414 * t2 + t3 / 69699 - t4 66 | / 14712000)); 67 | } 68 | 69 | /** 70 | * F = 93.2720950 + 483202.0175233 * t - 0.0036539 * t² - t³ / 3526000 + t⁴ / 863310000 71 | * 72 | * @param t 73 | * 儒略世纪数 74 | * @return F的值(rad) 75 | */ 76 | private static double getF(double t) { 77 | double t2 = t * t; 78 | double t3 = t2 * t; 79 | double t4 = t3 * t; 80 | return mod2Pi(toRadians(93.2720950 + 483202.0175233 * t - 0.0036539 * t2 - t3 / 3526000 81 | + t4 / 863310000)); 82 | } 83 | 84 | /** 85 | * A1 = 119.75 + 131.849 * t 86 | * 87 | * @param t 88 | * 儒略世纪数 89 | * @return A1的值(rad) 90 | */ 91 | private static double getA1(double t) { 92 | return mod2Pi(toRadians(119.75 + 131.849 * t)); 93 | } 94 | 95 | /** 96 | * A2 = 53.09 + 479264.290 * t 97 | * 98 | * @param t 99 | * 儒略世纪数 100 | * @return A2的值(rad) 101 | */ 102 | private static double getA2(double t) { 103 | return mod2Pi(toRadians(53.09 + 479264.290 * t)); 104 | } 105 | 106 | /** 107 | * E = 1 - 0.002516 * t - 0.0000074 * t² 108 | * 109 | * @param t 110 | * 儒略世纪数 111 | * @return E的值 112 | */ 113 | private static double getE(double t) { 114 | double t2 = t * t; 115 | return 1 - 0.002516 * t - 0.0000074 * t2; 116 | } 117 | 118 | private static double getSumL(double t) { 119 | double d = getD(t); 120 | double m = getM(t); 121 | double mp = getMp(t); 122 | double f = getF(t); 123 | double lp = getLp(t); 124 | double e = getE(t); 125 | double e2 = e * e; 126 | 127 | double a1 = getA1(t); 128 | double a2 = getA2(t); 129 | double sumL = 0.0; 130 | 131 | sumL += 6288774 * sin(mp); 132 | sumL += 1274027 * sin(2 * d - mp); 133 | sumL += 658314 * sin(2 * d); 134 | sumL += 213618 * sin(2 * mp); 135 | sumL += -185116 * e * sin(m); 136 | sumL += -114332 * sin(2 * f); 137 | sumL += 58793 * sin(2 * d - 2 * mp); 138 | sumL += 57066 * e * sin(2 * d - m - mp); 139 | sumL += 53322 * sin(2 * d + mp); 140 | sumL += 45758 * e * sin(2 * d - m); 141 | sumL += -40923 * e * sin(m - mp); 142 | sumL += -34720 * sin(d); 143 | sumL += -30383 * e * sin(m + mp); 144 | sumL += 15327 * sin(2 * d - 2 * f); 145 | sumL += -12528 * sin(mp + 2 * f); 146 | sumL += 10980 * sin(mp - 2 * f); 147 | sumL += 10675 * sin(4 * d - mp); 148 | sumL += 10034 * sin(3 * mp); 149 | sumL += 8548 * sin(4 * d - 2 * mp); 150 | sumL += -7888 * e * sin(2 * d + m - mp); 151 | sumL += -6766 * e * sin(2 * d + m); 152 | sumL += -5163 * sin(d - mp); 153 | sumL += 4987 * e * sin(d + m); 154 | sumL += 4036 * e * sin(2 * d - m + mp); 155 | sumL += 3994 * sin(2 * d + 2 * mp); 156 | sumL += 3861 * sin(4 * d); 157 | sumL += 3665 * sin(2 * d - 3 * mp); 158 | sumL += -2689 * e * sin(m - 2 * mp); 159 | sumL += -2602 * sin(2 * d - mp + 2 * f); 160 | sumL += 2390 * e * sin(2 * d - m - 2 * mp); 161 | sumL += -2348 * sin(d + mp); 162 | sumL += 2236 * e2 * sin(2 * d - 2 * m); 163 | sumL += -2120 * e * sin(m + 2 * mp); 164 | sumL += -2069 * e2 * sin(2 * m); 165 | sumL += 2048 * e2 * sin(2 * d - 2 * m - mp); 166 | sumL += -1773 * sin(2 * d + mp - 2 * f); 167 | sumL += -1595 * sin(2 * d + 2 * f); 168 | sumL += 1215 * e * sin(4 * d - m - mp); 169 | sumL += -1110 * sin(2 * mp + 2 * f); 170 | sumL += -892 * sin(3 * d - mp); 171 | sumL += -810 * e * sin(2 * d + m + mp); 172 | sumL += 759 * e * sin(4 * d - m - 2 * mp); 173 | sumL += -713 * e2 * sin(2 * m - mp); 174 | sumL += -700 * e2 * sin(2 * d + 2 * m - mp); 175 | sumL += 691 * e * sin(2 * d + m - 2 * mp); 176 | sumL += 596 * e * sin(2 * d - m - 2 * f); 177 | sumL += 549 * sin(4 * d + mp); 178 | sumL += 537 * sin(4 * mp); 179 | sumL += 520 * e * sin(4 * d - m); 180 | sumL += -487 * sin(d - 2 * mp); 181 | sumL += -399 * e * sin(2 * d + m - 2 * f); 182 | sumL += -381 * sin(2 * mp - 2 * f); 183 | sumL += 351 * e * sin(d + m + mp); 184 | sumL += -340 * sin(3 * d - 2 * mp); 185 | sumL += 330 * sin(4 * d - 3 * mp); 186 | sumL += 327 * e * sin(2 * d - m + 2 * mp); 187 | sumL += -323 * e2 * sin(2 * m + mp); 188 | sumL += 299 * e * sin(d + m - mp); 189 | sumL += 294 * sin(2 * d + 3 * mp); 190 | 191 | sumL += 3958 * sin(a1) + 1962 * sin(lp - f) + 318 * sin(a2); 192 | 193 | return sumL; 194 | } 195 | 196 | /** 197 | * 按儒略日计算月球的地心黄经 198 | * 199 | * @param jd 200 | * 儒略日 201 | * @return 月球的地心黄经,单位是弧度(rad) 202 | */ 203 | public static double getEarthEclipticLongitudeForMoon(double jd) { 204 | double t = getJulianCentury(jd); 205 | return getLp(t) + toRadians(getSumL(t) / 1000000) + getLongitudeNutation(jd); 206 | } 207 | 208 | public static void main(String[] args) { 209 | System.out.println(Math.toDegrees(getEarthEclipticLongitudeForMoon(2448724.5))); 210 | } 211 | } 212 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/elpmpp02/ElpMpp02Constants.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elpmpp02; 2 | 3 | import static java.lang.Math.PI; 4 | 5 | class ElpMpp02Constants { 6 | 7 | private static final double D2R = PI / 180.0; 8 | private static final double S2R = PI / 180.0 / 3600.0; 9 | 10 | static final double P = 5029.0966; 11 | static final double DELTAU_P = -0.29965; 12 | static final double GALPHA = 0.002571881; 13 | 14 | static final double LAMBDA_ME_0 = (252 + 15 / 60.0 + 3.216919 / 3600.0) * D2R; 15 | static final double LAMBDA_ME_1 = 538101628.68888 * S2R; 16 | 17 | static final double LAMBDA_V_0 = (181 + 58 / 60.0 + 44.758419 / 3600.0) * D2R; 18 | static final double LAMBDA_V_1 = 210664136.45777 * S2R; 19 | 20 | static final double LAMBDA_MA_0 = (355 + 26 / 60.0 + 3.642778 / 3600.0) * D2R; 21 | static final double LAMBDA_MA_1 = 68905077.65936 * S2R; 22 | 23 | static final double LAMBDA_J_0 = (34 + 21 / 60.0 + 5.379392 / 3600.0) * D2R; 24 | static final double LAMBDA_J_1 = 10925660.57335 * S2R; 25 | 26 | static final double LAMBDA_S_0 = (50 + 4 / 60.0 + 38.902495 / 3600.0) * D2R; 27 | static final double LAMBDA_S_1 = 4399609.33632 * S2R; 28 | 29 | static final double LAMBDA_U_0 = (314 + 3 / 60.0 + 4.354234 / 3600.0) * D2R; 30 | static final double LAMBDA_U_1 = 1542482.57845 * S2R; 31 | 32 | static final double LAMBDA_N_0 = (304 + 20 / 60.0 + 56.808371 / 3600.0) * D2R; 33 | static final double LAMBDA_N_1 = 786547.89700 * S2R; 34 | 35 | static final double DELTAU_W1_0_DE = -0.07008; 36 | static final double DELTAU_W2_0_DE = +0.20794; 37 | static final double DELTAU_W3_0_DE = -0.07215; 38 | static final double DELTAU_W1_1_DE = -0.35106; 39 | static final double DELTAU_NU_DE = DELTAU_W1_1_DE; 40 | static final double DELTAU_W2_1_DE = +0.08017; 41 | static final double DELTAU_W3_1_DE = -0.04317; 42 | static final double DELTAU_W1_2_DE = -0.03743; 43 | static final double DELTAU_GGAMMA_DE = +0.00085; 44 | static final double DELTAU_E_DE = -0.00006; 45 | static final double DELTAU_T_0_DE = -0.00033; 46 | static final double DELTAU_T_1_DE = +0.00732; 47 | static final double DELTAU_NP_DE = DELTAU_T_1_DE; 48 | static final double DELTAU_GOMEGAP_0_DE = -0.00749; 49 | static final double DELTAU_EP_DE = +0.00224; 50 | 51 | static final double BP_21 = +0.311079095; 52 | static final double BP_22 = -0.004482398; 53 | static final double BP_23 = -0.001102485; 54 | static final double BP_24 = +0.001056062; 55 | static final double BP_25 = +0.000050928; 56 | 57 | static final double BP_31 = -0.103837907; 58 | static final double BP_32 = +0.000668287; 59 | static final double BP_33 = -0.001298072; 60 | static final double BP_34 = -0.000178028; 61 | static final double BP_35 = -0.000037342; 62 | 63 | static final double DELTAU_W1_3 = -0.00018865; 64 | static final double DELTAU_W1_4 = -0.00001024; 65 | static final double DELTAU_W2_2 = +0.00470602; 66 | static final double DELTAU_W2_3 = -0.00025213; 67 | static final double DELTAU_W3_2 = -0.00261070; 68 | static final double DELTAU_W3_3 = -0.00010712; 69 | 70 | static final double T_0 = (100 + 27 / 60.0 + (59.13885 + DELTAU_T_0_DE) / 3600.0) 71 | * D2R; 72 | static final double T_1 = (129597742.2930 + DELTAU_T_1_DE) * S2R; 73 | static final double T_2 = -0.0202 * S2R; 74 | static final double T_3 = 0.000009 * S2R; 75 | static final double T_4 = 0.00000015 * S2R; 76 | 77 | static final double NP = T_1; 78 | 79 | static final double W1_0 = (218 + 18 / 60.0 + (59.95571 + DELTAU_W1_0_DE) / 3600.0) 80 | * D2R; 81 | static final double W1_1 = (1732559343.73604 + DELTAU_W1_1_DE) * S2R; 82 | static final double GNU = W1_1; 83 | static final double M = NP / GNU; 84 | static final double W1_2 = (-6.8084 + DELTAU_W1_2_DE) * S2R; 85 | static final double W1_3 = (0.006604 + DELTAU_W1_3) * S2R; 86 | static final double W1_4 = (-0.00003169 + DELTAU_W1_4) * S2R; 87 | 88 | static final double W2_0 = (83 + 21 / 60.0 + (11.67475 + DELTAU_W2_0_DE) / 3600.0) 89 | * D2R; 90 | private static final double W21 = (14643420.3171 + DELTAU_W2_1_DE) * S2R; 91 | static final double W2_1 = W21 92 | + ((W21 / GNU - M 93 | * (BP_21 + 2 / 3.0 * GALPHA / M 94 | * BP_25)) 95 | * DELTAU_W1_1_DE 96 | + (BP_21 + 2 / 3.0 * GALPHA / M 97 | * BP_25) 98 | * DELTAU_T_1_DE + GNU 99 | * (BP_22 * DELTAU_GGAMMA_DE 100 | + BP_23 * DELTAU_E_DE + BP_24 101 | * DELTAU_EP_DE)) * S2R; 102 | static final double W2_2 = (-38.2631 + DELTAU_W2_2) * S2R; 103 | static final double W2_3 = (-0.045047 + DELTAU_W2_3) * S2R; 104 | static final double W2_4 = 0.00021301 * S2R; 105 | 106 | static final double W3_0 = (125 + 2 / 60.0 + (40.39816 + DELTAU_W3_0_DE) / 3600.0) 107 | * D2R; 108 | private static final double W31 = (-6967919.5383 + DELTAU_W3_1_DE) * S2R; 109 | static final double W3_1 = W31 110 | + ((W31 / GNU - M 111 | * (BP_31 + 2 / 3.0 * GALPHA / M 112 | * BP_35)) 113 | * DELTAU_W1_1_DE 114 | + (BP_31 + 2 / 3.0 * GALPHA / M 115 | * BP_35) 116 | * DELTAU_T_1_DE + GNU 117 | * (BP_32 * DELTAU_GGAMMA_DE 118 | + BP_33 * DELTAU_E_DE + BP_34 119 | * DELTAU_EP_DE)) * S2R; 120 | static final double W3_2 = (6.3590 + DELTAU_W3_2) * S2R; 121 | static final double W3_3 = (0.007625 + DELTAU_W3_3) * S2R; 122 | static final double W3_4 = -0.00003586 * S2R; 123 | 124 | static final double DELTA_GNU = (0.55604 + DELTAU_W1_1_DE) * S2R / W1_1; 125 | static final double DELTA_GGAMMA = (-0.08066 + DELTAU_GGAMMA_DE) * S2R; 126 | static final double DELTA_E = (0.01789 + DELTAU_E_DE) * S2R; 127 | static final double DELTA_EP = (-0.12879 + DELTAU_EP_DE) * S2R; 128 | static final double DELTA_NP = (-0.0642 + DELTAU_NP_DE) * S2R / W1_1; 129 | 130 | static final double GOMEGAP_0 = (102 + 56 / 60.0 + (14.45766 + DELTAU_GOMEGAP_0_DE) / 3600.0) 131 | * D2R; 132 | static final double GOMEGAP_1 = 1161.24342 * S2R; 133 | static final double GOMEGAP_2 = 0.529265 * S2R; 134 | static final double GOMEGAP_3 = -0.00011814 * S2R; 135 | static final double GOMEGAP_4 = 0.000011379 * S2R; 136 | } 137 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/elpmpp02/ElpMpp02Util.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elpmpp02; 2 | 3 | import static java.lang.Math.PI; 4 | import static java.lang.Math.cos; 5 | import static java.lang.Math.sin; 6 | import static oyyq.calendar.util.CalendarUtil.getJulianCentury; 7 | import static oyyq.calendar.util.MathUtil.mod2Pi; 8 | import static oyyq.calendar.util.MathUtil.secondsToRadians; 9 | import static oyyq.calendar.util.elpmpp02.ElpMpp02Constants.*; 10 | import oyyq.calendar.util.elpmpp02.data.Elp_Main; 11 | import oyyq.calendar.util.elpmpp02.data.Elp_Main_S1; 12 | import oyyq.calendar.util.elpmpp02.data.Elp_Main_S3; 13 | import oyyq.calendar.util.elpmpp02.data.Elp_Pert; 14 | import oyyq.calendar.util.elpmpp02.data.Elp_Pert_S1; 15 | import oyyq.calendar.util.elpmpp02.data.Elp_Pert_S3; 16 | 17 | public class ElpMpp02Util { 18 | 19 | /** 20 | * D = W1 - T + 180˚ 21 | * 22 | * @param t 23 | * 儒略世纪数 24 | * @return D的值(rad) 25 | */ 26 | private static double getDu(double t) { 27 | return getW1u(t) - getTu(t) + PI; 28 | } 29 | 30 | /** 31 | * F = W1 - W3 32 | * 33 | * @param t 34 | * 儒略世纪数 35 | * @return F的值(rad) 36 | */ 37 | private static double getFu(double t) { 38 | return getW1u(t) - getW3u(t); 39 | } 40 | 41 | /** 42 | * l = W1 - W2 43 | * 44 | * @param t 45 | * 儒略世纪数 46 | * @return l的值(rad) 47 | */ 48 | private static double getL(double t) { 49 | return getW1u(t) - getW2u(t); 50 | } 51 | 52 | /** 53 | * lp = T - Omp 54 | * 55 | * @param t 56 | * 儒略世纪数 57 | * @return lp的值(rad) 58 | */ 59 | private static double getLp(double t) { 60 | return getTu(t) - getGomegap(t); 61 | } 62 | 63 | /** 64 | * Me(rcury) = 252˚15´03.216919˝ + 538101628.68888˝ * t 65 | * 66 | * @param t 67 | * 儒略世纪数 68 | * @return Me的值 69 | */ 70 | private static double getMeu(double t) { 71 | return LAMBDA_ME_0 + LAMBDA_ME_1 * t; 72 | } 73 | 74 | /** 75 | * V(enus) = 181˚58´44.758419˝ + 210664136.45777˝ * t 76 | * 77 | * @param t 78 | * 儒略世纪数 79 | * @return V的值 80 | */ 81 | private static double getVu(double t) { 82 | return LAMBDA_V_0 + LAMBDA_V_1 * t; 83 | } 84 | 85 | /** 86 | * Ma(rs) = 355˚26´′03.642778˝ + 68905077.65936˝ * t 87 | * 88 | * @param t 89 | * 儒略世纪数 90 | * @return Ma的值 91 | */ 92 | private static double getMau(double t) { 93 | return LAMBDA_MA_0 + LAMBDA_MA_1 * t; 94 | } 95 | 96 | /** 97 | * J(upiter) = 34˚21´05.379392˝ + 10925660.57335˝ * t 98 | * 99 | * @param t 100 | * 儒略世纪数 101 | * @return J的值 102 | */ 103 | private static double getJu(double t) { 104 | return LAMBDA_J_0 + LAMBDA_J_1 * t; 105 | } 106 | 107 | /** 108 | * S(aturn) = 50˚04´38.902495˝ + 4399609.33632˝ * t 109 | * 110 | * @param t 111 | * 儒略世纪数 112 | * @return S的值 113 | */ 114 | private static double getSu(double t) { 115 | return LAMBDA_S_0 + LAMBDA_S_1 * t; 116 | } 117 | 118 | /** 119 | * U(ranus) = 314˚03´04.354234˝ + 1542482.57845˝ * t 120 | * 121 | * @param t 122 | * 儒略世纪数 123 | * @return U的值 124 | */ 125 | private static double getUu(double t) { 126 | return LAMBDA_U_0 + LAMBDA_U_1 * t; 127 | } 128 | 129 | /** 130 | * N(eptune) = 304˚20´56.808371˝ + 786547.89700˝ * t 131 | * 132 | * @param t 133 | * 儒略世纪数 134 | * @return N的值 135 | */ 136 | private static double getNu(double t) { 137 | return LAMBDA_N_0 + LAMBDA_N_1 * t; 138 | } 139 | 140 | /** 141 | * zeta = W1 + (5029.0966˝ - 0.29965˝) * t 142 | * 143 | * @param t 144 | * 儒略世纪数 145 | * @return zeta的值 146 | */ 147 | private static double getGzeta(double t) { 148 | return getW1u(t) + secondsToRadians(P - DELTAU_P) * t; 149 | } 150 | 151 | /** 152 | * W1 = 218˚18´59.95571˝ + 1732559343.73604˝ * t - 6.8084˝ * t² + 0.006604˝ * t³ - 0.00003169˝ * 153 | * t⁴ 154 | * 155 | * @param t 156 | * 儒略世纪数 157 | * @return W1的值(rad) 158 | */ 159 | private static double getW1u(double t) { 160 | double t2 = t * t; 161 | double t3 = t2 * t; 162 | double t4 = t3 * t; 163 | return W1_0 + W1_1 * t + W1_2 * t2 + W1_3 * t3 + W1_4 * t4; 164 | } 165 | 166 | /** 167 | * W2 = 83˚21´11.67475˝ + 14643420.3171˝ * t - 38.2631˝ * t² - 0.045047˝ * t³ + 0.00021301˝ * t⁴ 168 | * 169 | * @param t 170 | * 儒略世纪数 171 | * @return W2的值(rad) 172 | */ 173 | private static double getW2u(double t) { 174 | double t2 = t * t; 175 | double t3 = t2 * t; 176 | double t4 = t3 * t; 177 | return W2_0 + W2_1 * t + W2_2 * t2 + W2_3 * t3 + W2_4 * t4; 178 | } 179 | 180 | /** 181 | * W3 = 125˚02´40.39816˝ + 6967919.5383˝ * t - 6.3590˝ * t² + 0.007625˝ * t³ + 0.00003586˝ * t⁴ 182 | * 183 | * @param t 184 | * 儒略世纪数 185 | * @return W3的值(rad) 186 | */ 187 | private static double getW3u(double t) { 188 | double t2 = t * t; 189 | double t3 = t2 * t; 190 | double t4 = t3 * t; 191 | return W3_0 + W3_1 * t + W3_2 * t2 + W3_3 * t3 + W3_4 * t4; 192 | } 193 | 194 | /** 195 | * T = 100˚27´59.13885˝ + 129597742.2930˝ * t - 0.0202˝ * t² + 0.000009˝ * t³ + 0.00000015˝ * t⁴ 196 | * 197 | * @param t 198 | * 儒略世纪数 199 | * @return T的值(rad) 200 | */ 201 | private static double getTu(double t) { 202 | double t2 = t * t; 203 | double t3 = t2 * t; 204 | double t4 = t3 * t; 205 | return T_0 + T_1 * t + T_2 * t2 + T_3 * t3 + T_4 * t4; 206 | } 207 | 208 | /** 209 | * omegap = 102˚56´14.45766˝ + 1161.24342˝ * t + 0.529265˝ * t² - 0.00011814˝ * t³ + 210 | * 0.000011379˝ * t⁴ 211 | * 212 | * @param t 213 | * 儒略世纪数 214 | * @return omegap的值(rad) 215 | */ 216 | private static double getGomegap(double t) { 217 | double t2 = t * t; 218 | double t3 = t2 * t; 219 | double t4 = t3 * t; 220 | return GOMEGAP_0 + GOMEGAP_1 * t + GOMEGAP_2 * t2 + GOMEGAP_3 * t3 + GOMEGAP_4 * t4; 221 | } 222 | 223 | private static double getMain(double t, Class clazz) throws Exception { 224 | Number[] params = (Number[]) clazz.getField("PARAMS").get(null); 225 | int lineItems = clazz.getField("LINE_ITEMS").getInt(null); 226 | double result = 0.0d; 227 | double du = getDu(t); 228 | double fu = getFu(t); 229 | double l = getL(t); 230 | double lp = getLp(t); 231 | for (int i = 0; i < params.length; i += lineItems) { 232 | int i1 = params[i].intValue(); 233 | int i2 = params[i + 1].intValue(); 234 | int i3 = params[i + 2].intValue(); 235 | int i4 = params[i + 3].intValue(); 236 | double aui = params[i + 4].doubleValue(); 237 | double bu1i = params[i + 5].doubleValue(); 238 | double bu2i = params[i + 6].doubleValue(); 239 | double bu3i = params[i + 7].doubleValue(); 240 | double bu4i = params[i + 8].doubleValue(); 241 | double bu5i = params[i + 9].doubleValue(); 242 | if (clazz.getSimpleName().equals(Elp_Main_S3.class.getSimpleName())) { 243 | double deltaaui = -M * (bu1i + 2 / 3.0 * GALPHA / M * bu5i + 2 / 3.0 * aui / M) 244 | * DELTA_GNU / GNU + (bu1i + 2 / 3.0 * GALPHA / M * bu5i) * DELTA_NP / GNU 245 | + (bu2i * DELTA_GGAMMA + bu3i * DELTA_E + bu4i * DELTA_EP); 246 | result += (aui + deltaaui) * (cos(i1 * du + i2 * fu + i3 * l + i4 * lp)); 247 | } else { 248 | double deltaaui = -M * (bu1i + 2 / 3.0 * GALPHA / M * bu5i) * DELTA_GNU / GNU 249 | + (bu1i + 2 / 3.0 * GALPHA / M * bu5i) * DELTA_NP / GNU 250 | + (bu2i * DELTA_GGAMMA + bu3i * DELTA_E + bu4i * DELTA_EP); 251 | result += (aui + deltaaui) * (sin(i1 * du + i2 * fu + i3 * l + i4 * lp)); 252 | } 253 | } 254 | return clazz.getSimpleName().equals(Elp_Main_S3.class.getSimpleName()) ? result 255 | : secondsToRadians(result); 256 | } 257 | 258 | private static double getPert(double t, Class clazz) throws Exception { 259 | double t2 = t * t; 260 | double t3 = t2 * t; 261 | double[] pow = {1.0, t, t2, t3}; 262 | int lineItems = clazz.getField("LINE_ITEMS").getInt(null); 263 | 264 | double du = getDu(t); 265 | double fu = getFu(t); 266 | double l = getL(t); 267 | double lp = getLp(t); 268 | double meu = getMeu(t); 269 | double vu = getVu(t); 270 | double tu = getTu(t); 271 | double mau = getMau(t); 272 | double ju = getJu(t); 273 | double su = getSu(t); 274 | double uu = getUu(t); 275 | double nu = getNu(t); 276 | double gzeta = getGzeta(t); 277 | 278 | double result = 0.0d; 279 | for (int n = 0; n < 4; n++) { 280 | Number[] params = (Number[]) clazz.getField("PARAMS" + n).get(null); 281 | for (int i = 0; i < params.length; i += lineItems) { 282 | double sui = params[i].doubleValue(); 283 | double cui = params[i + 1].doubleValue(); 284 | int i1 = params[i + 2].intValue(); 285 | int i2 = params[i + 3].intValue(); 286 | int i3 = params[i + 4].intValue(); 287 | int i4 = params[i + 5].intValue(); 288 | int i5 = params[i + 6].intValue(); 289 | int i6 = params[i + 7].intValue(); 290 | int i7 = params[i + 8].intValue(); 291 | int i8 = params[i + 9].intValue(); 292 | int i9 = params[i + 10].intValue(); 293 | int i10 = params[i + 11].intValue(); 294 | int i11 = params[i + 12].intValue(); 295 | int i12 = params[i + 13].intValue(); 296 | int i13 = params[i + 14].intValue(); 297 | double gphi = i1 * du + i2 * fu + i3 * l + i4 * lp + i5 * meu + i6 * vu + i7 * tu 298 | + i8 * mau + i9 * ju + i10 * su + i11 * uu + i12 * nu + i13 * gzeta; 299 | result += pow[n] * (sui * sin(gphi) + cui * cos(gphi)); 300 | } 301 | } 302 | return clazz.getSimpleName().equals(Elp_Pert_S3.class.getSimpleName()) ? result 303 | : secondsToRadians(result); 304 | } 305 | 306 | /** 307 | * 按儒略日计算月球的地心黄经 308 | * 309 | * @param jd 310 | * 儒略日 311 | * @return 月球的地心黄经,单位是弧度(rad) 312 | */ 313 | public static double getEarthEclipticLongitudeForMoon(double jd) { 314 | double t = getJulianCentury(jd); 315 | double main = 0.0d; 316 | double pert = 0.0d; 317 | try { 318 | main = getMain(t, Elp_Main_S1.class); 319 | pert = getPert(t, Elp_Pert_S1.class); 320 | } catch (Exception e) { 321 | e.printStackTrace(); 322 | } 323 | return mod2Pi(main + pert + getW1u(t)); 324 | } 325 | 326 | public static void main(String[] args) { 327 | System.out.println(getEarthEclipticLongitudeForMoon(0)); 328 | } 329 | } 330 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/iau/Iau2000BUtil.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.iau; 2 | 3 | import static java.lang.Math.cos; 4 | import static java.lang.Math.sin; 5 | import static java.lang.Math.toRadians; 6 | import static oyyq.calendar.util.CalendarUtil.getJulianCentury; 7 | import oyyq.calendar.util.CalendarUtil; 8 | 9 | /** 10 | * 根据IAU 2000B的数据计算章动 11 | * 12 | * @author oyyq 13 | */ 14 | public class Iau2000BUtil { 15 | 16 | private static double getLongitudeNutation(double t, double l, double lp, double f, double d, 17 | double om) { 18 | double n = 0.0; 19 | n = n + (-172064161 - 174666 * t) * sin(om) + 33386 * cos(om); 20 | n = n + (-13170906 - 1675 * t) * sin(2 * (f - d + om)) - 13696 * cos(2 * (f - d + om)); 21 | n = n + (-2276413 - 234 * t) * sin(2 * (f + om)) + 2796 * cos(2 * (f + om)); 22 | n = n + (2074554 + 207 * t) * sin(2 * om) - 698 * cos(2 * om); 23 | n = n + (1475877 - 3633 * t) * sin(lp) + 11817 * cos(lp); 24 | n = n + (-516821 + 1226 * t) * sin(lp + 2 * (f - d + om)) - 524 25 | * cos(lp + 2 * (f - d + om)); 26 | n = n + (711159 + 73 * t) * sin(l) - 872 * cos(l); 27 | n = n + (-387298 - 367 * t) * sin(2 * f + om) + 380 * cos(2 * f + om); 28 | n = n + (-301461 - 36 * t) * sin(l + 2 * (f + om)) + 816 * cos(l + 2 * (f + om)); 29 | n = n + (215829 - 494 * t) * sin(2 * (f - d + om) - lp) + 111 * cos(2 * (f - d + om) - lp); 30 | n = n + (128227 + 137 * t) * sin(2 * (f - d) + om) + 181 * cos(2 * (f - d) + om); 31 | n = n + (123457 + 11 * t) * sin(2 * (f + om) - l) + 19 * cos(2 * (f + om) - l); 32 | n = n + (156994 + 10 * t) * sin(2 * d - l) - 168 * cos(2 * d - l); 33 | n = n + (63110 + 63 * t) * sin(l + om) + 27 * cos(l + om); 34 | n = n + (-57976 - 63 * t) * sin(om - l) - 189 * cos(om - l); 35 | n = n + (-59641 - 11 * t) * sin(2 * (f + d + om) - l) + 149 * cos(2 * (f + d + om) - l); 36 | n = n + (-51613 - 42 * t) * sin(l + 2 * f + om) + 129 * cos(l + 2 * f + om); 37 | n = n + (45893 + 50 * t) * sin(2 * (f - l) + om) + 31 * cos(2 * (f - l) + om); 38 | n = n + (63384 + 11 * t) * sin(2 * d) - 150 * cos(2 * d); 39 | n = n + (-38571 - t) * sin(2 * (f + d + om)) + 158 * cos(2 * (f + d + om)); 40 | n = n + 32481 * sin(2 * (f - lp - d + om)); 41 | n = n - 47722 * sin(2 * (d - l)) + 18 * cos(2 * (d - l)); 42 | n = n + (-31046 - t) * sin(2 * (l + f + om)) + 131 * cos(2 * (l + f + om)); 43 | n = n + 28593 * sin(l + 2 * (f - d + om)) - cos(l + 2 * (f - d + om)); 44 | n = n + (20441 + 21 * t) * sin(2 * f + om - l) + 10 * cos(2 * f + om - l); 45 | n = n + 29243 * sin(2 * l) - 74 * cos(2 * l); 46 | n = n + 25887 * sin(2 * f) - 66 * cos(2 * f); 47 | n = n + (-14053 - 25 * t) * sin(lp + om) + 79 * cos(lp + om); 48 | n = n + (15164 + 10 * t) * sin(-l + 2 * d + om) + 11 * cos(-l + 2 * d + om); 49 | n = n + (-15794 + 72 * t) * sin(2 * (lp + f - d + om)) - 16 * cos(2 * (lp + f - d + om)); 50 | n = n + 21783 * sin(2 * (d - f)) + 13 * cos(2 * (d - f)); 51 | n = n + (-12873 - 10 * t) * sin(l - 2 * d + om) - 37 * cos(l - 2 * d + om); 52 | n = n + (-12654 + 11 * t) * sin(-lp + om) + 63 * cos(-lp + om); 53 | n = n - 10204 * sin(2 * (f + d) + om - l) - 25 * cos(2 * (f + d) + om - l); 54 | n = n + (16707 - 85 * t) * sin(2 * lp) - 10 * cos(2 * lp); 55 | n = n - 7691 * sin(l + 2 * (f + d + om)) - 44 * cos(l + 2 * (f + d + om)); 56 | n = n - 11024 * sin(2 * (f - l)) + 14 * cos(2 * (f - l)); 57 | n = n + (7566 - 21 * t) * sin(lp + 2 * (f + om)) - 11 * cos(lp + 2 * (f + om)); 58 | n = n + (-6637 - 11 * t) * sin(2 * (f + d) + om) + 25 * cos(2 * (f + d) + om); 59 | n = n + (-7141 + 21 * t) * sin(2 * (f + om) - lp) + 8 * cos(2 * (f + om) - lp); 60 | n = n + (-6302 - 11 * t) * sin(2 * d + om) + 2 * cos(2 * d + om); 61 | n = n + (5800 + 10 * t) * sin(l + 2 * (f - d) + om) + 2 * cos(l + 2 * (f - d) + om); 62 | n = n + 6443 * sin(2 * (l + f - d + om)) - 7 * cos(2 * (l + f - d + om)); 63 | n = n + (-5774 - 11 * t) * sin(2 * (d - l) + om) - 15 * cos(2 * (d - l) + om); 64 | n = n - 5350 * sin(2 * (l + f) + om) - 21 * cos(2 * (l + f) + om); 65 | n = n + (-4752 - 11 * t) * sin(2 * (f - d) + om - lp) - 3 * cos(2 * (f - d) + om - lp); 66 | n = n + (-4940 - 11 * t) * sin(om - 2 * d) - 21 * cos(om - 2 * d); 67 | n = n + 7350 * sin(2 * d - l - lp) - 8 * cos(2 * d - l - lp); 68 | n = n + 4065 * sin(2 * (l - d) + om) + 6 * cos(2 * (l - d) + om); 69 | n = n + 6579 * sin(l + 2 * d) - 24 * cos(l + 2 * d); 70 | n = n + 3579 * sin(lp + 2 * (f - d) + om) + 5 * cos(lp + 2 * (f - d) + om); 71 | n = n + 4725 * sin(l - lp) - 6 * cos(l - lp); 72 | n = n - 3075 * sin(2 * (f + om - l)) + 2 * cos(2 * (f + om - l)); 73 | n = n - 2904 * sin(3 * l + 2 * (f + om)) - 15 * cos(3 * l + 2 * (f + om)); 74 | n = n + 4348 * sin(2 * d - lp) - 10 * cos(2 * d - lp); 75 | n = n - 2878 * sin(l - lp + 2 * (f + om)) - 8 * cos(l - lp + 2 * (f + om)); 76 | n = n - 4230 * sin(d) - 5 * cos(d); 77 | n = n - 2819 * sin(2 * (f + d + om) - l - lp) - 7 * cos(2 * (f + d + om) - l - lp); 78 | n = n - 4056 * sin(2 * f - l) - 5 * cos(2 * f - l); 79 | n = n - 2647 * sin(2 * (f + d + om) - lp) - 11 * cos(2 * (f + d + om) - lp); 80 | n = n - 2294 * sin(om - 2 * l) + 10 * cos(om - 2 * l); 81 | n = n + 2481 * sin(l + lp + 2 * (f + om)) - 7 * cos(l + lp + 2 * (f + om)); 82 | n = n + 2179 * sin(2 * l + om) - 2 * cos(2 * l + om); 83 | n = n + 3276 * sin(lp + d - l) + cos(lp + d - l); 84 | n = n - 3389 * sin(l + lp) - 5 * cos(l + lp); 85 | n = n + 3339 * sin(l + 2 * f) - 13 * cos(l + 2 * f); 86 | n = n - 1987 * sin(2 * (f - d) + om - l) + 6 * cos(2 * (f - d) + om - l); 87 | n = n - 1981 * sin(l + 2 * om); 88 | n = n + 4026 * sin(d - l) - 353 * cos(d - l); 89 | n = n + 1660 * sin(2 * f + d + 2 * om) - 5 * cos(d + 2 * (f + om)); 90 | n = n - 1521 * sin(2 * (f + 2 * d + om) - l) - 9 * cos(2 * (f + 2 * d + om) - l); 91 | n = n + 1314 * sin(lp + d + om - l); 92 | n = n - 1283 * sin(2 * (f - d - lp) + om); 93 | n = n - 1331 * sin(l + 2 * f + 2 * d + om) - 8 * cos(l + 2 * (f + d) + om); 94 | n = n + 1383 * sin(2 * (f - l + d + om)) - 2 * cos(2 * (f - l + d + om)); 95 | n = n + 1405 * sin(2 * om - l) + 4 * cos(2 * om - l); 96 | n = n + 1290 * sin(l + lp + 2 * (f - d + om)); 97 | n /= 36000000000.0d; 98 | return toRadians(n); 99 | } 100 | 101 | private static double getObliquityNutation(double t, double l, double lp, double f, double d, 102 | double om) { 103 | double n = 0.0; 104 | n = n + (92052331 + 9086 * t) * cos(om) + 15377 * sin(om); 105 | n = n + (5730336 - 3015 * t) * cos(2 * (f - d + om)) - 4587 * sin(2 * (f - d + om)); 106 | n = n + (978459 - 485 * t) * cos(2 * (f + om)) + 1374 * sin(2 * (f + om)); 107 | n = n + (-897492 + 470 * t) * cos(2 * om) - 291 * sin(2 * om); 108 | n = n + (73871 - 184 * t) * cos(lp) - 1924 * sin(lp); 109 | n = n + (224386 - 677 * t) * cos(lp + 2 * (f - d + om)) - 174 * sin(lp + 2 * (f - d + om)); 110 | n = n - 6750 * cos(l) - 358 * sin(l); 111 | n = n + (200728 + 18 * t) * cos(2 * f + om) + 318 * sin(2 * f + om); 112 | n = n + (129025 - 63 * t) * cos(l + 2 * (f + om)) + 367 * sin(l + 2 * (f + om)); 113 | n = n + (-95929 + 299 * t) * cos(2 * (f - d + om) - lp) + 132 * sin(2 * (f - d + om) - lp); 114 | n = n + (-68982 - 9 * t) * cos(2 * (f - d) + om) + 39 * sin(2 * (f - d) + om); 115 | n = n + (-53311 + 32 * t) * cos(2 * (f + om) - l) - 4 * sin(2 * (f + om) - l); 116 | n = n - 1235 * cos(2 * d - l) - 82 * sin(2 * d - l); 117 | n = n - 33228 * cos(l + om) + 9 * sin(l + om); 118 | n = n + 31429 * cos(om - l) - 75 * sin(om - l); 119 | n = n + (25543 - 11 * t) * cos(2 * (f + d + om) - l) + 66 * sin(2 * (f + d + om) - l); 120 | n = n + 26366 * cos(l + 2 * f + om) + 78 * sin(l + 2 * f + om); 121 | n = n + (-24236 - 10 * t) * cos(2 * (f - l) + om) + 20 * sin(2 * (f - l) + om); 122 | n = n - 1220 * cos(2 * d) - 29 * sin(2 * d); 123 | n = n + (16452 - 11 * t) * cos(2 * (f + d + om)) + 68 * sin(2 * (f + d + om)); 124 | n = n - 13870 * cos(2 * (f - lp - d + om)); 125 | n = n + 477 * cos(2 * (d - l)) - 25 * sin(2 * (d - l)); 126 | n = n + (13238 - 11 * t) * cos(2 * (l + f + om)) + 59 * sin(2 * (l + f + om)); 127 | n = n + (-12338 + 10 * t) * cos(l + 2 * (f - d + om)) - 3 * sin(l + 2 * (f - d + om)); 128 | n = n - 10758 * cos(2 * f + om - l) + 3 * sin(2 * f + om - l); 129 | n = n - 609 * cos(2 * l) - 13 * sin(2 * l); 130 | n = n - 550 * cos(2 * f) - 11 * sin(2 * f); 131 | n = n + (8551 - 2 * t) * cos(lp + om) - 45 * sin(lp + om); 132 | n = n - 8001 * cos(2 * d - l + om) + sin(2 * d - l + om); 133 | n = n + (6850 - 42 * t) * cos(2 * (lp + f - d + om)) - 5 * sin(2 * (lp + f - d + om)); 134 | n = n - 167 * cos(2 * (d - f)) - 13 * sin(2 * (d - f)); 135 | n = n + 6953 * cos(l - 2 * d + om) - 14 * sin(l - 2 * d + om); 136 | n = n + 6415 * cos(om - lp) + 26 * sin(om - lp); 137 | n = n + 5222 * cos(2 * (f + d) + om - l) + 15 * sin(2 * (f + d) + om - l); 138 | n = n + (168 - t) * cos(2 * lp) + 10 * sin(2 * lp); 139 | n = n + 3268 * cos(l + 2 * (f + d + om)) + 19 * sin(l + 2 * (f + d + om)); 140 | n = n + 104 * cos(2 * (f - l)) + 2 * sin(2 * (f - l)); 141 | n = n - 3250 * cos(lp + 2 * (f + om)) + 5 * sin(lp + 2 * (f + om)); 142 | n = n + 3353 * cos(2 * (f + d) + om) + 14 * sin(2 * (f + d) + om); 143 | n = n + 3070 * cos(2 * (f + om) - lp) + 4 * sin(2 * (f + om) - lp); 144 | n = n + 3272 * cos(2 * d + om) + 4 * sin(2 * d + om); 145 | n = n - 3045 * cos(l + 2 * (f - d) + om) + sin(l + 2 * (f - d) + om); 146 | n = n - 2768 * cos(2 * (l + f - d + om)) + 4 * sin(2 * (l + f - d + om)); 147 | n = n + 3041 * cos(2 * (d - l) + om) - 5 * sin(2 * (d - l) + om); 148 | n = n + 2695 * cos(2 * (l + f) + om) + 12 * sin(2 * (l + f) + om); 149 | n = n + 2719 * cos(2 * (f - d) + om - lp) - 3 * sin(2 * (f - d) + om - lp); 150 | n = n + 2720 * cos(om - 2 * d) - 9 * sin(om - 2 * d); 151 | n = n - 51 * cos(2 * d - l - lp) - 4 * sin(2 * d - l - lp); 152 | n = n - 2206 * cos(2 * (l - d) + om) - sin(2 * (l - d) + om); 153 | n = n - 199 * cos(l + 2 * d) - 2 * sin(l + 2 * d); 154 | n = n - 1900 * cos(lp + 2 * (f - d) + om) - sin(lp + 2 * (f - d) + om); 155 | n = n - 41 * cos(l - lp) - 3 * sin(l - lp); 156 | n = n + 1313 * cos(2 * (f - l + om)) - sin(2 * (f - l + om)); 157 | n = n + 1233 * cos(3 * l + 2 * (f + om)) + 7 * sin(3 * l + 2 * (f + om)); 158 | n = n - 81 * cos(-lp + 2 * d) - 2 * sin(-lp + 2 * d); 159 | n = n + 1232 * cos(l - lp + 2 * (f + om)) + 4 * sin(l - lp + 2 * (f + om)); 160 | n = n - 20 * cos(d) + 2 * sin(d); 161 | n = n + 1207 * cos(2 * (f + d + om) - l - lp) + 3 * sin(2 * (f + d + om) - l - lp); 162 | n = n + 40 * cos(2 * f - l) - 2 * sin(2 * f - l); 163 | n = n + 1129 * cos(2 * (f + d + om) - lp) + 5 * sin(2 * (f + d + om) - lp); 164 | n = n + 1266 * cos(om - 2 * l) - 4 * sin(om - 2 * l); 165 | n = n - 1062 * cos(l + lp + 2 * (f + om)) + 3 * sin(l + lp + 2 * (f + om)); 166 | n = n - 1129 * cos(2 * l + om) + 2 * sin(2 * l + om); 167 | n = n - 9 * cos(lp + d - l); 168 | n = n + 35 * cos(l + lp) - 2 * sin(l + lp); 169 | n = n - 107 * cos(l + 2 * f) - sin(l + 2 * f); 170 | n = n + 1073 * cos(2 * (f - d) + om - l) - 2 * sin(2 * (f - d) + om - l); 171 | n = n + 854 * cos(l + 2 * om); 172 | n = n - 553 * cos(d - l) + 139 * sin(d - l); 173 | n = n - 710 * cos(2 * (f + om) + d) + 2 * sin(2 * (f + om) + d); 174 | n = n + 647 * cos(2 * (f + 2 * d + om) - l) + 4 * sin(2 * (f + 2 * d + om) - l); 175 | n = n - 700 * cos(lp + d + om - l); 176 | n = n + 672 * cos(2 * (f - lp - d) + om); 177 | n = n + 663 * cos(l + 2 * (f + d) + om) + 4 * sin(l + 2 * (f + d) + om); 178 | n = n - 594 * cos(2 * (f - l + d + om)) + 2 * sin(2 * (f - l + d + om)); 179 | n = n - 610 * cos(2 * om - l) - 2 * sin(2 * om - l); 180 | n = n - 556 * cos(l + lp + 2 * (f - d + om)); 181 | n /= 36000000000.0d; 182 | return toRadians(n); 183 | } 184 | 185 | private static double getL(double t) { 186 | double t2 = t * t; 187 | double t3 = t2 * t; 188 | double t4 = t3 * t; 189 | return toRadians((485868.249036 + 1717915923.2178 * t + 31.8792 * t2 + 0.051635 * t3 - 0.00024470 * t4) / 3600.0); 190 | } 191 | 192 | private static double getLp(double t) { 193 | double t2 = t * t; 194 | double t3 = t2 * t; 195 | double t4 = t3 * t; 196 | return toRadians((1287104.79305 + 129596581.0481 * t - 0.5532 * t2 + 0.000136 * t3 - 0.00001149 * t4) / 3600.0); 197 | } 198 | 199 | private static double getF(double t) { 200 | double t2 = t * t; 201 | double t3 = t2 * t; 202 | double t4 = t3 * t; 203 | return toRadians((335779.526232 + 1739527262.8478 * t - 12.7512 * t2 - 0.001037 * t3 + 0.00000417 * t4) / 3600.0); 204 | } 205 | 206 | private static double getD(double t) { 207 | double t2 = t * t; 208 | double t3 = t2 * t; 209 | double t4 = t3 * t; 210 | return toRadians((1072260.70369 + 1602961601.2090 * t - 6.3706 * t2 + 0.006593 * t3 - 0.00003169 * t4) / 3600.0); 211 | } 212 | 213 | private static double getOm(double t) { 214 | double t2 = t * t; 215 | double t3 = t2 * t; 216 | double t4 = t3 * t; 217 | return toRadians((450160.398036 - 6962890.5431 * t + 7.4722 * t2 + 0.007702 * t3 - 0.00005939 * t4) / 3600.0); 218 | } 219 | 220 | /** 221 | * 计算黄经章动 222 | * 223 | * @param jd 224 | * 儒略日 225 | * @return 章动的值(rad) 226 | */ 227 | public static double getLongitudeNutation(double jd) { 228 | double t = getJulianCentury(jd); 229 | double l = getL(t); 230 | double lp = getLp(t); 231 | double f = getF(t); 232 | double d = getD(t); 233 | double om = getOm(t); 234 | return getLongitudeNutation(t, l, lp, f, d, om); 235 | } 236 | 237 | /** 238 | * 计算交角章动 239 | * 240 | * @param jd 241 | * 儒略日 242 | * @return 章动的值(rad) 243 | */ 244 | public static double getObliquityNutation(double jd) { 245 | double t = getJulianCentury(jd); 246 | double l = getL(t); 247 | double lp = getLp(t); 248 | double f = getF(t); 249 | double d = getD(t); 250 | double om = getOm(t); 251 | return getObliquityNutation(t, l, lp, f, d, om); 252 | } 253 | 254 | public static void main(String[] args) { 255 | double jd = CalendarUtil.toJulianDate(1987, 4, 10, 0, 0, 0.0); 256 | double t = getJulianCentury(jd); 257 | double ln = getLongitudeNutation(jd); 258 | double on = getObliquityNutation(jd); 259 | System.out.println(jd); 260 | System.out.println(t); 261 | System.out.println(Math.toDegrees(ln)); 262 | System.out.println(Math.toDegrees(ln) * 3600); 263 | System.out.println(Math.toDegrees(on)); 264 | System.out.println(Math.toDegrees(on) * 3600); 265 | } 266 | } 267 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/CalendarUtil.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util; 2 | 3 | import java.util.Calendar; 4 | import java.util.TimeZone; 5 | 6 | public final class CalendarUtil { 7 | 8 | /** 9 | * Gregorian历法实施年份 10 | */ 11 | public static final int GREGORIAN_FIRST_YEAR = 1582; 12 | /** 13 | * Gregorian历法实施月份 14 | */ 15 | public static final int GREGORIAN_FIRST_MONTH = 10; 16 | /** 17 | * Gregorian历法实施日期 18 | */ 19 | public static final int GREGORIAN_FIRST_DATE = 15; 20 | 21 | /** 22 | * Julian历法废弃年份 23 | */ 24 | public static final int JULIAN_LAST_YEAR = 1582; 25 | /** 26 | * Julian历法废弃月份 27 | */ 28 | public static final int JULIAN_LAST_MONTH = 10; 29 | /** 30 | * Julian历法废弃日期 31 | */ 32 | public static final int JULIAN_LAST_DATE = 4; 33 | 34 | /** 35 | * Gregorian历TT1582年10月15日中午12点的儒略日 36 | */ 37 | private static final int JULIAN_GREGORIAN_BOUNDARY = 2299161; 38 | 39 | /** 40 | * Gregorian历TT2000年1月1日中午12点的儒略日 41 | */ 42 | public static final double J2000 = 2451545.0d; 43 | 44 | /** 45 | * 1000年的日数 46 | */ 47 | public static final double DAYS_OF_1000_YEARS = 365250.0d; 48 | 49 | /** 50 | * 100年的日数 51 | */ 52 | public static final double DAYS_OF_CENTURY = 36525.0d; 53 | 54 | /** 55 | * Gregorian闰年判断 56 | * 57 | * @param y 58 | * 年份 59 | * @return 闰年返回true,平年返回false 60 | */ 61 | public static boolean isGregorianLeapYear(int y) { 62 | return (y & 3) == 0 && y % 100 != 0 || y % 400 == 0; 63 | } 64 | 65 | /** 66 | * Julian闰年判断 67 | * 68 | * @param y 69 | * 年份 70 | * @return 闰年返回true,平年返回false 71 | */ 72 | public static boolean isJulianLeapYear(int y) { 73 | return (y & 3) == 0; 74 | } 75 | 76 | /** 77 | * {@value #JULIAN_LAST_YEAR}年(含)以前按照Julian历法,{@value #JULIAN_LAST_YEAR}年以后按照Gregorian历法。 78 | * 79 | * @param y 80 | * 年份 81 | * @return 闰年返回true,平年返回false 82 | */ 83 | public static boolean isLeapYear(int y) { 84 | if (y <= JULIAN_LAST_YEAR) { 85 | return isJulianLeapYear(y); 86 | } 87 | return isGregorianLeapYear(y); 88 | } 89 | 90 | /** 91 | * 计算Gregorian日期的儒略日数,以TT当天中午12点为准(结果是整数)。 算法摘自英文维基百科Julian Day词条。 93 | * 94 | * @param year 95 | * 年份 96 | * @param month 97 | * 月份 98 | * @param date 99 | * 日期 100 | * @return 返回以Gregorian历法计算的儒略日数 101 | */ 102 | public static int toJulianDateInGregorian(int year, int month, int date) { 103 | int a = (14 - month) / 12; 104 | int y = year + 4800 - a; 105 | int m = month + 12 * a - 3; 106 | return date + (153 * m + 2) / 5 + 365 * y + y / 4 - y / 100 + y / 400 - 32045; 107 | } 108 | 109 | /** 110 | * 计算Julian日期的儒略日数,以TT当天中午12点为准(结果是整数)。 算法摘自英文维基百科Julian Day词条。 112 | * 113 | * @param year 114 | * 年份 115 | * @param month 116 | * 月份 117 | * @param date 118 | * 日期 119 | * @return 返回以Julian历法计算的儒略日数 120 | */ 121 | public static int toJulianDateInJulian(int year, int month, int date) { 122 | int a = (14 - month) / 12; 123 | int y = year + 4800 - a; 124 | int m = month + 12 * a - 3; 125 | return date + (153 * m + 2) / 5 + 365 * y + y / 4 - 32083; 126 | } 127 | 128 | /** 129 | * 计算儒略日数,以TT当天中午12点为准,{@value #JULIAN_LAST_YEAR}年{@value #JULIAN_LAST_MONTH}月 130 | * {@value #JULIAN_LAST_DATE}日及以前按照Julian历法,{@value #GREGORIAN_FIRST_YEAR}年 131 | * {@value #GREGORIAN_FIRST_MONTH}月{@value #GREGORIAN_FIRST_DATE}日及以后按照Gregorian历法,中间的日期按照 132 | * {@value #GREGORIAN_FIRST_YEAR}年{@value #GREGORIAN_FIRST_MONTH}月 133 | * {@value #GREGORIAN_FIRST_DATE}日计算。 134 | * 135 | * @param y 136 | * 年份 137 | * @param m 138 | * 月份 139 | * @param d 140 | * 日期 141 | * @return 返回相应历法的儒略日数 142 | */ 143 | public static int toJulianDate(int y, int m, int d) { 144 | if (y < JULIAN_LAST_YEAR) { 145 | return toJulianDateInJulian(y, m, d); 146 | } 147 | if (y == JULIAN_LAST_YEAR && m < JULIAN_LAST_MONTH) { 148 | return toJulianDateInJulian(y, m, d); 149 | } 150 | if (y == JULIAN_LAST_YEAR && m == JULIAN_LAST_MONTH && d <= JULIAN_LAST_DATE) { 151 | return toJulianDateInJulian(y, m, d); 152 | } 153 | 154 | if (y > GREGORIAN_FIRST_YEAR) { 155 | return toJulianDateInGregorian(y, m, d); 156 | } 157 | if (y == GREGORIAN_FIRST_YEAR && m > GREGORIAN_FIRST_MONTH) { 158 | return toJulianDateInGregorian(y, m, d); 159 | } 160 | if (y == GREGORIAN_FIRST_YEAR && m == GREGORIAN_FIRST_MONTH && d >= GREGORIAN_FIRST_DATE) { 161 | return toJulianDateInGregorian(y, m, d); 162 | } 163 | 164 | // 剩下的都是中间的,以Gregorian历法实施第一天计算 165 | return toJulianDateInGregorian(GREGORIAN_FIRST_YEAR, GREGORIAN_FIRST_MONTH, 166 | GREGORIAN_FIRST_DATE); 167 | } 168 | 169 | /** 170 | * 计算Gregorian时间的儒略日数。 算法摘自英文维基百科Julian 171 | * Day词条。 172 | * 173 | * @param year 174 | * 年份 175 | * @param month 176 | * 月份 177 | * @param date 178 | * 日期 179 | * @param hour 180 | * 小时 181 | * @param minute 182 | * 分钟 183 | * @param second 184 | * 秒数 185 | * @return 返回以Gregorian历法计算的儒略日数 186 | */ 187 | public static double toJulianDateInGregorian(int year, int month, int date, int hour, 188 | int minute, double second) { 189 | int jdn = toJulianDateInGregorian(year, month, date); 190 | return jdn + (hour - 12) / 24.0d + minute / 1440.0d + second / 86400.0d; 191 | } 192 | 193 | /** 194 | * 计算Julian时间的儒略日数。 算法摘自英文维基百科Julian 195 | * Day词条。 196 | * 197 | * @param year 198 | * 年份 199 | * @param month 200 | * 月份 201 | * @param date 202 | * 日期 203 | * @param hour 204 | * 小时 205 | * @param minute 206 | * 分钟 207 | * @param second 208 | * 秒数 209 | * @return 返回以Julian历法计算的儒略日数 210 | */ 211 | public static double toJulianDateInJulian(int year, int month, int date, int hour, int minute, 212 | double second) { 213 | int jdn = toJulianDateInJulian(year, month, date); 214 | return jdn + (hour - 12) / 24.0d + minute / 1440.0d + second / 86400.0d; 215 | } 216 | 217 | /** 218 | * 计算儒略日数,{@value #JULIAN_LAST_YEAR}年{@value #JULIAN_LAST_MONTH}月 {@value #JULIAN_LAST_DATE} 219 | * 日及以前按照Julian历法,{@value #GREGORIAN_FIRST_YEAR}年 {@value #GREGORIAN_FIRST_MONTH}月 220 | * {@value #GREGORIAN_FIRST_DATE}日及以后按照Gregorian历法,中间的日期按照 {@value #GREGORIAN_FIRST_YEAR}年 221 | * {@value #GREGORIAN_FIRST_MONTH}月 {@value #GREGORIAN_FIRST_DATE}日计算。 222 | * 223 | * @param y 224 | * 年份 225 | * @param month 226 | * 月份 227 | * @param d 228 | * 日期 229 | * @param h 230 | * 小时 231 | * @param minute 232 | * 分钟 233 | * @param s 234 | * 秒数 235 | * @return 返回相应历法的儒略日数 236 | */ 237 | public static double toJulianDate(int y, int month, int d, int h, int minute, double s) { 238 | int jdn = toJulianDate(y, month, d); 239 | return jdn + (h - 12) / 24.0d + minute / 1440.0d + s / 86400.0d; 240 | } 241 | 242 | private static Calendar fromJulianDateHelper(int a, double f, TimeZone tz) { 243 | int b = a + 1524; 244 | int c = (int) ((b - 122.1) / 365.25); 245 | int d = (int) (365.25 * c); 246 | int e = (int) ((b - d) / 30.6001); 247 | double dd = b - d - (int) (30.6001 * e) + f; 248 | int mm = e <= 13 ? e - 1 : e - 13; 249 | int yyyy = mm <= 2 ? c - 4715 : c - 4716; 250 | 251 | int year = yyyy; 252 | int month = mm; 253 | int date = (int) dd; 254 | dd = (dd - date) * 24; 255 | int hour = (int) dd; 256 | dd = (dd - hour) * 60; 257 | int minute = (int) dd; 258 | dd = (dd - minute) * 60; 259 | int second = (int) dd; 260 | dd = (dd - second) * 1000; 261 | int millisecond = (int) dd; 262 | 263 | Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); 264 | cal.set(year, month - 1, date, hour, minute, second); 265 | cal.set(Calendar.MILLISECOND, millisecond); 266 | cal.getTimeInMillis(); // 触发calendar的计算,下面改时区才有效 267 | cal.setTimeZone(tz); 268 | 269 | return cal; 270 | } 271 | 272 | /** 273 | * 由儒略日计算对应的Gregorian历日期时间,算法参考Jean MeeusAstronomical Formulae for Calculators 274 | * 275 | * @param jd 276 | * 儒略日 277 | * @param tz 278 | * 要使用的时区 279 | * @return 对应的Gregorian历TT日期时间的一个Calendar对象,时区为 tz。 280 | */ 281 | public static Calendar fromJulianDateInGregorian(double jd, TimeZone tz) { 282 | int z = (int) (jd + 0.5); 283 | double f = jd + 0.5 - z; 284 | int alpha = (int) ((z - 1867216.25) / 36524.25); 285 | int a = z + 1 + alpha - alpha / 4; 286 | return fromJulianDateHelper(a, f, tz); 287 | } 288 | 289 | /** 290 | * 由儒略日计算对应的Julian历日期时间,算法参考Jean MeeusAstronomical Formulae for Calculators 291 | * 292 | * @param jd 293 | * 儒略日 294 | * @param tz 295 | * 要使用的时区 296 | * @return 对应的Julian历TT日期时间的一个Calendar对象,时区为 tz。 297 | */ 298 | public static Calendar fromJulianDateInJulian(double jd, TimeZone tz) { 299 | int z = (int) (jd + 0.5); 300 | double f = jd + 0.5 - z; 301 | int a = z; 302 | return fromJulianDateHelper(a, f, tz); 303 | } 304 | 305 | /** 306 | * 由儒略日计算对应的日期时间,算法参考Jean MeeusAstronomical Formulae for Calculators 当儒略日小于 307 | * {@value #JULIAN_GREGORIAN_BOUNDARY} - 0.5时按Julian历法计算,以后按Gregorian历计算。 308 | * 309 | * @param jd 310 | * 儒略日 311 | * @return 对应的由TT转换到UTC之后的时间的一个Calendar对象,时区为系统默认时区。 312 | */ 313 | public static Calendar fromJulianDate(double jd) { 314 | return fromJulianDate(jd, TimeZone.getDefault(), true); 315 | } 316 | 317 | /** 318 | * 由儒略日计算对应的日期时间,算法参考Jean MeeusAstronomical Formulae for Calculators 当儒略日小于 319 | * {@value #JULIAN_GREGORIAN_BOUNDARY} - 0.5时按Julian历法计算,以后按Gregorian历计算。 320 | * 321 | * @param jd 322 | * 儒略日 323 | * @param tz 324 | * 使用的时区 325 | * @return 对应的由TT转换到UTC之后的时间的一个Calendar对象,时区为tz。 326 | */ 327 | public static Calendar fromJulianDate(double jd, TimeZone tz) { 328 | return fromJulianDate(jd, tz, true); 329 | } 330 | 331 | /** 332 | * 由儒略日计算对应的日期时间,算法参考Jean MeeusAstronomical Formulae for Calculators 当儒略日小于 333 | * {@value #JULIAN_GREGORIAN_BOUNDARY} - 0.5时按Julian历法计算,以后按Gregorian历计算。 334 | * 335 | * @param jd 336 | * 儒略日 337 | * @param tt2ut 338 | * 是否要做TT到UTC的转换 339 | * @return 对应的时间的一个Calendar对象,时区为系统默认时区。 340 | */ 341 | public static Calendar fromJulianDate(double jd, boolean tt2ut) { 342 | return fromJulianDate(jd, TimeZone.getDefault(), tt2ut); 343 | } 344 | 345 | /** 346 | * 由儒略日计算对应的日期时间,算法参考Jean MeeusAstronomical Formulae for Calculators 当儒略日小于 347 | * {@value #JULIAN_GREGORIAN_BOUNDARY} - 0.5时按Julian历法计算,以后按Gregorian历计算。 348 | * 349 | * @param jd 350 | * 儒略日 351 | * @param tz 352 | * 使用的时区 353 | * @param tt2utc 354 | * 是否要做TT到UTC的转换 355 | * @return 对应的日期时间的一个Calendar对象,时区为tz。 356 | */ 357 | public static Calendar fromJulianDate(double jd, TimeZone tz, boolean tt2utc) { 358 | if (tt2utc) { 359 | jd -= getDeltaT(jd) / 86400; 360 | } 361 | int z = (int) (jd + 0.5); 362 | if (z < JULIAN_GREGORIAN_BOUNDARY) { 363 | return fromJulianDateInJulian(jd, tz); 364 | } 365 | return fromJulianDateInGregorian(jd, tz); 366 | } 367 | 368 | /** 369 | * 计算儒略千年数 370 | * 371 | * @param jd 372 | * 要计算的儒略日 373 | * @return 儒略千年数 374 | */ 375 | public static double getJulianThousandYears(double jd) { 376 | return (jd - J2000) / DAYS_OF_1000_YEARS; 377 | } 378 | 379 | /** 380 | * 计算儒略世纪数 381 | * 382 | * @param jd 383 | * 要计算的儒略日 384 | * @return 儒略世纪数 385 | */ 386 | public static double getJulianCentury(double jd) { 387 | return (jd - J2000) / DAYS_OF_CENTURY; 388 | } 389 | 390 | /** 391 | * 计算Gregorian日历的星期几。算法摘自英文维基百科Zeller's congruence词条。 393 | * 394 | * @param y 395 | * 年份 396 | * @param m 397 | * 月份 398 | * @param d 399 | * 日期 400 | * @return 星期几的数字表示,1-6表示星期一到星期六,0表示星期日 401 | */ 402 | public static int getWeekdayForGregorian(int y, int m, int d) { 403 | int c = y / 100; 404 | y = y % 100; 405 | int w = d + 13 * (m + 1) / 5 + y + y / 4 + c / 4 - 2 * c - 1; 406 | while (w < 0) { 407 | w += 7; 408 | } 409 | return w % 7; 410 | } 411 | 412 | /** 413 | * 计算Julian日历的星期几。算法摘自英文维基百科Zeller's congruence词条。 415 | * 416 | * @param y 417 | * 年份 418 | * @param m 419 | * 月份 420 | * @param d 421 | * 日期 422 | * @return 星期几的数字表示,1-6表示星期一到星期六,0表示星期日 423 | */ 424 | public static int getWeekdayForJulian(int y, int m, int d) { 425 | int c = y / 100; 426 | y = y % 100; 427 | int w = d + 13 * (m + 1) / 5 + y + y / 4 + 4 - c; 428 | while (w < 0) { 429 | w += 7; 430 | } 431 | return w % 7; 432 | } 433 | 434 | /** 435 | * 计算星期几,{@value #JULIAN_LAST_YEAR}年{@value #JULIAN_LAST_MONTH}月 {@value #JULIAN_LAST_DATE} 436 | * 日及以前按照Julian历法,{@value #GREGORIAN_FIRST_YEAR}年 {@value #GREGORIAN_FIRST_MONTH}月 437 | * {@value #GREGORIAN_FIRST_DATE}日及以后按照Gregorian历法,中间的日期按照 {@value #GREGORIAN_FIRST_YEAR}年 438 | * {@value #GREGORIAN_FIRST_MONTH}月 {@value #GREGORIAN_FIRST_DATE}日计算。 439 | * 440 | * @param y 441 | * 年份 442 | * @param m 443 | * 月份 444 | * @param d 445 | * 日期 446 | * @return 星期几的数字表示,1-6表示星期一到星期六,0表示星期日 447 | */ 448 | public static int getWeekday(int y, int m, int d) { 449 | if (y < JULIAN_LAST_YEAR) { 450 | return getWeekdayForJulian(y, m, d); 451 | } 452 | if (y == JULIAN_LAST_YEAR && m < JULIAN_LAST_MONTH) { 453 | return getWeekdayForJulian(y, m, d); 454 | } 455 | if (y == JULIAN_LAST_YEAR && m == JULIAN_LAST_MONTH && d <= JULIAN_LAST_DATE) { 456 | return getWeekdayForJulian(y, m, d); 457 | } 458 | 459 | if (y > GREGORIAN_FIRST_YEAR) { 460 | return getWeekdayForGregorian(y, m, d); 461 | } 462 | if (y == GREGORIAN_FIRST_YEAR && m > GREGORIAN_FIRST_MONTH) { 463 | return getWeekdayForGregorian(y, m, d); 464 | } 465 | if (y == GREGORIAN_FIRST_YEAR && m == GREGORIAN_FIRST_MONTH && d >= GREGORIAN_FIRST_DATE) { 466 | return getWeekdayForGregorian(y, m, d); 467 | } 468 | 469 | // 剩下的都是中间的,以Gregorian历法实施第一天计算 470 | return getWeekdayForGregorian(GREGORIAN_FIRST_YEAR, GREGORIAN_FIRST_MONTH, 471 | GREGORIAN_FIRST_DATE); 472 | } 473 | 474 | /** 475 | * 计算地球时和UTC的时差,算法摘自NASA网站
477 | * ∆T = TT - UT 此算法在-1999年到3000年有效 478 | * 479 | * @param jd 480 | * 儒略日 481 | * @return ∆T的值,单位为秒 482 | */ 483 | public static double getDeltaT(double jd) { 484 | Calendar cal = fromJulianDate(jd, TimeZone.getTimeZone("GMT"), false); 485 | int year = cal.get(Calendar.YEAR); 486 | int month = cal.get(Calendar.MONTH); 487 | return getDeltaT(year, month); 488 | } 489 | 490 | /** 491 | * 计算地球时和UTC的时差,算法摘自NASA网站
493 | * ∆T = TT - UT 此算法在-1999年到3000年有效 494 | * 495 | * @param year 496 | * 要计算的年份 497 | * @param month 498 | * 要计算的月份 499 | * @return ∆T的值,单位为秒 500 | */ 501 | public static double getDeltaT(int year, int month) { 502 | double y = year + (month - 0.5) / 12; 503 | if (year < -500) { 504 | double u = (year - 1820) / 100.0; 505 | return -20 + 32 * u * u; 506 | } else if (year < 500) { 507 | double u = y / 100; 508 | double u2 = u * u; 509 | double u3 = u2 * u; 510 | double u4 = u3 * u; 511 | double u5 = u4 * u; 512 | double u6 = u5 * u; 513 | return 10583.6 - 1014.41 * u + 33.78311 * u2 - 5.952053 * u3 - 0.1798452 * u4 514 | + 0.022174192 * u5 + 0.0090316521 * u6; 515 | } else if (year < 1600) { 516 | double u = (y - 1000) / 100; 517 | double u2 = u * u; 518 | double u3 = u2 * u; 519 | double u4 = u3 * u; 520 | double u5 = u4 * u; 521 | double u6 = u5 * u; 522 | return 1574.2 - 556.01 * u + 71.23472 * u2 + 0.319781 * u3 - 0.8503463 * u4 523 | - 0.005050998 * u5 + 0.0083572073 * u6; 524 | } else if (year < 1700) { 525 | double t = y - 1600; 526 | double t2 = t * t; 527 | double t3 = t2 * t; 528 | return 120 - 0.9808 * t - 0.01532 * t2 + t3 / 7129; 529 | } else if (year < 1800) { 530 | double t = y - 1700; 531 | double t2 = t * t; 532 | double t3 = t2 * t; 533 | double t4 = t3 * t; 534 | return 8.83 + 0.1603 * t - 0.0059285 * t2 + 0.00013336 * t3 - t4 / 1174000; 535 | } else if (year < 1860) { 536 | double t = y - 1800; 537 | double t2 = t * t; 538 | double t3 = t2 * t; 539 | double t4 = t3 * t; 540 | double t5 = t4 * t; 541 | double t6 = t5 * t; 542 | double t7 = t6 * t; 543 | return 13.72 - 0.332447 * t + 0.0068612 * t2 + 0.0041116 * t3 - 0.00037436 * t4 544 | + 0.0000121272 * t5 - 0.0000001699 * t6 + 0.000000000875 * t7; 545 | } else if (year < 1900) { 546 | double t = y - 1860; 547 | double t2 = t * t; 548 | double t3 = t2 * t; 549 | double t4 = t3 * t; 550 | double t5 = t4 * t; 551 | return 7.62 + 0.5737 * t - 0.251754 * t2 + 0.01680668 * t3 - 0.0004473624 * t4 + t5 552 | / 233174; 553 | } else if (year < 1920) { 554 | double t = y - 1900; 555 | double t2 = t * t; 556 | double t3 = t2 * t; 557 | double t4 = t3 * t; 558 | return -2.79 + 1.494119 * t - 0.0598939 * t2 + 0.0061966 * t3 - 0.000197 * t4; 559 | } else if (year < 1941) { 560 | double t = y - 1920; 561 | double t2 = t * t; 562 | double t3 = t2 * t; 563 | return 21.20 + 0.84493 * t - 0.076100 * t2 + 0.0020936 * t3; 564 | } else if (year < 1961) { 565 | double t = y - 1950; 566 | double t2 = t * t; 567 | double t3 = t2 * t; 568 | return 29.07 + 0.407 * t - t2 / 233 + t3 / 2547; 569 | } else if (year < 1986) { 570 | double t = y - 1975; 571 | double t2 = t * t; 572 | double t3 = t2 * t; 573 | return 45.45 + 1.067 * t - t2 / 260 - t3 / 718; 574 | } else if (year < 2005) { 575 | double t = y - 2000; 576 | double t2 = t * t; 577 | double t3 = t2 * t; 578 | double t4 = t3 * t; 579 | double t5 = t4 * t; 580 | return 63.86 + 0.3345 * t - 0.060374 * t2 + 0.0017275 * t3 + 0.000651814 * t4 581 | + 0.00002373599 * t5; 582 | } else if (year < 2050) { 583 | double t = y - 2000; 584 | double t2 = t * t; 585 | return 62.92 + 0.32217 * t + 0.005589 * t2; 586 | } else if (year < 2150) { 587 | double u = (y - 1820) / 100; 588 | double u2 = u * u; 589 | return -20 + 32 * u2 - 0.5628 * (2150 - y); 590 | } else { 591 | double u = (y - 1820) / 100; 592 | double u2 = u * u; 593 | return -20 + 32 * u2; 594 | } 595 | } 596 | 597 | public static void main(String[] args) { 598 | int[] years = {1, 4, 100, 1900, 400, 2000, 2008, 0, -3, -200, -400}; 599 | for (int y : years) { 600 | System.out.println(y + ": " + isLeapYear(y)); 601 | } 602 | System.out.println(toJulianDate(2000, 1, 1)); 603 | System.out.println(toJulianDateInGregorian(2000, 1, 1)); 604 | System.out.println(toJulianDateInJulian(2000, 1, 1)); 605 | System.out.println(toJulianDate(1582, 10, 4)); 606 | System.out.println(toJulianDateInGregorian(1582, 10, 4)); 607 | System.out.println(toJulianDateInJulian(1582, 10, 4)); 608 | System.out.println(toJulianDate(1582, 10, 10)); 609 | System.out.println(toJulianDateInGregorian(1582, 10, 10)); 610 | System.out.println(toJulianDateInJulian(1582, 10, 10)); 611 | System.out.println(getWeekday(1582, 1, 1)); 612 | System.out.println(toJulianDate(2014, 8, 12, 0, 0, 0.0d)); 613 | System.out.println(toJulianDate(1599, 12, 29, 12, 0, 0.0d)); 614 | } 615 | } 616 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/elpmpp02/data/Elp_Main_S3.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elpmpp02.data; 2 | 3 | public class Elp_Main_S3 extends Elp_Main { 4 | 5 | public static final int LINE_ITEMS = 10; 6 | private static final int EACH_LINES = 600; 7 | public static final int TOTAL_LINES = 704; 8 | private static final int EACH_ITEMS = EACH_LINES * LINE_ITEMS; 9 | public static final Number[] PARAMS = new Number[LINE_ITEMS * TOTAL_LINES]; 10 | 11 | static { 12 | setParams0(); 13 | setParams1(); 14 | } 15 | 16 | private static void setParams0() { 17 | final int offset = 0 * EACH_ITEMS; 18 | Number[] data = {0, 0, 0, 0, 385000.52719, -7992.63, -11.06, 21578.08, -4.53, 11.39, 0, 2, 19 | 0, 0, -3.14837, -204.48, -138.94, 159.64, -0.39, 0.12, 0, 4, 0, 0, -0.00003, 0.00, 20 | 0.00, 0.00, 0.00, 0.00, 0, -4, 1, 0, 0.00038, 0.03, 0.03, -0.03, 0.00, 0.00, 0, -2, 21 | 1, 0, 79.66183, -359.45, 3583.79, 1454.02, -2.37, 0.85, 0, 0, 1, 0, -20905.32206, 22 | 6888.23, -35.83, -380331.74, 22.31, 1.77, 0, 2, 1, 0, -0.10326, -9.14, -4.53, 8.08, 23 | 0.00, 0.02, 0, -4, 2, 0, -0.00837, 0.07, -0.75, -0.31, 0.00, 0.00, 0, -2, 2, 0, 24 | -4.42124, 18.29, -198.91, -161.90, 0.14, -0.04, 0, 0, 2, 0, -569.92332, 374.44, 25 | -1.99, -20737.33, 5.79, 0.44, 0, 2, 2, 0, -0.00102, -0.37, -0.04, 0.62, 0.00, 0.00, 26 | 0, -4, 3, 0, 0.00033, 0.00, 0.03, 0.02, 0.00, 0.00, 0, -2, 3, 0, -0.00111, 0.00, 27 | 0.00, -0.05, 0.00, 0.00, 0, 0, 3, 0, -23.21032, 26.49, -0.14, -1266.64, 0.63, 0.05, 28 | 0, 2, 3, 0, 0.00026, 0.00, 0.00, 0.06, 0.00, 0.00, 0, -4, 4, 0, 0.00002, 0.00, 29 | 0.00, 0.00, 0.00, 0.00, 0, -2, 4, 0, 0.00027, 0.00, 0.00, 0.02, 0.00, 0.00, 0, 0, 30 | 4, 0, -1.11693, 1.98, 0.00, -81.26, 0.06, 0.00, 0, 2, 4, 0, 0.00004, 0.00, 0.00, 31 | 0.00, 0.00, 0.00, 0, -2, 5, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, 5, 0, 32 | -0.05888, 0.15, 0.00, -5.35, 0.00, 0.00, 0, 0, 6, 0, -0.00329, 0.00, 0.00, -0.36, 33 | 0.00, 0.00, 0, 0, 7, 0, -0.00019, 0.00, 0.00, -0.02, 0.00, 0.00, 0, 0, -6, 1, 34 | -0.00011, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, -5, 1, -0.00174, -0.03, 0.00, -0.16, 35 | -0.10, 0.00, 0, 0, -4, 1, -0.02674, -0.56, 0.00, -1.94, -1.60, 0.00, 0, 0, -3, 1, 36 | -0.42242, -9.35, 0.20, -23.04, -25.30, 0.00, 0, 2, -3, 1, 0.00015, 0.00, 0.00, 37 | 0.00, 0.00, 0.00, 0, -2, -2, 1, -0.00019, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, -2, 38 | 1, -7.00293, -161.63, 3.29, -254.78, -419.55, -0.12, 0, 2, -2, 1, -0.05020, -1.17, 39 | -2.24, -1.83, -3.01, 0.00, 0, 4, -2, 1, -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 40 | -2, -1, 1, -0.00769, -0.15, -0.34, -0.04, -0.46, 0.00, 0, 0, -1, 1, -129.62476, 41 | -3122.77, 61.80, -2362.46, -7767.84, -0.74, 0, 2, -1, 1, 0.33465, 7.26, 14.91, 42 | 5.99, 20.06, 0.00, 0, 4, -1, 1, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 0, 1, 43 | -0.18568, -4.48, -8.29, 0.54, -11.12, 0.00, 0, 0, 0, 1, 48.89010, 1082.40, -25.99, 44 | 156.78, 2926.50, -3.76, 0, 2, 0, 1, -0.15803, -3.35, -7.06, -0.08, -9.46, -0.03, 0, 45 | -4, 1, 1, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 1, 1, -0.24811, -2.72, 46 | -11.08, -4.50, -14.87, 0.00, 0, 0, 1, 1, 104.75896, 2165.07, -47.62, 1929.10, 47 | 6279.07, -0.60, 0, 2, 1, 1, -0.00682, -0.05, -0.31, -0.17, -0.41, 0.00, 0, -4, 2, 48 | 1, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 2, 1, 0.03265, 0.36, 1.45, 1.20, 49 | 1.96, 0.00, 0, 0, 2, 1, 5.75105, 119.47, -2.62, 210.76, 344.76, -0.09, 0, 2, 2, 1, 50 | -0.00030, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 3, 1, -0.00080, -0.04, -0.04, -0.04, 51 | -0.05, 0.00, 0, 0, 3, 1, 0.35509, 7.33, -0.16, 19.48, 21.29, 0.00, 0, -2, 4, 1, 52 | -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, 4, 1, 0.02304, 0.47, 0.00, 1.68, 53 | 1.38, 0.00, 0, 0, 5, 1, 0.00153, 0.03, 0.00, 0.14, 0.09, 0.00, 0, 0, 6, 1, 0.00010, 54 | 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, -5, 2, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 55 | 0, 0, -4, 2, -0.00066, -0.02, 0.00, -0.05, -0.08, 0.00, 0, 0, -3, 2, -0.00938, 56 | -0.29, 0.00, -0.51, -1.12, 0.00, 0, 0, -2, 2, -0.13618, -4.10, 0.09, -4.96, -16.31, 57 | 0.00, 0, 2, -2, 2, -0.00099, -0.03, -0.04, -0.04, -0.12, 0.00, 0, -2, -1, 2, 58 | -0.00031, 0.00, 0.00, 0.00, -0.04, 0.00, 0, 0, -1, 2, -2.11728, -59.78, 1.22, 59 | -38.70, -253.61, 0.00, 0, 2, -1, 2, 0.00450, 0.12, 0.20, 0.08, 0.54, 0.00, 0, -2, 60 | 0, 2, -0.00558, -0.14, -0.25, 0.00, -0.67, 0.00, 0, 0, 0, 2, 1.06575, 16.47, -0.60, 61 | 3.28, 127.54, 0.00, 0, 2, 0, 2, -0.00342, -0.07, -0.15, 0.00, -0.41, 0.00, 0, -2, 62 | 1, 2, -0.00237, 0.00, -0.11, -0.04, -0.28, 0.00, 0, 0, 1, 2, 1.16562, 22.20, -0.39, 63 | 21.49, 139.60, 0.00, 0, 2, 1, 2, -0.00011, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 2, 64 | 2, 0.00018, 0.00, 0.00, 0.00, 0.02, 0.00, 0, 0, 2, 2, 0.05072, 0.70, 0.00, 1.86, 65 | 6.07, 0.00, 0, 0, 3, 2, 0.00228, 0.00, 0.00, 0.13, 0.27, 0.00, 0, 0, 4, 2, 0.00009, 66 | 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, -3, 3, -0.00021, 0.00, 0.00, 0.00, -0.04, 0.00, 67 | 0, 0, -2, 3, -0.00287, -0.10, 0.00, -0.10, -0.51, 0.00, 0, 2, -2, 3, -0.00002, 68 | 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, -1, 3, -0.03894, -1.14, 0.03, -0.71, -6.99, 69 | 0.00, 0, 2, -1, 3, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 0, 3, -0.00017, 70 | 0.00, 0.00, 0.00, -0.03, 0.00, 0, 0, 0, 3, 0.02127, 0.03, 0.00, 0.08, 3.82, 0.00, 71 | 0, 2, 0, 3, -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -2, 1, 3, -0.00003, 0.00, 72 | 0.00, 0.00, 0.00, 0.00, 0, 0, 1, 3, 0.01912, 0.39, 0.00, 0.35, 3.43, 0.00, 0, 0, 2, 73 | 3, 0.00078, 0.00, 0.00, 0.03, 0.14, 0.00, 0, 0, 3, 3, 0.00003, 0.00, 0.00, 0.00, 74 | 0.00, 0.00, 0, 0, -2, 4, -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 0, -1, 4, 75 | -0.00073, -0.02, 0.00, 0.00, -0.17, 0.00, 0, 0, 0, 4, 0.00034, 0.00, 0.00, 0.00, 76 | 0.08, 0.00, 0, 0, 1, 4, 0.00037, 0.00, 0.00, 0.00, 0.09, 0.00, 1, 0, 0, -4, 77 | -0.00006, 0.00, 0.00, 0.00, 0.00, -0.02, 1, 0, -1, -3, 0.00035, 0.00, 0.00, 0.00, 78 | 0.06, 0.13, 1, 0, 0, -3, -0.00161, 0.00, 0.00, 0.00, -0.29, -0.63, 1, 0, -3, -2, 79 | 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, -2, -2, 0.00029, 0.00, 0.00, 0.00, 80 | 0.04, 0.11, 1, 0, -1, -2, 0.00844, 0.10, 0.00, 0.17, 1.01, 3.28, 1, -2, 0, -2, 81 | -0.00024, 0.00, 0.00, 0.00, -0.03, -0.09, 1, 0, 0, -2, -0.02948, 0.18, 0.00, -0.03, 82 | -3.52, -11.46, 1, 2, 0, -2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -2, 1, -2, 83 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, 1, -2, 0.00159, 0.16, 0.00, 0.03, 84 | 0.19, 0.62, 1, 0, 2, -2, 0.00036, 0.03, 0.00, 0.00, 0.04, 0.14, 1, 0, 3, -2, 85 | 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, -4, -1, 0.00010, 0.00, 0.00, 0.00, 86 | 0.00, 0.04, 1, 0, -3, -1, 0.00065, 0.00, 0.00, 0.04, 0.04, 0.25, 1, -2, -2, -1, 87 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, -2, -1, -0.00422, -0.24, 0.00, -0.13, 88 | -0.26, -1.64, 1, 2, -2, -1, -0.00008, 0.00, 0.00, 0.00, 0.00, -0.03, 1, -2, -1, -1, 89 | -0.00011, 0.00, 0.00, 0.00, 0.00, -0.04, 1, 0, -1, -1, 0.11411, 0.00, -0.02, 2.31, 90 | 6.80, 44.37, 1, 2, -1, -1, 0.00021, 0.00, 0.00, 0.00, 0.00, 0.08, 1, -2, 0, -1, 91 | -0.01366, -0.21, -0.61, 0.00, -0.82, -5.31, 1, 0, 0, -1, 0.49757, 32.61, -1.42, 92 | 0.14, 30.00, 193.46, 1, 2, 0, -1, -0.00074, -0.03, -0.03, 0.00, -0.04, -0.29, 1, 93 | -2, 1, -1, 0.00044, 0.00, 0.02, 0.00, 0.03, 0.17, 1, 0, 1, -1, 0.10998, 5.32, 94 | -0.17, 2.14, 6.59, 42.76, 1, 2, 1, -1, -0.00007, 0.00, 0.00, 0.00, 0.00, -0.03, 1, 95 | -2, 2, -1, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, 2, -1, 0.01121, 0.52, 96 | 0.00, 0.42, 0.67, 4.36, 1, 0, 3, -1, 0.00097, 0.04, 0.00, 0.05, 0.06, 0.38, 1, 0, 97 | 4, -1, 0.00008, 0.00, 0.00, 0.00, 0.00, 0.03, 1, 0, -6, 0, -0.00003, 0.00, 0.00, 98 | 0.00, 0.00, 0.00, 1, 0, -5, 0, -0.00043, 0.00, 0.00, -0.04, 0.00, -0.17, 1, 0, -4, 99 | 0, -0.00636, -0.18, 0.00, -0.46, 0.00, -2.47, 1, -2, -3, 0, -0.00019, 0.00, 0.00, 100 | 0.00, 0.00, -0.07, 1, 0, -3, 0, -0.09938, -2.83, 0.09, -5.45, -0.04, -38.64, 1, 2, 101 | -3, 0, -0.00048, 0.00, -0.02, -0.03, 0.00, -0.19, 1, -2, -2, 0, -0.00278, -0.04, 102 | -0.12, -0.10, 0.00, -1.08, 1, 0, -2, 0, -1.73852, -48.13, 1.59, -63.71, -0.50, 103 | -675.99, 1, 2, -2, 0, 0.00457, 0.03, 0.20, 0.16, 0.00, 1.78, 1, -2, -1, 0, 104 | -0.04232, -0.60, -1.87, -0.77, 0.00, -16.45, 1, 0, -1, 0, -8.37909, -219.27, 9.53, 105 | -156.07, -0.84, -3257.99, 1, 2, -1, 0, -0.02471, -0.50, -1.08, -0.46, 0.00, -9.61, 106 | 1, -2, 0, 0, -0.79564, -11.23, -35.24, -0.22, 0.00, -309.37, 1, 0, 0, 0, 108.74265, 107 | 2351.06, -120.48, 69.82, 2.01, 42281.56, 1, 2, 0, 0, -0.01874, -0.51, -0.83, -0.13, 108 | 0.00, -7.29, 1, -4, 1, 0, 0.00017, 0.00, 0.00, 0.00, 0.00, 0.06, 1, -2, 1, 0, 109 | 0.06055, 0.87, 2.67, 1.14, 0.00, 23.54, 1, 0, 1, 0, 6.32199, 138.54, -6.74, 118.10, 110 | -0.56, 2458.13, 1, 2, 1, 0, -0.00164, -0.05, -0.07, -0.04, 0.00, -0.64, 1, -2, 2, 111 | 0, 0.00203, 0.00, 0.09, 0.07, 0.00, 0.79, 1, 0, 2, 0, 0.37852, 7.87, -0.40, 13.92, 112 | -0.09, 147.18, 1, 2, 2, 0, -0.00013, 0.00, 0.00, 0.00, 0.00, -0.05, 1, -2, 3, 0, 113 | 0.00011, 0.00, 0.00, 0.00, 0.00, 0.04, 1, 0, 3, 0, 0.02368, 0.46, -0.02, 1.30, 114 | 0.00, 9.21, 1, 0, 4, 0, 0.00152, 0.03, 0.00, 0.11, 0.00, 0.59, 1, 0, 5, 0, 0.00010, 115 | 0.00, 0.00, 0.00, 0.00, 0.04, 1, 0, -5, 1, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.02, 116 | 1, 0, -4, 1, 0.00101, 0.00, 0.00, 0.07, 0.06, 0.39, 1, 0, -3, 1, 0.01729, 0.21, 117 | 0.00, 0.95, 1.04, 6.72, 1, 2, -3, 1, 0.00014, 0.00, 0.00, 0.00, 0.00, 0.05, 1, -2, 118 | -2, 1, 0.00008, 0.00, 0.00, 0.00, 0.00, 0.03, 1, 0, -2, 1, 0.33226, 4.67, -0.10, 119 | 12.19, 19.90, 129.18, 1, 2, -2, 1, -0.00148, 0.00, -0.07, -0.05, -0.09, -0.58, 1, 120 | -2, -1, 1, 0.00156, 0.00, 0.07, 0.03, 0.09, 0.61, 1, 0, -1, 1, 0.85127, -2.92, 121 | -0.50, 15.94, 50.91, 330.99, 1, 2, -1, 1, 0.00331, -0.02, 0.15, 0.06, 0.20, 1.29, 122 | 1, -2, 0, 1, 0.03379, 0.04, 1.48, 0.11, 2.02, 13.14, 1, 0, 0, 1, -16.67533, -4.78, 123 | 10.81, -19.36, -997.67, -6483.73, 1, 2, 0, 1, -0.00006, 0.00, 0.00, 0.00, 0.00, 124 | -0.02, 1, -2, 1, 1, -0.00562, 0.00, -0.25, -0.11, -0.34, -2.18, 1, 0, 1, 1, 125 | -0.93335, -1.07, 0.64, -18.08, -55.84, -362.91, 1, -2, 2, 1, -0.00037, -0.02, 0.00, 126 | 0.00, -0.02, -0.14, 1, 0, 2, 1, -0.05904, -0.12, 0.04, -2.22, -3.53, -22.96, 1, -2, 127 | 3, 1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, 3, 1, -0.00392, 0.00, 0.00, 128 | -0.22, -0.23, -1.52, 1, 0, 4, 1, -0.00027, 0.00, 0.00, -0.02, 0.00, -0.10, 1, 0, 129 | -4, 2, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, -3, 2, 0.00028, 0.00, 0.00, 130 | 0.00, 0.03, 0.11, 1, 0, -2, 2, 0.00324, 0.14, 0.00, 0.12, 0.39, 1.26, 1, 0, -1, 2, 131 | 0.00438, 0.14, 0.00, 0.08, 0.52, 1.70, 1, -2, 0, 2, -0.00002, 0.00, 0.00, 0.00, 132 | 0.00, 0.00, 1, 0, 0, 2, 0.03729, 0.60, -0.03, 0.07, 4.47, 14.50, 1, -2, 1, 2, 133 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 0, 1, 2, 0.00646, 0.12, 0.00, 0.13, 0.77, 134 | 2.51, 1, 0, 2, 2, 0.00067, 0.00, 0.00, 0.03, 0.08, 0.26, 1, 0, 3, 2, 0.00006, 0.00, 135 | 0.00, 0.00, 0.00, 0.02, 1, 0, -2, 3, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.02, 1, 0, 136 | -1, 3, 0.00008, 0.00, 0.00, 0.00, 0.00, 0.03, 1, 0, 0, 3, 0.00054, 0.00, 0.00, 137 | 0.00, 0.10, 0.21, 1, 0, 1, 3, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.03, 2, 0, 0, -6, 138 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -1, -5, -0.00012, 0.00, 0.00, 0.00, 139 | -0.04, 0.00, 2, 0, 0, -5, -0.00058, -0.03, 0.00, 0.00, -0.17, 0.00, 2, 0, 1, -5, 140 | -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -2, -4, 0.00036, 0.00, 0.00, 0.00, 141 | 0.09, 0.00, 2, 0, -1, -4, -0.00426, -0.08, 0.00, -0.08, -1.02, 0.00, 2, -2, 0, -4, 142 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, 0, -4, -0.01578, -0.66, 0.00, 0.00, 143 | -3.78, 0.00, 2, 0, 1, -4, -0.00113, -0.05, 0.00, -0.02, -0.27, 0.00, 2, 0, 2, -4, 144 | -0.00009, 0.00, 0.00, 0.00, -0.02, 0.00, 2, 0, -4, -3, 0.00002, 0.00, 0.00, 0.00, 145 | 0.00, 0.00, 2, 0, -3, -3, 0.00046, 0.00, 0.00, 0.02, 0.08, 0.00, 2, 0, -2, -3, 146 | 0.01116, 0.26, 0.00, 0.41, 2.00, 0.00, 2, 2, -2, -3, 0.00003, 0.00, 0.00, 0.00, 147 | 0.00, 0.00, 2, -2, -1, -3, 0.00026, 0.00, 0.00, 0.00, 0.05, 0.00, 2, 0, -1, -3, 148 | -0.14808, -2.64, 0.03, -2.71, -26.58, 0.00, 2, 2, -1, -3, 0.00007, 0.00, 0.00, 149 | 0.00, 0.00, 0.00, 2, -2, 0, -3, 0.00104, 0.03, 0.05, 0.00, 0.19, 0.00, 2, 0, 0, -3, 150 | -0.41076, -15.67, 0.09, -0.51, -73.71, 0.00, 2, -2, 1, -3, 0.00027, 0.00, 0.00, 151 | 0.00, 0.05, 0.00, 2, 0, 1, -3, -0.02855, -1.20, 0.00, -0.56, -5.12, 0.00, 2, -2, 2, 152 | -3, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, 2, -3, -0.00209, -0.10, 0.00, 153 | -0.08, -0.38, 0.00, 2, 0, 3, -3, -0.00016, 0.00, 0.00, 0.00, -0.03, 0.00, 2, 0, -5, 154 | -2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -4, -2, 0.00067, 0.00, 0.00, 0.05, 155 | 0.08, 0.00, 2, -2, -3, -2, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -3, -2, 156 | 0.01517, 0.23, 0.00, 0.83, 1.81, 0.00, 2, -2, -2, -2, 0.00041, 0.00, 0.00, 0.00, 157 | 0.05, 0.00, 2, 0, -2, -2, 0.34304, 6.87, -0.03, 12.50, 41.04, 0.00, 2, 2, -2, -2, 158 | 0.00099, 0.00, 0.04, 0.04, 0.12, 0.00, 2, -2, -1, -2, 0.00957, 0.13, 0.43, 0.17, 159 | 1.15, 0.00, 2, 0, -1, -2, -4.95049, -84.90, 0.91, -90.35, -592.24, 0.03, 2, 2, -1, 160 | -2, 0.00168, 0.04, 0.08, 0.04, 0.20, 0.00, 2, -2, 0, -2, 0.02839, 0.78, 1.27, 161 | -0.11, 3.40, 0.00, 2, 0, 0, -2, -9.88519, -346.35, 1.99, -14.48, -1182.31, 0.07, 2, 162 | -4, 1, -2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -2, 1, -2, 0.00792, 0.09, 163 | 0.36, 0.14, 0.95, 0.00, 2, 0, 1, -2, -0.65758, -25.02, 0.18, -13.07, -78.64, 0.00, 164 | 2, -2, 2, -2, 0.00084, 0.02, 0.04, 0.03, 0.10, 0.00, 2, 0, 2, -2, -0.04608, -1.86, 165 | 0.00, -1.76, -5.51, 0.00, 2, -2, 3, -2, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 166 | 0, 3, -2, -0.00335, -0.14, 0.00, -0.19, -0.40, 0.00, 2, 0, 4, -2, -0.00025, 0.00, 167 | 0.00, -0.02, -0.03, 0.00, 2, 0, 5, -2, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 168 | 0, -6, -1, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -5, -1, 0.00119, 0.00, 169 | 0.00, 0.11, 0.07, 0.00, 2, -2, -4, -1, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, 170 | -4, -1, 0.02334, 0.28, 0.00, 1.70, 1.40, 0.00, 2, -2, -3, -1, 0.00079, 0.00, 0.04, 171 | 0.04, 0.05, 0.00, 2, 0, -3, -1, 0.49506, 7.68, 0.00, 27.04, 29.62, 0.00, 2, 2, -3, 172 | -1, -0.00046, 0.00, -0.02, -0.02, -0.03, 0.00, 2, -2, -2, -1, 0.01518, 0.17, 0.68, 173 | 0.54, 0.91, 0.00, 2, 0, -2, -1, 10.05654, 188.87, -1.29, 366.36, 601.57, -0.03, 2, 174 | 2, -2, -1, 0.03024, 0.36, 1.36, 1.10, 1.81, 0.00, 2, -2, -1, -1, 0.32336, 4.56, 175 | 14.42, 5.73, 19.34, 0.00, 2, 0, -1, -1, -152.14314, -2564.20, 30.40, -2771.74, 176 | -9097.84, 0.06, 2, 2, -1, -1, 0.03734, 0.84, 1.68, 0.85, 2.23, 0.00, 2, -4, 0, -1, 177 | -0.00035, 0.00, -0.03, 0.00, -0.02, 0.00, 2, -2, 0, -1, 0.65710, 17.83, 29.30, 178 | -2.92, 39.26, 0.00, 2, 0, 0, -1, -204.59357, -6583.80, 38.79, -377.95, -12225.82, 179 | 0.27, 2, 2, 0, -1, 0.00108, -0.09, 0.05, 0.21, 0.06, 0.00, 2, -4, 1, -1, -0.00085, 180 | 0.00, -0.08, 0.00, -0.05, 0.00, 2, -2, 1, -1, 0.20942, 1.81, 9.46, 3.82, 12.50, 181 | 0.00, 2, 0, 1, -1, -12.83185, -434.14, 2.98, -260.02, -766.51, 0.02, 2, 2, 1, -1, 182 | 0.00000, 0.00, 0.00, 0.02, 0.00, 0.00, 2, -4, 2, -1, 0.00013, 0.00, 0.00, 0.00, 183 | 0.00, 0.00, 2, -2, 2, -1, 0.01804, 0.34, 0.81, 0.66, 1.08, 0.00, 2, 0, 2, -1, 184 | -0.84883, -29.75, 0.22, -32.80, -50.68, 0.00, 2, -2, 3, -1, 0.00127, 0.03, 0.06, 185 | 0.07, 0.08, 0.00, 2, 0, 3, -1, -0.05850, -2.10, 0.00, -3.33, -3.49, 0.00, 2, -2, 4, 186 | -1, 0.00009, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, 4, -1, -0.00413, -0.15, 0.00, 187 | -0.31, -0.25, 0.00, 2, 0, 5, -1, -0.00030, 0.00, 0.00, -0.03, 0.00, 0.00, 2, 0, 6, 188 | -1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -7, 0, 0.00020, 0.00, 0.00, 0.03, 189 | 0.00, 0.00, 2, 0, -6, 0, 0.00304, 0.06, 0.00, 0.33, 0.00, 0.00, 2, -2, -5, 0, 190 | 0.00012, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -5, 0, 0.04740, 0.93, 0.00, 4.32, 191 | 0.00, 0.00, 2, 2, -5, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -2, -4, 0, 192 | 0.00188, 0.03, 0.08, 0.14, 0.00, 0.00, 2, 0, -4, 0, 0.77854, 15.43, -0.13, 56.71, 193 | 0.05, 0.00, 2, 2, -4, 0, 0.00048, 0.02, 0.02, 0.04, 0.00, 0.00, 2, -2, -3, 0, 194 | 0.02910, 0.44, 1.30, 1.57, 0.00, 0.00, 2, 0, -3, 0, 14.40262, 282.85, -2.35, 195 | 786.99, 0.58, 0.14, 2, 2, -3, 0, -0.02008, -0.43, -0.89, -1.09, 0.00, 0.00, 2, 4, 196 | -3, 0, -0.00018, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -4, -2, 0, -0.00002, 0.00, 0.00, 197 | 0.00, 0.00, 0.00, 2, -2, -2, 0, 0.47263, 7.20, 21.06, 16.92, 0.00, 0.00, 2, 0, -2, 198 | 0, 246.15768, 4806.36, -51.78, 8962.91, -0.43, 1.11, 2, 2, -2, 0, 0.77405, 9.68, 199 | 34.65, 28.17, -0.04, 0.00, 2, 4, -2, 0, -0.00014, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 200 | -4, -1, 0, -0.00039, 0.00, -0.04, 0.00, 0.00, 0.00, 2, -2, -1, 0, 8.75170, 133.45, 201 | 390.01, 155.98, -0.28, 0.20, 2, 0, -1, 0, -3699.10468, -63127.05, 818.00, 202 | -67236.74, 147.86, -15.95, 2, 2, -1, 0, 0.59633, 12.13, 26.76, 14.46, -0.08, 0.03, 203 | 2, -4, 0, 0, -0.00745, -0.11, -0.67, -0.10, 0.00, 0.00, 2, -2, 0, 0, 10.32129, 204 | 282.08, 460.16, -60.76, -1.29, 0.06, 2, 0, 0, 0, -2955.96651, -86674.51, 507.99, 205 | -7597.69, 323.54, -19.09, 2, 2, 0, 0, 0.03143, -0.69, 1.43, 2.99, 0.00, 0.00, 2, 206 | -4, 1, 0, -0.01866, -0.11, -1.67, -0.33, 0.00, 0.00, 2, -2, 1, 0, 4.13118, 20.86, 207 | 186.87, 75.09, -0.76, 0.00, 2, 0, 1, 0, -170.73274, -4963.30, 29.72, -3579.16, 208 | 26.82, -1.82, 2, 2, 1, 0, 0.00181, -0.12, 0.08, 0.32, 0.00, 0.00, 2, -4, 2, 0, 209 | 0.00219, 0.00, 0.20, 0.08, 0.00, 0.00, 2, -2, 2, 0, 0.28399, 2.90, 12.83, 10.35, 210 | -0.06, 0.00, 2, 0, 2, 0, -10.44472, -300.48, 1.81, -410.75, 2.24, -0.17, 2, 2, 2, 211 | 0, 0.00014, 0.00, 0.00, 0.03, 0.00, 0.00, 2, -4, 3, 0, 0.00002, 0.00, 0.00, 0.00, 212 | 0.00, 0.00, 2, -2, 3, 0, 0.01811, 0.19, 0.82, 0.99, 0.00, 0.00, 2, 0, 3, 0, 213 | -0.66968, -19.02, 0.12, -38.59, 0.19, 0.00, 2, -2, 4, 0, 0.00119, 0.00, 0.05, 0.09, 214 | 0.00, 0.00, 2, 0, 4, 0, -0.04422, -1.24, 0.00, -3.36, 0.00, 0.00, 2, -2, 5, 0, 215 | 0.00008, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, 5, 0, -0.00298, -0.08, 0.00, -0.28, 216 | 0.00, 0.00, 2, 0, 6, 0, -0.00020, 0.00, 0.00, -0.02, 0.00, 0.00, 2, 0, -6, 1, 217 | 0.00009, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -5, 1, 0.00116, 0.08, 0.00, 0.11, 218 | 0.07, 0.00, 2, -2, -4, 1, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -4, 1, 219 | 0.01417, 1.08, 0.00, 1.03, 0.85, 0.00, 2, -2, -3, 1, 0.00021, 0.02, 0.00, 0.00, 220 | 0.00, 0.00, 2, 0, -3, 1, 0.16858, 15.79, -0.24, 9.16, 10.17, 0.05, 2, 2, -3, 1, 221 | 0.00030, 0.00, 0.00, 0.00, 0.02, 0.00, 2, -2, -2, 1, 0.00052, 0.27, 0.02, 0.00, 222 | 0.03, 0.00, 2, 0, -2, 1, 0.14368, 122.13, -1.91, 4.58, 9.23, 0.13, 2, 2, -2, 1, 223 | -0.00203, 0.31, -0.10, -0.08, -0.12, 0.00, 2, -2, -1, 1, -0.04736, 2.58, -2.16, 224 | -0.89, -2.82, 0.00, 2, 0, -1, 1, 24.20935, -837.26, 13.30, 449.34, 1443.45, 0.26, 225 | 2, 2, -1, 1, -0.00588, -0.10, -0.26, -0.14, -0.35, 0.00, 2, -4, 0, 1, 0.00012, 226 | 0.00, 0.00, 0.00, 0.00, 0.00, 2, -2, 0, 1, -0.13572, -4.94, -6.04, 0.54, -8.13, 227 | 0.03, 2, 0, 0, 1, 30.82498, 873.36, -8.40, 94.40, 1844.57, 3.86, 2, 2, 0, 1, 228 | -0.00143, -0.04, -0.06, -0.04, -0.09, 0.00, 2, -4, 1, 1, 0.00040, 0.00, 0.04, 0.00, 229 | 0.02, 0.00, 2, -2, 1, 1, -0.05527, 1.02, -2.52, -1.02, -3.29, 0.00, 2, 0, 1, 1, 230 | 2.61650, 90.88, -1.01, 56.02, 156.64, 0.49, 2, 2, 1, 1, -0.00015, 0.00, 0.00, 0.00, 231 | 0.00, 0.00, 2, -4, 2, 1, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -2, 2, 1, 232 | -0.00537, -0.03, -0.24, -0.20, -0.32, 0.00, 2, 0, 2, 1, 0.21252, 8.11, -0.09, 8.45, 233 | 12.72, 0.05, 2, -2, 3, 1, -0.00044, 0.00, -0.02, -0.02, -0.03, 0.00, 2, 0, 3, 1, 234 | 0.01704, 0.68, 0.00, 0.99, 1.02, 0.00, 2, -2, 4, 1, -0.00004, 0.00, 0.00, 0.00, 235 | 0.00, 0.00, 2, 0, 4, 1, 0.00135, 0.06, 0.00, 0.10, 0.08, 0.00, 2, 0, 5, 1, 0.00011, 236 | 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -4, 2, -0.00041, 0.00, 0.00, -0.03, -0.05, 237 | 0.00, 2, -2, -3, 2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -3, 2, -0.01036, 238 | -0.29, 0.00, -0.58, -1.25, 0.00, 2, -2, -2, 2, -0.00055, 0.00, -0.02, -0.02, -0.07, 239 | 0.00, 2, 0, -2, 2, -0.10888, -2.72, 0.00, -3.96, -13.05, 0.00, 2, 2, -2, 2, 240 | -0.00046, 0.00, -0.02, 0.00, -0.06, 0.00, 2, -2, -1, 2, -0.01072, -0.37, -0.47, 241 | -0.17, -1.28, 0.00, 2, 0, -1, 2, 2.35380, 79.52, -0.72, 42.86, 282.05, -0.06, 2, 2, 242 | -1, 2, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -2, 0, 2, 0.00080, 0.02, 0.04, 243 | 0.04, 0.10, 0.00, 2, 0, 0, 2, 0.14764, 4.88, -0.05, 4.90, 17.69, -0.29, 2, -2, 1, 244 | 2, 0.00187, 0.11, 0.07, 0.00, 0.22, 0.00, 2, 0, 1, 2, 0.00912, 0.29, 0.00, 0.46, 245 | 1.09, -0.04, 2, -2, 2, 2, 0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, 2, 2, 246 | 0.00036, 0.00, 0.00, 0.03, 0.04, 0.00, 2, 0, -3, 3, -0.00010, 0.00, 0.00, 0.00, 247 | 0.00, 0.00, 2, 0, -2, 3, -0.00052, -0.02, 0.00, -0.02, -0.09, 0.00, 2, -2, -1, 3, 248 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 0, -1, 3, 0.00208, 0.14, 0.00, 0.03, 249 | 0.37, 0.00, 2, 0, 0, 3, -0.00024, -0.02, 0.00, 0.00, -0.04, 0.00, 2, 0, -1, 4, 250 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, -1, -4, 0.00003, 0.00, 0.00, 0.00, 251 | 0.00, 0.00, 3, 0, 0, -4, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, -2, -3, 252 | 0.00008, 0.00, 0.00, 0.00, 0.00, 0.03, 3, 0, -1, -3, 0.00065, 0.03, 0.00, 0.00, 253 | 0.12, 0.25, 3, -2, 0, -3, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, 0, -3, 254 | -0.00055, 0.00, 0.00, 0.00, -0.10, -0.21, 3, 0, 1, -3, -0.00004, 0.00, 0.00, 0.00, 255 | 0.00, 0.00, 3, 0, -3, -2, -0.00016, 0.00, 0.00, 0.00, -0.02, -0.06, 3, 0, -2, -2, 256 | 0.00224, 0.03, 0.00, 0.08, 0.27, 0.87, 3, -2, -1, -2, -0.00005, 0.00, 0.00, 0.00, 257 | 0.00, -0.02, 3, 0, -1, -2, 0.01389, 0.55, 0.00, 0.26, 1.66, 5.40, 3, -2, 0, -2, 258 | 0.00070, 0.00, 0.03, 0.00, 0.08, 0.27, 3, 0, 0, -2, -0.01048, -0.23, 0.00, 0.04, 259 | -1.25, -4.07, 3, -2, 1, -2, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, 1, -2, 260 | -0.00067, 0.00, 0.00, 0.00, -0.08, -0.26, 3, 0, 2, -2, -0.00003, 0.00, 0.00, 0.00, 261 | 0.00, 0.00, 3, 0, -4, -1, -0.00012, 0.00, 0.00, 0.00, 0.00, -0.05, 3, 0, -3, -1, 262 | -0.00334, -0.05, 0.00, -0.18, -0.20, -1.30, 3, -2, -2, -1, -0.00014, 0.00, 0.00, 263 | 0.00, 0.00, -0.05, 3, 0, -2, -1, 0.05293, 0.92, 0.00, 1.93, 3.17, 20.58, 3, 2, -2, 264 | -1, -0.00006, 0.00, 0.00, 0.00, 0.00, -0.02, 3, -2, -1, -1, -0.00089, 0.00, -0.04, 265 | 0.00, -0.05, -0.34, 3, 0, -1, -1, 0.25561, 9.61, -0.15, 4.83, 15.24, 99.38, 3, -2, 266 | 0, -1, 0.01441, 0.21, 0.64, 0.00, 0.86, 5.61, 3, 0, 0, -1, -0.15708, -2.88, -0.04, 267 | 0.83, -9.42, -61.08, 3, -2, 1, -1, 0.00049, 0.00, 0.02, 0.00, 0.03, 0.19, 3, 0, 1, 268 | -1, -0.00887, -0.03, 0.00, -0.09, -0.54, -3.45, 3, -2, 2, -1, 0.00003, 0.00, 0.00, 269 | 0.00, 0.00, 0.00, 3, 0, 2, -1, -0.00030, 0.00, 0.00, 0.00, 0.00, -0.12, 3, 0, -5, 270 | 0, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, -4, 0, -0.00170, 0.00, 0.00, 271 | -0.12, 0.00, -0.66, 3, -2, -3, 0, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, -3, 272 | 0, -0.04843, -0.72, 0.00, -2.65, -0.03, -18.83, 3, 2, -3, 0, -0.00013, 0.00, 0.00, 273 | 0.00, 0.00, -0.05, 3, -2, -2, 0, -0.00206, 0.00, -0.09, -0.07, 0.00, -0.80, 3, 0, 274 | -2, 0, 0.86243, 16.64, -0.34, 31.48, 0.13, 335.34, 3, 2, -2, 0, -0.00101, -0.03, 275 | -0.04, -0.04, 0.00, -0.39, 3, -2, -1, 0, -0.00868, 0.00, -0.39, -0.14, 0.00, -3.38, 276 | 3, 0, -1, 0, 3.25823, 117.77, -2.27, 61.91, -1.34, 1266.88, 3, 2, -1, 0, -0.00006, 277 | 0.00, 0.00, 0.00, 0.00, -0.02, 3, -4, 0, 0, -0.00018, 0.00, 0.00, 0.00, 0.00, 278 | -0.07, 3, -2, 0, 0, 0.20099, 2.46, 8.95, -0.04, -0.07, 78.15, 3, 0, 0, 0, -1.41893, 279 | -19.43, -0.69, 10.76, -0.63, -551.71, 3, 2, 0, 0, -0.00015, 0.00, 0.00, 0.00, 0.00, 280 | -0.06, 3, -4, 1, 0, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.02, 3, -2, 1, 0, 0.00671, 281 | 0.02, 0.30, 0.12, 0.00, 2.61, 3, 0, 1, 0, -0.06545, 0.72, -0.10, -0.32, -0.11, 282 | -25.45, 3, 2, 1, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -2, 2, 0, 0.00035, 283 | 0.00, 0.00, 0.00, 0.00, 0.14, 3, 0, 2, 0, -0.00111, 0.21, 0.00, 0.03, 0.00, -0.43, 284 | 3, 0, 3, 0, 0.00016, 0.03, 0.00, 0.00, 0.00, 0.06, 3, 0, 4, 0, 0.00003, 0.00, 0.00, 285 | 0.00, 0.00, 0.00, 3, 0, -5, 1, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, -4, 1, 286 | -0.00065, -0.03, 0.00, -0.05, -0.04, -0.25, 3, 0, -3, 1, -0.00680, -0.29, 0.00, 287 | -0.37, -0.41, -2.64, 3, 2, -3, 1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -2, 288 | -2, 1, -0.00009, 0.00, 0.00, 0.00, 0.00, -0.04, 3, 0, -2, 1, 0.03810, 2.03, 0.00, 289 | 1.37, 2.29, 14.82, 3, 2, -2, 1, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.03, 3, -2, -1, 290 | 1, -0.00023, 0.00, 0.00, 0.00, 0.00, -0.09, 3, 0, -1, 1, -0.21259, -4.00, 0.17, 291 | -4.03, -12.70, -82.66, 3, 2, -1, 1, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.02, 3, -2, 292 | 0, 1, -0.00808, -0.12, -0.36, 0.00, -0.48, -3.14, 3, 0, 0, 1, -0.10766, -3.22, 293 | 0.12, -1.09, -6.42, -41.86, 3, -2, 1, 1, -0.00018, 0.00, 0.00, 0.00, 0.00, -0.07, 294 | 3, 0, 1, 1, -0.01448, -0.44, 0.00, -0.37, -0.86, -5.63, 3, 0, 2, 1, -0.00150, 295 | -0.05, 0.00, -0.07, -0.09, -0.58, 3, 0, 3, 1, -0.00014, 0.00, 0.00, 0.00, 0.00, 296 | -0.06, 3, 0, -3, 2, -0.00007, 0.00, 0.00, 0.00, 0.00, -0.03, 3, 0, -2, 2, 0.00032, 297 | 0.05, 0.00, 0.00, 0.04, 0.12, 3, 0, -1, 2, 0.00099, -0.05, 0.00, 0.02, 0.12, 0.39, 298 | 3, -2, 0, 2, 0.00009, 0.00, 0.00, 0.00, 0.02, 0.04, 3, 0, 0, 2, 0.00162, 0.04, 299 | 0.00, 0.00, 0.19, 0.63, 3, 0, 1, 2, 0.00028, 0.00, 0.00, 0.00, 0.03, 0.11, 3, 0, 2, 300 | 2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -2, -2, 3, 0.00000, -0.03, 0.00, 301 | -0.03, 0.00, -0.07, 3, 0, -2, 3, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 0, -1, 302 | 3, 0.00010, 0.00, 0.00, 0.00, 0.02, 0.04, 3, -2, 0, 3, 0.00002, 0.08, -0.06, 0.07, 303 | 0.08, -0.05, 4, 0, -1, -5, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, 0, -5, 304 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -2, -4, -0.00022, 0.00, 0.00, 0.00, 305 | -0.05, 0.00, 4, 0, -1, -4, -0.00078, -0.05, 0.00, 0.00, -0.19, 0.00, 4, 0, 0, -4, 306 | -0.00045, -0.03, 0.00, 0.00, -0.11, 0.00, 4, 0, 1, -4, -0.00006, 0.00, 0.00, 0.00, 307 | 0.00, 0.00, 4, 0, -3, -3, -0.00011, 0.00, 0.00, 0.00, -0.02, 0.00, 4, 0, -2, -3, 308 | -0.00513, -0.22, 0.00, -0.19, -0.92, 0.00, 4, -2, -1, -3, -0.00006, 0.00, 0.00, 309 | 0.00, 0.00, 0.00, 4, 0, -1, -3, -0.01571, -0.87, 0.00, -0.31, -2.82, 0.00, 4, -2, 310 | 0, -3, -0.00022, 0.00, 0.00, 0.00, -0.04, 0.00, 4, 0, 0, -3, -0.00817, -0.54, 0.00, 311 | -0.08, -1.47, 0.00, 4, 0, 1, -3, -0.00114, -0.08, 0.00, -0.03, -0.21, 0.00, 4, 0, 312 | 2, -3, -0.00013, 0.00, 0.00, 0.00, -0.02, 0.00, 4, 0, -5, -2, -0.00002, 0.00, 0.00, 313 | 0.00, 0.00, 0.00, 4, 0, -4, -2, -0.00012, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, -3, 314 | -2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -3, -2, -0.00239, -0.12, 0.00, 315 | -0.13, -0.29, 0.00, 4, 2, -3, -2, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, -2, 316 | -2, -0.00036, 0.00, 0.00, 0.00, -0.04, 0.00, 4, 0, -2, -2, -0.10834, -4.38, 0.04, 317 | -3.95, -12.96, 0.00, 4, 2, -2, -2, 0.00011, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, 318 | -1, -2, -0.00145, -0.04, -0.06, -0.03, -0.17, 0.00, 4, 0, -1, -2, -0.27906, -14.76, 319 | 0.11, -5.61, -33.36, 0.00, 4, 2, -1, -2, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 320 | -2, 0, -2, -0.00403, -0.18, -0.18, 0.00, -0.48, 0.00, 4, 0, 0, -2, -0.12806, -8.09, 321 | 0.05, -1.35, -15.30, -0.02, 4, -2, 1, -2, 0.00023, 0.00, 0.00, 0.00, 0.03, 0.00, 4, 322 | 0, 1, -2, -0.01728, -1.13, 0.00, -0.45, -2.06, 0.00, 4, -2, 2, -2, 0.00005, 0.00, 323 | 0.00, 0.00, 0.00, 0.00, 4, 0, 2, -2, -0.00184, -0.12, 0.00, -0.08, -0.22, 0.00, 4, 324 | 0, 3, -2, -0.00018, 0.00, 0.00, 0.00, -0.02, 0.00, 4, 0, -6, -1, -0.00004, 0.00, 325 | 0.00, 0.00, 0.00, 0.00, 4, 0, -5, -1, -0.00041, 0.00, 0.00, -0.04, -0.02, 0.00, 4, 326 | -2, -4, -1, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -4, -1, -0.00230, -0.06, 327 | 0.00, -0.17, -0.14, 0.00, 4, -2, -3, -1, -0.00059, -0.02, -0.03, -0.03, -0.04, 328 | 0.00, 4, 0, -3, -1, -0.04316, -2.19, 0.02, -2.36, -2.59, 0.00, 4, 2, -3, -1, 329 | 0.00077, 0.02, 0.03, 0.04, 0.05, 0.00, 4, -2, -2, -1, -0.00661, -0.25, -0.29, 330 | -0.24, -0.40, 0.00, 4, 0, -2, -1, -1.89710, -73.13, 0.79, -69.17, -113.34, -0.12, 331 | 4, 2, -2, -1, 0.00160, 0.07, 0.07, 0.06, 0.10, 0.00, 4, -4, -1, -1, -0.00006, 0.00, 332 | 0.00, 0.00, 0.00, 0.00, 4, -2, -1, -1, -0.02698, -0.67, -1.20, -0.50, -1.61, 0.00, 333 | 4, 0, -1, -1, -3.95812, -199.78, 1.54, -80.75, -236.16, 0.15, 4, 2, -1, -1, 334 | 0.00069, 0.03, 0.03, 0.03, 0.04, 0.00, 4, -4, 0, -1, 0.00003, 0.00, 0.00, 0.00, 335 | 0.00, 0.00, 4, -2, 0, -1, -0.05789, -2.54, -2.57, 0.14, -3.44, -0.02, 4, 0, 0, -1, 336 | -1.57145, -94.02, 0.59, -18.48, -93.65, -0.26, 4, 2, 0, -1, 0.00008, 0.00, 0.00, 337 | 0.00, 0.00, 0.00, 4, -4, 1, -1, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, 1, 338 | -1, 0.00272, 0.12, 0.12, 0.07, 0.16, 0.00, 4, 0, 1, -1, -0.20286, -12.45, 0.08, 339 | -5.51, -12.08, -0.03, 4, -2, 2, -1, 0.00055, 0.02, 0.02, 0.02, 0.03, 0.00, 4, 0, 2, 340 | -1, -0.02079, -1.29, 0.00, -0.92, -1.24, 0.00, 4, -2, 3, -1, 0.00006, 0.00, 0.00, 341 | 0.00, 0.00, 0.00, 4, 0, 3, -1, -0.00194, -0.12, 0.00, -0.12, -0.12, 0.00, 4, 0, 4, 342 | -1, -0.00017, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -7, 0, -0.00005, 0.00, 0.00, 343 | 0.00, 0.00, 0.00, 4, 0, -6, 0, -0.00055, -0.02, 0.00, -0.06, 0.00, 0.00, 4, -2, -5, 344 | 0, -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -5, 0, -0.00542, -0.21, 0.00, 345 | -0.49, 0.00, 0.00, 4, -2, -4, 0, -0.00072, -0.03, -0.03, -0.05, 0.00, 0.00, 4, 0, 346 | -4, 0, -0.02939, -0.87, 0.00, -2.14, 0.00, 0.00, 4, 2, -4, 0, -0.00009, 0.00, 0.00, 347 | 0.00, 0.00, 0.00, 4, -2, -3, 0, -0.00744, -0.27, -0.33, -0.41, 0.00, 0.00, 4, 0, 348 | -3, 0, -0.51423, -25.81, 0.28, -28.10, -0.19, -0.15, 4, 2, -3, 0, 0.00925, 0.29, 349 | 0.41, 0.50, 0.00, 0.00, 4, -4, -2, 0, -0.00014, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 350 | -2, -2, 0, -0.07982, -2.91, -3.54, -2.91, 0.00, 0.00, 4, 0, -2, 0, -21.63627, 351 | -808.81, 9.47, -788.01, 2.77, -1.21, 4, 2, -2, 0, 0.01483, 0.60, 0.66, 0.61, 0.00, 352 | 0.00, 4, -4, -1, 0, -0.00080, -0.02, -0.07, 0.00, 0.00, 0.00, 4, -2, -1, 0, 353 | -0.32176, -7.98, -14.29, -5.95, 0.15, -0.11, 4, 0, -1, 0, -34.78245, -1678.73, 354 | 13.50, -725.23, 8.97, 0.88, 4, 2, -1, 0, 0.00550, 0.25, 0.25, 0.21, 0.00, 0.00, 4, 355 | -4, 0, 0, 0.00032, 0.00, 0.03, 0.00, 0.00, 0.00, 4, -2, 0, 0, -0.50793, -21.44, 356 | -22.55, 1.37, 0.28, -0.17, 4, 0, 0, 0, -11.64993, -657.42, 4.13, -155.60, 4.42, 357 | -2.17, 4, 2, 0, 0, 0.00067, 0.02, 0.03, 0.05, 0.00, 0.00, 4, -4, 1, 0, 0.00050, 358 | 0.00, 0.04, 0.00, 0.00, 0.00, 4, -2, 1, 0, 0.01938, 0.76, 0.89, 0.57, 0.00, 0.00, 359 | 4, 0, 1, 0, -1.42255, -81.30, 0.50, -40.47, 0.68, -0.21, 4, 2, 1, 0, 0.00007, 0.00, 360 | 0.00, 0.00, 0.00, 0.00, 4, -2, 2, 0, 0.00400, 0.16, 0.18, 0.17, 0.00, 0.00, 4, 0, 361 | 2, 0, -0.13922, -7.97, 0.05, -6.33, 0.08, 0.00, 4, -2, 3, 0, 0.00044, 0.00, 0.02, 362 | 0.03, 0.00, 0.00, 4, 0, 3, 0, -0.01243, -0.71, 0.00, -0.78, 0.00, 0.00, 4, -2, 4, 363 | 0, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, 4, 0, -0.00106, -0.06, 0.00, -0.09, 364 | 0.00, 0.00, 4, 0, 5, 0, -0.00009, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -5, 1, 365 | -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -4, 1, 0.00093, 0.05, 0.00, 0.07, 366 | 0.06, 0.00, 4, 0, -3, 1, -0.02399, -2.48, 0.03, -1.30, -1.43, 0.00, 4, 2, -3, 1, 367 | -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, -2, 1, 0.00036, -0.05, 0.00, 0.00, 368 | 0.02, 0.00, 4, 0, -2, 1, 0.23696, -7.25, 0.12, 8.69, 14.25, 0.02, 4, 2, -2, 1, 369 | -0.00022, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, -1, 1, 0.01551, 0.50, 0.69, 0.29, 370 | 0.92, 0.00, 4, 0, -1, 1, 0.57881, 16.49, -0.10, 12.27, 34.72, 0.13, 4, 2, -1, 1, 371 | -0.00012, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, 0, 1, 0.01969, 0.95, 0.87, 0.00, 372 | 1.18, 0.00, 4, 0, 0, 1, 0.24453, 12.94, -0.10, 3.44, 14.63, 0.04, 4, 2, 0, 1, 373 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -4, 1, 1, -0.00003, 0.00, 0.00, 0.00, 374 | 0.00, 0.00, 4, -2, 1, 1, 0.00013, 0.03, 0.00, 0.00, 0.00, 0.00, 4, 0, 1, 1, 375 | 0.03682, 2.17, -0.02, 1.07, 2.20, 0.00, 4, -2, 2, 1, -0.00008, 0.00, 0.00, 0.00, 376 | 0.00, 0.00, 4, 0, 2, 1, 0.00430, 0.27, 0.00, 0.20, 0.26, 0.00, 4, 0, 3, 1, 0.00045, 377 | 0.03, 0.00, 0.03, 0.03, 0.00, 4, 0, 4, 1, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 378 | 0, -4, 2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -2, -3, 2, 0.00002, 0.00, 379 | 0.00, 0.00, 0.00, 0.00, 4, 0, -3, 2, 0.00252, 0.17, 0.00, 0.14, 0.30, 0.00, 4, -2, 380 | -2, 2, 0.00021, 0.00, 0.00, 0.00, 0.03, 0.00, 4, 0, -2, 2, 0.02658, 1.57, 0.00, 381 | 0.97, 3.18, 0.00, 4, -2, -1, 2, -0.00064, -0.04, -0.03, 0.00, -0.08, 0.00, 4, 0, 382 | -1, 2, 0.01868, 1.31, 0.00, 0.45, 2.24, 0.00, 4, -2, 0, 2, 0.00005, 0.00, 0.00, 383 | 0.00, 0.00, 0.00, 4, 0, 0, 2, 0.00136, 0.11, 0.00, 0.09, 0.16, 0.00, 4, 0, 1, 2, 384 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 0, -2, 3, -0.00015, 0.00, 0.00, 0.00, 385 | -0.03, 0.00, 4, 0, -1, 3, -0.00020, 0.00, 0.00, 0.00, -0.04, 0.00, 4, 0, 0, 3, 386 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 5, 0, -2, -3, 0.00003, 0.00, 0.00, 0.00, 387 | 0.00, 0.00, 5, 0, -3, -2, 0.00009, 0.00, 0.00, 0.00, 0.00, 0.03, 5, 0, -2, -2, 388 | 0.00044, 0.03, 0.00, 0.00, 0.05, 0.17, 5, -2, -1, -2, 0.00002, 0.00, 0.00, 0.00, 389 | 0.00, 0.00, 5, 0, -1, -2, -0.00006, 0.00, 0.00, 0.00, 0.00, -0.02, 5, 0, 0, -2, 390 | -0.00016, 0.00, 0.00, 0.00, -0.02, -0.06, 5, 0, 1, -2, -0.00002, 0.00, 0.00, 0.00, 391 | 0.00, 0.00, 5, 0, -4, -1, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 5, 0, -3, -1, 392 | 0.00128, 0.06, 0.00, 0.07, 0.08, 0.50, 5, -2, -2, -1, 0.00003, 0.00, 0.00, 0.00, 393 | 0.00, 0.00, 5, 0, -2, -1, 0.00573, 0.32, 0.00, 0.22, 0.34, 2.23, 5, -2, -1, -1, 394 | 0.00034, 0.00, 0.00, 0.00, 0.02, 0.13, 5, 0, -1, -1, -0.00056, 0.07, 0.00, 0.02, 395 | -0.04, -0.22, 5, -2, 0, -1, 0.00021, 0.00, 0.00, 0.00, 0.00, 0.08, 5, 0, 0, -1, 396 | -0.00153, -0.06, 0.00, 0.00, -0.09, -0.60, 5, -2, 1, -1, 0.00003, 0.00, 0.00, 0.00, 397 | 0.00, 0.00, 5, 0, 1, -1, -0.00019, 0.00, 0.00, 0.00, 0.00, -0.07, 5, 0, -4, 0, 398 | 0.00026, 0.00, 0.00, 0.02, 0.00, 0.10, 5, -2, -3, 0, 0.00004, 0.00, 0.00, 0.00, 399 | 0.00, 0.00, 5, 0, -3, 0, 0.01149, 0.49, 0.00, 0.63, 0.00, 4.47, 5, 2, -3, 0, 400 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -2, -2, 0, 0.00030, 0.00, 0.00, 0.00, 401 | 0.00, 0.12, 5, 0, -2, 0, 0.04591, 2.50, -0.04, 1.73, -0.03, 17.85, 5, -2, -1, 0, 402 | 0.00281, 0.10, 0.12, 0.05, 0.00, 1.09, 5, 0, -1, 0, -0.00248, 0.57, -0.02, 0.22, 403 | -0.04, -0.96, 5, -2, 0, 0, 0.00142, 0.07, 0.06, 0.00, 0.00, 0.55, 5, 0, 0, 0, 404 | -0.00814, -0.25, 0.00, 0.07, 0.00, -3.17, 5, -2, 1, 0, 0.00020, 0.00, 0.00, 0.00, 405 | 0.00, 0.08, 5, 0, 1, 0, -0.00089, 0.00, 0.00, 0.00, 0.00, -0.35, 5, 0, 2, 0, 406 | -0.00006, 0.00, 0.00, 0.00, 0.00, -0.02, 5, 0, -4, 1, 0.00003, 0.00, 0.00, 0.00, 407 | 0.00, 0.00, 5, 0, -3, 1, 0.00038, 0.04, 0.00, 0.02, 0.02, 0.15, 5, 0, -2, 1, 408 | -0.00256, -0.07, 0.00, -0.10, -0.15, -1.00, 5, -2, -1, 1, -0.00015, 0.00, 0.00, 409 | 0.00, 0.00, -0.06, 5, 0, -1, 1, -0.00311, -0.16, 0.00, -0.08, -0.19, -1.21, 5, -2, 410 | 0, 1, -0.00009, 0.00, 0.00, 0.00, 0.00, -0.03, 5, 0, 0, 1, -0.00111, -0.07, 0.00, 411 | -0.03, -0.07, -0.43, 5, 0, 1, 1, -0.00020, 0.00, 0.00, 0.00, 0.00, -0.08, 5, 0, 2, 412 | 1, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 5, 0, -1, 2, 0.00007, 0.00, 0.00, 0.00, 413 | 0.00, 0.03, 5, 0, 0, 2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -2, -4, 414 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -1, -4, -0.00003, 0.00, 0.00, 0.00, 415 | 0.00, 0.00, 6, 0, -3, -3, -0.00012, 0.00, 0.00, 0.00, -0.02, 0.00, 6, 0, -2, -3, 416 | -0.00044, -0.03, 0.00, 0.00, -0.08, 0.00, 6, 0, -1, -3, -0.00043, -0.04, 0.00, 417 | 0.00, -0.08, 0.00, 6, 0, 0, -3, -0.00017, 0.00, 0.00, 0.00, -0.03, 0.00, 6, 0, 1, 418 | -3, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -4, -2, -0.00007, 0.00, 0.00, 419 | 0.00, 0.00, 0.00, 6, 0, -3, -2, -0.00195, -0.12, 0.00, -0.11, -0.23, 0.00, 6, -2, 420 | -2, -2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -2, -2, -0.00618, -0.44, 421 | 0.00, -0.24, -0.74, 0.00, 6, -2, -1, -2, -0.00011, 0.00, 0.00, 0.00, 0.00, 0.00}; 422 | System.arraycopy(data, 0, PARAMS, offset, data.length); 423 | } 424 | 425 | private static void setParams1() { 426 | final int offset = 1 * EACH_ITEMS; 427 | Number[] data = {6, 0, -1, -2, -0.00541, -0.44, 0.00, -0.14, -0.65, 0.00, 6, -2, 0, -2, 428 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, 0, -2, -0.00194, -0.17, 0.00, -0.04, 429 | -0.23, 0.00, 6, 0, 1, -2, -0.00035, -0.03, 0.00, 0.00, -0.04, 0.00, 6, 0, 2, -2, 430 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -4, -1, -0.00085, -0.06, 0.00, -0.06, 431 | -0.05, 0.00, 6, -2, -3, -1, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -3, -1, 432 | -0.02436, -1.43, 0.00, -1.33, -1.45, 0.00, 6, 2, -3, -1, 0.00004, 0.00, 0.00, 0.00, 433 | 0.00, 0.00, 6, -2, -2, -1, -0.00041, 0.00, 0.00, 0.00, -0.02, 0.00, 6, 0, -2, -1, 434 | -0.06678, -4.61, 0.04, -2.60, -3.98, 0.00, 6, 2, -2, -1, 0.00004, 0.00, 0.00, 0.00, 435 | 0.00, 0.00, 6, -2, -1, -1, -0.00121, -0.07, -0.05, -0.02, -0.07, 0.00, 6, 0, -1, 436 | -1, -0.05191, -4.10, 0.03, -1.42, -3.09, 0.00, 6, -2, 0, -1, -0.00049, -0.04, 437 | -0.02, 0.00, -0.03, 0.00, 6, 0, 0, -1, -0.01709, -1.47, 0.00, -0.42, -1.01, 0.00, 438 | 6, 0, 1, -1, -0.00296, -0.26, 0.00, -0.11, -0.18, 0.00, 6, 0, 2, -1, -0.00039, 439 | -0.04, 0.00, -0.02, -0.02, 0.00, 6, 0, 3, -1, -0.00005, 0.00, 0.00, 0.00, 0.00, 440 | 0.00, 6, 0, -5, 0, -0.00009, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -4, 0, -0.00659, 441 | -0.45, 0.00, -0.48, 0.00, 0.00, 6, 2, -4, 0, 0.00012, 0.00, 0.00, 0.00, 0.00, 0.00, 442 | 6, -2, -3, 0, -0.00027, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -3, 0, -0.18316, 443 | -10.48, 0.12, -10.02, 0.05, -0.02, 6, 2, -3, 0, 0.00028, 0.00, 0.00, 0.00, 0.00, 444 | 0.00, 6, -2, -2, 0, -0.00326, -0.13, -0.14, -0.12, 0.00, 0.00, 6, 0, -2, 0, 445 | -0.42250, -28.36, 0.26, -16.58, 0.19, 0.00, 6, 2, -2, 0, 0.00020, 0.00, 0.00, 0.00, 446 | 0.00, 0.00, 6, -2, -1, 0, -0.00785, -0.44, -0.35, -0.13, 0.00, 0.00, 6, 0, -1, 0, 447 | -0.28663, -21.86, 0.16, -8.12, 0.18, -0.03, 6, 2, -1, 0, 0.00006, 0.00, 0.00, 0.00, 448 | 0.00, 0.00, 6, -4, 0, 0, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -2, 0, 0, 449 | -0.00270, -0.19, -0.12, 0.00, 0.00, 0.00, 6, 0, 0, 0, -0.08587, -7.10, 0.05, -2.25, 450 | 0.07, -0.02, 6, 0, 1, 0, -0.01420, -1.20, 0.00, -0.55, 0.00, 0.00, 6, -2, 2, 0, 451 | 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, 2, 0, -0.00182, -0.16, 0.00, -0.10, 452 | 0.00, 0.00, 6, 0, 3, 0, -0.00020, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, 4, 0, 453 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -4, 1, -0.00024, -0.04, 0.00, 0.00, 454 | 0.00, 0.00, 6, 0, -3, 1, 0.00278, -0.06, 0.00, 0.15, 0.17, 0.00, 6, -2, -2, 1, 455 | 0.00019, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -2, 1, 0.00948, 0.35, 0.00, 0.37, 456 | 0.57, 0.00, 6, -2, -1, 1, 0.00042, 0.03, 0.00, 0.00, 0.02, 0.00, 6, 0, -1, 1, 457 | 0.00780, 0.49, 0.00, 0.22, 0.47, 0.00, 6, -2, 0, 1, 0.00016, 0.00, 0.00, 0.00, 458 | 0.00, 0.00, 6, 0, 0, 1, 0.00272, 0.21, 0.00, 0.07, 0.16, 0.00, 6, 0, 1, 1, 0.00052, 459 | 0.04, 0.00, 0.02, 0.03, 0.00, 6, 0, 2, 1, 0.00008, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 460 | 0, -4, 2, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 0, -3, 2, 0.00034, 0.03, 0.00, 461 | 0.02, 0.04, 0.00, 6, 0, -2, 2, 0.00044, 0.04, 0.00, 0.00, 0.05, 0.00, 6, 0, -1, 2, 462 | 0.00014, 0.00, 0.00, 0.00, 0.00, 0.00, 7, 0, -4, -1, 0.00002, 0.00, 0.00, 0.00, 463 | 0.00, 0.00, 7, 0, -3, -1, 0.00011, 0.00, 0.00, 0.00, 0.00, 0.04, 7, 0, -2, -1, 464 | 0.00006, 0.00, 0.00, 0.00, 0.00, 0.02, 7, 0, -1, -1, -0.00002, 0.00, 0.00, 0.00, 465 | 0.00, 0.00, 7, 0, -4, 0, 0.00015, 0.00, 0.00, 0.00, 0.00, 0.06, 7, 0, -3, 0, 466 | 0.00066, 0.05, 0.00, 0.04, 0.00, 0.26, 7, -2, -2, 0, 0.00004, 0.00, 0.00, 0.00, 467 | 0.00, 0.00, 7, 0, -2, 0, 0.00032, 0.04, 0.00, 0.00, 0.00, 0.13, 7, -2, -1, 0, 468 | 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 7, 0, -1, 0, -0.00008, 0.00, 0.00, 0.00, 469 | 0.00, -0.03, 7, 0, 0, 0, -0.00007, 0.00, 0.00, 0.00, 0.00, -0.03, 7, 0, -3, 1, 470 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 7, 0, -2, 1, -0.00007, 0.00, 0.00, 0.00, 471 | 0.00, -0.03, 7, 0, -1, 1, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -4, -2, 472 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -3, -2, -0.00013, 0.00, 0.00, 0.00, 473 | 0.00, 0.00, 8, 0, -2, -2, -0.00016, 0.00, 0.00, 0.00, -0.02, 0.00, 8, 0, -1, -2, 474 | -0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, 0, -2, -0.00003, 0.00, 0.00, 0.00, 475 | 0.00, 0.00, 8, 0, -4, -1, -0.00033, -0.03, 0.00, -0.02, -0.02, 0.00, 8, 0, -3, -1, 476 | -0.00109, -0.10, 0.00, -0.06, -0.07, 0.00, 8, -2, -2, -1, -0.00002, 0.00, 0.00, 477 | 0.00, 0.00, 0.00, 8, 0, -2, -1, -0.00126, -0.12, 0.00, -0.06, -0.08, 0.00, 8, -2, 478 | -1, -1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -1, -1, -0.00070, -0.08, 479 | 0.00, -0.03, -0.04, 0.00, 8, 0, 0, -1, -0.00022, -0.02, 0.00, 0.00, 0.00, 0.00, 8, 480 | 0, 1, -1, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -5, 0, -0.00009, 0.00, 481 | 0.00, 0.00, 0.00, 0.00, 8, 0, -4, 0, -0.00184, -0.14, 0.00, -0.13, 0.00, 0.00, 8, 482 | -2, -3, 0, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -3, 0, -0.00539, -0.46, 483 | 0.00, -0.31, 0.00, 0.00, 8, -2, -2, 0, -0.00012, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 484 | 0, -2, 0, -0.00559, -0.53, 0.00, -0.25, 0.00, 0.00, 8, -2, -1, 0, -0.00009, 0.00, 485 | 0.00, 0.00, 0.00, 0.00, 8, 0, -1, 0, -0.00285, -0.29, 0.00, -0.11, 0.00, 0.00, 8, 486 | -2, 0, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, 0, 0, -0.00083, -0.09, 487 | 0.00, -0.03, 0.00, 0.00, 8, 0, 1, 0, -0.00016, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, 488 | 2, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -4, 1, 0.00004, 0.00, 0.00, 489 | 0.00, 0.00, 0.00, 8, 0, -3, 1, 0.00015, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -2, 1, 490 | 0.00019, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 0, -1, 1, 0.00011, 0.00, 0.00, 0.00, 491 | 0.00, 0.00, 8, 0, 0, 1, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 0, -3, -1, 492 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 0, -2, -1, -0.00002, 0.00, 0.00, 0.00, 493 | 0.00, 0.00, 10, 0, -5, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 0, -4, 0, 494 | -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 0, -3, 0, -0.00010, 0.00, 0.00, 0.00, 495 | 0.00, 0.00, 10, 0, -2, 0, -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 0, -1, 0, 496 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00}; 497 | System.arraycopy(data, 0, PARAMS, offset, data.length); 498 | } 499 | } 500 | -------------------------------------------------------------------------------- /src/oyyq/calendar/util/elpmpp02/data/Elp_Main_S2.java: -------------------------------------------------------------------------------- 1 | package oyyq.calendar.util.elpmpp02.data; 2 | 3 | public class Elp_Main_S2 extends Elp_Main { 4 | 5 | public static final int LINE_ITEMS = 10; 6 | private static final int EACH_LINES = 600; 7 | public static final int TOTAL_LINES = 918; 8 | private static final int EACH_ITEMS = EACH_LINES * LINE_ITEMS; 9 | public static final Number[] PARAMS = new Number[LINE_ITEMS * TOTAL_LINES]; 10 | 11 | static { 12 | setParams0(); 13 | setParams1(); 14 | } 15 | 16 | private static void setParams0() { 17 | final int offset = 0 * EACH_ITEMS; 18 | Number[] data = {0, 1, 0, 0, 18461.40000, 0.00, 412529.61, 0.00, 0.00, 0.00, 0, 3, 0, 0, 19 | -6.29664, 7.68, -422.65, -13.21, 0.02, -0.02, 0, 5, 0, 0, 0.00592, 0.00, 0.66, 20 | 0.02, 0.00, 0.00, 0, -5, 1, 0, -0.00236, 0.02, -0.26, -0.05, 0.00, 0.00, 0, -3, 1, 21 | 0, 2.79871, -17.13, 188.68, 50.78, -0.11, 0.04, 0, -1, 1, 0, 999.70079, -563.82, 22 | 22508.54, 18298.82, -0.92, -0.21, 0, 1, 1, 0, 1010.17430, -93.16, 22571.83, 23 | 18386.36, -0.76, -0.17, 0, 3, 1, 0, -1.01941, 0.95, -68.42, -19.88, 0.00, 0.00, 0, 24 | 5, 1, 0, 0.00156, 0.00, 0.17, 0.03, 0.00, 0.00, 0, -5, 2, 0, -0.00044, 0.00, -0.05, 25 | -0.02, 0.00, 0.00, 0, -3, 2, 0, -0.13035, -0.40, -8.78, -4.77, 0.00, 0.00, 0, -1, 26 | 2, 0, 31.75985, -167.64, 723.95, 1159.97, -1.09, 0.22, 0, 1, 2, 0, 61.91229, 27 | -23.73, 1382.40, 2253.18, -0.62, -0.06, 0, 3, 2, 0, -0.11787, 0.11, -7.91, -4.41, 28 | 0.00, 0.00, 0, 5, 2, 0, 0.00026, 0.00, 0.03, 0.01, 0.00, 0.00, 0, -5, 3, 0, 29 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -3, 3, 0, -0.00146, 0.04, -0.10, -0.08, 30 | 0.00, 0.00, 0, -1, 3, 0, 1.58131, -10.25, 36.06, 86.53, -0.08, 0.00, 0, 1, 3, 0, 31 | 3.98407, -3.30, 88.86, 217.43, -0.11, -0.01, 0, 3, 3, 0, -0.01181, 0.01, -0.79, 32 | -0.65, 0.00, 0.00, 0, 5, 3, 0, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -3, 4, 0, 33 | -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, 4, 0, 0.09157, -0.70, 2.09, 6.68, 34 | 0.00, 0.00, 0, 1, 4, 0, 0.26325, -0.37, 5.86, 19.15, -0.01, 0.00, 0, 3, 4, 0, 35 | -0.00109, 0.00, -0.07, -0.08, 0.00, 0.00, 0, -1, 5, 0, 0.00566, -0.05, 0.13, 0.51, 36 | 0.00, 0.00, 0, 1, 5, 0, 0.01768, -0.04, 0.39, 1.61, 0.00, 0.00, 0, 3, 5, 0, 37 | -0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, 6, 0, 0.00036, 0.00, 0.00, 0.04, 38 | 0.00, 0.00, 0, 1, 6, 0, 0.00120, 0.00, 0.03, 0.13, 0.00, 0.00, 0, -1, 7, 0, 39 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 7, 0, 0.00008, 0.00, 0.00, 0.01, 0.00, 40 | 0.00, 0, -1, -6, 1, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, -6, 1, -0.00001, 41 | 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -5, 1, -0.00053, -0.01, -0.01, -0.05, -0.03, 42 | 0.00, 0, 1, -5, 1, -0.00014, 0.00, 0.00, -0.01, 0.00, 0.00, 0, -3, -4, 1, 0.00003, 43 | 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -4, 1, -0.00646, -0.14, -0.14, -0.47, -0.39, 44 | 0.00, 0, 1, -4, 1, -0.00186, -0.02, -0.04, -0.14, -0.11, 0.00, 0, -3, -3, 1, 45 | 0.00023, 0.00, 0.01, 0.01, 0.01, 0.00, 0, -1, -3, 1, -0.07479, -1.69, -1.63, -4.08, 46 | -4.48, 0.00, 0, 1, -3, 1, -0.02365, -0.35, -0.53, -1.29, -1.42, 0.00, 0, 3, -3, 1, 47 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -3, -2, 1, 0.00154, 0.03, 0.10, 0.06, 48 | 0.09, 0.00, 0, -1, -2, 1, -0.79322, -18.59, -17.32, -28.86, -47.52, -0.01, 0, 1, 49 | -2, 1, -0.30129, -4.79, -6.71, -11.01, -18.04, -0.01, 0, 3, -2, 1, 0.00191, 0.06, 50 | 0.13, 0.07, 0.12, 0.00, 0, -5, -1, 1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 51 | -3, -1, 1, 0.00679, 0.14, 0.45, 0.14, 0.41, 0.00, 0, -1, -1, 1, -6.73173, -159.36, 52 | -146.94, -122.89, -403.36, -0.03, 0, 1, -1, 1, -5.63260, -148.81, -123.96, -102.80, 53 | -337.62, -0.04, 0, 3, -1, 1, -0.00911, -0.20, -0.61, -0.15, -0.55, 0.00, 0, -3, 0, 54 | 1, 0.00010, -0.17, 0.00, 0.06, 0.00, 0.00, 0, -1, 0, 1, -4.83983, 70.86, -100.97, 55 | -8.74, -289.05, 0.02, 0, 1, 0, 1, -6.46036, 28.14, -136.25, -20.21, -386.09, 0.29, 56 | 0, 3, 0, 1, 0.01157, 0.06, 0.77, 0.04, 0.69, 0.00, 0, 5, 0, 1, -0.00002, 0.00, 57 | 0.00, 0.00, 0.00, 0.00, 0, -3, 1, 1, -0.00703, -0.04, -0.47, -0.13, -0.42, 0.00, 0, 58 | -1, 1, 1, -5.07614, -113.16, -112.23, -93.12, -304.28, 0.00, 0, 1, 1, 1, -5.31151, 59 | -99.03, -115.96, -99.19, -318.30, 0.06, 0, 3, 1, 1, 0.00668, 0.10, 0.45, 0.13, 60 | 0.40, 0.00, 0, 5, 1, 1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -3, 2, 1, 61 | 0.00141, 0.04, 0.09, 0.05, 0.08, 0.00, 0, -1, 2, 1, -0.31292, -4.92, -6.96, -11.47, 62 | -18.75, 0.00, 0, 1, 2, 1, -0.63884, -12.56, -13.95, -23.51, -38.29, 0.01, 0, 3, 2, 63 | 1, 0.00135, 0.02, 0.09, 0.05, 0.08, 0.00, 0, -3, 3, 1, 0.00003, 0.00, 0.00, 0.00, 64 | 0.00, 0.00, 0, -1, 3, 1, -0.02419, -0.36, -0.54, -1.33, -1.45, 0.00, 0, 1, 3, 1, 65 | -0.06176, -1.23, -1.35, -3.40, -3.70, 0.00, 0, 3, 3, 1, 0.00020, 0.00, 0.01, 0.01, 66 | 0.01, 0.00, 0, -1, 4, 1, -0.00191, -0.03, -0.04, -0.14, -0.11, 0.00, 0, 1, 4, 1, 67 | -0.00548, -0.11, -0.12, -0.40, -0.33, 0.00, 0, 3, 4, 1, 0.00002, 0.00, 0.00, 0.00, 68 | 0.00, 0.00, 0, -1, 5, 1, -0.00015, 0.00, 0.00, -0.01, 0.00, 0.00, 0, 1, 5, 1, 69 | -0.00046, 0.00, -0.01, -0.04, -0.03, 0.00, 0, -1, 6, 1, -0.00001, 0.00, 0.00, 0.00, 70 | 0.00, 0.00, 0, 1, 6, 1, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -5, 2, 71 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -4, 2, -0.00016, 0.00, 0.00, -0.01, 72 | -0.02, 0.00, 0, 1, -4, 2, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -3, 2, 73 | -0.00169, -0.05, -0.04, -0.09, -0.20, 0.00, 0, 1, -3, 2, -0.00049, -0.01, -0.01, 74 | -0.03, -0.06, 0.00, 0, -3, -2, 2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -2, 75 | 2, -0.01571, -0.49, -0.34, -0.57, -1.88, 0.00, 0, 1, -2, 2, -0.00536, -0.12, -0.12, 76 | -0.20, -0.64, 0.00, 0, 3, -2, 2, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -3, -1, 77 | 2, 0.00010, 0.00, 0.00, 0.00, 0.01, 0.00, 0, -1, -1, 2, -0.11335, -3.25, -2.46, 78 | -2.07, -13.58, 0.00, 0, 1, -1, 2, -0.09511, -3.17, -2.08, -1.73, -11.39, 0.00, 0, 79 | 3, -1, 2, -0.00009, 0.00, 0.00, 0.00, -0.01, 0.00, 0, -3, 0, 2, -0.00014, 0.00, 80 | 0.00, 0.00, -0.02, 0.00, 0, -1, 0, 2, -0.01801, 3.13, -0.33, -0.14, -2.14, 0.00, 0, 81 | 1, 0, 2, -0.05729, 2.09, -1.19, -0.39, -6.84, 0.00, 0, 3, 0, 2, 0.00016, 0.00, 82 | 0.01, 0.00, 0.02, 0.00, 0, -3, 1, 2, -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, 83 | 1, 2, -0.06187, -1.29, -1.37, -1.13, -7.41, 0.00, 0, 1, 1, 2, -0.05504, -0.81, 84 | -1.21, -1.04, -6.59, 0.00, 0, 3, 1, 2, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 85 | -3, 2, 2, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, 2, 2, -0.00284, -0.02, 86 | -0.06, -0.10, -0.34, 0.00, 0, 1, 2, 2, -0.00528, -0.06, -0.12, -0.19, -0.63, 0.00, 87 | 0, 3, 2, 2, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, 3, 2, -0.00016, 0.00, 88 | 0.00, 0.00, -0.02, 0.00, 0, 1, 3, 2, -0.00037, 0.00, 0.00, -0.02, -0.04, 0.00, 0, 89 | 1, 4, 2, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, -3, 3, -0.00004, 0.00, 90 | 0.00, 0.00, 0.00, 0.00, 0, 1, -3, 3, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 0, -1, 91 | -2, 3, -0.00033, -0.01, 0.00, -0.01, -0.06, 0.00, 0, 1, -2, 3, -0.00011, 0.00, 92 | 0.00, 0.00, -0.02, 0.00, 0, -1, -1, 3, -0.00216, -0.07, -0.05, -0.04, -0.39, 0.00, 93 | 0, 1, -1, 3, -0.00190, -0.07, -0.04, -0.03, -0.34, 0.00, 0, -1, 0, 3, 0.00066, 94 | 0.11, 0.02, 0.00, 0.12, 0.00, 0, 1, 0, 3, -0.00031, 0.08, 0.00, 0.00, -0.06, 0.00, 95 | 0, -1, 1, 3, -0.00109, -0.02, -0.02, -0.02, -0.19, 0.00, 0, 1, 1, 3, -0.00083, 96 | -0.01, -0.02, -0.02, -0.15, 0.00, 0, -1, 2, 3, -0.00004, 0.00, 0.00, 0.00, 0.00, 97 | 0.00, 0, 1, 2, 3, -0.00008, 0.00, 0.00, 0.00, -0.01, 0.00, 0, -1, -1, 4, -0.00004, 98 | 0.00, 0.00, 0.00, -0.01, 0.00, 0, 1, -1, 4, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 99 | 0, -1, 0, 4, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 0, 4, 0.00001, 0.00, 100 | 0.00, 0.00, 0.00, 0.00, 0, -1, 1, 4, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 101 | 1, 4, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, -1, -3, 0.00003, 0.00, 0.00, 102 | 0.00, 0.00, 0.01, 1, -1, 0, -3, 0.00011, 0.00, 0.00, 0.00, 0.02, 0.04, 1, 1, 0, -3, 103 | 0.00012, 0.00, 0.00, 0.00, 0.02, 0.05, 1, -1, 1, -3, -0.00002, 0.00, 0.00, 0.00, 104 | 0.00, 0.00, 1, -1, -2, -2, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.03, 1, 1, -2, -2, 105 | -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 1, -1, -1, -2, 0.00064, 0.00, 0.01, 0.01, 106 | 0.08, 0.25, 1, 1, -1, -2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, 0, -2, 107 | 0.00204, 0.02, 0.05, 0.00, 0.24, 0.79, 1, 1, 0, -2, 0.00214, 0.00, 0.05, 0.00, 108 | 0.26, 0.83, 1, -1, 1, -2, -0.00060, -0.01, -0.01, -0.01, -0.07, -0.23, 1, 1, 1, -2, 109 | 0.00005, 0.00, 0.00, 0.00, 0.00, 0.02, 1, -1, 2, -2, -0.00006, 0.00, 0.00, 0.00, 110 | 0.00, -0.03, 1, 1, 2, -2, -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 1, -1, -4, -1, 111 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.01, 1, -1, -3, -1, 0.00018, 0.00, 0.00, 0.01, 112 | 0.01, 0.07, 1, 1, -3, -1, -0.00004, 0.00, 0.00, 0.00, 0.00, -0.01, 1, -1, -2, -1, 113 | 0.00096, 0.00, 0.02, 0.04, 0.06, 0.37, 1, 1, -2, -1, -0.00137, -0.03, -0.03, -0.05, 114 | -0.08, -0.53, 1, -3, -1, -1, -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 1, -1, -1, 115 | -1, 0.01031, 0.07, 0.23, 0.20, 0.62, 4.01, 1, 1, -1, -1, 0.00080, 0.04, 0.03, 0.00, 116 | 0.05, 0.31, 1, -3, 0, -1, -0.00052, 0.00, -0.03, 0.00, -0.03, -0.20, 1, -1, 0, -1, 117 | -0.01346, -1.07, -0.27, 0.00, -0.82, -5.23, 1, 1, 0, -1, -0.01829, -1.52, -0.33, 118 | 0.00, -1.11, -7.11, 1, 3, 0, -1, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.02, 1, -3, 1, 119 | -1, -0.00008, 0.00, 0.00, 0.00, 0.00, -0.03, 1, -1, 1, -1, -0.02012, -0.42, -0.45, 120 | -0.38, -1.20, -7.83, 1, 1, 1, -1, -0.00845, -0.45, -0.17, -0.17, -0.51, -3.29, 1, 121 | 3, 1, -1, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, 2, -1, -0.00175, -0.04, 122 | -0.04, -0.06, -0.10, -0.68, 1, 1, 2, -1, -0.00146, -0.07, -0.03, -0.06, -0.09, 123 | -0.57, 1, -1, 3, -1, -0.00015, 0.00, 0.00, 0.00, 0.00, -0.06, 1, 1, 3, -1, 124 | -0.00018, 0.00, 0.00, -0.01, -0.01, -0.07, 1, -1, 4, -1, -0.00001, 0.00, 0.00, 125 | 0.00, 0.00, 0.00, 1, 1, 4, -1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, -5, 126 | 0, -0.00011, 0.00, 0.00, -0.01, 0.00, -0.04, 1, 1, -5, 0, -0.00004, 0.00, 0.00, 127 | 0.00, 0.00, -0.01, 1, -1, -4, 0, -0.00122, -0.04, -0.03, -0.09, 0.00, -0.47, 1, 1, 128 | -4, 0, -0.00043, 0.00, 0.00, -0.03, 0.00, -0.17, 1, -1, -3, 0, -0.01255, -0.37, 129 | -0.27, -0.69, 0.00, -4.88, 1, 1, -3, 0, -0.00537, -0.12, -0.12, -0.29, 0.00, -2.09, 130 | 1, 3, -3, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -3, -2, 0, -0.00025, 0.00, 131 | -0.02, 0.00, 0.00, -0.10, 1, -1, -2, 0, -0.10964, -3.19, -2.33, -4.03, -0.02, 132 | -42.63, 1, 1, -2, 0, -0.07846, -2.00, -1.72, -2.87, -0.03, -30.51, 1, 3, -2, 0, 133 | -0.00020, 0.00, -0.01, 0.00, 0.00, -0.08, 1, -3, -1, 0, -0.00369, -0.04, -0.25, 134 | -0.07, 0.00, -1.44, 1, -1, -1, 0, -0.42989, -13.13, -8.83, -8.15, -0.01, -167.15, 135 | 1, 1, -1, 0, 0.13928, 1.86, 3.37, 2.46, 0.04, 54.16, 1, 3, -1, 0, 0.00234, 0.05, 136 | 0.16, 0.04, 0.00, 0.91, 1, -5, 0, 0, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.01, 1, -3, 137 | 0, 0, -0.03226, -0.41, -2.15, 0.00, 0.00, -12.54, 1, -1, 0, 0, -4.80578, -102.50, 138 | -103.39, -3.12, -0.09, -1868.59, 1, 1, 0, 0, -5.36844, -119.82, -113.86, -3.16, 139 | -0.08, -2087.37, 1, 3, 0, 0, 0.00645, 0.15, 0.43, 0.02, 0.00, 2.51, 1, 5, 0, 0, 140 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -5, 1, 0, 0.00001, 0.00, 0.00, 0.00, 141 | 0.00, 0.00, 1, -3, 1, 0, -0.00019, 0.01, -0.01, 0.00, 0.00, -0.07, 1, -1, 1, 0, 142 | -0.58893, -7.87, -13.10, -10.90, 0.03, -228.99, 1, 1, 1, 0, -0.66741, -14.68, 143 | -14.15, -12.47, 0.07, -259.50, 1, 3, 1, 0, 0.00142, 0.03, 0.09, 0.03, 0.00, 0.55, 144 | 1, -1, 2, 0, -0.03636, -0.40, -0.81, -1.34, 0.00, -14.14, 1, 1, 2, 0, -0.06383, 145 | -1.35, -1.35, -2.35, 0.02, -24.82, 1, 3, 2, 0, 0.00021, 0.00, 0.01, 0.00, 0.00, 146 | 0.08, 1, -1, 3, 0, -0.00247, -0.02, -0.05, -0.14, 0.00, -0.96, 1, 1, 3, 0, 147 | -0.00553, -0.11, -0.12, -0.30, 0.00, -2.15, 1, 3, 3, 0, 0.00002, 0.00, 0.00, 0.00, 148 | 0.00, 0.00, 1, -1, 4, 0, -0.00017, 0.00, 0.00, -0.01, 0.00, -0.07, 1, 1, 4, 0, 149 | -0.00045, 0.00, 0.00, -0.03, 0.00, -0.18, 1, -1, 5, 0, -0.00001, 0.00, 0.00, 0.00, 150 | 0.00, 0.00, 1, 1, 5, 0, -0.00004, 0.00, 0.00, 0.00, 0.00, -0.01, 1, -1, -5, 1, 151 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, -4, 1, 0.00017, 0.00, 0.00, 0.01, 152 | 0.01, 0.07, 1, 1, -4, 1, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.03, 1, -1, -3, 1, 153 | 0.00186, 0.02, 0.04, 0.10, 0.11, 0.72, 1, 1, -3, 1, 0.00093, 0.00, 0.02, 0.05, 154 | 0.06, 0.36, 1, -3, -2, 1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, -2, 1, 155 | 0.01597, 0.20, 0.35, 0.59, 0.96, 6.21, 1, 1, -2, 1, 0.01680, 0.23, 0.38, 0.61, 156 | 1.01, 6.53, 1, 3, -2, 1, 0.00006, 0.00, 0.00, 0.00, 0.00, 0.03, 1, -3, -1, 1, 157 | 0.00007, 0.00, 0.00, 0.00, 0.00, 0.03, 1, -1, -1, 1, 0.00635, -0.38, 0.07, 0.20, 158 | 0.36, 2.46, 1, 1, -1, 1, -0.05590, -0.18, -1.29, -0.97, -3.36, -21.74, 1, 3, -1, 1, 159 | -0.00021, 0.00, -0.01, 0.00, -0.01, -0.08, 1, -3, 0, 1, 0.00080, 0.00, 0.05, 0.00, 160 | 0.05, 0.31, 1, -1, 0, 1, 0.80426, 0.22, 17.53, 1.11, 48.12, 312.71, 1, 1, 0, 1, 161 | 0.80263, 0.34, 17.41, 0.85, 48.02, 312.08, 1, 3, 0, 1, -0.00083, 0.00, -0.06, 0.00, 162 | -0.05, -0.32, 1, -3, 1, 1, -0.00021, 0.01, -0.01, 0.00, -0.01, -0.08, 1, -1, 1, 1, 163 | 0.03465, 0.09, 0.75, 0.71, 2.07, 13.48, 1, 1, 1, 1, 0.10176, 0.15, 2.20, 1.97, 164 | 6.09, 39.57, 1, 3, 1, 1, -0.00020, 0.00, -0.01, 0.00, -0.01, -0.08, 1, -3, 2, 1, 165 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, 2, 1, 0.00317, 0.00, 0.07, 0.12, 166 | 0.19, 1.23, 1, 1, 2, 1, 0.01016, 0.03, 0.22, 0.38, 0.61, 3.95, 1, 3, 2, 1, 167 | -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 1, -1, 3, 1, 0.00027, 0.00, 0.00, 0.02, 168 | 0.02, 0.11, 1, 1, 3, 1, 0.00093, 0.00, 0.02, 0.05, 0.06, 0.36, 1, -1, 4, 1, 169 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 1, 1, 4, 1, 0.00008, 0.00, 0.00, 0.00, 0.00, 170 | 0.03, 1, -1, -3, 2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.01, 1, 1, -3, 2, 0.00001, 171 | 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, -2, 2, 0.00017, 0.00, 0.00, 0.00, 0.02, 0.06, 172 | 1, 1, -2, 2, 0.00016, 0.00, 0.00, 0.00, 0.02, 0.06, 1, -1, -1, 2, -0.00008, 0.00, 173 | 0.00, 0.00, -0.01, -0.03, 1, 1, -1, 2, -0.00039, -0.02, 0.00, 0.00, -0.05, -0.15, 174 | 1, -1, 0, 2, -0.00170, -0.03, -0.04, 0.00, -0.20, -0.66, 1, 1, 0, 2, -0.00204, 175 | -0.03, -0.04, 0.00, -0.24, -0.79, 1, -1, 1, 2, -0.00022, 0.00, 0.00, 0.00, -0.03, 176 | -0.09, 1, 1, 1, 2, -0.00072, -0.01, -0.02, -0.01, -0.09, -0.28, 1, -1, 2, 2, 177 | -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 1, 1, 2, 2, -0.00012, 0.00, 0.00, 0.00, 178 | -0.01, -0.05, 1, 1, 3, 2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 1, -1, 0, 3, 179 | -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 1, 1, 0, 3, -0.00003, 0.00, 0.00, 0.00, 180 | 0.00, -0.01, 2, -1, -1, -5, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, -1, -5, 181 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 0, -5, 0.00004, 0.00, 0.00, 0.00, 182 | 0.01, 0.00, 2, 1, 0, -5, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -2, -4, 183 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -1, -4, 0.00031, 0.00, 0.00, 0.00, 184 | 0.07, 0.00, 2, 1, -1, -4, 0.00034, 0.00, 0.00, 0.00, 0.08, 0.00, 2, -1, 0, -4, 185 | 0.00118, 0.03, 0.03, 0.00, 0.28, 0.00, 2, 1, 0, -4, 0.00062, 0.03, 0.01, 0.00, 186 | 0.15, 0.00, 2, -1, 1, -4, 0.00008, 0.00, 0.00, 0.00, 0.02, 0.00, 2, 1, 1, -4, 187 | 0.00010, 0.00, 0.00, 0.00, 0.02, 0.00, 2, 1, 2, -4, 0.00001, 0.00, 0.00, 0.00, 188 | 0.00, 0.00, 2, -1, -3, -3, 0.00006, 0.00, 0.00, 0.00, 0.01, 0.00, 2, -1, -2, -3, 189 | 0.00077, 0.02, 0.02, 0.03, 0.14, 0.00, 2, 1, -2, -3, -0.00005, 0.00, 0.00, 0.00, 190 | 0.00, 0.00, 2, -1, -1, -3, 0.00914, 0.25, 0.20, 0.17, 1.64, 0.00, 2, 1, -1, -3, 191 | 0.01042, 0.25, 0.23, 0.19, 1.87, 0.00, 2, 3, -1, -3, -0.00002, 0.00, 0.00, 0.00, 192 | 0.00, 0.00, 2, -3, 0, -3, 0.00008, 0.00, 0.00, 0.00, 0.01, 0.00, 2, -1, 0, -3, 193 | 0.03647, 0.91, 0.81, 0.02, 6.54, 0.00, 2, 1, 0, -3, 0.01603, 0.62, 0.35, 0.06, 194 | 2.88, 0.00, 2, 3, 0, -3, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 1, -3, 195 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 1, -3, 0.00240, 0.07, 0.05, 0.05, 196 | 0.43, 0.00, 2, 1, 1, -3, 0.00256, 0.11, 0.06, 0.05, 0.46, 0.00, 2, -1, 2, -3, 197 | 0.00021, 0.00, 0.00, 0.00, 0.04, 0.00, 2, 1, 2, -3, 0.00031, 0.01, 0.00, 0.01, 198 | 0.06, 0.00, 2, -1, 3, -3, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 3, -3, 199 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -4, -2, 0.00012, 0.00, 0.00, 0.00, 200 | 0.02, 0.00, 2, 1, -4, -2, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -3, -2, 201 | 0.00178, 0.03, 0.04, 0.10, 0.21, 0.00, 2, 1, -3, -2, 0.00030, 0.00, 0.00, 0.02, 202 | 0.04, 0.00, 2, -1, -2, -2, 0.02285, 0.53, 0.51, 0.83, 2.73, 0.00, 2, 1, -2, -2, 203 | -0.00192, 0.00, -0.04, -0.07, -0.23, 0.00, 2, 3, -2, -2, -0.00009, 0.00, 0.00, 204 | 0.00, -0.01, 0.00, 2, -3, -1, -2, 0.00024, 0.00, 0.02, 0.00, 0.03, 0.00, 2, -1, -1, 205 | -2, 0.26865, 6.32, 5.97, 4.91, 32.14, 0.00, 2, 1, -1, -2, 0.31474, 6.78, 6.97, 206 | 5.75, 37.65, 0.00, 2, 3, -1, -2, -0.00045, 0.00, -0.03, 0.00, -0.05, 0.00, 2, -3, 207 | 0, -2, 0.00273, 0.03, 0.18, 0.00, 0.33, 0.00, 2, -1, 0, -2, 1.08587, 23.51, 24.25, 208 | 0.47, 129.87, 0.00, 2, 1, 0, -2, 0.38353, 13.48, 8.45, 1.72, 45.87, 0.00, 2, 3, 0, 209 | -2, -0.00044, -0.01, -0.03, 0.00, -0.05, 0.00, 2, -3, 1, -2, -0.00072, -0.02, 210 | -0.05, -0.01, -0.09, 0.00, 2, -1, 1, -2, 0.06915, 1.69, 1.51, 1.31, 8.27, 0.00, 2, 211 | 1, 1, -2, 0.05848, 2.24, 1.28, 1.26, 6.99, 0.00, 2, 3, 1, -2, -0.00011, 0.00, 0.00, 212 | 0.00, -0.01, 0.00, 2, -3, 2, -2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 2, 213 | -2, 0.00555, 0.16, 0.12, 0.21, 0.66, 0.00, 2, 1, 2, -2, 0.00677, 0.27, 0.15, 0.27, 214 | 0.81, 0.00, 2, 3, 2, -2, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 3, -2, 215 | 0.00046, 0.01, 0.00, 0.03, 0.06, 0.00, 2, 1, 3, -2, 0.00070, 0.03, 0.02, 0.04, 216 | 0.08, 0.00, 2, -1, 4, -2, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 4, -2, 217 | 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -6, -1, 0.00002, 0.00, 0.00, 0.00, 218 | 0.00, 0.00, 2, -1, -5, -1, 0.00029, 0.00, 0.00, 0.03, 0.02, 0.00, 2, 1, -5, -1, 219 | 0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -4, -1, 0.00416, 0.06, 0.09, 0.30, 220 | 0.25, 0.00, 2, 1, -4, -1, 0.00080, 0.00, 0.02, 0.06, 0.05, 0.00, 2, -3, -3, -1, 221 | -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -3, -1, 0.05502, 0.99, 1.23, 3.01, 222 | 3.29, 0.00, 2, 1, -3, -1, 0.00935, 0.12, 0.21, 0.51, 0.56, 0.00, 2, 3, -3, -1, 223 | 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, -2, -1, 0.00033, -0.01, 0.02, 0.01, 224 | 0.02, 0.00, 2, -1, -2, -1, 0.65025, 13.75, 14.46, 23.70, 38.91, 0.00, 2, 1, -2, -1, 225 | -0.06208, -0.48, -1.40, -2.27, -3.71, 0.00, 2, 3, -2, -1, -0.00267, -0.03, -0.18, 226 | -0.10, -0.16, 0.00, 2, -5, -1, -1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 227 | -1, -1, 0.01034, 0.06, 0.69, 0.17, 0.62, 0.00, 2, -1, -1, -1, 7.43488, 154.99, 228 | 165.14, 135.90, 444.61, -0.02, 2, 1, -1, -1, 8.86853, 174.25, 196.33, 161.68, 229 | 530.29, -0.01, 2, 3, -1, -1, -0.01177, -0.23, -0.79, -0.24, -0.70, 0.00, 2, 5, -1, 230 | -1, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -5, 0, -1, -0.00009, 0.00, 0.00, 231 | 0.00, 0.00, 0.00, 2, -3, 0, -1, 0.08815, 0.98, 5.90, -0.13, 5.27, 0.00, 2, -1, 0, 232 | -1, 29.57794, 553.39, 661.64, 12.43, 1767.42, 0.16, 2, 1, 0, -1, 7.95891, 253.11, 233 | 175.21, 44.35, 475.60, 0.00, 2, 3, 0, -1, -0.00944, -0.28, -0.63, -0.11, -0.56, 234 | 0.00, 2, 5, 0, -1, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -5, 1, -1, -0.00003, 235 | 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 1, -1, -0.01669, -0.30, -1.12, -0.31, -1.00, 236 | 0.00, 2, -1, 1, -1, 1.76606, 35.98, 38.73, 33.43, 105.50, 0.02, 2, 1, 1, -1, 237 | 1.13466, 38.36, 24.88, 25.43, 67.78, 0.00, 2, 3, 1, -1, -0.00224, -0.07, -0.15, 238 | -0.06, -0.13, 0.00, 2, -3, 2, -1, -0.00061, -0.01, -0.04, -0.02, -0.04, 0.00, 2, 239 | -1, 2, -1, 0.12897, 2.89, 2.78, 4.82, 7.70, 0.00, 2, 1, 2, -1, 0.12387, 4.35, 2.71, 240 | 4.97, 7.40, 0.00, 2, 3, 2, -1, -0.00036, -0.01, -0.02, -0.02, -0.02, 0.00, 2, -3, 241 | 3, -1, -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 3, -1, 0.00985, 0.24, 0.21, 242 | 0.55, 0.59, 0.00, 2, 1, 3, -1, 0.01211, 0.44, 0.26, 0.70, 0.72, 0.00, 2, 3, 3, -1, 243 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 4, -1, 0.00076, 0.02, 0.02, 0.06, 244 | 0.05, 0.00, 2, 1, 4, -1, 0.00111, 0.04, 0.02, 0.08, 0.07, 0.00, 2, -1, 5, -1, 245 | 0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 5, -1, 0.00010, 0.00, 0.00, 0.00, 246 | 0.00, 0.00, 2, -1, -7, 0, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, -7, 0, 247 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -6, 0, 0.00092, 0.02, 0.02, 0.10, 248 | 0.00, 0.00, 2, 1, -6, 0, 0.00020, 0.00, 0.00, 0.02, 0.00, 0.00, 2, -3, -5, 0, 249 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -5, 0, 0.01127, 0.23, 0.25, 1.03, 250 | 0.00, 0.00, 2, 1, -5, 0, 0.00230, 0.03, 0.05, 0.21, 0.00, 0.00, 2, -3, -4, 0, 251 | -0.00014, 0.00, 0.00, -0.01, 0.00, 0.00, 2, -1, -4, 0, 0.13381, 2.77, 2.96, 9.75, 252 | 0.00, 0.00, 2, 1, -4, 0, 0.02496, 0.39, 0.56, 1.82, 0.00, 0.00, 2, 3, -4, 0, 253 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, -3, 0, 0.00023, -0.02, 0.01, 0.00, 254 | 0.00, 0.00, 2, -1, -3, 0, 1.51564, 31.76, 33.59, 82.84, 0.07, 0.00, 2, 1, -3, 0, 255 | 0.25408, 3.88, 5.75, 13.92, 0.00, 0.01, 2, 3, -3, 0, 0.00232, 0.05, 0.16, 0.13, 256 | 0.00, 0.00, 2, 5, -3, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -5, -2, 0, 257 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, -2, 0, 0.02045, 0.10, 1.37, 0.70, 258 | 0.00, 0.00, 2, -1, -2, 0, 15.56635, 330.35, 344.99, 567.47, 0.23, 0.03, 2, 1, -2, 259 | 0, -1.62443, -20.88, -36.38, -59.20, 0.18, -0.02, 2, 3, -2, 0, -0.06561, -0.77, 260 | -4.41, -2.38, 0.00, 0.00, 2, 5, -2, 0, 0.00012, 0.00, 0.01, 0.00, 0.00, 0.00, 2, 261 | -5, -1, 0, -0.00046, 0.00, -0.05, 0.00, 0.00, 0.00, 2, -3, -1, 0, 0.32907, 3.62, 262 | 22.03, 5.64, -0.02, 0.01, 2, -1, -1, 0, 166.57528, 3219.29, 3695.90, 3042.80, 263 | -5.99, 0.39, 2, 1, -1, 0, 199.48515, 3726.28, 4413.25, 3627.39, -8.68, 0.73, 2, 3, 264 | -1, 0, -0.24484, -4.55, -16.39, -4.94, 0.02, 0.00, 2, 5, -1, 0, 0.00038, 0.00, 265 | 0.04, 0.00, 0.00, 0.00, 2, -5, 0, 0, -0.00221, -0.02, -0.25, 0.00, 0.00, 0.00, 2, 266 | -3, 0, 0, 2.18637, 23.85, 146.45, -2.38, -0.27, 0.03, 2, -1, 0, 0, 623.65783, 267 | 9963.62, 13978.19, 245.16, -70.26, 5.00, 2, 1, 0, 0, 117.26161, 3313.25, 2575.66, 268 | 874.52, -12.65, 1.79, 2, 3, 0, 0, -0.14453, -3.71, -9.64, -2.05, 0.02, 0.00, 2, 5, 269 | 0, 0, 0.00026, 0.00, 0.03, 0.00, 0.00, 0.00, 2, -5, 1, 0, -0.00075, 0.00, -0.08, 270 | -0.01, 0.00, 0.00, 2, -3, 1, 0, -0.29116, -3.49, -19.63, -5.36, 0.05, 0.00, 2, -1, 271 | 1, 0, 33.35743, 512.77, 735.76, 630.31, -5.21, 0.43, 2, 1, 1, 0, 15.12165, 433.44, 272 | 331.25, 359.20, -2.40, 0.31, 2, 3, 1, 0, -0.03038, -0.82, -2.02, -0.85, 0.00, 0.00, 273 | 2, 5, 1, 0, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -5, 2, 0, 0.00008, 0.00, 274 | 0.00, 0.00, 0.00, 0.00, 2, -3, 2, 0, -0.00995, -0.12, -0.68, -0.36, 0.00, 0.00, 2, 275 | -1, 2, 0, 2.14618, 33.22, 46.62, 80.12, -0.45, 0.04, 2, 1, 2, 0, 1.51976, 43.48, 276 | 33.21, 62.71, -0.33, 0.04, 2, 3, 2, 0, -0.00451, -0.12, -0.30, -0.20, 0.00, 0.00, 277 | 2, 5, 2, 0, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 3, 0, -0.00093, 0.00, 278 | -0.06, -0.05, 0.00, 0.00, 2, -1, 3, 0, 0.14642, 2.28, 3.13, 8.16, -0.04, 0.00, 2, 279 | 1, 3, 0, 0.13795, 3.92, 3.01, 8.15, -0.04, 0.00, 2, 3, 3, 0, -0.00056, -0.02, 280 | -0.04, -0.03, 0.00, 0.00, 2, -3, 4, 0, -0.00008, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 281 | -1, 4, 0, 0.01027, 0.16, 0.22, 0.76, 0.00, 0.00, 2, 1, 4, 0, 0.01186, 0.33, 0.26, 282 | 0.91, 0.00, 0.00, 2, 3, 4, 0, -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 5, 0, 283 | 0.00073, 0.01, 0.02, 0.07, 0.00, 0.00, 2, 1, 5, 0, 0.00099, 0.03, 0.02, 0.09, 0.00, 284 | 0.00, 2, -1, 6, 0, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 6, 0, 0.00008, 285 | 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -6, 1, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 286 | 2, -1, -5, 1, 0.00028, 0.02, 0.00, 0.03, 0.02, 0.00, 2, 1, -5, 1, 0.00005, 0.00, 287 | 0.00, 0.00, 0.00, 0.00, 2, -1, -4, 1, 0.00247, 0.19, 0.05, 0.18, 0.15, 0.00, 2, 1, 288 | -4, 1, 0.00034, 0.03, 0.00, 0.03, 0.02, 0.00, 2, -3, -3, 1, -0.00002, 0.00, 0.00, 289 | 0.00, 0.00, 0.00, 2, -1, -3, 1, 0.01818, 1.67, 0.38, 0.99, 1.10, 0.00, 2, 1, -3, 1, 290 | 0.00162, 0.17, 0.03, 0.09, 0.10, 0.00, 2, -3, -2, 1, -0.00015, 0.00, 0.00, 0.00, 291 | 0.00, 0.00, 2, -1, -2, 1, 0.07913, 12.08, 1.57, 2.84, 4.80, 0.00, 2, 1, -2, 1, 292 | 0.05429, 3.18, 1.16, 1.97, 3.26, 0.00, 2, 3, -2, 1, 0.00017, -0.03, 0.01, 0.00, 293 | 0.00, 0.00, 2, -3, -1, 1, -0.00342, 0.05, -0.23, -0.06, -0.20, 0.00, 2, -1, -1, 1, 294 | -0.79105, 41.53, -18.40, -14.91, -47.09, -0.01, 2, 1, -1, 1, -1.31788, 39.71, 295 | -29.98, -24.58, -78.59, 0.00, 2, 3, -1, 1, 0.00192, -0.03, 0.13, 0.04, 0.11, 0.00, 296 | 2, -5, 0, 1, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 0, 1, -0.05457, -0.95, 297 | -3.65, 0.01, -3.27, 0.00, 2, -1, 0, 1, -12.09470, -205.76, -271.06, -3.14, -723.84, 298 | -0.31, 2, 1, 0, 1, -1.26433, -30.65, -27.38, -10.59, -75.65, -0.41, 2, 3, 0, 1, 299 | 0.00177, 0.04, 0.12, 0.03, 0.11, 0.00, 2, -5, 1, 1, 0.00002, 0.00, 0.00, 0.00, 300 | 0.00, 0.00, 2, -3, 1, 1, 0.00465, 0.02, 0.31, 0.09, 0.28, 0.00, 2, -1, 1, 1, 301 | -0.82275, -17.02, -18.20, -15.41, -49.25, -0.04, 2, 1, 1, 1, -0.23702, -7.85, 302 | -5.10, -5.79, -14.19, -0.08, 2, 3, 1, 1, 0.00052, 0.02, 0.03, 0.02, 0.03, 0.00, 2, 303 | -3, 2, 1, 0.00021, 0.00, 0.01, 0.00, 0.01, 0.00, 2, -1, 2, 1, -0.06283, -1.47, 304 | -1.37, -2.34, -3.76, 0.00, 2, 1, 2, 1, -0.03142, -1.17, -0.67, -1.31, -1.88, -0.01, 305 | 2, 3, 2, 1, 0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 3, 1, 0.00002, 0.00, 306 | 0.00, 0.00, 0.00, 0.00, 2, -1, 3, 1, -0.00496, -0.13, -0.11, -0.28, -0.30, 0.00, 2, 307 | 1, 3, 1, -0.00355, -0.14, -0.08, -0.21, -0.21, 0.00, 2, 3, 3, 1, 0.00002, 0.00, 308 | 0.00, 0.00, 0.00, 0.00, 2, -1, 4, 1, -0.00040, -0.01, 0.00, -0.03, -0.02, 0.00, 2, 309 | 1, 4, 1, -0.00037, -0.02, 0.00, -0.03, -0.02, 0.00, 2, -1, 5, 1, -0.00003, 0.00, 310 | 0.00, 0.00, 0.00, 0.00, 2, 1, 5, 1, -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 311 | -4, 2, -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, -4, 2, -0.00001, 0.00, 0.00, 312 | 0.00, 0.00, 0.00, 2, -1, -3, 2, -0.00102, -0.03, -0.02, -0.06, -0.12, 0.00, 2, 1, 313 | -3, 2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, -2, 2, -0.00004, 0.00, 0.00, 314 | 0.00, 0.00, 0.00, 2, -1, -2, 2, -0.01262, -0.47, -0.28, -0.46, -1.51, 0.00, 2, 1, 315 | -2, 2, -0.00504, -0.27, -0.11, -0.19, -0.60, 0.00, 2, 3, -2, 2, 0.00004, 0.00, 316 | 0.00, 0.00, 0.00, 0.00, 2, -3, -1, 2, -0.00046, -0.02, -0.03, 0.00, -0.06, 0.00, 2, 317 | -1, -1, 2, -0.10535, -3.66, -2.34, -1.91, -12.62, 0.00, 2, 1, -1, 2, -0.11330, 318 | -3.82, -2.50, -2.08, -13.58, 0.00, 2, 3, -1, 2, 0.00012, 0.00, 0.00, 0.00, 0.01, 319 | 0.00, 2, -3, 0, 2, -0.00103, -0.02, -0.06, 0.02, -0.12, 0.00, 2, -1, 0, 2, 320 | -0.13415, -2.41, -3.04, -0.26, -16.07, 0.00, 2, 1, 0, 2, -0.01482, -0.52, -0.32, 321 | -0.53, -1.78, 0.03, 2, 3, 0, 2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -3, 1, 2, 322 | -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 1, 2, -0.00617, -0.08, -0.14, -0.13, 323 | -0.74, 0.00, 2, 1, 1, 2, -0.00145, -0.05, -0.03, -0.08, -0.17, 0.00, 2, -1, 2, 2, 324 | -0.00025, 0.00, 0.00, -0.01, -0.03, 0.00, 2, 1, 2, 2, -0.00009, 0.00, 0.00, 0.00, 325 | -0.01, 0.00, 2, -1, -2, 3, -0.00006, 0.00, 0.00, 0.00, -0.01, 0.00, 2, 1, -2, 3, 326 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, -1, 3, -0.00009, 0.00, 0.00, 0.00, 327 | -0.02, 0.00, 2, 1, -1, 3, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 2, -1, 0, 3, 328 | 0.00037, 0.01, 0.00, 0.00, 0.07, 0.00, 2, 1, 0, 3, 0.00004, 0.00, 0.00, 0.00, 0.00, 329 | 0.00, 2, -1, 1, 3, 0.00006, 0.00, 0.00, 0.00, 0.01, 0.00, 3, -1, -1, -3, -0.00004, 330 | 0.00, 0.00, 0.00, 0.00, -0.02, 3, 1, -1, -3, -0.00003, 0.00, 0.00, 0.00, 0.00, 331 | -0.01, 3, -1, 0, -3, -0.00006, 0.00, 0.00, 0.00, 0.00, -0.02, 3, -1, -3, -2, 332 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, -2, -2, -0.00014, 0.00, 0.00, 0.00, 333 | -0.02, -0.06, 3, 1, -2, -2, -0.00016, 0.00, 0.00, 0.00, -0.02, -0.06, 3, -1, -1, 334 | -2, -0.00101, -0.03, -0.02, -0.02, -0.12, -0.39, 3, 1, -1, -2, -0.00063, -0.03, 335 | -0.01, -0.01, -0.08, -0.25, 3, -3, 0, -2, -0.00004, 0.00, 0.00, 0.00, 0.00, -0.02, 336 | 3, -1, 0, -2, -0.00131, -0.05, -0.03, 0.00, -0.16, -0.51, 3, 1, 0, -2, 0.00008, 337 | 0.00, 0.00, 0.00, 0.00, 0.03, 3, -1, 1, -2, -0.00014, 0.00, 0.00, 0.00, -0.02, 338 | -0.06, 3, -1, 2, -2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, -4, -1, 339 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, -3, -1, -0.00022, 0.00, 0.00, -0.01, 340 | -0.01, -0.08, 3, -1, -2, -1, -0.00282, -0.07, -0.06, -0.10, -0.17, -1.10, 3, 1, -2, 341 | -1, -0.00329, -0.07, -0.07, -0.12, -0.20, -1.28, 3, -3, -1, -1, -0.00009, 0.00, 342 | 0.00, 0.00, 0.00, -0.04, 3, -1, -1, -1, -0.02104, -0.53, -0.47, -0.39, -1.26, 343 | -8.18, 3, 1, -1, -1, -0.01356, -0.55, -0.29, -0.27, -0.81, -5.27, 3, 3, -1, -1, 344 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -3, 0, -1, -0.00076, -0.01, -0.05, 0.00, 345 | -0.05, -0.30, 3, -1, 0, -1, -0.02572, -0.94, -0.60, -0.07, -1.53, -10.00, 3, 1, 0, 346 | -1, -0.00042, -0.19, 0.00, -0.10, -0.02, -0.16, 3, 3, 0, -1, 0.00001, 0.00, 0.00, 347 | 0.00, 0.00, 0.00, 3, -1, 1, -1, -0.00275, -0.11, -0.06, -0.06, -0.16, -1.07, 3, 1, 348 | 1, -1, -0.00030, -0.05, 0.00, -0.02, -0.02, -0.12, 3, -1, 2, -1, -0.00027, -0.01, 349 | 0.00, -0.01, -0.02, -0.10, 3, 1, 2, -1, -0.00007, 0.00, 0.00, 0.00, 0.00, -0.03, 3, 350 | -1, 3, -1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 1, 3, -1, -0.00001, 0.00, 351 | 0.00, 0.00, 0.00, 0.00, 3, -1, -4, 0, -0.00016, 0.00, 0.00, -0.01, 0.00, -0.06, 3, 352 | 1, -4, 0, -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 3, -1, -3, 0, -0.00287, -0.04, 353 | -0.06, -0.16, 0.00, -1.12, 3, 1, -3, 0, 0.00015, 0.00, 0.00, 0.00, 0.00, 0.06, 3, 354 | 3, -3, 0, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -3, -2, 0, -0.00008, 0.00, 355 | 0.00, 0.00, 0.00, -0.03, 3, -1, -2, 0, -0.03941, -0.88, -0.87, -1.44, 0.00, -15.32, 356 | 3, 1, -2, 0, -0.04852, -1.04, -1.06, -1.77, 0.00, -18.87, 3, 3, -2, 0, 0.00016, 357 | 0.00, 0.01, 0.00, 0.00, 0.06, 3, -3, -1, 0, -0.00128, -0.01, -0.09, -0.02, 0.00, 358 | -0.50, 3, -1, -1, 0, -0.30517, -7.43, -6.74, -5.66, 0.08, -118.66, 3, 1, -1, 0, 359 | -0.20593, -7.88, -4.39, -4.05, 0.12, -80.07, 3, 3, -1, 0, 0.00038, 0.02, 0.02, 360 | 0.00, 0.00, 0.15, 3, -3, 0, 0, -0.01009, -0.13, -0.68, 0.00, 0.00, -3.92, 3, -1, 0, 361 | 0, -0.35183, -11.87, -8.15, -0.99, 0.22, -136.80, 3, 1, 0, 0, -0.02840, -2.77, 362 | -0.49, -1.37, 0.10, -11.04, 3, 3, 0, 0, 0.00016, 0.00, 0.01, 0.00, 0.00, 0.06, 3, 363 | -3, 1, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, 1, 0, -0.03611, -1.26, 364 | -0.83, -0.75, 0.03, -14.04, 3, 1, 1, 0, -0.00658, -0.56, -0.12, -0.29, 0.02, -2.56, 365 | 3, 3, 1, 0, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.02, 3, -1, 2, 0, -0.00322, -0.12, 366 | -0.07, -0.13, 0.00, -1.25, 3, 1, 2, 0, -0.00108, -0.08, -0.02, -0.06, 0.00, -0.42, 367 | 3, -1, 3, 0, -0.00027, -0.01, 0.00, -0.02, 0.00, -0.11, 3, 1, 3, 0, -0.00014, 0.00, 368 | 0.00, 0.00, 0.00, -0.05, 3, -1, 4, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, 1, 369 | 4, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, -4, 1, -0.00007, 0.00, 0.00, 370 | 0.00, 0.00, -0.03, 3, 1, -4, 1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, -3, 371 | 1, -0.00044, -0.02, 0.00, -0.02, -0.03, -0.17, 3, 1, -3, 1, 0.00004, 0.00, 0.00, 372 | 0.00, 0.00, 0.01, 3, -1, -2, 1, -0.00152, -0.09, -0.03, -0.06, -0.09, -0.59, 3, 1, 373 | -2, 1, -0.00261, -0.12, -0.06, -0.09, -0.16, -1.02, 3, -3, -1, 1, 0.00003, 0.00, 374 | 0.00, 0.00, 0.00, 0.01, 3, -1, -1, 1, 0.01321, 0.23, 0.29, 0.25, 0.79, 5.14, 3, 1, 375 | -1, 1, 0.02083, 0.37, 0.45, 0.39, 1.24, 8.10, 3, 3, -1, 1, -0.00005, 0.00, 0.00, 376 | 0.00, 0.00, -0.02, 3, -3, 0, 1, 0.00031, 0.00, 0.02, 0.00, 0.02, 0.12, 3, -1, 0, 1, 377 | 0.03436, 0.68, 0.77, 0.09, 2.05, 13.36, 3, 1, 0, 1, 0.01351, 0.39, 0.29, 0.17, 378 | 0.81, 5.25, 3, 3, 0, 1, -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 3, -1, 1, 1, 379 | 0.00426, 0.09, 0.09, 0.09, 0.25, 1.66, 3, 1, 1, 1, 0.00258, 0.08, 0.05, 0.07, 0.15, 380 | 1.00, 3, -1, 2, 1, 0.00044, 0.00, 0.00, 0.02, 0.03, 0.17, 3, 1, 2, 1, 0.00035, 381 | 0.01, 0.00, 0.02, 0.02, 0.14, 3, -1, 3, 1, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.02, 382 | 3, 1, 3, 1, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.02, 3, -1, -2, 2, -0.00002, 0.00, 383 | 0.00, 0.00, 0.00, 0.00, 3, 1, -2, 2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -1, 384 | -1, 2, -0.00005, 0.00, 0.00, 0.00, 0.00, -0.02, 3, 1, -1, 2, -0.00010, 0.00, 0.00, 385 | 0.00, -0.01, -0.04, 3, -1, 0, 2, -0.00056, 0.00, -0.01, 0.00, -0.07, -0.22, 3, 1, 386 | 0, 2, -0.00016, 0.00, 0.00, 0.00, -0.02, -0.06, 3, -1, 1, 2, -0.00009, 0.00, 0.00, 387 | 0.00, -0.01, -0.03, 3, 1, 1, 2, -0.00004, 0.00, 0.00, 0.00, 0.00, -0.02, 3, -1, 2, 388 | 2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 3, -3, -1, 3, 0.00001, 0.00, 0.00, 389 | -0.02, -0.01, 0.03, 3, -1, -1, 3, 0.00000, -0.01, 0.00, -0.01, -0.02, 0.01, 3, 1, 390 | -1, 3, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, -2, -4, 0.00003, 0.00, 0.00, 391 | 0.00, 0.00, 0.00, 4, -1, -1, -4, 0.00007, 0.00, 0.00, 0.00, 0.02, 0.00, 4, 1, -1, 392 | -4, 0.00007, 0.00, 0.00, 0.00, 0.02, 0.00, 4, -1, 0, -4, 0.00008, 0.00, 0.00, 0.00, 393 | 0.02, 0.00, 4, 1, 0, -4, 0.00004, 0.00, 0.00, 0.00, 0.01, 0.00, 4, -1, 1, -4, 394 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -2, -3, 0.00013, 0.00, 0.00, 0.00, 395 | 0.02, 0.00, 4, 1, -2, -3, 0.00059, 0.03, 0.01, 0.02, 0.11, 0.00, 4, -1, -1, -3, 396 | 0.00165, 0.07, 0.04, 0.03, 0.30, 0.00, 4, 1, -1, -3, 0.00134, 0.07, 0.03, 0.03, 397 | 0.24, 0.00, 4, -3, 0, -3, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 0, -3, 398 | 0.00161, 0.08, 0.04, 0.00, 0.29, 0.00, 4, 1, 0, -3, 0.00080, 0.05, 0.02, 0.01, 399 | 0.14, 0.00, 4, -1, 1, -3, 0.00024, 0.01, 0.00, 0.00, 0.04, 0.00, 4, 1, 1, -3, 400 | 0.00017, 0.01, 0.00, 0.00, 0.03, 0.00, 4, -1, 2, -3, 0.00003, 0.00, 0.00, 0.00, 401 | 0.00, 0.00, 4, 1, 2, -3, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -4, -2, 402 | -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -3, -2, -0.00006, 0.00, 0.00, 0.00, 403 | 0.00, 0.00, 4, 1, -3, -2, 0.00011, 0.00, 0.00, 0.00, 0.01, 0.00, 4, -3, -2, -2, 404 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -2, -2, 0.00283, 0.11, 0.06, 0.10, 405 | 0.34, 0.00, 4, 1, -2, -2, 0.01230, 0.50, 0.27, 0.45, 1.47, 0.00, 4, 3, -2, -2, 406 | -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, -1, -2, -0.00005, 0.00, 0.00, 0.00, 407 | 0.00, 0.00, 4, -1, -1, -2, 0.03462, 1.29, 0.77, 0.65, 4.14, 0.00, 4, 1, -1, -2, 408 | 0.02380, 1.25, 0.52, 0.53, 2.85, 0.00, 4, 3, -1, -2, -0.00005, 0.00, 0.00, 0.00, 409 | 0.00, 0.00, 4, -3, 0, -2, 0.00029, 0.00, 0.02, 0.00, 0.04, 0.00, 4, -1, 0, -2, 410 | 0.02899, 1.41, 0.65, 0.18, 3.46, 0.00, 4, 1, 0, -2, 0.01270, 0.79, 0.27, 0.20, 411 | 1.52, 0.00, 4, 3, 0, -2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, 1, -2, 412 | -0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 1, -2, 0.00417, 0.21, 0.09, 0.10, 413 | 0.50, 0.00, 4, 1, 1, -2, 0.00255, 0.17, 0.06, 0.08, 0.30, 0.00, 4, -1, 2, -2, 414 | 0.00047, 0.03, 0.01, 0.02, 0.06, 0.00, 4, 1, 2, -2, 0.00037, 0.03, 0.00, 0.02, 415 | 0.04, 0.00, 4, -1, 3, -2, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, 3, -2, 416 | 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -6, -1, -0.00001, 0.00, 0.00, 0.00, 417 | 0.00, 0.00, 4, -1, -5, -1, -0.00009, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -4, -1, 418 | -0.00058, -0.02, -0.01, -0.04, -0.03, 0.00, 4, 1, -4, -1, 0.00002, 0.00, 0.00, 419 | 0.00, 0.00, 0.00, 4, -3, -3, -1, -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -3, 420 | -1, -0.00090, -0.03, -0.02, -0.05, -0.05, 0.00, 4, 1, -3, -1, 0.00191, 0.12, 0.04, 421 | 0.10, 0.11, 0.00, 4, 3, -3, -1, -0.00011, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, -2, 422 | -1, -0.00033, -0.01, -0.02, -0.01, -0.02, 0.00, 4, -1, -2, -1, 0.05251, 1.99, 1.16, 423 | 1.92, 3.14, 0.00}; 424 | System.arraycopy(data, 0, PARAMS, offset, data.length); 425 | } 426 | 427 | private static void setParams1() { 428 | final int offset = 1 * EACH_ITEMS; 429 | Number[] data = {4, 1, -2, -1, 0.21376, 8.24, 4.68, 7.80, 12.77, 0.00, 4, 3, -2, -1, 430 | -0.00060, -0.02, -0.04, -0.02, -0.04, 0.00, 4, -3, -1, -1, -0.00065, -0.04, -0.04, 431 | -0.01, -0.04, 0.00, 4, -1, -1, -1, 0.59580, 21.19, 13.27, 11.16, 35.53, 0.02, 4, 1, 432 | -1, -1, 0.33882, 16.92, 7.36, 7.74, 20.21, 0.00, 4, 3, -1, -1, -0.00075, -0.04, 433 | -0.05, -0.02, -0.04, 0.00, 4, -5, 0, -1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 434 | -3, 0, -1, 0.00534, 0.13, 0.36, 0.00, 0.32, 0.00, 4, -1, 0, -1, 0.41496, 19.00, 435 | 9.23, 2.87, 24.71, 0.00, 4, 1, 0, -1, 0.15791, 9.24, 3.41, 2.73, 9.41, 0.00, 4, 3, 436 | 0, -1, -0.00037, -0.02, -0.02, 0.00, -0.02, 0.00, 4, -3, 1, -1, -0.00062, -0.02, 437 | -0.04, -0.01, -0.04, 0.00, 4, -1, 1, -1, 0.05686, 2.69, 1.24, 1.35, 3.38, 0.00, 4, 438 | 1, 1, -1, 0.03009, 1.83, 0.65, 0.93, 1.79, 0.00, 4, 3, 1, -1, -0.00009, 0.00, 0.00, 439 | 0.00, 0.00, 0.00, 4, -3, 2, -1, -0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 2, 440 | -1, 0.00614, 0.30, 0.13, 0.25, 0.37, 0.00, 4, 1, 2, -1, 0.00421, 0.26, 0.09, 0.20, 441 | 0.25, 0.00, 4, 3, 2, -1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, 3, -1, 442 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 3, -1, 0.00060, 0.03, 0.01, 0.04, 443 | 0.04, 0.00, 4, 1, 3, -1, 0.00050, 0.03, 0.01, 0.03, 0.03, 0.00, 4, -1, 4, -1, 444 | 0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, 4, -1, 0.00005, 0.00, 0.00, 0.00, 445 | 0.00, 0.00, 4, -1, -7, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -6, 0, 446 | -0.00015, 0.00, 0.00, -0.02, 0.00, 0.00, 4, 1, -6, 0, -0.00001, 0.00, 0.00, 0.00, 447 | 0.00, 0.00, 4, -1, -5, 0, -0.00116, -0.05, -0.03, -0.11, 0.00, 0.00, 4, -3, -4, 0, 448 | -0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -4, 0, -0.00680, -0.28, -0.15, 449 | -0.50, 0.00, 0.00, 4, 1, -4, 0, 0.00029, 0.00, 0.00, 0.02, 0.00, 0.00, 4, 3, -4, 0, 450 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, -3, 0, -0.00066, -0.02, -0.04, -0.04, 451 | 0.00, 0.00, 4, -1, -3, 0, -0.00771, -0.29, -0.17, -0.42, 0.00, 0.00, 4, 1, -3, 0, 452 | 0.02174, 1.30, 0.47, 1.19, 0.02, 0.00, 4, 3, -3, 0, -0.00127, -0.04, -0.09, -0.07, 453 | 0.00, 0.00, 4, -3, -2, 0, -0.00390, -0.14, -0.26, -0.14, 0.00, 0.00, 4, -1, -2, 0, 454 | 0.63371, 23.67, 13.99, 23.16, -0.03, 0.08, 4, 1, -2, 0, 2.41389, 90.53, 52.84, 455 | 87.95, -0.35, 0.07, 4, 3, -2, 0, -0.00632, -0.24, -0.42, -0.24, 0.00, 0.00, 4, 5, 456 | -2, 0, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -5, -1, 0, -0.00004, 0.00, 0.00, 457 | 0.00, 0.00, 0.00, 4, -3, -1, 0, -0.00554, -0.34, -0.37, -0.10, 0.00, 0.00, 4, -1, 458 | -1, 0, 6.57962, 223.57, 146.75, 123.07, -1.94, 0.26, 4, 1, -1, 0, 2.99850, 142.57, 459 | 65.02, 71.12, -0.78, 0.06, 4, 3, -1, 0, -0.00664, -0.31, -0.44, -0.19, 0.00, 0.00, 460 | 4, 5, -1, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -5, 0, 0, -0.00013, 0.00, 461 | -0.01, 0.00, 0.00, 0.00, 4, -3, 0, 0, 0.06257, 1.51, 4.19, -0.04, -0.03, 0.02, 4, 462 | -1, 0, 0, 3.67449, 157.55, 81.63, 29.57, -1.61, 0.06, 4, 1, 0, 0, 1.19188, 65.39, 463 | 25.66, 23.11, -0.45, 0.08, 4, 3, 0, 0, -0.00288, -0.15, -0.19, -0.08, 0.00, 0.00, 464 | 4, -3, 1, 0, -0.00552, -0.15, -0.38, -0.11, 0.00, 0.00, 4, -1, 1, 0, 0.47338, 465 | 20.49, 10.32, 11.59, -0.25, 0.02, 4, 1, 1, 0, 0.21259, 11.97, 4.56, 6.92, -0.10, 466 | 0.01, 4, 3, 1, 0, -0.00068, -0.04, -0.04, -0.03, 0.00, 0.00, 4, -3, 2, 0, -0.00090, 467 | -0.02, -0.06, -0.03, 0.00, 0.00, 4, -1, 2, 0, 0.04834, 2.10, 1.03, 2.04, -0.03, 468 | 0.00, 4, 1, 2, 0, 0.02828, 1.60, 0.60, 1.37, -0.02, 0.00, 4, 3, 2, 0, -0.00012, 469 | 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, 3, 0, -0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 470 | 4, -1, 3, 0, 0.00449, 0.20, 0.09, 0.27, 0.00, 0.00, 4, 1, 3, 0, 0.00323, 0.18, 471 | 0.07, 0.21, 0.00, 0.00, 4, 3, 3, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 472 | 4, 0, 0.00040, 0.02, 0.00, 0.03, 0.00, 0.00, 4, 1, 4, 0, 0.00034, 0.02, 0.00, 0.03, 473 | 0.00, 0.00, 4, -1, 5, 0, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, 5, 0, 474 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -5, 1, -0.00001, 0.00, 0.00, 0.00, 475 | 0.00, 0.00, 4, -1, -4, 1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, -4, 1, 476 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -3, 1, 0.00063, 0.05, 0.01, 0.03, 477 | 0.04, 0.00, 4, 1, -3, 1, 0.00192, 0.19, 0.04, 0.10, 0.11, 0.00, 4, -3, -2, 1, 478 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, -2, 1, -0.00203, 0.57, -0.05, -0.08, 479 | -0.12, 0.00, 4, 1, -2, 1, -0.02957, 0.54, -0.67, -1.08, -1.78, 0.00, 4, 3, -2, 1, 480 | 0.00009, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, -1, 1, -0.00015, -0.01, 0.00, 0.00, 481 | 0.00, 0.00, 4, -1, -1, 1, -0.17191, -3.93, -3.89, -3.20, -10.30, -0.02, 4, 1, -1, 482 | 1, -0.05097, -1.36, -1.11, -1.24, -3.06, -0.02, 4, 3, -1, 1, 0.00012, 0.00, 0.00, 483 | 0.00, 0.00, 0.00, 4, -3, 0, 1, -0.00304, -0.09, -0.20, 0.00, -0.18, 0.00, 4, -1, 0, 484 | 1, -0.11308, -4.83, -2.51, -0.93, -6.76, -0.02, 4, 1, 0, 1, -0.02549, -1.26, -0.54, 485 | -0.52, -1.53, 0.00, 4, 3, 0, 1, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, 1, 1, 486 | 0.00011, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 1, 1, -0.01692, -0.79, -0.37, -0.42, 487 | -1.01, 0.00, 4, 1, 1, 1, -0.00558, -0.32, -0.12, -0.19, -0.33, 0.00, 4, 3, 1, 1, 488 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -3, 2, 1, 0.00003, 0.00, 0.00, 0.00, 489 | 0.00, 0.00, 4, -1, 2, 1, -0.00196, -0.10, -0.04, -0.08, -0.12, 0.00, 4, 1, 2, 1, 490 | -0.00088, -0.05, -0.02, -0.04, -0.05, 0.00, 4, -1, 3, 1, -0.00020, -0.01, 0.00, 491 | -0.01, -0.01, 0.00, 4, 1, 3, 1, -0.00012, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 4, 492 | 1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, 4, 1, -0.00001, 0.00, 0.00, 0.00, 493 | 0.00, 0.00, 4, -1, -3, 2, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, -3, 2, 494 | -0.00020, -0.01, 0.00, -0.01, -0.02, 0.00, 4, -3, -2, 2, 0.00001, 0.00, 0.00, 0.00, 495 | 0.00, 0.00, 4, -1, -2, 2, -0.00114, -0.07, -0.02, -0.04, -0.14, 0.00, 4, 1, -2, 2, 496 | -0.00277, -0.16, -0.06, -0.10, -0.33, 0.00, 4, -3, -1, 2, 0.00005, 0.00, 0.00, 497 | 0.00, 0.00, 0.00, 4, -1, -1, 2, -0.00438, -0.25, -0.09, -0.08, -0.52, 0.00, 4, 1, 498 | -1, 2, -0.00179, -0.12, -0.04, -0.05, -0.21, 0.00, 4, -1, 0, 2, -0.00056, -0.03, 499 | -0.01, -0.02, -0.07, 0.00, 4, 1, 0, 2, -0.00025, -0.02, 0.00, -0.01, -0.03, 0.00, 500 | 4, -1, 1, 2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 4, 1, 1, 2, -0.00002, 0.00, 501 | 0.00, 0.00, 0.00, 0.00, 4, 1, -2, 3, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 4, -1, 502 | -1, 3, 0.00008, 0.00, 0.00, 0.00, 0.02, 0.00, 4, 1, -1, 3, 0.00002, 0.00, 0.00, 503 | 0.00, 0.00, 0.00, 4, -1, 0, 3, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -1, -2, 504 | -2, -0.00004, 0.00, 0.00, 0.00, 0.00, -0.02, 5, 1, -2, -2, -0.00004, 0.00, 0.00, 505 | 0.00, 0.00, -0.02, 5, -1, -1, -2, -0.00010, 0.00, 0.00, 0.00, -0.01, -0.04, 5, 1, 506 | -1, -2, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -1, 0, -2, -0.00002, 0.00, 0.00, 507 | 0.00, 0.00, 0.00, 5, -1, -3, -1, -0.00004, 0.00, 0.00, 0.00, 0.00, -0.01, 5, 1, -3, 508 | -1, -0.00014, 0.00, 0.00, 0.00, 0.00, -0.05, 5, -1, -2, -1, -0.00057, -0.02, -0.01, 509 | -0.02, -0.03, -0.22, 5, 1, -2, -1, -0.00061, -0.04, -0.01, -0.02, -0.04, -0.24, 5, 510 | -3, -1, -1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -1, -1, -1, -0.00127, -0.07, 511 | -0.03, -0.03, -0.08, -0.50, 5, 1, -1, -1, -0.00029, -0.03, 0.00, -0.01, -0.02, 512 | -0.11, 5, -3, 0, -1, -0.00005, 0.00, 0.00, 0.00, 0.00, -0.02, 5, -1, 0, -1, 513 | -0.00032, -0.03, 0.00, 0.00, -0.02, -0.12, 5, -1, 1, -1, -0.00006, 0.00, 0.00, 514 | 0.00, 0.00, -0.02, 5, 1, -4, 0, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -1, -3, 515 | 0, -0.00033, -0.01, 0.00, -0.02, 0.00, -0.13, 5, 1, -3, 0, -0.00124, -0.05, -0.03, 516 | -0.07, 0.00, -0.48, 5, -1, -2, 0, -0.00505, -0.21, -0.11, -0.19, 0.00, -1.96, 5, 1, 517 | -2, 0, -0.00519, -0.29, -0.11, -0.20, 0.00, -2.02, 5, 3, -2, 0, 0.00002, 0.00, 518 | 0.00, 0.00, 0.00, 0.00, 5, -3, -1, 0, -0.00011, 0.00, 0.00, 0.00, 0.00, -0.04, 5, 519 | -1, -1, 0, -0.01049, -0.54, -0.24, -0.22, 0.01, -4.08, 5, 1, -1, 0, -0.00245, 520 | -0.21, -0.05, -0.09, 0.00, -0.95, 5, 3, -1, 0, 0.00001, 0.00, 0.00, 0.00, 0.00, 521 | 0.00, 5, -3, 0, 0, -0.00041, -0.01, -0.03, 0.00, 0.00, -0.16, 5, -1, 0, 0, 522 | -0.00254, -0.19, -0.06, -0.07, 0.00, -0.99, 5, 1, 0, 0, -0.00027, -0.05, 0.00, 523 | -0.03, 0.00, -0.10, 5, -3, 1, 0, -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 5, -1, 1, 524 | 0, -0.00045, -0.03, -0.01, -0.02, 0.00, -0.17, 5, 1, 1, 0, -0.00006, -0.01, 0.00, 525 | 0.00, 0.00, -0.02, 5, -1, 2, 0, -0.00006, 0.00, 0.00, 0.00, 0.00, -0.02, 5, 1, 2, 526 | 0, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -1, -3, 1, -0.00001, 0.00, 0.00, 527 | 0.00, 0.00, 0.00, 5, 1, -3, 1, -0.00005, 0.00, 0.00, 0.00, 0.00, -0.02, 5, -1, -2, 528 | 1, 0.00014, 0.00, 0.00, 0.00, 0.00, 0.06, 5, 1, -2, 1, 0.00041, 0.01, 0.00, 0.02, 529 | 0.02, 0.16, 5, -1, -1, 1, 0.00097, 0.04, 0.02, 0.02, 0.06, 0.38, 5, 1, -1, 1, 530 | 0.00053, 0.03, 0.01, 0.01, 0.03, 0.21, 5, -3, 0, 1, 0.00003, 0.00, 0.00, 0.00, 531 | 0.00, 0.00, 5, -1, 0, 1, 0.00051, 0.02, 0.01, 0.00, 0.03, 0.20, 5, 1, 0, 1, 532 | 0.00023, 0.01, 0.00, 0.00, 0.01, 0.09, 5, -1, 1, 1, 0.00010, 0.00, 0.00, 0.00, 533 | 0.00, 0.04, 5, 1, 1, 1, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.02, 5, -1, 2, 1, 534 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 5, -1, -1, 2, -0.00002, 0.00, 0.00, 0.00, 535 | 0.00, 0.00, 5, -1, 0, 2, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, -3, -3, 536 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -2, -3, 0.00005, 0.00, 0.00, 0.00, 537 | 0.00, 0.00, 6, 1, -2, -3, 0.00006, 0.00, 0.00, 0.00, 0.01, 0.00, 6, -1, -1, -3, 538 | 0.00010, 0.00, 0.00, 0.00, 0.02, 0.00, 6, 1, -1, -3, 0.00006, 0.00, 0.00, 0.00, 539 | 0.01, 0.00, 6, -1, 0, -3, 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, 0, -3, 540 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 1, -3, 0.00001, 0.00, 0.00, 0.00, 541 | 0.00, 0.00, 6, -1, -3, -2, 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, -3, -2, 542 | 0.00033, 0.02, 0.00, 0.02, 0.04, 0.00, 6, -1, -2, -2, 0.00088, 0.05, 0.02, 0.03, 543 | 0.10, 0.00, 6, 1, -2, -2, 0.00087, 0.06, 0.02, 0.04, 0.10, 0.00, 6, -3, -1, -2, 544 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -1, -2, 0.00137, 0.09, 0.03, 0.03, 545 | 0.16, 0.00, 6, 1, -1, -2, 0.00078, 0.06, 0.02, 0.02, 0.09, 0.00, 6, -1, 0, -2, 546 | 0.00067, 0.05, 0.01, 0.01, 0.08, 0.00, 6, 1, 0, -2, 0.00032, 0.03, 0.00, 0.00, 547 | 0.04, 0.00, 6, -1, 1, -2, 0.00013, 0.00, 0.00, 0.00, 0.02, 0.00, 6, 1, 1, -2, 548 | 0.00007, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 2, -2, 0.00002, 0.00, 0.00, 0.00, 549 | 0.00, 0.00, 6, 1, 2, -2, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -4, -1, 550 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, -4, -1, 0.00009, 0.00, 0.00, 0.00, 551 | 0.00, 0.00, 6, -1, -3, -1, 0.00089, 0.05, 0.02, 0.05, 0.05, 0.00, 6, 1, -3, -1, 552 | 0.00415, 0.24, 0.09, 0.23, 0.25, 0.00, 6, 3, -3, -1, -0.00002, 0.00, 0.00, 0.00, 553 | 0.00, 0.00, 6, -1, -2, -1, 0.01091, 0.59, 0.24, 0.40, 0.65, 0.00, 6, 1, -2, -1, 554 | 0.00939, 0.64, 0.20, 0.38, 0.56, 0.00, 6, 3, -2, -1, -0.00003, 0.00, 0.00, 0.00, 555 | 0.00, 0.00, 6, -3, -1, -1, 0.00014, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -1, -1, 556 | 0.01486, 0.96, 0.33, 0.35, 0.88, 0.00, 6, 1, -1, -1, 0.00757, 0.59, 0.16, 0.24, 557 | 0.45, 0.00, 6, 3, -1, -1, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -3, 0, -1, 558 | 0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 0, -1, 0.00652, 0.47, 0.14, 0.12, 559 | 0.39, 0.00, 6, 1, 0, -1, 0.00288, 0.24, 0.06, 0.09, 0.17, 0.00, 6, 3, 0, -1, 560 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 1, -1, 0.00122, 0.09, 0.03, 0.04, 561 | 0.07, 0.00, 6, 1, 1, -1, 0.00063, 0.06, 0.01, 0.03, 0.04, 0.00, 6, -1, 2, -1, 562 | 0.00017, 0.01, 0.00, 0.00, 0.01, 0.00, 6, 1, 2, -1, 0.00010, 0.00, 0.00, 0.00, 563 | 0.00, 0.00, 6, -1, 3, -1, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, 3, -1, 564 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -4, 0, 0.00014, 0.00, 0.00, 0.01, 565 | 0.00, 0.00, 6, 1, -4, 0, 0.00072, 0.05, 0.02, 0.05, 0.00, 0.00, 6, 3, -4, 0, 566 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -3, 0, 0.00702, 0.40, 0.15, 0.38, 567 | 0.00, 0.00, 6, 1, -3, 0, 0.03118, 1.77, 0.68, 1.71, 0.00, 0.00, 6, 3, -3, 0, 568 | -0.00014, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -3, -2, 0, 0.00007, 0.00, 0.00, 0.00, 569 | 0.00, 0.00, 6, -1, -2, 0, 0.08096, 4.28, 1.79, 3.00, -0.04, 0.00, 6, 1, -2, 0, 570 | 0.05963, 3.97, 1.28, 2.46, -0.03, 0.00, 6, 3, -2, 0, -0.00021, -0.01, -0.01, 0.00, 571 | 0.00, 0.00, 6, -3, -1, 0, 0.00107, 0.04, 0.07, 0.02, 0.00, 0.00, 6, -1, -1, 0, 572 | 0.09403, 5.84, 2.08, 2.28, -0.07, 0.00, 6, 1, -1, 0, 0.04217, 3.17, 0.89, 1.37, 573 | -0.03, 0.00, 6, 3, -1, 0, -0.00014, -0.01, 0.00, 0.00, 0.00, 0.00, 6, -3, 0, 0, 574 | 0.00060, 0.04, 0.04, 0.00, 0.00, 0.00, 6, -1, 0, 0, 0.03674, 2.54, 0.80, 0.73, 575 | -0.03, 0.00, 6, 1, 0, 0, 0.01465, 1.19, 0.31, 0.47, -0.01, 0.00, 6, 3, 0, 0, 576 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -3, 1, 0, -0.00005, 0.00, 0.00, 0.00, 577 | 0.00, 0.00, 6, -1, 1, 0, 0.00654, 0.46, 0.14, 0.22, 0.00, 0.00, 6, 1, 1, 0, 578 | 0.00305, 0.25, 0.06, 0.13, 0.00, 0.00, 6, 3, 1, 0, -0.00001, 0.00, 0.00, 0.00, 579 | 0.00, 0.00, 6, -3, 2, 0, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 2, 0, 580 | 0.00088, 0.06, 0.02, 0.04, 0.00, 0.00, 6, 1, 2, 0, 0.00048, 0.04, 0.01, 0.03, 0.00, 581 | 0.00, 6, -1, 3, 0, 0.00010, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, 3, 0, 0.00006, 582 | 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 4, 0, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 583 | 6, 1, -4, 1, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -3, 1, -0.00003, 0.00, 584 | 0.00, 0.00, 0.00, 0.00, 6, 1, -3, 1, -0.00054, 0.00, -0.01, -0.03, -0.03, 0.00, 6, 585 | -1, -2, 1, -0.00256, -0.08, -0.06, -0.09, -0.15, 0.00, 6, 1, -2, 1, -0.00137, 586 | -0.05, -0.03, -0.06, -0.08, 0.00, 6, -3, -1, 1, -0.00007, 0.00, 0.00, 0.00, 0.00, 587 | 0.00, 6, -1, -1, 1, -0.00350, -0.19, -0.08, -0.08, -0.21, 0.00, 6, 1, -1, 1, 588 | -0.00116, -0.07, -0.02, -0.04, -0.07, 0.00, 6, -3, 0, 1, -0.00004, 0.00, 0.00, 589 | 0.00, 0.00, 0.00, 6, -1, 0, 1, -0.00153, -0.10, -0.03, -0.03, -0.09, 0.00, 6, 1, 0, 590 | 1, -0.00047, -0.04, 0.00, -0.02, -0.03, 0.00, 6, -1, 1, 1, -0.00031, -0.02, 0.00, 591 | 0.00, -0.02, 0.00, 6, 1, 1, 1, -0.00011, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, 2, 1, 592 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, 2, 1, -0.00002, 0.00, 0.00, 0.00, 593 | 0.00, 0.00, 6, -1, -3, 2, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, -3, 2, 594 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -2, 2, -0.00009, 0.00, 0.00, 0.00, 595 | -0.01, 0.00, 6, 1, -2, 2, -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 6, -1, -1, 2, 596 | -0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 6, 1, -1, 2, -0.00002, 0.00, 0.00, 0.00, 597 | 0.00, 0.00, 7, -1, -3, -1, -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 7, 1, -3, -1, 598 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 7, -1, -2, -1, -0.00004, 0.00, 0.00, 0.00, 599 | 0.00, -0.02, 7, 1, -2, -1, -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 7, -1, -1, -1, 600 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 7, 1, -4, 0, -0.00003, 0.00, 0.00, 0.00, 601 | 0.00, 0.00, 7, -1, -3, 0, -0.00009, 0.00, 0.00, 0.00, 0.00, -0.03, 7, 1, -3, 0, 602 | -0.00011, 0.00, 0.00, 0.00, 0.00, -0.04, 7, -1, -2, 0, -0.00024, -0.02, 0.00, 0.00, 603 | 0.00, -0.09, 7, 1, -2, 0, -0.00010, 0.00, 0.00, 0.00, 0.00, -0.04, 7, -3, -1, 0, 604 | -0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 7, -1, -1, 0, -0.00013, -0.01, 0.00, 0.00, 605 | 0.00, -0.05, 7, 1, -1, 0, -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 7, -1, 0, 0, 606 | -0.00003, 0.00, 0.00, 0.00, 0.00, -0.01, 7, -1, -2, 1, 0.00002, 0.00, 0.00, 0.00, 607 | 0.00, 0.00, 7, 1, -2, 1, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 7, -1, -1, 1, 608 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 7, 1, -1, 1, 0.00001, 0.00, 0.00, 0.00, 609 | 0.00, 0.00, 8, -1, -3, -2, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 1, -3, -2, 610 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -2, -2, 0.00004, 0.00, 0.00, 0.00, 611 | 0.00, 0.00, 8, 1, -2, -2, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -1, -2, 612 | 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 1, -1, -2, 0.00002, 0.00, 0.00, 0.00, 613 | 0.00, 0.00, 8, -1, 0, -2, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -4, -1, 614 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 1, -4, -1, 0.00007, 0.00, 0.00, 0.00, 615 | 0.00, 0.00, 8, -1, -3, -1, 0.00019, 0.01, 0.00, 0.01, 0.01, 0.00, 8, 1, -3, -1, 616 | 0.00022, 0.02, 0.00, 0.01, 0.01, 0.00, 8, -1, -2, -1, 0.00038, 0.03, 0.00, 0.02, 617 | 0.02, 0.00, 8, 1, -2, -1, 0.00025, 0.02, 0.00, 0.01, 0.01, 0.00, 8, -1, -1, -1, 618 | 0.00029, 0.03, 0.00, 0.00, 0.02, 0.00, 8, 1, -1, -1, 0.00015, 0.02, 0.00, 0.00, 619 | 0.00, 0.00, 8, -1, 0, -1, 0.00011, 0.01, 0.00, 0.00, 0.00, 0.00, 8, 1, 0, -1, 620 | 0.00005, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, 1, -1, 0.00002, 0.00, 0.00, 0.00, 621 | 0.00, 0.00, 8, 1, 1, -1, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 1, -5, 0, 622 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -4, 0, 0.00009, 0.00, 0.00, 0.00, 623 | 0.00, 0.00, 8, 1, -4, 0, 0.00042, 0.03, 0.00, 0.03, 0.00, 0.00, 8, -1, -3, 0, 624 | 0.00107, 0.08, 0.02, 0.06, 0.00, 0.00, 8, 1, -3, 0, 0.00108, 0.09, 0.02, 0.06, 625 | 0.00, 0.00, 8, -3, -2, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -2, 0, 626 | 0.00189, 0.15, 0.04, 0.08, 0.00, 0.00, 8, 1, -2, 0, 0.00111, 0.11, 0.02, 0.05, 627 | 0.00, 0.00, 8, -3, -1, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -1, 0, 628 | 0.00130, 0.12, 0.03, 0.04, 0.00, 0.00, 8, 1, -1, 0, 0.00060, 0.06, 0.01, 0.03, 629 | 0.00, 0.00, 8, -1, 0, 0, 0.00045, 0.04, 0.00, 0.01, 0.00, 0.00, 8, 1, 0, 0, 630 | 0.00020, 0.02, 0.00, 0.00, 0.00, 0.00, 8, -1, 1, 0, 0.00009, 0.00, 0.00, 0.00, 631 | 0.00, 0.00, 8, 1, 1, 0, 0.00004, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, 2, 0, 632 | 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -3, 1, -0.00004, 0.00, 0.00, 0.00, 633 | 0.00, 0.00, 8, 1, -3, 1, -0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, -2, 1, 634 | -0.00008, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 1, -2, 1, -0.00004, 0.00, 0.00, 0.00, 635 | 0.00, 0.00, 8, -1, -1, 1, -0.00006, 0.00, 0.00, 0.00, 0.00, 0.00, 8, 1, -1, 1, 636 | -0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 8, -1, 0, 1, -0.00002, 0.00, 0.00, 0.00, 637 | 0.00, 0.00, 10, -1, -4, 0, 0.00001, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 1, -4, 0, 638 | 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00, 10, -1, -3, 0, 0.00003, 0.00, 0.00, 0.00, 639 | 0.00, 0.00, 10, 1, -3, 0, 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 10, -1, -2, 0, 640 | 0.00003, 0.00, 0.00, 0.00, 0.00, 0.00, 10, 1, -2, 0, 0.00002, 0.00, 0.00, 0.00, 641 | 0.00, 0.00, 10, -1, -1, 0, 0.00002, 0.00, 0.00, 0.00, 0.00, 0.00}; 642 | System.arraycopy(data, 0, PARAMS, offset, data.length); 643 | } 644 | } 645 | --------------------------------------------------------------------------------