q78kgblog 0.0.0-1720441708496 → 0.0.0-1720859005089

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/404.html +3 -3
  2. package/about/index.html +5 -5
  3. package/archives/2023/02/index.html +4 -4
  4. package/archives/2023/04/index.html +4 -4
  5. package/archives/2023/05/index.html +4 -4
  6. package/archives/2023/08/index.html +4 -4
  7. package/archives/2023/09/index.html +4 -4
  8. package/archives/2023/index.html +4 -4
  9. package/archives/2024/01/index.html +4 -4
  10. package/archives/2024/02/index.html +4 -4
  11. package/archives/2024/index.html +4 -4
  12. package/archives/index.html +4 -4
  13. package/atom.xml +9 -9
  14. package/baidusitemap.xml +8 -8
  15. package/bangumis/index.html +4 -4
  16. package/bigpie/index.html +3 -3
  17. package/categories/Hexo/index.html +4 -4
  18. package/categories/index.html +3 -3
  19. package/categories//345/271/264/347/273/210/346/200/273/347/273/223/index.html +4 -4
  20. package/categories//347/264/240/346/235/220/index.html +4 -4
  21. package/categories//351/227/262/350/201/212/346/235/202/350/260/210/index.html +4 -4
  22. package/content.json +1 -1
  23. package/css/404page.css +1 -65
  24. package/css/ariasakablog.css +1 -6669
  25. package/css/commentBarrage.css +1 -118
  26. package/css/danmaku.css +1 -106
  27. package/css/essay.css +1 -306
  28. package/css/iconfont.css +1 -55
  29. package/css/index.css +1 -7006
  30. package/css/people.css +1 -18
  31. package/css/stylessimple.css +1 -40
  32. package/css/swiperstyle.css +1 -567
  33. package/fcircle/index.html +3 -3
  34. package/fontawesome/index.html +3 -3
  35. package/index.html +11 -11
  36. package/js/aplayersave.js +1 -268
  37. package/js/baiduhistory.js +1 -76
  38. package/js/browser.js +1 -35
  39. package/js/calendar.js +1 -380
  40. package/js/cate.js +1 -22
  41. package/js/commentBarrage.js +17 -232
  42. package/js/commentsCount.js +1 -43
  43. package/js/copy.js +1 -23
  44. package/js/countup.js +1 -209
  45. package/js/cursor.js +1 -82
  46. package/js/danmaku.js +0 -106
  47. package/js/day.js +13 -195
  48. package/js/dianzan.js +1 -249
  49. package/js/dis.js +4 -252
  50. package/js/dist/baiduhistory.dev.js +1 -102
  51. package/js/dist/bbtalk.dev.js +159 -12872
  52. package/js/dist/bbtalklunbo.dev.js +1 -45
  53. package/js/dist/calendar.dev.js +1 -395
  54. package/js/dist/fixbugpjax.dev.js +1 -8
  55. package/js/dist/gongnong.dev.js +1 -565
  56. package/js/dist/heimu.dev.js +1 -19
  57. package/js/dist/links.dev.js +1 -13
  58. package/js/dist/main.dev.js +5 -843
  59. package/js/dist/resizeTop.dev.js +1 -50
  60. package/js/dist/seo.dev.js +1 -33
  61. package/js/dist/twikoo.all.min.dev.js +946 -1
  62. package/js/fixbugpjax.js +1 -7
  63. package/js/fixed_card_widget.js +1 -46
  64. package/js/fps.js +1 -58
  65. package/js/gitalker.js +1 -11
  66. package/js/heimu.js +1 -16
  67. package/js/hide.show.js +1 -17
  68. package/js/languages.js +1 -511
  69. package/js/latest.js +1 -49
  70. package/js/local-search.js +2 -476
  71. package/js/lunar.js +1 -1071
  72. package/js/lyxTalk.js +1 -12
  73. package/js/main.js +5 -781
  74. package/js/nav.js +1 -30
  75. package/js/noie.js +1 -3
  76. package/js/owo.js +1 -52
  77. package/js/people.js +2 -175
  78. package/js/randomFriend.js +1 -95
  79. package/js/resizeTop.js +1 -43
  80. package/js/rightmenu.js +3 -333
  81. package/js/sakura.js +1 -164
  82. package/js/search/algolia.js +4 -154
  83. package/js/search/local-search.js +1 -188
  84. package/js/settings.js +3 -343
  85. package/js/sitetime.js +1 -25
  86. package/js/smooth-scrolling.js +1 -546
  87. package/js/sw-toolbox.js +1 -16
  88. package/js/swiperinit.js +1 -23
  89. package/js/tw_cn.js +1 -100
  90. package/js/utils.js +1 -278
  91. package/js/welcome.js +1 -107
  92. package/js/welcomeconsole.js +1 -23
  93. package/links/index.html +3 -3
  94. package/othersite/index.html +3 -3
  95. package/package.json +1 -1
  96. package/posts/164ef646/index.html +6 -6
  97. package/posts/228c2ef8/index.html +6 -6
  98. package/posts/a9a6c1fb/index.html +6 -6
  99. package/posts/c262e439/index.html +6 -6
  100. package/posts/c81531cf/index.html +6 -6
  101. package/posts/ccdf7cfc/index.html +6 -6
  102. package/posts/de1f83f4/index.html +6 -6
  103. package/posts/e54f7476/index.html +6 -6
  104. package/sitemap.xml +49 -49
  105. package/sw.js +2 -193
  106. package/swReg.js +1 -29
  107. package/tags/AI/index.html +5 -5
  108. package/tags/Butterfly/index.html +5 -5
  109. package/tags/Cloudflare/index.html +5 -5
  110. package/tags/DiffSinger/index.html +5 -5
  111. package/tags/Hexo/index.html +5 -5
  112. package/tags/Next/index.html +5 -5
  113. package/tags/RAID/index.html +5 -5
  114. package/tags/Vercel/index.html +5 -5
  115. package/tags/Workers/index.html +5 -5
  116. package/tags/index.html +3 -3
  117. package/tags//344/270/273/351/242/230/index.html +5 -5
  118. package/tags//345/206/231/344/275/234/index.html +5 -5
  119. package/tags//345/245/263/346/200/247/346/204/217/350/257/206/index.html +5 -5
  120. package/tags//345/255/246/344/271/240/index.html +5 -5
  121. package/tags//345/256/266/351/207/214/344/272/221/index.html +5 -5
  122. package/tags//345/271/264/347/273/210/346/200/273/347/273/223/index.html +5 -5
  123. package/tags//346/212/230/350/205/276/index.html +5 -5
  124. package/tags//346/227/245/345/270/270/index.html +5 -5
  125. package/tags//346/234/215/345/212/241/345/231/250/index.html +5 -5
  126. package/tags//346/265/252/346/275/256/index.html +5 -5
  127. package/tags//347/256/200/347/210/261/index.html +5 -5
  128. package/tags//350/207/252/345/212/250/346/240/207/346/263/250/index.html +5 -5
  129. package/tags//350/256/272/346/226/207/index.html +5 -5
  130. package/tags//350/260/267/346/255/214/347/277/273/350/257/221/index.html +5 -5
  131. package/tags//350/264/237/350/275/275/345/235/207/350/241/241/index.html +5 -5
  132. package/tags//351/207/221/345/217/245/index.html +5 -5
  133. package/tags//351/255/224/346/224/271/index.html +5 -5
