1   /**
2    * Distribution License:
3    * JSword is free software; you can redistribute it and/or modify it under
4    * the terms of the GNU Lesser General Public License, version 2.1 as published by
5    * the Free Software Foundation. This program is distributed in the hope
6    * that it will be useful, but WITHOUT ANY WARRANTY; without even the
7    * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
8    * See the GNU Lesser General Public License for more details.
9    *
10   * The License is available on the internet at:
11   *       http://www.gnu.org/copyleft/lgpl.html
12   * or by writing to:
13   *      Free Software Foundation, Inc.
14   *      59 Temple Place - Suite 330
15   *      Boston, MA 02111-1307, USA
16   *
17   * Copyright: 2012
18   *     The copyright to this program is held by it's authors.
19   *
20   * ID: $Id: SystemLuther.java 2223 2012-01-26 21:28:02Z dmsmith $
21   */
22  package org.crosswire.jsword.versification.system;
23  
24  import org.crosswire.jsword.versification.BibleBook;
25  import org.crosswire.jsword.versification.Versification;
26  
27  /**
28   *
29   *
30   * @see gnu.lgpl.License for license details.<br>
31   *      The copyright to this program is held by it's authors.
32   * @author DM Smith [dmsmith555 at yahoo dot com]
33   */
34  public class SystemLuther extends Versification {
35      /**
36       * Build the "Luther" Versification.
37       */
38      /* protected */ SystemLuther() {
39          super(V11N_NAME, BOOKS_OT, BOOKS_NT, LAST_VERSE_OT, LAST_VERSE_NT);
40      }
41  
42      public static final String V11N_NAME = "Luther";
43  
44      // Different ordering of SystemDefault.booksNT
45      /* protected */ static final BibleBook[] BOOKS_NT =
46      {
47          BibleBook.MATT,
48          BibleBook.MARK,
49          BibleBook.LUKE,
50          BibleBook.JOHN,
51          BibleBook.ACTS,
52          BibleBook.ROM,
53          BibleBook.COR1,
54          BibleBook.COR2,
55          BibleBook.GAL,
56          BibleBook.EPH,
57          BibleBook.PHIL,
58          BibleBook.COL,
59          BibleBook.THESS1,
60          BibleBook.THESS2,
61          BibleBook.TIM1,
62          BibleBook.TIM2,
63          BibleBook.TITUS,
64          BibleBook.PHLM,
65          BibleBook.PET1,
66          BibleBook.PET2,
67          BibleBook.JOHN1,
68          BibleBook.JOHN2,
69          BibleBook.JOHN3,
70          BibleBook.HEB,
71          BibleBook.JAS,
72          BibleBook.JUDE,
73          BibleBook.REV,
74      };
75  
76      /* protected */ static final int[][] LAST_VERSE_NT =
77      {
78          // Matthew
79          {
80                 25,    23,    17,    25,    48,    34,    29,    34,    38,
81                 42,    30,    50,    58,    36,    39,    28,    27,    35,    30,
82                 34,    46,    46,    39,    51,    46,    75,    66,    20,
83          },
84          // Mark
85          {
86                 45,    28,    35,    41,    43,    56,    37,    38,    50,
87                 52,    33,    44,    37,    72,    47,    20,
88          },
89          // Luke
90          {
91                 80,    52,    38,    44,    39,    49,    50,    56,    62,
92                 42,    54,    59,    35,    35,    32,    31,    37,    43,    48,
93                 47,    38,    71,    56,    53,
94          },
95          // John
96          {
97                 51,    25,    36,    54,    47,    71,    53,    59,    41,
98                 42,    57,    50,    38,    31,    27,    33,    26,    40,    42,
99                 31,    25,
100         },
101         // Acts
102         {
103                26,    47,    26,    37,    42,    15,    60,    40,    43,
104                48,    30,    25,    52,    28,    41,    40,    34,    28,    40,
105                38,    40,    30,    35,    27,    27,    32,    44,    31,
106         },
107         // Romans
108         {
109                32,    29,    31,    25,    21,    23,    25,    39,    33,
110                21,    36,    21,    14,    23,    33,    27,
111         },
112         // I Corinthians
113         {
114                31,    16,    23,    21,    13,    20,    40,    13,    27,
115                33,    34,    31,    13,    40,    58,    24,
116         },
117         // II Corinthians
118         {
119                24,    17,    18,    18,    21,    18,    16,    24,    15,
120                18,    33,    21,    13,
121         },
122         // Galatians
123         {
124                24,    21,    29,    31,    26,    18,
125         },
126         // Ephesians
127         {
128                23,    22,    21,    32,    33,    24,
129         },
130         // Philippians
131         {
132                30,    30,    21,    23,
133         },
134         // Colossians
135         {
136                29,    23,    25,    18,
137         },
138         // I Thessalonians
139         {
140                10,    20,    13,    18,    28,
141         },
142         // II Thessalonians
143         {
144                12,    17,    18,
145         },
146         // I Timothy
147         {
148                20,    15,    16,    16,    25,    21,
149         },
150         // II Timothy
151         {
152                18,    26,    17,    22,
153         },
154         // Titus
155         {
156                16,    15,    15,
157         },
158         // Philemon
159         {
160                25,
161         },
162         // I Peter
163         {
164                25,    25,    22,    19,    14,
165         },
166         // II Peter
167         {
168                21,    22,    18,
169         },
170         // I John
171         {
172                10,    29,    24,    21,    21,
173         },
174         // II John
175         {
176                13,
177         },
178         // III John
179         {
180                15,
181         },
182         // Hebrews
183         {
184                14,    18,    19,    16,    14,    20,    28,    13,    28,
185                39,    40,    29,    25,
186         },
187         // James
188         {
189                27,    26,    18,    17,    20,
190         },
191         // Jude
192         {
193                25,
194         },
195         // Revelation of John
196         {
197                20,    29,    22,    11,    14,    17,    17,    13,    21,
198                11,    19,    18,    18,    20,     8,    21,    18,    24,    21,
199                15,    27,    21,
200         },
201     };
202 
203     // Different ordering of SystemDefault.booksOT
204     // followed by deuterocanonical books
205     /* protected */ static final BibleBook[] BOOKS_OT =
206     {
207         BibleBook.GEN,
208         BibleBook.EXOD,
209         BibleBook.LEV,
210         BibleBook.NUM,
211         BibleBook.DEUT,
212         BibleBook.JOSH,
213         BibleBook.JUDG,
214         BibleBook.RUTH,
215         BibleBook.SAM1,
216         BibleBook.SAM2,
217         BibleBook.KGS1,
218         BibleBook.KGS2,
219         BibleBook.CHR1,
220         BibleBook.CHR2,
221         BibleBook.EZRA,
222         BibleBook.NEH,
223         BibleBook.ESTH,
224         BibleBook.JOB,
225         BibleBook.PS,
226         BibleBook.PROV,
227         BibleBook.ECCL,
228         BibleBook.SONG,
229         BibleBook.ISA,
230         BibleBook.JER,
231         BibleBook.LAM,
232         BibleBook.EZEK,
233         BibleBook.DAN,
234         BibleBook.HOS,
235         BibleBook.JOEL,
236         BibleBook.AMOS,
237         BibleBook.OBAD,
238         BibleBook.JONAH,
239         BibleBook.MIC,
240         BibleBook.NAH,
241         BibleBook.HAB,
242         BibleBook.ZEPH,
243         BibleBook.HAG,
244         BibleBook.ZECH,
245         BibleBook.MAL,
246         BibleBook.JDT,
247         BibleBook.WIS,
248         BibleBook.TOB,
249         BibleBook.SIR,
250         BibleBook.BAR,
251         BibleBook.MACC1,
252         BibleBook.MACC2,
253         BibleBook.ADD_ESTH,
254         BibleBook.ADD_DAN,
255         BibleBook.PR_MAN,
256     };
257 
258     /* protected */ static final int[][] LAST_VERSE_OT =
259     {
260         // Genesis
261         {
262                31,    25,    24,    26,    32,    22,    24,    22,    29,
263                32,    32,    20,    18,    24,    21,    16,    27,    33,    38,
264                18,    34,    24,    20,    67,    34,    35,    46,    22,    35,
265                43,    54,    33,    20,    31,    29,    43,    36,    30,    23,
266                23,    57,    38,    34,    34,    28,    34,    31,    22,    33,
267                26,
268         },
269         // Exodus
270         {
271                22,    25,    22,    31,    23,    30,    29,    28,    35,
272                29,    10,    51,    22,    31,    27,    36,    16,    27,    25,
273                26,    37,    30,    33,    18,    40,    37,    21,    43,    46,
274                38,    18,    35,    23,    35,    35,    38,    29,    31,    43,
275                38,
276         },
277         // Leviticus
278         {
279                17,    16,    17,    35,    26,    23,    38,    36,    24,
280                20,    47,     8,    59,    57,    33,    34,    16,    30,    37,
281                27,    24,    33,    44,    23,    55,    46,    34,
282         },
283         // Numbers
284         {
285                54,    34,    51,    49,    31,    27,    89,    26,    23,
286                36,    35,    16,    33,    45,    41,    35,    28,    32,    22,
287                29,    35,    41,    30,    25,    19,    65,    23,    31,    39,
288                17,    54,    42,    56,    29,    34,    13,
289         },
290         // Deuteronomy
291         {
292                46,    37,    29,    49,    33,    25,    26,    20,    29,
293                22,    32,    31,    19,    29,    23,    22,    20,    22,    21,
294                20,    23,    29,    26,    22,    19,    19,    26,    69,    28,
295                20,    30,    52,    29,    12,
296         },
297         // Joshua
298         {
299                18,    24,    17,    24,    15,    27,    26,    35,    27,
300                43,    23,    24,    33,    15,    63,    10,    18,    28,    51,
301                 9,    45,    34,    16,    33,
302         },
303         // Judges
304         {
305                36,    23,    31,    24,    31,    40,    25,    35,    57,
306                18,    40,    15,    25,    20,    20,    31,    13,    31,    30,
307                48,    25,
308         },
309         // Ruth
310         {
311                22,    23,    18,    22,
312         },
313         // I Samuel
314         {
315                28,    36,    21,    22,    12,    21,    17,    22,    27,
316                27,    15,    25,    23,    52,    35,    23,    58,    30,    24,
317                42,    16,    23,    28,    23,    44,    25,    12,    25,    11,
318                31,
319                13,
320         },
321         // II Samuel
322         {
323                27,    32,    39,    12,    25,    23,    29,    18,    13,
324                19,    27,    31,    39,    33,    37,    23,    29,    32,    44,
325                26,    22,    51,    39,    25,
326         },
327         // I Kings
328         {
329                53,    46,    28,    20,    32,    38,    51,    66,    28,
330                29,    43,    33,    34,    31,    34,    34,    24,    46,    21,
331                43,    29,    54,
332         },
333         // II Kings
334         {
335                18,    25,    27,    44,    27,    33,    20,    29,    37,
336                36,    20,    22,    25,    29,    39,    20,    41,    37,    37,
337                21,    26,    20,    37,    20,    30,
338         },
339         // I Chronicles
340         {
341                54,    55,    24,    43,    41,    66,    40,    40,    44,
342                14,    47,    41,    14,    17,    29,    43,    27,    17,    19,
343                 8,    30,    19,    32,    31,    31,    32,    34,    21,    30,
344         },
345         // II Chronicles
346         {
347                18,    17,    17,    22,    14,    42,    22,    18,    31,
348                19,    23,    16,    23,    14,    19,    14,    19,    34,    11,
349                37,    20,    12,    21,    27,    28,    23,     9,    27,    36,
350                27,    21,    33,    25,    33,    27,    23,
351         },
352         // Ezra
353         {
354                11,    70,    13,    24,    17,    22,    28,    36,    15,
355                44,
356         },
357         // Nehemiah
358         {
359                11,    20,    38,    17,    19,    19,    73,    18,    37,
360                40,    36,    47,    31,
361         },
362         // Esther
363         {
364                22,    23,    15,    17,    14,    14,    10,    17,    32,
365                 3,
366         },
367         // Job
368         {
369                22,    13,    26,    21,    27,    30,    21,    22,    35,
370                22,    20,    25,    28,    22,    35,    22,    16,    21,    29,
371                29,    34,    30,    17,    25,     6,    14,    23,    28,    25,
372                31,    40,    22,    33,    37,    16,    33,    24,    41,    30,
373                32,    26,    17,
374         },
375         // Psalms
376         {
377                 6,    12,     9,     9,    13,    11,    18,    10,    21,
378                18,     7,     9,     6,     7,     5,    11,    15,    51,    15,
379                10,    14,    32,     6,    10,    22,    12,    14,     9,    11,
380                13,    25,    11,    22,    23,    28,    13,    40,    23,    14,
381                18,    14,    12,     5,    27,    18,    12,    10,    15,    21,
382                23,    21,    11,     7,     9,    24,    14,    12,    12,    18,
383                14,     9,    13,    12,    11,    14,    20,     8,    36,    37,
384                 6,    24,    20,    28,    23,    11,    13,    21,    72,    13,
385                20,    17,     8,    19,    13,    14,    17,     7,    19,    53,
386                17,    16,    16,     5,    23,    11,    13,    12,     9,     9,
387                 5,     8,    29,    22,    35,    45,    48,    43,    14,    31,
388                 7,    10,    10,     9,     8,    18,    19,     2,    29,   176,
389                 7,     8,     9,     4,     8,     5,     6,     5,     6,     8,
390                 8,     3,    18,     3,     3,    21,    26,     9,     8,    24,
391                14,    10,     8,    12,    15,    21,    10,    20,    14,     9,
392                 6,
393         },
394         // Proverbs
395         {
396                33,    22,    35,    27,    23,    35,    27,    36,    18,
397                32,    31,    28,    25,    35,    33,    33,    28,    24,    29,
398                30,    31,    29,    35,    34,    28,    28,    27,    28,    27,
399                33,    31,
400         },
401         // Ecclesiastes
402         {
403                18,    26,    22,    17,    19,    12,    29,    17,    18,
404                20,    10,    14,
405         },
406         // Song of Solomon
407         {
408                17,    17,    11,    16,    16,    12,    14,    14,
409         },
410         // Isaiah
411         {
412                31,    22,    26,     6,    30,    13,    25,    23,    20,
413                34,    16,     6,    22,    32,     9,    14,    14,     7,    25,
414                 6,    17,    25,    18,    23,    12,    21,    13,    29,    24,
415                33,     9,    20,    24,    17,    10,    22,    38,    22,     8,
416                31,    29,    25,    28,    28,    25,    13,    15,    22,    26,
417                11,    23,    15,    12,    17,    13,    12,    21,    14,    21,
418                22,    11,    12,    19,    11,    25,    24,
419         },
420         // Jeremiah
421         {
422                19,    37,    25,    31,    31,    30,    34,    23,    25,
423                25,    23,    17,    27,    22,    21,    21,    27,    23,    15,
424                18,    14,    30,    40,    10,    38,    24,    22,    17,    32,
425                24,    40,    44,    26,    22,    19,    32,    21,    28,    18,
426                16,    18,    22,    13,    30,     5,    28,     7,    47,    39,
427                46,    64,    34,
428         },
429         // Lamentations
430         {
431                22,    22,    66,    22,    22,
432         },
433         // Ezekiel
434         {
435                28,    10,    27,    17,    17,    14,    27,    18,    11,
436                22,    25,    28,    23,    23,     8,    63,    24,    32,    14,
437                44,    37,    31,    49,    27,    17,    21,    36,    26,    21,
438                26,    18,    32,    33,    31,    15,    38,    28,    23,    29,
439                49,    26,    20,    27,    31,    25,    24,    23,    35,
440         },
441         // Daniel
442         {
443                21,    49,    33,    34,    30,    29,    28,    27,    27,
444                21,    45,    13,
445         },
446         // Hosea
447         {
448                 9,    25,     5,    19,    15,    11,    16,    14,    17,
449                15,    11,    15,    15,    10,
450         },
451         // Joel
452         {
453                20,    27,     5,    21,
454         },
455         // Amos
456         {
457                15,    16,    15,    13,    27,    14,    17,    14,    15,
458         },
459         // Obadiah
460         {
461                21,
462         },
463         // Jonah
464         {
465                16,    11,    10,    11,
466         },
467         // Micah
468         {
469                16,    13,    12,    14,    14,    16,    20,
470         },
471         // Nahum
472         {
473                14,    14,    19,
474         },
475         // Habakkuk
476         {
477                17,    20,    19,
478         },
479         // Zephaniah
480         {
481                18,    15,    20,
482         },
483         // Haggai
484         {
485                15,    23,
486         },
487         // Zechariah
488         {
489                17,    17,    10,    14,    11,    15,    14,    23,    17,
490                12,    17,    14,     9,    21,
491         },
492         // Malachi
493         {
494                14,    17,    24,
495         },
496         // Judith
497         {
498                11,    18,    12,    14,    26,    20,    24,    28,    15,
499                21,    17,    21,    31,    16,    16,    31,
500         },
501         // Wisdom
502         {
503                16,    25,    19,    20,    24,    27,    30,    21,    19,
504                21,    26,    27,    19,    31,    19,    29,    21,    25,    21,
505         },
506         // Tobit
507         {
508                25,    23,    25,    22,    29,    23,    20,    23,    12,
509                13,    20,    22,    22,    17,
510         },
511         // Sirach
512         {
513                38,    23,    34,    36,    18,    37,    40,    22,    25,
514                34,    35,    19,    32,    27,    21,    30,    31,    33,    27,
515                33,    31,    33,    37,    47,    34,    28,    33,    30,    35,
516                27,    40,    28,    32,    31,    26,    28,    34,    39,    41,
517                32,    29,    26,    37,    26,    32,    23,    31,    28,    20,
518                31,    38,
519         },
520         // Baruch
521         {
522                22,    35,    38,    37,     9,    73,
523         },
524         // I Maccabees
525         {
526                68,    70,    60,    61,    68,    63,    50,    32,    73,
527                89,    74,    54,    54,    49,    41,    24,
528         },
529         // II Maccabees
530         {
531                36,    33,    40,    50,    27,    31,    42,    36,    29,
532                38,    38,    46,    26,    46,    40,
533         },
534         // Additions to Esther
535         {
536                 4,     8,    12,    12,    16,     9,     8,
537         },
538         // Additions to Daniel
539         {
540                64,    41,    66,
541         },
542         // Prayer of Manasses
543         {
544                16,
545         },
546     };
547 
548     /**
549      * Serialization ID
550      */
551     private static final long serialVersionUID = -1165901663498643158L;
552 }
553