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