~pkgcrosswire/sword/nroff-manpages

1 by Dmitrijs Ledkovs
Import upstream version 1.5.11
1
/******************************************************************************
2
 * canon.h - Canonical text information to be included by VerseKey.cpp
3
 *
4
 * $Id: canon.h 1864 2005-11-20 06:06:40Z scribe $
5
 *
6
 * Copyright 1998-2005 CrossWire Bible Society (http://www.crosswire.org)
7
 *	CrossWire Bible Society
8
 *	P. O. Box 2528
9
 *	Tempe, AZ  85280-2528
10
 *
11
 * This program is free software; you can redistribute it and/or modify it
12
 * under the terms of the GNU General Public License as published by the
13
 * Free Software Foundation version 2.
14
 *
15
 * This program is distributed in the hope that it will be useful, but
16
 * WITHOUT ANY WARRANTY; without even the implied warranty of
17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
18
 * General Public License for more details.
19
 *
20
 */
21
22
/******************************************************************************
23
 * [on]tbooks - initialize static instance for all canonical text names
24
 *		and chapmax
25
 */
26
27
struct sbook
28
  VerseKey::otbooks[] = {
29
  {"Genesis", "Gen", 50},
30
  {"Exodus", "Exod", 40},
31
  {"Leviticus", "Lev", 27},
32
  {"Numbers", "Num", 36},
33
  {"Deuteronomy", "Deut", 34},
34
  {"Joshua", "Josh", 24},
35
  {"Judges", "Judg", 21},
36
  {"Ruth", "Ruth", 4},
37
  {"I Samuel", "1Sam", 31},
38
  {"II Samuel", "2Sam", 24},
39
  {"I Kings", "1Kgs", 22},
40
  {"II Kings", "2Kgs", 25},
41
  {"I Chronicles", "1Chr", 29},
42
  {"II Chronicles", "2Chr", 36},
43
  {"Ezra", "Ezra", 10},
44
  {"Nehemiah", "Neh", 13},
45
  {"Esther", "Esth", 10},
46
  {"Job", "Job", 42},
47
  {"Psalms", "Ps", 150},
48
  {"Proverbs", "Prov", 31},
49
  {"Ecclesiastes", "Eccl", 12},
50
  {"Song of Solomon", "Song", 8},
51
  {"Isaiah", "Isa", 66},
52
  {"Jeremiah", "Jer", 52},
53
  {"Lamentations", "Lam", 5},
54
  {"Ezekiel", "Ezek", 48},
55
  {"Daniel", "Dan", 12},
56
  {"Hosea", "Hos", 14},
57
  {"Joel", "Joel", 3},
58
  {"Amos", "Amos", 9},
59
  {"Obadiah", "Obad", 1},
60
  {"Jonah", "Jonah", 4},
61
  {"Micah", "Mic", 7},
62
  {"Nahum", "Nah", 3},
63
  {"Habakkuk", "Hab", 3},
64
  {"Zephaniah", "Zeph", 3},
65
  {"Haggai", "Hag", 2},
66
  {"Zechariah", "Zech", 14},
67
  {"Malachi", "Mal", 4}
68
};
69
70
struct sbook
71
  VerseKey::ntbooks[] = {
72
  {"Matthew", "Matt", 28},
73
  {"Mark", "Mark", 16},
74
  {"Luke", "Luke", 24},
75
  {"John", "John", 21},
76
  {"Acts", "Acts", 28},
77
  {"Romans", "Rom", 16},
78
  {"I Corinthians", "1Cor", 16},
79
  {"II Corinthians", "2Cor", 13},
80
  {"Galatians", "Gal", 6},
81
  {"Ephesians", "Eph", 6},
82
  {"Philippians", "Phil", 4},
83
  {"Colossians", "Col", 4},
84
  {"I Thessalonians", "1Thess", 5},
85
  {"II Thessalonians", "2Thess", 3},
86
  {"I Timothy", "1Tim", 6},
87
  {"II Timothy", "2Tim", 4},
88
  {"Titus", "Titus", 3},
89
  {"Philemon", "Phlm", 1},
90
  {"Hebrews", "Heb", 13},
91
  {"James", "Jas", 5},
92
  {"I Peter", "1Pet", 5},
93
  {"II Peter", "2Pet", 3},
94
  {"I John", "1John", 5},
95
  {"II John", "2John", 1},
96
  {"III John", "3John", 1},
97
  {"Jude", "Jude", 1},
98
  {"Revelation of John", "Rev", 22}
99
};
100
101
102
/******************************************************************************
103
 *	Abbreviations - MUST be in alphabetical order & by PRIORITY
104
 *		RULE: first match of entire key
105
 *			(e.g. key: "1CH"; match: "1CHRONICLES")
106
 */
