Module: When::CalendarTypes

Defined in:
lib/when_exe/calendartypes.rb,
lib/when_exe/region/dee.rb,
lib/when_exe/region/pax.rb,
lib/when_exe/region/thai.rb,
lib/when_exe/region/yerm.rb,
lib/when_exe/region/bahai.rb,
lib/when_exe/region/mayan.rb,
lib/when_exe/region/roman.rb,
lib/when_exe/region/shire.rb,
lib/when_exe/region/world.rb,
lib/when_exe/region/coptic.rb,
lib/when_exe/region/french.rb,
lib/when_exe/region/indian.rb,
lib/when_exe/region/jewish.rb,
lib/when_exe/region/korean.rb,
lib/when_exe/region/chinese.rb,
lib/when_exe/region/goddess.rb,
lib/when_exe/region/iranian.rb,
lib/when_exe/region/islamic.rb,
lib/when_exe/region/martian.rb,
lib/when_exe/region/tibetan.rb,
lib/when_exe/region/armenian.rb,
lib/when_exe/region/balinese.rb,
lib/when_exe/region/javanese.rb,
lib/when_exe/region/symmetry.rb,
lib/when_exe/region/weekdate.rb,
lib/when_exe/region/christian.rb,
lib/when_exe/region/babylonian.rb,
lib/when_exe/region/discordian.rb,
lib/when_exe/region/positivist.rb,
lib/when_exe/region/vietnamese.rb,
lib/when_exe/region/hanke_henry.rb,
lib/when_exe/region/tranquility.rb,
lib/when_exe/region/zoroastrian.rb,
lib/when_exe/region/world_season.rb,
lib/when_exe/region/chinese/twins.rb,
lib/when_exe/region/saudi_arabian.rb,
lib/when_exe/region/japanese/twins.rb,
lib/when_exe/region/chinese/calendars.rb,
lib/when_exe/region/japanese/calendars.rb,
lib/when_exe/region/international_fixed.rb,
lib/when_exe/region/vanishing_leprechaun.rb,
lib/when_exe/region/chinese/ChineseUighur.rb,
lib/when_exe.rb

Overview

具体的な When::TM::ReferenceSystem のサブクラスの実装

Defined Under Namespace

Modules: Lunar, Songkran, TableExtend Classes: BalineseLuniSolar, ChineseLuniSolar, ChineseSolar, Christian, Civil, CyclicTableBased, Discordian, EphemerisBased, EphemerisBasedIslamic, EphemerisBasedLunar, EphemerisBasedLuniSolar, EphemerisBasedSolar, Gregorian, HinduLuniSolar, HinduSolar, Jewish, Julian, LAT, LMT, LocalTime, MTC, PatternTableBasedLuniSolar, PatternTableBasedLuniSolarExtended, PatternTableBasedLuniSolarWithEphemeris, PatternTableBasedSolar, ReformVariation, RevisedJulian, SolarYearTableBased, SolarYearTableBasedWithSunrise, SolarYearTableBasedWithSunset, Swedish, THS, TableBased, Thai, ThaiC, ThaiP, ThaiT, Tibetan, Tranquility, UTC, VanishingLeprechaun, VikramSamvatSolar, WeekDate, Yerm

Constant Summary collapse

Dee =

Dee Calendar

[CyclicTableBased, {
  'label'         => 'Dee',
  'origin_of_LSC' => 1721425,
  'origin_of_MSC' => 1,
  'rule_table'    => _rule_table
}]
DeeCecil =

DeeCecil Calendar

[CyclicTableBased, {
  'label'         => 'Dee::DeeCecil',
  'origin_of_LSC' => 1721426,
  'origin_of_MSC' => 1,
  'rule_table'    => _rule_table
}]
Pax =

Pax Calendar

[CyclicTableBased, {
  'label'            => 'Pax',
  'origin_of_LSC'    => 1721061,
  'indices'          => [
    When.Index('Pax::Month', {:branch=>{+1=>When.Resource('_m:Pax::Month::*')[13]}}),
    When::Coordinates::DefaultDayIndex
  ],
  'rule_table'       => {
    'T'  => {'Rule'  =>[364] + (1...400).to_a.map {|year|
      yy = year % 100
      (yy % 6) == 0 || yy==99 ? 371 : 364
    }},
    364  => {'Length'=>[28] * 13,          'IDs'=>'1,2,3,4,5,6,7,8,9,10,11,12,13'},
    371  => {'Length'=>[28] * 12 + [7,28], 'IDs'=>'1,2,3,4,5,6,7,8,9,10,11,12,12=,13'}
  }
}]
Bahai =

Bahá'í Calendar

[SolarYearTableBasedWithSunset, {
  'label'           => 'Bahai',
  'indices'         => _Indices,
  'origin_of_MSC'   => -1844 + 19*19,
  'diff_to_CE'      =>  0,
  'engine_month'    =>  3,
  'engine_day'      => 21,
  'rule_table'      => {
    365 => {'Length'=>[19] * 18 + [4, 19], 'IDs'=>_ID},
    366 => {'Length'=>[19] * 18 + [5, 19], 'IDs'=>_ID}
  },
  'note' => 'Bahai'
}]
LongCount =

Mayan Long Count

[{'Epoch' => Hash.new {|hash, key|
                            hash[key] = {
                              'origin_of_LSC' => 584283 + key.to_i
                            }}}, CyclicTableBased, {
  'origin_of_LSC' => 584283,
  'rule_table'    => {
    'T' => {'Rule'  =>[360]},
    360 => {'Length'=>[20] * 18}
  },
  'indices'=> [_c20, _c20, _c18, _c20],
  'note'   => 'Mayan#{?Epoch=Epoch}'
}]
JulianA =

Julian Calendar A : BCE45-BCE8

[CyclicTableBased, {
  'origin_of_LSC'  =>  1704987,
  'origin_of_MSC'  =>  -44,
  'indices' => _IndicesB12,
  'rule_table'     => {
    'T' => {'Rule'  =>[365,366,365]},
    365 => {'Length'=>[31,29] + [31,30]*5},
    366 => {'Length'=>[31,30] + [31,30]*5}
  },
  'note' => 'Roman'
}]
JulianB =

Julian Calendar B : BCE8-CE7

[CyclicTableBased, {
  'origin_of_LSC'  =>  1704987+13,
  'origin_of_MSC'  =>  -44,
  'indices' => _IndicesB12,
  'rule_table'     => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[31,28] + [31,30,31,30,31]*2}
  },
  'note' => 'Roman'
}]
JulianC =

Julian Calendar C : CE8-

[Julian, {
  'indices' => _Indices12,
  'note'    => 'Roman'
}]
Shire =

Shire Calendar based on summer solstice date

[SolarYearTableBased, {
  'label'   => 'Shire',
  'indices' => _shire_indices,
  'border'       => '00-00-02',
  'engine_day'   =>   -9,           # Jun 1st is 01-09
  'day_offset'   => -183,           # the day 183 days before summer solstice
  'cycle_offset' => Rational(1,4),  # summer solstice
# 'time_basis'   => '+09:00',       # JST
  'rule_table'   => {
    365 => {'Length'=>[2]+[30]*6+[3]+[30]*6, 'IDs'=>_IDs},
    366 => {'Length'=>[2]+[30]*6+[4]+[30]*6, 'IDs'=>_IDs}
  },
  'note'   => 'ShireWeek'
}]
World =

World calendar based on Gregorian calendar

[SolarYearTableBased, {
  'label'   => 'World',
  'rule_table'       => {
    365  => {'Length'=>[31,30,30] * 3 + [31,30,31]},
    366  => {'Length'=>[31,30,30,31,30,31] * 2}
  },
  'note'   => 'WorldWeek'
}]
Coptic =

Coptic Calendar in Egypt and Ethiopia

[{'Epoch'=>{'284Y'=>{'origin_of_MSC' =>   1},
                        '0Y'=>{'origin_of_MSC' => 285},
                        '8Y'=>{'origin_of_MSC' => 277,
                               'label'         => 'Coptic::Ethiopian',
                               'indices'       => _ethiopian_month_indices}}}, CyclicTableBased, {
  'label'         => 'Coptic::Coptic',
  'origin_of_LSC' => 1825030,
  'origin_of_MSC' =>       1,
  'diff_to_CE'    =>     285,
  'indices'       => _egyptian_month_indices,
  'rule_table' => {
    'T' => {'Rule'  =>[365,365,366,365]},
    365 => {'Length'=>[30]*12+[5]},
    366 => {'Length'=>[30]*12+[6]}
  }
}]
Ptolemaic =
[CyclicTableBased, {
  'label'         => 'Coptic::Ptolemaic',
  'remarks'       => When.M17n('Coptic::based on Chris Bennett "Egyptian Dates" (Retrieved 2014-06-29)'),
  'origin_of_LSC' => 1600478,
  'origin_of_MSC' =>    -330,
  'indices'       => _egyptian_month_indices,
  'rule_table' => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[30]*12+[5]}
  }
}]
FrenchRepublican =

French Calendar

