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