package/js/lunar.js CHANGED
@@ -1,1071 +1 @@
1
- /**
2
-
3
- * @1900-2100区间内的公历、农历互转
4
-
5
- * @charset UTF-8
6
-
7
- * @Author jiangjiazhi
8
-
9
- * @公历转农历:calendar.solar2lunar(1987,11,01); //[you can ignore params of prefix 0]
10
-
11
- * @农历转公历:calendar.lunar2solar(1987,09,10); //[you can ignore params of prefix 0]
12
-
13
- */
14
-
15
-
16
-
17
- /**
18
-
19
- * 农历1900-2100的润大小信息表
20
-
21
- * @Array Of Property
22
-
23
- * @return Hex
24
-
25
- */
26
-
27
- var lunarInfo = [0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, // 1900-1909
28
-
29
- 0x04ae0, 0x0a5b6, 0x0a4d0, 0x0d250, 0x1d255, 0x0b540, 0x0d6a0, 0x0ada2, 0x095b0, 0x14977, // 1910-1919
30
-
31
- 0x04970, 0x0a4b0, 0x0b4b5, 0x06a50, 0x06d40, 0x1ab54, 0x02b60, 0x09570, 0x052f2, 0x04970, // 1920-1929
32
-
33
- 0x06566, 0x0d4a0, 0x0ea50, 0x06e95, 0x05ad0, 0x02b60, 0x186e3, 0x092e0, 0x1c8d7, 0x0c950, // 1930-1939
34
-
35
- 0x0d4a0, 0x1d8a6, 0x0b550, 0x056a0, 0x1a5b4, 0x025d0, 0x092d0, 0x0d2b2, 0x0a950, 0x0b557, // 1940-1949
36
-
37
- 0x06ca0, 0x0b550, 0x15355, 0x04da0, 0x0a5b0, 0x14573, 0x052b0, 0x0a9a8, 0x0e950, 0x06aa0, // 1950-1959
38
-
39
- 0x0aea6, 0x0ab50, 0x04b60, 0x0aae4, 0x0a570, 0x05260, 0x0f263, 0x0d950, 0x05b57, 0x056a0, // 1960-1969
40
-
41
- 0x096d0, 0x04dd5, 0x04ad0, 0x0a4d0, 0x0d4d4, 0x0d250, 0x0d558, 0x0b540, 0x0b6a0, 0x195a6, // 1970-1979
42
-
43
- 0x095b0, 0x049b0, 0x0a974, 0x0a4b0, 0x0b27a, 0x06a50, 0x06d40, 0x0af46, 0x0ab60, 0x09570, // 1980-1989
44
-
45
- 0x04af5, 0x04970, 0x064b0, 0x074a3, 0x0ea50, 0x06b58, 0x05ac0, 0x0ab60, 0x096d5, 0x092e0, // 1990-1999
46
-
47
- 0x0c960, 0x0d954, 0x0d4a0, 0x0da50, 0x07552, 0x056a0, 0x0abb7, 0x025d0, 0x092d0, 0x0cab5, // 2000-2009
48
-
49
- 0x0a950, 0x0b4a0, 0x0baa4, 0x0ad50, 0x055d9, 0x04ba0, 0x0a5b0, 0x15176, 0x052b0, 0x0a930, // 2010-2019
50
-
51
- 0x07954, 0x06aa0, 0x0ad50, 0x05b52, 0x04b60, 0x0a6e6, 0x0a4e0, 0x0d260, 0x0ea65, 0x0d530, // 2020-2029
52
-
53
- 0x05aa0, 0x076a3, 0x096d0, 0x04afb, 0x04ad0, 0x0a4d0, 0x1d0b6, 0x0d250, 0x0d520, 0x0dd45, // 2030-2039
54
-
55
- 0x0b5a0, 0x056d0, 0x055b2, 0x049b0, 0x0a577, 0x0a4b0, 0x0aa50, 0x1b255, 0x06d20, 0x0ada0, // 2040-2049
56
-
57
- 0x14b63, 0x09370, 0x049f8, 0x04970, 0x064b0, 0x168a6, 0x0ea50, 0x06b20, 0x1a6c4, 0x0aae0, // 2050-2059
58
-
59
- 0x0a2e0, 0x0d2e3, 0x0c960, 0x0d557, 0x0d4a0, 0x0da50, 0x05d55, 0x056a0, 0x0a6d0, 0x055d4, // 2060-2069
60
-
61
- 0x052d0, 0x0a9b8, 0x0a950, 0x0b4a0, 0x0b6a6, 0x0ad50, 0x055a0, 0x0aba4, 0x0a5b0, 0x052b0, // 2070-2079
62
-
63
- 0x0b273, 0x06930, 0x07337, 0x06aa0, 0x0ad50, 0x14b55, 0x04b60, 0x0a570, 0x054e4, 0x0d160, // 2080-2089
64
-
65
- 0x0e968, 0x0d520, 0x0daa0, 0x16aa6, 0x056d0, 0x04ae0, 0x0a9d4, 0x0a2d0, 0x0d150, 0x0f252, // 2090-2099
66
-
67
- 0x0d520] // 2100
68
-
69
-
70
-
71
- var solarMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
72
-
73
-
74
-
75
- /**
76
-
77
- * 天干地支之天干速查表
78
-
79
- * @Array Of Property trans['甲','乙','丙','丁','戊','己','庚','辛','壬','癸']
80
-
81
- * @return Cn string
82
-
83
- */
84
-
85
- var Gan = ['\u7532', '\u4e59', '\u4e19', '\u4e01', '\u620a', '\u5df1', '\u5e9a', '\u8f9b', '\u58ec', '\u7678']
86
-
87
-
88
-
89
- /**
90
-
91
- * 天干地支之地支速查表
92
-
93
- * @Array Of Property
94
-
95
- * @trans['子','丑','寅','卯','辰','巳','午','未','申','酉','戌','亥']
96
-
97
- * @return Cn string
98
-
99
- */
100
-
101
- var Zhi = ['\u5b50', '\u4e11', '\u5bc5', '\u536f', '\u8fb0', '\u5df3', '\u5348', '\u672a', '\u7533', '\u9149', '\u620c', '\u4ea5']
102
-
103
-
104
-
105
- /**
106
-
107
- * 天干地支之地支速查表<=>生肖
108
-
109
- * @Array Of Property
110
-
111
- * @trans['鼠','牛','虎','兔','龙','蛇','马','羊','猴','鸡','狗','猪']
112
-
113
- * @return Cn string
114
-
115
- */
116
-
117
- var Animals = ['\u9f20', '\u725b', '\u864e', '\u5154', '\u9f99', '\u86c7', '\u9a6c', '\u7f8a', '\u7334', '\u9e21', '\u72d7', '\u732a']
118
-
119
-
120
-
121
- /**
122
-
123
- * 24节气速查表
124
-
125
- * @Array Of Property
126
-
127
- * @trans['小寒','大寒','立春','雨水','惊蛰','春分','清明','谷雨','立夏','小满','芒种','夏至','小暑','大暑','立秋','处暑','白露','秋分','寒露','霜降','立冬','小雪','大雪','冬至']
128
-
129
- * @return Cn string
130
-
131
- */
132
-
133
- var solarTerm = ['\u5c0f\u5bd2', '\u5927\u5bd2', '\u7acb\u6625', '\u96e8\u6c34', '\u60ca\u86f0', '\u6625\u5206', '\u6e05\u660e', '\u8c37\u96e8', '\u7acb\u590f', '\u5c0f\u6ee1', '\u8292\u79cd', '\u590f\u81f3', '\u5c0f\u6691', '\u5927\u6691', '\u7acb\u79cb', '\u5904\u6691', '\u767d\u9732', '\u79cb\u5206', '\u5bd2\u9732', '\u971c\u964d', '\u7acb\u51ac', '\u5c0f\u96ea', '\u5927\u96ea', '\u51ac\u81f3']
134
-
135
-
136
-
137
- /**
138
-
139
- * 1900-2100各年的24节气日期速查表
140
-
141
- * @Array Of Property
142
-
143
- * @return 0x string For splice
144
-
145
- */
146
-
147
- var sTermInfo = ['9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f',
148
-
149
- '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',
150
-
151
- '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f', 'b027097bd097c36b0b6fc9274c91aa',
152
-
153
- '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd0b06bdb0722c965ce1cfcc920f',
154
-
155
- 'b027097bd097c36b0b6fc9274c91aa', '9778397bd19801ec9210c965cc920e', '97b6b97bd19801ec95f8c965cc920f',
156
-
157
- '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd197c36c9210c9274c91aa',
158
-
159
- '97b6b97bd19801ec95f8c965cc920e', '97bd09801d98082c95f8e1cfcc920f', '97bd097bd097c36b0b6fc9210c8dc2',
160
-
161
- '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec95f8c965cc920e', '97bcf97c3598082c95f8e1cfcc920f',
162
-
163
- '97bd097bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e',
164
-
165
- '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',
166
-
167
- '97b6b97bd19801ec9210c965cc920e', '97bcf97c3598082c95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722',
168
-
169
- '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f',
170
-
171
- '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',
172
-
173
- '97bcf97c359801ec95f8c965cc920f', '97bd097bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',
174
-
175
- '97b6b97bd19801ec9210c965cc920e', '97bcf97c359801ec95f8c965cc920f', '97bd097bd07f595b0b6fc920fb0722',
176
-
177
- '9778397bd097c36b0b6fc9210c8dc2', '9778397bd19801ec9210c9274c920e', '97b6b97bd19801ec95f8c965cc920f',
178
-
179
- '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e',
180
-
181
- '97b6b97bd19801ec95f8c965cc920f', '97bd07f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2',
182
-
183
- '9778397bd097c36c9210c9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bd07f1487f595b0b0bc920fb0722',
184
-
185
- '7f0e397bd097c36b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',
186
-
187
- '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',
188
-
189
- '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722',
190
-
191
- '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e', '97bcf7f1487f531b0b0bb0b6fb0722',
192
-
193
- '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b97bd19801ec9210c965cc920e',
194
-
195
- '97bcf7f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',
196
-
197
- '97b6b97bd19801ec9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722',
198
-
199
- '9778397bd097c36b0b6fc9210c91aa', '97b6b97bd197c36c9210c9274c920e', '97bcf7f0e47f531b0b0bb0b6fb0722',
200
-
201
- '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '9778397bd097c36c9210c9274c920e',
202
-
203
- '97b6b7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c36b0b6fc9210c8dc2',
204
-
205
- '9778397bd097c36b0b70c9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722',
206
-
207
- '7f0e397bd097c35b0b6fc9210c8dc2', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721',
208
-
209
- '7f0e27f1487f595b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa',
210
-
211
- '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722',
212
-
213
- '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722',
214
-
215
- '7f0e397bd097c35b0b6fc920fb0722', '9778397bd097c36b0b6fc9274c91aa', '97b6b7f0e47f531b0723b0b6fb0721',
216
-
217
- '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9274c91aa',
218
-
219
- '97b6b7f0e47f531b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722',
220
-
221
- '9778397bd097c36b0b6fc9210c91aa', '97b6b7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722',
222
-
223
- '7f0e397bd07f595b0b0bc920fb0722', '9778397bd097c36b0b6fc9210c8dc2', '977837f0e37f149b0723b0787b0721',
224
-
225
- '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f5307f595b0b0bc920fb0722', '7f0e397bd097c35b0b6fc9210c8dc2',
226
-
227
- '977837f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e37f1487f595b0b0bb0b6fb0722',
228
-
229
- '7f0e397bd097c35b0b6fc9210c8dc2', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',
230
-
231
- '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722', '977837f0e37f14998082b0787b06bd',
232
-
233
- '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd097c35b0b6fc920fb0722',
234
-
235
- '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722',
236
-
237
- '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',
238
-
239
- '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14998082b0787b06bd',
240
-
241
- '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0b0bb0b6fb0722', '7f0e397bd07f595b0b0bc920fb0722',
242
-
243
- '977837f0e37f14998082b0723b06bd', '7f07e7f0e37f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722',
244
-
245
- '7f0e397bd07f595b0b0bc920fb0722', '977837f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b0721',
246
-
247
- '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f595b0b0bb0b6fb0722', '7f0e37f0e37f14898082b0723b02d5',
248
-
249
- '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e37f1487f531b0b0bb0b6fb0722',
250
-
251
- '7f0e37f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',
252
-
253
- '7f0e37f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd',
254
-
255
- '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e37f14898082b072297c35',
256
-
257
- '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722',
258
-
259
- '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f149b0723b0787b0721',
260
-
261
- '7f0e27f1487f531b0b0bb0b6fb0722', '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14998082b0723b06bd',
262
-
263
- '7f07e7f0e47f149b0723b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722', '7f0e37f0e366aa89801eb072297c35',
264
-
265
- '7ec967f0e37f14998082b0723b06bd', '7f07e7f0e37f14998083b0787b0721', '7f0e27f0e47f531b0723b0b6fb0722',
266
-
267
- '7f0e37f0e366aa89801eb072297c35', '7ec967f0e37f14898082b0723b02d5', '7f07e7f0e37f14998082b0787b0721',
268
-
269
- '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66aa89801e9808297c35', '665f67f0e37f14898082b0723b02d5',
270
-
271
- '7ec967f0e37f14998082b0787b0721', '7f07e7f0e47f531b0723b0b6fb0722', '7f0e36665b66a449801e9808297c35',
272
-
273
- '665f67f0e37f14898082b0723b02d5', '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721',
274
-
275
- '7f0e36665b66a449801e9808297c35', '665f67f0e37f14898082b072297c35', '7ec967f0e37f14998082b0787b06bd',
276
-
277
- '7f07e7f0e47f531b0723b0b6fb0721', '7f0e26665b66a449801e9808297c35', '665f67f0e37f1489801eb072297c35',
278
-
279
- '7ec967f0e37f14998082b0787b06bd', '7f07e7f0e47f531b0723b0b6fb0721', '7f0e27f1487f531b0b0bb0b6fb0722']
280
-
281
-
282
-
283
- /**
284
-
285
- * 数字转中文速查表
286
-
287
- * @Array Of Property
288
-
289
- * @trans ['日','一','二','三','四','五','六','七','八','九','十']
290
-
291
- * @return Cn string
292
-
293
- */
294
-
295
- var nStr1 = ['\u65e5', '\u4e00', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341']
296
-
297
-
298
-
299
- /**
300
-
301
- * 日期转农历称呼速查表
302
-
303
- * @Array Of Property
304
-
305
- * @trans ['初','十','廿','卅']
306
-
307
- * @return Cn string
308
-
309
- */
310
-
311
- var nStr2 = ['\u521d', '\u5341', '\u5eff', '\u5345']
312
-
313
-
314
-
315
- /**
316
-
317
- * 月份转农历称呼速查表
318
-
319
- * @Array Of Property
320
-
321
- * @trans ['正','一','二','三','四','五','六','七','八','九','十','冬','腊']
322
-
323
- * @return Cn string
324
-
325
- */
326
-
327
- var nStr3 = ['\u6b63', '\u4e8c', '\u4e09', '\u56db', '\u4e94', '\u516d', '\u4e03', '\u516b', '\u4e5d', '\u5341', '\u51ac', '\u814a']
328
-
329
-
330
-
331
- /**
332
-
333
- * 返回农历y年一整年的总天数
334
-
335
- * @param lunar Year
336
-
337
- * @return Number
338
-
339
- * @eg:var count = calendar.lYearDays(1987) ;//count=387
340
-
341
- */
342
-
343
- function lYearDays (y) {
344
-
345
- var i
346
-
347
- var sum = 348
348
-
349
- for (i = 0x8000; i > 0x8; i >>= 1) { sum += (lunarInfo[y - 1900] & i) ? 1 : 0 }
350
-
351
- return (sum + leapDays(y))
352
-
353
- }
354
-
355
-
356
-
357
- /**
358
-
359
- * 返回农历y年闰月是哪个月;若y年没有闰月 则返回0
360
-
361
- * @param lunar Year
362
-
363
- * @return Number (0-12)
364
-
365
- * @eg:var leapMonth = calendar.leapMonth(1987) ;//leapMonth=6
366
-
367
- */
368
-
369
- function leapMonth (y) { // 闰字编码 \u95f0
370
-
371
- return (lunarInfo[y - 1900] & 0xf)
372
-
373
- }
374
-
375
-
376
-
377
- /**
378
-
379
- * 返回农历y年闰月的天数 若该年没有闰月则返回0
380
-
381
- * @param lunar Year
382
-
383
- * @return Number (0、29、30)
384
-
385
- * @eg:var leapMonthDay = calendar.leapDays(1987) ;//leapMonthDay=29
386
-
387
- */
388
-
389
- function leapDays (y) {
390
-
391
- if (leapMonth(y)) {
392
-
393
- return ((lunarInfo[y - 1900] & 0x10000) ? 30 : 29)
394
-
395
- }
396
-
397
- return (0)
398
-
399
- }
400
-
401
-
402
-
403
- /**
404
-
405
- * 返回农历y年m月(非闰月)的总天数,计算m为闰月时的天数请使用leapDays方法
406
-
407
- * @param lunar Year
408
-
409
- * @return Number (-1、29、30)
410
-
411
- * @eg:var MonthDay = calendar.monthDays(1987,9) ;//MonthDay=29
412
-
413
- */
414
-
415
- function monthDays (y, m) {
416
-
417
- if (m > 12 || m < 1) { return -1 }// 月份参数从1至12,参数错误返回-1
418
-
419
- return ((lunarInfo[y - 1900] & (0x10000 >> m)) ? 30 : 29)
420
-
421
- }
422
-
423
-
424
-
425
- /**
426
-
427
- * 返回公历(!)y年m月的天数
428
-
429
- * @param solar Year
430
-
431
- * @return Number (-1、28、29、30、31)
432
-
433
- * @eg:var solarMonthDay = calendar.leapDays(1987) ;//solarMonthDay=30
434
-
435
- */
436
-
437
- function solarDays (y, m) {
438
-
439
- if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1
440
-
441
- var ms = m - 1
442
-
443
- if (ms === 1) { // 2月份的闰平规律测算后确认返回28或29
444
-
445
- return (((y % 4 === 0) && (y % 100 !== 0) || (y % 400 === 0)) ? 29 : 28)
446
-
447
- } else {
448
-
449
- return (solarMonth[ms])
450
-
451
- }
452
-
453
- }
454
-
455
-
456
-
457
- /**
458
-
459
- * 农历年份转换为干支纪年
460
-
461
- * @param lYear 农历年的年份数
462
-
463
- * @return Cn string
464
-
465
- */
466
-
467
- function toGanZhiYear (lYear) {
468
-
469
- var ganKey = (lYear - 3) % 10
470
-
471
- var zhiKey = (lYear - 3) % 12
472
-
473
- if (ganKey === 0) ganKey = 10 // 如果余数为0则为最后一个天干
474
-
475
- if (zhiKey === 0) zhiKey = 12 // 如果余数为0则为最后一个地支
476
-
477
- return Gan[ganKey - 1] + Zhi[zhiKey - 1]
478
-
479
- }
480
-
481
-
482
-
483
- /**
484
-
485
- * 公历月、日判断所属星座
486
-
487
- * @param cMonth [description]
488
-
489
- * @param cDay [description]
490
-
491
- * @return Cn string
492
-
493
- */
494
-
495
- function toAstro (cMonth, cDay) {
496
-
497
- var s = '\u9b54\u7faf\u6c34\u74f6\u53cc\u9c7c\u767d\u7f8a\u91d1\u725b\u53cc\u5b50\u5de8\u87f9\u72ee\u5b50\u5904\u5973\u5929\u79e4\u5929\u874e\u5c04\u624b\u9b54\u7faf'
498
-
499
- var arr = [20, 19, 21, 21, 21, 22, 23, 23, 23, 23, 22, 22]
500
-
501
- return s.substr(cMonth * 2 - (cDay < arr[cMonth - 1] ? 2 : 0), 2) + '\u5ea7' // 座
502
-
503
- }
504
-
505
-
506
-
507
- /**
508
-
509
- * 传入offset偏移量返回干支
510
-
511
- * @param offset 相对甲子的偏移量
512
-
513
- * @return Cn string
514
-
515
- */
516
-
517
- function toGanZhi (offset) {
518
-
519
- return Gan[offset % 10] + Zhi[offset % 12]
520
-
521
- }
522
-
523
-
524
-
525
- /**
526
-
527
- * 传入公历(!)y年获得该年第n个节气的公历日期
528
-
529
- * @param y公历年(1900-2100);n二十四节气中的第几个节气(1~24);从n=1(小寒)算起
530
-
531
- * @return day Number
532
-
533
- * @eg:var _24 = calendar.getTerm(1987,3) ;//_24=4;意即1987年2月4日立春
534
-
535
- */
536
-
537
- function getTerm (y, n) {
538
-
539
- if (y < 1900 || y > 2100) { return -1 }
540
-
541
- if (n < 1 || n > 24) { return -1 }
542
-
543
- var _table = sTermInfo[y - 1900]
544
-
545
- var _info = [
546
-
547
- parseInt('0x' + _table.substr(0, 5)).toString(),
548
-
549
- parseInt('0x' + _table.substr(5, 5)).toString(),
550
-
551
- parseInt('0x' + _table.substr(10, 5)).toString(),
552
-
553
- parseInt('0x' + _table.substr(15, 5)).toString(),
554
-
555
- parseInt('0x' + _table.substr(20, 5)).toString(),
556
-
557
- parseInt('0x' + _table.substr(25, 5)).toString()
558
-
559
- ]
560
-
561
- var _calday = [
562
-
563
- _info[0].substr(0, 1),
564
-
565
- _info[0].substr(1, 2),
566
-
567
- _info[0].substr(3, 1),
568
-
569
- _info[0].substr(4, 2),
570
-
571
-
572
-
573
- _info[1].substr(0, 1),
574
-
575
- _info[1].substr(1, 2),
576
-
577
- _info[1].substr(3, 1),
578
-
579
- _info[1].substr(4, 2),
580
-
581
-
582
-
583
- _info[2].substr(0, 1),
584
-
585
- _info[2].substr(1, 2),
586
-
587
- _info[2].substr(3, 1),
588
-
589
- _info[2].substr(4, 2),
590
-
591
-
592
-
593
- _info[3].substr(0, 1),
594
-
595
- _info[3].substr(1, 2),
596
-
597
- _info[3].substr(3, 1),
598
-
599
- _info[3].substr(4, 2),
600
-
601
-
602
-
603
- _info[4].substr(0, 1),
604
-
605
- _info[4].substr(1, 2),
606
-
607
- _info[4].substr(3, 1),
608
-
609
- _info[4].substr(4, 2),
610
-
611
-
612
-
613
- _info[5].substr(0, 1),
614
-
615
- _info[5].substr(1, 2),
616
-
617
- _info[5].substr(3, 1),
618
-
619
- _info[5].substr(4, 2)
620
-
621
- ]
622
-
623
- return parseInt(_calday[n - 1])
624
-
625
- }
626
-
627
-
628
-
629
- /**
630
-
631
- * 传入农历数字月份返回汉语通俗表示法
632
-
633
- * @param lunar month
634
-
635
- * @return Cn string
636
-
637
- * @eg:var cnMonth = calendar.toChinaMonth(12) ;//cnMonth='腊月'
638
-
639
- */
640
-
641
- function toChinaMonth (m) { // 月 => \u6708
642
-
643
- if (m > 12 || m < 1) { return -1 } // 若参数错误 返回-1
644
-
645
- var s = nStr3[m - 1]
646
-
647
- s += '\u6708' // 加上月字
648
-
649
- return s
650
-
651
- }
652
-
653
-
654
-
655
- /**
656
-
657
- * 传入农历日期数字返回汉字表示法
658
-
659
- * @param lunar day
660
-
661
- * @return Cn string
662
-
663
- * @eg:var cnDay = calendar.toChinaDay(21) ;//cnMonth='廿一'
664
-
665
- */
666
-
667
- function toChinaDay (d) { // 日 => \u65e5
668
-
669
- var s
670
-
671
- switch (d) {
672
-
673
- case 10:
674
-
675
- s = '\u521d\u5341'
676
-
677
- break
678
-
679
- case 20:
680
-
681
- s = '\u4e8c\u5341'
682
-
683
- break
684
-
685
- case 30:
686
-
687
- s = '\u4e09\u5341'
688
-
689
- break
690
-
691
- default :
692
-
693
- s = nStr2[Math.floor(d / 10)]
694
-
695
- s += nStr1[d % 10]
696
-
697
- }
698
-
699
- return (s)
700
-
701
- }
702
-
703
-
704
-
705
- /**
706
-
707
- * 年份转生肖[!仅能大致转换] => 精确划分生肖分界线是“立春”
708
-
709
- * @param y year
710
-
711
- * @return Cn string
712
-
713
- * @eg:var animal = calendar.getAnimal(1987) ;//animal='兔'
714
-
715
- */
716
-
717
- function getAnimal (y) {
718
-
719
- return Animals[(y - 4) % 12]
720
-
721
- }
722
-
723
-
724
-
725
- /**
726
-
727
- * 传入阳历年月日获得详细的公历、农历object信息 <=>JSON
728
-
729
- * @param y solar year
730
-
731
- * @param m solar month
732
-
733
- * @param d solar day
734
-
735
- * @return JSON object
736
-
737
- * @eg:console.log(calendar.solar2lunar(1987,11,01));
738
-
739
- */
740
-
741
- function solar2lunar (y, m, d) { // 参数区间1900.1.31~2100.12.31
742
-
743
- // 年份限定、上限
744
-
745
- if (y < 1900 || y > 2100) {
746
-
747
- return -1 // undefined转换为数字变为NaN
748
-
749
- }
750
-
751
- // 公历传参最下限
752
-
753
- if (y === 1900 && m === 1 && d < 31) {
754
-
755
- return -1
756
-
757
- }
758
-
759
- // 未传参 获得当天
760
-
761
- var objDate = null
762
-
763
- if (!y) {
764
-
765
- objDate = new Date()
766
-
767
- } else {
768
-
769
- objDate = new Date(y, parseInt(m) - 1, d)
770
-
771
- }
772
-
773
- var i
774
-
775
- var leap = 0
776
-
777
- var temp = 0
778
-
779
- // 修正ymd参数
780
-
781
- y = objDate.getFullYear()
782
-
783
- m = objDate.getMonth() + 1
784
-
785
- d = objDate.getDate()
786
-
787
- var offset = (Date.UTC(objDate.getFullYear(), objDate.getMonth(), objDate.getDate()) - Date.UTC(1900, 0, 31)) / 86400000
788
-
789
- for (i = 1900; i < 2101 && offset > 0; i++) {
790
-
791
- temp = lYearDays(i)
792
-
793
- offset -= temp
794
-
795
- }
796
-
797
- if (offset < 0) {
798
-
799
- offset += temp; i--
800
-
801
- }
802
-
803
-
804
-
805
- // 是否今天
806
-
807
- var isTodayObj = new Date()
808
-
809
- var isToday = false
810
-
811
- if (isTodayObj.getFullYear() === y && isTodayObj.getMonth() + 1 === m && isTodayObj.getDate() === d) {
812
-
813
- isToday = true
814
-
815
- }
816
-
817
- // 星期几
818
-
819
- var nWeek = objDate.getDay()
820
-
821
- var cWeek = nStr1[nWeek]
822
-
823
- // 数字表示周几顺应天朝周一开始的惯例
824
-
825
- if (nWeek === 0) {
826
-
827
- nWeek = 7
828
-
829
- }
830
-
831
- // 农历年
832
-
833
- var year = i
834
-
835
- leap = leapMonth(i) // 闰哪个月
836
-
837
- var isLeap = false
838
-
839
-
840
-
841
- // 效验闰月
842
-
843
- for (i = 1; i < 13 && offset > 0; i++) {
844
-
845
- // 闰月
846
-
847
- if (leap > 0 && i === (leap + 1) && isLeap === false) {
848
-
849
- --i
850
-
851
- isLeap = true; temp = leapDays(year) // 计算农历闰月天数
852
-
853
- } else {
854
-
855
- temp = monthDays(year, i)// 计算农历普通月天数
856
-
857
- }
858
-
859
- // 解除闰月
860
-
861
- if (isLeap === true && i === (leap + 1)) { isLeap = false }
862
-
863
- offset -= temp
864
-
865
- }
866
-
867
- // 闰月导致数组下标重叠取反
868
-
869
- if (offset === 0 && leap > 0 && i === leap + 1) {
870
-
871
- if (isLeap) {
872
-
873
- isLeap = false
874
-
875
- } else {
876
-
877
- isLeap = true; --i
878
-
879
- }
880
-
881
- }
882
-
883
- if (offset < 0) {
884
-
885
- offset += temp; --i
886
-
887
- }
888
-
889
- // 农历月
890
-
891
- var month = i
892
-
893
- // 农历日
894
-
895
- var day = offset + 1
896
-
897
- // 天干地支处理
898
-
899
- var sm = m - 1
900
-
901
- var gzY = toGanZhiYear(year)
902
-
903
-
904
-
905
- // 当月的两个节气
906
-
907
- // bugfix-2017-7-24 11:03:38 use lunar Year Param `y` Not `year`
908
-
909
- var firstNode = getTerm(y, (m * 2 - 1)) // 返回当月「节」为几日开始
910
-
911
- var secondNode = getTerm(y, (m * 2)) // 返回当月「节」为几日开始
912
-
913
-
914
-
915
- // 依据12节气修正干支月
916
-
917
- var gzM = toGanZhi((y - 1900) * 12 + m + 11)
918
-
919
- if (d >= firstNode) {
920
-
921
- gzM = toGanZhi((y - 1900) * 12 + m + 12)
922
-
923
- }
924
-
925
- // 传入的日期的节气与否
926
-
927
- var isTerm = false
928
-
929
- var Term = null
930
-
931
- if (firstNode === d) {
932
-
933
- isTerm = true
934
-
935
- Term = solarTerm[m * 2 - 2]
936
-
937
- }
938
-
939
- if (secondNode === d) {
940
-
941
- isTerm = true
942
-
943
- Term = solarTerm[m * 2 - 1]
944
-
945
- }
946
-
947
- // 日柱 当月一日与 1900/1/1 相差天数
948
-
949
- var dayCyclical = Date.UTC(y, sm, 1, 0, 0, 0, 0) / 86400000 + 25567 + 10
950
-
951
- var gzD = toGanZhi(dayCyclical + d - 1)
952
-
953
- // 该日期所属的星座
954
-
955
- var astro = toAstro(m, d)
956
-
957
- return {'lYear': year, 'lMonth': month, 'lDay': day, 'Animal': getAnimal(year), 'IMonthCn': (isLeap ? '\u95f0' : '') + toChinaMonth(month), 'IDayCn': toChinaDay(day), 'cYear': y, 'cMonth': m, 'cDay': d, 'gzYear': gzY, 'gzMonth': gzM, 'gzDay': gzD, 'isToday': isToday, 'isLeap': isLeap, 'nWeek': nWeek, 'ncWeek': '\u661f\u671f' + cWeek, 'isTerm': isTerm, 'Term': Term, 'astro': astro}
958
-
959
- }
960
-
961
-
962
-
963
-
964
-
965
- var calendarFormatter= {
966
-
967
- // 传入阳历年月日获得详细的公历、农历object信息 <=>JSON
968
-
969
- solar2lunar:function(y, m, d){ // 参数区间1900.1.31~2100.12.31
970
-
971
- return solar2lunar(y, m, d)
972
-
973
- },
974
-
975
- /**
976
-
977
- * 传入农历年月日以及传入的月份是否闰月获得详细的公历、农历object信息 <=>JSON
978
-
979
- * @param y lunar year
980
-
981
- * @param m lunar month
982
-
983
- * @param d lunar day
984
-
985
- * @param isLeapMonth lunar month is leap or not.[如果是农历闰月第四个参数赋值true即可]
986
-
987
- * @return JSON object
988
-
989
- * @eg:console.log(calendar.lunar2solar(1987,9,10));
990
-
991
- */
992
-
993
- lunar2solar: function (y, m, d, isLeapMonth) { // 参数区间1900.1.31~2100.12.1
994
-
995
- isLeapMonth = !!isLeapMonth
996
-
997
- if (isLeapMonth && (leapMonth !== m)) { return -1 }// 传参要求计算该闰月公历 但该年得出的闰月与传参的月份并不同
998
-
999
- if (y === 2100 && m === 12 && d > 1 || y === 1900 && m === 1 && d < 31) { return -1 } // 超出了最大极限值
1000
-
1001
- var day = monthDays(y, m)
1002
-
1003
- var _day = day
1004
-
1005
- // bugFix 2016-9-25
1006
-
1007
- // if month is leap, _day use leapDays method
1008
-
1009
- if (isLeapMonth) {
1010
-
1011
- _day = leapDays(y, m)
1012
-
1013
- }
1014
-
1015
- if (y < 1900 || y > 2100 || d > _day) { return -1 }// 参数合法性效验
1016
-
1017
-
1018
-
1019
- // 计算农历的时间差
1020
-
1021
- var offset = 0
1022
-
1023
- for (var i = 1900; i < y; i++) {
1024
-
1025
- offset += lYearDays(i)
1026
-
1027
- }
1028
-
1029
- var leap = 0
1030
-
1031
- var isAdd = false
1032
-
1033
- for (i = 1; i < m; i++) {
1034
-
1035
- leap = leapMonth(y)
1036
-
1037
- if (!isAdd) { // 处理闰月
1038
-
1039
- if (leap <= i && leap > 0) {
1040
-
1041
- offset += leapDays(y); isAdd = true
1042
-
1043
- }
1044
-
1045
- }
1046
-
1047
- offset += monthDays(y, i)
1048
-
1049
- }
1050
-
1051
- // 转换闰月农历 需补充该年闰月的前一个月的时差
1052
-
1053
- if (isLeapMonth) { offset += day }
1054
-
1055
- // 1900年农历正月一日的公历时间为1900年1月30日0时0分0秒(该时间也是本农历的最开始起始点)
1056
-
1057
- var stmap = Date.UTC(1900, 1, 30, 0, 0, 0)
1058
-
1059
- var calObj = new Date((offset + d - 31) * 86400000 + stmap)
1060
-
1061
- var cY = calObj.getUTCFullYear()
1062
-
1063
- var cM = calObj.getUTCMonth() + 1
1064
-
1065
- var cD = calObj.getUTCDate()
1066
-
1067
- return solar2lunar(cY, cM, cD)
1068
-
1069
- }
1070
-
1071
- }
1
+ var lunarInfo=[19416,19168,42352,21717,53856,55632,91476,22176,39632,21970,19168,42422,42192,53840,119381,46400,54944,44450,38320,84343,18800,42160,46261,27216,27968,109396,11104,38256,21234,18800,25958,54432,59984,28309,23248,11104,100067,37600,116951,51536,54432,120998,46416,22176,107956,9680,37584,53938,43344,46423,27808,46416,86869,19872,42416,83315,21168,43432,59728,27296,44710,43856,19296,43748,42352,21088,62051,55632,23383,22176,38608,19925,19152,42192,54484,53840,54616,46400,46752,103846,38320,18864,43380,42160,45690,27216,27968,44870,43872,38256,19189,18800,25776,29859,59984,27480,23232,43872,38613,37600,51552,55636,54432,55888,30034,22176,43959,9680,37584,51893,43344,46240,47780,44368,21977,19360,42416,86390,21168,43312,31060,27296,44368,23378,19296,42726,42208,53856,60005,54576,23200,30371,38608,19195,19152,42192,118966,53840,54560,56645,46496,22224,21938,18864,42359,42160,43600,111189,27936,44448,84835,37744,18936,18800,25776,92326,59984,27424,108228,43744,41696,53987,51552,54615,54432,55888,23893,22176,42704,21972,21200,43448,43344,46240,46758,44368,21920,43940,42416,21168,45683,26928,29495,27296,44368,84821,19296,42352,21732,53600,59752,54560,55968,92838,22224,19168,43476,41680,53584,62034,54560],solarMonth=[31,28,31,30,31,30,31,31,30,31,30,31],Gan=["\u7532","\u4E59","\u4E19","\u4E01","\u620A","\u5DF1","\u5E9A","\u8F9B","\u58EC","\u7678"],Zhi=["\u5B50","\u4E11","\u5BC5","\u536F","\u8FB0","\u5DF3","\u5348","\u672A","\u7533","\u9149","\u620C","\u4EA5"],Animals=["\u9F20","\u725B","\u864E","\u5154","\u9F99","\u86C7","\u9A6C","\u7F8A","\u7334","\u9E21","\u72D7","\u732A"],solarTerm=["\u5C0F\u5BD2","\u5927\u5BD2","\u7ACB\u6625","\u96E8\u6C34","\u60CA\u86F0","\u6625\u5206","\u6E05\u660E","\u8C37\u96E8","\u7ACB\u590F","\u5C0F\u6EE1","\u8292\u79CD","\u590F\u81F3","\u5C0F\u6691","\u5927\u6691","\u7ACB\u79CB","\u5904\u6691","\u767D\u9732","\u79CB\u5206","\u5BD2\u9732","\u971C\u964D","\u7ACB\u51AC","\u5C0F\u96EA","\u5927\u96EA","\u51AC\u81F3"],sTermInfo=["9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c3598082c95f8c965cc920f","97bd0b06bdb0722c965ce1cfcc920f","b027097bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c359801ec95f8c965cc920f","97bd0b06bdb0722c965ce1cfcc920f","b027097bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c359801ec95f8c965cc920f","97bd0b06bdb0722c965ce1cfcc920f","b027097bd097c36b0b6fc9274c91aa","9778397bd19801ec9210c965cc920e","97b6b97bd19801ec95f8c965cc920f","97bd09801d98082c95f8e1cfcc920f","97bd097bd097c36b0b6fc9210c8dc2","9778397bd197c36c9210c9274c91aa","97b6b97bd19801ec95f8c965cc920e","97bd09801d98082c95f8e1cfcc920f","97bd097bd097c36b0b6fc9210c8dc2","9778397bd097c36c9210c9274c91aa","97b6b97bd19801ec95f8c965cc920e","97bcf97c3598082c95f8e1cfcc920f","97bd097bd097c36b0b6fc9210c8dc2","9778397bd097c36c9210c9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c3598082c95f8c965cc920f","97bd097bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c3598082c95f8c965cc920f","97bd097bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c359801ec95f8c965cc920f","97bd097bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c359801ec95f8c965cc920f","97bd097bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf97c359801ec95f8c965cc920f","97bd097bd07f595b0b6fc920fb0722","9778397bd097c36b0b6fc9210c8dc2","9778397bd19801ec9210c9274c920e","97b6b97bd19801ec95f8c965cc920f","97bd07f5307f595b0b0bc920fb0722","7f0e397bd097c36b0b6fc9210c8dc2","9778397bd097c36c9210c9274c920e","97b6b97bd19801ec95f8c965cc920f","97bd07f5307f595b0b0bc920fb0722","7f0e397bd097c36b0b6fc9210c8dc2","9778397bd097c36c9210c9274c91aa","97b6b97bd19801ec9210c965cc920e","97bd07f1487f595b0b0bc920fb0722","7f0e397bd097c36b0b6fc9210c8dc2","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf7f1487f595b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf7f1487f595b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf7f1487f531b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c965cc920e","97bcf7f1487f531b0b0bb0b6fb0722","7f0e397bd07f595b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b97bd19801ec9210c9274c920e","97bcf7f0e47f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","9778397bd097c36b0b6fc9210c91aa","97b6b97bd197c36c9210c9274c920e","97bcf7f0e47f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","9778397bd097c36b0b6fc9210c8dc2","9778397bd097c36c9210c9274c920e","97b6b7f0e47f531b0723b0b6fb0722","7f0e37f5307f595b0b0bc920fb0722","7f0e397bd097c36b0b6fc9210c8dc2","9778397bd097c36b0b70c9274c91aa","97b6b7f0e47f531b0723b0b6fb0721","7f0e37f1487f595b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc9210c8dc2","9778397bd097c36b0b6fc9274c91aa","97b6b7f0e47f531b0723b0b6fb0721","7f0e27f1487f595b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","9778397bd097c36b0b6fc9274c91aa","97b6b7f0e47f531b0723b0787b0721","7f0e27f0e47f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","9778397bd097c36b0b6fc9210c91aa","97b6b7f0e47f149b0723b0787b0721","7f0e27f0e47f531b0723b0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","9778397bd097c36b0b6fc9210c8dc2","977837f0e37f149b0723b0787b0721","7f07e7f0e47f531b0723b0b6fb0722","7f0e37f5307f595b0b0bc920fb0722","7f0e397bd097c35b0b6fc9210c8dc2","977837f0e37f14998082b0787b0721","7f07e7f0e47f531b0723b0b6fb0721","7f0e37f1487f595b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc9210c8dc2","977837f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","977837f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd097c35b0b6fc920fb0722","977837f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","977837f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","977837f0e37f14998082b0787b06bd","7f07e7f0e47f149b0723b0787b0721","7f0e27f0e47f531b0b0bb0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","977837f0e37f14998082b0723b06bd","7f07e7f0e37f149b0723b0787b0721","7f0e27f0e47f531b0723b0b6fb0722","7f0e397bd07f595b0b0bc920fb0722","977837f0e37f14898082b0723b02d5","7ec967f0e37f14998082b0787b0721","7f07e7f0e47f531b0723b0b6fb0722","7f0e37f1487f595b0b0bb0b6fb0722","7f0e37f0e37f14898082b0723b02d5","7ec967f0e37f14998082b0787b0721","7f07e7f0e47f531b0723b0b6fb0722","7f0e37f1487f531b0b0bb0b6fb0722","7f0e37f0e37f14898082b0723b02d5","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e37f1487f531b0b0bb0b6fb0722","7f0e37f0e37f14898082b072297c35","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e37f0e37f14898082b072297c35","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e37f0e366aa89801eb072297c35","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f149b0723b0787b0721","7f0e27f1487f531b0b0bb0b6fb0722","7f0e37f0e366aa89801eb072297c35","7ec967f0e37f14998082b0723b06bd","7f07e7f0e47f149b0723b0787b0721","7f0e27f0e47f531b0723b0b6fb0722","7f0e37f0e366aa89801eb072297c35","7ec967f0e37f14998082b0723b06bd","7f07e7f0e37f14998083b0787b0721","7f0e27f0e47f531b0723b0b6fb0722","7f0e37f0e366aa89801eb072297c35","7ec967f0e37f14898082b0723b02d5","7f07e7f0e37f14998082b0787b0721","7f07e7f0e47f531b0723b0b6fb0722","7f0e36665b66aa89801e9808297c35","665f67f0e37f14898082b0723b02d5","7ec967f0e37f14998082b0787b0721","7f07e7f0e47f531b0723b0b6fb0722","7f0e36665b66a449801e9808297c35","665f67f0e37f14898082b0723b02d5","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e36665b66a449801e9808297c35","665f67f0e37f14898082b072297c35","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e26665b66a449801e9808297c35","665f67f0e37f1489801eb072297c35","7ec967f0e37f14998082b0787b06bd","7f07e7f0e47f531b0723b0b6fb0721","7f0e27f1487f531b0b0bb0b6fb0722"],nStr1=["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341"],nStr2=["\u521D","\u5341","\u5EFF","\u5345"],nStr3=["\u6B63","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u51AC","\u814A"];function lYearDays(b){var f,e=348;for(f=32768;f>8;f>>=1)e+=lunarInfo[b-1900]&f?1:0;return e+leapDays(b)}function leapMonth(b){return lunarInfo[b-1900]&15}function leapDays(b){return leapMonth(b)?lunarInfo[b-1900]&65536?30:29:0}function monthDays(b,f){return f>12||f<1?-1:lunarInfo[b-1900]&65536>>f?30:29}function solarDays(b,f){if(f>12||f<1)return-1;var e=f-1;return e===1?b%4===0&&b%100!==0||b%400===0?29:28:solarMonth[e]}function toGanZhiYear(b){var f=(b-3)%10,e=(b-3)%12;return f===0&&(f=10),e===0&&(e=12),Gan[f-1]+Zhi[e-1]}function toAstro(b,f){var e="\u9B54\u7FAF\u6C34\u74F6\u53CC\u9C7C\u767D\u7F8A\u91D1\u725B\u53CC\u5B50\u5DE8\u87F9\u72EE\u5B50\u5904\u5973\u5929\u79E4\u5929\u874E\u5C04\u624B\u9B54\u7FAF",c=[20,19,21,21,21,22,23,23,23,23,22,22];return e.substr(b*2-(f<c[b-1]?2:0),2)+"\u5EA7"}function toGanZhi(b){return Gan[b%10]+Zhi[b%12]}function getTerm(b,f){if(b<1900||b>2100||f<1||f>24)return-1;var e=sTermInfo[b-1900],c=[parseInt("0x"+e.substr(0,5)).toString(),parseInt("0x"+e.substr(5,5)).toString(),parseInt("0x"+e.substr(10,5)).toString(),parseInt("0x"+e.substr(15,5)).toString(),parseInt("0x"+e.substr(20,5)).toString(),parseInt("0x"+e.substr(25,5)).toString()],a=[c[0].substr(0,1),c[0].substr(1,2),c[0].substr(3,1),c[0].substr(4,2),c[1].substr(0,1),c[1].substr(1,2),c[1].substr(3,1),c[1].substr(4,2),c[2].substr(0,1),c[2].substr(1,2),c[2].substr(3,1),c[2].substr(4,2),c[3].substr(0,1),c[3].substr(1,2),c[3].substr(3,1),c[3].substr(4,2),c[4].substr(0,1),c[4].substr(1,2),c[4].substr(3,1),c[4].substr(4,2),c[5].substr(0,1),c[5].substr(1,2),c[5].substr(3,1),c[5].substr(4,2)];return parseInt(a[f-1])}function toChinaMonth(b){if(b>12||b<1)return-1;var f=nStr3[b-1];return f+="\u6708",f}function toChinaDay(b){var f;switch(b){case 10:f="\u521D\u5341";break;case 20:f="\u4E8C\u5341";break;case 30:f="\u4E09\u5341";break;default:f=nStr2[Math.floor(b/10)],f+=nStr1[b%10]}return f}function getAnimal(b){return Animals[(b-4)%12]}function solar2lunar(b,f,e){if(b<1900||b>2100||b===1900&&f===1&&e<31)return-1;var c=null;b?c=new Date(b,parseInt(f)-1,e):c=new Date;var a,r=0,d=0;b=c.getFullYear(),f=c.getMonth()+1,e=c.getDate();var u=(Date.UTC(c.getFullYear(),c.getMonth(),c.getDate())-Date.UTC(1900,0,31))/864e5;for(a=1900;a<2101&&u>0;a++)d=lYearDays(a),u-=d;u<0&&(u+=d,a--);var t=new Date,i=!1;t.getFullYear()===b&&t.getMonth()+1===f&&t.getDate()===e&&(i=!0);var n=c.getDay(),o=nStr1[n];n===0&&(n=7);var s=a;r=leapMonth(a);var x=!1;for(a=1;a<13&&u>0;a++)r>0&&a===r+1&&x===!1?(--a,x=!0,d=leapDays(s)):d=monthDays(s,a),x===!0&&a===r+1&&(x=!1),u-=d;u===0&&r>0&&a===r+1&&(x?x=!1:(x=!0,--a)),u<0&&(u+=d,--a);var v=a,D=u+1,p=f-1,C=toGanZhiYear(s),T=getTerm(b,f*2-1),I=getTerm(b,f*2),h=toGanZhi((b-1900)*12+f+11);e>=T&&(h=toGanZhi((b-1900)*12+f+12));var l=!1,g=null;T===e&&(l=!0,g=solarTerm[f*2-2]),I===e&&(l=!0,g=solarTerm[f*2-1]);var Y=Date.UTC(b,p,1,0,0,0,0)/864e5+25567+10,M=toGanZhi(Y+e-1),S=toAstro(f,e);return{lYear:s,lMonth:v,lDay:D,Animal:getAnimal(s),IMonthCn:(x?"\u95F0":"")+toChinaMonth(v),IDayCn:toChinaDay(D),cYear:b,cMonth:f,cDay:e,gzYear:C,gzMonth:h,gzDay:M,isToday:i,isLeap:x,nWeek:n,ncWeek:"\u661F\u671F"+o,isTerm:l,Term:g,astro:S}}var calendarFormatter={solar2lunar:function(b,f,e){return solar2lunar(b,f,e)},lunar2solar:function(b,f,e,c){if(c=!!c,c&&leapMonth!==f||b===2100&&f===12&&e>1||b===1900&&f===1&&e<31)return-1;var a=monthDays(b,f),r=a;if(c&&(r=leapDays(b,f)),b<1900||b>2100||e>r)return-1;for(var d=0,u=1900;u<b;u++)d+=lYearDays(u);var t=0,i=!1;for(u=1;u<f;u++)t=leapMonth(b),i||t<=u&&t>0&&(d+=leapDays(b),i=!0),d+=monthDays(b,u);c&&(d+=a);var n=Date.UTC(1900,1,30,0,0,0),o=new Date((d+e-31)*864e5+n),s=o.getUTCFullYear(),x=o.getUTCMonth()+1,v=o.getUTCDate();return solar2lunar(s,x,v)}};