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