when_exe 0.2.100 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (193) hide show
  1. data/LICENSE.ja.txt +25 -25
  2. data/LICENSE.txt +31 -31
  3. data/bin/irb.rc +5 -0
  4. data/bin/locales.rb +2 -2
  5. data/bin/when.rb +16 -0
  6. data/bin/when.rb.config +7 -0
  7. data/lib/when_exe.rb +616 -14
  8. data/lib/when_exe/basictypes.rb +615 -0
  9. data/lib/when_exe/calendartypes.rb +1700 -0
  10. data/lib/when_exe/coordinates.rb +1936 -0
  11. data/lib/when_exe/core/compatibility.rb +54 -0
  12. data/lib/when_exe/core/duration.rb +72 -72
  13. data/lib/when_exe/core/extension.rb +382 -0
  14. data/lib/when_exe/ephemeris.rb +1845 -0
  15. data/lib/when_exe/googlecalendar.rb +140 -0
  16. data/lib/when_exe/icalendar.rb +1587 -0
  17. data/lib/when_exe/inspect.rb +1237 -0
  18. data/lib/when_exe/locales/af.rb +90 -0
  19. data/lib/when_exe/locales/ar.rb +145 -0
  20. data/lib/when_exe/locales/az.rb +90 -0
  21. data/lib/when_exe/locales/bg.rb +90 -0
  22. data/lib/when_exe/locales/bn.rb +94 -0
  23. data/lib/when_exe/locales/bs.rb +121 -0
  24. data/lib/when_exe/locales/ca.rb +92 -0
  25. data/lib/when_exe/locales/cs.rb +107 -0
  26. data/lib/when_exe/locales/cy.rb +150 -0
  27. data/lib/when_exe/locales/da.rb +84 -0
  28. data/lib/when_exe/locales/de.rb +92 -0
  29. data/lib/when_exe/locales/de_AT.rb +92 -0
  30. data/lib/when_exe/locales/de_CH.rb +92 -0
  31. data/lib/when_exe/locales/el.rb +93 -0
  32. data/lib/when_exe/locales/en.rb +88 -0
  33. data/lib/when_exe/locales/en_AU.rb +88 -0
  34. data/lib/when_exe/locales/en_CA.rb +88 -0
  35. data/lib/when_exe/locales/en_GB.rb +88 -0
  36. data/lib/when_exe/locales/en_IN.rb +88 -0
  37. data/lib/when_exe/locales/en_NZ.rb +88 -0
  38. data/lib/when_exe/locales/eo.rb +89 -0
  39. data/lib/when_exe/locales/es.rb +84 -0
  40. data/lib/when_exe/locales/es_419.rb +84 -0
  41. data/lib/when_exe/locales/es_AR.rb +84 -0
  42. data/lib/when_exe/locales/es_CL.rb +84 -0
  43. data/lib/when_exe/locales/es_CO.rb +84 -0
  44. data/lib/when_exe/locales/es_MX.rb +84 -0
  45. data/lib/when_exe/locales/es_PE.rb +85 -0
  46. data/lib/when_exe/locales/es_VE.rb +84 -0
  47. data/lib/when_exe/locales/et.rb +94 -0
  48. data/lib/when_exe/locales/eu.rb +95 -0
  49. data/lib/when_exe/locales/fa.rb +80 -0
  50. data/lib/when_exe/locales/fi.rb +89 -0
  51. data/lib/when_exe/locales/fr.rb +88 -0
  52. data/lib/when_exe/locales/fr_CA.rb +88 -0
  53. data/lib/when_exe/locales/fr_CH.rb +88 -0
  54. data/lib/when_exe/locales/gl.rb +81 -0
  55. data/lib/when_exe/locales/he.rb +84 -0
  56. data/lib/when_exe/locales/hi.rb +80 -0
  57. data/lib/when_exe/locales/hi_IN.rb +84 -0
  58. data/lib/when_exe/locales/hr.rb +128 -0
  59. data/lib/when_exe/locales/hu.rb +84 -0
  60. data/lib/when_exe/locales/id.rb +89 -0
  61. data/lib/when_exe/locales/is.rb +89 -0
  62. data/lib/when_exe/locales/it.rb +87 -0
  63. data/lib/when_exe/locales/it_CH.rb +87 -0
  64. data/lib/when_exe/locales/ja.rb +78 -0
  65. data/lib/when_exe/locales/kn.rb +86 -0
  66. data/lib/when_exe/locales/ko.rb +78 -0
  67. data/lib/when_exe/locales/links.rb +2342 -0
  68. data/lib/when_exe/locales/lo.rb +123 -0
  69. data/lib/when_exe/locales/locales.rb +91 -0
  70. data/lib/when_exe/locales/lt.rb +111 -0
  71. data/lib/when_exe/locales/lv.rb +118 -0
  72. data/lib/when_exe/locales/mk.rb +93 -0
  73. data/lib/when_exe/locales/mn.rb +80 -0
  74. data/lib/when_exe/locales/nb.rb +81 -0
  75. data/lib/when_exe/locales/ne.rb +81 -0
  76. data/lib/when_exe/locales/nl.rb +92 -0
  77. data/lib/when_exe/locales/nn.rb +73 -0
  78. data/lib/when_exe/locales/or.rb +84 -0
  79. data/lib/when_exe/locales/pl.rb +128 -0
  80. data/lib/when_exe/locales/pt.rb +88 -0
  81. data/lib/when_exe/locales/pt_BR.rb +88 -0
  82. data/lib/when_exe/locales/rm.rb +143 -0
  83. data/lib/when_exe/locales/ro.rb +105 -0
  84. data/lib/when_exe/locales/ru.rb +128 -0
  85. data/lib/when_exe/locales/sk.rb +109 -0
  86. data/lib/when_exe/locales/sl.rb +122 -0
  87. data/lib/when_exe/locales/sr.rb +122 -0
  88. data/lib/when_exe/locales/sv.rb +83 -0
  89. data/lib/when_exe/locales/sw.rb +89 -0
  90. data/lib/when_exe/locales/th.rb +78 -0
  91. data/lib/when_exe/locales/tl.rb +99 -0
  92. data/lib/when_exe/locales/tr.rb +96 -0
  93. data/lib/when_exe/locales/uk.rb +128 -0
  94. data/lib/when_exe/locales/uz.rb +128 -0
  95. data/lib/when_exe/locales/vi.rb +94 -0
  96. data/lib/when_exe/locales/wo.rb +82 -0
  97. data/lib/when_exe/locales/zh_CN.rb +77 -0
  98. data/lib/when_exe/locales/zh_HK.rb +77 -0
  99. data/lib/when_exe/locales/zh_TW.rb +77 -0
  100. data/lib/when_exe/mini_application.rb +252 -0
  101. data/lib/when_exe/parts/enumerator.rb +472 -0
  102. data/lib/when_exe/parts/geometric_complex.rb +379 -0
  103. data/lib/when_exe/parts/locale.rb +513 -0
  104. data/lib/when_exe/parts/method_cash.rb +207 -0
  105. data/lib/when_exe/parts/resource.rb +806 -0
  106. data/lib/when_exe/parts/timezone.rb +182 -0
  107. data/lib/when_exe/region/bahai.rb +145 -0
  108. data/lib/when_exe/region/balinese.rb +627 -0
  109. data/lib/when_exe/region/chinese.rb +896 -0
  110. data/lib/when_exe/region/chinese_calendar.rb +919 -0
  111. data/lib/when_exe/region/chinese_epoch.rb +1245 -0
  112. data/lib/when_exe/region/christian.rb +644 -0
  113. data/lib/when_exe/region/far_east.rb +192 -0
  114. data/lib/when_exe/region/french.rb +66 -0
  115. data/lib/when_exe/region/geologicalage.rb +639 -0
  116. data/lib/when_exe/region/indian.rb +1066 -0
  117. data/lib/when_exe/region/iranian.rb +66 -0
  118. data/lib/when_exe/region/islamic.rb +105 -0
  119. data/lib/when_exe/region/japanese.rb +851 -0
  120. data/lib/when_exe/region/japanese_notes.rb +964 -0
  121. data/lib/when_exe/region/japanese_residues.rb +1149 -0
  122. data/lib/when_exe/region/javanese.rb +228 -0
  123. data/lib/when_exe/region/jewish.rb +127 -0
  124. data/lib/when_exe/region/korean.rb +267 -0
  125. data/lib/when_exe/region/m17n.rb +115 -0
  126. data/lib/when_exe/region/martian.rb +215 -0
  127. data/lib/when_exe/region/mayan.rb +122 -0
  128. data/lib/when_exe/region/moon.rb +333 -0
  129. data/lib/when_exe/region/nihon_shoki.rb +73 -0
  130. data/lib/when_exe/region/planets.rb +585 -0
  131. data/lib/when_exe/region/pope.rb +298 -0
  132. data/lib/when_exe/region/residue.rb +229 -0
  133. data/lib/when_exe/region/roman.rb +325 -0
  134. data/lib/when_exe/region/ryukyu.rb +98 -0
  135. data/lib/when_exe/region/shire.rb +254 -0
  136. data/lib/when_exe/region/sun.rb +210 -0
  137. data/lib/when_exe/region/thai.rb +227 -0
  138. data/lib/when_exe/region/tibetan.rb +233 -0
  139. data/lib/when_exe/region/v50.rb +111 -0
  140. data/lib/when_exe/region/vietnamese.rb +173 -0
  141. data/lib/when_exe/region/world.rb +197 -0
  142. data/lib/when_exe/timestandard.rb +547 -0
  143. data/lib/when_exe/tmduration.rb +330 -330
  144. data/lib/when_exe/tmobjects.rb +1295 -0
  145. data/lib/when_exe/tmposition.rb +1955 -0
  146. data/lib/when_exe/tmreference.rb +1547 -0
  147. data/lib/when_exe/version.rb +10 -3
  148. data/link_to_online_documents +4 -0
  149. data/test/examples/JapanHolidays.ics +456 -0
  150. data/test/examples/Millennium.ics +17 -0
  151. data/test/examples/NewYork.ics +61 -0
  152. data/test/examples/Residue.m17n +135 -0
  153. data/test/examples/Spatial.m17n +179 -0
  154. data/test/examples/Terms.m17n +39 -0
  155. data/test/examples/Test.ics +53 -0
  156. data/test/examples/USA-DST.ics +61 -0
  157. data/test/examples/geometric_complex.rb +41 -0
  158. data/test/examples/sample.xml +14 -0
  159. data/test/examples/today.rb +61 -0
  160. data/test/test.rb +54 -19
  161. data/test/test.rb.config +1 -0
  162. data/test/test/basictypes.rb +368 -0
  163. data/test/test/calendartypes.rb +57 -0
  164. data/test/test/coordinates.rb +380 -0
  165. data/test/test/ephemeris.rb +127 -0
  166. data/test/test/googlecalendar.rb +167 -0
  167. data/test/test/icalendar.rb +848 -0
  168. data/test/test/inspect.rb +115 -0
  169. data/test/test/parts.rb +480 -0
  170. data/test/test/region/chinese.rb +161 -0
  171. data/test/test/region/french.rb +33 -0
  172. data/test/test/region/geologicalage.rb +14 -0
  173. data/test/test/region/indian.rb +55 -0
  174. data/test/test/region/iran.rb +54 -0
  175. data/test/test/region/islamic.rb +18 -0
  176. data/test/test/region/japanese.rb +62 -0
  177. data/test/test/region/jewish.rb +61 -0
  178. data/test/test/region/m17n.rb +181 -0
  179. data/test/test/region/mayan.rb +78 -0
  180. data/test/test/region/moon.rb +14 -0
  181. data/test/test/region/planets.rb +14 -0
  182. data/test/test/region/residue.rb +123 -0
  183. data/test/test/region/sun.rb +14 -0
  184. data/test/test/region/thai.rb +94 -0
  185. data/test/test/region/tibetan.rb +30 -0
  186. data/test/test/tmobjects.rb +356 -57
  187. data/test/test/tmposition.rb +237 -0
  188. data/test/test/tmreference.rb +95 -0
  189. data/when_exe.gemspec +2 -2
  190. metadata +187 -7
  191. data/doc/COPYING +0 -31
  192. data/doc/COPYING.ja +0 -25
  193. data/doc/document_url +0 -1