[SolarYearTableBased, {
  'label'   => 'French::FrenchRepublican',
  'indices' => [
     When.Index('French::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
   ],
   'origin_of_MSC' => -1791,
   'epoch_in_CE'   => +1792,
   'cycle_offset'  => Rational(1,2),
   'time_basis'    => '+00:09:20',
   'rule_table'    => {
     365 => {'Length'=>[30] * 12 + [5]},
     366 => {'Length'=>[30] * 12 + [6]}
   }
}]
FrenchRepublicanRomme =

FrenchRepublicanRomme

[CyclicTableBased, {
  'label'   => 'French::FrenchRepublican (Romme)',
  'origin_of_LSC' => 2381318,
  'origin_of_MSC' => 16,
  'before'        => 'FrenchRepublican',
  'indices' => [
     When.Index('French::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'    => _rule_table400
}]
FrenchRepublicanContinuous =

FrenchRepublicanContinuous

[CyclicTableBased, {
  'label'   => 'French::FrenchRepublican (Continuous)',
  'origin_of_LSC' => 2380953,
  'origin_of_MSC' => 15,
  'before'        => 'FrenchRepublican',
  'indices' => [
     When.Index('French::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'    => _rule_table400
}]
FrenchRepublicanTropical =

FrenchRepublicanTropical

[CyclicTableBased, {
  'label'   => 'French::FrenchRepublican (128)',
  'origin_of_LSC' => 2382779,
  'origin_of_MSC' => 20,
  'before'        => 'FrenchRepublican',
  'indices' => [
     When.Index('French::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'    => _rule_table128
}]
IndianNationalSolar =

Indian national solar calendar

[SolarYearTableBasedWithSunrise, {
  'label'   => 'Indian::IndianNationalSolar',
  'origin_of_MSC' => -78,
  'diff_to_CE'    =>   0,
  'engine_month'  =>   2,   # February
  'engine_day'    => 28+22, # 22nd of next month
  'indices' => [
     When.Index('Indian::LunarMonth', {:unit =>12, :shift=>4}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'    => {
    365  => {'Length'=>[30] + [31]*5 + [30]*6},
    366  => {'Length'=>       [31]*6 + [30]*6}
  }
}]
Nanakshahi =

Nanakshahi Calendar

[SolarYearTableBased, {
  'label'   =>  'Indian::Nanakshahi',
  'origin_of_MSC' => -1468,
  'diff_to_CE'    =>     0,
  'engine_month'  =>     3,
  'engine_day'    =>    14,
  'indices' => [
    When.Index('Indian::NanakshahiMonth', {:unit=>12, :shift=>4}),
    When::Coordinates::DefaultDayIndex
  ],
  'rule_table'    => {
    365 => {'Length'=> [31]*5 + [30]*7},
    366 => {'Length'=> [31]*5 + [30]*6 + [31]}
  }
}]
RevisedBengali =

Revised Bengali Calendar

[SolarYearTableBased, {
  'label'   =>   'Indian::RevisedBengali',
  'origin_of_MSC' => -593,
  'diff_to_CE'    =>    0,
  'engine_month'  =>    4,
  'engine_day'    =>   14,
  'indices' => [
    When.Index('Indian::BengaliMonth', {:unit=>12, :shift=>5}),
    When::Coordinates::DefaultDayIndex
  ],
  'rule_table'    => {
    365 => {'Length'=> [31]*5 + [30]*7},
    366 => {'Length'=> [31]*5 + [30]*5 + [31, 30]}
  }
}]
VikramSambatSolar =

Vikram Sambat Solar Calendar defined by Table

PatternTableBasedSolar, {
  'label'   =>   'Indian::VikramSamvat',
  'indices' => [
      When.Index('Indian::SolarMonth'),
      When::Coordinates::DefaultDayIndex
    ],
  'origin_of_MSC' => 2002,
  'origin_of_LSC' => 2431559,
  'epoch_in_CE'   => 1945,
  'before'        => 'VikramSamvatSolar',
  'after'         => 'VikramSamvatSolar',
  'rule_table'    => %w(112210900900)
}
Hebrew =

Hebrew Calendar (alias of Jewish Calendar)

Jewish
Korean =

正月:A, 2月:B, 3月:C, 4月:D, 5月:E, 6月:F, 7月:G, 8月:H, 9月:I, 10月:J, 11月:K, 12月:L 大の月:大文字, 小の月:小文字 同じアルファベットの連続の後者:閏月 #- は『韓國年暦大典』(1987年版)の中国-朝鮮差分が取り消されたもの #! は全勇勳「朝鮮における時憲曆の受容過程とその思想的背景」で言及された年(最終的には差分でない)

PatternTableBasedLuniSolar.join([
  PatternTableBasedLuniSolar,
  {
    'indices'=>  ChineseIndices,
    'before' => 'ChineseTwin::太初暦',
    'after'  => 'ChineseLuniSolar?time_basis=+09',
    'note'   => 'Chinese',
  },
  ['Chinese_103',  -60.. 263],             # 前漢~蜀漢(太初暦・四分暦)
  ['Chinese0239',  264.. 444],             # 三国・南朝(景初暦)
  ['Chinese0445',  445.. 589],             # 南朝(元嘉暦・大明暦)
  ['Chinese0523',  590.. 946],             # 隋・唐~五代前期(大業暦~調元暦)
  ['Chinese0956',  947..1279],             # 五代後期~南宋(調元暦~本天暦)
  ['Chinese0939', 1280..1653],             # 元・明・南明(重修大明暦・授時暦・大統暦)
  ['Chinese1645', 1654..1911]],            # 清(時憲暦)
  {
   -26 => {'aB'   => 'Ab'  },            # ベースとする中国暦日表の違い
   240 => {'Hi'   => 'hI'  },            # 四分・景初・乾象暦いずれにも不一致

   478 => {'bC'   => 'Bc'  },            # 日食記事による見直し(景初・元嘉・三紀・玄始暦いずれにも不一致)
   502 => {'D'    => 'E'   },            # 中国暦日表を計算による元嘉暦に戻す
   559 => {'De'   => 'eE'  },            # 日食記事による見直し(元嘉・大明・興和・天保・正光暦いずれにも不一致)
   575 => {'i'    => 'h'   },            # ベースとする中国暦日表の違い

   592 => {'FgHi' => 'fgHI'},
   716 => {'lL'   => 'Ll'  },            # ベースとする中国暦日表の違い
   768 => {'bC'   => 'Bc'  },
   795 => {'H'    => 'G'   },            # ベースとする中国暦日表の違い
   935 => {'Kl'   => 'kL'  },            # 宣明暦に一致(崇玄暦とは不一致)

  1022 => {'aB'  => 'Ab'  },             # 宣明暦に一致
  1025 => {'fG'  => 'Fg'  },             # 宣明・遼の大明暦に一致
  1032 => {'cD'  => 'Cd'  },
  1040 => {'dE'  => 'De', 'K'  => 'k' }, # 5月朔は宣明・遼の大明暦に一致
  1041 => {'a'   => 'A',  'Jk' => 'jK'}, # 12月朔は宣明・遼の大明暦に一致
  1048 => {'l'   => 'L'   },
  1049 => {'A'   => 'a',  'Kl' => 'kL'}, # 12月朔は宣明・遼の大明暦に一致
  1058 => {'l'   => 'L'   },
  1059 => {'A'   => 'a',  'Kl' => 'kL'}, # 12月朔は宣明・遼の大明暦に一致
  1067 => {'bC'  => 'aB'  },             # 宣明暦に一致(閏月2か月ずれ)
  1073 => {'kL'  => 'Kl'  },
  1078 => {'gHI' => 'GHi' },
  1079 => {'Ef'  => 'eF'  },
  1096 => {'bcDefGhIJKl' => 'BCdeFGhijkL' },
  1114 => {'bC'  => 'Bc'  },
  1118 => {'dE'  => 'De'  },
  1149 => {'efG' => 'Efg' },
  1244 => {'fGH' => 'FGh' },
  1252 => {'eF'  => 'Ef'  },
  1253 => {'Hi'  => 'hI'  },             # 重修大明暦に一致(たまたま?宣明暦にも一致)
  1270 => {'jjK' => 'jKk' },             # 重修大明暦に一致
  1276 => {'Ab'  => 'aB'  },             # 重修大明暦に一致

  1287 => {'bCD' => 'BCd' },             # ベースとする中国暦日表の違い
  1300 => {'HIj' => 'hIJ' },
  1365 => {'aB'  => 'Ab'  },
  1397 => {'bC'  => 'Bc'  },
  1399 => {'De'  => 'dE'  },
  1430 => {'Cd'  => 'cD'  },
   #- 1437 => {'kL'  => 'Kl'  },
  1440 => {'kL'  => 'Kl'  },
  1444 => {'kL'  => 'Kl'  },
  1462 => {'Jk'  => 'jK'  },
  1495 => {'fG'  => 'Fg'  },
  1530 => {'Ab'  => 'aB'  },
  1581 => {'Ij'  => 'iJ'  },
  1588 => {'bCD' => 'BCd','Kl' =>'kL'},
  1597 => {'Hi'  => 'hI'  },
   #- ,        'L'   =>'l' },
   #- 1598 => {'a'   => 'A'   },
  1599 => {'l'   => 'L'   },
  1600 => {'A'   => 'a'   },
  1602 => {'hI'  => 'Hi'  },
  1608 => {'l'   => 'L'   },
  1609 => {'A'   => 'a'   },
   #- 1615 => {'Fg'  => 'fG', 'Hh' =>'hH'},
   #- 1619 => {'L'   => 'l'   },
   #- 1620 => {'a'   => 'A'   },
   #- 1642 => {'Fg'  => 'fG'  },
   #- 1644 => {'fG'  => 'Fg'  },
   #- 1649 => {'iJ'  => 'Ij'  },
   #- 1650 => {'kL'  => 'Kl'  },
  1652 => {'hIJ' => 'HIj' },

   #- 1664 => {'bC'  => 'Bc'  },
   #- 1674 => {'aB'  => 'Ab'  },
  1677 => {'iJ'  => 'Ij'  },
  1698 => {'jK'  => 'Jk'  },
   #! 1705 => {'Kl'  => 'kL'  },
  1709 => {'aB'  => 'Ab', 'jK' =>'Jk' },
  1727 => {'cC'  => 'Cc'  },
  1730 => {'Cd'  => 'cD'  },
   #! 1735 => 『英祖實録』巻38 10年4月10日(乙卯) 是以我國明年曆與彼國所同者,只是置閏與月朔大小,而節候則日時皆不同
  1751 => {'Jk'  => 'jK'  },
  1778 => {'Cd'  => 'cD'  },
  1841 => {'kL'  => 'Kl'  }
})
TenrekiA =

太平天国 2.1.1-3.2.30

[CyclicTableBased, {
  'origin_of_LSC'  =>  2397523,
  'origin_of_MSC'  =>  1852,
  'indices' => [
     When.Index('Chinese::Month', {:unit =>12}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'     => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[31,30]*5 + [30]*2}
  }
}]
TenrekiB =

太平天国 3.3.1-

[CyclicTableBased, {
  'origin_of_LSC'  =>  2397522,
  'origin_of_MSC'  =>  1852,
  'indices' => [
     When.Index('Chinese::Month', {:unit  =>12}),
     When.Index({:shift => 1})
   ],
  'rule_table'     => {
    'T' => {'Rule'  =>[366]},
    366 => {'Length'=>[31,30]*6}
  },
  'note' => 'Default'
}]
Yi =

[CyclicTableBased, {
  'label'   => 'Chinese::Yi',
  'origin_of_LSC'  =>  1721431,
  'origin_of_MSC'  =>  1,
  'indices' => [
     When.Index('Yi::Month', {:unit  =>11}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'     => {
    'T' => {'Rule'  =>[365, 365, 365, 366]},
    365 => {'Length'=>[36]*10 + [5]},
    366 => {'Length'=>[36]*10 + [6]}
  },
  'note' => 'Yis'
}]
Goddess =

Goddess Calendar

[CyclicTableBased, {
  'label'         => 'Goddess::Goddess',
  'origin_of_LSC' => 2415611 - 180432,  # 1901-08-14 Base Cycle = No.1
  'note'          => [['_m:Calendar::Month'],
                      ['_co:Common::Week', '_n:Ephemeris/Notes::day::Moon_Age']],
  'indices'       => [
    When.Index({:unit=>470}),
    When.Index('Goddess::Month'),
    When::Coordinates::DefaultDayIndex,
  ],
  'rule_table' => {
    'T' => {'Rule'  =>(['L'] * 9 + ['S']) * 23 +
                      (['L'] * 4 + ['S']) *  2 +
                      (['L'] * 9 + ['S']) * 23},
    'L' => {'Length'=>[30, 29] * 6 + [30]},
    'S' => {'Length'=>[30, 29] * 6 + [29]}
  }
}]
SolarHijri =

Solar Hijri Calendar

[SolarYearTableBased, {
  'label'         => 'Iranian::SolarHijri',
  'indices'       => _indicesM,
  'origin_of_MSC' => -621,
  'epoch_in_CE'   =>  621,
  'cycle_offset'  => 0,
  'time_basis'    => '+15:30',
  'rule_table'    => {
    365 => {'Length'=>[31] * 6 + [30] * 5 + [29]},
    366 => {'Length'=>[31] * 6 + [30] * 6}
  }
}]
SolarHijriAlgorithmic =

Solar Hijri Algorithmic Calendar

[CyclicTableBased, {
  'label'         => 'Iranian::SolarHijriAlgorithmic',
  'indices'       => _indicesM,
  'origin_of_LSC' => 1948321 + 173125,
  'origin_of_MSC' => 475,
  'epoch_in_CE'   => 621,
  'rule_table'    => {
    'T'    => {'Rule' =>['C128'] * 21 + ['C132']},
    'C128' => {'Rule' =>['C29'] + ['C33'] * 3},
    'C132' => {'Rule' =>['C29'] + ['C33'] * 2 + ['C37']},
    'C29'  => {'Rule' =>[365] + ([365] * 3 + [366]) * 7},
    'C33'  => {'Rule' =>[365] + ([365] * 3 + [366]) * 8},
    'C37'  => {'Rule' =>[365] + ([365] * 3 + [366]) * 9},
     365   => {'Length'=>[31] * 6 + [30] * 5 + [29]},
     366   => {'Length'=>[31] * 6 + [30] * 6}
  }
}]
Jalali =

Jalali Calendar

[HinduSolar, {
  'label'   => 'Iranian::Jalali',
  'indices' => _indicesM,
  'type'    => 'SBH'
}]
TableBasedJalali =

Table Based Jalali Calendar

[CyclicTableBased, {
  'label'         => 'Iranian::JalaliAlgorithmic',
  'indices'       => _indicesJ,
  'origin_of_LSC' => 1948321 + 173125,
  'origin_of_MSC' => 475,
  'epoch_in_CE'   => 621,
  'rule_table'    => {
    'T'    => {'Rule' =>['C128'] * 21 + ['C132']},
    'C128' => {'Rule' =>['C29'] + ['C33'] * 3},
    'C132' => {'Rule' =>['C29'] + ['C33'] * 2 + ['C37']},
    'C29'  => {'Rule' =>[365] + ([365] * 3 + [366]) * 7},
    'C33'  => {'Rule' =>[365] + ([365] * 3 + [366]) * 8},
    'C37'  => {'Rule' =>[365] + ([365] * 3 + [366]) * 9},
     365   => {'Length'=>[30] * 12 + [5]},
     366   => {'Length'=>[30] * 12 + [6]}
  }
}]
Borji =

Borji Calendar

[EphemerisBasedSolar, {
  'label'         => 'Iranian::Borji',
  'indices'       => _indicesS,
  'origin_of_MSC' => -621,
  'epoch_in_CE'   =>  621,
  'cycle_offset'  => 0,
  'time_basis'    => '+15:30'
}]
TableBasedBorji =

Table Based Borji Calendar

PatternTableBasedSolar, {
  'label'         => 'Iranian::SolarHijri (Combined)',
  'indices'       => _indicesM,
  'origin_of_MSC' => 1230,
  'origin_of_LSC' => 2397203,
  'epoch_in_CE'   =>  621,
  'before'        => 'Borji',
  'after'         => 'SolarHijriAlgorithmic',
  'rule_table'=> %w(
	112111000900	011211000900	012111190900	111121009090	111211000900
	011211000900	012111190900	111120109090	111211009000	011211000900
	012111190900	021120109090	111211009090	111211000900	012111190900
	012120109090	111211009090	111211000900	012111190900	012120109090
	111121009090	111211000900	012111000900	012111109090	111121009090
	111211000900	011211000900	012111109090	111121009090	111211000900
	011211000900	012111109900	111121009090	111211000900	011211000900
	012111109900	111121009090	111211000900	011211000900	012111190900
	111120109090	111211009000	011211000900	012111190900	012120109090
	111211009090	111211000900	012111190900	012120109090	111121009090
	111211000900	012111190900	012111109090	111121009090	111211000900
	011211000900	012111109090	111121009090	111211000900	011211000900
	012111109090	111121009090	111211000900	011211000900	012111109090
	111121009090	111211000900	011211000900	012111109900	111120109090
	111211000900	011211000900	012111190900	012120109090)
}
TabularIslamic =

Tabular Islamic Calendar

[CyclicTableBased, {
  'label' => 'Islamic::TabularIslamic',
  'origin_of_LSC'  =>  1948440-354,
  'indices' => [
     When.Index('Islamic::Month', {:unit =>12}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'     => {
    'T' => {'Rule'  =>[['L',2], 'S', ['L',3], 'S', ['L',2], 'S', 'L']},
    'L' => {'Rule'  =>[354, 354, 355]},
    'S' => {'Rule'  =>[354, 355]},
    354 => {'Length'=>[30,29] * 6           },
    355 => {'Length'=>[30,29] * 5 + [30] * 2}
  }
}]
Darian =

Darian Calendar

[CyclicTableBased, {
  'label'         => 'Martian::Darian',
  'time_basis'    => 'MTC',
  'origin_of_LSC' =>  -94798,
  'indices' => [
     When.Index('Martian::DarianMonth', {:unit =>24}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table' => {
    'T'             => {'Rule' =>['LongCentury', ['ShortCentury', 4]]},
    'LongCentury'   => {'Rule' =>[               ['LongDecade',  10]]},
    'ShortCentury'  => {'Rule' =>['ShortDecade', ['LongDecade',   9]]},
    'LongDecade'    => {'Rule' =>[669] * 2 + [668, 669] * 4 }, 
    'ShortDecade'   => {'Rule' =>            [668, 669] * 5 },
    668  => {'Length'=>[28, 28, 28, 28, 28, 27] * 4           },
    669  => {'Length'=>[28, 28, 28, 28, 28, 27] * 3 + [28] * 6}
  },
  'note'   => 'DarianWeek'
}]
Armenian =

Armenian Calendar

[CyclicTableBased, {
  'label'         => 'Armenian',
  'origin_of_LSC' => 1922868,
  'origin_of_MSC' =>       1,
  'epoch_in_CE'   =>     552,
  'indices'       => [
    When.Index('Armenian::Month', {:unit =>13}),
    When::Coordinates::DefaultDayIndex
  ],
  'rule_table' => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[30]*12+[5]}
  }
}]
BalineseLuniSolar1965 =
[BalineseLuniSolar, {
  'day_epoch'  => 1749594, # CE78-02-16
  'day_border' => 0,       # Friday
  'rule_table' => intercalary_pattern_1
}]
BalineseLuniSolar1971 =
[BalineseLuniSolar, {
  'day_epoch'  => 1749594, # CE78-02-16
  'day_border' => -23,     # Wednesday
  'rule_table' => intercalary_pattern_1
}]
BalineseLuniSolar1993 =
[BalineseLuniSolar, {
  'day_epoch'  => 1749594, # CE78-02-16
  'day_border' => -23,     # Wednesday
  'rule_table' => intercalary_pattern_2
}]
BalineseLuniSolar2000 =
[BalineseLuniSolar, {
  'day_epoch'  => 1749593, # CE78-02-15
  'day_border' => -23,     # Tuesday
  'rule_table' => intercalary_pattern_2
}]
BalineseLuniSolar2003 =
[BalineseLuniSolar, {
  'day_epoch'  => 1749593, # CE78-02-15
  'day_border' => -23,     # Tuesday
  'rule_table' => intercalary_pattern_1
}]
Tenganan =

Tenganan Calendar

[CyclicTableBased, {
  'label'         => 'Balinese::Tenganan',
  'origin_of_LSC' =>  1095 * 1573 - 381,
  'origin_of_MSC' =>  1,
  'note'          => [['_m:Calendar::Month'],
                      ['_n:Balinese/Notes::day::Triwara', '_n:Balinese/Notes::day::Pantjawara']],
  'indices' => [
     When.Index('Balinese::TengananMonth'),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table' => {
    'T'  => {'Rule'  =>[360, 383, 352]},
    360  => {'Length'=>[30] * 12},
    383  => {'Length'=>[30] * 6 + [26] * 2 + [30] * 4 + [27]},
    352  => {'Length'=>[30] * 6 + [28] * 2 + [30] * 4 }
  }
}]
Javanese1547 =

Javanese Calendar (SE1547-1674) : Dal年 - 閏年

[CyclicTableBased, {
  'origin_of_LSC' =>  2317690,
  'origin_of_MSC' =>     1555-512,
  'indices' => [
     When.Index('Javanese::IslamicMonth', {:unit =>12}),
     When::Coordinates::DefaultDayIndex
  ],
  'rule_table'    => {
    'T'   => {'Rule'  =>[354, 355, 354, 354, 355, 354, 354, 355]*15, 'Days' => (354*8+3)*15-1},
    354   => {'Length'=>[30,29] * 6           },
    355   => {'Length'=>[30,29] * 5 + [30] * 2}
  },
  'note'  => 'Javanese'
}]
Javanese1675 =

Javanese Calendar (SE1675-1748) : Dal年 - 平年

[CyclicTableBased, {
  'origin_of_LSC' =>  2360214,
  'origin_of_MSC' =>     1675-512,
  'indices' => [
     When.Index('Javanese::IslamicMonth', {:unit =>12}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'    => {
    'T'   => {'Rule'  =>[354, 355, 354, 355, 354, 354, 354, 355]*15, 'Days' => (354*8+3)*15-1},
    354   => {'Length'=>[30,29] * 6                 },
    355   => {'Length'=>[30,29] * 5 + [30] * 2      }
  },
  'note'  => 'Javanese'
}]
Javanese1749 =

Javanese Calendar (SE1749-) : Dal年 - 平年,月日別配当

[CyclicTableBased, {
  'origin_of_LSC' =>  2385728,
  'origin_of_MSC' =>     1747-512,
  'indices' => [
     When.Index('Javanese::IslamicMonth', {:unit =>12}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'    => {
    'T'   => {'Rule'  =>[354, 355, 354, 355, 'D', 354, 354, 355]*15, 'Days' => (354*8+3)*15-1},
    354   => {'Length'=>[30,29] * 6                 },
    'D'   => {'Length'=>[30]*2+[29]*3+[29,30]*3+[30]},
    355   => {'Length'=>[30,29] * 5 + [30] * 2      }
  },
  'note'  => 'Javanese'
}]
Pranatamangsa =

Pranatamangsa

[CyclicTableBased, {
  'label'         => 'Javanese::Pranatamangsa',
  'origin_of_LSC' => 1721232,
  'origin_of_MSC' =>   -1854,
  'indices' => [
     When.Index('Javanese::HinduMonth', {:unit =>12, :shift=>8}),
     When::Coordinates::DefaultDayIndex
   ],
  'rule_table'     => {
    'T'  => {'Rule'  =>['LC', 'SC', 'SC', 'SC']},
    'SC' => {'Rule'  =>[365]*4 + [366, 365, 365, 365]*24},
    'LC' => {'Rule'  =>[366, 365, 365, 365]*25},
    365  => {'Length'=>[41, 23, 24, 25, 27, 43, 43, 26, 25, 24, 23, 41]},
    366  => {'Length'=>[41, 23, 24, 25, 27, 43, 43, 27, 25, 24, 23, 41]}
  }
}]
Sym454 =

Symmetry 454 Calendar

[CyclicTableBased, {
  'label'   => 'Symmetry::Sym454',
  'origin_of_LSC'  => 1721062,
  'rule_table'       => {
    'T'  => {'Rule'  =>_pattern},
    364  => {'Length'=>[28,35,28] * 4},
    371  => {'Length'=>[28,35,28] * 3 + [28,35,35]}
  }
}]
Sym010 =

Symmetry 010 Calendar

[CyclicTableBased, {
  'label'   => 'Symmetry::Sym010',
  'origin_of_LSC'  => 1721062,
  'rule_table'       => {
    'T'  => {'Rule'  =>_pattern},
    364  => {'Length'=>[30,31,30] * 4},
    371  => {'Length'=>[30,31,30] * 3 + [30,31,37]}
  }
}]
Babylonian =

Chris Bennett

[PatternTableBasedLuniSolar, {
  'label'        => 'AncientOrient::Babylonian',
  'remarks'      => _remarksCB,
  'origin_of_LSC'=> 1492871,
  'origin_of_MSC'=> -625,
  'rule_table'   => _table_CB,
  'indices'      => _babylonian
  }
]
Seleucid =
[PatternTableBasedLuniSolar, {
  'label'        => 'AncientOrient::Seleucid',
  'remarks'      => _remarksCB,
  'origin_of_LSC'=> 1492871,
  'origin_of_MSC'=> -314,
  'epoch_in_CE'  => -311,
  'rule_table'   => _table_CB,
  'indices'      => _seleucid
  }
]
BabylonianPDE =
    1. Parker & W. H. Dubberstein

PatternTableBasedLuniSolarWithEphemeris, {
'label'        => 'AncientOrient::Babylonian',
'remarks'      => _remarksPD,
'origin_of_LSC'=> 1492871,
'origin_of_MSC'=> -625,
'engine'       => 'ChineseLuniSolar?time_basis=+03',
'rule_table'   => %w(              N N A N N U N A N N U N
                     A N N U N N N U A N N U N N U N U N U
                     N A N N A N N A N N N U N A N N A N A
                     N N U N A N N A N N N N U A N N A N N
                     A N A N A N N A N N N U N A N N A N N
                     N U A N N A N N U N N U N A N N A N N
                     U N A N N A N N U N A N N A N N U N N
                     A N A N N A N a N N A N N A N N U N A
                     N N a N N a N A N N A N N A N N U N A
                     N N A N N a N A N N A N N A N N A N A
                     N N A N N a N A N N A N N A N N A N A
                     N N A N N A N A N N A N N A N N U N A
                     N N A N N A N A N N A N N a N N U N A
                     N A N N N A N A N N A N N A N N U N A
                     N N A N N A N A N N A N N A N N U N A
                     N N A N N A N A N N A N N A N N U N A),
'subkey_table' => {'N'=>'ABCDEFGHIJKL',
                   'A'=>'ABCDEFGHIJKLL',
                   'a'=>'ABCDEFGHIJKLL',
                   'U'=>'ABCDEFFGHIJKL'
                  },
'indices'      => _babylonian
}
BabylonianPD =
[PatternTableBasedLuniSolar, {
  'label'        => 'AncientOrient::Babylonian',
  'remarks'      => _remarksPD,
  'origin_of_LSC'=> 1492871,
  'origin_of_MSC'=> -625,
  'rule_table'   => _table_PD,
  'indices'      => _babylonian
  }
]
SeleucidPD =
[PatternTableBasedLuniSolar, {
  'label'        => 'AncientOrient::Seleucid',
  'remarks'      => _remarksPD,
  'origin_of_LSC'=> 1492871,
  'origin_of_MSC'=> -314,
  'epoch_in_CE'  => -311,
  'rule_table'   => _table_PD,
  'indices'      => _seleucid
  }
]
Positivist =

Positivist calendar based on Gregorian calendar

[SolarYearTableBased, {
  'label'   => 'Positivist::Positivist',
  'indices' => [
      When.Index('PositivistWeekNotes::month::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
    ],
  'origin_of_MSC'    => -1788,
  'diff_to_CE'       =>     0,
  'rule_table'       => {
    365  => {'Length'=>[28]*12 + [29]},
    366  => {'Length'=>[28]*12 + [30]}
  },
  'note'   => 'PositivistWeek'
}]
Vietnamese1544 =

欽授暦 1544 - 1788

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>1544, 'origin_of_LSC'=>2285027, 'indices'=> ChineseIndices,
'before' => 'Chinese0939', 'after' => 'Vietnamese1789', 'note' => 'Chinese',
'rule_table'=> %w(				AbCdEFgHiJkL	aAbCdEfGHiJKl
	aBcdEfGHIjKL	abCdeFgHIiJKL	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEffGhIjKl

	ABCdEfgHiJkL	aBCdEfGhIjKl	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKkL
	aBcdEfGhIJKl	AbCdeFgHiJKL	aBcDefGghIJKl	ABcDefGhIjKl	ABcDEfgHiJkL
	aBcDEeFgHiJkL	aBcDeFGhIjKl	AbcDeFGhIJkL	aBbcDeFgHIJkL	aBcdEfGhIJKl
	AbCdeFghIJjKL	AbCdeFghIJkL	ABcDefGhiJkL	ABcDeFfGhIjKl	AbCDeFgHiJkL
	abCDeFgHIjKl	AbbCdEfGHIjKl	AbcDeFgHIjKL	aBcdEfgHIjKLL	aBcdEfgHiJKL
	AbCdeFghIjKL	AbCDefGhhIjKL	aBCdEfGhiJkL	aBCdEFgHiJkl	AbCdDEfGHiJkL
	abCdEfGHiJKl	AbcDefGHiJKL	aBbcDefGhIJKL	aBcdEfgHiJKL	aBCdeFghIiJKl
	ABcDeFghIjKl	ABCdEfGhiJkL	aBCdEfFGhIjkL	aBcDeFGhIJkL	abCdEfGHiJKl
	AbcCdeFgHIJKl	AbcDefGhIJKl	ABcdEfgHiJKkL	AbCdEfgHiJkL	ABcDeFghIjKl
	ABcDEfGhhIjKl	AbCDeFgHiJkL	aBcDeFGhIjKL	abCddEFgHIjKL	abCdeFgHIJkL

	AbcDefGhIJkL	ABbcDefGhIjKL	AbCdEfgHiJkL	AbCDeFghIiJkL	aBCdEfGhIjKl
	AbCdEFgHiJkL	aBcDeFfGHiJkL	aBcdEfGHIjKL	abCdeFgHIjKL	aBcCdeFgHiJKL
	aBcDefGhIjKL	AbCdEfgHiJkKl	ABCdEfgHiJkL	aBCdEfGhIjKl	AbCdEFgHhIjKl
	AbcDEFgHiJkL	aBcdEfGHiJKl	AbCddEfGhIJKl	AbCdeFghIJKL	aBcDefGhiJKl
	ABcCDefGhiJKl	ABcDeFgHiJkL	aBcDEfGhIjJkL	aBcDeFGhIjKl	AbcDeFGhIJkL
	aBcdEfFgHIJkL	aBcdEfgHIJKl	AbCdeFghIJkL	ABcDdeFghIJkL	ABcDefGhiJkL
	ABcDeFgHijKkL	AbCDeFgHiJkl	AbCDeFgHIjKl	AbcDeFgHHIjKl	AbcDeFgHIjKL
	aBcdEfgHIjKL	AbCddEfgHiJKL	AbCdeFghIjKL	AbCdEfGhiJkL	AaBCdEfGhiJkL
	aBCdEFgHiJkL	abCdEFgHIjKkL	abCdEfGHiJKl	AbcDefGHiJKL	aBcdEffGhIJKL
	aBcdEfgHiJKL	aBCdeFghIjKL	aBCdDeFghIjKl	ABcDEfGhiJkL	aBCdEfGHiJkkL

	aBcDeFGhIJkL	abCdEfGhIJKl	AbcDefGgHIJkL	AbcDefGhIJKl	ABcdEfgHiJKl
	ABcDeEfgHiJkL	ABcDeFghIjKl	ABcDEfGhiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdeFGhIJjKL	abCdeFgHIJkL	AbcDefGhIJkL	AbCdEffGhIjKL	AbCdEfgHiJkL
	AbCDeFghIjKl	AbCDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKlL	aBcdEfGHIjKl
	AbCdeFgHIjKL	aBcDefGhHiJKL	aBcDefGhIjKL	aBCdEfgHijKL	aBCDeeFgHiJkL
	aBCdEfGhIjKl	AbCdEfGHiJkL	aBbcDeFGHiJkL	aBcdEfGHiJKl	AbCdeFgHiJJKl
	AbCdeFghIJKL	aBcDefGhiJKl	ABCdEffGhiJKl	ABcDeFgHijKL	aBcDEfGhIjKl
	AbCcDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJKl	AaBcdEfgHIJKl	AbCdeFghIJkL
	ABcDefGhhIJkL	AbCDefGhiJkL	AbCDeFgHijKl	ABcDeEFgHiJkl	AbCdEFgHIjKl
	AbcDeFgHIJkL	aBbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFghIiJKL	AbCdeFghIjKL

	AbCdEfGhiJkL	AbCDeFgGhiJkL	aBCdEfGHiJkl	AbCdEFgHIjKl	aBccDEfGHiJKl
	AbcDefGHiJKL	aBcdEfgHiJKL	AaBcdEfgHiJKL	aBCdeFghIjKL	aBCdEfGhhIjKl
	ABcDEfGhiJkL	aBcDEfGhIjKl	AbCdEeFGhIJkl	AbCdeFGhIJKl	AbcDefGhIJKL
	aBbcDefGhIJKl	ABcdEfgHiJKl	ABcDeFghIjJkL	ABcDeFghIjKl	ABcDeFgHiJkL
	aBcDEfGgHiJkL	aBcDeFGhIjKl	AbCdeFGhIJkL	AbcDdeFgHIJkL	AbcDefGhIJkL
	AbCdEfgHiJkLL	AbCdEfgHiJkL	AbCDefGhIjKl	AbCDeFgHhIjKl	AbCdEFgHiJkL
	aBcdEFgHIjKl	AbCddEfGHIjKl	AbCdeFgHiJKL	aBcDefGhIjKL	AbCcDefGhiJKL
	aBCdEfgHijKL	aBCdEfGhIjKkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcdEfGGHiJkL
	aBcdEfGHiJKl	AbCdeFgHiJKL	aBcDdefGhIJKl	ABcDefgHiJKl	ABCdeFgHijKLl
	ABcDeFgHijKl	ABcDEfGhIjKl	aBcDEfGHiIjKl	aBcDeFGhIJkL	aBcdEfGhIJKl

	AbCdeeFgHIJkL	AbCdefGhIJkL	ABcDefgHiJkL	ABbCdEfGhiJkL	AbCDeFgHijKl
	ABcDeFGhIjKkl	AbCdEFgHIjKl	aBcDeFgHIJkL	aBcdEffGHIjKL	aBcdeFgHIjKL
	AbCdefGhIjKL	ABcDdefGhIjKL	AbCdEfGhiJkL	AbCDeFgHijKlL	aBCdEfGHijKl
	AbCdEFgHiJKl	aBcDeFgHIiJKl	AbcDefGHiJKL	aBcdeFgHiJKL	AbCdeeFgHiJKL
	aBcDefGhIjKL	aBCdEfGhiJkL	aBBcDEfGhiJkL	aBcDEfGhIjKl	AbCdEfGHiJKkl
	AbCdeFGhIJKl	AbcDefGhIJKl	ABcdeFfGhIJKl	AbCdeFgHiJKl	ABcDeFghIjKl
	ABCdEefGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKl	AbCdeFgHIJkL
	aBcDefGhIIJkL	aBcDefGhIjKL	AbCdEfgHiJkL)
}
Vietnamese1789 =

西山朝の暦 1789-1801

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>1789, 'origin_of_LSC'=>2374505, 'indices'=> ChineseIndices,
'before' => 'Vietnamese1544', 'after' => 'Vietnamese1631', 'note' => 'Chinese',
'rule_table'=> %w(				ABcDeeFgHiJkL	AbCDefGhIjKl
	AbCDeFgHiJkL	aBcDdEFgHiJkL	aBcdEFgHIjKl	AbcDeFgHIJkL	aBbcDeFgHIjKL
	aBcDefgHIjKL	AbCdEffgHiJKL	aBCdeFghIjKL	aBCdEfGhIjkL	AbCdDEfGhIjKl

	aBCdEfGHiJkL)
}
Vietnamese1631 =

萬全暦 1631-1812

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>1631, 'origin_of_LSC'=>2316802, 'indices'=> ChineseIndices,
'before' => 'Vietnamese1544', 'after' => 'Vietnamese1813', 'note' => 'Chinese',
'rule_table'=> %w(
	ABcDeFgHiJklL	AbCDeFgHiJkL	aBcDeFGhIjKl	AbcDeFGhHIjKl	AbcDeFgHIjKL
	aBcdEfgHIjKL	AbCddEfgHiJKL	AbCdeFghIjKL	AbCDefGhiJkL	AaBCdEfGhIjkL
	AbCdEFgHiJkL	abCdEFgHIjKkL	abCdEfGHiJKl	AbcDeFgHiJKL	aBcdEffGhIJKL
	aBcdEfgHiJKL	aBCdeFghIjKL	aBCdDeFghIjKL	aBCdEfGhIjkL	aBCdEfGHiJKkl

	aBcDeFGhIJkL	abCdEfGHiJKl	AbcDefgGHIJkL	AbcDefGhIJKl	ABcdEfgHiJKl
	ABCdeEfgHiJkL	ABcDeFghIjKl	ABcDEfGhiJkL	AabCDeFgHIjkL	aBcDeFGhIJkL
	abCdEfGhIJjKL	abCdeFgHIJkL	AbcDefGhIJkL	ABcdEffGhIjKL	AbCdEfgHiJkL
	AbCDeFghIjKl	AbCDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKlL	aBcdEfGHIjKl
	AbCdeFgHIjKL	aBcDefGhHiJKL	aBcDefGhIjKL	AbCdEfgHiJkL	aBCDefFgHiJkL
	aBCdEfGhIjKl	AbCdEfGHiJkL	aBbCdEfGHiJkL	aBcdEfGHiJKl	AbCdeFgHiJJKl
	AbCdeFghIJKL	aBcDefGhiJKl	ABCdEffGhiJKl	ABcDeFgHijKl	ABcDEfGhIjKl
	aBCdDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJKl	AbCcdEfgHIJkL	AbCdeFghIJkL
	ABcDefGghIjKL	AbCDefGhiJkL	AbCDeFgHijKl	ABcDeEFgHiJkl	AbCDeFgHIjKl
	AbcDeFgHIJkL	aBccDeFgHIjKL	aBcdEfgHIjKL	AbCdeFggHiJKL	AbCdeFghIjKL

	AbCdEfGhiJkL	AbCDeFgGhiJkL	aBCdEfGHiJkl	AbCdEFgHIjKl	aBccDEfGHiJKl
	AbcDefGHiJKL	aBcdEfgHiJKL	AaBcdEfgHiJKL	aBCdeFghIjKL	aBCdEfGhhIjKl
	ABcDEfGhiJkL	aBcDEfGhIjKl	AbCdEeFGhIJkl	AbCdEfGhIJKl	AbcDefGhIJKL
	aBccDefGhIJKl	ABcdEfgHiJKl	ABcDeFghHiJkL	ABcDeFghIjKl	ABcDeFgHiJkL
	aBcDEfFgHiJkL	aBcDeFGhIjKl	AbCdeFGhIJkL	AbcDdeFgHIJkL	aBcDefGhIjKL
	AbCdEfgHiJkLL	AbCdEfgHiJkL	AbCDefGhIjKl	AbCDeFgHhIjKl	AbCdEFgHiJkL
	aBcdEFgHIjKl	AbCddEfGHIjKl	AbCdeFgHiJKL	aBcDefGhIjKL	AbCcDefGhiJKL
	aBCdEfgHijKL	aBCdEfGhIjKkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcdEfGGHiJkL
	aBcdEfGHiJKl	AbCdeFgHiJKL	aBcDdefGhIJKl	ABcDefgHiJKl	ABCdEfgHijKLl
	ABcDeFgHijKl	ABcDEfGhIjKl	aBcDEfGHiIjKl	aBcDeFGhIJkL	aBcdEfGhIJKl

	AbCdeeFgHIJkL	AbCdefGhIJkL	ABcDefgHiJkL	ABbCdEfGhiJkL	AbCDeFgHijKl
	ABcDeFGhIjKkl	AbCdEFgHIjKl	aBcDeFgHIJkL	aBcdEffGHIjKL	aBcdeFgHIjKL
	AbCdefGhIjKL	ABcDdefGhIjKL	AbCdEfGhiJkL	AbCDeFgHijKlL	aBCdEfGHijKl
	AbCdEFgHiJKl	aBcDeFgHIiJKl	AbcDefGHiJKL	aBcdeFgHiJKL	AbCdeeFgHiJKL
	aBcDefGhIjKL	aBCdEfGhiJkL	aBBcDEfGhiJkL	aBcDEfGhIjKl	AbCdEfGHiJKkl
	AbCdeFGhIJKl	AbcDefGhIJKl	ABcdeFfGhIJKl	AbCdeFgHiJKl	ABcDeFghIjKl
	ABCdEefGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKl	AbCdeFgHIJkL
	aBcDefGhIIJkL	aBcDefGhIjKL	AbCdEfgHiJkL	ABcDeeFgHiJkL	AbCDefGhIjKl
	AbCDeFgHiJkL	aBbCdEFgHiJkL	aBcdEFgHIjKl	AbcDeFgHIJkKl	AbcDeFgHiJKL
	aBcDefgHIjKL	AbCdEfggHiJKL	aBCdeFghIjKL	aBCdEfGhIjkL	AbCDdEfGhIjKl

	aBCdEfGHiJkL	abCdEfGHIjKl	AabCdEfGHiJKl	AbcDefGHiJKL	aBcDefgHhIJKl
	ABcDefgHiJKl	ABCdeFghIjKL	aBCdEfFgHijKl	ABcDEfGhIjkL	aBcDEfGHiJkL
	abBcDeFGhIJkL	abCdEfGhIJKl)
}
Vietnamese1813 =

協紀暦以降 1813-2030

PatternTableBasedLuniSolarExtended, {
'origin_of_MSC'=>1813, 'origin_of_LSC'=>2383276, 'indices'=> ChineseIndices,
'before' => 'Vietnamese1631', 'after' => 'ChineseLuniSolar?time_basis=+07',
'note'   => 'Chinese',
'rule_table'=> %w(		AbCdefGhIJKl	ABbCdefGhIJkL	ABcdEfgHiJkL
	ABcDeFfgHiJkL	AbCDeFgHijKl	AbCDeFGhIjkL	aBcDdEFgHIjKl	aBcDeFgHIJkL
	abCdeFgHIJkL	AbCcdeFgHIjKL	AbCdefGhIjKL	AbCdEfgGhIjKL	AbCdEfgHiJkL
	AbCDeFghIjKl	AbCDeEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKL	abCddEfGHiJKL
	abCdeFgHiJKL	aBcDefGhIiJKL	aBcDefGhIjKL	aBCdEfgHiJkL	aBCdEFfgHiJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcDdeFGhIJkL	aBcdEfGhIJKl	AbCdeFgHiJKL
	aBcCdeFgHiJkL	ABcDefGhIjKl	ABCdEfgGhIjKl	ABcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEeFgHIjKl	AbcDeFgHIJkL	aBcdEfGhIJKl	AbCddEfgHIjKL	AbCdeFghIJkL

	ABcDefGhhIjKL	AbCDefGhIjkL	AbCDeFgHiJkL	aBcDeFGgHiJkL	abCdEFgHIjKl
	AbcDeFgHIJkL	aBcdEeFgHiJKL	aBcdEfgHIjKL	AbCdeFghIjKL	AbCCdeFghIjKL
	aBCdEfGhIjkL	AbCdEFgHhIjkL	aBCdEfGHiJkL	abCdEfGHiJKl	AbcDeEfGHiJKl
	AbcDefGHiJKL	aBcdEfgHiJKL	aBCddEfgHiJKl	ABCdeFghIjKl	ABCdEfGhiJjKl
	ABcDEfGhIjkL	aBcDEfGhIJkL	abCdEfFGhIJkL	abCdEfGhIJKl	AbcDefGhIJKl
	ABcdEefGhIJkL	ABcdEfgHiJkL	ABcDeFghIjKl	ABcCDeFghIjKl	AbCDeFGhIjkL
	aBcDeFGgHIjKl	aBcDeFgHIjKL	abCdeFgHIJkl) + [_year1884] + %w(AbcDefGhIjKL
	AbCdEfgHiJkL	AbCDdEfgHiJkL	AbCDeFghIjKl	AbCDeFgHiJkL	aBbCdEfGHiJkL
	aBcDeFgHIjKL	abCdeFfGHiJKL	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEefGhIjKL
	aBCdEfgHiJkL	aBCdEfGhIjKl	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHhIJkL

	aBcdEfGhIJKl	AbCdeFgHiJKL	aBcDeeFghIJkL	ABcDefGhiJKl	ABcDEfgHiJkL
	aBCdDeFgHiJkL	aBcDeFGhIjKl	AbcDEfGhIJkL	aBbcDeFgHIJkL	aBcdEfGhIJKl
	AbCdeFfgHIjKL	AbCdeFghIJkL	ABcDefGhiJkL	ABcDeEfGhiJkL	AbCDeFgHiJkl
	ABcDeFGhIjKl	AbbCdEFgHIjKl	AbcDeFgHIjKL	aBcdEfgGHiJKL	aBcdEfgHiJKL
	AbCdeFghIjKL	AbCDeeFghIjKL	aBCdEfGhiJkL	aBCdEFgHiJkL	abCdDEfGHiJkL
	abCdEfGHiJKl	AbcDeFgHIjKL	aBbcDefGhIJKL	aBcdEfgHiJKL	aBCdeFfgHiJKl
	ABcDeFghIjKl	ABCdEfGhiJkL	aBCdEEfGhIjkL	aBcDEfGhIJkL	abCdEfGHiJKl
	AbcCdeFGhIJKl	AbcDefGhIJKl	ABcdEfgGhIJkL	ABcdEfgHiJkL	ABcDeFghIjKl
	ABcDEfFghIjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AbCdDeFgHIjKL	abCdeFgHIJkL
	AbcDefGhIJkL	ABbcDefGhIjKL	AbCdEfgHiJkL	AbCDeFggHiJkL	aBCdEFghIjKl

	AbCDeFgHiJkL	aBcDeEfGHiJkL	aBcdEfGHIjKl	AbCdeFgHIjKL	aBcCdeFgHiJKL
	aBcDefGhIjKL	AbCdEfgHhIjKl	ABCdEfgHiJkL	aBCdEfGhIjKl	AbCdEFfGhIjKl
	AbCdEfGHiJkL	aBcdEfGHiJKl	AbCddEfGhIJKl	AbCdeFgHiJKL	aBcDefGhiJKl
	ABCcDefGhiJKl	ABcDEfgHiJkl	ABcDEfGgHiJkl	ABcDeFGhIjKl	AbcDeFGhIJkL
	aBcdEeFgHIJkL	aBcdEfGhIJkL	AbCdeFghIJkL	ABcDdeFghIjKL	AbCDefGhiJkL
	ABcDeFgHhiJkL	AbCDeFgHiJkl	AbCDeFgHIjKl	aBcDeFFgHIjKl	AbcDeFgHIjKL
	aBcdEfgHIjKL	AbCddEfgHiJKL	AbCdeFghIjKL	AbCdEfGhiJkL	AbBCdEfGhiJkL
	aBCdEFgHijKl	AbCdEFgGHiJkl	AbCdEfGHiJKl	AbcDefGHiJKL	aBcdEefGhIJKL
	aBcdEfgHiJKL	aBCdeFghIjKL	aBCcDeFghIjKl	ABCdEfGhiJkL	aBCdEfGhHiJkL
	aBcDeFGhIjKl	AbCdEfGhIJKl	AbcDeeFGhIJkL	AbcDefGhIJKl	ABcdEfgHiJKl

	ABcDdEfgHiJkL	ABcDeFghIjKl	ABcDEfGhiJkL	aBbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdeFGgHIjKl	AbCdeFgHIJkL	AbcDefGhIjKL	AbCdEefGhIjKL	AbCdEfgHiJkL
	AbCDeFghIjKl	AbCDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIiJkL	aBcdEfGHIjKl
	AbCdeFgHIjKL	aBcDefFgHiJKL	aBcDefGhiJKL	aBCdEfgHijKL	aBCDdEfgHijKL
	aBCdEfGhIjKl	AbCdEFgHiJkL	aBbcDEfGHiJkL	aBcdEfGHiJKl	AbCdeFfGhIJKl
	AbCdeFghIJKl	ABcDefGhiJKl	ABCdEefGhiJKl	ABcDeFgHijKl	ABcDEfGhIjKl)
}
HankeHenry =

Hanke-Henry Calendar

[CyclicTableBased, {
  'label'         => 'HankeHenry::HankeHenry',
  'origin_of_LSC' => 1721062, # 1721061(Sun) -> 1721062(Mon)
  'indices'       => [
    When.Index('HankeHenry::Month'),
    When::Coordinates::DefaultDayIndex
  ],
  'rule_table'    => {
    'T'  => {'Rule'  =>(2000...2400).to_a.map {|year|
              [When.tm_pos(year,1,1), When.tm_pos(year,12,31)].map {|date| date.to_i % 7}.include?(3) ? 371 : 364
            }},
    364  => {'Length'=>[30,30,31] * 4},
    371  => {'Length'=>[30,30,31] * 4 + [7]}
  }
}]
Zoroastrian =

Zoroastrian Calendar

[CyclicTableBased, {
  'label'   => 'Zoroastrian::Zoroastrian',
  'indices' => [
    When.Index('ZoroastrianNotes::month::Month', {:unit =>13}),
    When::Coordinates::DefaultDayIndex
  ],
  'origin_of_MSC' => 1,
  'origin_of_LSC' => 1952063 + 5 - 365 * 1020,
  'epoch_in_CE'   => 31,
  'rule_table'    => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[30]*12+[5]}
  },
 'note' => 'Zoroastrian'
}]
Qadimi =

Qadimi Calendar

[CyclicTableBased, {
  'label'   => 'Zoroastrian::Qadimi',
  'indices' => [
     When.Index('ZoroastrianNotes::month::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
   ],
  'origin_of_MSC' => 1,
  'origin_of_LSC' => 1952063,
  'epoch_in_CE'   => 31,
  'rule_table'    => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[30]*12+[5]}
  },
 'note' => 'Zoroastrian'
}]
Shahanshahi =

Shahanshahi Calendar

[CyclicTableBased, {
  'label'   => 'Zoroastrian::Shahanshahi',
  'indices' => [
     When.Index('ZoroastrianNotes::month::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
   ],
  'origin_of_MSC' => 1,
  'origin_of_LSC' => 1952063 + 30,
  'epoch_in_CE'   => 31,
  'rule_table'    => {
    'T' => {'Rule'  =>[365]},
    365 => {'Length'=>[30]*12+[5]}
  },
 'note' => 'Zoroastrian'
}]
Fasli =

Fasli Calendar

[{'Epoch'=>{
             'ZRE'=>{'origin_of_MSC'=>1737},
             'YZ' =>{'origin_of_MSC'=>-630}
          }}, SolarYearTableBasedWithSunset, {
  'label'   => 'Zoroastrian::Fasli',
  'indices' => [
     When.Index('ZoroastrianNotes::month::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
  ],
  'origin_of_MSC' => -630,
  'diff_to_CE'    =>    0,
  'engine_month'  =>    3,
  'engine_day'    =>   21,
  'rule_table'    => {
    365 => {'Length'=>[30] * 12 + [5]},
    366 => {'Length'=>[30] * 12 + [6]}
  },
  'note' => 'Zoroastrian'
}]
WorldSeason =

WorldSeason calendar based on Gregorian calendar

[SolarYearTableBased, {
  'label'   => 'WorldSeason::WorldSeason',
  'indices' => [
      When.Index('WorldSeasonWeekNotes::month::Month', {:unit =>4}),
     When::Coordinates::DefaultDayIndex
    ],
  'engine_day'       => -10, # 11th day before new year
  'rule_table'       => {
    365  => {'Length'=>[91] * 3 + [92]},
    366  => {'Length'=>[91, 92] * 2}
  },
  'note'   => 'WorldSeasonWeek'
}]
ChineseTwin =
[{}, When::BasicTypes::M17n, ChineseSolar.twin('ChineseTwin', [
  "locale:[=ja:, en=en:, alias]",
  "area:[中国,China]",

  [ChineseLuniSolar,
    'name:[黄帝暦=]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1228331',
    'intercalary_month:12'
  ],

  [ChineseLuniSolar,
    'name:[顓頊暦]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1171396&longitude_shift=-1/8',
    'time_basis:+00,+#{P:12}',
    'intercalary_month:9'
  ],

  [ChineseLuniSolar,
    'name:[顓頊暦後期=]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1171396&longitude_shift=-1/8',
    'time_basis:+00,+#{P:12}',
    'base_month:1',
    'intercalary_month:9'
  ],

  [ChineseLuniSolar,
    'name:[夏暦]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1328411',
    'intercalary_month:12'
  ],

  [ChineseLuniSolar,
    'name:[殷暦]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1149071',
    'intercalary_month:12'
  ],

  [ChineseLuniSolar,
    'name:[周暦]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1128251',
    'intercalary_month:12'
  ],

  [ChineseLuniSolar,
    'name:[魯暦=]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1048991',
    'intercalary_month:12'
  ],

  [ChineseLuniSolar,
    'name:[太初暦]',
    'formula:MeanLunation?year_length=562120/1539&lunation_length=2392/81&day_epoch=1683431'
  ],

  [ChineseLuniSolar,
    'name:[四分暦]',
    'formula:MeanLunation?year_length=1461/4&lunation_length=27759/940&day_epoch=1662611'
  ],

  [ChineseLuniSolar,
    'name:[乾象暦]',
    'formula:MeanLunation?year_length=215130/589&lunation_length=43026/1457&day_epoch=-898129'
  ],

  [ChineseLuniSolar,
    'name:[景初暦]',
    'formula:MeanLunation?year_length=673150/1843&lunation_length=134630/4559&day_epoch=+330191'
  ],

  [ChineseLuniSolar,
    'name:[三紀暦=]',
    'formula:MeanLunation?year_length=895220/2451&lunation_length=179044/6063&day_epoch=-28760989'
  ],

  [ChineseLuniSolar,
    'name:[玄始暦]',
    'formula:MeanLunation?year_length=2629759/7200&lunation_length=2629759/89052&day_epoch=-20568349'
  ],

  [ChineseLuniSolar,
    'name:[元嘉暦=]',
    'formula:MeanLunation?year_length=111035/304&lunation_length=22207/752&day_epoch=-200089&longitude_shift=-1/12' # 春分の1ヶ月前
  ],

  [ChineseLuniSolar,
    'name:[大明暦]',
    'formula:MeanLunation?year_length=14423804/39491&lunation_length=116321/3939&day_epoch=-17080189'
  ],

  [ChineseLuniSolar,
    'name:[正光暦=]',
    'formula:MeanLunation?year_length=2213377/6060&lunation_length=2213377/74952&day_epoch=-59357929'
  ],

  [ChineseLuniSolar,
    'name:[興和暦=]',
    'formula:MeanLunation?year_length=6158017/16860&lunation_length=6158017/208530&day_epoch=-105462049'
  ],

  [ChineseLuniSolar,
    'name:[天保暦=]',
    'formula:MeanLunation?year_length=8641687/23660&lunation_length=8641687/292635&day_epoch=-38447089'
  ],

  [ChineseLuniSolar,
    'name:[天和暦=]',
    'formula:MeanLunation?year_length=8568631/23460&lunation_length=8568631/290160&day_epoch=-317950249'
  ],

  [ChineseLuniSolar,
    'name:[大象暦=]',
    'formula:MeanLunation?year_length=4745247/12992&lunation_length=1581749/53563&day_epoch=-13244449'
  ],

  [ChineseLuniSolar,
    'name:[開皇暦=]',
    'formula:MeanLunation?year_length=37605463/102960&lunation_length=5372209/181920&day_epoch=-1506155749'
  ],

  [ChineseLuniSolar,
    'name:[大業暦=]',
    'formula:MeanLunation?year_length=15573963/42640&lunation_length=33783/1144&day_epoch=-519493909'
  ],

  [ChineseLuniSolar,
    'name:[戊寅元暦]',
    'time_basis:+00,+#{P:00}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -58077529,
        'year_length'              =>  '3456675/9464', # 365.0 + 2315/9464(度法)
        'lunation_length'          =>  '384075/13006', #  29.0 + 6901/13006(日法)
        'anomalistic_month_length' =>  '99775/3621',   #  27.0 + 16064/28968 (798200(暦周)/28968(暦法))
        'rissei'                   =>  'a',
        'method'                   =>  'W',
        's'                        => [
          #(先後數) 盈縮數
          [    0.0,     0], # 冬至
          [    0.0,  +896], # 小寒
          [    0.0, +1294], # 大寒
          [    0.0, +1694], # 立春
          [    0.0, +1922], # 啓蟄
          [    0.0, +2263], # 雨水
          [    0.0, +2713], # 春分
          [    0.0, +2213], # 清明
          [    0.0, +1758], # 穀雨
          [    0.0, +1403], # 立夏
          [    0.0,  +848], # 小満
          [    0.0,     0], # 芒種
          [    0.0,  -739], # 夏至
          [    0.0, -1365], # 小暑
          [    0.0, -1821], # 大暑
          [    0.0, -2109], # 立秋
          [    0.0, -2149], # 処暑
          [    0.0, -2491], # 白露
          [    0.0, -2946], # 秋分
          [    0.0, -2264], # 寒露
          [    0.0, -1639], # 霜降
          [    0.0, -1069], # 立冬
          [    0.0,  -556], # 小雪
          [    0.0,  -100]  # 大雪
        ],          
        'm'                       => [
          #(変日差)   盈縮積分の差分(9037=章歳(676)+章月(8361))
          [13006.0, -11341226.0/9037], #   1日
          [13006.0, -10053632.0/9037], #   2日
          [13006.0,  -8557946.0/9037], #   3日
          [13006.0,  -6841146.0/9037], #   4日
          [13006.0,  -4903257.0/9037], #   5日
          [13006.0,  -2978403.0/9037], #   6日
          [13006.0,  -1053445.0/9037], #   7日
          [13006.0,  +1092498.0/9037], #   8日
          [13006.0,  +3238489.0/9037], #   9日
          [13006.0,  +5163376.0/9037], #   10日
          [13006.0,  +6880164.0/9037], #   11日
          [13006.0,  +8388868.0/9037], #   12日
          [13006.0,  +9884554.0/9037], #   13日
          [13006.0, +11172149.0/9037], #   14日
          [13006.0, +10742961.0/9037], #   15日
          [13006.0,  +9455368.0/9037], #   16日
          [13006.0,  +7959678.0/9037], #   17日
          [13006.0,  +6242886.0/9037], #   18日
          [13006.0,  +4526094.0/9037], #   19日
          [13006.0,  +2601205.0/9037], #   20日
          [13006.0,   +663312.0/9037], #   21日
          [13006.0,  -1482690.0/9037], #   22日
          [13006.0,  -3407578.0/9037], #   23日
          [13006.0,  -5332465.0/9037], #   24日
          [13006.0,  -7036252.0/9037], #   25日
          [13006.0,  -8753044.0/9037], #   26日
          [13006.0, -10040638.0/9037], #   27日
          [ 7295.0,  -6229880.0/9037]  #   28日
        ]
     }]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[平朔戊寅暦=]',
    'formula:MeanLunation?year_length=3456675/9464&lunation_length=384075/13006&day_epoch=-58077529'
  ],

  [ChineseLuniSolar,
    'name:[麟徳暦]',
    'time_basis:+00,+#{P:00}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -96608689,
        'year_length'              => '122357/335',
        'lunation_length'          =>  '39571/1340',
        'anomalistic_month_length' =>  '443077/16080', # 27.0 + (743.0+1.0/12)/1340,
      # 'rissei'                   =>  'B',
        'method'                   =>  '#{Method:A}',
        's'                        => [
          # 消息總  盈朒積    初率b    別差c
          [    0.0,     0,  +3.9546, -0.0372], # 冬至
          [ -722.0,   +54,  +3.4091, -0.0372], # 小寒
          [-1340.0,  +100,  +2.8636, -0.0372], # 大寒
          [-1854.0,  +138,  +2.3181, +0.0372], # 立春
          [-2368.0,  +176,  +2.8636, +0.0372], # 啓蟄
          [-2986.0,  +222,  +3.4091, +0.0372], # 雨水
          [-3708.0,  +276,  -3.7220, +0.0329], # 春分
          [-2986.0,  +222,  -3.2086, +0.0329], # 清明
          [-2368.0,  +176,  -2.6952, +0.0329], # 穀雨
          [-1854.0,  +138,  -2.1818, -0.0329], # 立夏
          [-1340.0,  +100,  -2.6952, -0.0329], # 小満
          [ -722.0,   +54,  -3.2086, -0.0329], # 芒種
          [    0.0,     0,  -3.7220, +0.0329], # 夏至
          [ +722.0,   -54,  -3.2086, +0.0329], # 小暑
          [+1340.0,  -100,  -2.6952, +0.0329], # 大暑
          [+1854.0,  -138,  -2.1818, -0.0329], # 立秋
          [+2368.0,  -176,  -2.6952, -0.0329], # 処暑
          [+2986.0,  -222,  -3.2086, -0.0329], # 白露
          [+3708.0,  -276,  +3.9546, -0.0372], # 秋分
          [+2986.0,  -222,  +3.4091, -0.0372], # 寒露
          [+2368.0,  -176,  +2.8636, -0.0372], # 霜降
          [+1854.0,  -138,  +2.3181, +0.0372], # 立冬
          [+1340.0,  -100,  +2.8636, +0.0372], # 小雪
          [ +722.0,   -54,  +3.4091, +0.0372], # 大雪
        ],
        'm'                       => [
          #(変日差) 増減率
          [1340.0,   -134],                    #   1日
          [1340.0,   -117],                    #   2日
          [1340.0,    -99],                    #   3日
          [1340.0,    -78],                    #   4日
          [1340.0,    -56],                    #   5日
          [1340.0,    -33],                    #   6日
          [1191.0,     -9],                    #   7日
          [ 149.0,      0],                    #   7日
          [1340.0,    +14],                    #   8日
          [1340.0,    +38],                    #   9日
          [1340.0,    +62],                    #   10日
          [1340.0,    +85],                    #   11日
          [1340.0,   +104],                    #   12日
          [1340.0,   +121],                    #   13日
          [1042.0,   +102],                    #   14日
          [ 298.0,    +29],                    #   14日
          [1340.0,   +128],                    #   15日
          [1340.0,   +115],                    #   16日
          [1340.0,    +95],                    #   17日
          [1340.0,    +74],                    #   18日
          [1340.0,    +52],                    #   19日
          [1340.0,    +28],                    #   20日
          [ 892.0,     +4],                    #   21日
          [ 448.0,      0],                    #   21日
          [1340.0,    -20],                    #   22日
          [1340.0,    -44],                    #   23日
          [1340.0,    -68],                    #   24日
          [1340.0,    -89],                    #   25日
          [1340.0,   -108],                    #   26日
          [1340.0,   -125],                    #   27日
          [ 743.0+1.0/12, -71]                 #   28日
        ]
     }]
    },
    'doyo'   => (Rational( 4,15) +  244) / 1340
   }
  ],

  [ChineseLuniSolar,
    'name:[大衍暦]',
    'time_basis:+00,+#{P:03}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -35412747829,
        'year_length'              => '1110343/3040',
        'lunation_length'          =>   '89773/3040',
        'anomalistic_month_length' =>  '6701279/243200', # 27.0 +(1685.0+79.0/80)/3040,
      # 'rissei'                   =>  'C',
        's'                        => [
          # 先後數  朓朒積    初率b    別差c
          [    0.0,     0, +13.4524, -0.1886], # 冬至
          [-2353.0,  +176, +10.5564, -0.1634], # 小寒
          [-4198.0,  +314,  +8.0408, -0.1446], # 大寒
          [-5588.0,  +418,  +5.8160, -0.1318], # 立春
          [-6564.0,  +491,  +3.7987, -0.1240], # 雨水
          [-7152.0,  +535,  +1.9265, -0.1240], # 啓蟄
          [-7366.0,  +551,  -0.2048, -0.1178], # 春分
          [-7152.0,  +535,  -1.9968, -0.1190], # 清明
          [-6564.0,  +491,  -3.7956, -0.1240], # 穀雨
          [-5588.0,  +418,  -5.6626, -0.1324], # 立夏
          [-4198.0,  +314,  -7.6555, -0.1436], # 小満
          [-2353.0,  +176,  -9.9405, -0.1436], # 芒種
          [    0.0,     0, -12.0819, +0.1436], # 夏至
          [+2353.0,  -176,  -9.7018, +0.1324], # 小暑
          [+4198.0,  -314,  -7.5450, +0.1240], # 大暑
          [+5588.0,  -418,  -5.5634, +0.1190], # 立秋
          [+6564.0,  -491,  -3.7038, +0.1178], # 処暑
          [+7152.0,  -535,  -1.8954, +0.1178], # 白露
          [+7366.0,  -551,  +0.1783, +0.1240], # 秋分
          [+7152.0,  -535,  +2.0042, +0.1318], # 寒露
          [+6564.0,  -491,  +3.8950, +0.1446], # 霜降
          [+5588.0,  -418,  +5.9214, +0.1634], # 立冬
          [+4198.0,  -314,  +8.1610, +0.1886], # 小雪
          [+2353.0,  -176, +10.9010, +0.1886], # 大雪
        ],
        'm'                       => [
          #(変日差) 損益率
          [3040.0,   +297],                    #   1日
          [3040.0,   +259],                    #   2日
          [3040.0,   +220],                    #   3日
          [3040.0,   +180],                    #   4日
          [3040.0,   +139],                    #   5日
          [3040.0,    +97],                    #   6日
          [2701.0,    +48],                    #   7日
          [ 339.0,     -6],                    #   7日
          [3040.0,    -64],                    #   8日
          [3040.0,   -106],                    #   9日
          [3040.0,   -148],                    #   10日
          [3040.0,   -189],                    #   11日
          [3040.0,   -229],                    #   12日
          [3040.0,   -267],                    #   13日
          [2363.0,   -231],                    #   14日
          [ 677.0,    -66],                    #   14日
          [3040.0,   -289],                    #   15日
          [3040.0,   -250],                    #   16日
          [3040.0,   -211],                    #   17日
          [3040.0,   -171],                    #   18日
          [3040.0,   -130],                    #   19日
          [3040.0,    -87],                    #   20日
          [2024.0,    -36],                    #   21日
          [1016.0,    +18],                    #   21日
          [3040.0,    +73],                    #   22日
          [3040.0,   +116],                    #   23日
          [3040.0,   +157],                    #   24日
          [3040.0,   +198],                    #   25日
          [3040.0,   +237],                    #   26日
          [3040.0,   +276],                    #   27日
          [1686.0,   +165]                     #   28日
        ]
     }]
    },
    'doyo'   => (Rational(13,30) +  531) / 3040
   }
  ],

  [ChineseLuniSolar,
    'name:[五紀暦]',
    'time_basis:+00,+#{P:06}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -96608689,
        'year_length'              => '122357/335',
        'lunation_length'          =>  '39571/1340',
        'anomalistic_month_length' =>  '1366156/49580', # 27.0 + (743.0+5.0/37)/1340,
      # 'rissei'                   =>  'C',
        's'                        => [
          # 先後數  朓朒積    初率b    別差c
          [    0.0,     0,  +5.9668, -0.0843], # 冬至
          [-1037.0,   +78,  +4.6652, -0.0721], # 小寒
          [-1850.0,  +139,  +3.5656, -0.0653], # 大寒
          [-2463.0,  +185,  +2.5583, -0.0590], # 立春
          [-2893.0,  +217,  +1.6375, -0.0532], # 雨水
          [-3152.0,  +236,  +0.8384, -0.0532], # 啓蟄
          [-3246.0,  +243,  -0.0972, -0.0505], # 春分
          [-3152.0,  +236,  -0.8480, -0.0534], # 清明
          [-2893.0,  +217,  -1.6517, -0.0561], # 穀雨
          [-2463.0,  +185,  -2.5057, -0.0584], # 立夏
          [-1850.0,  +139,  -3.3781, -0.0643], # 小満
          [-1037.0,   +78,  -4.3954, -0.0643], # 芒種
          [    0.0,     0,  -5.3592, +0.0643], # 夏至
          [+1037.0,   -78,  -4.2877, +0.0584], # 小暑
          [+1850.0,  -139,  -3.3459, +0.0561], # 大暑
          [+2463.0,  -185,  -2.4475, +0.0534], # 立秋
          [+2893.0,  -217,  -1.5966, +0.0505], # 処暑
          [+3152.0,  -236,  -0.8185, +0.0505], # 白露
          [+3246.0,  -243,  +0.0858, +0.0532], # 秋分
          [+3152.0,  -236,  +0.8505, +0.0590], # 寒露
          [+2893.0,  -217,  +1.6943, +0.0653], # 霜降
          [+2463.0,  -185,  +2.6205, +0.0721], # 立冬
          [+1850.0,  -139,  +3.6007, +0.0843], # 小雪
          [+1037.0,   -78,  +4.8330, +0.0843], # 大雪
        ],
        'm'                       => [
          #(変日差) 損益率
          [1340.0,   -135],                    #   1日
          [1340.0,   -117],                    #   2日
          [1340.0,    -99],                    #   3日
          [1340.0,    -78],                    #   4日
          [1340.0,    -56],                    #   5日
          [1340.0,    -33],                    #   6日
          [1191.0,     -8],                    #   7日
          [ 149.0,     +1],                    #   7日
          [1340.0,    +14],                    #   8日
          [1340.0,    +38],                    #   9日
          [1340.0,    +62],                    #   10日
          [1340.0,    +85],                    #   11日
          [1340.0,   +103],                    #   12日
          [1340.0,   +118],                    #   13日
          [1042.0,   +105],                    #   14日
          [ 298.0,    +30],                    #   14日
          [1340.0,   +128],                    #   15日
          [1340.0,   +115],                    #   16日
          [1340.0,    +95],                    #   17日
          [1340.0,    +74],                    #   18日
          [1340.0,    +52],                    #   19日
          [1340.0,    +28],                    #   20日
          [ 892.0,     +6],                    #   21日
          [ 448.0,     -3],                    #   21日
          [1340.0,    -20],                    #   22日
          [1340.0,    -42],                    #   23日
          [1340.0,    -65],                    #   24日
          [1340.0,    -89],                    #   25日
          [1340.0,   -109],                    #   26日
          [1340.0,   -125],                    #   27日
          [ 743.0+5.0/37, -75]                 #   28日
        ]
     }]
    },
    'doyo'   => (Rational( 4,15) +  244) / 1340
   }
  ],

  [ChineseLuniSolar,
    'name:[正元暦=]',
    'time_basis:+00,+#{P:06}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -145149709,
        'year_length'              => '399943/1095',       # 365.0 + 268/1095(通法)
        'lunation_length'          =>  '32336/1095',       #  29.0 + 581/1095
        'anomalistic_month_length' =>  '301720132/10950000', #  27.0 + 607.0132(轉終日)/1095 (301720132(轉終分)/10950000)
        'rissei'                   =>  'c',
        'method'                   =>  'C',
        's'                        => [
          # 先後數  朓朒積
          [    0.0,     0], # 冬至
          [ -848.0,   +63], # 小寒
          [-1512.0,  +113], # 大寒
          [-2013.0,  +150], # 立春
          [-2364.0,  +176], # 雨水
          [-2576.0,  +192], # 啓蟄
          [-2653.0,  +198], # 春分
          [-2576.0,  +192], # 清明
          [-2364.0,  +176], # 穀雨
          [-2013.0,  +150], # 立夏
          [-1512.0,  +113], # 小満
          [ -848.0,   +63], # 芒種
          [    0.0,     0], # 夏至
          [ +848.0,   -63], # 小暑
          [+1512.0,  -113], # 大暑
          [+2013.0,  -150], # 立秋
          [+2364.0,  -176], # 処暑
          [+2576.0,  -192], # 白露
          [+2653.0,  -198], # 秋分
          [+2576.0,  -192], # 寒露
          [+2364.0,  -176], # 霜降
          [+2013.0,  -150], # 立冬
          [+1512.0,  -113], # 小雪
          [ +848.0,   -63], # 大雪
        ],
        'm'                       => [
          #(変日差) 損益率
          [1095.0,  -110], #   1日
          [1095.0,   -96], #   2日
          [1095.0,   -81], #   3日
          [1095.0,   -64], #   4日
          [1095.0,   -46], #   5日
          [1095.0,   -27], #   6日
          [ 973.0,    -7], #   7日
          [ 122.0,    +1], #   7日
          [1095.0,   +12], #   8日
          [1095.0,   +31], #   9日
          [1095.0,   +51], #   10日
          [1095.0,   +68], #   11日
          [1095.0,   +85], #   12日
          [1095.0,   +96], #   13日
          [ 851.0,   +87], #   14日
          [ 244.0,   +25], #   14日
          [1095.0,  +107], #   15日
          [1095.0,   +94], #   16日
          [1095.0,   +78], #   17日
          [1095.0,   +61], #   18日
          [1095.0,   +42], #   19日
          [1095.0,   +23], #   20日
          [ 729.0,    +5], #   21日
          [ 366.0,    -2], #   21日
          [1095.0,   -16], #   22日
          [1095.0,   -35], #   23日
          [1095.0,   -53], #   24日
          [1095.0,   -71], #   25日
          [1095.0,   -88], #   26日
          [1095.0,  -102], #   27日
          [ 607.0,   -68], #   28日
          [ 366.0,   -42]  #   28日
        ]
     }]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[宣明暦]',
    'time_basis:+00,+#{P:06}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -2580308749,
        'year_length'              => '3068055/8400',
        'lunation_length'          =>  '248057/8400',
        'anomalistic_month_length' =>  '23145819/840000', # 27.0 + 4658.19 / 8400,
      # 'rissei'                   =>  'C',
        's'                        => [
          # 先後數  朓朒数    初率b    別差c
          [     0.0,     0, +33.4511, -0.3695], # 冬至
          [ -6000.0,  +449, +28.0389, -0.3606], # 小寒
          [-11000.0,  +823, +22.6998, -0.3519], # 大寒
          [-15000.0, +1122, +17.8923, -0.4068], # 立春
          [-18000.0, +1346, +11.7966, -0.3998], # 雨水
          [-19800.0, +1481,  +5.7986, -0.3998], # 啓蟄
          [-20400.0, +1526,  -0.2433, -0.3779], # 春分
          [-19800.0, +1481,  -6.1254, -0.3634], # 清明
          [-18000.0, +1346, -12.2048, -0.2987], # 穀雨
          [-15000.0, +1122, -16.9060, -0.2919], # 立夏
          [-11000.0,  +823, -21.5362, -0.2854], # 小満
          [ -6000.0,  +449, -26.0498, -0.2854], # 芒種
          [     0.0,     0, -30.3119, +0.2854], # 夏至
          [ +6000.0,  -449, -25.8126, +0.2919], # 小暑
          [+11000.0,  -823, -21.2454, +0.2987], # 大暑
          [+15000.0, -1122, -17.0296, +0.3634], # 立秋
          [+18000.0, -1346, -11.4744, +0.3779], # 処暑
          [+19800.0, -1481,  -5.6429, +0.3779], # 白露
          [+20400.0, -1526,  +0.1432, +0.3998], # 秋分
          [+19800.0, -1481,  +6.1488, +0.4068], # 寒露
          [+18000.0, -1346, +12.6336, +0.3519], # 霜降
          [+15000.0, -1122, +17.8043, +0.3606], # 立冬
          [+11000.0,  -823, +23.0590, +0.3695], # 小雪
          [ +6000.0,  -449, +28.4618, +0.3695], # 大雪
        ],
        'm'                       => [
          #(変日差) 損益率
          [ 8400.0,   +830],                    # 進1日
          [ 8400.0,   +726],                    #   2日
          [ 8400.0,   +606],                    #   3日
          [ 8400.0,   +471],                    #   4日
          [ 8400.0,   +337],                    #   5日
          [ 8400.0,   +202],                    #   6日
          [ 7465.0,    +53],                    #   7日
          [  935.0,     -7],                    #   7日
          [ 8400.0,    -82],                    #   8日
          [ 8400.0,   -224],                    #   9日
          [ 8400.0,   -366],                    #   10日
          [ 8400.0,   -509],                    #   11日
          [ 8400.0,   -643],                    #   12日
          [ 8400.0,   -748],                    #   13日
          [ 6529.095, -646],                    #   14日
          [ 8400.0,   -830],                    # 退1日
          [ 8400.0,   -726],                    #   2日
          [ 8400.0,   -598],                    #   3日
          [ 8400.0,   -464],                    #   4日
          [ 8400.0,   -329],                    #   5日
          [ 8400.0,   -195],                    #   6日
          [ 7465.0,    -53],                    #   7日
          [  935.0,     +7],                    #   7日
          [ 8400.0,    +82],                    #   8日
          [ 8400.0,   +225],                    #   9日
          [ 8400.0,   +366],                    #   10日
          [ 8400.0,   +501],                    #   11日
          [ 8400.0,   +628],                    #   12日
          [ 8400.0,   +740],                    #   13日
          [ 6529.095, +646]                     #   14日
        ]
     }]
    },
    'doyo'   => (Rational( 1, 2) + 1468) / 8400
   }
  ],

  [ChineseLuniSolar,
    'name:[崇玄暦=]',
    'time_basis:+00,+#{P:06}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -19701911689,
        'year_length'              => '4930801/13500',     # 365.0+3301/13500(通法)
        'lunation_length'          =>  '398663/13500',     #  29.0+7163/13500
        'anomalistic_month_length' =>  '37198697/1350000', #  27.0+7486.97(轉終日)/13500
        'rissei'                   =>  'c',
        's'                        => [
          # 盈縮分     朓朒積
          [     0*1.35,     0], # 冬至
          [ -7740*1.35,  +782], # 小寒
          [-13809*1.35, +1395], # 大寒
          [-18381*1.35, +1857], # 立春
          [-21631*1.35, +2185], # 雨水
          [-23608*1.35, +2385], # 啓蟄
          [-24268*1.35, +2452], # 春分
          [-23608*1.35, +2385], # 清明
          [-21631*1.35, +2185], # 穀雨
          [-18381*1.35, +1857], # 立夏
          [-13809*1.35, +1395], # 小満
          [ -7740*1.35,  +782], # 芒種
          [     0*1.35,     0], # 夏至
          [ +7740*1.35,  -782], # 小暑
          [+13809*1.35, -1395], # 大暑
          [+18381*1.35, -1857], # 立秋
          [+21631*1.35, -2185], # 処暑
          [+23608*1.35, -2385], # 白露
          [+24268*1.35, -2452], # 秋分
          [+23608*1.35, -2385], # 寒露
          [+21631*1.35, -2185], # 霜降
          [+18381*1.35, -1857], # 立冬
          [+13809*1.35, -1395], # 小雪
          [ +7740*1.35,  -782], # 大雪
        ],
        'm'                       => [
          #(変日差) 損益率
          [13500.0,  +1319], #   1日
          [13500.0,  +1150], #   2日
          [13500.0,   +978], #   3日
          [13500.0,   +799], #   4日
          [13500.0,   +617], #   5日
          [13500.0,   +431], #   6日
          [11996.75,  +213], #   7日
          [ 1503.25,   -27], #   7日
          [13500.0,   -285], #   8日
          [13500.0,   -471], #   9日
          [13500.0,   -650], #   10日
          [13500.0,   -840], #   11日
          [13500.0,  -1017], #   12日
          [13500.0,  -1185], #   13日
          [10493.5,  -1032], #   14日
          [ 3006.5,   -293], #   14日
          [13500.0,  -1284], #   15日
          [13500.0,  -1110], #   16日
          [13500.0,   -941], #   17日
          [13500.0,   -757], #   18日
          [13500.0,   -578], #   19日
          [13500.0,   -386], #   20日
          [ 8990.25,  -160], #   21日
          [ 4509.75,   +80], #   21日
          [13500.0,   +324], #   22日
          [13500.0,   +516], #   23日
          [13500.0,   +697], #   24日
          [13500.0,   +879], #   25日
          [13500.0,  +1053], #   26日
          [13500.0,  +1223], #   27日
          [ 7487.0,   +737]  #   28日
        ]
     }]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[重修大明暦=]',
    'time_basis:+00,+#{P:06:30}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, {
        'formula'                  => f,
        'day_epoch'                => -32372914549,
        'year_length'              => '1910224/5230',     # 365.0+1274/5230(日法)
        'lunation_length'          =>  '154445/5230',     #  29.0+2775/5230
        'anomalistic_month_length' =>  '1441106066/52300000', #  27.0+2900.6066(轉終日)/5230
        'denominator'              =>  5230,
        'rissei'                   =>  'c',
        's'                        => [
          # 盈縮分     朓朒積
          [     0*0.523,    0], # 冬至
          [ -7059*0.523, +276], # 小寒
          [-12979*0.523, +508], # 大寒
          [-17697*0.523, +693], # 立春
          [-21150*0.523, +828], # 雨水
          [-23276*0.523, +911], # 啓蟄
          [-24015*0.523, +940], # 春分
          [-23276*0.523, +911], # 清明
          [-21150*0.523, +828], # 穀雨
          [-17697*0.523, +693], # 立夏
          [-12979*0.523, +508], # 小満
          [ -7059*0.523, +276], # 芒種
          [     0*0.523,    0], # 夏至
          [ +7059*0.523, -276], # 小暑
          [+12979*0.523, -508], # 大暑
          [+17697*0.523, -693], # 立秋
          [+21150*0.523, -828], # 処暑
          [+23276*0.523, -911], # 白露
          [+24015*0.523, -940], # 秋分
          [+23276*0.523, -911], # 寒露
          [+21150*0.523, -828], # 霜降
          [+17697*0.523, -693], # 立冬
          [+12979*0.523, -508], # 小雪
          [ +7059*0.523, -276], # 大雪
        ],
        'm'                       => [
          #(変日差) 損益率
          [ 5230.0,   -513], #   1日
          [ 5230.0,   -469], #   2日
          [ 5230.0,   -411], #   3日
          [ 5230.0,   -332], #   4日
          [ 5230.0,   -343], #   5日
          [ 5230.0,   -141], #   6日
          [ 4647.65,   -43], #   7日
          [  582.35,    +4], #   7日
          [ 5230.0,    +63], #   8日
          [ 5230.0,   +164], #   9日
          [ 5230.0,   +258], #   10日
          [ 5230.0,   +352], #   11日
          [ 5230.0,   +427], #   12日
          [ 5230.0,   +481], #   13日
          [ 4065.30,  +403], #   14日
          [ 1164.70,  +117], #   14日
          [ 5230.0,   +505], #   15日
          [ 5230.0,   +462], #   16日
          [ 5230.0,   +395], #   17日
          [ 5230.0,   +309], #   18日
          [ 5230.0,   +219], #   19日
          [ 5230.0,   +117], #   20日
          [ 3482.95,   +27], #   21日
          [ 1747.05,   -11], #   21日
          [ 5230.0,    -86], #   22日
          [ 5230.0,   -184], #   23日
          [ 5230.0,   -278], #   24日
          [ 5230.0,   -368], #   25日
          [ 5230.0,   -438], #   26日
          [ 5230.0,   -493], #   27日
          [ 2900.6066,-293]  #   28日
        ]
     }]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[キタイ暦=https://www2.nao.ac.jp/~mitsurusoma/gendai5/26_suga.pdf]',
    'time_basis:+00,+#{P:06}',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _chinese_uighur.merge({
        'formula'                  => f,
        'year_delta'               => 0,   # 冬至年の変化率 / (10^(-6)日/年)
        'year_span'                => 1    # 冬至年の改訂周期 / 年
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[古授時暦]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _chinese_common.merge({
        'formula'                  => f,
        'year_delta'               => 1,   # 冬至年の変化率 / (10^(-6)日/年)
        'year_span'                => 100  # 冬至年の改訂周期 / 年
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[授時暦]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _chinese_common.merge(_chinese_revision).merge({
        'formula'                  => f,
        'year_delta'               => 1,   # 冬至年の変化率 / (10^(-6)日/年)
        'year_span'                => 100  # 冬至年の改訂周期 / 年
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[大統暦]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _chinese_common.merge(_chinese_revision).merge({
        'formula'                  => f,
        'year_delta'               => 0,   # 冬至年の変化率 / (10^(-6)日/年)
        'year_span'                => 1    # 冬至年の改訂周期 / 年
     })]
    }
   }
  ]
])]
UmmalquraSolar =

