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 or later
5    * as published by the Free Software Foundation. This program is distributed
6    * in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
7    * the 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   */
21  package org.crosswire.jsword.versification.system;
22  
23  import org.crosswire.jsword.versification.BibleBook;
24  import org.crosswire.jsword.versification.Versification;
25  
26  /**
27   *
28   *
29   * @see gnu.lgpl.License for license details.<br>
30   *      The copyright to this program is held by it's authors.
31   * @author DM Smith
32   */
33  public class SystemKJVA extends Versification {
34      /**
35       * Build the "KJVA" Versification.
36       */
37      /* protected */ SystemKJVA() {
38          super(V11N_NAME, BOOKS_OT, BOOKS_NT, LAST_VERSE_OT, LAST_VERSE_NT);
39      }
40  
41      public static final String V11N_NAME = "KJVA";
42  
43      /* protected */ static final BibleBook[] BOOKS_NT = SystemDefault.BOOKS_NT;
44      /* protected */ static final int[][] LAST_VERSE_NT = SystemKJV.LAST_VERSE_NT;
45  
46      // SystemDefault.booksOT followed by
47      // deuterocanonical books
48      /* protected */ static final BibleBook[] BOOKS_OT =
49      {
50          BibleBook.GEN,
51          BibleBook.EXOD,
52          BibleBook.LEV,
53          BibleBook.NUM,
54          BibleBook.DEUT,
55          BibleBook.JOSH,
56          BibleBook.JUDG,
57          BibleBook.RUTH,
58          BibleBook.SAM1,
59          BibleBook.SAM2,
60          BibleBook.KGS1,
61          BibleBook.KGS2,
62          BibleBook.CHR1,
63          BibleBook.CHR2,
64          BibleBook.EZRA,
65          BibleBook.NEH,
66          BibleBook.ESTH,
67          BibleBook.JOB,
68          BibleBook.PS,
69          BibleBook.PROV,
70          BibleBook.ECCL,
71          BibleBook.SONG,
72          BibleBook.ISA,
73          BibleBook.JER,
74          BibleBook.LAM,
75          BibleBook.EZEK,
76          BibleBook.DAN,
77          BibleBook.HOS,
78          BibleBook.JOEL,
79          BibleBook.AMOS,
80          BibleBook.OBAD,
81          BibleBook.JONAH,
82          BibleBook.MIC,
83          BibleBook.NAH,
84          BibleBook.HAB,
85          BibleBook.ZEPH,
86          BibleBook.HAG,
87          BibleBook.ZECH,
88          BibleBook.MAL,
89          BibleBook.ESD1,
90          BibleBook.ESD2,
91          BibleBook.TOB,
92          BibleBook.JDT,
93          BibleBook.ADD_ESTH,
94          BibleBook.WIS,
95          BibleBook.SIR,
96          BibleBook.BAR,
97          BibleBook.PR_AZAR,
98          BibleBook.SUS,
99          BibleBook.BEL,
100         BibleBook.PR_MAN,
101         BibleBook.MACC1,
102         BibleBook.MACC2,
103     };
104 
105     /* protected */ static final int[][] LAST_VERSE_OT =
106     {
107         // Genesis
108         {
109                31,    25,    24,    26,    32,    22,    24,    22,    29,
110                32,    32,    20,    18,    24,    21,    16,    27,    33,    38,
111                18,    34,    24,    20,    67,    34,    35,    46,    22,    35,
112                43,    55,    32,    20,    31,    29,    43,    36,    30,    23,
113                23,    57,    38,    34,    34,    28,    34,    31,    22,    33,
114                26,
115         },
116         // Exodus
117         {
118                22,    25,    22,    31,    23,    30,    25,    32,    35,
119                29,    10,    51,    22,    31,    27,    36,    16,    27,    25,
120                26,    36,    31,    33,    18,    40,    37,    21,    43,    46,
121                38,    18,    35,    23,    35,    35,    38,    29,    31,    43,
122                38,
123         },
124         // Leviticus
125         {
126                17,    16,    17,    35,    19,    30,    38,    36,    24,
127                20,    47,     8,    59,    57,    33,    34,    16,    30,    37,
128                27,    24,    33,    44,    23,    55,    46,    34,
129         },
130         // Numbers
131         {
132                54,    34,    51,    49,    31,    27,    89,    26,    23,
133                36,    35,    16,    33,    45,    41,    50,    13,    32,    22,
134                29,    35,    41,    30,    25,    18,    65,    23,    31,    40,
135                16,    54,    42,    56,    29,    34,    13,
136         },
137         // Deuteronomy
138         {
139                46,    37,    29,    49,    33,    25,    26,    20,    29,
140                22,    32,    32,    18,    29,    23,    22,    20,    22,    21,
141                20,    23,    30,    25,    22,    19,    19,    26,    68,    29,
142                20,    30,    52,    29,    12,
143         },
144         // Joshua
145         {
146                18,    24,    17,    24,    15,    27,    26,    35,    27,
147                43,    23,    24,    33,    15,    63,    10,    18,    28,    51,
148                 9,    45,    34,    16,    33,
149         },
150         // Judges
151         {
152                36,    23,    31,    24,    31,    40,    25,    35,    57,
153                18,    40,    15,    25,    20,    20,    31,    13,    31,    30,
154                48,    25,
155         },
156         // Ruth
157         {
158                22,    23,    18,    22,
159         },
160         // I Samuel
161         {
162                28,    36,    21,    22,    12,    21,    17,    22,    27,
163                27,    15,    25,    23,    52,    35,    23,    58,    30,    24,
164                42,    15,    23,    29,    22,    44,    25,    12,    25,    11,
165                31,    13,
166         },
167         // II Samuel
168         {
169                27,    32,    39,    12,    25,    23,    29,    18,    13,
170                19,    27,    31,    39,    33,    37,    23,    29,    33,    43,
171                26,    22,    51,    39,    25,
172         },
173         // I Kings
174         {
175                53,    46,    28,    34,    18,    38,    51,    66,    28,
176                29,    43,    33,    34,    31,    34,    34,    24,    46,    21,
177                43,    29,    53,
178         },
179         // II Kings
180         {
181                18,    25,    27,    44,    27,    33,    20,    29,    37,
182                36,    21,    21,    25,    29,    38,    20,    41,    37,    37,
183                21,    26,    20,    37,    20,    30,
184         },
185         // I Chronicles
186         {
187                54,    55,    24,    43,    26,    81,    40,    40,    44,
188                14,    47,    40,    14,    17,    29,    43,    27,    17,    19,
189                 8,    30,    19,    32,    31,    31,    32,    34,    21,    30,
190         },
191         // II Chronicles
192         {
193                17,    18,    17,    22,    14,    42,    22,    18,    31,
194                19,    23,    16,    22,    15,    19,    14,    19,    34,    11,
195                37,    20,    12,    21,    27,    28,    23,     9,    27,    36,
196                27,    21,    33,    25,    33,    27,    23,
197         },
198         // Ezra
199         {
200                11,    70,    13,    24,    17,    22,    28,    36,    15,
201                44,
202         },
203         // Nehemiah
204         {
205                11,    20,    32,    23,    19,    19,    73,    18,    38,
206                39,    36,    47,    31,
207         },
208         // Esther
209         {
210                22,    23,    15,    17,    14,    14,    10,    17,    32,
211                 3,
212         },
213         // Job
214         {
215                22,    13,    26,    21,    27,    30,    21,    22,    35,
216                22,    20,    25,    28,    22,    35,    22,    16,    21,    29,
217                29,    34,    30,    17,    25,     6,    14,    23,    28,    25,
218                31,    40,    22,    33,    37,    16,    33,    24,    41,    30,
219                24,    34,    17,
220         },
221         // Psalms
222         {
223                 6,    12,     8,     8,    12,    10,    17,     9,    20,
224                18,     7,     8,     6,     7,     5,    11,    15,    50,    14,
225                 9,    13,    31,     6,    10,    22,    12,    14,     9,    11,
226                12,    24,    11,    22,    22,    28,    12,    40,    22,    13,
227                17,    13,    11,     5,    26,    17,    11,     9,    14,    20,
228                23,    19,     9,     6,     7,    23,    13,    11,    11,    17,
229                12,     8,    12,    11,    10,    13,    20,     7,    35,    36,
230                 5,    24,    20,    28,    23,    10,    12,    20,    72,    13,
231                19,    16,     8,    18,    12,    13,    17,     7,    18,    52,
232                17,    16,    15,     5,    23,    11,    13,    12,     9,     9,
233                 5,     8,    28,    22,    35,    45,    48,    43,    13,    31,
234                 7,    10,    10,     9,     8,    18,    19,     2,    29,   176,
235                 7,     8,     9,     4,     8,     5,     6,     5,     6,     8,
236                 8,     3,    18,     3,     3,    21,    26,     9,     8,    24,
237                13,    10,     7,    12,    15,    21,    10,    20,    14,     9,
238                 6,
239         },
240         // Proverbs
241         {
242                33,    22,    35,    27,    23,    35,    27,    36,    18,
243                32,    31,    28,    25,    35,    33,    33,    28,    24,    29,
244                30,    31,    29,    35,    34,    28,    28,    27,    28,    27,
245                33,    31,
246         },
247         // Ecclesiastes
248         {
249                18,    26,    22,    16,    20,    12,    29,    17,    18,
250                20,    10,    14,
251         },
252         // Song of Solomon
253         {
254                17,    17,    11,    16,    16,    13,    13,    14,
255         },
256         // Isaiah
257         {
258                31,    22,    26,     6,    30,    13,    25,    22,    21,
259                34,    16,     6,    22,    32,     9,    14,    14,     7,    25,
260                 6,    17,    25,    18,    23,    12,    21,    13,    29,    24,
261                33,     9,    20,    24,    17,    10,    22,    38,    22,     8,
262                31,    29,    25,    28,    28,    25,    13,    15,    22,    26,
263                11,    23,    15,    12,    17,    13,    12,    21,    14,    21,
264                22,    11,    12,    19,    12,    25,    24,
265         },
266         // Jeremiah
267         {
268                19,    37,    25,    31,    31,    30,    34,    22,    26,
269                25,    23,    17,    27,    22,    21,    21,    27,    23,    15,
270                18,    14,    30,    40,    10,    38,    24,    22,    17,    32,
271                24,    40,    44,    26,    22,    19,    32,    21,    28,    18,
272                16,    18,    22,    13,    30,     5,    28,     7,    47,    39,
273                46,    64,    34,
274         },
275         // Lamentations
276         {
277                22,    22,    66,    22,    22,
278         },
279         // Ezekiel
280         {
281                28,    10,    27,    17,    17,    14,    27,    18,    11,
282                22,    25,    28,    23,    23,     8,    63,    24,    32,    14,
283                49,    32,    31,    49,    27,    17,    21,    36,    26,    21,
284                26,    18,    32,    33,    31,    15,    38,    28,    23,    29,
285                49,    26,    20,    27,    31,    25,    24,    23,    35,
286         },
287         // Daniel
288         {
289                21,    49,    30,    37,    31,    28,    28,    27,    27,
290                21,    45,    13,
291         },
292         // Hosea
293         {
294                11,    23,     5,    19,    15,    11,    16,    14,    17,
295                15,    12,    14,    16,     9,
296         },
297         // Joel
298         {
299                20,    32,    21,
300         },
301         // Amos
302         {
303                15,    16,    15,    13,    27,    14,    17,    14,    15,
304         },
305         // Obadiah
306         {
307                21,
308         },
309         // Jonah
310         {
311                17,    10,    10,    11,
312         },
313         // Micah
314         {
315                16,    13,    12,    13,    15,    16,    20,
316         },
317         // Nahum
318         {
319                15,    13,    19,
320         },
321         // Habakkuk
322         {
323                17,    20,    19,
324         },
325         // Zephaniah
326         {
327                18,    15,    20,
328         },
329         // Haggai
330         {
331                15,    23,
332         },
333         // Zechariah
334         {
335                21,    13,    10,    14,    11,    15,    14,    23,    17,
336                12,    17,    14,     9,    21,
337         },
338         // Malachi
339         {
340                14,    17,    18,     6,
341         },
342         // I Esdras
343         {
344                58,    30,    24,    63,    73,    34,    15,    96,    55,
345         },
346         // II Esdras
347         {
348                40,    48,    36,    52,    56,    59,    70,    63,    47,
349                59,    46,    51,    58,    48,    63,    78,
350         },
351         // Tobit
352         {
353                22,    14,    17,    21,    22,    17,    18,    21,     6,
354                12,    19,    22,    18,    15,
355         },
356         // Judith
357         {
358                16,    28,    10,    15,    24,    21,    32,    36,    14,
359                23,    23,    20,    20,    19,    13,    25,
360         },
361         // Additions to Esther
362         {
363                 1,     1,     1,     1,     1,     1,     1,     1,     1,
364                13,    12,     6,    18,    19,    16,    24,
365         },
366         // Wisdom
367         {
368                16,    24,    19,    20,    23,    25,    30,    21,    18,
369                21,    26,    27,    19,    31,    19,    29,    21,    25,    22,
370         },
371         // Sirach
372         {
373                30,    18,    31,    31,    15,    37,    36,    19,    18,
374                31,    34,    18,    26,    27,    20,    30,    32,    33,    30,
375                32,    28,    27,    28,    34,    26,    29,    30,    26,    28,
376                25,    31,    24,    31,    26,    20,    26,    31,    34,    35,
377                30,    24,    25,    33,    22,    26,    20,    25,    25,    16,
378                29,    30,
379         },
380         // Baruch
381         {
382                22,    35,    37,    37,     9,    73,
383         },
384         // Prayer of Azariah
385         {
386                68,
387         },
388         // Susanna
389         {
390                64,
391         },
392         // Bel and the Dragon
393         {
394                42,
395         },
396         // Prayer of Manasses
397         {
398                 1,
399         },
400         // I Maccabees
401         {
402                64,    70,    60,    61,    68,    63,    50,    32,    73,
403               89,     74,    53,    53,    49,    41,    24,
404         },
405         // II Maccabees
406         {
407               36,    32,    40,    50,    27,    31,    42,    36,    29,
408               38,    38,    45,    26,    46,    39,
409         },
410     };
411 
412     /**
413      * Serialization ID
414      */
415     private static final long serialVersionUID = 1054681694714921358L;
416 }
417