@@ -0,0 +1,111 @@
1
+ # -*- coding: utf-8 -*-
2
+ =begin
3
+ Copyright (C) 2012-2013 Takashi SUGA
4
+
5
+ You may use and/or modify this file according to the license described in the LICENSE.txt file included in this archive.
6
+ =end
7
+
8
+ # Star specifications derived from Bright Star Catalogue V.50
9
+ #
10
+ # see {http://cdsarc.u-strasbg.fr/viz-bin/Cat?V/50}
11
+ #
12
+ module When::Ephemeris::V50
13
+ klass = When::Ephemeris::Star::Fixed
14
+
15
+ # from http://cdsarc.u-strasbg.fr/viz-bin/Cat?V/50
16
+
17
+ # ID t0 φ θ parallax Δφ Δθ V mag Bayer
18
+ # (deg) (deg) (m") (m"/y) (m"/y) (km/s)
19
+ HR0015 = klass.new(2000.0, 2.09708, 29.09056, 32.0, 136.0, -163.0, -12, 2.06, "Alp And")
20
+ HR0021 = klass.new(2000.0, 2.29458, 59.14972, 72.0, 525.0, -181.0, 12, 2.27, "Bet Cas")
21
+ HR0099 = klass.new(2000.0, 6.57083, -42.30611, 35.0, 203.0, -396.0, 75, 2.39, "Alp Phe")
22
+ HR0168 = klass.new(2000.0, 10.12708, 56.53722, 16.0, 53.0, -32.0, -4, 2.23, "Alp Cas")
23
+ HR0188 = klass.new(2000.0, 10.89750, -17.98667, 61.0, 234.0, 33.0, 13, 2.04, "Bet Cet")
24
+ HR0264 = klass.new(2000.0, 14.17708, 60.71667, 16.0, 26.0, -5.0, -7, 2.47, "Gam Cas")
25
+ HR0337 = klass.new(2000.0, 17.43292, 35.62056, 49.0, 178.0, -114.0, 3, 2.06, "Bet And")
26
+ HR0424 = klass.new(2000.0, 37.95292, 89.26417, 7.0, 38.0, -15.0, -17, 2.02, "Alp UMi")
27
+ HR0472 = klass.new(2000.0, 24.42875, -57.23667, 26.0, 95.0, -35.0, 16, 0.46, "Alp Eri")
28
+ HR0603 = klass.new(2000.0, 30.97500, 42.32972, 13.0, 45.0, -52.0, -12, 2.26, "Gam1 And")
29
+ HR0617 = klass.new(2000.0, 31.79333, 23.46250, 49.0, 190.0, -148.0, -14, 2.00, "Alp Ari")
30
+ HR0936 = klass.new(2000.0, 47.04208, 40.95556, 45.0, 4.0, -1.0, 4, 2.12, "Bet Per")
31
+ HR1017 = klass.new(2000.0, 51.08083, 49.86111, 16.0, 24.0, -25.0, -2, 1.79, "Alp Per")
32
+ HR1457 = klass.new(2000.0, 68.98000, 16.50917, 48.0, 63.0, -190.0, 54, 0.85, "Alp Tau")
33
+ HR1708 = klass.new(2000.0, 79.17250, 45.99806, 73.0, 76.0, -425.0, 30, 0.08, "Alp Aur")
34
+ HR1713 = klass.new(2000.0, 78.63458, -8.20167, 13.0, 0.0, -1.0, 21, 0.12, "Bet Ori")
35
+ HR1790 = klass.new(2000.0, 81.28292, 6.34972, 29.0, -9.0, -14.0, 18, 1.64, "Gam Ori")
36
+ HR1791 = klass.new(2000.0, 81.57292, 28.60750, 28.0, 22.0, -175.0, 9, 1.65, "Bet Tau")
37
+ HR1852 = klass.new(2000.0, 83.00167, -0.29917, 14.0, 1.0, -2.0, 16, 2.23, "Del Ori")
38
+ HR1903 = klass.new(2000.0, 84.05333, -1.20194, -2.0, 1.0, -2.0, 26, 1.70, "Eps Ori")
39
+ HR1948 = klass.new(2000.0, 85.18958, -1.94278, 24.0, 3.0, -2.0, 18, 2.05, "Zet Ori")
40
+ HR2004 = klass.new(2000.0, 86.93917, -9.66972, 15.0, 2.0, -2.0, 21, 2.06, "Kap Ori")
41
+ HR2061 = klass.new(2000.0, 88.79292, 7.40694, 5.0, 26.0, 9.0, 21, 0.50, "Alp Ori")
42
+ HR2088 = klass.new(2000.0, 89.88208, 44.94750, 41.0, -57.0, 0.0, -18, 1.90, "Bet Aur")
43
+ HR2294 = klass.new(2000.0, 95.67500, -17.95583, 19.0, -6.0, 0.0, 34, 1.98, "Bet CMa")
44
+ HR2326 = klass.new(2000.0, 95.98792, -52.69583, 28.0, 22.0, 21.0, 21, -0.72, "Alp Car")
45
+ HR2421 = klass.new(2000.0, 99.42792, 16.39917, 33.0, 42.0, -42.0, -13, 1.93, "Gam Gem")
46
+ HR2491 = klass.new(2000.0, 101.28708, -16.71611, 375.0, -553.0, -1205.0, -8, -1.46, "Alp CMa")
47
+ HR2618 = klass.new(2000.0, 104.65625, -28.97222, 1.0, 4.0, 3.0, 27, 1.50, "Eps CMa")
48
+ HR2693 = klass.new(2000.0, 107.09792, -26.39333, -11.0, -3.0, 4.0, 34, 1.84, "Del CMa")
49
+ HR2827 = klass.new(2000.0, 111.02375, -29.30306, 0.0, -4.0, 5.0, 41, 2.45, "Eta CMa")
50
+ HR2891 = klass.new(2000.0, 113.65000, 31.88833, 67.0, -171.0, -98.0, 6, 1.98, "Alp Gem")
51
+ HR2943 = klass.new(2000.0, 114.82542, 5.22500, 288.0, -710.0, -1023.0, -3, 0.38, "Alp CMi")
52
+ HR2990 = klass.new(2000.0, 116.32875, 28.02611, 94.0, -628.0, -46.0, 3, 1.14, "Bet Gem")
53
+ HR3165 = klass.new(2000.0, 120.89625, -40.00333, 0.0, -27.0, 12.0, -24, 2.25, "Zet Pup")
54
+ HR3207 = klass.new(2000.0, 122.38333, -47.33667, 17.0, -4.0, 6.0, 35, 1.78, "Gam2 Vel")
55
+ HR3307 = klass.new(2000.0, 125.62833, -59.50972, 0.0, -26.0, 14.0, 2, 1.86, "Eps Car")
56
+ HR3485 = klass.new(2000.0, 131.17583, -54.70833, 51.0, 23.0, -78.0, 2, 1.96, "Del Vel")
57
+ HR3634 = klass.new(2000.0, 136.99917, -43.43250, 22.0, -19.0, 13.0, 18, 2.21, "Lam Vel")
58
+ HR3685 = klass.new(2000.0, 138.30000, -69.71722, 21.0, -162.0, 108.0, -5, 1.68, "Bet Car")
59
+ HR3699 = klass.new(2000.0, 139.27250, -59.27528, 17.0, -20.0, 8.0, 13, 2.25, "Iot Car")
60
+ HR3748 = klass.new(2000.0, 141.89667, -8.65861, 22.0, -14.0, 33.0, -4, 1.98, "Alp Hya")
61
+ HR3982 = klass.new(2000.0, 152.09292, 11.96722, 45.0, -248.0, 6.0, 6, 1.35, "Alp Leo")
62
+ HR4295 = klass.new(2000.0, 165.46042, 56.38250, 53.0, 82.0, 34.0, -12, 2.37, "Bet UMa")
63
+ HR4301 = klass.new(2000.0, 165.93208, 61.75083, 38.0, -119.0, -67.0, -9, 1.79, "Alp UMa")
64
+ HR4534 = klass.new(2000.0, 177.26500, 14.57194, 82.0, -497.0, -114.0, 0, 2.14, "Bet Leo")
65
+ HR4554 = klass.new(2000.0, 178.45750, 53.69472, 28.0, 95.0, 12.0, -13, 2.44, "Gam UMa")
66
+ HR4730 = klass.new(2000.0, 186.64958, -63.09917, 8.0, -36.0, -12.0, -11, 1.33, "Alp1 Cru")
67
+ HR4731 = klass.new(2000.0, 186.65208, -63.09944, 8.0, -34.0, -7.0, -1, 1.73, "Alp2 Cru")
68
+ HR4763 = klass.new(2000.0, 187.79125, -57.11333, 0.0, 23.0, -262.0, 21, 1.63, "Gam Cru")
69
+ HR4819 = klass.new(2000.0, 190.37917, -48.95972, 16.0, -189.0, -5.0, -6, 2.17, "Gam Cen")
70
+ HR4853 = klass.new(2000.0, 191.93000, -59.68861, 0.0, -48.0, -14.0, 16, 1.25, "Bet Cru")
71
+ HR4905 = klass.new(2000.0, 193.50708, 55.95972, 9.0, 112.0, -6.0, -9, 1.77, "Eps UMa")
72
+ HR5054 = klass.new(2000.0, 200.98125, 54.92528, 47.0, 122.0, -20.0, -6, 2.27, "Zet UMa")
73
+ HR5056 = klass.new(2000.0, 201.29833, -11.16139, 23.0, -41.0, -28.0, 1, 0.98, "Alp Vir")
74
+ HR5132 = klass.new(2000.0, 204.97167, -53.46639, 0.0, -28.0, -16.0, 3, 2.30, "Eps Cen")
75
+ HR5191 = klass.new(2000.0, 206.88500, 49.31333, 35.0, -122.0, -11.0, -11, 1.86, "Eta UMa")
76
+ HR5267 = klass.new(2000.0, 210.95583, -60.37306, 9.0, -32.0, -19.0, 6, 0.61, "Bet Cen")
77
+ HR5288 = klass.new(2000.0, 211.67083, -36.37000, 65.0, -519.0, -519.0, 1, 2.06, "The Cen")
78
+ HR5340 = klass.new(2000.0, 213.91542, 19.18250, 90.0, -1093.0, -1998.0, -5, -0.04, "Alp Boo")
79
+ HR5440 = klass.new(2000.0, 218.87667, -42.15778, 0.0, -35.0, -35.0, 0, 2.31, "Eta Cen")
80
+ HR5459 = klass.new(2000.0, 219.89958, -60.83528, 751.0, -3642.0, 699.0, -22, -0.01, "Alp1 Cen")
81
+ HR5460 = klass.new(2000.0, 219.90042, -60.83556, 751.0, -3646.0, 700.0, -21, 1.33, "Alp2 Cen")
82
+ HR5469 = klass.new(2000.0, 220.48250, -47.38833, 0.0, -21.0, -18.0, 5, 2.30, "Alp Lup")
83
+ HR5563 = klass.new(2000.0, 222.67625, 74.15556, 39.0, -31.0, 12.0, 17, 2.08, "Bet UMi")
84
+ HR5793 = klass.new(2000.0, 233.67208, 26.71472, 45.0, 121.0, -89.0, 2, 2.23, "Alp CrB")
85
+ HR5953 = klass.new(2000.0, 240.08333, -22.62167, 0.0, -12.0, -22.0, -7, 2.32, "Del Sco")
86
+ HR5958 = klass.new(2000.0, 239.87583, 25.92028, 0.0, -5.0, 13.0, -29, 2.00, " ")
87
+ HR6134 = klass.new(2000.0, 247.35167, -26.43194, 24.0, -10.0, -20.0, -3, 0.96, "Alp Sco")
88
+ HR6217 = klass.new(2000.0, 252.16625, -69.02778, 31.0, 14.0, -34.0, -3, 1.92, "Alp TrA")
89
+ HR6241 = klass.new(2000.0, 252.54083, -34.29333, 22.0, -611.0, -255.0, -3, 2.29, "Eps Sco")
90
+ HR6378 = klass.new(2000.0, 257.59458, -15.72472, 52.0, 39.0, 98.0, -1, 2.43, "Eta Oph")
91
+ HR6527 = klass.new(2000.0, 263.40208, -37.10389, 0.0, -1.0, -29.0, -3, 1.63, "Lam Sco")
92
+ HR6553 = klass.new(2000.0, 264.33000, -42.99778, 27.0, 15.0, -2.0, 1, 1.87, "The Sco")
93
+ HR6556 = klass.new(2000.0, 263.73375, 12.56000, 67.0, 120.0, -226.0, 13, 2.08, "Alp Oph")
94
+ HR6580 = klass.new(2000.0, 265.62208, -39.03000, 0.0, -6.0, -27.0, -14, 2.41, "Kap Sco")
95
+ HR6705 = klass.new(2000.0, 269.15167, 51.48889, 25.0, -8.0, -19.0, -28, 2.23, "Gam Dra")
96
+ HR6879 = klass.new(2000.0, 276.04292, -34.38472, 23.0, -38.0, -124.0, -15, 1.85, "Eps Sgr")
97
+ HR7001 = klass.new(2000.0, 279.23458, 38.78361, 123.0, 202.0, 286.0, -14, 0.03, "Alp Lyr")
98
+ HR7121 = klass.new(2000.0, 283.81625, -26.29667, 0.0, 13.0, -54.0, -11, 2.02, "Sig Sgr")
99
+ HR7557 = klass.new(2000.0, 297.69583, 8.86833, 198.0, 538.0, 386.0, -26, 0.77, "Alp Aql")
100
+ HR7790 = klass.new(2000.0, 306.41208, -56.73500, 0.0, 7.0, -89.0, 2, 1.94, "Alp Pav")
101
+ HR7796 = klass.new(2000.0, 305.55708, 40.25667, 3.0, 4.0, 0.0, -8, 2.20, "Gam Cyg")
102
+ HR7924 = klass.new(2000.0, 310.35792, 45.28028, -6.0, 3.0, 2.0, -5, 1.25, "Alp Cyg")
103
+ HR7949 = klass.new(2000.0, 311.55292, 33.97028, 57.0, 356.0, 328.0, -11, 2.46, "Eps Cyg")
104
+ HR8162 = klass.new(2000.0, 319.64500, 62.58556, 68.0, 151.0, 49.0, -10, 2.44, "Alp Cep")
105
+ HR8308 = klass.new(2000.0, 326.04667, 9.87500, 6.0, 31.0, -1.0, 5, 2.39, "Eps Peg")
106
+ HR8425 = klass.new(2000.0, 332.05833, -46.96111, 57.0, 129.0, -151.0, 12, 1.74, "Alp Gru")
107
+ HR8636 = klass.new(2000.0, 340.66708, -46.88472, 8.0, 137.0, -8.0, 2, 2.10, "Bet Gru")
108
+ HR8728 = klass.new(2000.0, 344.41292, -29.62222, 149.0, 333.0, -165.0, 7, 1.16, "Alp PsA")
109
+ HR8775 = klass.new(2000.0, 345.94375, 28.08278, 22.0, 189.0, 137.0, 9, 2.42, "Bet Peg")
110
+ HR8781 = klass.new(2000.0, 346.19042, 15.20528, 38.0, 63.0, -42.0, -4, 2.49, "Alp Peg")
111
+ end
@@ -0,0 +1,173 @@
1
+ # -*- coding: utf-8 -*-
2
+ =begin
3
+ Copyright (C) 2013 Takashi SUGA
4
+
5
+ You may use and/or modify this file according to the license described in the LICENSE.txt file included in this archive.
6
+ =end
7
+
8
+ require 'when_exe/region/chinese_calendar'
9
+
10
+ #
11
+ # ベトナム王位年号一覧表
12
+ #
13
+ # (参考文献)
14
+ # コンサイス世界年表(三省堂)
15
+ # 歴代紀元編(台湾中華書局)
16
+ module When
17
+ class TM::CalendarEra
18
+
19
+ #
20
+ # ベトナム
21
+ #
22
+ Vietnamese = [self, [
23
+ "namespace:[ja=http://ja.wikipedia.org/wiki/, en=http://en.wikipedia.org/wiki/]",
24
+ "locale:[=ja:, en=en:, alias]",
25
+ "area:[ベトナム,Vietnam]",
26
+ [self,
27
+ "period:[呉朝]",
28
+ ["[呉権]1", "[::_m:EpochEvents::Foundation]", "name=[呉権];939^Chinese0939", "943="],
29
+ ["[天策王]1", "[::_m:EpochEvents::Accession]", "name=[天策王];952"],
30
+ ["[南晋王]1", "[::_m:EpochEvents::Accession]", "name=[南晋王];954"],
31
+ ["[呉昌熾]1", "[::_m:EpochEvents::Accession]", "name=[呉昌熾];966", "968"]
32
+ ],
33
+ [self,
34
+ "period:[丁朝]",
35
+ ["[太平]1", "[::_m:EpochEvents::Foundation]", "name=[丁部領];968^Chinese0939"],
36
+ ["[太平]12", "[::_m:EpochEvents::Accession]", "name=[衛王];979", "980"]
37
+ ],
38
+ [self,
39
+ "period:[前黎朝]",
40
+ ["[天福]1", "[::_m:EpochEvents::Foundation]", "name=[黎桓];980^Chinese0939"],
41
+ ["[興統]1", "[::_m:EpochEvents::Accession]", "989"],
42
+ ["[応天]1", "[::_m:EpochEvents::Accession]", "994"],
43
+ ["[応天]12", "[::_m:EpochEvents::Accession]", "name=[中宗];1005"],
44
+ ["[景瑞]1", "[::_m:EpochEvents::Accession]", "name=[臥朝王];1005", "1009"]
45
+ ],
46
+ [self,
47
+ "period:[李朝]",
48
+ ["[順天]1", "[::_m:EpochEvents::Foundation]", "name=[太祖];1009^Chinese0939"],
49
+ ["[天成]1", "[::_m:EpochEvents::Accession]", "name=[太宗];1028"],
50
+ ["[通瑞]1", "[::_m:EpochEvents::Accession]", "1034"],
51
+ ["[乾符有道]1", "[::_m:EpochEvents::Accession]", "1039"],
52
+ ["[明道]1", "[::_m:EpochEvents::Accession]", "1042"],
53
+ ["[天感聖武]1", "[::_m:EpochEvents::Accession]", "1044"],
54
+ ["[崇興大宝]1", "[::_m:EpochEvents::Accession]", "1049"],
55
+ ["[龍瑞太平]1", "[::_m:EpochEvents::Accession]", "name=[聖宗];1054"],
56
+ ["[彰聖嘉慶]1", "[::_m:EpochEvents::Accession]", "1059"],
57
+ ["[龍章天嗣]1", "[::_m:EpochEvents::Accession]", "1065"],
58
+ ["[天貺宝象]1", "[::_m:EpochEvents::Accession]", "1067"],
59
+ ["[神武]1", "[::_m:EpochEvents::Accession]", "1068"],
60
+ ["[太寧]1", "[::_m:EpochEvents::Accession]", "name=[仁宗];1072"],
61
+ ["[英武昭聖]1", "[::_m:EpochEvents::Accession]", "1076"],
62
+ ["[広祐]1", "[::_m:EpochEvents::Accession]", "1085"],
63
+ ["[会豊]1", "[::_m:EpochEvents::Accession]", "1092"],
64
+ ["[龍符]1", "[::_m:EpochEvents::Accession]", "1101"],
65
+ ["[会祥大慶]1", "[::_m:EpochEvents::Accession]", "1109"],
66
+ ["[天符睿武]1", "[::_m:EpochEvents::Accession]", "1118"], # このあたり2年のズレがあるか?
67
+ ["[天符慶寿]1", "[::_m:EpochEvents::Accession]", "1127"],
68
+ ["[天順]1", "[::_m:EpochEvents::Accession]", "name=[神宗];1128"],
69
+ ["[天彰宝嗣]1", "[::_m:EpochEvents::Accession]", "1133.01.01"],
70
+ ["[紹明]1", "[::_m:EpochEvents::Accession]", "name=[英宗];1138"],
71
+ ["[大定]1", "[::_m:EpochEvents::Accession]", "1140.01.01"],
72
+ ["[政隆宝応]1", "[::_m:EpochEvents::Accession]", "1163.01.01"],
73
+ ["[天感至宝]1", "[::_m:EpochEvents::Accession]", "1174.01.01"],
74
+ ["[貞符]1", "[::_m:EpochEvents::Accession]", "name=[高宗];1176"],
75
+ ["[天資嘉瑞]1", "[::_m:EpochEvents::Accession]", "1186.01.01"],
76
+ ["[天資宝祐]1", "[::_m:EpochEvents::Accession]", "1202.01.01"],
77
+ ["[治平龍応]1", "[::_m:EpochEvents::Accession]", "1205"],
78
+ ["[建嘉]1", "[::_m:EpochEvents::Accession]", "name=[恵宗];1211"],
79
+ ["[天彰有道]1", "[::_m:EpochEvents::Accession]", "name=[昭皇];1224", "1225"]
80
+ ],
81
+ [self,
82
+ "period:[陳朝]",
83
+ ["[建中]1", "[::_m:EpochEvents::Foundation]", "name=[太宗];1225^Chinese0939"],
84
+ ["[天応政平]1", "[::_m:EpochEvents::Accession]", "1232.01.01"],
85
+ ["[元豊]1", "[::_m:EpochEvents::Accession]", "1251.01.01"],
86
+ ["[紹隆]1", "[::_m:EpochEvents::Accession]", "name=[聖宗];1258"],
87
+ ["[宝符]1", "[::_m:EpochEvents::Accession]", "1273.01.01"],
88
+ ["[紹宝]1", "[::_m:EpochEvents::Accession]", "name=[仁宗];1279"],
89
+ ["[重興]1", "[::_m:EpochEvents::Accession]", "1285"],
90
+ ["[興隆]1", "[::_m:EpochEvents::Accession]", "name=[英宗];1293"],
91
+ ["[大慶]1", "[::_m:EpochEvents::Accession]", "name=[明宗];1314"],
92
+ ["[開泰]1", "[::_m:EpochEvents::Accession]", "1324.01.01"],
93
+ ["[開祐]1", "[::_m:EpochEvents::Accession]", "name=[憲宗];1329"],
94
+ ["[紹豊]1", "[::_m:EpochEvents::Accession]", "name=[裕宗];1341"],
95
+ ["[大治]1", "[::_m:EpochEvents::Accession]", "1358.01.01"],
96
+ ["[大定]1", "[::_m:EpochEvents::Accession]", "name=[楊日礼];1369"],
97
+ ["[紹慶]1", "[::_m:EpochEvents::Accession]", "name=[芸宗];1370"],
98
+ ["[隆慶]1", "[::_m:EpochEvents::Accession]", "name=[睿宗];1373"],
99
+ ["[昌符]1", "[::_m:EpochEvents::Accession]", "name=[廃帝];1377"],
100
+ ["[光泰]1", "[::_m:EpochEvents::Accession]", "name=[順宗];1388"],
101
+ ["[建新]1", "[::_m:EpochEvents::Accession]", "name=[少帝];1398", "1400="]
102
+ ],
103
+ [self,
104
+ "period:[後陳朝]",
105
+ ["[興慶]1", "[::_m:EpochEvents::Foundation]", "name=[簡定帝];1407^Chinese0939"],
106
+ ["[重光]1", "[::_m:EpochEvents::Accession]", "name=[重光帝];1409", "1414.03="]
107
+ ],
108
+ [self,
109
+ "period:[後黎朝]",
110
+ ["[順天]1", "[::_m:EpochEvents::Foundation]", "name=[太祖];1428^Chinese0939"],
111
+ ["[紹平]1", "[::_m:EpochEvents::Accession]", "name=[太宗];1434"],
112
+ ["[大宝]1", "[::_m:EpochEvents::Accession]", "1440.01.01"],
113
+ ["[太和]1", "[::_m:EpochEvents::Accession]", "name=[仁宗];1443"],
114
+ ["[延寧]1", "[::_m:EpochEvents::Accession]", "1454.01.01"],
115
+ ["[天興]1", "[::_m:EpochEvents::Accession]", "name=[廃帝];1459"],
116
+ ["[光順]1", "[::_m:EpochEvents::Accession]", "name=[聖宗];1460"],
117
+ ["[洪徳]1", "[::_m:EpochEvents::Accession]", "1470.01.01"],
118
+ ["[景統]1", "[::_m:EpochEvents::Accession]", "name=[憲宗];1498"],
119
+ ["[泰貞]1", "[::_m:EpochEvents::Accession]", "name=[粛宗];1504"],
120
+ ["[端慶]1", "[::_m:EpochEvents::Accession]", "name=[威穆帝];1505"],
121
+ ["[洪順]1", "[::_m:EpochEvents::Accession]", "name=[襄翼帝];1509"],
122
+ ["[光紹]1", "[::_m:EpochEvents::Accession]", "name=[昭宗];1516"],
123
+ ["[統元]1", "[::_m:EpochEvents::Accession]", "name=[恭帝];1522", "1527="],
124
+ ["[元和]1", "[::_m:EpochEvents::Accession]", "name=[荘宗];1533"],
125
+ ["[順平]1", "[::_m:EpochEvents::Accession]", "name=[中宗];1549"],
126
+ ["[天祐]1", "[::_m:EpochEvents::Accession]", "name=[英宗];1557"],
127
+ ["[正治]1", "[::_m:EpochEvents::Accession]", "1558.01.01"],
128
+ ["[洪福]1", "[::_m:EpochEvents::Accession]", "1572.01.01"],
129
+ ["[嘉泰]1", "[::_m:EpochEvents::Accession]", "name=[世宗];1573"],
130
+ ["[光興]1", "[::_m:EpochEvents::Accession]", "1578.01.01"],
131
+ ["[慎徳]1", "[::_m:EpochEvents::Accession]", "name=[敬宗];1600"],
132
+ ["[弘定]1", "[::_m:EpochEvents::Accession]", "1600"],
133
+ ["[永祚]1", "[::_m:EpochEvents::Accession]", "name=[神宗];1619"],
134
+ ["[徳隆]1", "[::_m:EpochEvents::Accession]", "1629.01.01"],
135
+ ["[陽和]1", "[::_m:EpochEvents::Accession]", "1635.01.01"],
136
+ ["[福泰]1", "[::_m:EpochEvents::Accession]", "name=[真宗];1643", "1645^Chinese1645", ""],
137
+ ["[慶徳]1", "[::_m:EpochEvents::Accession]", "name=[神宗];1649"],
138
+ ["[盛徳]1", "[::_m:EpochEvents::Accession]", "1653"],
139
+ ["[永寿]1", "[::_m:EpochEvents::Accession]", "1658"],
140
+ ["[万慶]1", "[::_m:EpochEvents::Accession]", "name=[玄宗];1662"],
141
+ ["[景治]1", "[::_m:EpochEvents::Accession]", "1663.01.01"],
142
+ ["[陽徳]1", "[::_m:EpochEvents::Accession]", "name=[嘉宗];1672"],
143
+ ["[徳元]1", "[::_m:EpochEvents::Accession]", "1674"],
144
+ ["[永治]1", "[::_m:EpochEvents::Accession]", "name=[熙宗];1676"],
145
+ ["[正和]1", "[::_m:EpochEvents::Accession]", "1680"],
146
+ ["[永盛]1", "[::_m:EpochEvents::Accession]", "name=[裕宗];1705"],
147
+ ["[保泰]1", "[::_m:EpochEvents::Accession]", "1720.01.01"],
148
+ ["[永慶]1", "[::_m:EpochEvents::Accession]", "name=[廃帝];1729"],
149
+ ["[龍徳]1", "[::_m:EpochEvents::Accession]", "name=[純宗];1732"],
150
+ ["[永佑]1", "[::_m:EpochEvents::Accession]", "name=[懿宗];1735"],
151
+ ["[景興]1", "[::_m:EpochEvents::Accession]", "name=[顕宗];1740"],
152
+ ["[昭統]1", "[::_m:EpochEvents::Accession]", "name=[愍帝];1787", "1789.10="]
153
+ ],
154
+ [self,
155
+ "period:[阮朝]",
156
+ ["[嘉隆]1", "[::_m:EpochEvents::Foundation]", "name=[世祖];1802^Chinese1645"],
157
+ ["[明命]1", "[::_m:EpochEvents::Accession]", "name=[聖祖];1820"],
158
+ ["[紹治]1", "[::_m:EpochEvents::Accession]", "name=[憲祖];1841"],
159
+ ["[嗣徳]1", "[::_m:EpochEvents::Accession]", "name=[翼宗];1848"],
160
+ ["[育徳]1", "[::_m:EpochEvents::Accession]", "name=[育徳帝];1883"],
161
+ ["[協和]1", "[::_m:EpochEvents::Accession]", "name=[協和帝];1883"],
162
+ ["[建福]1", "[::_m:EpochEvents::Accession]", "name=[簡宗];1884"],
163
+ ["[咸宜]1", "[::_m:EpochEvents::Accession]", "name=[咸宜帝];1885"],
164
+ ["[同慶]1", "[::_m:EpochEvents::Accession]", "name=[景宗];1885",
165
+ "1887.10.17^Gregorian?note=ChineseNotes", ""],
166
+ ["[成泰]1", "[::_m:EpochEvents::Accession]", "name=[成泰帝];1889"],
167
+ ["[維新]1", "[::_m:EpochEvents::Accession]", "name=[維新帝];1907"],
168
+ ["[啓定]1", "[::_m:EpochEvents::Accession]", "name=[啓定帝];1916"],
169
+ ["[保大]1", "[::_m:EpochEvents::Accession]", "name=[保大帝];1926", "1945.09.02="]
170
+ ]
171
+ ]]
172
+ end
173
+ end
@@ -0,0 +1,197 @@
1
+ # -*- coding: utf-8 -*-
2
+ =begin
3
+ Copyright (C) 2011-2013 Takashi SUGA
4
+
5
+ You may use and/or modify this file according to the license described in the LICENSE.txt file included in this archive.
6
+ =end
7
+
8
+ module When
9
+
10
+ class BasicTypes::M17n
11
+
12
+ WorldTerms = [self, [
13
+ "namespace:[en=http://en.wikipedia.org/wiki/, ja=http://ja.wikipedia.org/wiki/]",
14
+ "locale:[=en:, ja=ja:, alias]",
15
+ "names:[WorldTerms]",
16
+ "[World=en:The_World_Calendar, 世界暦=ja:%E4%B8%96%E7%95%8C%E6%9A%A6]"
17
+ ]]
18
+ end
19
+
20
+ class TM::CalendarEra
21
+
22
+ World = [self, [
23
+ "namespace:[en=http://en.wikipedia.org/wiki/]",
24
+ "area:[Common]",
25
+ ["[BCE=en:BCE_(disambiguation), alias:BeforeCommonEra]0.1.1"],
26
+ ["[CE=en:Common_Era, alias:CommonEra]1.1.1", "Calendar Epoch", "01-01-01^World"]
27
+ ]]
28
+ end
29
+
30
+ module CalendarTypes
31
+
32
+ #
33
+ # 世界暦の暦週
34
+ #
35
+ class CalendarNote::WorldWeek < CalendarNote
36
+
37
+ NoteObjects = [When::BasicTypes::M17n, [
38
+ "namespace:[en=http://en.wikipedia.org/wiki/, ja=http://ja.wikipedia.org/wiki/]",
39
+ "locale:[=en:, ja=ja:, alias]",
40
+ "names:[World]",
41
+
42
+ # 年の暦注 ----------------------------
43
+ [When::BasicTypes::M17n,
44
+ "names:[year]"
45
+ ],
46
+
47
+ # 月の暦注 ----------------------------
48
+ [When::BasicTypes::M17n,
49
+ "names:[month]",
50
+ [When::BasicTypes::M17n,
51
+ "names:[Month]"
52
+ ]
53
+ ],
54
+
55
+ # 日の暦注 ----------------------------
56
+ [When::BasicTypes::M17n,
57
+ "names:[day]",
58
+ [When::BasicTypes::M17n,
59
+ "names:[Week]",
60
+ "[Sunday, 日曜日]",
61
+ "[Monday, 月曜日]",
62
+ "[Tuesday, 火曜日]",
63
+ "[Wednesday, 水曜日]",
64
+ "[Thursday, 木曜日]",
65
+ "[Friday, 金曜日]",
66
+ "[Saturday, 土曜日]",
67
+ "[Worldsday, 無曜日]"
68
+ ]
69
+ ]
70
+ ]]
71
+
72
+ # イベントの標準的な間隔を返す
73
+ # @private
74
+ def _delta(parameter=nil)
75
+ return When::DurationP1W
76
+ end
77
+
78
+ # @private
79
+ def worldsday_delta(parameter=nil)
80
+ return When::TM::PeriodDuration.new([0,0,7*26+1])
81
+ end
82
+
83
+ # 当日または直前の worldsday の日
84
+ # @param date [When::TM::TemporalPosition]
85
+ # @param parameter [nil] 未使用
86
+ # @return [When::TM::TemporalPosition]
87
+ #
88
+ def worldsday(date, parameter=nil)
89
+ event_name = 'worldsday'
90
+ date = When.Calendar('World').jul_trans(date, {:events=>event_name})
91
+ y,m,d = date.cal_date
92
+ h, m = (m-1).divmod(6)
93
+ return date if m == 5 && d == 31
94
+ dow = [0, 31, 61, 91, 122, 152][m] + d
95
+ dow += 182 if h == 1 && When.Calendar('World')._sum([y]) == 365
96
+ date += When::TM::PeriodDuration.new([0,0,-dow])
97
+ date.events = [event_name]
98
+ date
99
+ end
100
+
101
+ # 当日または直前の week_day の日
102
+ # @method week_day(date, parameter=nil)
103
+ # @param date [When::TM::TemporalPosition]
104
+ # @param parameter [nil] 未使用
105
+ # @return [When::TM::TemporalPosition]
106
+ # @note week_day は sunday, monday, tuesday, wednesday, thursday, friday, saturday に読み替えてください。
107
+
108
+ # @private
109
+ 7.times do |k|
110
+ name = When.CalendarNote('WorldWeek/NoteObjects::day::Week')[k].to_s.downcase
111
+ module_eval %Q{
112
+ def #{name}(date, parameter=nil)
113
+ event_name = 'from_#{name}'
114
+ date = When.Calendar('World').jul_trans(date, {:events=>[event_name]})
115
+ y,m,d = date.cal_date
116
+ dow = (m % 6 == 0 && d == 31) ? 7-#{k} : ([4,6,2][m % 3] + d - #{k}) % 7
117
+ return date if dow == 0
118
+ dow += 1 if d <= dow && (m == 1 || m == 7 && When.Calendar('World')._sum([y]) == 366)
119
+ date += When::TM::PeriodDuration.new([0,0,-dow])
120
+ date.events = [event_name]
121
+ date
122
+ end
123
+
124
+ alias :#{name}_delta :_delta
125
+ }
126
+ end
127
+
128
+ alias :week :sunday
129
+
130
+ # Enumeratorの生成
131
+ #
132
+ # @param [When::TM::TemporalPosition] first 始点
133
+ # @param [Symbol] direction
134
+ # [ :forward - 昇順 ]
135
+ # [ :reverse - 降順 ]
136
+ # @param [String] event イベント名
137
+ # @param [Integer] count_limit 繰り返し回数(デフォルトは指定なし)
138
+ #
139
+ # @return [When::CalendarTypes::ShireWeek::Enumerator]
140
+ #
141
+ def enum_for(first, direction=:forward, event=nil, count_limit=nil)
142
+ Enumerator.new(self, first, direction, event||@event, count_limit)
143
+ end
144
+ alias :to_enum :enum_for
145
+
146
+ # オブジェクトの正規化
147
+ # @private
148
+ def _normalize(args=[], options={})
149
+ @event ||= 'sunday'
150
+ super
151
+ end
152
+
153
+ #
154
+ # イベントを取得する Enumerator
155
+ #
156
+ class Enumerator < CalendarNote::Enumerator
157
+
158
+ #
159
+ # 次のイベントを得る
160
+ #
161
+ # @return [When::TM::TemporalPosition]
162
+ #
163
+ def succ
164
+ value = @current
165
+ if @current==:first
166
+ @first = event_eval(@first) if @delta.sign < 0
167
+ @current = @first
168
+ else
169
+ @current = event_eval(@current + @delta)
170
+ @current = event_eval(@current + @delta * 2) if @current.to_i == value.to_i
171
+ end
172
+ return value
173
+ end
174
+ end
175
+ end
176
+
177
+ #
178
+ # World calendar based on Gregorian calendar
179
+ #
180
+ World = [CyclicTableBased, {
181
+ 'label' => When.Resource('_m:WorldTerms::World'),
182
+ 'origin_of_LSC' => 1721060,
183
+ 'indices' => [
184
+ Coordinates::Index.new({:unit =>12, :trunk=>When.Resource('_m:CalendarTerms::Month::*')}),
185
+ Coordinates::Index.new
186
+ ],
187
+ 'rule_table' => {
188
+ 'T' => {'Rule' =>['LC', 'SC', 'SC', 'SC']},
189
+ 'SC' => {'Rule' =>[365]*4 + [366, 365, 365, 365]*24},
190
+ 'LC' => {'Rule' =>[366, 365, 365, 365]*25},
191
+ 365 => {'Length'=>[31,30,30]*3 + [31,30,31]},
192
+ 366 => {'Length'=>[31,30,30,31,30,31] *2}
193
+ },
194
+ 'note' => 'WorldWeek'
195
+ }]
196
+ end
197
+ end