Ummalqura Solar Calendar

[SolarYearTableBased, {
  'label'   =>  'SaudiArabia::UmmalquraSolar',
  'origin_of_MSC' => -621,
  'diff_to_CE'    =>    0,
  'engine_month'  =>    9,
  'engine_day'    =>   23,
  'indices' => [
    When.Index('SaudiArabia::SolarMonth', {:unit=>12}),
    When::Coordinates::DefaultDayIndex
  ],
  'rule_table'    => {
    365 => {'Length'=> [30]*5 + [29] + [31]*6},
    366 => {'Length'=> [30]*6        + [31]*6}
  }
}]
JapaneseTwin =
[{}, When::BasicTypes::M17n, ChineseSolar.twin('JapaneseTwin', [
  "locale:[=ja:, en=en:, alias]",
  "area:[日本,Japan]",

  [ChineseLuniSolar,
    'name:[平朔儀鳳暦=]',
    'formula:MeanLunation?year_length=122357/335&lunation_length=39571/1340&day_epoch=-96608689'
  ],

  [ChineseLuniSolar,
    'name:[貞享乙丑暦=]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _japanese_common.merge({
        'formula'                  => f,
        'day_epoch'                => 2336111 +  7.675, # 暦元天正冬至のユリウス日
        'year_epoch'               => 1684,             # 暦元の西暦年
        'year_length'              => 365.241696,       # 暦元の冬至年 / 日
        'anomalistic_year_shift'   => 6.445,            # 暦應(暦元での冬至から近日点通過までの日数)
        'lunation_shift'           =>  2.779 - 0.015,   # 閏應(暦元前経朔から暦元天正冬至までの日数)
        'anomalistic_month_shift'  => 22.72  - 0.015,   # 転應(暦元前近/遠地点通過から暦元天正冬至までの日数)
        'anomaly_method'           => '#{Method:a}',    # (経朔-定朔)の計算方法(a:差分, b:微分, c:幾何学的補正)
        'solar_weight'             => '#{Weight:1}',    # (経朔-定朔)の計算で用いる実行差での太陽盈縮の重み(0:非考慮,1:考慮)
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[貞享暦]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _japanese_common.merge({
        'formula'                  => f,
        'day_epoch'                => 2336111 +  7.69 , # 暦元天正冬至のユリウス日
        'year_epoch'               => 1684,             # 暦元の西暦年
        'year_length'              => 365.241696,       # 暦元の冬至年 / 日
        'anomalistic_year_shift'   => 6.445,            # 暦應(暦元での冬至から近日点通過までの日数)
        'lunation_shift'           =>  2.779,           # 閏應(暦元前経朔から暦元天正冬至までの日数)
        'anomalistic_month_shift'  => 22.72,            # 転應(暦元前近/遠地点通過から暦元天正冬至までの日数)
        'anomaly_method'           => '#{Method:a}',    # (経朔-定朔)の計算方法(a:差分, b:微分, c:幾何学的補正)
        'solar_weight'             => '#{Weight:1}',    # (経朔-定朔)の計算で用いる実行差での太陽盈縮の重み(0:非考慮,1:考慮)
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[宝暦癸酉暦=]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _japanese_common.merge({
        'formula'                  => f,
        'day_epoch'                => 2336111 +  7.9038,# 暦元天正冬至のユリウス日
        'year_epoch'               => 1684,             # 暦元の西暦年
        'year_length'              => 365.241696,       # 暦元の冬至年 / 日
        'anomalistic_year_shift'   => 6.445,            # 暦應(暦元での冬至から近日点通過までの日数)
        'lunation_shift'           =>  2.779 + 0.2138,  # 閏應(暦元前経朔から暦元天正冬至までの日数)
        'anomalistic_month_shift'  => 22.72  + 0.2138,  # 転應(暦元前近/遠地点通過から暦元天正冬至までの日数)
        'anomaly_method'           => '#{Method:a}',    # (経朔-定朔)の計算方法(a:差分, b:微分, c:幾何学的補正)
        'solar_weight'             => '#{Weight:1}',    # (経朔-定朔)の計算で用いる実行差での太陽盈縮の重み(0:非考慮,1:考慮)
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[宝暦甲戌暦=]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _japanese_common.merge({
        'formula'                  => f,
        'day_epoch'                => 2336111 +  7.6223,# 暦元天正冬至のユリウス日
        'year_epoch'               => 1684,             # 暦元の西暦年
        'year_length'              => 365.241696,       # 暦元の冬至年 / 日
        'anomalistic_year_shift'   => 6.445,            # 暦應(暦元での冬至から近日点通過までの日数)
        'lunation_shift'           =>  2.779 - 0.0677,  # 閏應(暦元前経朔から暦元天正冬至までの日数)
        'anomalistic_month_shift'  => 22.72  - 0.0677,  # 転應(暦元前近/遠地点通過から暦元天正冬至までの日数)
        'anomaly_method'           => '#{Method:a}',    # (経朔-定朔)の計算方法(a:差分, b:微分, c:幾何学的補正)
        'solar_weight'             => '#{Weight:1}',    # (経朔-定朔)の計算で用いる実行差での太陽盈縮の重み(0:非考慮,1:考慮)
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[宝暦暦]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _japanese_common.merge({
        'formula'                  => f,
        'day_epoch'                => 2361671 + 14.536, # 暦元天正冬至のユリウス日
        'year_epoch'               => 1754,             # 暦元の西暦年
        'year_length'              => 365.241556,       # 暦元の冬至年 / 日
        'anomalistic_year_shift'   => 6.455,            # 暦應(暦元での冬至から近日点通過までの日数)
        'lunation_shift'           => 25.654,           # 閏應(暦元前経朔から暦元天正冬至までの日数)
        'anomalistic_month_shift'  => 18.88,            # 転應(暦元前近/遠地点通過から暦元天正冬至までの日数)
        's'                        => ChineseSolar.change_unit(365.241556 / 365.241696, _japanese_common['s']),
        'anomaly_method'           => '#{Method:a}',    # (経朔-定朔)の計算方法(a:差分, b:微分, c:幾何学的補正)
        'solar_weight'             => '#{Weight:1}',    # (経朔-定朔)の計算で用いる実行差での太陽盈縮の重み(0:非考慮,1:考慮)
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[修正宝暦暦=]',
    {'formula'=>['12S', '1L'].map {|f| [
      Ephemeris::ChineseTrueLunation, _japanese_common.merge({
        'formula'                  => f,
        'day_epoch'                => 2361671 + 14.681, # 暦元天正冬至のユリウス日
        'year_epoch'               => 1754,             # 暦元の西暦年
        'year_length'              => 365.241626,       # 暦元の冬至年 / 日
        'anomalistic_year_shift'   => 7.42,             # 暦應(暦元での冬至から近日点通過までの日数)
        'lunation_shift'           => 25.82,            # 閏應(暦元前経朔から暦元天正冬至までの日数)
        'anomalistic_month_shift'  => 19.307,           # 転應(暦元前近/遠地点通過から暦元天正冬至までの日数)
        's'                        => ChineseSolar.change_unit(365.241626 / 365.241696, _japanese_common['s']),
        'anomaly_method'           => '#{Method:a}',    # (経朔-定朔)の計算方法(a:差分, b:微分, c:幾何学的補正)
        'solar_weight'             => '#{Weight:1}',    # (経朔-定朔)の計算で用いる実行差での太陽盈縮の重み(0:非考慮,1:考慮)
     })]
    }
   }
  ],

  [ChineseLuniSolar,
    'name:[寛政暦]',
    'time_basis:+00,+09:03:01',          # 寛政9天正冬至.107112
     {'formula'=>['ChineseTrueLunation?day_epoch=2377391.107112&year_epoch=1797&year_length=365.242347071&year_delta=-0.217685&year_span=1000',
                  'Formula']}
  ],

  [ChineseLuniSolar,
    'name:[寛政丁亥暦=]',
    'time_basis:+00,+09:03:01',          # 寛政9天正冬至.107112
     {'formula'=>['ChineseTrueLunation?day_epoch=2377391.107112&year_epoch=1797&year_length=365.242347071&year_delta=-0.217685&year_span=10',
                  'Formula']}
  ],

  [ChineseLuniSolar,
    'name:[天保暦]',
    'time_basis:#{Clock:LAT}?long=135.4520E&lat=35.0117N',
    'intercalary_span:3'
  ],

  [ChineseLuniSolar,
    'name:[旧々暦=]',
    'time_basis:+09:18:59',
    'intercalary_span:3'
  ],

  [ChineseLuniSolar,
    'name:[旧暦]',
    'time_basis:+09:00',
    'intercalary_span:3'
  ]
])]
Chinese_221 =
秦・漢

顓頊暦 -221 - -162 (冬至を11月に固定) (歳首 建亥月)

顓頊暦 -161 - -103 (雨水を1月に固定) (歳首 建亥月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>-222, 'origin_of_LSC'=>1640021, 'border'=>'0*10-01',
'before' => 'ChineseTwin::顓頊暦', 'after' => 'Chinese_103', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
					AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIiJkL
	aBcDeFgHiJKl	AbCdEfGhIjKl	ABcDeFgHiIjKl	AbCdEFgHiJkL	aBcDeFgHIiJkL
	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCdEFgHiIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL
	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEfGHiIjKl	AbCdEfGhIjKL	aBcDeFgHiJkL
	aBCdEfGhIiJkL	aBcDeFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiIjKl	ABcDeFgHiJkL

	aBcDeFGhIjKl	AbCdEfGhIIjKl	AbCdEfGhIjKl	ABcDeFgHiIjKl	AbCDeFgHiJkL
	aBcDeFgHIjKl	AbCdEfGhIiJkL	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIiJkL
	aBcDeFgHiJKl	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHiIJkL
	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEFgHiIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL
	aBCdEfGhIiJkL	aBcDEfGhIjKl	AbCdEfGhIIjKl	AbCdEfGhIjKL	aBcDeFgHiJkL
	aBcDEfGhIiJkL	aBcDeFgHIjKl	AbCdEfGhIjKL	aBcDeFgHiIjKl	AbCDeFgHiJkL
	aBcDeFgHIiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHiIjKl	AbCdEFgHiJkL
	aBcDeFgHiJKl	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEFgHiIjKl	AbCdEfGhIJkL
	aBcDeFgHiJkL	AbCdEfGhIiJkL	aBcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiIjKL
	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGHiIjKl	AbCdEfGhIjKL	aBcDeFgHiIjKl

	AbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIiJKl	AbCdEfGhIjKl	ABcDeFgHiJkL
	aBcDeFGhIiJkL	aBcDeFgHiJKl	AbCdEfGhIiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL
	aBcDeFgHIiJkL	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCdEFgHiIjKl	AbCdEfGHiJkL
	aBcDeFgHiJkL	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEfGHiIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aBCdEfGhIiJkL	aBcDeFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiIjKl
	ABcDeFgHiJkL	aBcDeFGhIiJkL	aBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeFgHiIjKl
	AbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIiJkL	AbCdEfGhIjKl	AbCDeFgHiJkL
	aBcDeFgHIiJkL	aBcDeFgHiJKl	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL
	aBcDeFgHiIJkL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEFgHiIjKl	AbCdEfGhIJkL
	aBcDeFgHiIjKl	ABcdeFgHiJkL	)
}
Chinese_103 =
漢・新

太初暦 -103 - 84

漢・魏

四分暦 85 - 237

蜀漢

四分暦 221 - 264

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>-103, 'origin_of_LSC'=>1683490,
'before' => 'Chinese_221', 'after' => 'Chinese0239', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			ABcdeFgHiJkL	aBCdEfGhIjKl	AbCdEfFGhIjKl	AbCdEfGhIJkL

	aBcDeFgHiJkL	aBCcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJkLl	AbCdEfGhIjKl
	ABcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFgHIjKl	AbCdEfGhIjKL	aBcDeEfGhIjKl
	AbCDeFgHiJkL	aBcDeFgHIjKl	AaBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHiJjKl
	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL	aBCdEfGhIjKl	AbCdEFgHiJkL
	aBcCdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhIjKkL	aBcDEfGhIjKl	AbCdEfGhIJkL
	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEeFGhIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIiJKl	AbCdEfGhIjKl
	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	ABcDdEfGhIjKl
	AbCdEFgHiJkL	aBcDeFgHIjKlL	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCdEFgHhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL

	aBbCdEfGhIjKL	aBcDeFgHiJkL	aBCdEfGhIjJkL	aBcDeFGhIjKl	AbCdEfGhIJkL
	aBcDeFfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AbCcDeFgHIjKl	AbCdEfGhIjKl
	ABcDeFgHiJkLl	AbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhHiJkL	AbCdEfGhIjKl
	AbCDeFgHiJkL	aBcDdEfGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AaBCdEfGhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJJkL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEFfGhIjKl
	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJkLl
	AbCdEfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFgHIjKl	AbCdEfGhIjKL
	aBcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHiJKl	AbCdEfGhIjKl
	AbCDeFgHiJjKl	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL	AbCdEfGhIjKl
	AbCdEFgHiJkL	aBcCdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhIjKkL	aBcDEfGhIjKl

	AbCdEfGHiJkL	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEeFGhIjKl
	AbCdEfGhIjKL	aBcDeFgHiJkL	aABcDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIiJKl
	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKl
	ABcDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKlL	aBcDeFgHiJkL	AbCdEfGhIjKl
	AbCDeFgHhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEeFgHiJkL	aBCdEfGhIjKl
	AbCdEfGHiJkL	aBbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEfGhIjJkL	aBcDeFGhIjKl
	AbCdEfGhIJkL	aBcDeFfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCcDeFgHIjKl
	AbCdEfGhIjKl	ABcDeFgHiJkLl	AbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhHiJKl
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDdEfGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl
	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJJkL	aBcDeFgHiJkL	aBCdEfGhIjKl

	AbCdEFfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	AbCcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEfGhIJkLl	AbCdEfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFGhIjKl
	AbCdEfGhIjKL	aBcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHiJKl
	AbCdEfGhIjKl	ABcDeFgHiJjKl	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL
	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcCdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjKkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHiJkL	aABcDeFgHiJkl	AbCdEfGhIjKl
	AbCDeFgHiJjKl	AbCdEfGHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL	aBCdEfGhIjKl
	AbCdEFgHiJkL	aBcCdEfGhIJkL	aBcDeFgHiJkL	aBCdEfGhIjKkL	aBcDEfGhIjKl
	AbCdEfGhIJkL	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEeFgHIjKl

	AbCdEfGhIjKL	aBcDeFgHiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIiJKl
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl
	ABcDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKlL	aBcDeFgHiJkL	AbCdEfGhIjKl
	AbCdEFgHhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEeFgHiJkL	aBcDEfGhIjKl
	AbCdEfGHiJkL	aBbCdEfGhIjKL	aBcDeFgHiJkL	aBCdEfGhIjJkL	aBcDeFGhIjKl
	AbCdEfGhIjKL	aBcDeFfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AbCcDeFgHIjKl
	AbCdEfGhIjKl	ABcDeFgHiJkLl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdEfGhHiJkL
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjKl
	AaBCdEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHiJJkL	aBcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEfFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL	aBcDeFGhIjKl

	AbCdEfGhIJkLl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFgHIjKl
	AbCdEfGhIjKl	ABcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl	AaBcDeFgHiJKl
	AbCdEfGhIjKl	AbCDeFgHiJjKl	AbCdEfGHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL
	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcCdEfGhIJkL	aBcDeFgHiJkL	aBCdEfGhIjKkL
	aBcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEeFgHIjKl	AbCdEfGhIjKL	aBcDeFgHiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIiJKl	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHiJKl
	AbCdEfGhIjKl	ABcDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKlL	aBcDeFgHiJkL
	AbCdEfGhIjKl	AbCdEFgHhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBbCdEfGhIjKL	aBcDeFgHiJkL	aBCdEfGhIjJkL

	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl
	AbCcDeFgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkLl	AbCdEFgHiJkL	aBcDeFgHIjKl
	AbCdEfGhHiJkL	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDdEfGHiJkL	aBcDeFgHiJkL
	AbCdEfGhIjKl	AaBCdEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHiJJkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AbCdEfFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGhIJkLl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL
	aBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl
	AaBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHiJjKl	AbCdEfGHiJkL	aBcDeFgHiJKl
	AbCdEfGgHiJkL	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcCdEfGhIJkL	aBcDeFgHiJkL
	aBCdEfGhIjKkL	aBcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHhIjKL	aBcDeFgHiJkL

	aBcDEfGhIjKl	AbCdEeFgHIjKl	AbCdEfGhIjKL	aBcDeFgHiJkL	aAbCDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGhIiJKl	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL
	aBcDeFgHiJKl	AbCdEfGhIjKl	ABcDdEfGhIjKl	AbCdEFgHiJkL	)
}
Chinese0008 =

太初暦 7 - 23 (歳首 建丑月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>7, 'origin_of_LSC'=>1723652, 'border'=>'0*12-01',
'before' => 'Chinese_103', 'after' => 'Chinese_103', 'note' => 'Chinese',
'indices'=> _IndicesM12,
'rule_table'=> %w(
  		aBcDeFgHiJkL	aABcDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIiJKl
	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKl
	ABcDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKlL	aBcDeFgHiJkL	AbCdEfGhIjKl
	AbCDeFgHhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL	)
}
Chinese0223 =

四分暦 222

乾象暦 223 - 280

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>222, 'origin_of_LSC'=>1802173,
'before' => 'Chinese_103', 'after' => 'Chinese0239', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			AbCdEfFGhIjKl	aBcDeFgHiJKl	AbCdEfGhIjKl	ABcDdEfGhIjKl
	AbCdEFgHiJkL	aBcDeFgHiJKlL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEFgHhIjKl
	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJkL
	aBbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIjJkL	aBcDeFgHIjKl	AbCdEfGhIjKl
	ABcDeFfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl	AbCcDeFgHiJKl	AbCdEfGhIjKl
	AbCDeFgHiJkLl	AbCdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhHiJkL	aBCdEfGhIjKl

	AbCdEfGHiJkL	aBcDdEfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AaBcDeFGhIjKl
	AbCdEfGhIjKL	aBcDeFgHiJjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGgHiJKl
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcCdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKkL
	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHhIJkL	aBcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aABcDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIJjKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHiJKl	)
}
Chinese0237 =

四分暦 236

景初暦 237 - 239 (歳首 建丑月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>236, 'origin_of_LSC'=>1807282, 'border'=>'0*12-01',
'before' => 'Chinese_103', 'after' => 'Chinese0239', 'note' => 'Chinese',
'indices'=> _IndicesM12,
'rule_table'=> %w(AaBcDeFgHiJKl	AbCdeFgHiJkL	aBcDeFGhIjJkL	aBcDeFgHiJKl)
}
Chinese0239 =
魏・晋・宋

景初暦 239 - 444 (泰始・永初暦も同じもの)

及び十六国

北魏

景初暦 386? - 451

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>239, 'origin_of_LSC'=>1808404,
'before' => 'Chinese0237', 'after' => 'Chinese0445', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
  						aBcDeFgHiJKl	AbCdEfGhIjKl
	AbCDeFfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEFgHiJkLl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEfGhIiJkL	aBcDeFGhIjKl

	AbCdEfGhIJkL	aBcDeEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKl
	AbCdEfGhIjKl	ABcDeFgHiJjKl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdEfGgHiJkL
	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcCdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjKkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIiJKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHiJKl
	AbCdEfGhIjKl	AbCDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKlL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AbCdEFgHhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGhIJkL	aBbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIjJkL
	aBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeFfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl

	AbCcDeFgHiJkL	AbCdEfGhIjKl	AbCDeFgHiJkLl	AbCdEfGHiJkL	aBcDeFgHiJkL
	AbCdEfGhHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDdEfGhIjKL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AaBcDeFGhIjKl	AbCdEfGhIjKl	AbCDeFgHiJjKl	ABcDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGgHiJKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcCdEFgHiJkL
	aBcDeFgHiJKl	AbCdEfGhIjKkL	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHhIJkL
	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCdEEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL
	AaBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJjKl	AbCdEfGhIjKL	aBcDeFgHiJkL
	aBcDEfGgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKL	aBcDdEfGhIjKl	AbCDeFgHiJkL
	aBcDeFgHIjKlL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHhIjKl	AbCdEfGHiJkL
	aBcDeFgHiJKl	AbCdEeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBbCdEfGhIJkL

	aBcDeFgHiJkL	aBCdEfGhIjJkL	aBcDeFGhIjKl	AbCdEfGhIJkL	aBcDeFfGhIjKl
	ABcDeFgHiJkL	aBcDeFGhIjKl	AbCcDeFgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkLl
	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdEfGhHiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL
	aBcDdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjKl	AaBcDEfGhIjKl	AbCdEfGhIJkL
	aBcDeFgHiJjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGgHIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aBcCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKLl	AbCdEfGhIjKl
	AbCDeFgHiJkL	aBcDeFgHIiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeEfGhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJKl	AaBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJjKl
	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEfGgHiJkL	aBcDeFGhIjKl	AbCdEfGhIJkL
	aBcCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKkL	aBcDeFgHIjKl	AbCdEfGhIjKl

	ABcDeFgHhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdEeFgHiJkL	AbCdEfGhIjKl
	AbCdEFgHiJkL	aBbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjJkL	aBcDEfGhIjKl
	AbCdEfGHiJkL	aBcDeFfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCcDeFGhIjKl
	AbCdEfGhIjKL	aBcDeFgHiJkLl	AbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhHiJKl
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl
	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJJkL	aBcDeFgHiJkL	AbCdEfGhIjKl
	AbCdEFfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEfGhIJkLl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFgHIjKl
	AbCdEfGhIjKl	ABcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl	AaBcDeFgHiJkL
	AbCdEfGhIjKl	AbCDeFgHiJJkl	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGgHiJkL

	aBCdEfGhIjKl)
}
Chinese0445 =
宋・斉・梁

元嘉暦 445 - 509 (建元暦も同じもの)

梁・陳

大明暦 510 - 589

及び後梁

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>445, 'origin_of_LSC'=>1883618,
'before' => 'Chinese0239', 'after' => 'Chinese0523', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			AbCdEeFgHiJkL
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjJkL

	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDeFfGhIjKL	aBcDeFgHiJkL	aBCdEfGhIjKl
	AbCcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHiJkLl	AbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIiJKl	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeEFgHiJkL	aBcDeFgHiJKl
	AbCdEfGhIjKl	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AbCdEFgGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGhIJkLl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL
	aBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl
	AaBcDeFgHiJkL	AbCdEfGhIjKl	AbCDeFgHiJjKl	AbCdEfGHiJkL	aBcDeFgHiJkL
	AbCdEfGgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDdEfGhIjKL	aBcDeFgHiJkL
	aBCdEfGhIjKlL	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHhIjKl	ABcDeFgHiJkL

	aBcDeFGhIjKl	AbCdDeFgHiJKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBbCdEFgHiJkL
	aBcDeFgHiJKl	AbCdEfGhIjJkL	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFfGhIJkL
	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkLl
	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkL
	aBcDEeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKl	ABbCdEfGhIjKl	AbCDeFgHiJkL
	aBcDeFgHIjJkL	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCDeFfGhIjKl	AbCdEfGHiJkL
	aBcDeFgHiJkL	AbCcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkLl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aBCdEfGhIiJkL	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeEfGhIjKl
	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHiJKl	AbCdEfGhIjKl	ABcDeFgHiJjKl
	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL

	aBcCdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhIjKkL	aBcDEfGhIjKl	AbCdEfGhIJkL
	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdDeFgHIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aBbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjJKl	AbCdEfGhIjKl
	AbCDeFgHiJkL	aBcDeFfGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDdEfGhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJKlL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiIjKl
	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIJkL
	aBbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKkL	aBcDeFgHIjKl	AbCdEfGhIjKl
	ABcDeFgGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCcDeFgHiJkL	)
}
Chinese0384 =
後秦