107
108
const struct abbrev
109
  VerseKey::builtin_abbrevs[] = {
110
  {"1 C", 46},			//   1 Corinthians
111
  {"1 CHRONICLES", 13},		//   1 Chronicles
112
  {"1 CORINTHIANS", 46},	//   1 Corinthians
113
  {"1 JN", 62},			//    1 John
114
  {"1 JOHN", 62},		//    1 John
115
  {"1 KGS", 11},		//    1 Kings
116
  {"1 KINGS", 11},		//    1 Kings
117
  {"1 PETER", 60},		//    1 Peter
118
  {"1 PTR", 60},		//    1 Peter
119
  {"1 SAMUEL", 9},		//    1 Samuel
120
  {"1 THESSALONIANS", 52},	//   1 Thessalonians
121
  {"1 TIMOTHY", 54},		//   1 Timothy
122
  {"1C", 46},			//   1 Corinthians
123
  {"1CHRONICLES", 13},		//   1 Chronicles
124
  {"1CORINTHIANS", 46},		//   1 Corinthians
125
  {"1JN", 62},			//    1 John       
126
  {"1JOHN", 62},		//    1 John
127
  {"1KGS", 11},			// 1 Kings
128
  {"1KINGS", 11},		//    1 Kings
129
  {"1PETER", 60},		//    1 Peter
130
  {"1PTR", 60},			//    1 Peter
131
  {"1SAMUEL", 9},		//    1 Samuel
132
  {"1THESSALONIANS", 52},	//   1 Thessalonians
133
  {"1TIMOTHY", 54},		//   1 Timothy
134
  {"2 C", 47},			//   2 Corinthians
135
  {"2 CHRONICLES", 14},		//   2 Chronicles
136
  {"2 CORINTHIANS", 47},	//   2 Corinthians
137
  {"2 JN", 63},			//    2 John
138
  {"2 JOHN", 63},		//    2 John
139
  {"2 KGS", 12},		//    2 Kings
140
  {"2 KINGS", 12},		//    2 Kings
141
  {"2 PETER", 61},		//    2 Peter
142
  {"2 PTR", 61},		//    2 Peter
143
  {"2 SAMUEL", 10},		//    2 Samuel
144
  {"2 THESSALONIANS", 53},	//   2 Thessalonians
145
  {"2 TIMOTHY", 55},		//   2 Timothy
146
  {"2C", 47},			//   2 Corinthians
147
  {"2CHRONICLES", 14},		//   2 Chronicles
148
  {"2CORINTHIANS", 47},		//   2 Corinthians
149
  {"2JN", 63},			//    2 John    
150
  {"2JOHN", 63},		//    2 John
151
  {"2KGS", 12},			// 2 Kings
152
  {"2KINGS", 12},		//    2 Kings
153
  {"2PETER", 61},		//    2 Peter
154
  {"2PTR", 61},			//    2 Peter
155
  {"2SAMUEL", 10},		//    2 Samuel
156
  {"2THESSALONIANS", 53},	//   2 Thessalonians
157
  {"2TIMOTHY", 55},		//   2 Timothy
158
  {"3 JN", 64},			//    3 John
159
  {"3 JOHN", 64},		//    3 John
160
  {"3JN", 64},			//    3 John
161
  {"3JOHN", 64},		//    3 John
162
  {"ACTS", 44},			//     Acts
163
  {"AMOS", 30},			//    Amos
164
  {"APOCALYPSE OF ST. JOHN", 66},	//    Apocalypse of St. John (Rev.)
165
  {"C", 51},			//    Colossians
166
  {"CANTICLE OF CANTICLES", 22},	//    Canticle of Canticles (Song of S.)
167
  {"COLOSSIANS", 51},		//    Colossians
168
  {"D", 5},			//     Deuteronomy
169
  {"DANIEL", 27},		//    Daniel
170
  {"DEUTERONOMY", 5},		//    Deuteronomy
171
  {"E", 49},			//     Ephesians
172
  {"ECCLESIASTES", 21},		//    Ecclesiastes
173
  {"EPHESIANS", 49},		//    Ephesians
174
  {"ESTER", 17},		//    Esther
175
  {"ESTHER", 17},		//    Esther
176
  {"EXODUS", 2},		//    Exodus
177
  {"EZEKIEL", 26},		//   Ezekiel
178
  {"EZK", 26},		//   Ezekiel
179
  {"EZRA", 15},			//   Ezra
180
  {"G", 1},			//     Genesis
181
  {"GALATIANS", 48},		//    Galatians
182
  {"GENESIS", 1},		//    Genesis
183
  {"H", 58},			//     Hebrews
184
  {"HABAKKUK", 35},		//    Habakkuk
185
  {"HAGGAI", 37},		//   Haggai
186
  {"HEBREWS", 58},		//    Hebrews
187
  {"HOSEA", 28},		//    Hosea
188
  {"I C", 46},			//   1 Corinthians
189
  {"I CHRONICLES", 13},		//   1 Chronicles
190
  {"I CORINTHIANS", 46},	//   1 Corinthians
191
  {"I JN", 62},			//    1 John
192
  {"I JOHN", 62},		//    1 John
193
  {"I KGS", 11},		// 1 Kings
194
  {"I KINGS", 11},		//    1 Kings
195
  {"I PETER", 60},		//    1 Peter
196
  {"I PTR", 60},		//    1 Peter
197
  {"I SAMUEL", 9},		//    1 Samuel
198
  {"I THESSALONIANS", 52},	//   1 Thessalonians
199
  {"I TIMOTHY", 54},		//   1 Timothy
200
  {"IC", 46},			//   1 Corinthians
201
  {"ICHRONICLES", 13},		//   1 Chronicles
202
  {"ICORINTHIANS", 46},		//   1 Corinthians
203
  {"II C", 47},			//   2 Corinthians
204
  {"II CHRONICLES", 14},	//   2 Chronicles
205
  {"II CORINTHIANS", 47},	//   2 Corinthians
206
  {"II JN", 63},		//    2 John  
207
  {"II JOHN", 63},		//    2 John
208
  {"II KGS", 12},		// 2 Kings
209
  {"II KINGS", 12},		//    2 Kings
210
  {"II PETER", 61},		//    2 Peter
211
  {"II PTR", 61},		//    2 Peter
212
  {"II SAMUEL", 10},		//    2 Samuel
213
  {"II THESSALONIANS", 53},	//   2 Thessalonians
214
  {"II TIMOTHY", 55},		//   2 Timothy
215
  {"IIC", 47},			//   2 Corinthians
216
  {"IICHRONICLES", 14},		//   2 Chronicles
217
  {"IICORINTHIANS", 47},	//   2 Corinthians
218
  {"III JN", 64},		//    3 John 
219
  {"III JOHN", 64},		//    3 John
220
  {"IIIJN", 64},		//    3 John
221
  {"IIIJOHN", 64},		//    3 John
222
  {"IIJN", 63},			//    2 John
223
  {"IIJOHN", 63},		//    2 John
224
  {"IIKGS", 12},		// 2 Kings
225
  {"IIKINGS", 12},		//    2 Kings
226
  {"IIPETER", 61},		//    2 Peter
227
  {"IIPTR", 61},		//    2 Peter
228
  {"IISAMUEL", 10},		//    2 Samuel
229
  {"IITHESSALONIANS", 53},	//   2 Thessalonians
230
  {"IITIMOTHY", 55},		//   2 Timothy
231
  {"IJN", 62},			//    1 John
232
  {"IJOHN", 62},		//    1 John
233
  {"IKGS", 11},			// 1 Kings
234
  {"IKINGS", 11},		//    1 Kings
235
  {"IPETER", 60},		//    1 Peter
236
  {"IPTR", 60},			//    1 Peter
237
  {"ISA", 23},			//     Isaiah
238
  {"ISAIAH", 23},		//     Isaiah
239
  {"ISAMUEL", 9},		//    1 Samuel
240
  {"ITHESSALONIANS", 52},	//   1 Thessalonians
241
  {"ITIMOTHY", 54},		//   1 Timothy
242
  {"J", 43},			//     John
243
  {"JAMES", 59},		//    James
244
  {"JAS", 59},			//    James
245
  {"JDGS", 7},		//  Judges
246
  {"JEREMIAH", 24},		//    Jeremiah
247
  {"JHN", 43},			//    John
248
  {"JN", 43},			//    John
249
  {"JO", 43},			//    John
250
  {"JOB", 18},			//   Job
251
  {"JOEL", 29},			//   Joel
252
  {"JOHN", 43},			//   John
253
  {"JOL", 29},			//   Joel
254
  {"JONAH", 32},		//   Jonah
255
  {"JOSHUA", 6},		//   Joshua
256
  {"JUDE", 65},			//  Jude
257
  {"JUDGES", 7},		//  Judges
258
  {"L", 42},			//     Luke
259
  {"LAMENTATIONS", 25},		//    Lamentations
260
  {"LEVITICUS", 3},		//    Leviticus
261
  {"LK", 42},			//    Luke
262
  {"LUKE", 42},			//    Luke
263
  {"MA", 40},			//    Matthew
264
  {"MALACHI", 39},		//   Malachi
265
  {"MARK", 41},			//   Mark
266
  {"MATTHEW", 40},		//   Matthew
267
  {"MICAH", 33},		//    Micah
268
  {"MK", 41},			//    Mark
269
  {"MRK", 41},			//    Mark
270
  {"MT", 40},			//    Matthew
271
  {"N", 4},			//     Numbers
272
  {"NAHUM", 34},		//    Nahum
273
  {"NAM", 34},		//    Nahum
274
  {"NEHEMIAH", 16},		//    Nehemiah
275
  {"NUMBERS", 4},		//    Numbers
276
  {"OBADIAH", 31},		//     Obadiah
277
  {"P", 19},			//     Psalms
278
  {"PHIL", 50},			//    Philippians
279
  {"PHILEMON", 57},		// Philemon
280
  {"PHILIPPIANS", 50},		// Philippians
281
  {"PHLM", 57},		// Philemon
282
  {"PHM", 57},			//   Philemon
283
  {"PHP", 50},			//   Philippians
284
  {"PROVERBS", 20},		//    Proverbs
285
  {"PSALMS", 19},		//    Psalms
286
  {"PSM", 19},			// Psalms
287
  {"PSS", 19},			// Psalms
288
  {"QOHELETH", 21},              // Qohelet (Ecclesiastes)
289
  {"REVELATION OF JOHN", 66},	//     Revelation
290
  {"ROMANS", 45},		//    Romans
291
  {"RUTH", 8},			//    Ruth
292
  {"SNG", 22},	//     Song of Solomon
293
  {"SOLOMON", 22},	//     Song of Solomon
294
  {"SONG OF SOLOMON", 22},	//     Song of Solomon
295
  {"SONG OF SONGS", 22},	//     Song of Solomon
296
  {"SOS", 22},			//     Song of Solomon
297
  {"TITUS", 56},		//     Titus
298
  {"ZECHARIAH", 38},		//   Zechariah
299
  {"ZEPHANIAH", 36},		//   Zephaniah
300
  {"", -1}
301
};
302
303
304
/******************************************************************************
305
 *	Maximum verses per chapter
306
 */
