package calendar func liaoJinYuanCals() map[int]uint32 { return map[int]uint32{ 949: 2996838400, 955: 1237097216, 958: 2858129152, 959: 1787832832, 961: 766088192, 964: 2574266112, 965: 1232086016, 973: 2464163072, 985: 3031177216, 986: 1788881664, 994: 3645910016, 999: 2775716864, 1001: 3530398464, 1012: 3579124224, 1015: 2513671936, 1020: 2992512000, 1021: 1787833856, 1024: 727723008, 1025: 2507153408, 1029: 1783730688, 1039: 3667270400, 1040: 3046125056, 1044: 2463113472, 1045: 3378156800, 1049: 2907710464, 1053: 2461767424, 1056: 1823052800, 1059: 2605723136, 1064: 3912439040, 1070: 1255156992, 1073: 2991597824, 1075: 3601470208, 1077: 2513836800, 1078: 2511351296, 1080: 2763790592, 1094: 728372224, 1105: 2733216256, 1113: 635048960, 1121: 1269470464, 1129: 2874414592, 1134: 3529513728, 1145: 3041761536, 1147: 3445629184, 1152: 1689265920, 1155: 1530929920, 1163: 3595576320, 1168: 2461018624, 1176: 628108288, 1178: 2839221504, 1184: 1264594176, 1198: 3040880384, 1207: 2904563200, 1209: 727721472, 1239: 1370498304, 1250: 3576701440, 1251: 1520769024, 1253: 1523588864, 1256: 2732596480, 1258: 3511690240, 1263: 2513447168, 1270: 3047528192, 1273: 1169888512, 1276: 1784254976, } } func liaoJinYuanEras() []Era { return []Era{ { Year: 1264, Emperor: "元世祖", OtherNianHaoStart: "至元", Dynasty: "元", }, { Year: 1260, Emperor: "元世祖", Nianhao: "中统", Dynasty: "元", }, { Year: 1251, Emperor: "元宪宗", Nianhao: "元宪宗", Dynasty: "元", }, { Year: 1249, Emperor: "元定宗后", Nianhao: "元定宗后", Dynasty: "元", }, { Year: 1246, Emperor: "元定宗", Nianhao: "元定宗", Dynasty: "元", }, { Year: 1242, Emperor: "元太宗", Nianhao: "元太宗后", Dynasty: "元", }, { Year: 1234, Emperor: "元太宗", OtherNianHaoStart: "元太宗", Dynasty: "元", Offset: 5, }, { Year: 1232, Emperor: "金哀宗", Nianhao: "天兴", Dynasty: "金", }, { Year: 1224, Emperor: "金哀宗", Nianhao: "正大", Dynasty: "金", }, { Year: 1222, Emperor: "金宣宗", OtherNianHaoStart: "元光", Dynasty: "金", }, { Year: 1217, Emperor: "金宣宗", OtherNianHaoStart: "兴定", Dynasty: "金", }, { Year: 1213, Emperor: "金宣宗", OtherNianHaoStart: "贞佑", Dynasty: "金", }, { Year: 1213, Emperor: "金宣宗", OtherNianHaoStart: "至宁", Dynasty: "金", }, { Year: 1212, Emperor: "金卫绍王", OtherNianHaoStart: "崇庆", Dynasty: "金", }, { Year: 1209, Emperor: "金卫绍王", Nianhao: "大安", Dynasty: "金", }, { Year: 1201, Emperor: "金章宗", Nianhao: "泰和", Dynasty: "金", }, { Year: 1196, Emperor: "金章宗", OtherNianHaoStart: "承安", Dynasty: "金", }, { Year: 1190, Emperor: "金章宗", Nianhao: "明昌", Dynasty: "金", }, { Year: 1161, Emperor: "金世宗", OtherNianHaoStart: "大定", Dynasty: "金", }, { Year: 1156, Emperor: "金海陵王", OtherNianHaoStart: "正隆", Dynasty: "金", }, { Year: 1153, Emperor: "金海陵王", OtherNianHaoStart: "贞元", Dynasty: "金", }, { Year: 1149, Emperor: "金海陵王", OtherNianHaoStart: "天德", Dynasty: "金", }, { Year: 1141, Emperor: "金熙宗", Nianhao: "皇统", Dynasty: "金", }, { Year: 1138, Emperor: "金熙宗", Nianhao: "天眷", Dynasty: "金", }, { Year: 1125, Emperor: "金太宗", OtherNianHaoStart: "天会", Dynasty: "金", Offset: 2, }, { Year: 1121, Emperor: "辽天祚帝", Nianhao: "保大", Dynasty: "辽", }, { Year: 1111, Emperor: "辽天祚帝", Nianhao: "天庆", Dynasty: "辽", }, { Year: 1101, Emperor: "辽天祚帝", OtherNianHaoStart: "乾统", Dynasty: "辽", }, { Year: 1095, Emperor: "辽道宗", Nianhao: "寿昌", Dynasty: "辽", }, { Year: 1085, Emperor: "辽道宗", Nianhao: "大安", Dynasty: "辽", }, { Year: 1075, Emperor: "辽道宗", Nianhao: "大康", Dynasty: "辽", }, { Year: 1065, Emperor: "辽道宗", Nianhao: "咸雍", Dynasty: "辽", }, { Year: 1055, Emperor: "辽道宗", OtherNianHaoStart: "清宁", Dynasty: "辽", }, { Year: 1032, Emperor: "辽兴宗", OtherNianHaoStart: "重熙", Dynasty: "辽", }, { Year: 1031, Emperor: "辽兴宗", OtherNianHaoStart: "景福", Dynasty: "辽", }, { Year: 1021, Emperor: "辽圣宗", OtherNianHaoStart: "太平", Dynasty: "辽", }, { Year: 1012, Emperor: "辽圣宗", OtherNianHaoStart: "开泰", Dynasty: "辽", }, { Year: 983, Emperor: "辽圣宗", OtherNianHaoStart: "统和", Dynasty: "辽", }, { Year: 979, Emperor: "辽景宗", OtherNianHaoStart: "乾亨", Dynasty: "辽", }, { Year: 969, Emperor: "辽景宗", OtherNianHaoStart: "保宁", Dynasty: "辽", }, { Year: 951, Emperor: "辽穆宗", OtherNianHaoStart: "应历", Dynasty: "辽", }, { Year: 947, Emperor: "辽世宗", OtherNianHaoStart: "天禄", Dynasty: "辽", }, { Year: 947, Emperor: "辽太宗", Nianhao: "大同", Dynasty: "辽", }, { Year: 939, Emperor: "辽太宗", OtherNianHaoStart: "会同", Dynasty: "辽", }, } } func liaoJinYuanEraMap() map[string][][]int { return map[string][][]int{ "中统": [][]int{{1260, 1264}}, "元宪宗": [][]int{{1251, 1259}}, "元定宗后": [][]int{{1249, 1250}}, "元定宗": [][]int{{1246, 1248}}, "元太宗后": [][]int{{1242, 1245}}, "元太宗": [][]int{{1229, 1241}}, "天兴": [][]int{{1232, 1229}}, "正大": [][]int{{1224, 1231}}, "元光": [][]int{{1222, 1223}}, "兴定": [][]int{{1217, 1222}}, "贞佑": [][]int{{1213, 1217}}, "至宁": [][]int{{1213, 1213}}, "崇庆": [][]int{{1212, 1213}}, "泰和": [][]int{{1201, 1208}}, "承安": [][]int{{1196, 1200}}, "明昌": [][]int{{1190, 1196}}, "大定": [][]int{{1161, 1189}}, "正隆": [][]int{{1156, 1161}}, "贞元": [][]int{{1153, 1156}}, "天德": [][]int{{1149, 1153}}, "皇统": [][]int{{1141, 1149}}, "天眷": [][]int{{1138, 1140}}, "天会": [][]int{{1123, 1137}}, "保大": [][]int{{1121, 1125}}, "天庆": [][]int{{1111, 1120}}, "乾统": [][]int{{1101, 1110}}, "寿昌": [][]int{{1095, 1101}}, "大安": [][]int{{1085, 1094}, {1209, 1212}}, "大康": [][]int{{1075, 1084}}, "咸雍": [][]int{{1065, 1074}}, "清宁": [][]int{{1055, 1064}}, "重熙": [][]int{{1032, 1055}}, "景福": [][]int{{1031, 1032}}, "太平": [][]int{{1021, 1031}}, "开泰": [][]int{{1012, 1021}}, "统和": [][]int{{983, 1012}}, "乾亨": [][]int{{979, 983}}, "保宁": [][]int{{969, 979}}, "应历": [][]int{{951, 969}}, "天禄": [][]int{{947, 951}}, "大同": [][]int{{947, 947}}, "会同": [][]int{{939, 946}}, } } func innerSolarToLunarLiaoJinYuan(date Time) Time { year := date.solarTime.Year() month := int(date.solarTime.Month()) day := date.solarTime.Day() if year >= 947 && year <= 1279 { lyear, lmonth, ganzhiMonth, lday, isLeap, ldesc := rapidLunarHan2Qing(year, month, day, 0, liaoJinYuanCals) date.lunars = append(date.lunars, LunarTime{ solarDate: date.Solar(), year: lyear, month: lmonth, day: lday, leap: isLeap, desc: ldesc, comment: "", ganzhiMonth: ganzhiMonth, eras: innerEras(lyear, liaoJinYuanEras), }) } return date }