三紀暦 384 - 417

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>384, 'origin_of_LSC'=>1861352,
'before' => 'Chinese0239', 'after' => 'Chinese0239', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
	AbCdEfGhIjKl	AbCDeEfGhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJkL	AaBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJjKl
	AbCdEfGhIjKL	aBcDeFgHiJkL	aBCdEfGgHiJkL	aBcDeFGhIjKl	AbCdEfGhIjKL
	aBcCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKkL	aBcDeFgHiJKl	AbCdEfGhIjKl

	ABcDeFgHhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCdEeFgHiJkL	AbCdEfGhIjKl
	AbCdEFgHiJkL	aBbCdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhIjJkL	aBcDEfGhIjKl
	AbCdEfGhIJkL	aBcDeFfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCcDeFgHIjKl
	AbCdEfGhIjKL	aBcDeFgHiJkLl	)
}
Chinese0412 =
北涼

玄始暦 412 - 439

北魏

玄始暦 452 - 522

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>412, 'origin_of_LSC'=>1871570,
'before' => 'Chinese0239', 'after' => 'Chinese0523', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEeFgHIjKl
	AbCdEfGhIjKL	aBcDeFgHiJkL	aBbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKKl
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFgGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl
	AbCDdEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHiJKl	AaBcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEfGHiIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIJkL	aBbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKkL	aBcDeFgHIjKl
	AbCdEfGhIjKl	ABcDeFgHhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdDeFgHiJkL
	AbCdEfGhIjKl	AbCdEFgHiJkLl	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIiJkL

	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcDeFfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl
	AbBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHiJjKl	AbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGgHiJKl	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDdEFgHiJkL	aBcDeFgHiJKl
	AbCdEfGhIjKl	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiIJkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AbCdEFfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGhIJkKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGgHiJkL
	aBcDeFgHIjKl	AbCdEfGhIjKl	ABcDdEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl
	AaBcDeFgHiJkL	AbCdEfGhIjKl	AbCDeFgHiIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL
	AbCdEeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBbCdEfGhIjKL	aBcDeFgHiJkL
	aBCdEfGhIjKkL	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHhIjKl	ABcDeFgHiJkL

	aBcDeFGhIjKl	AbCdDeFgHiJKl	AbCdEfGhIjKl	ABcDeFgHiJkLl	AbCdEFgHiJkL
	aBcDeFgHiJKl	AbCdEfGhIiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFfGhIJkL
	aBcDeFgHiJkL	AbCdEfGhIjKl	AbBcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJjKl
	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkL
	aBcDEeFgHiJkL	aBcDeFgHIjKl	)
}
Chinese0540 =
東魏・北斉