307
308
int
309
  VerseKey::vm[] = {
310
  // Genesis
311
  31, 25, 24, 26, 32, 22, 24, 22, 29, 32, 32, 20, 18, 24, 21, 16, 27, 33, 38,
312
    18, 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, 55, 32, 20, 31, 29, 43, 36,
313
    30, 23, 23, 57, 38, 34, 34, 28, 34, 31, 22, 33, 26,
314
  // Exodus
315
  22, 25, 22, 31, 23, 30, 25, 32, 35, 29, 10, 51, 22, 31, 27, 36, 16, 27, 25,
316
    26, 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, 18, 35, 23, 35, 35, 38, 29,
317
    31, 43, 38,
318
  // Leviticus
319
  17, 16, 17, 35, 19, 30, 38, 36, 24, 20, 47, 8, 59, 57, 33, 34, 16, 30, 37,
320
    27, 24, 33, 44, 23, 55, 46, 34,
321
  // Numbers
322
  54, 34, 51, 49, 31, 27, 89, 26, 23, 36, 35, 16, 33, 45, 41, 50, 13, 32, 22,
323
    29, 35, 41, 30, 25, 18, 65, 23, 31, 40, 16, 54, 42, 56, 29, 34, 13,
324
  // Deuteronomy
325
  46, 37, 29, 49, 33, 25, 26, 20, 29, 22, 32, 32, 18, 29, 23, 22, 20, 22, 21,
326
    20, 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, 30, 52, 29, 12,
327
  // Joshua
328
  18, 24, 17, 24, 15, 27, 26, 35, 27, 43, 23, 24, 33, 15, 63, 10, 18, 28, 51,
329
    9, 45, 34, 16, 33,
330
  // Judges
331
  36, 23, 31, 24, 31, 40, 25, 35, 57, 18, 40, 15, 25, 20, 20, 31, 13, 31, 30,
332
    48, 25,
333
  // Ruth
334
  22, 23, 18, 22,
335
  // I Samual
336
  28, 36, 21, 22, 12, 21, 17, 22, 27, 27, 15, 25, 23, 52, 35, 23, 58, 30, 24,
337
    42, 15, 23, 29, 22, 44, 25, 12, 25, 11, 31, 13,
338
  // II Samuel
339
  27, 32, 39, 12, 25, 23, 29, 18, 13, 19, 27, 31, 39, 33, 37, 23, 29, 33, 43,
340
    26, 22, 51, 39, 25,
341
  // I Kings
342
  53, 46, 28, 34, 18, 38, 51, 66, 28, 29, 43, 33, 34, 31, 34, 34, 24, 46, 21,
343
    43, 29, 53,
344
  // II Kings
345
  18, 25, 27, 44, 27, 33, 20, 29, 37, 36, 21, 21, 25, 29, 38, 20, 41, 37, 37,
346
    21, 26, 20, 37, 20, 30,
347
  // I Chronicles
348
  54, 55, 24, 43, 26, 81, 40, 40, 44, 14, 47, 40, 14, 17, 29, 43, 27, 17, 19,
349
    8, 30, 19, 32, 31, 31, 32, 34, 21, 30,
350
  // II Chronicles
351
  17, 18, 17, 22, 14, 42, 22, 18, 31, 19, 23, 16, 22, 15, 19, 14, 19, 34, 11,
352
    37, 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, 21, 33, 25, 33, 27, 23,
353
  // Ezra
354
  11, 70, 13, 24, 17, 22, 28, 36, 15, 44,
355
  // Nehemiah
356
  11, 20, 32, 23, 19, 19, 73, 18, 38, 39, 36, 47, 31,
357
  // Esther
358
  22, 23, 15, 17, 14, 14, 10, 17, 32, 3,
359
  // Job
360
  22, 13, 26, 21, 27, 30, 21, 22, 35, 22, 20, 25, 28, 22, 35, 22, 16, 21, 29,
361
    29, 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, 40, 22, 33, 37, 16, 33, 24, 41,
362
    30, 24, 34, 17,
363
  // Psalms
364
  6, 12, 8, 8, 12, 10, 17, 9, 20, 18, 7, 8, 6, 7, 5, 11, 15, 50, 14, 9, 13,
365
    31, 6, 10, 22, 12, 14, 9, 11, 12, 24, 11, 22, 22, 28, 12, 40, 22, 13, 17,
366
    13, 11, 5, 26, 17, 11, 9, 14, 20, 23, 19, 9, 6, 7, 23, 13, 11, 11, 17, 12,
367
    8, 12, 11, 10, 13, 20, 7, 35, 36, 5, 24, 20, 28, 23, 10, 12, 20, 72, 13,
368
    19, 16, 8, 18, 12, 13, 17, 7, 18, 52, 17, 16, 15, 5, 23, 11, 13, 12, 9, 9,
369
    5, 8, 28, 22, 35, 45, 48, 43, 13, 31, 7, 10, 10, 9, 8, 18, 19, 2, 29, 176,
370
    7, 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, 3, 18, 3, 3, 21, 26, 9, 8, 24, 13, 10, 7,
371
    12, 15, 21, 10, 20, 14, 9, 6,
372
  // Proverbs
373
  33, 22, 35, 27, 23, 35, 27, 36, 18, 32, 31, 28, 25, 35, 33, 33, 28, 24, 29,
374
    30, 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, 31,
375
  // Ecclesiastes
376
  18, 26, 22, 16, 20, 12, 29, 17, 18, 20, 10, 14,
377
  // Song of Solomon
378
  17, 17, 11, 16, 16, 13, 13, 14,
379
  // Isaiah
380
  31, 22, 26, 6, 30, 13, 25, 22, 21, 34, 16, 6, 22, 32, 9, 14, 14, 7, 25, 6,
381
    17, 25, 18, 23, 12, 21, 13, 29, 24, 33, 9, 20, 24, 17, 10, 22, 38, 22, 8,
382
    31, 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, 23, 15, 12, 17, 13, 12, 21,
383
    14, 21, 22, 11, 12, 19, 12, 25, 24,
384
  // Jeremiah
385
  19, 37, 25, 31, 31, 30, 34, 22, 26, 25, 23, 17, 27, 22, 21, 21, 27, 23, 15,
386
    18, 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, 40, 44, 26, 22, 19, 32, 21,
387
    28, 18, 16, 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, 64, 34,
388
  // Lamentations
389
  22, 22, 66, 22, 22,
390
  // Ezekiel
391
  28, 10, 27, 17, 17, 14, 27, 18, 11, 22, 25, 28, 23, 23, 8, 63, 24, 32, 14,
392
    49, 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, 18, 32, 33, 31, 15, 38, 28,
393
    23, 29, 49, 26, 20, 27, 31, 25, 24, 23, 35,
394
  // Daniel
395
  21, 49, 30, 37, 31, 28, 28, 27, 27, 21, 45, 13,
396
  // Hosea
397
  11, 23, 5, 19, 15, 11, 16, 14, 17, 15, 12, 14, 16, 9,
398
  // Joel
399
  20, 32, 21,
400
  // Amos
401
  15, 16, 15, 13, 27, 14, 17, 14, 15,
402
  // Obadiah
403
  21,
404
  // Jonah
405
  17, 10, 10, 11,
406
  // Micah
407
  16, 13, 12, 13, 15, 16, 20,
408
  // Nahum
409
  15, 13, 19,
410
  // Habakkuk
411
  17, 20, 19,
412
  // Zephaniah
413
  18, 15, 20,
414
  // Haggai
415
  15, 23,
416
  // Zechariah
417
  21, 13, 10, 14, 11, 15, 14, 23, 17, 12, 17, 14, 9, 21,
418
  // Malachi
419
  14, 17, 18, 6,
420
  // -----------------------------------------------------------------
421
  // Matthew
422
  25, 23, 17, 25, 48, 34, 29, 34, 38, 42, 30, 50, 58, 36, 39, 28, 27, 35, 30,
423
    34, 46, 46, 39, 51, 46, 75, 66, 20,
424
  // Mark
425
  45, 28, 35, 41, 43, 56, 37, 38, 50, 52, 33, 44, 37, 72, 47, 20,
426
  // Luke
427
  80, 52, 38, 44, 39, 49, 50, 56, 62, 42, 54, 59, 35, 35, 32, 31, 37, 43, 48,
428
    47, 38, 71, 56, 53,
429
  // John
430
  51, 25, 36, 54, 47, 71, 53, 59, 41, 42, 57, 50, 38, 31, 27, 33, 26, 40, 42,
431
    31, 25,
432
  // Acts
433
  26, 47, 26, 37, 42, 15, 60, 40, 43, 48, 30, 25, 52, 28, 41, 40, 34, 28, 41,
434
    38, 40, 30, 35, 27, 27, 32, 44, 31,
435
  // Romans
436
  32, 29, 31, 25, 21, 23, 25, 39, 33, 21, 36, 21, 14, 23, 33, 27,
437
  // I Corinthians
438
  31, 16, 23, 21, 13, 20, 40, 13, 27, 33, 34, 31, 13, 40, 58, 24,
439
  // II Corinthians
440
  24, 17, 18, 18, 21, 18, 16, 24, 15, 18, 33, 21, 14,
441
  // Galatians
442
  24, 21, 29, 31, 26, 18,
443
  // Ephesians
444
  23, 22, 21, 32, 33, 24,
445
  // Philippians
446
  30, 30, 21, 23,
447
  // Colossians
448
  29, 23, 25, 18,
449
  // I Thessalonians
450
  10, 20, 13, 18, 28,
451
  // II Thessalonians
452
  12, 17, 18,
453
  // I Timothy
454
  20, 15, 16, 16, 25, 21,
455
  // II Timothy
456
  18, 26, 17, 22,
457
  // Titus
458
  16, 15, 15,
459
  // Philemon
460
  25,
461
  // Hebrews
462
  14, 18, 19, 16, 14, 20, 28, 13, 28, 39, 40, 29, 25,
463
  // James
464
  27, 26, 18, 17, 20,
465
  // I Peter
466
  25, 25, 22, 19, 14,
467
  // II Peter
468
  21, 22, 18,
469
  // I John
470
  10, 29, 24, 21, 21,
471
  // II John
472
  13,
473
  // III John
474
  14,
475
  // Jude
476
  25,
477
  // Revelation of John
478
  20, 29, 22, 11, 14, 17, 17, 13, 21, 11, 19, 17, 18, 20, 8, 21, 18, 24, 21,
479
    15, 27, 21
480
};
481
482
483
long
484
  VerseKey::otbks[] = {
485
  0, 1, 52, 93, 121, 158,
486
  193, 218, 240, 245, 277, 302, 325,
487
  351, 381, 418, 429, 443, 454, 497,
488
  648, 680, 693, 702, 769, 822, 828,
489
  877, 890, 905, 909, 919, 921, 926,
490
  934, 938, 942, 946, 949, 964
491
};
492
493
long
494
  VerseKey::otcps[] = {
495
  0, 2, 3, 35, 61, 86,
496
  113, 146, 169, 194, 217, 247, 280,
497
  313, 334, 353, 378, 400, 417, 445,
498
  479, 518, 537, 572, 597, 618, 686,
499
  721, 757, 804, 827, 863, 907, 963,
500
  996, 1017, 1049, 1079, 1123, 1160, 1191,
501
  1215, 1239, 1297, 1336, 1371, 1406, 1435,
502
  1470, 1502, 1525, 1559, 1586, 1587, 1610,
503
  1636, 1659, 1691, 1715, 1746, 1772, 1805,
504
  1841, 1871, 1882, 1934, 1957, 1989, 2017,
505
  2054, 2071, 2099, 2125, 2152, 2189, 2221,
506
  2255, 2274, 2315, 2353, 2375, 2419, 2466,
507
  2505, 2524, 2560, 2584, 2620, 2656, 2695,
508
  2725, 2757, 2801, 2840, 2841, 2859, 2876,
509
  2894, 2930, 2950, 2981, 3020, 3057, 3082,
510
  3103, 3151, 3160, 3220, 3278, 3312, 3347,
511
  3364, 3395, 3433, 3461, 3486, 3520, 3565,
512
  3589, 3645, 3692, 3727, 3728, 3783, 3818,
513
  3870, 3920, 3952, 3980, 4070, 4097, 4121,
514
  4158, 4194, 4211, 4245, 4291, 4333, 4384,
515
  4398, 4431, 4454, 4484, 4520, 4562, 4593,
516
  4619, 4638, 4704, 4728, 4760, 4801, 4818,
517
  4873, 4916, 4973, 5003, 5038, 5052, 5053,
518
  5100, 5138, 5168, 5218, 5252, 5278, 5305,
519
  5326, 5356, 5379, 5412, 5445, 5464, 5494,
520
  5518, 5541, 5562, 5585, 5607, 5628, 5652,
521
  5683, 5709, 5732, 5752, 5772, 5799, 5868,
522
  5898, 5919, 5950, 6003, 6033, 6046, 6047,
523
  6066, 6091, 6109, 6134, 6150, 6178, 6205,
524
  6241, 6269, 6313, 6337, 6362, 6396, 6412,
525
  6476, 6487, 6506, 6535, 6587, 6597, 6643,
526
  6678, 6695, 6729, 6730, 6767, 6791, 6823,
527
  6848, 6880, 6921, 6947, 6983, 7041, 7060,
528
  7101, 7117, 7143, 7164, 7185, 7217, 7231,
529
  7263, 7294, 7343, 7369, 7370, 7393, 7417,
530
  7436, 7459, 7460, 7489, 7526, 7548, 7571,
531
  7584, 7606, 7624, 7647, 7675, 7703, 7719,
532
  7745, 7769, 7822, 7858, 7882, 7941, 7972,
533
  7997, 8040, 8056, 8080, 8110, 8133, 8178,
534
  8204, 8217, 8243, 8255, 8287, 8301, 8302,
535
  8330, 8363, 8403, 8416, 8442, 8466, 8496,
536
  8515, 8529, 8549, 8577, 8609, 8649, 8683,
537
  8721, 8745, 8775, 8809, 8853, 8880, 8903,
538
  8955, 8995, 9021, 9022, 9076, 9123, 9152,
539
  9187, 9206, 9245, 9297, 9364, 9393, 9423,
540
  9467, 9501, 9536, 9568, 9603, 9638, 9663,
541
  9710, 9732, 9776, 9806, 9860, 9861, 9880,
542
  9906, 9934, 9979, 10007, 10041, 10062, 10092,
543
  10130, 10167, 10189, 10211, 10237, 10267, 10306,
544
  10327, 10369, 10407, 10445, 10467, 10494, 10515,
545
  10553, 10574, 10605, 10606, 10661, 10717, 10742,
546
  10786, 10813, 10895, 10936, 10977, 11022, 11037,
547
  11085, 11126, 11141, 11159, 11189, 11233, 11261,
548
  11279, 11299, 11308, 11339, 11359, 11392, 11424,
549
  11456, 11489, 11524, 11546, 11577, 11578, 11596,
550
  11615, 11633, 11656, 11671, 11714, 11737, 11756,
551
  11788, 11808, 11832, 11849, 11872, 11888, 11908,
552
  11923, 11943, 11978, 11990, 12028, 12049, 12062,
553
  12084, 12112, 12141, 12165, 12175, 12203, 12240,
554
  12268, 12290, 12324, 12350, 12384, 12412, 12436,
555
  12437, 12449, 12520, 12534, 12559, 12577, 12600,
556
  12629, 12666, 12682, 12727, 12728, 12740, 12761,
557
  12794, 12818, 12838, 12858, 12932, 12951, 12990,
558
  13030, 13067, 13115, 13147, 13148, 13171, 13195,
559
  13211, 13229, 13244, 13259, 13270, 13288, 13321,
560
  13325, 13326, 13349, 13363, 13390, 13412, 13440,
561
  13471, 13493, 13516, 13552, 13575, 13596, 13622,
562
  13651, 13674, 13710, 13733, 13750, 13772, 13802,
563
  13832, 13867, 13898, 13916, 13942, 13949, 13964,
564
  13988, 14017, 14043, 14075, 14116, 14139, 14173,
565
  14211, 14228, 14262, 14287, 14329, 14360, 14385,
566
  14420, 14438, 14439, 14446, 14459, 14468, 14477,
567
  14490, 14501, 14519, 14529, 14550, 14569, 14577,
568
  14586, 14593, 14601, 14607, 14619, 14635, 14686,
569
  14701, 14711, 14725, 14757, 14764, 14775, 14798,
570
  14811, 14826, 14836, 14848, 14861, 14886, 14898,
571
  14921, 14944, 14973, 14986, 15027, 15050, 15064,
572
  15082, 15096, 15108, 15114, 15141, 15159, 15171,
573
  15181, 15196, 15217, 15241, 15261, 15271, 15278,
574
  15286, 15310, 15324, 15336, 15348, 15366, 15379,
575
  15388, 15401, 15413, 15424, 15438, 15459, 15467,
576
  15503, 15540, 15546, 15571, 15592, 15621, 15645,
577
  15656, 15669, 15690, 15763, 15777, 15797, 15814,
578
  15823, 15842, 15855, 15869, 15887, 15895, 15914,
579
  15967, 15985, 16002, 16018, 16024, 16048, 16060,
580
  16074, 16087, 16097, 16107, 16113, 16122, 16151,
581
  16174, 16210, 16256, 16305, 16349, 16363, 16395,
582
  16403, 16414, 16425, 16435, 16444, 16463, 16483,
583
  16486, 16516, 16693, 16701, 16710, 16720, 16725,
584
  16734, 16740, 16747, 16753, 16760, 16769, 16778,
585
  16782, 16801, 16805, 16809, 16831, 16858, 16868,
586
  16877, 16902, 16916, 16927, 16935, 16948, 16964,
587
  16986, 16997, 17018, 17033, 17043, 17050, 17051,
588
  17085, 17108, 17144, 17172, 17196, 17232, 17260,
589
  17297, 17316, 17349, 17381, 17410, 17436, 17472,
590
  17506, 17540, 17569, 17594, 17624, 17655, 17687,
591
  17717, 17753, 17788, 17817, 17846, 17874, 17903,
592
  17931, 17965, 17997, 17998, 18017, 18044, 18067,
593
  18084, 18105, 18118, 18148, 18166, 18185, 18206,
594
  18217, 18232, 18233, 18251, 18269, 18281, 18298,
595
  18315, 18329, 18343, 18358, 18359, 18391, 18414,
596
  18441, 18448, 18479, 18493, 18519, 18542, 18564,
597
  18599, 18616, 18623, 18646, 18679, 18689, 18704,
598
  18719, 18727, 18753, 18760, 18778, 18804, 18823,
599
  18847, 18860, 18882, 18896, 18926, 18951, 18985,
600
  18995, 19016, 19041, 19059, 19070, 19093, 19132,
601
  19155, 19164, 19196, 19226, 19252, 19281, 19310,
602
  19336, 19350, 19366, 19389, 19416, 19428, 19452,
603
  19468, 19481, 19499, 19513, 19526, 19548, 19563,
604
  19585, 19608, 19620, 19633, 19653, 19666, 19692,
605
  19717, 19718, 19738, 19776, 19802, 19834, 19866,
606
  19897, 19932, 19955, 19982, 20008, 20032, 20050,
607
  20078, 20101, 20123, 20145, 20173, 20197, 20213,
608
  20232, 20247, 20278, 20319, 20330, 20369, 20394,
609
  20417, 20435, 20468, 20493, 20534, 20579, 20606,
610
  20629, 20649, 20682, 20704, 20733, 20752, 20769,
611
  20788, 20811, 20825, 20856, 20862, 20891, 20899,
612
  20947, 20987, 21034, 21099, 21134, 21135, 21158,
613
  21181, 21248, 21271, 21294, 21295, 21324, 21335,
614
  21363, 21381, 21399, 21414, 21442, 21461, 21473,
615
  21496, 21522, 21551, 21575, 21599, 21608, 21672,
616
  21697, 21730, 21745, 21795, 21828, 21860, 21910,
617
  21938, 21956, 21978, 22015, 22042, 22064, 22091,
618
  22110, 22143, 22177, 22209, 22225, 22264, 22293,
619
  22317, 22347, 22397, 22424, 22445, 22473, 22505,
620
  22531, 22556, 22580, 22616, 22617, 22639, 22689,
621
  22720, 22758, 22790, 22819, 22848, 22876, 22904,
622
  22926, 22972, 22986, 22987, 22999, 23023, 23029,
623
  23049, 23065, 23077, 23094, 23109, 23127, 23143,
624
  23156, 23171, 23188, 23198, 23199, 23220, 23253,
625
  23275, 23276, 23292, 23309, 23325, 23339, 23367,
626
  23382, 23400, 23415, 23431, 23432, 23454, 23455,
627
  23473, 23484, 23495, 23507, 23508, 23525, 23539,
628
  23552, 23566, 23582, 23599, 23620, 23621, 23637,
629
  23651, 23671, 23672, 23690, 23711, 23731, 23732,
630
  23751, 23767, 23788, 23789, 23805, 23829, 23830,
631
  23852, 23866, 23877, 23892, 23904, 23920, 23935,
632
  23959, 23977, 23990, 24008, 24023, 24033, 24055,
633
  24056, 24071, 24089, 24108
634
};
635
636
long
637
  VerseKey::ntbks[] = {
638
  0, 1, 30, 47, 72, 94,
639
  123, 140, 157, 171, 178, 185, 190,
640
  195, 201, 205, 212, 217, 221, 223,
641
  237, 243, 249, 253, 259, 261, 263,
642
  265
643
};
644
645
long
646
  VerseKey::ntcps[] = {
647
  0, 2, 3, 29, 53, 71,
648
  97, 146, 181, 211, 246, 285, 328,
649
  359, 410, 469, 506, 546, 575, 603,
650
  639, 670, 705, 752, 799, 839, 891,
651
  938, 1014, 1081, 1102, 1103, 1149, 1178,
652
  1214, 1256, 1300, 1357, 1395, 1434, 1485,
653
  1538, 1572, 1617, 1655, 1728, 1776, 1797,
654
  1798, 1879, 1932, 1971, 2016, 2056, 2106,
655
  2157, 2214, 2277, 2320, 2375, 2435, 2471,
656
  2507, 2540, 2572, 2610, 2654, 2703, 2751,
657
  2790, 2862, 2919, 2973, 2974, 3026, 3052,
658
  3089, 3144, 3192, 3264, 3318, 3378, 3420,
659
  3463, 3521, 3572, 3611, 3643, 3671, 3705,
660
  3732, 3773, 3816, 3848, 3874, 3875, 3902,
661
  3950, 3977, 4015, 4058, 4074, 4135, 4176,
662
  4220, 4269, 4300, 4326, 4379, 4408, 4450,
663
  4491, 4526, 4555, 4597, 4636, 4677, 4708,
664
  4744, 4772, 4800, 4833, 4878, 4910, 4911,
665
  4944, 4974, 5006, 5032, 5054, 5078, 5104,
666
  5144, 5178, 5200, 5237, 5259, 5274, 5298,
667
  5332, 5360, 5361, 5393, 5410, 5434, 5456,
668
  5470, 5491, 5532, 5546, 5574, 5608, 5643,
669
  5675, 5689, 5730, 5789, 5814, 5815, 5840,
670
  5858, 5877, 5896, 5918, 5937, 5954, 5979,
671
  5995, 6014, 6048, 6070, 6085, 6086, 6111,
672
  6133, 6163, 6195, 6222, 6241, 6242, 6266,
673
  6289, 6311, 6344, 6378, 6403, 6404, 6435,
674
  6466, 6488, 6512, 6513, 6543, 6567, 6593,
675
  6612, 6613, 6624, 6645, 6659, 6678, 6707,
676
  6708, 6721, 6739, 6758, 6759, 6780, 6796,
677
  6813, 6830, 6856, 6878, 6879, 6898, 6925,
678
  6943, 6966, 6967, 6984, 7000, 7016, 7017,
679
  7043, 7044, 7059, 7078, 7098, 7115, 7130,
680
  7151, 7180, 7194, 7223, 7263, 7304, 7334,
681
  7360, 7361, 7389, 7416, 7435, 7453, 7474,
682
  7475, 7501, 7527, 7550, 7570, 7585, 7586,
683
  7608, 7631, 7650, 7651, 7662, 7692, 7717,
684
  7739, 7761, 7762, 7776, 7777, 7792, 7793,
685
  7819, 7820, 7841, 7871, 7894, 7906, 7921,
686
  7939, 7957, 7971, 7993, 8005, 8025, 8043,
687
  8062, 8083, 8092, 8114, 8133, 8158, 8180,
688
  8196, 8224
689
};
690
691
692
int
693
  VerseKey::offsize[2][2] =
694
  { {sizeof (VerseKey::otbks) / sizeof(long), sizeof (VerseKey::otcps) / sizeof(long)}
695
, {sizeof (VerseKey::ntbks) / sizeof(long), sizeof (VerseKey::ntcps) / sizeof(long)}
696
};
697