興和暦 540 - 550

北斉

天保暦 551 - 577

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>540, 'origin_of_LSC'=>1918317,
'before' => 'Chinese0523', 'after' => 'Chinese0523', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			aBcDeEfGhIjKl
	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJjKl
	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdEfGgHiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL

	aBbCdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhIjKkL	aBcDEfGhIjKl	AbCdEfGhIJkL
	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdDeFgHIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkLl	AbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjJKl	AbCdEfGhIjKl
	AbCDeFgHiJkL	aBcDeFfGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbBCdEfGhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJKkL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHhIjKl
	AbCdEfGhIJkL	aBcDeFgHiJkL	)
}
Chinese0523 =
北魏・西魏

正光暦 523 - 565

及び北周

東魏

正光暦 534 - 539

北周

天和暦 566 - 578

北周・隋

大象暦 579 - 583

開皇暦 584 - 596

隋・唐

大業暦 597 - 618

戊寅元暦 619 - 665

唐・周

麟徳暦 666 - 728 総法 1340(小余の分母)

大衍暦 729 - 761 通法 3040( 〃 )

五紀暦 762 - 783 通法 1340( 〃 )

正元暦 784 - 806

観象暦 807 - 821

宣明暦 822 - 892 統法 8400( 〃 )

唐~後晋

崇玄暦 893 - 938

(後晋

調元暦 939 - 943)

(後晋

調元暦? 944 - 946)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>523, 'origin_of_LSC'=>1912115,
'before' => 'Chinese0412', 'after' => 'Chinese0956', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
  				AbCdEfGhIjKL	aBbCdEfGhIjKl	AbCDeFgHiJkL
	aBcDeFgHIjKkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgGhIjKl	AbCdEfGHiJkL
	aBcDeFgHiJKl	AbCcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkLl	AbCdEfGhIJkL
	aBcDeFgHiJkL	aBCdEfGhIiJkL	aBcDeFGhIjKl	AbCdEfGhIJkL	aBcDeEfGhIjKl
	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJjKl
	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdEfGgHiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL

	aBcDdEfGHiJkL	aBcDeFgHiJkL	AbCdEfGhIjKlL	aBcDEfGhIjKl	AbCdEfGHiJkL
	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEeFGhIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIiJKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	AbCdEfGhHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDdEfGhIjKL
	aBcDeFgHiJkL	aBCdEfGhIjKl	AaBcDeFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJjKl
	ABcDeFgHiJkL	aBcDeFGhIjKl	AbCdEfFgHIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL
	AbCcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJkLl	aBCdEfGhIjKl	AbCdEFgHiJkL
	aBcDeFgHhIJkL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdDEfGhIjKl	AbCdEfGhIJkL
	aBcDeFgHiJkLl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJjKl	AbCdEfGhIjKl
	ABcDeFgHiJkL	aBcDeEfGhIJkL	aBcDeFgHiJkL	aBCdEfGhIjKl	AaBcDeFGhIjKl

	AbCdEfGhIJkL	aBcDeFgHiJjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGgHIjKl
	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcCdEFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKkL
	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIiJkL	aBcDeFgHiJkL	AbCdEfGhIjKl
	AbCdEEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL	ABbcdEfGhIJKl	AbCdeFgHiJkL
	ABcDefGhIjJkL	AbCDefGhIjKl	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHIjKl
	AbCdeFgHIJkL	aBccDeFgHIjKL	aBcdEfgHIjKL	AbCdEfghIJkLL	AbCdeFgHiJkL
	AbCdEfGhIjKl	AbCDeFgHhIjKl	AbCdEFgHiJkL	aBcdEFgHIjKl	AbCddEfGHIjKl
	AbCdeFgHiJKL	aBcDefGhIjKL	AbBcdEfgHiJKL	aBCdeFghIjKL	aBCdEfGhIjJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfFGhIJKl	aBcdEfGhIJKl	aBcDeFGhIjKl
	AbCcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHiJkLl	AbCdEFgHiJkL	aBcDeFgHiJKl

	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeEfGhIJkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AaBcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJjKl	ABcDeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcCDeFgHiJkL
	AbCdEfgHiJkL	AbCDeFghIjKlL	aBCdEfGhIjKl	AbCdEfGHiJKl	aBcDeFgHIiJKl
	aBcdEfGHiJKL	aBcdeFgHiJKL	aBcDeeFgHiJKL	aBcDefGhIjKL	aBCdEfgHiJkL
	aBCcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGHiJkKl	AbcDeFGhIJkL	aBcdEfGhIJKl
	AbCdeFgGhIJKl	AbCdeFghIJkL	ABcDefGhiJKL	aBcDEefGhIjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AaBcDeFgHIjKl	AbcDeFgHIJkL	aBcdEfGhIIJkL	aBcdEfgHIjKL
	AbCdeFghIJkL	ABcDeeFghIJkL	AbCdEfGhIjKl	AbCDeFgHiJkL	aBbCdEFgHiJkL
	abCdEFgHIjKl	AbcDeFgHIJJkl	AbcDeFgHiJKL	aBcdEfgHIjKL	AbCdeFggHiJKL

	aBCdeFghIjKL	aBCdEfGhIjkL	AbCdDEfGhIjKl	aBCdEfGHiJkL	abCdEfGHiJKl
	AabCdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHIiJKL	aBcdEfGhiJKL	aBCdEfgHiJkL
	aBCdEfFgHijKL	aBcDEfGhIjKl	aBCdEfGhIJkL	aBbcDeFGhIJkL	aBcdEfGhIJKl
	AbCdeFgHiJKlL	AbcDefGhIJkL	ABcdEfGhiJKL	aBcDeFggHiJkL	AbCDeFghIjKl
	AbCDEfgHIjkL	aBcDEeFGhIjKl	AbcDeFGhIJkL	abCdeFGhIJKlL	aBcdEfgHIJkL
	AbCdefGhIJkL	AbCDefGhiIJkL	aBCdEfgHiJkL	AbCdEfGhIjKl	AbCdEFfGhIjKl
	AbCdEfGHiJKl	aBcDeFgHIjKL	aBccDefGHiJKL	abCdeFgHiJKL	aBcDefGhIjKKl
	ABcDefGhIjKl	ABCdEfGhiJkL	aBCdEFgHhiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL
	AbcDdEfGHiJKl	AbcDefGHiJKl	ABcdEfgHiJKL	aBBcdEfgHiJKl	ABcDeFghIjKl
	ABCdEfGhiJjKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfFgHIjKl	AbCdeFGhIJKl

	AbcDefGhIJKl	AbCcdEfGhIJkL	AbCdeFgHiJkL	ABcDefGhIjKkL	aBCdEfGhIjKl
	AbCDeFgHiJkL	aBcDeFGhHiJkL	aBcDeFgHIJkL	abCdeFgHIJkL	AbcDdeFgHIjKL
	aBcDefGhIJkL	AbCdEfgHiJkL	AaBCdEfgHiJkL	AbCdEfGhIjKl	AbCDeFgHiJjKl
	AbCdEfGHiJkL	aBcdEfGHIjKl	AbCdeFfGHiJKl	AbCdefGHiJKL	aBcDefGhiJKL
	aBCcdEfgHiJKL	aBcDeFgHijKL	aBCdEfGhIjKkl	ABcDEfGhIjKl	AbcDEfGHiJkL
	abCdEfGHhIJkL	aBcdEfGhIJKl	AbCdeFgHiJKl	ABcDeefGHiJKL	aBcdEfgHiJKl
	ABcDeFghIjKL	aAbCDeFgHijKl	ABcDeFGhIjKl	aBcDeFGhIJjKl	aBcDeFgHIJkL
	abCdeFgHIJkL	AbCdeeFgHIJkL	AbcDefGhIJkL	AbCdEfgHiJkL	ABcDdEfgHiJkL
	AbCdEFgHijKl	AbCDeFgHIjKll	AbCdEfGHIjKl	aBcDeFgHIjKL	aBcdEfgHHiJKL
	aBcdeFgHiJKL	aBcDefGhIjKL	AbCdEefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIjKl

	AaBcDEfGhIjKl	AbCdEfGHiJKl	aBcdEfGHiJJKl	aBcdEfGhIJKl	AbCdeFgHiJKL
	aBcDefFgHiJKl	ABcDefGhIjKl	ABCdEfGhiJkL	aBCcDeFgHiJkL	aBcDEfGhIJkl
	AbCdEfGHiJKlL	abcDeFGhIJKl	AbcdEfGhIJKl	ABcdeFgHhIJKl	AbCdEfgHiJKl
	ABcDeFghIjKl	ABcDEefGhIjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKl
	AbCdeFgHIJkL	AbcDefGhIJjKL	aBcDefGhIjKL	AbCdEfghIJkL	ABcDeFggHiJkL
	AbCDefGhIjKl	AbCDeFgHiJkL	aBcCdEFgHiJkL	aBcdEFgHIjKl	AbCdeFgHIjKLl
	AbCdeFgHiJKL	aBcDefGhIjKL	AbCdEfggHiJKL	aBCdeFgHijKL	aBCdEfGhIjKl
	AbCdEeFGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKl	AaBcdEfGhIJKl	AbCdeFgHiJKL
	aBcDefgHiIJKl	ABcDefgHiJkL	ABcDeFgHijKL	aBCdEfGgHijKL	aBcDeFGhIjKl
	aBcDEfGhIJkL	aBccDeFGhIJkL	aBcdEfGhIJKl	AbCdefGhIJKkL	AbCdefGhIJkL

	ABcDefgHiJkL	ABcDeFggHiJkL	AbCDeFgHijKl	AbCDeFgHIjKl	aBcDdEFgHIjKl
	aBcDeFgHIjKL	aBcdEfgHIJkL	AbBcdEfgHIjKL	AbCdefGhIjKL	AbCdEfGhiJjKL
	aBCdEfGhiJkL	AbCdEFgHijKl	AbCDeFfGhIJkl	AbCdEfGHiJKl	aBcDeFgHIjKL
	aBccdEfGHiJKL	aBcdeFgHiJKL	aBCdefGhIjKLl	ABcDeFghIjKL	aBCdEfGhiJkL
	aBCdEfGhHiJkL	aBcDEfGhIjKl	AbCdEfGHiJKl	aBcDdeFGhIJkL	AbcDefGhIJKl
	ABcdeFgHiJKl	ABbCdEfgHiJkL	ABcDeFghIjKl	ABcDEfgHiJjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGgHIjKl	AbCdeFgHIJkL	aBcDefGhIJkL	AbCcDefGhIjKL
	AbCdEfgHiJkL	ABcDefGhIjKkL	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIiJkL
	aBcdEfGHIjKl	AbcDeFgHIjKL	aBcDeeFgHiJKL	aBcdEfgHIjKL	AbCdEfghIjKL
	AaBCdeFgHijKL	aBCdEfGhIjKl	AbCdEFgHiJjKl	aBCdEfGHiJkL	abCdEfGHiJKl

	AbCdeFfGhIJKl	AbCdefGHiJKL	aBcDefgHiJKL	aBCdDefgHiJKl	ABcDeFgHijKL
	aBcDEfGhIjkLl	ABcDeFGhIjKl	aBcDeFGhIJkL	abCdEfGhHIJkL	aBcdEfGhIJKl
	AbCdefGhIJKl	ABcDeefGhIJkL	ABcdEfgHiJkL	ABcDeFgHijKl	ABbCDeFgHijKl
	AbCDeFgHIjKl	aBcDeFGhIJjKl	aBcDeFgHIjKL	aBcdeFgHIJkL	AbCdefFgHIjKL
	AbCdefGhIjKL	AbCdEfgHiJkL	AbCDdEfgHiJkL	aBCdEFgHijKl	AbCdEFgHiJKll
	AbCdEfGHiJKl	aBcDeFgHIjKL	aBcdeFgHHiJKL	aBcdeFgHiJKL	aBcDefGhIjKL
	aBCdEefGhIjKl	ABCdEfgHiJkL	aBCdEfGhIjKl	AaBcDEfGhIjKl	AbCdEfGHiJKl
	aBcDefGHiJKkl	ABcdEfGhIJkl	ABCdeFgHiJKl	ABcDefGgHiJkL	ABcDefGhIjKl
	ABcDEfgHiJkL	aBcCDeFgHiJkL	aBcDeFGhIjKl	AbCdeFGhIJkLl	AbcDeFgHIJkL
	aBcdEfGhIJkL)
}
Chinese0689 =
唐・周

麟徳暦 688 - 700 (歳首 建子月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>688, 'origin_of_LSC'=>1972387, 'border'=>'0*11-01',
'before' => 'Chinese0523', 'after' => 'Chinese0523', 'note' => 'Chinese',
'indices'=> [
     When.Index('Chinese::MonthA', {:branch=>{1=>'_m:Calendar::閏'}}),
     When::Coordinates::DefaultDayIndex
 ],
'rule_table'=> %w(
  				AbcDeFgHIJkL	aBcdEfGhIIJkL	aBcdEfgHIjKL
	AbCdeFghIJkL	ABcDeeFghIJkL	AbCdEfGhIjKl	AbCDeFgHiJkL	aBbCdEFgHiJkL
	abCdEFgHIjKl	AbcDeFgHIJJkl	AbcDeFgHiJKL	aBcdEfgHIjKL	AbCdeFggHiJKL)
}
Chinese0761 =

大衍暦 760-761 (歳首 建子月)

五紀暦 762 (歳首 建子月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>760, 'origin_of_LSC'=>1998670, 'border'=>'0*11-01',
'before' => 'Chinese0523', 'after' => 'Chinese0523', 'note' => 'Chinese',
'indices'=> [
     When.Index('Chinese::MonthB', {:branch=>{1=>'_m:Calendar::閏'}}),
     When::Coordinates::DefaultDayIndex
 ],
'rule_table'=> %w(AbcDdeFgHIjKL	aBcDefGhIJkL	AbCdEfgHiJkL)
}
Chinese0618 =

『唐・日本における進朔に関する研究』(2013-10版)を使用する場合の朔閏表(一部修正あり)

隋・唐

大業暦 618

戊寅元暦 619 - 665

唐・周

麟徳暦 666 - 728 総法 1340(小余の分母)

大衍暦 729 - 761 通法 3040( 〃 )

五紀暦 762 - 783 通法 1340( 〃 )

正元暦 784 - 806

観象暦 807 - 821

宣明暦 822 - 892 統法 8400( 〃 )

唐~後梁

崇玄暦 893 - 907

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>618, 'origin_of_LSC'=>1946814,
'before' => 'Chinese0523', 'after' => 'Chinese0523', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(		aBcDeFgHiJkL	ABbcDefGhIJKl	AbCdeFgHiJkL
	ABcDefGhIjJkL	AbCDefGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL	aBcdEFgHIjKl
	AbCdeFgHIJkL	aBcCdeFgHIjKL	aBcdEfgHIjKL	AbCdeFghIJkLL	AbCdeFgHiJkL
	AbCdEfGhIjKl	AbCDeFgHhIjKl	AbCdEFgHiJkL	aBcdEfGHIjKl	AbCddEfGHIjKl
	AbCdeFghIJKL	aBcDefgHIjKL	AbBcDefgHiJKL	aBCdeFghIjKL	aBCdEfGhIjJkL
	aBcDEfGhIjKl	AbcDEfGHiJkL	aBcdEfFGhIJkL	aBcdEfGhIJKl	aBcDeFGhIjKl
	AbCcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHiJkLl	AbCdEFgHiJkL	aBcDeFgHiJKl

	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeEfGhIJkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AaBcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJjKl	ABcDeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcCDeFgHiJkL
	AbCdEfgHiJkL	AbCDeFghIjKlL	aBCdEfGhIjKl	AbCdEFgHiJKl	aBcDeFgHIiJKl
	aBcdEfGHiJKL	abCdeFgHiJKL	aBcDeeFgHiJKL	aBcDefGhIjKL	aBCdEfgHiJkL
	aBCcDeFgHiJkL	AbcDEfGhIjKL	AbcdEfGHiJkKl	AbcDeFGhIJkL	aBcdEfGhIJKl
	AbCdeFgGhIJKl	AbCdeFgHiJKl	ABcDefGhIjKL	aBcDEefGhIjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AaBcDeFgHIjKl	AbcDeFgHIJkL	aBcdEfGhIIJkL	aBcdEfgHIjKL
	AbCdeFghIJKL	aBcDeeFghIJKL	abCdEfGhIjkL	AbCDeFgHiJkL	aBbCdEFgHiJkL
	abCdEFgHIjKl	AbcDeFgHIJJkl	AbcDeFgHiJKL	aBcdEfgHIJkL	AbCdeFggHiJKL

	aBCdeFghIjKL	aBCdEfGhIjkL	AbCdDEfGhIjkL	aBCdEfGHiJkL	abCdEfGHiJKl
	AabCdEfGHiJKl	AbcDefGHiJKL	aBcDefGhIiJKL	aBcDefGhIjKL	aBCdEfgHiJkL
	aBCDeFfgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	AbbcDeFGHiJkL	aBcdEfGHiJKl
	AbCdeFgHiJKLl	AbcDefGhIJkL	ABcdEfgHiJkL	ABcDeFggHiJkL	ABcDeFghIJkL
	aBcDEfGhIjKl	AbCdEeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJkLL	AbcdEfGhIJkL
	AbCdeFghIJkL	ABcDefGhiIJkL	AbCDefGhiJkL	aBCdEfGHijKl	AbCdEFfGhIjKl
	AbCdEfGHiJKl	aBcdEfGHIjKL	abCcdEfGHiJKl	AbCdeFgHiJKL	aBcDefGhIjKKl
	ABCdeFghIjKL	aBCdEfGhiJkL	aBCdEFgHhiJkL	aBcDEfGHiJkl	AbCdEfGHiJKl
	AbcDdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHiJKL	aBBcdEfgHiJKl	ABcDeFghIjKl
	ABCdEfGhiJjKl	ABcDeFGhiJkL	aBcDEfGhIjKl	AbCdEfFGhIJkL	abCdeFGhIJkL

	AbcDefGhIJKl	ABccDefGhIJkL	AbCdEfgHiJkL	ABcDeFghIjKkL	AbCDeFghIjKl
	AbCDeFGhiJkL	aBcDeFGhHiJkL	aBcDeFgHIjKL	abCdeFgHIJkL	AbcDdeFgHIjKL
	aBcdeFGhIJkL	AbCdEFghiJkL	AaBCdEfgHiJkL	AbCdEfGhIjKl	AbCDeFgHiJjKl
	AbCdEfGHiJkL	aBcdEfGHIjKl	AbCdeFfGHiJKl	AbCdefGHiJKL	aBcDefgHiJKL
	AbCcDefgHiJKL	aBCdeFgHijKL	aBCdEfGhIjKkl	ABcDeFGhIjKl	aBcDEfGhIJkL
	abCdEfGHhIJkL	abCdEfGhIJKl	AbCdefGhIJKl	ABcDeefGHiJKL	aBcdEfgHiJKl
	ABcDeFgHijKL	aAbCDeFgHijKl	AbCDeFGhIjKl	AbcDeFGhIJjKl	aBcDeFgHIJkL
	aBcdeFgHIJKl	AbCdeeFgHIjKL	AbCdefGhIJkL	AbCdEfGhiJkL	AbCDdEfgHiJkL
	AbCdEFgHijKl	AbCDeFgHIjKll	AbCdEfGHIjKl	aBcDeFgHIjKL	aBcdEfgHHiJKL
	aBcdeFgHiJKL	aBCdefGhIjKL	AbCdEefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIjKl

	AaBcDEfGhIjKl	AbCdEfGHiJKl	aBCdefGHiJJKl	aBcdEfGhIJKl	AbCdeFgHiJKL
	aBcDeFfgHiJKl	ABcDefGhIjKl	ABcDEfGhiJkL	aBCcDeFgHiJkL	aBcDEfGhIJkl
	AbCdEfGHiJKlL	abcDeFGhIJKl	AbcDefGhIJKl	ABcdeFgHhIJKl	AbCdEfgHiJkL
	ABcDeFghIjKl	ABcDEefGhIjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHIjKL
	abcDeFgHIJkL	AbcDefGhIJjKL	aBcDefGhIjKL	AbCdEfghIJkL	ABcDeFggHiJkL
	AbCDefGhIjKl	AbCDeFgHiJkL	aBcCdEFgHiJkL	aBcdEFgHIjKl	AbCdeFgHIjKLl
	AbCdeFgHiJKL	aBcDefGhIjKL	AbCdEfggHiJKL	aBCdeFgHijKL	aBCdEfGhIjKl
	AbCdEeFGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKl	AaBcdEfGhIJKl	AbCdeFgHiJKL
	aBcDefgHiIJKl	ABcDefgHiJKl	ABcDeFgHijKL	aBCdEfGgHijKL	aBcDeFGhIjKl
	aBcDEfGhIJkL	aBccDeFGhIJkL	aBcdEfGhIJKl	AbCdefGhIJKkL	AbCdefGhIJkL

	ABcDefgHiJkL	ABcDeFgHhiJkL	AbCDeFgHijKl	AbCDeFgHIjKl	aBcDdEFgHIjKl
	AbcDeFgHIjKL	aBcdEfgHIJkL	AbBcdeFgHIjKL	AbCdefGhIjKL	AbCdEfgHiJjKL
	aBCdEfGhiJkL	AbCdEFgHijKl	AbCdEFfGhIJkl	AbCdEfGHiJKl	AbcDeFgHIjKL
	aBccdEfGHiJKL	aBcdeFgHiJKL	aBCdefGhIjKLl	ABcDeFghIjKL	aBCdEfGhiJkL
	aBCdEfGhHiJkL	aBcDEfGhIjKl	AbCdEfGHiJKl	aBcDdeFGhIJkL	AbcdEfGhIJKl
	ABcdeFgHiJKl	ABbCdeFgHiJkL	ABcDeFghIjKl	ABcDEfgHiJjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGgHIjKl	AbCdeFgHIJkL	aBcDefGhIJkL	AbCcDefGhIjKL
	AbCdEfghIJkL	ABcDefGhIjKkL	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIiJkL
	aBcdEFghIJKl	AbCdeFgHIjKL	aBcDeeFgHiJKL	aBcDefgHIjKL	AbCdEfghIjKL
	AaBCdeFgHijKL	aBCdEfGhIjKl	AbCdEFgHiJjKl	AbCdEfGHiJkL	abCdEFgHIjKL

	abCdeFfGHiJKl	AbcDefGHiJKL	aBcDefgHiJKL	aBCdDefgHiJKl	ABcDeFgHijKL
	aBcDEfGhIjkLl	ABcDeFGhIjKl)
}
Chinese0618B =

『唐・日本における進朔に関する研究』(2013-10版)を使用する場合の朔閏表(一部修正あり)

唐・周

麟徳暦 688 - 700 (歳首 建子月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>688, 'origin_of_LSC'=>1972387, 'border'=>'0*11-01',
'before' => 'Chinese0618', 'after' => 'Chinese0618', 'note' => 'Chinese',
'indices'=> [
     When.Index('Chinese::MonthA', {:branch=>{1=>'_m:Calendar::閏'}}),
     When::Coordinates::DefaultDayIndex
 ],
'rule_table'=> %w(		AbcDeFgHIJkL	aBcdEfGhIIJkL	aBcdEfgHIjKL 
	AbCdeFghIJKL	aBcDeeFghIJKL	abCdEfGhIjkL	AbCDeFgHiJkL	aBbCdEFgHiJkL
	abCdEFgHIjKl	AbcDeFgHIJJkl	AbcDeFgHiJKL	aBcdEfgHIJkL	AbCdeFggHiJKL)
}
Chinese0618C =

『唐・日本における進朔に関する研究』(2013-10版)を使用する場合の朔閏表(一部修正あり)

大衍暦 760-761 (歳首 建子月)

五紀暦 762 (歳首 建子月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>760, 'origin_of_LSC'=>1998670, 'border'=>'0*11-01',
'before' => 'Chinese0618', 'after' => 'Chinese0618', 'note' => 'Chinese',
'indices'=> [
     When.Index('Chinese::MonthB', {:branch=>{1=>'_m:Calendar::閏'}}),
     When::Coordinates::DefaultDayIndex
 ],
'rule_table'=> %w(AbcDdeFgHIjKL	aBcdeFGhIJkL	AbCdEFghiJkL)
}
Chinese0939 =
後晋

調元暦 939 - 943

後晋

調元暦? 944 - 946

調元暦 947 - 994

大明暦 995 - 1125

金・西遼

大明暦 1123 - 1181

金・西遼

重修大明暦 1182 - 1234

重修大明暦 1215 - 1280

元・明

授時暦 1281 - 1644 (大統暦もほとんど同じ)

南明

大統暦 1645 - 1662

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>939, 'origin_of_LSC'=>2064050,
'before' => 'Chinese0523', 'after' => 'Chinese1645', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
	ABcDefGgHiJkL	ABcDefGhIjKl
	ABcDEfgHiJkL	aBcCDeFgHiJkL	aBcDeFGhIjKl	AbCdeFGhIJkLl	AbcDeFgHIJkL
	aBcdEfGhIJkL	AbCdeFggHIjKL	AbCdeFghIJkL	AbCDefGhIjKl	AbCDeEfGhIjKl

	AbCDeFgHiJkL	aBcDeFgHIjKl	AabCdEfGHIjKl	AbcDeFgHIjKL	aBcdEfgHIiJKL
	aBcdEfgHIjKL	AbCdeFghIjKL	AbCdEfGghIjKL	aBCdEfGhIjkL	AbCdEFgHiJkL
	abCcDEfGHiJkL	abCdEfGHiJKl	AbcDeFgHiJKLl	AbcDEfgHiJKL	aBcdEfgHiJKL
	aBCdeFghHiJKl	ABcDeFghIjKL	aBcDEfGhIjkL	aBCdEeFGhIjKl	aBcDeFGhIJkL
	abCdEfGhIJKl	AbbCdeFGhIJKl	AbcDefGhIJKl	ABcdEfgHiJJkL	AbCdEfgHiJkL
	ABcDeFghIjKl	ABcDEfGgHijKl	AbCDeFgHIjKl	aBcDeFGhIJkL	abCcDeFgHIjKL
	abCdeFgHIJkL	AbcDefGhIJkLL	AbcDefGhIjKL	AbCdEfgHiJkL	AbCDeFghHiJkL
	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeEfGHiJKl	aBcdEfGHIjKL	abCdeFgHIjKL
	AbbCdeFgHiJKL	aBcDefGhIjKL	aBCdEfgHiJjKl	ABcDEfgHiJkL	aBCdEfGhIjKl
	AbCdEfGGhIjKl	AbCdEfGHiJKl	aBcdEfGHiJKl	AbCddEfGhIJKl	AbCdeFgHiJKl

	ABcDefGhiJKkL	ABcDefGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFGhIjKl
	AbcDeFGhIJkL	aBcdEeFgHIJkL	aBcdEfGhIJkL	AbCdeFghIJkL	ABbCdeFghIJkL
	AbCDefGhiJKl	ABcDeFgHiJjKl	AbCdEFgHiJkL	abCDeFgHIjKl	AbcDeFgGHIjKl
	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCddEfgHIjKL	AbCdeFghIjKL	AbCDefGhiJkLL
	aBCdEfGhIjkL	aBCdEFgHiJkL	abCdEFgHIiJkL	abCdEfGHiJKl	AbcDeFgHiJKL
	aBcdEefGhIJKl	ABcdEfgHiJKL	aBCdeFghIjKL	aBCcDeFghIjKl	ABcDEfGhIjkL
	aBCdEfGHiJjKl	aBcDeFGhIJkL	abCdeFGhIJKl	AbcDefFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJKl	ABcDdEfgHiJkL	ABcDeFghIjKl	ABcDEfGhIjkLl	AbCDeFgHIjkL
	aBcDeFGhIJkL	abCdeFGhIIjKL	abCdeFgHIJkL	AbcDefGhIJkL	ABcdEefGhIjKL
	AbCdEfgHiJkL	AbCDeFghIjKl	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKKl

	aBcdEfGHIjKL	abCdeFgHIjKL	AbcDefGgHiJKL	aBcDefGhIjKL	aBCdEfgHiJkL
	aBCcDEfgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkLl	AbCdEfGHiJkL	aBcdEfGHiJKl
	AbCdeFgHhIJKl	AbCdeFgHiJKl	ABcDefGhiJKl	ABCdEffGhiJKl	ABcDeFgHiJkL
	aBcDEfGhIjKl	AbCcDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJKkL	aBcdEfGhIJkL
	AbCdeFghIJkL	ABcDefGghIJkL	AbCDefGhiJkL	AbCDeFgHiJkl	ABcDdEFgHiJkL
	abCDeFgHIjKl	AbcDeFgHIJkLl	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFghHiJKL
	aBCdeFghIjKL	AbCdEfGhiJkL	AbCDeFfGhIjkL	aBCdEfGHiJkL	abCdEFgHIjKl
	AbbCdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHiJKLl	ABcdEfgHiJKL	aBCdeFghIjKL
	aBCdEfGhhIjKl	ABcDEfGhiJkL	aBcDEfGHiJkL	abCdDeFGhIJkL	abCdEfGhIJKl
	AbcDefGhIJKl	ABbcDefGhIJKl	ABcdEfgHiJKl	ABcDeFghIiJkL	ABcDeFghIjKl

	ABcDeFGhiJkL	aBcDEfFgHIjkL	aBcDeFGhIJkL	abCdeFGhIJkL	AbCcdeFgHIJkL
	AbcDefGhIjKL	AbCdEfgHiJjKL	AbCdEfgHiJkL	AbCDeFghIjKl	AbCDeFgHhIjKl
	AbCdEFgHiJkL	aBcDeFgHIjKL	abCddEfGHIjKL	abCdeFgHiJKL	aBcDefGhIjKL
	AaBcDefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL
	aBcdEeFGHiJkL	aBcdEfGHiJKl	AbCdeFgHiJKL	aBcCdeFghIJKl	ABcDefGhiJKl
	ABCdEfgHijKKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGHhIjKl	AbcDeFGhIJkL
	aBcdEfGhIJKl	AbCddEfgHIJkL	AbCdeFghIJkL	ABcDefGhiJKl	ABbCDefGhiJkL
	AbCDeFgHiJkl	ABcDeFGhIjJkL	abCdEFgHIjKl	AbcDeFgHIJkL	aBcdEfFgHIjKL
	aBcdEfgHIjKL	AbCdeFghIjKL	AbCDdeFghIjKL	aBCdEfGhiJkL	AbCDeFgHiJkkL
	aBCdEfGHiJkl	ABcdEFgHiJKl	AbcDeFgHHiJKl	AbcDefGHiJKL	aBcdEfgHiJKL

	aBCddEfgHiJKL	aBCdeFghIjKL	aBCdEfGhiJkLl	ABcDEfGhiJkL	aBcDEfGHiJkl
	AbCdEfGHiJJkL	abCdeFGhIJKl	AbcDefGhIJKl	ABcdEffGhIJKl	ABcdEfgHiJKl
	ABcDeFghIjKl	ABbCDeFghIjKl	ABcDeFGhiJkL	aBcDeFGhIjKkL	aBcDeFgHIjKL
	abCdeFgHIJkL	AbcDefGgHIJkL	AbcDefGhIjKL	AbCdEfgHiJkL	ABcDeEfgHiJkL
	AbCDeFghIjKl	AbCDeFgHiJkL	aAbCdEFgHiJkL	aBcdEFgHIjKL	abCdeFgHIiJKL
	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEffGhiJKL	aBCdEfgHiJkL	aBCdEfGhIjKl
	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKkL	aBcdEfGHiJKl	AbCdeFgHiJKL
	aBcDefGghIJKl	ABcDefGhiJKl	ABCdEfgHijKL	aBCdEeFgHiJkL	aBcDEfGhIjKl
	AbcDEfGHiJkL	aBbcDeFGhIJkL	aBcdEfGhIJKl	AbCdeFghIJJkL	AbCdeFghIJkL
	ABcDefGhiJKl	ABcDeFfGhiJkL	AbCDeFgHiJkl	ABcDeFGhIjKl	aBbCdEFgHIjKl

	AbcDeFgHIJkL	aBcdEfgHIJkLL	aBcdEfgHIjKL	AbCdeFghIjKL	AbCdEfGhhIjKL
	aBCdEfGhiJkL	AbCdEFgHijKl	AbCDdEfGHiJkL	abCdEfGHiJKl	AbcDeFgHIjKL
	aBbcDefGHiJKL	aBcdEfgHiJKL	aBCdeFghIiJKL	aBcDeFghIjKL	aBCdEfGhiJkL
	aBCdEFgGhiJkL	aBcDEfGhIJkl	AbCdEfGHiJKl	AbcCdeFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJKLl	ABcdEfgHiJKl	ABcDeFghIjKl	ABcDEfGhhIjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AbCdEeFgHIjKL	abCdeFgHIJkL	AbcDefGhIJKl	ABbcDefGhIjKL
	AbCdEfgHiJkL	ABcDeFghIiJkL	AbCDefGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL
	aBcdEFgHIjKl	AbCdeFgHIjKL	aBcDdeFgHiJKL	aBcDefgHIjKL	AbCdEfgHijKLL
	aBCdEfgHijKL	aBCdEfGhIjKl	AbCdEFgHhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKl
	AbCddEfGhIJKl	AbCdeFgHiJKL	aBcDefGhiJKL	aBBcDefGhiJKl	ABcDeFgHijKL

	aBcDEfGhIjJkl	ABcDeFGhIjKl	aBcDEfGhIJkL	aBcdEfFGhIJkL	aBcdEfGhIJKl
	AbCdefGhIJKl	ABcDdeFghIJkL	ABcDefgHiJkL	ABcDeFgHijKkL	AbCDeFgHijKl
	AbCDeFGhIjKl	aBcDeFGhIIjKl	AbcDeFgHIJkL	aBcdEfgHIJkL	AbCdeEfgHIjKL
	AbCdeFghIjKL	AbCdEfGhiJkL	AaBCdEfGhiJkL	AbCDeFgHijKl	AbCDeFgHIjKkl
	AbCdEfGHiJKl	AbcDeFgHIjKL	aBcdeFfGHiJKL	aBcdEfgHiJKL	aBCdeFghIjKL
	aBCcDeFghIjKL	aBCdEfGhiJkL	aBCdEfGHijKkL	aBcDEfGhIJkl	AbCdEfGHiJKl
	abCdEfGhHIJkL	aBcdEfgHIJKl	AbCdeFghIJkL	ABcDeeFghIjKL	AbCDefGhiJkL
	AbCDeFgHijKl	ABbCDeFgHijKl	AbCDeFgHIjKl	AbcDeFgHIJjKl	AbcDeFgHIjKL
	aBcdEfgHIjKL	AbCdeFfgHiJKL	AbCdeFghIjKL	AbCdEfGhiJkL	AbCDdEfGhiJkL
	aBCdEFgHiJkl	AbCdEFgHiJKll	AbCdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHHIjKL

	aBcdEfgHiJKL	aBCdeFghIjKL	aBCdEeFghIjKl	ABcDEfGhiJkL	aBcDEfGhIjKl
	AaBcDeFGhIJkl	AbCdeFGhIJKl	AbcDefGhIJKkL	AbcDefGhIJKl	ABcdEfgHiJKl
	ABcDeFggHiJkL	ABcDeFghIjKl	ABcDeFgHiJkL	aBcCDeFgHiJkL	aBcDeFGhIjKl
	AbCdeFGhIJkL	AabCdeFgHIJkL	AbcDefGhIjKL	AbCdeFgHhIjKL	AbCdEfgHiJkL
	AbCDefGhIjKl	AbCDeEfGhIjKl	AbCdEFgHiJkL	aBcdEFgHIjKl	AaBcdEfGHIjKl
	AbCdeFgHiJKL	aBcDefGhIiJKL	aBcDefGhiJKL	aBCdEfgHijKL	aBCdEfGgHijKL
	aBCdEfGhIjKl	AbCdEfGHiJkL	aBccDeFGHiJkL	aBcdEfGHiJKl	AbCdeFGhiJKLl
	AbCdefGhIJKl	ABcDefgHiJKl	ABCdEfgHhiJKl	ABcDeFghIjKl	ABcDEfGhIjKl
	aBcDEeFGhIjKl	aBcDeFGhIJkL	aBcdEfGhIJKl	AbBcdeFgHIJkL	AbCdefGhIJkL
	ABcDefgHiJjKL	AbCdEfGhiJkL	AbCDeFgHijKl	ABcDeFGgHiJkl	AbCdEFgHIjKl

	aBcDeFgHIJkL	aBccDefGHIjKL	aBcdeFgHIjKL	AbCdefGhIjKL	AAbCdefGhIjKL
	AbCdEfGhiJkL	AbCDeFgHiiJkL	aBCdEfGHijKl	AbCdEFgHiJKl	aBcDeEfGHiJKl
	AbcDefGHiJKL	aBcdeFgHiJKL	AbCcdeFgHiJKL	aBcDefGhIjKL	aBCdEfGhiJjKl
	ABcDEfgHiJkL	aBcDEfGhIjKl	AbCdEfGGhIJkl	AbCdeFGhIJKl	aBcDefGhIJKl
	ABccdEfGhIJKl	AbCdeFgHiJKl	ABcDefGhIjKkL	ABcDefGhIjKl	ABcDeFgHiJkL
	aBcDEfGhIiJkL	aBcDeFGhIjKl	AbCdeFGhIJkL	aBcDeeFgHIJkL	aBcDefGhIjKL
	AbCdEfghIJkL	ABbCdeFgHiJkL	AbCDefGhIjKl	AbCDeFgHiJjKl	AbCdEFgHiJkL
	aBcdEFgHIjKl	AbCdeFfGHIjKl	AbCdeFgHiJKL	aBcDefgHIjKL	AbCdDefgHiJKL
	aBCdeFgHijKL	aBCdEfGhIjkLL	aBcDEfGhIjKl	AbCdEfGHiJkL	abCdEfGHIiJkL
	abCdEfGHiJKl	AbCdefGHiJKL	aBcDeefGhIJKl	ABcDefgHiJKl	ABCdeFghIjKL

	aBCcDeFgHijKl	ABcDEfGhIjKl	aBcDEfGHiJkKl	aBcDeFGhIJkL	abCdEfGhIJKl
	AbCdefGgHIJkL	AbCdefGhIJkL	ABcDefgHiJkL	ABcDdEfgHiJkL	AbCDeFgHijKl
	AbCDeFGhIjkLl	AbCdEFgHIjKl	aBcDeFgHIJkL	abCdeFgHIIjKL	aBcdeFgHIjKL
	AbCdefGhIjKL	AbCdEefGhIjKL	AbCdEfgHiJkL	AbCDeFgHijKl	AaBCdEfGhIjKl
	AbCdEfGHiJKl	aBcDeFgHIjKLl	aBcdEfGHiJKL	aBcdeFgHiJKL	aBcDefGgHiJKL
	aBcDefGhIjKL	aBCdEfgHiJkL	aBCdDEfgHiJkL	aBcDEfGhIjKl	AbCdEfGHiJkLl
	AbCdeFGhIJKl	aBcdEfGhIJKl	AbCdeFgHhIJKl	AbCdeFgHiJKl	ABcDefGhIjKl
	ABCdEffGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AbBcDeFgHIjKl	AbcDeFgHIJkL
	aBcdEfGhIJKkL	aBcdEfgHIjKL	AbCdeFghIJkL	ABcDefGghIJkL	AbCDefGhIjKl
	AbCDeFgHiJkL	aBcDdEFgHiJkL	abCdEFgHIjKl	AbcDeFgHIjKL	aAbcDeFgHiJKL

	aBcdEfgHIjKL	AbCdeFghIiJKL	aBCdeFghIjKL	aBCdEfGhIjkL	AbCdEFfGhIjKl
	aBCdEfGHiJkL	abCdEfGHiJKl	AbbCdEfGhIJKl	AbcDefGHiJKL	aBcdEfgHiJKKl
	ABcdEfgHiJKl	ABCdeFghIJkL	aBCdEfGgHijKl	ABcDEfGhIjKl	aBcDEfGhIJkL
	abCcDeFGhIJkL	abCdeFGhIJKl	AbcDefGhIJKl	ABbcDefGhIJkL	ABcdEfgHiJkL
	ABcDeFghIiJkL	AbCDeFghIjKl	AbCDeFGhIjkL	aBcDeFFgHIjKl	aBcDeFgHIjKL
	abCdeFgHIJkL	AbbCdeFgHIjKL	AbcDefGhIjKL	AbCdEfgHiJjKL	aBCdEfgHiJkL
	aBCDeFghIjKl	AbCDeFgHhIjKl	AbCdEfGHiJKl	aBcDefGHIjKL	abCddEfGHiJKL
	abCdeFgHiJKL	aBcDefGhIjKL	AaBcDefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIiJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcdEeFGhIJkL	aBcdEfGhIJKl	AbCdefGHiJKL
	aBcCdeFghIJKl	ABcDefGhIjKl	ABcDEfgHiJkKl	AbCDeFgHiJkL	aBcDeFGhIjKl

	AbcDeFGgHIjKl	AbcDeFgHIJkL	aBcdEfGhIJKl	AbCddEfgHIjKL	AbCdeFghIJkL
	ABcDefGhiJkL	AAbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeFGhIiJkL	abCdEFgHIjKl
	AbcDeFgHIjKL	aBcdEefGHiJKL	aBcdEfgHiJKL	AbCdeFghIjKL	AbCDdeFghIjKL
	aBCdEfGhIjkL	AbCdEFgHiJkLl	aBcDEfGHiJkL	abCdEfGHiJKl	AbcDeFgHhIJKl
	AbcDefGhIJKL	aBcdEfgHiJKL	aBCddEfgHiJKl	ABcDeFghIjKl	ABCdEfGhiJkLl
	ABcDeFGhIjkL	aBcDeFGhIJkL	abCdEfGHiJJkL	abCdeFGhIJKl	AbcDefGhIJKl
	ABcdEffGhIJkL	ABcdEfgHiJkL	ABcDeFghIjKl	ABbCDeFghIjKl	AbCDeFgHIjkL
	aBcDeFGhIJkLl	aBcDeFgHIjKL	abCdeFgHIJkL	AbcDefGgHIjKL	AbcDefGhIjKL
	AbCdEfgHiJkL	AbCDeEfgHiJkL	aBCdEFghIjKl	AbCdEFgHiJkL	aAbCdEfGHiJKl
	aBcdEfGHIjKL	abCdeFgHIiJKL	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEffGhIjKl

	ABCdEfgHiJkL	aBCdEfGhIjKl	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKkL
	aBcdEfGhIJKl	AbCdeFgHiJKL	aBcDefGghIJkL	ABcDefGhiJKl	ABcDEfgHiJkL
	aBcDEeFgHiJkL	aBcDeFGhIjKl	AbcDeFGhIJkL	aBbcDeFgHIJkL	aBcdEfGhIJKl
	AbCdeFghIJjKL	AbCdeFghIJkL	ABcDefGhiJkL	ABcDeFfGhIjkL	AbCDeFgHiJkL
	abCDeFgHIjKl	AbbCdEfGHIjKl	AbcDeFgHIjKL	aBcdEfgHIjKLL	aBcdEfgHiJKL
	AbCdeFghIjKL	AbCDefGhhIjKL	aBCdEfGhiJkL	aBCdEFgHiJkl	AbCdDEfGHiJkL
	abCdEfGHIjKl	AbcDefGHiJKL	aBbcDefGhIJKL	aBcdEfgHiJKL	aBCdeFghIiJKl
	ABcDeFghIjKl	ABCdEfGhiJkL	abCDEfFGhIjKl	aBcDeFGhIJkL	abCdEfGHiJKl
	AbcCdeFgHIJKl	AbcDefGhIJKl	ABcdEfgHiJKkL	AbCdEfgHiJkL	ABcDeFghIjKl
	ABcDEfGhhIjKl	AbCDeFgHiJkL	aBcDeFGhIjKL	abCddEFgHIjKl	AbCdeFgHIJkL

	AbcDefGhIJkL	ABbcDefGhIjKL	AbCdEfgHiJkL	AbCDeFghIiJkL	aBCdEfGhIjKl
	AbCdEFgHiJkL	aBcDeFfGHiJkL	aBcdEfGHIjKl	AbCdeFgHIjKL	aBcCdeFgHiJKL
	aBcDefGhIjKL	AbCdEfgHiJkKl	ABCdEfgHiJkL	aBCdEfGhIjKl	AbCdEFgHhIjKl
	AbcDEfGHiJkL	aBcdEfGHiJKl	AbCddEfGhIJKl	AbCdeFghIJKL	aBcDefGhiJKl
	ABBcDefGhiJKl	ABcDeFgHiJkL	aBcDEfGhIjJkL	aBcDeFGhIjKl	AbcDeFGhIJkL
	aBcdEfFgHIJkL	aBcdEfgHIJKl	AbCdeFghIJkL	ABcDdeFghIJkL	ABcDefGhiJkL
	ABcDeFgHijKkL	AbCDeFgHiJkl	AbCDeFgHIjKl	AbcDeFgHHIjKl	AbcDeFgHIjKL
	aBcdEfgHIjKL	AbCddEfgHiJKL	AbCdeFghIjKL	AbCdEfGhiJkL	AaBCdEfGhiJkL
	aBCdEFgHiJkl	AbCdEFgHIjKkL	abCdEfGHiJKl	AbcDefGHiJKL	aBcdEffGhIJKL
	aBcdEfgHiJKL	aBCdeFghIjKL	aBCcDeFghIjKl	ABcDEfGhiJkL	aBCdEfGHiJkkL

	aBcDeFGhIJkL	abCdEfGhIJKl	AbcDefGgHIJKl	AbcDefGhIJKl	ABcdEfgHiJKl
	ABcDeEfgHiJkL	ABcDeFghIjKl	ABcDEfGhiJkL	aAbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdeFGhIJjKl	AbCdeFgHIJkL)
}
Chinese0956 =
後漢・後周

調元暦? 947 - 955

後周・北宋

欽天暦 956 - 963

北宋

応天暦 964 - 982

北宋

乾元暦 983 - 1000

北宋

儀天暦 1001 - 1023

北宋・西夏

崇天暦 1024 - 1064

北宋・西夏

明天暦 1065 - 1067

北宋・西夏

崇天暦 1068 - 1074

北宋・西夏

奉元暦 1075 - 1093

北宋・西夏

観天暦 1094 - 1102

北宋・西夏

占天暦 1103 - 1105

宋・西夏

紀元暦 1106 - 1135

南宋

統元暦 1136 - 1167

南宋

乾道暦 1168 - 1176

南宋

淳熙暦 1177 - 1190

南宋

会元暦 1191 - 1198

南宋

統天暦 1199 - 1207

南宋

開禧暦 1208 - 1251

南宋

淳祐暦 1252

南宋

会天暦 1253 - 1270

南宋

成天暦 1271 - 1276

南宋

本天暦 1277 - 1279

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>947, 'origin_of_LSC'=>2066974,
'before' => 'Chinese0523', 'after' => 'Chinese0939', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			AbCdeFggHIjKL	AbCdeFghIJkL	AbCDefGhiJKl	AbCDeEfGhIjKl

	AbCDeFgHiJkL	aBcDeFgHIjKl	AabCdEfGHIjKl	AbcDeFgHIjKL	aBcdEfGhIiJKL
	aBcdEfgHIjKL	AbCdeFghIjKL	AbCdEfGgHijKL	aBCdEfGhIjKl	AbCdEFgHiJkL
	aBccDEfGHiJkL	abCdEfGHiJKl	AbcDeFgHiJKLl	AbCdefGHiJKL	aBcDefgHiJKL
	aBCdeFghHiJKl	ABcDeFghIjKL	aBcDEfGhIjkL	aBCdEeFGhIjKl	aBcDeFGhIJkL
	abCdEfGhIJKl	AbbCdeFGhIJKl	AbCdefGhIJKl	ABcdEfgHiJJkL	AbCdEfgHiJkL
	ABcDeFghIjKl	ABcDEfGgHijKl	AbCDeFgHIjKl	aBcDeFGhIJkL	abCcDeFgHIjKL
	abCdeFgHIJkL	AbcDefGhIJkLL	AbcDefGhIjKL	AbCdEfgHiJkL	AbCDeFghIiJkL
	AbCdEFghIjKl	AbCdEFgHiJkL	aBcDeEfGHiJKl	aBcdEfGHIjKL	abCdeFgHIjKL
	AbbCdeFgHiJKL	aBcDefGhIjKL	aBCdEfgHiJjKL	aBcDEfgHiJkL	aBCdEfGhIjKl
	AbCdEfGGhIjKl	AbCdEfGHiJKl	aBcdEfGHiJKl	AbCcdEfGhIJKl	AbCdeFgHiJKL

	aBcDefGhIjKLl	ABcDefGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFGhIjKl
	AbcDeFGhIJkL	aBcdEeFgHIJkL	aBcdEfGhIJkL	AbCdeFghIJkL	ABbCdeFghIJkL
	AbCDefGhiJKl	AbCDeFgHiJjKl	AbCdEFgHiJkL	abCDeFgHIjKl	AbcDeFfGHIjKl
	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCddEfgHIjKL	AbCdeFghIjKL	AbCdEfGhiJkLL
	aBCdEfGhIjKl	aBCdEFgHiJkL	abCdEFgHIiJkL	abCdEfGHiJkL	AbcDefGHiJKL
	aBcdEefGhIJKl	ABcdEfgHiJKL	aBCdeFghIjKL	aBBcDeFghIjKl	ABcDEfGhIjkL
	aBCdEfGHiJjKl	aBcDeFGhIJkL	abCdeFGhIJKl	AbcDefFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJKl	ABcDdEfgHiJkL	ABcDeFghIjKl	ABcDeFGhIjkLl	AbCdEFgHIjKl
	aBcDeFGhIJkL	abCdeFGhIIjKL	abCdeFgHIJkL	AbcDefGhIjKL	AbCdEefGhIjKL
	AbCdEfgHiJkL	AbCDeFghIjKl	AaBCdEfGhIjKl	AbCdEFgHiJKl	aBcDeFgHIjKKl

	aBcdEfGHIjKL	abCdeFgHIjKL	aBcDefGgHiJKL	aBcDefGhIjKL	aBCdEfgHiJkL
	aBCcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkLl	AbCdeFGHiJKl	aBcdEfGHiJKl
	AbCdeFgHhIJKl	AbCdeFgHiJKl	ABcDefGhiJKl	ABCdEefGhiJKl	ABcDeFgHiJkL
	aBcDEfGhIjKl	AbCcDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJKkL	aBcdEfgHIJkL
	AbCdeFghIJkL	ABcDefGghIJkL	AbCdEfGhiJkL	AbCDeFgHiJkL	aBcDdEFgHiJkL
	abCDeFgHIjKl	AbcDeFgHIJkL	aAbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFghIiJKL
	aBCdeFghIjKL	AbCdEfGhiJkL	AbCDeFfGhIjkL	aBCdEfGHiJkL	abCdEFgHIjKl
	AbbCdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHiJKLl	ABcdEfgHiJKL	aBCdeFghIjKL
	aBCdEfGhhIjKl	ABcDEfGhiJkL	aBcDEfGHiJkl	AbCdDeFGhIJkL	abCdEfGhIJKl
	AbcDefGhIJKl	ABbcDefGhIJKl	ABcdEfgHiJKl	ABcDeFghIiJkL	ABcDeFghIjKl

	ABcDeFGhiJkL	aBcDEfFgHiJkL	aBcDeFgHIJkL	abCdeFGhIJkL	AbbCdeFgHIJkL
	AbcDefGhIjKL	AbCdEfgHiJjKL	AbCdEfgHiJkL	AbCDeFghIjKl	AbCDeFgHhIjKl
	AbCdEFgHiJkL	aBcDeFgHIjKL	abCddEfGHiJKL	abCdeFgHiJKL	aBcDefGhIjKL
	AaBcDefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL
	aBcdEeFGhIJkL	aBcdEfGHiJKl	AbCdeFgHiJKL	aBcCdeFghIJKl	ABcDefGhiJKl
	ABCdEfgHijKKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbcDEfGHhIjKl	AbcDeFGhIJkL
	aBcdEfGhIJKl	AbCddEfgHIJkL	AbCdeFghIJkL	ABcDefGhiJkL	ABbCDefGhiJkL
	AbCDeFgHiJkl	ABcDeFGhIjJkL	abCdEFgHIjKl	AbcDeFgHIJkL	aBcdEfFgHIjKL
	aBcdEfgHIjKL	AbCdeFghIjKL	AbCDdeFghIjKL	aBCdEfGhiJkL	AbCDeFgHijKkL
	aBCdEfGHiJkl	AbCdEfGHiJKl	AbcDeFgHHiJKl	AbcDefGHiJKL	aBcdEfgHiJKL

	aBCddEfgHiJKL	aBcDeFghIjKL	aBCdEfGhiJkLl	ABcDEfGhiJkL	aBcDEfGhIJkl
	AbCdEfGHiJJkL	abCdeFGhIJKl	AbcDefGhIJKl	ABcdEffGhIJKl	ABcdEfgHiJKl
	ABcDeFghIjKl	ABbCDeFghIjKl	ABcDeFgHiJkL	aBcDeFGhIjKkL	aBcDeFgHIjKL
	abCdeFgHIJkL	AbcDefGgHIJkL	AbcDefGhiJKL	AbCdEfgHiJkL	ABcDeEfgHiJkL
	AbCDeFghIjKl	AbCDeFgHiJkL	aAbCdEFgHiJkL	aBcdEFgHIjKL	abCdeFgHIiJKl
	AbCdeFgHiJKL	aBcDefGhIjKL	AbCdEffGhIjKL	aBCdEfgHiJkL	aBCdEfGhIjKl
	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKkL	aBcdEfGhIJKl	AbCdeFgHiJKL
	aBcDefGghIJKl	ABcDefGhiJKl	ABCdEfgHijKL	aBCdEeFgHiJkL	aBcDEfGhIjKl
	AbcDEfGHiJkL	aBbcDeFGhIJkL	aBcdEfGhIJKl	AbCdeFghIJJkL	AbCdeFghIJkL
	ABcDefGhiJKl	ABcDeFfGhiJkL	AbCDeFgHijKl	ABcDeFGhIjKl	aBbCdEFgHIjKl

	AbcDeFgHIJkL	aBcdEfgHIJkLL	aBcdEfgHIjKL	AbCdeFghIjKL	AbCdEfGhhIjKL
	aBCdEfGhiJkL	AbCDeFgHiJkl	AbCDdEfGHiJkl	AbCdEfGHiJKl	AbcDeFgHIjKL
	aBbcDefGHiJKL	aBcdEfgHiJKL	aBCdeFghIiJKL	aBcDeFghIjKL	aBCdEfGhiJkL
	aBCdEFgGhiJkL	aBcDEfGhIJkl	AbCdEfGHiJKl	AbcCdeFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJKLl	ABcdEfgHiJKl	ABcDeFghIjKl	ABcDEfGhhIjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AbCdEeFgHIjKL	abCdeFgHIJkL	AbcDefGhIJKl	ABbcDefGhIjKL
	AbCdEfgHiJkL	ABcDeFghIiJkL	AbCDefGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL
	aBcdEFgHIjKl	AbCdeFgHIjKL	aBcDdeFgHiJKL	aBcDefGhIjKL	AbCdEfgHijKLL
	aBCdEfgHijKL	aBCdEfGhIjKl	AbCdEFgHhIjKl	AbCdEfGHiJkL	aBcdEfGHiJKl
	AbCddEfGhIJKl	AbCdeFgHiJKL	aBcDefGhiJKL	aBBcDefGhiJKl	ABCdeFgHijKL

	aBCdEFghIjjKL	aBcDeFGhIjKl	aBcDEfGHiJkL	aBcdEfFGhIJkL	aBcdEfGhIJKl
	AbCdeFghIJKl	ABcDdeFghIJkL	ABcDefGhiJKl	ABcDeFgHijKkL	AbCDeFgHijKl
	AbCDeFGhIjKl	aBcDeFGhIIjKl	aBcDeFgHiJKL	aBcdEfgHIJkL	AbCdeEfgHIjKL
	AbCdeFghIjKL	AbCdEfGhiJkL	AaBCdEfGhiJkL	AbCDeFgHijKl	AbCDeFgHIjjKl
	AbCdEfGHiJKl	AbcDeFgHIjKL	aBcdEffGHiJKL	aBcdEfgHiJKL	aBCdeFghIjKL
	AbCcDeFghIjKL	aBCdEfGhiJkL	aBCdEfGHijKkL	aBcDEfGhIJkl	)
}
Chinese1119 =
方臘

紀元暦 1118 - 1120 (歳首 建子月)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>1118, 'origin_of_LSC'=>2129431, 'border'=>'0*11-01',
'before' => 'Chinese0956', 'after' => 'Chinese0956', 'note' => 'Chinese',
'indices'=> _IndicesM11,
'rule_table'=> %w(		aBCdEfGhIiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL)
}
Chinese1645 =

時憲暦 1645 - 1664 天聡戊辰元法

大統暦 1665 - 1668

時憲暦 1669 - 1725 天聡戊辰元法

時憲暦 1726 - 1741 康熙甲子元法

時憲暦 1742 - 1911 雍正癸卯元法

中華民国

農暦 1912 - 1930 (北京時間 +07:45:34 で計算)

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>1645, 'origin_of_LSC'=>2321912,
'before' => 'Chinese0939', 'after' => 'ChineseLuniSolar?time_basis=+08', 'note' => 'Chinese',
'indices'=> ChineseIndices,
'rule_table'=> %w(
			aBcdEffGhIJKL
	aBcdEfgHiJKL	aBCdeFghIjKL	aBCdDeFghIjKl	ABcDEfGhiJkL	aBCdEfGHijKl

	AbBcDeFGhIJkl	AbCdEfGHiJKl	AbcDefFGhIJkL	AbcDefGhIJKl	ABcdEfgHiJKl
	ABcDeEfgHiJkL	ABcDeFghIjKl	ABcDEfGhiJkL	aBcCDeFgHiJkL	aBcDeFGhIjKl
	AbCdeFGgHIjKl	AbCdeFgHIJkL	AbcDefGhIJkL	AbCdEffGhIjKL	AbCdEfgHiJkL
	AbCDeFghIjKl	AbCDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbBcdEfGHIjKl
	AbCdeFgHIjKL	aBcDefGgHiJKL	aBcDefGhIjKL	aBCdEfgHijKL	aBCDeEfgHiJkL
	aBCdEfGhIjKl	AbCdEFgHiJkL	aBccDEfGHiJkL	aBcdEfGHiJKl	AbCdeFgHhIJKl
	AbCdeFghIJKl	ABcDefGhiJKl	ABCdEffGhiJKl	ABcDeFgHijKl	ABcDEfGhIjKl
	aBCdDeFGhIjKl	aBcDeFGhIJkL	aBcdEfGhIJKl	AbCcdEfgHIJkL	AbCdeFghIJkL
	ABcDefGghIjKL	AbCDefGhiJkL	ABcDeFgHijKl	ABcDeEFgHiJkl	AbCDeFgHIjKl
	aBcDeFgHIJkL	aBccDeFgHIjKL	aBcdEfgHIjKL	AbCdeFggHiJKL	AbCdeFghIjKL

	AbCdEfGhiJkL	AbCDeFfGhiJkL	aBCdEFgHijKl	AbCdEFgHIjKl	aBcDdEfGHiJKl
	AbcDefGHiJKL	aBcdEfgHiJKL	aBCcdEfgHiJKL	aBCdeFghIjKL	aBCdEfGghIjKl
	ABcDEfGhiJkL	aBcDEfGhIjKl	AbCdEeFGhIJkl	AbCdEfGhIJKl	AbcDefGhIJKl
	ABccDefGhIJKl	ABcdEfgHiJKl	ABcDeFghHiJkL	ABcDeFghIjKl	ABcDeFgHiJkL
	aBcDEfFgHiJkL	aBcDeFGhIjKl	AbCdeFGhIJkL	aBcDdeFgHIJkL	aBcDefGhIJkL
	AbCdEfgHiJkL	ABcCdEfgHiJkL	AbCDeFghIjKl	AbCDeFgGhIjKl	AbCdEFgHiJkL
	aBcDeFgHIjKl	AbCdeEfGHIjKl	AbCdeFgHIjKL	aBcDefGhIjKL	AbCdDefgHiJKL
	aBCdEfgHijKL	aBCdEfGhIijKL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcdEFfGHiJkL
	aBcdEfGHiJKl	AbCdeFgHiJKL	aBcDdefGhIJKl	ABcDefgHiJKl	ABCdEfgHijKL
	aBCcDeFgHijKl	ABcDEfGhIjKl	aBcDEfGGhIjKl	aBcDeFGhIJkL	aBcdEfGhIJKl

	AbCdeEfgHIJkL	AbCdefGhIJkL	ABcDefgHiJkL	ABcDdEfGhiJkL	AbCDeFgHijKl
	ABcDeFGhIijKl	AbCdEFgHIjKl	aBcDeFgHIJkL	abCdEfFgHIjKL	aBcdeFgHIjKL
	AbCdefGhIjKL	AbCDeefGhIjKL	AbCdEfgHiJkL	AbCDeFgHijKl	AbBCdEfGHijKl
	AbCdEFgHiJKl	aBcDeFgGHiJKl	aBcDefGHiJKL	aBcdeFgHiJKL	aBCdeeFgHiJKL
	aBcDefGhIjKL	aBCdEfgHiJkL	aBCcDEfgHiJkL	aBcDEfGhIjKl	AbCdEfGHiJjKl
	AbCdeFGhIJkL	aBcdEfGhIJKl	AbCdeFfGhIJKl	AbCdeFgHiJKl	ABcDefGhIjKl
	ABCdEefGhIjKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCcDeFGhIjKl	AbCdeFGhIJkL
	aBcdEfGgHIJkL	aBcdEfGhIjKL	AbCdEfghIJkL	ABcDeeFgHiJkL	AbCDefGhIjKl
	AbCDeFgHiJkL	aBcDdEFgHiJkL	aBcdEFgHIjKl	AbcDeFgHIJkL	aBbcDeFgHiJKL
	aBcdEfgHIjKL	AbCdEffgHiJKL	aBCdeFghIjKL	aBCdEfGhIjkL	AbCDdEfGhIjKl

	aBCdEfGHiJkL	abCdEfGHIjKl	AbbCdEfGHiJKl	AbcDefGHiJKL	aBcDeffGhIJKl
	ABcDefgHiJKl	ABCdeFghIjKL	aBCdEeFgHijKl	ABcDEfGhIjkL	aBcDEfGHiJkL
	abCcDeFGhIJkL	abCdEfGhIJKl	AbCdefGhIJKl	ABbCdefGhIJkL	ABcdEfgHiJkL
	ABcDeFfgHiJkL	AbCDeFgHijKl	AbCDeFGhIjkL	aBcDdEFgHIjKl	aBcDeFgHIJkL
	abCdeFgHIJkL	AbCcdeFgHIjKL	AbCdefGhIjKL	AbCdEfgGhIjKL	AbCdEfgHiJkL
	AbCDeFghIjKl	AbCDeEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKL	abCddEfGHiJKL
	abCdeFgHiJKL	aBcDefGhIiJKL	aBcDefGhIjKL	aBCdEfgHiJkL	aBCdEFfgHiJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcDdeFGhIJkL	aBcdEfGhIJKl	AbCdeFgHiJKL
	aBcCdeFgHiJkL	ABcDefGhIjKl	ABCdEfgGhIjKl	ABcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEeFgHIjKl	AbcDeFgHIJkL	aBcdEfGhIJKl	AbCddEfGhIjKL	AbCdeFghIJkL

	ABcDefGhhIjKL	AbCDefGhIjkL	AbCDeFgHiJkL	aBcDeFGgHiJkL	abCdEFgHIjKl
	AbcDeFgHIJkL	aBcdEeFgHiJKL	aBcdEfgHIjKL	AbCdeFghIjKL	AbCCdeFghIjKL
	aBCdEfGhIjkL	AbCdEFgHhIjkL	aBCdEfGHiJkL	abCdEfGHiJKl	AbcDeEfGHiJKl
	AbcDefGHiJKL	aBcdEfgHiJKL	aBCddEfgHiJKl	ABCdeFghIjKl	ABCdEfGhiJjKl
	ABcDEfGhIjkL	aBcDEfGhIJkL	abCdEfFGhIJkL	abCdEfGhIJKl	AbcDefGhIJKl
	ABcdEefGhIJkL	ABcdEfgHiJkL	ABcDeFghIjKl	ABcCDeFghIjKl	AbCDeFGhIjkL
	aBcDeFGgHIjKl	aBcDeFgHIjKL	abCdeFgHIJkL	AbcDeeFgHIjKL	AbcDefGhIjKL
	AbCdEfgHiJkL	ABcDdEfgHiJkL	AbCDeFghIjKl	AbCDeFgHiJkL	aBbCdEFgHiJkL
	aBcDeFgHIjKL	abCdeFfGHiJKL	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEefGhIjKl
	ABCdEfgHiJkL	aBCdEfGhIjKl	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHhIJkL

	aBcdEfGhIJKl	AbCdeFgHiJKL	aBcDeeFghIJkL	ABcDefGhiJKl	ABcDEfgHiJkL
	aBCdDeFgHiJkL	aBcDeFGhIjKl	AbcDEfGhIJkL	aBbcDeFgHIJkL	aBcdEfGhIJKl
	AbCdeFfgHIjKL
			AbCdeFghIJkL	ABcDefGhiJkL	ABcDeEfGhiJkL	AbCDeFgHiJkl
	ABcDeFGhIjKl	AbbCdEFgHIjKl	AbcDeFgHIjKL	aBcdEfgGHiJKL	aBcdEfgHiJKL
	AbCdeFghIjKL	AbCDeeFghIjKL	aBCdEfGhiJkL	aBCdEFgHiJkl	AbCdDEfGHiJkL
	abCdEfGHiJKl	AbcDeFgHiJKL	aBbcDefGhIJKL	aBcdEfgHiJKL	aBCdeFfgHiJKl)
}
Japanese =

日本の朔閏表

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>454, 'origin_of_LSC'=>1886926,
'indices'=> [
     When.Index('Japanese::Month', {:branch=>{1=>'_m:Calendar::閏'}}),
     When::Coordinates::DefaultDayIndex
 ],
'before'    => 'JapaneseTwin::平朔儀鳳暦',
'after'     => 'JapaneseTwin::旧暦',
'note'      => 'Japanese',
'rule_table'=> %w(
	aBcDeFgHiJkL	aBCdEfGhIjKl
	AbCcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHiJkLl	AbCDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIiJKl	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcDeEFgHiJkL	aBcDeFgHiJKl
	AbCdEfGhIjKl	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AbCdEFgGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCcDeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGhIJkLl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDEfGhIiJkL
	aBcDeFgHIjKl	AbCdEfGhIjKl	ABcDeEfGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl
	AaBcDeFgHiJkL	AbCdEfGhIjKl	AbCDeFgHiJjKl	AbCdEfGHiJkL	aBcDeFgHiJkL
	AbCdEfGgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDdEfGhIjKL	aBcDeFgHiJkL
	aBCdEfGhIjKlL	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeFgHhIjKl	ABcDeFgHiJkL

	aBcDeFGhIjKl	AbCdEeFgHiJKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBbCdEFgHiJkL
	aBcDeFgHiJKl	AbCdEfGhIjJkL	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFfGhIJkL
	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCcDEfGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkLL
	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIIjKl	AbCdEfGhIjKl	ABcDeFgHiJkL
	aBcDEeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjKl	ABbCdEfGhIjKl	AbCDeFgHiJkL
	aBcDeFgHIjKkL	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCDeFgGhIjKl	AbCdEfGHiJkL
	aBcDeFgHiJkL	AbCcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkLl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aBCdEfGhIiJkL	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDeEfGhIjKl
	ABcDeFgHiJkL	aBcDeFGhIjKl	AaBcDeFgHiJKl	AbCdEfGhIjKl	ABcDeFgHiJjKl
	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCdEfGgHiJkL	AbCdEfGhIjKl	AbCdEFgHiJkL

	aBcDdEfGhIJkL	aBcDeFgHiJkL	AbCdEfGhIjKlL	aBcDEfGhIjKl	AbCdEfGhIJkL
	aBcDeFgHhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEeFgHIjKl	AbCdEfGhIjKL
	aBcDeFgHiJkL	aBbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGhIjJKl	AbCdEfGhIjKl
	AbCDeFgHiJkL	aBcDeFfGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDdEfGhIjKl
	AbCdEfGHiJkL	aBcDeFgHiJKlL	aBcDeFgHiJkL	aBCdEfGhIjKl	AbCdEfGHhIjKl
	AbCdEfGhIJkL	aBcDeFgHiJkL	aBCdEeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIjKL
	aBbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGhIjKkL	aBcDeFgHiJKl	AbCdEfGhIjKl
	ABcDeFgGhIjKl	AbCdEFgHiJkL	aBcDeFgHiJKl	AbCcDeFgHiJkL	AbCdEfGhIjKl
	AbCdEFgHiJkLl	AbCdEfGhIJkL
					aBcDeFgHiJkL	AbCdEfGhIiJkL	aBcDEfGhIjKl
	AbCdEfGhIJkL	aBcDeEfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKl	AaBcDeFgHIjKl

	AbCdEfGhIjKL	aBcDeFgHiJjKl	AbCDeFgHiJkL	aBcDeFgHIjKl	AbCdEfGgHiJKl
	AbCdEfGhIjKl	AbCDeFgHiJkL	aBcCdEfGHiJkL	aBcDeFgHiJKl	AbCdEfGhIjKkL
	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDeFgHhIJkL	aBcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEeFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJkL	aBBcDeFgHiJkL	aBcDeFGhIjKl
	AbCdEfGhIJjKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcDeFGgHiJkL	aBcDeFgHIjKl
	AbCdEfGhIjKl	ABcDdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjKlL	aBcDeFgHiJkL
	AbCdEfGhIjKl	AbCdEFgHhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL	AbCdEeFgHiJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBbCdEfGhIjKL	aBcDeFgHiJkL	aBcDEfGhIjKkL
	aBcDeFgHIjKl	AbCdEfGhIjKL	aBcDeFgGhIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl
	AbCcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHiJkLl	AbCdEfGHiJkL	aBcDeFgHiJKl

	AbCdEfGhIiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcDeEfGhIJkL	aBcDeFgHiJkL
	aBCdEfGhIjKl	AaBcDeFGhIjKl	AbCdEfGhIJkL	aBcDeFgHiJjKl	ABcDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGgHIjKl	AbCdEfGhIjKl	ABcDeFgHiJkL	aBcCdEFgHiJkL
	aBcDeFgHIjKl	AbCdEfGhIjKkL	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIiJkL
	aBcDeFgHiJkL	AbCdEfGhIjKl	AbCdEFfGhIjKl	AbCdEfGHiJkL	aBcDeFgHiJkL
	AbBcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGHiJjKl	AbCdEfGhIjKL	aBcDeFgHiJkL
	aBcDEfGgHiJkL	aBcDeFGhIjKl	AbCdEfGhIjKL	aBcDdEfGhIjKl	AbCDeFgHiJkL
	aBcDeFGhIjKlL	aBcDeFgHiJKl	AbCdEfGhIjKl	AbCDeFgHhIjKl	AbCdEFgHiJkL
	aBcDeFgHiJKl	AbCdEeFgHijKL	aBCdEfGhIjKl	AbCdEFgHiJkL	aBbCdEfGhIJkL
	aBcDeFgHiJKl	aBcDEfgHIjKLl	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFggHiJKL

	aBCdeFghIjKL	aBCdEfGhIjkL	AbCdDEfGhIjkL	aBCdEfGHiJkL	abCdEfGHiJKl
	AabCdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHhIJKl	ABcdEfgHiJKl	ABcDeFghIjKl
	ABCdEfFgHijKl	ABcDEfGhIjkL	aBcDEfGhIJkL	abBcDeFGhIJkL	abCdEfGhIJKl
	AbcDefGhIJKkL	AbcDefGhIJkL	ABcdEfgHiJkL	ABcDeFggHiJkL	AbCDeFghIjKl
	AbCDeFgHIjkL	aBcDdEFgHIjKl	aBcDeFgHIjKL	abCdeFgHIJkL	AabCdeFgHIjKL
	AbcDefGHijKL	AbCdEfgHiIjKL	aBCdEfgHiJkL	AbCdEFghIjKl	AbCDeFfGhIjKl
	AbCdEfGHiJkL	aBcdEFgHIjKL	aBccdEfGHiJKl	AbCdeFgHiJKL	aBcDefGhIjKKl
	ABcDefGhIjKl	ABCdEfgHiJkL	aBCdEfGgHiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL
	aBccDeFGhIJkL	aBcdEfGhIJKl	AbCdeFgHiJKL	aAbCdeFghIJkL	ABcDefGhiJKl
	ABcDEfgHiIjKl	AbCDeFgHiJkL	aBcDeFGhIjKl	AbcDEeFgHIjKl	AbcDeFgHIJkL

	aBcdEfGhIJkL	AbCcdEfgHIjKL	AbCdeFghIJkL	ABcDefGhiJjKL	AbCdEfGhiJkL
	AbCDeFgHiJkL	aBcDeFGhHiJkL	abCdEFgHIjKl	AbcDeFgHIjKL	aBcdDefGHiJKL
	aBcdEfGhIjKl	ABCdeFghIjKLl	ABCdeFghIjKL	aBCdEfGhiJkL	aBCdEFgHiJjkL
	aBCdEfGHiJkL	abCdEfGHiJKl	AbcDeFfGhIJKl	AbcDefGhIJKL	aBcdEfgHiJKL
	aBCcdEfgHiJKl	ABcDeFghIjKL	aBcDEfGhIjkKL	aBcDeFGhIjkL	aBcDEfGHiJkL
	abCdEfGHhIJkL	aBcdEfgHIJkL	AbCDefghIJKl	ABcDeefGhIJKL	aBcdEfgHiJKL
	aBcDeFghIjKl	AAbCDeFghIjKl	ABcDeFGhIjkL	aBcDeFGhIiJKl	aBcDeFgHIJkL
	abCdEfgHIjKL	AbCdeeFgHiJKL	aBcDefGhIjKL	AbCdEfgHiJkL	ABcCdEfGhiJkL
	aBCDeFghIjKl	ABcdEFgHIjKkl	AbCdEfGHiJkL	aBcdEfGHiJKL	abCdeFgGHiJKL
	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEefGhiJKL	aBCdEfgHiJkL	aBCdEfGhIjKl

	AaBcDeFGhIjKl	AbcDEfGHiJkL	aBcdEfGHiJJkL	aBcdEfGhIJKl	AbCdeFghIJKL
	aBcDefFghIJKL	aBcDefGhIjKl	ABcDEfgHijKL	aBbCDeFgHiJkL	aBcDeFGhIJkl
	AbcDeFGhIJkLl	AbcDeFgHIJkL	aBcdEfGhIJkL	AbCdeFggHIjKL	AbCdeFghIjKL
	AbCDefGhiJKl	AbCDdEfGhIjkL	AbCDeFgHiJkL	aBcDeFgHIjKl	AAbcdEFgHIjKl
	AbcDeFgHIjKL	AbcdEfgHIiJKL	aBcdEfgHIjKL	aBCdeFghIjKL	AbCdEfGghIjKl
	ABCdEfGhiJkL	aBCdEfGHiJkL	AbccDEfGHiJkL	abCdEfGHiJKl	AbcDEfgHiJKLl
	AbcDefGHiJKL	AbcdEfgHiJKL	aBCdeFggHiJKl	ABcDeFghIjKL	aBcDEfGhiJkL
	aBcDEeFGhIjkL	aBcDeFGhIJkL	abCdEfGHiJKl	AabCdeFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiIJkL	ABcdEfgHiJKl	ABcDeFghIjKl	ABcDEfGgHijKl	AbCDeFgHIjKl
	aBcDeFGhIJkL	abCcDeFgHIJkL	abCdeFgHIJkL	AbcDefGhIJkLL	AbcDefGhIjKL

	AbCdEfgHiJkL	AbCDeFghHiJkL	aBCdEFghIjKl	AbCdEFgHiJKL	abcDdEfGHiJKl
	aBcdEfGHIjKL	abCdeFgHIjKL	AbbCdeFgHiJKL	aBcDefGhIjKL	AbCdEfgHiJJkL
	aBCdEfgHiJkL	AbCdEFgHijKl	AbCDeFfGhIJkl	AbCdEfGHiJKl	AbcDeFgHIjKL
	aBccdEfGHiJKL	aBcdeFgHiJKL	aBCdefGhIjKLl	ABcDeFghIjKL	aBCdEfGhiJkL
	aBCdEfGhHiJkL	aBcDEfGhIjKL	abCdEfGHiJKL	abcDdeFGhIJkL	AbcdEfGhIJKl
	ABcdeFgHiJKl	ABbCdeFgHiJkL	ABcDefGhIjKl	ABcDEfgHiJjKl	AbCDeFgHiJkL
	aBcDeFGhIjKl	AbCdEfGgHIjKl	AbCdeFgHIJkL	aBcdEfGhIJkL	AbCcDefGhIjKL
	AbCdEfghIJkL	ABcDefGhIjKkL	AbCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIiJkl
	ABcdEfGHIjKL	abCdeFgHIjKL	aBcDeeFgHiJKL	aBcdEfgHIjKL	AbCdEfghIjKL
	AaBCdeFgHijKL	aBCdEfGhIjKl	AbCdEFgHiJjKl	AbCdEfGHiJkL	abCdEfGHiJKl

	AbCdeFfGhIJKl	AbCdefGHiJKL	aBcDefgHiJKL	aBCcDefgHiJKl	ABcDeFgHijKL
	aBcDEfGhIjkLl	ABcDeFGhIjKl	aBcDeFGhIJkL	abCdEfGhHIJkL	aBcdEfGhIJKl
	AbCdefGhIJKl	ABcDeefGhIJkL	ABcdEfgHiJkL	ABcDeFgHijKl	ABbCDeFgHijKl
	AbCDeFgHIjKl	aBcDeFGhIJjKl	aBcDeFgHIjKL	aBcdeFgHIJkL	AbCdefFgHIjKL
	AbCdefGhIjKL	AbCdEfgHiJkL	AbCDdEfgHiJkL	aBCdEFghIjKl	AbCdEFgHiJKll
	AbCdEfGHiJKl	aBcDefGHIjKL	aBcdeFgHHiJKL	aBcdeFgHiJKL	aBcDefGhIjKL
	aBCdEefGhIjKl	ABCdEfgHiJkL	aBCdEfGhIjKl	AaBcDEfGhIjKl	AbCdEfGHiJkL
	aBcdEfGHiJKkl	ABcdEfGhIJkl	ABCdeFgHiJKl	ABcDefGgHiJkL	ABcDefGhIjKl
	ABcDEfgHiJkL	aBcCDeFgHijKL	aBcDeFGhIjKl	AbCdeFGhIJkLl	AbcDeFgHIJkL
	aBcdEfGhIJkL	AbCdeFggHIjKL	AbCdeFghIJkL	AbCDefGhiJKl	AbCDeEfGhIjKl

	AbCDeFgHiJkL	aBcDeFgHIjKl	AabCdEfGHIjKl	AbcDeFgHIjKL	aBcdEfgHIiJKL
	aBcdEfgHIjKL	AbCdeFghIjKL	AbCdEfGghIjKL	aBCdEfGhIjkL	AbCdEFgHiJkL
	abCcDEfGHiJkL	abCdEfGHiJKl	AbcDeFgHiJKLl	AbcDefGhIJKl	ABcdEfgHiJKL
	aBCdeFghHiJKl	ABcDeFghIjKL	aBcDEfGhIjkL	aBCdEeFGhIjKl	aBcDeFGhIJkL
	abCdEfGhIJKl	AbbCdeFGhIJKl	AbcDefGhIJKl	ABcdEfgHiJJkL	AbCdEfghIJkL
	ABcDeFghIjKl	ABcDEfGghIjKl	AbCDeFgHIjKl	aBcDeFGhIJkL	abCcDeFgHIjKL
	abCdeFgHIJkL	AbcDefGhIJkLL	aBcDefGhIjKL	AbCdEfgHiJkL	AbCDeFghHiJkL
	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeEfGHiJKl	aBcdEfGHIjKL	abCdeFgHIjKL
	AbbCdeFgHiJKL	aBcDefGhIjKL	aBCdEfgHiJjKl	ABcDeFgHiJkL	aBCdEfGhIjKl
	AbCdEfGGhIjKl	AbcDeFGHiJkL	aBcdEfGHiJKl	AbCcdEfGhIJKl	AbCdeFgHiJKl

	ABcDefGhiJKLl	ABcDefGhiJKl	ABcDeFgHiJkL	aBcDEfGhIiJkL	aBcDeFGhIjKl
	AbcDeFGhIJkL	aBcdEeFgHIJkL	aBcdEfGhIJkL	AbCdeFghIJkL	ABbCdeFghIJkL
	AbCDefGhiJKl	AbCDeFgHiJjKl	AbCdEFgHiJkL	abCDeFgHIjKl	AbcDeFfGHIjKl
	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCddEfgHIjKL	AbCdeFghIjKL	AbCdEfGhiJkLL
	aBCdEfGhIjkL	AbCdEFgHiJkL	abCdEFgHIiJkL	abCdEfGHiJKl	AbcDeFgHiJKL
	aBcdEefGHiJKL	aBcdEfgHiJKL	aBCdeFghIjKL	aBBcDeFghIjKL	aBcDEfGhIjkL
	aBCdEfGHiJjKl	aBcDeFGhIJkL	abCdEfGhIJKl	AbcDefFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJKl	ABCddEfgHiJkL	ABcDeFghIjKl	ABcDeFGhiJkLl	AbCDeFgHIjKl
	aBcDeFGhIjKL	abCdEfGhIIjKL	abCdeFgHIJkL	AbcDefGhIJkL	AbCdEefGhIjKL
	AbCdEfgHiJkL	AbCDeFghIjKl	AaBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFgHIjjKL

	aBcdEfGHIjKL	abCdeFgHIjKL	aBcDefGgHiJKL	aBcDefGhIjKL	aBCdEfgHiJkL
	aBCcDEfgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkLl	AbCdEfGHiJkL	aBcdEfGHiJKl
	AbCdeFgHhIJKl	AbCdeFgHiJKl	ABcDefGhIjKl	ABCdEefGhiJKl	ABcDeFgHiJkL
	aBcDEfGhIjKl	AaBcDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJjKL	aBcdEfGhIJkL
	AbCdeFghIJkL	ABcDefGghIJkL	AbCDefGhiJKl	AbCDeFgHiJkL	aBcDdEFgHiJkL
	abCDeFgHIjKl	AbcDeFgHIJkLl	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFghHiJKL
	aBCdeFghIjKL	AbCDefGhiJkL	AbCDeFfGhIjkL	aBCdEfGHiJkL	abCdEFgHIjKl
	AbbCdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHiJJKl	ABcdEfgHiJKL	aBCdeFghIjKL
	aBCdEfGghIjKl	ABcDEfGhiJkL	aBcDEfGhIJkl	AbCcDeFGhIJkl	AbCdEfGhIJKl
	AbcDefGhIJKl	AAbcDefGhIJKl	ABcdEfgHiJKl	ABcDeFghIiJkL	ABcDeFghIjKl

	ABcDeFGhiJkL	aBcDEeFgHiJkL	aBcDeFGhIjKL	abCdeFGhIJkL	AbbCdeFgHIJkL
	AbcDefGhIJkL	AbCdEfgHiJjKL	AbCdEfgHiJkL	AbCDeFghIjKl	AbCDeFgGhIjKl
	AbCdEFgHiJkL	aBcDeFgHIjKL	abCcdEfGHIjKL	abCdeFgHiJKL	aBcDefGhIjKL
	AaBcDefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL
	aBcdEeFGHiJkL	aBcdEfGHiJKl	AbCdeFgHiJKL	aBbCdeFghIJKl	ABcDefGhiJKl
	ABCdEfgHijJKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGgHIjKl	AbcDeFGhIJkL
	aBcdEfGhIJKl	AbCddEfgHIJkL	AbCdeFghIJkL	ABcDefGhiJKlL	AbCdEfGhiJkL
	AbCDeFgHiJkl	ABcDeFGhIiJkl	AbCdEFgHIjKl	AbcDeFgHIJkL	aBcdEeFgHIjKL
	aBcdEfgHIjKL	AbCdeFghIjKL	AbBCdeFghIjKL	aBCdEfGhiJkL	AbCDeFgHijJkL
	aBCdEfGHiJkl	AbCdEFgHiJKl	AbcDeFfGHiJKl	AbcDefGHiJKL	aBcdEfgHiJKL

	aBCddEfgHiJKL	aBcDeFghIjKL	aBCdEfGhiJkLl	ABcDEfGhiJkL	aBcDEfGhIJkl
	AbCdEfGHiIjKl	AbCdEfGhIJKl	AbcDefGhIJKl	ABcdEefGhIJKl	ABcdEfgHiJKl
	ABcDeFghIjKl	ABbCDeFghIjKl	ABcDeFgHiJkL	aBcDeFGhIjjKL	aBcDeFgHIjKL
	abCdeFGhIJkL	AbcDefGgHIJkL	AbcDefGhIjKL	AbCdEfgHiJkL	ABcDdEfgHiJkL
	AbCDefGhIjKl	AbCDeFgHiJkLl	AbCdEFgHiJkL	aBcDeFgHIjKl	AbCdeFgHIiJKl
	AbCdeFgHiJKL	aBcDefGhIjKL	AbCdEffGhIjKL	aBCdEfgHiJkL	aBCdEfGhIjKl
	AbBcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHiJjKL	aBcdEfGHiJKl	AbCdeFgHiJKL
	aBcDefGghIJKl	ABcDefgHiJKl	ABCdeFgHijKL	aBCdDeFgHiJkL	aBcDEfGhIjKl
	AbcDEfGHiJkLl	AbcDeFGhIJkL	aBcdEfGhIJKl	AbCdeFghHIJkL	AbCdefGhIJkL
	ABcDefGhiJKl	ABcDeFfGhiJkL	AbCDeFgHijKl	ABcDeFGhIjKl	aBbCdEFgHIjKl

	AbcDeFgHIJkL	aBcdEfgHIJjKL	aBcdeFgHIjKL	AbCdefGhIjKL	AbCDefGghIjKL
	aBCdEfGhiJkL	AbCDeFgHijKl	AbCDdEfGHiJkl	AbCdEfGHiJKl	AbcDeFgHIjKL
	aAbcDefGHiJKL	aBcdeFgHiJKL	aBCdeFghIiJKL	aBcDeFghIjKL	aBCdEfGhiJkL
	aBCdEFfGhiJkL	aBcDEfGhIJkl	AbCdEfGHiJKl	AbbCdeFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJjKL	AbCdEfgHiJKl	ABcDeFghIjKl	ABcDEfGghIjKl	ABcDeFgHiJkL
	aBcDeFGhIjKl	AbCcDeFgHIjKl	AbCdeFgHIJkL	AbcDefGhIJKl	AaBcDefGhIjKL
	AbCdEfgHiJkL	ABcDeFghIiJkL	AbCDefGhIjKl	AbCDeFgHiJkL	aBcDeFFgHiJkL
	aBcdEFgHIjKl	AbCdeFgHIjKL	aBbCdeFgHiJKL	aBcDefGhIjKL	AbCdEfghIjJKL
	aBCdeFgHijKL	aBCdEfGhIjKl	AbCdEFggHIjKl	AbCdEfGHiJkL	aBcdEfGHiJKl
	AbCddEfGhIJKl	AbCdeFgHiJKL	aBcDefgHiJKLl	ABcDefgHiJKl	ABcDeFgHijKL

	aBCdEfGhIijKL	aBcDeFGhIjKl	aBcDEfGhIJkL	aBcdEeFGhIJkL	aBcdEfGhIJKl
	AbCdefGhIJKl	ABcCdefGhIJkL	ABcDefgHiJKl	ABcDeFgHijjKL	AbCDeFgHijKl
	ABcDeFGhIjKl	aBcDeFGgHIjKl	aBcDeFgHIJkL	aBcdEfgHIJkL	AbCddeFgHIjKL
	AbCdefGhIjKL	AbCdEfgHiJkL	AaBCdEfGhiJkL	AbCdEFgHijKl	AbCDeFgHIijKl
	AbCdEfGHiJKl	aBcDeFgHIjKL	aBcdeEfGHiJKL	aBcdeFgHiJKL	aBCdefGhIjKL
	AbCcDefGhIjKL	aBCdEfGhiJkL	aBCdEfGhIjjKL	aBcDEfGhIjKl	AbCdEfGHiJKl
	aBcDefGGhIJKl	AbcdEfGhIJKl	ABcdeFgHiJKL	aBcDdeFgHiJKl	ABcDefGhIjKl
	ABcDEfgHiJkLl	AbCDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGhIJjKl	AbCdeFgHIJkL
	AbcdEfGhIJKl	AbCdeFfGhIjKL	AbCdEfghIJkL	ABcDefGhIjKl	ABbCdEfGhIjKl
	AbCDeFgHiJkL	aBcDeFGhIjjKL	aBcdEFgHIjKl	AbcDeFgHIjKL	aBcDefGgHiJKL

	aBcDefgHIjKL	AbCdEfghIjKL	AbCDdeFgHijKL	aBCdEfGhIjKl	AbCdEFgHiJkLl
	AbCdEfGHiJkL	abCdEfGHiJKl	AbcDeFgHhIjKL	AbCdefGHiJKL	aBcDefgHiJKL
	aBCdeFfgHiJKl	ABcDeFgHijKL	aBCdEfGhIjkL	aBCcDeFGhIjKl	aBcDeFGhIJkL
	abCdEfGHijjKL	AbCdEfGhIJKl	AbCdefGhIJKl	ABcDefgGhIJkL	ABcdEfgHiJKl
	ABcDeFghIjKl	ABcDEeFgHijKl	AbCDeFgHIjKl	aBcDeFGhIJkL	aaBcDeFgHIjKL
	aBcdeFgHIJkL	AbCdefGhIIjKL	AbCdefGhIjKL	AbCdEfgHiJkL	AbCDeFfgHiJkL
	AbCdEFgHijKl	AbCdEFgHiJKl	aBbCdEfGHiJKl	aBcDeFgHIjKL	aBcdeFgHIjjKL
	AbCdeFgHiJKL	aBcDefGhIjKL	AbCdEfggHIjKL	aBCdEfgHiJkL	aBCdEfGhIjKl
	AbCdDEfGhIjKl	AbCdEfGHiJKl	aBcdEfGHiJKl	ABbcdEfGhIJKl	AbCdeFgHiJKL
	aBcDefGhIiJKl	ABcDefGhIjKl	ABcDEfgHiJkL	aBcDEfFgHiJkL	aBcDeFGhIjKl

	AbCdeFGhIJkL	aBbcDeFgHIJkL	aBcdEfGhIJKl	AbCdeFghIJjKL	AbCdeFghIJkL
	ABcDefGhiJKl	ABcDeFggHIjKl	AbCDeFgHiJkL	aBcDeFgHIjKl	AbcDdEFgHIjKl
	AbcDeFgHIjKL	aBcdEfGhIjKL	AaBcdEfgHIjKL	AbCdeFghIjKL	AbCDefGhiIjKL
	aBCdEfGhIjkL	AbCdEFgHiJkL	abCdEFfGHiJkL	abCdEfGHiJKl	AbcDeFgHiJKL
	aBccDefGHiJKL	aBcdEfgHiJKL	aBCdeFghIjjKL	AbCDeFghIjKL	aBCdEfGhIjkL
	aBCdEfGgHIjKl	aBcDeFGhIJkL	abCdEfGHiJKl	AbcDdeFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiJKl	AAbCdEfgHiJkL	ABcDeFghIjKl	ABcDEfGhIijKl	AbCDeFgHIjKl
	aBcDeFGhIJkL	abCdEeFgHIjKL	abCdeFgHIJkL	AbCdefGhIJkL	ABccDefGhIjKL
	AbCdEfgHiJkL	AbCDeFghIjjKL	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcDeFggHIJkL
	aBcDefGHIjKL	abCdeFgHIjKL	AbcDdeFgHiJKL	aBcDefGhIjKL	aBCdEfgHiJkL

	AaBCdEfgHiJkL	aBCdEfGhIjKl	AbCdEFgHiJjKl	AbCdEfGHiJkL	aBcdEfGHiJKl
	AbCdeFfGhIJKl	AbCdeFgHiJKL	aBcDefGhIjKL	aBCcDefGhIjKl	ABcDeFgHiJkL
	aBcDEfGhIjjKL	aBcDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGgHIJkL	aBcdEfGhIJKl
	AbCdeFghIJkL	ABcDeeFghIJkL	AbCDefGhiJKl	ABcDeFgHiJkL	aAbCdEFgHiJkL
	aBcDeFgHIjKl	AbcDeFgHIJjKl	AbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFfgHIjKL
	AbCdeFghIjKL	AbCdEfGhiJkL	AbCCdEfGhIjkL	AbCdEFgHiJkL	abCdEFgHIjKkL
	abCdEfGHiJKl	AbcDeFgHiJKL	aBcdEfgGhIJKl	ABcdEfgHiJKL	aBCdeFghIjKL
	aBCdEeFghIjKL	aBcDEfGhIjkL	aBCdEfGHiJkL	aaBcDeFGhIJkL	abCdEfGhIJKl
	AbcDefGHiIjKL	AbcDefGhIJKl	ABcdEfgHiJKl	ABcDeFfgHiJkL	ABcDeFghIjKl
	ABcDEfGhiJkL	aBbCDeFgHIjKl	aBcDeFGhIJkL	abCdEfGhIjjKL	AbCdeFgHIJkL

	AbcDefGhIJkL	ABcdEfgHhIjKL	AbCdEfgHiJkL	AbCDeFghIjKl	AbCDdEfGhIjKl
	AbCdEFgHiJkL	aBcDeFgHIjKL	aaBcdEfGHIjKL	abCdeFgHIjKL	AbcDefGhIiJKL
	aBcDefGhIjKL	aBCdEfgHiJkL	aBCDeFfgHiJkL	aBCdEfGhIjKl	AbCdEfGHiJkL
	aBbCdEfGHiJkL	aBcdEfGHiJKl	AbCdeFgHiJjKL	AbCdeFgHiJKL	aBcDefGhiJKl
	ABCdEfgHhiJKl	ABcDeFgHiJkL	aBcDEFghIjKl	AbCdEeFGhIjKl	AbcDeFGhIJkL
	aBcdEfGhIJKl	AaBcdEfGhIJkL	AbCdeFghIJkL	ABcDefGhiIjKL	AbCDefGhiJKl
	AbCDeFgHiJkL	aBcDeFGgHiJkL	abCDeFgHIjKl	AbcDeFgHIJkL	aBccDeFgHIjKL
	aBcdEfgHIjKL	AbCdeFghIJkKL	AbCdeFghIjKL	AbCdEfGhiJkL	AbCDeFgHhIjkL
	AbCdEFgHiJkL	abCdEFgHIjKl	AbcDdEfGHiJKl	AbcDefGHiJKL	aBcdEfgHiJKL
	AbBcdEfgHiJKL	aBCdeFghIjKL	aBCdEfGhiJjKl	ABcDEfGhiJkL	aBCdEfGHiJkl

	AbCdEfFGhIJkL	abCdEfGhIJKl	AbcDefGHiJKL	aBccDefGhIJKl	ABcdEfgHiJKl
	ABcDeFghIjKkL	ABcDeFghIjKl	ABcDeFGhiJkL	aBcDEfGhHiJkL	aBcDeFGhIjKL
	abCdeFGhIJkL	AbcDdeFgHIJkL	AbcDefGhIJkL	AbCdEfgHiJkL	ABbCdEfgHiJkL
	AbCDeFghIjKl	AbCDeFgHiJjKl	AbCdEFgHiJkL	aBcDeFgHIjKL	abCdeFfGHIjKL
	abCdeFgHIjKL	aBcDefGhIjKL	AbCcDefGhIjKL	aBCdEfgHiJkL	aBCdEfGhIjKkL
	aBCdEfGhIjKl	AbCdEfGHiJkL	aBcdEFgHIiJkL	aBcdEfGHiJKl	AbCdeFgHiJKL
	aBcDeeFgHiJKl	ABcDefGhiJKl	ABCdEfgHijKL	aABcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEfGHiJjKl	AbcDeFGhIJkL	aBcdEfGhIJKl	AbCdeFfGhIJkL	AbCdeFghIJkL
	ABcDefGhiJKl	ABcCdEfGhiJKl	AbCDeFgHiJkl	ABcDeFGhIjKkL	abCdEFgHIjKl
	AbcDeFgHIJkL	aBcdEfGgHIjKL	aBcdEfgHIjKL	AbCdeFghIjKL	AbCDeeFghIjKL

	AbCdEfGhiJkL	AbCDeFgHijKl	AaBCdEfGHiJkl	AbCdEFgHIjKl	AbcDeFgHIjjKL
	AbcDefGHiJKL	aBcdEfgHiJKL	AbCdeFfgHiJKL	aBcDeFghIjKL	aBCdEfGhiJkL
	aBCcDEfGhiJkL	aBcDEfGhIJkl	AbCdEfGHiJKlL	abCdEfGhIJKl	AbcDefGhIJKL
	aBcdEfgHhIJKl	ABcdEfgHiJKl	ABcDeFghIjKl	ABCdEeFghIjKl	ABcDeFgHiJkL
	aBcDEfGhIjKl	AaBcDeFGhIjKL	abCdeFGhIJkL	AbcDefGhIJKkL	AbcDefGhIJkL
	AbCdEfgHiJkL	ABcDeFggHiJkL	AbCDeFghIjKl	AbCDeFgHiJkL	aBcCdEFgHiJkL
	aBcDeFgHIjKl	AbCdeFgHIJkL	AabCdeFgHIjKL	aBcDefGhIjKL	AbCdEfgHhIjKL
	aBCdEfgHiJkL	aBCdEfGhIjKl	AbCdEEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHIjKl
	AaBcdEfGHiJKl	AbCdeFgHiJKL	aBcDefGhiIJKl	ABcDefGhiJKl	ABCdeFgHijKL
	aBCdEfGgHiJkL	aBcDEfGhIjKl	AbCdEfGHiJkL	aBccDeFGhIJkL	aBcdEfGhIJKl

	AbCdeFghIJKkL	AbCdefGhIJkL	ABcDefGhiJKl	ABcDeFgHhiJkL	AbCDeFgHijKl
	ABcDeFGhIjKl	aBcDdEFgHIjKl	AbcDeFgHIJkL	aBcdEfGhIJkL	AbBcdeFgHIjKL
	AbCdefGhIjKL	AbCDefGhiJjKL	AbCdEfGhiJkL	AbCDeFgHijKl	AbCDeFfGHiJkl
	AbCdEFgHiJKl	AbcDeFgHIjKL	aBccDefGHiJKL	aBcdeFgHiJKL	aBCdeFghIjKLL
	aBcDeFghIjKL	aBCdEfGhiJkL	aBCdEFgHhiJkL	aBcDEfGhIJkl	AbCdEfGHiJKl
	AbcDdeFGhIJKl	AbcDefGhIJKl	ABcdEfgHiJKL	aBbCdEfgHiJKl	ABcDeFghIjKl
	ABCdEfGhiJjKl	ABcDeFgHiJkL	aBcDeFGhIjKl	AbCdEfGgHIjKL	abCdeFGhIJkL
	AbcDefGhIJKl	ABccDefGhIJkL	AbCdEfgHiJkL	ABcDeFghIjKkL	AbCDefGhIjKl
	AbCDeFgHiJkL	aBcDeFGhIiJkL	aBcdEFgHIjKl	AbCdeFgHIJkL	aBcDeeFgHIjKL
	aBcDefGhIjKL	AbCdEfghIJkL	AaBCdeFgHiJkL	aBCdEfGhIjKl	AbCdEFgHiJjKl

	AbCdEfGHiJkL	aBcdEfGHiJKl	AbCdeFfGHiJKl	AbCdeFgHiJKL	aBcDefgHiJKL
	aBCdDefgHiJKl	ABCdeFgHijKL	aBCdEfGhIjkLL	aBcDEfGhIjKl	AbcDEfGHiJkL
	aBcdEfGHhIJkL	aBcdEfGhIJKl	AbCdefGhIJKl	ABcDeefGhIJkL	ABcDefgHiJKl
	ABcDeFgHijKl	ABbCDeFgHijKl	ABcDeFGhIjKl	aBcDeFGhIJjKl	aBcDeFgHIJkL
	aBcdEfgHIJkL	AbCdefFgHIjKL	AbCdefGhIjKL	AbCdEfgHiJkL	AbCDdEfGhiJkL
	AbCDeFgHijKl	AbCDeFgHIjKll	AbCdEfGHiJKl	aBcDeFgHIjKL	aBcdeFgHHiJKL
	aBcdeFgHiJKL	aBCdefGhIjKL	AbCdEefGhIjKL	aBCdEfGhiJkL	aBcDEfGhIjKl
	AbCcDeFGhIjKl	AbcDeFGhIJkL	aBcdEfGhIJKl	AaBcdEfGhIJKl	AbCdeFghIJkL
	ABcDefGhhIJkL	AbCDefGhiJkL	ABcDeFgHijKl	ABcDEeFgHiJkl	AbCDeFgHIjKl
	AbcDeFGhIJkL	aBbcDeFgHIjKL	aBcdEfgHIjKL	AbCdeFghIiJKL	AbCdeFghIjKL

	AbCdEfGhiJkL	AbCDeFgHhiJkL	aBCdEFgHiJkl	AbCdEFgHIjKl	AbcDdEfGHiJKl
	AbcDefGHiJKL	aBcdEfgHiJKL	AaBcdEfgHiJKL	aBCdeFghIjKL	aBCdEfGhhIjKl
	ABCdEfGhiJkL	aBCdEfGHiJkl	AbCdEeFGhIJkL	abCdEfGHiJKl	AbcDefGHiJKL
	aBbcDefGhIJKl	ABcdEfgHiJKl	ABcDeFghIjJkL	ABcDeFghIjKl	ABcDEfGhiJkL
	aBcDEfGgHiJkL	aBcDeFGhIjKl	AbCdeFGhIJkL	AbcDdeFgHIJkL	AbcDefGhIJkL
	AbCdEfgHiJkL	AAbCdEfgHiJkL	AbCDeFghIjKl	AbCDeFgHiIjKl	AbCdEFgHiJkL
	aBcDeFgHIjKl	AbCdeEfGHIjKl	AbCdeFgHIjKL	aBcDefGhIjKL	AbCcDefGhIjKL
	aBCdEfgHijKL	aBCDeFghIjKkL	aBCdEfGhIjKl	AbCdEFgHiJkL	aBcdEFgGHiJkL
	aBcdEfGHiJKl	AbCdeFgHiJKL	aBcDdeFghIJKL	aBcDefGhiJKl	ABCdEfgHijKLl
	ABcDeFgHijKL	aBcDEfGhIjKl	aBCdEfGHiJjKl	AbcDeFGhIJkL	aBcdEfGhIJKl

	AbCdeFfGhIJkL	AbCdeFghIJkL	ABcDefGhiJKl	ABbCDefGhiJkL	ABcDeFgHijKl
	ABcDeFGhIjKkl	AbCDeFgHIjKl	AbcDeFgHIJkL	aBcdEfGgHIjKL	aBcdEfgHIjKL
	AbCdeFghIjKL	ABcDdeFghIjKL	AbCdEfGhiJkL	AbCDeFgHijKlL	aBCdEFgHiJkl
	AbCdEFgHIjKl	aBcDeFgHIiJKl	AbcDefGHiJKL	aBcdEfgHiJKL	AbCdeFfgHiJKL
	aBcDeFghIjKL	aBCdEfGhiJkL	aBCcDEfGhiJkL	aBCdEfGhIjKl	AbCdEfGHiJKll
	AbCdEfGhIJKl	AbcDefGhIJKl	ABcdEfgGhIJKl	ABcdEfgHiJKl	ABcDeFghIjKl
	ABCdEeFghIjKl	ABcDeFgHiJkL	aBcDEfGhIjKl	AaBcDeFGhIjKl	AbCdeFGhIJkL
	aBcDefGhIJJkL	AbcDefGhIJkL	AbCdEfgHiJkL	ABcDeFfgHiJkL	AbCDeFghIjKl
	AbCDeFgHiJkL	aBbCdEFgHiJkL	aBcDeFgHIjKl	AbCdeFgHIJkKl	AbCdeFgHIjKL
	aBcDefGhIjKL	AbCdEfggHiJKL	aBCdEfgHijKL	aBCDefGhIjkL	AbCDdEfGhIjKl

	AbCdEfGHiJkL	aBcdEfGHIjKl	AaBcdEfGHiJKl	AbCdeFgHiJKL	aBcDefgHhIJKl
	ABcDefgHiJKl	ABCdEfgHijKL	aBCdEfFgHijKl	ABcDEfGhIjKl	aBcDEfGHiJkL
	abBcDeFGhIJkL	aBcdEfGhIJKl	AbCdefGhIJKkL	AbCdefGhIJkL	ABcDefgHiJkL
	ABcDeFgHhiJkL	AbCDeFgHijKl	ABcDeFGhIjkL	aBcDdEFgHIjKl	aBcDeFgHIJkL
	aBcdEfGhIJkL	AaBcdeFgHIjKL	AbCdefGhIjKL	ABcdEfgHhIjKL	AbCdEfGhiJkL
	AbCDeFgHijKl	AbCDeFfGHijKl	AbCdEFgHiJKl	aBcDeFgHIjKL	abCcDefGHiJKL
	aBcdeFgHiJKL	AbCdefGhIjKKL	aBcDefGhIjKL	aBCdEfgHiJkL	aBCdEFggHiJkL
	aBcDEfGhIjKl	AbCdEfGHiJkL	aBcDdeFGhIJkL	aBcdEfGhIJKl	ABcdeFgHiJKL
	aAbCdeFgHiJKl	ABcDefGhIjKl	ABCdEfgHiIjKl	ABcDeFgHiJkL	aBcDEfGhIjKl
	AbCdEeFGhIjKl	AbCdeFGhIJkL	aBcdEfGhIJKl	AbCddEfGhIJkL	AbCdeFgHiJkL

	ABcDefGhIjKl	ABbCDefGhIjKl	AbCDeFgHiJkL	aBcDeFGgHiJkL	aBcdEFgHIjKl
	AbcDeFgHIJkL	aBcdEeFgHIjKL	aBcdEfgHIjKL	AbCdeFghIjKL	AbCCdeFghIjKL
	aBCdEfGhIjkL	AbCDeFgHhIjKl	aBCdEfGHiJkL	abCdEfGHIjKl	AbcDeEfGHiJKl
	AbCdefGHiJKL	aBcDefgHiJKL	aBCddEfgHiJKl	ABCdeFghIjKL	aBCdEfGhIjjKl
	ABcDEfGhIjkL	aBcDEfGHiJkL
					abCdEfFGhIJkL	abCdEfGhIJKl	AbCdefGhIJKl
	ABcDeefGhIJkL	ABcdEfgHiJkL	ABcDeFghIjKl	ABcCDeFgHijKl	ABcDeFGhIjkL
	aBcDeFGgHIjKl	aBcDeFgHIJkL	abCdEfgHIJkL	AbCdeeFgHIjKL	AbCdefGhIjKL
	AbCdEfgHiJkL	ABcDdEfgHiJkL	AbCDeFghIjKl	AbCDeFgHiJkLl	AbCdEFgHiJKl
	aBcDeFgHIjKL	abCdeFfGHiJKL	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEefGhIjKL
	aBCdEfgHiJkL	aBCdEFghIjKl	AbCcDEfGhIjKl	AbCdEfGHiJkL	aBcdEfGHhIJkL

	aBcdEfGhIJKl	AbCdeFgHiJKL	aBcDeeFgHiJKl	ABcDefGhIjKl	ABCdEfgHiJkL
	aBCdDeFgHiJkL	aBcDEfGhIjKl	AbCdEfGhIJkL	aBbcDeFGhIJkL	aBcdEfGhIJKl
	AbCdeFfgHIJkL	AbCdeFghIJkL	ABcDefGhiJkL	ABcDEefGhIjkL	AbCDeFgHiJkL
	aBcDeFGhIjKl	AbbCdEFgHIjKl	AbcDeFgHIJkL	aBcdEfGgHIjKL	aBcdEfgHIjKL
	AbCdeFghIjKL	AbCDeeFghIjKL	aBCdEfGhIjkL	AbCdEFgHiJkl	AbCDdEfGHiJkL
	abCdEfGHiJKl	AbcDeFgHIjKL	aBbcDefGHiJKL	aBcdEfgHiJKL	aBCdeFfgHiJKl
	ABCdeFghIjKl	ABCdEfGhiJkL	aBCdEEfGhIjkL	aBcDEfGHiJkL	abCdEfGHiJKl
	AbcCdEfGhIJKl	AbcDefGhIJKl	ABcdEfgGhIJkL	ABcdEfgHiJkL	ABcDeFghIjKl
	ABcDEfFghIjKl	AbCDeFGhIjkL	aBcDeFGhIJkL	abCdDeFgHIjKL	abCdeFgHIJkL
	AbcDefGhIJkL	ABccDefGhIjKL)
}
Japanese0764 =

『唐・日本における進朔に関する研究』(2013-10版)を使用する場合の朔閏表

PatternTableBasedLuniSolar, {
'origin_of_MSC'=>764, 'origin_of_LSC'=>2000146,
'indices'=> [
     When.Index('Japanese::Month', {:branch=>{1=>'_m:Calendar::閏'}}),
     When::Coordinates::DefaultDayIndex
 ],
'before'  => 'Japanese', 'after' => 'Japanese', 'note' => 'Japanese',
'remarks' => When.M17n('Japanese::based on Research Project 22520700'),
'rule_table'=> %w(				aBCdEfGhiJkL	aBCdEFgHiJjkL
	aBCdEfGHiJkL	abCdEfGHiJKl	AbcDeFfGHiJKl	AbCdeFghIJKL	aBcdEfgHiJKL
	aBCcDefgHiJKl	ABCdeFgHijKL	aBcDEfGhIjkKL	aBcDEfGhIjkL	AbcDEfGHiJkL
	aBcdEfGHhIJkL	aBcdEfgHIJkL	AbCDefghIJKl	ABcDeefGhIJKL	aBcDefgHiJKL
	aBcDeFgHijKl	AAbCDeFghIjKl	ABcDeFGhIjkL	aBcDeFGhIiJKl	aBcDeFgHIJkL
	aBcdEfgHIjKL	AbCdeeFgHiJKL	aBCdefGhIjKL	AbCdEfgHiJkL	ABcCdEfGhiJkL
	AbCDeFgHijKl	ABcDeFgHIjKkl	AbCdEfGHiJkL	aBcdEfGHiJKL	abCdeFgGHiJKL
	abCdeFgHiJKL	aBcDefGhIjKL	AbCdEefGhiJKL	aBCdEfgHiJkL	aBCdEfGhIjKl

	AaBcDeFGhIjKl	AbcDEfGHiJkL	aBcdEfGHiJJkL	aBcdEfGhIJKl	AbCdeFghIJKL
	aBcDefFghIJKL	aBcDefGhIjKl	ABcDEfgHijKL	aBbCDeFgHiJkL	aBcDeFGhIJkl
	AbcDeFGhIJkLl	AbcDeFgHIJkL	aBcdEfGhIJKl	AbCdeFggHIjKL	AbCdeFghIjKL
	ABcDefGhiJKl	AbCDdEfGhIjkL	AbCDeFgHiJkL	aBcDeFgHIjKl	AabCdEFgHIjKl
	AbcDeFgHIjKL	aBcdEfgHIiJKL	aBcdEfgHIjKL	aBCdeFghIjKL	AbCdEfGghIjKl
	ABCdEfGhiJkL	aBCdEfGHiJkL	AbccDEfGHiJkL	abCdEfGHiJKl	AbcDEfgHiJKLl
	AbcDefGHiJKL	AbcdEfgHiJKL	aBCdeFggHiJKl	ABcDeFghIjKL	aBCdEfGhiJkL
	aBCdEeFGhIjkL	aBcDeFGhIJkL	abCdEfGHiJKl	AabCdeFGhIJKl	AbcDefGhIJKl
	ABcdEfgHiIJkL	ABcdEfgHiJKl	ABcDeFghIjKl	ABcDEfGgHijKl	AbCDeFgHIjKl
	aBcDeFGhIJkL	abCcDeFgHIJkL	abCdeFgHIJkL	AbcDefGhIJkLL	AbcDefGhIjKL

	AbCdEfgHiJkL	AbCDeFghHiJkL	AbCdEFghIjKl	AbCdEFgHiJKL	abcDdEfGHiJKl
	aBcdEfGHIjKL	abCdeFgHIjKL	AbbCdeFgHiJKL	aBcDefGhIjKL	AbCdEfgHiJJkL
	aBCdEfgHiJkL)
}
InternationalFixed =

InternationalFixed calendar based on Gregorian calendar

[SolarYearTableBased, {
  'label'   => 'InternationalFixed',
  'indices' => [
      When.Index('InternationalFixedWeekNotes::month::Month', {:unit =>13}),
     When::Coordinates::DefaultDayIndex
    ],
  'rule_table'       => {
    365  => {'Length'=>[28] * 12 + [29]},
    366  => {'Length'=>[28] *  5 + [29] + [28] * 6 + [29]}
  },
  'note'   => 'InternationalFixedWeek'
}]
ChineseUighur =

正月:A, 2月:B, 3月:C, 4月:D, 5月:E, 6月:F, 7月:G, 8月:H, 9月:I, 10月:J, 11月:K, 12月:L 大の月:大文字, 小の月:小文字 同じアルファベットの連続の後者:閏月

PatternTableBasedLuniSolar.join([
  PatternTableBasedLuniSolar,
  {
    'indices'=>  ChineseIndices,
    'before' => 'ChineseTwin::キタイ暦',
    'after'  => 'ChineseTwin::キタイ暦',
    'note'   => 'Chinese',
  },
  ['ChineseTwin::キタイ暦', 1202..1305]],
  {
  1211 => {'L'  => 'l'  },
  1212 => {'a'  => 'A'  },
  1216 => {'fG' => 'Fg' },
  1222 => {'bC' => 'Bc' },
  1233 => {'Kl' => 'kL' },
  1234 => {'Ab' => 'aB' },
  1248 => {'gH' => 'Gh' },
  1249 => {'gH' => 'Gh' },
  1256 => {'fG' => 'Fg' },
  1257 => {'fG' => 'Fg' },
  1258 => {'Kl' => 'kL' },
  1261 => {'Bc' => 'bC' },
  1265 => {'eF' => 'Ef' },
  1266 => {'Cd' => 'cD' },
  1267 => {'Gh' => 'gH' },
  1270 => {'De' => 'dE' },
  1271 => {'iJ' => 'Ij' },
  1272 => {'Fg' => 'fG' },
  1274 => {'eF' => 'Ef' },
  1275 => {'Cd' => 'cD' },
  1276 => {'Ab' => 'aB', 'Fg'=>'fG' },
  1281 => {'Ab' => 'aB', 'De'=>'dE' },
  1283 => {'eF' => 'Ef' },
  1284 => {'eEf' => 'deF' },
  1285 => {'Fg' => 'fG' },
  1289 => {'Ef' => 'eF' },
  1291 => {'Ab' => 'aB', 'De'=>'dE' },
  1292 => {'Ef' => 'eF', 'jK'=>'Jk' },
  1293 => {'Ef' => 'eF' },
  1294 => {'Bc' => 'bC', 'fG'=>'Fg' },
  1295 => {'Bc' => 'bC' },
  1296 => {'De' => 'dE' },
  1298 => {'Bc' => 'bC', 'Fg'=>'fG' },
  1300 => {'De' => 'dE' },
  1301 => {'De' => 'dE' },
  1302 => {'Ef' => 'eF' },
  1303 => {'De' => 'dE', 'Fg'=>'fG', 'jK'=>'Jk' },
  1304 => {'aBCd' => 'ABcD' },
  1305 => {'C'  => 'c'  }
})
TimeSystems =

Martian Time, Coordinated

_time_systems.keys.join('|')