1 /*
2  *  "GEDKeeper", the personal genealogical database editor.
3  *  Copyright (C) 2009-2021 by Sergey V. Zhdanovskih.
4  *
5  *  This file is part of "GEDKeeper".
6  *
7  *  This program is free software: you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation, either version 3 of the License, or
10  *  (at your option) any later version.
11  *
12  *  This program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *  GNU General Public License for more details.
16  *
17  *  You should have received a copy of the GNU General Public License
18  *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 using System;
22 using System.Collections.Generic;
23 using System.IO;
24 using System.Text;
25 
26 using BSLib;
27 using GKCore.Interfaces;
28 
29 namespace GKCore
30 {
31     public enum LSID
32     {
33         /* 000 */ LSID_None,
34         /* 001 */ LSID_First,
35 
36         /* 001 */ LSID_MIFile = 1,
37         /* 002 */ LSID_MIEdit = 2,
38         /* 003 */ LSID_MIPedigree,
39         /* 004 */ LSID_MIService,
40         /* 005 */ LSID_MIWindow,
41         /* 006 */ LSID_MIHelp,
42         /* 007 */ LSID_MIFileNew,
43         /* 008 */ LSID_MIFileLoad,
44         /* 009 */ LSID_MIMRUFiles,
45         /* 010 */ LSID_MIFileSave,
46         /* 011 */ LSID_MIFileClose,
47         /* 012 */ LSID_MIFileProperties,
48         /* 013 */ LSID_MIExport,
49         /* 014 */ LSID_MIExportToFamilyBook,
50         /* 015 */ LSID_MIFileSaveAs,
51         /* 016 */ LSID_MIExportToExcelFile,
52         /* 017 */ LSID_MIExit,
53         /* 018 */ LSID_Import,
54         /* 019 */ LSID_Clear,
55         /* 020 */ LSID_MIRecordAdd,
56         /* 021 */ LSID_MIRecordEdit,
57         /* 022 */ LSID_MIRecordDelete,
58 
59         /* 023 */ LSID_Deprecated_023, // deprecated
60 
61         /* 024 */ LSID_MITreeAncestors,
62         /* 025 */ LSID_MITreeDescendants,
63         /* 026 */ LSID_MITreeBoth,
64         /* 027 */ LSID_MIPedigree_dAboville,
65         /* 028 */ LSID_MIPedigree_Konovalov,
66         /* 029 */ LSID_MIMap,
67         /* 030 */ LSID_MIStats,
68         /* 031 */ LSID_MIPedigreeAscend,
69 
70         /* 032 */ LSID_MINamesBook, // deprecated
71         /* 033 */ LSID_MICalendar, // deprecated
72         /* 034 */ LSID_MITimeLine, // deprecated
73 
74         /* 035 */ LSID_MIOrganizer,
75         /* 036 */ LSID_MIScripts,
76 
77         /* 037 */ LSID_Deprecated_037, // deprecated
78 
79         /* 038 */ LSID_MITreeTools = 38,
80         /* 039 */ LSID_MIFilter,
81         /* 040 */ LSID_MIOptions,
82         /* 041 */ LSID_MIWinCascade,
83         /* 042 */ LSID_MIWinHTile,
84         /* 043 */ LSID_MIWinVTile,
85         /* 044 */ LSID_MIWinMinimize,
86         /* 045 */ LSID_MIWinArrange,
87 
88         /* 046 */ LSID_MIGenResources, // deprecated
89         /* 047 */ LSID_MIKinshipTerms, // deprecated
90         /* 048 */ LSID_MIFAQ, // deprecated
91 
92         /* 049 */ LSID_MIContext,
93         /* 050 */ LSID_MIAbout,
94         /* 051 */ LSID_SBRecords,
95         /* 052 */ LSID_SBFiltered,
96 
97         /* 053 */ LSID_RPIndividuals,
98         /* 054 */ LSID_RPFamilies,
99         /* 055 */ LSID_RPNotes,
100         /* 056 */ LSID_RPMultimedia,
101         /* 057 */ LSID_RPSources,
102         /* 058 */ LSID_RPRepositories,
103         /* 059 */ LSID_RPGroups,
104         /* 060 */ LSID_RPResearches,
105         /* 061 */ LSID_RPTasks,
106         /* 062 */ LSID_RPCommunications,
107         /* 063 */ LSID_RPLocations,
108 
109         /* 064 */ LSID_UnkFemale,
110         /* 065 */ LSID_UnkMale,
111         /* 066 */ LSID_SexU,
112         /* 067 */ LSID_SexM,
113         /* 068 */ LSID_SexF,
114         /* 069 */ LSID_SexX,
115         /* 070 */ LSID_FileSaveQuery,
116         /* 071 */ LSID_ParentsQuery,
117         /* 072 */ LSID_PersonDeleteQuery,
118         /* 073 */ LSID_FamilyDeleteQuery,
119         /* 074 */ LSID_NoteDeleteQuery,
120         /* 075 */ LSID_SourceDeleteQuery,
121         /* 076 */ LSID_MediaDeleteQuery,
122         /* 077 */ LSID_RepositoryDeleteQuery,
123         /* 078 */ LSID_GroupDeleteQuery,
124         /* 079 */ LSID_ResearchDeleteQuery,
125         /* 080 */ LSID_TaskDeleteQuery,
126         /* 081 */ LSID_CommunicationDeleteQuery,
127         /* 082 */ LSID_LocationDeleteQuery,
128         /* 083 */ LSID_Address,
129         /* 084 */ LSID_Events,
130         /* 085 */ LSID_Surname,
131         /* 086 */ LSID_Name,
132         /* 087 */ LSID_Patronymic,
133         /* 088 */ LSID_Sex,
134         /* 089 */ LSID_Nickname,
135         /* 090 */ LSID_SurnamePrefix,
136         /* 091 */ LSID_NamePrefix,
137         /* 092 */ LSID_NameSuffix,
138         /* 093 */ LSID_Patriarch,
139         /* 094 */ LSID_Bookmark,
140         /* 095 */ LSID_Association,
141         /* 096 */ LSID_Relation,
142         /* 097 */ LSID_Person,
143 
144         /* 098 */ LSID_DlgAccept,
145         /* 099 */ LSID_DlgCancel,
146         /* 100 */ LSID_DlgClose,
147 
148         /* 101 */ LSID_DlgSelect,
149         /* 102 */ LSID_DlgAppend,
150         /* 103 */ LSID_WinPersonNew,
151         /* 104 */ LSID_WinPersonEdit,
152         /* 105 */ LSID_WinCheckSex,
153         /* 106 */ LSID_WinRecordSelect,
154         /* 107 */ LSID_WinSourceCitEdit,
155         /* 108 */ LSID_WinUserRefEdit,
156         /* 109 */ LSID_Note,
157         /* 110 */ LSID_Source,
158         /* 111 */ LSID_Page,
159         /* 112 */ LSID_Certainty,
160         /* 113 */ LSID_Reference,
161         /* 114 */ LSID_Type,
162         /* 115 */ LSID_Family,
163         /* 116 */ LSID_Husband,
164         /* 117 */ LSID_Wife,
165         /* 118 */ LSID_Status,
166         /* 119 */ LSID_Childs,
167         /* 120 */ LSID_DetachHusbandQuery,
168         /* 121 */ LSID_DetachWifeQuery,
169         /* 122 */ LSID_DetachChildQuery,
170         /* 123 */ LSID_BirthDate,
171         /* 124 */ LSID_DeathDate,
172         /* 125 */ LSID_Restriction,
173         /* 126 */ LSID_Title,
174         /* 127 */ LSID_Members,
175         /* 128 */ LSID_WinGroupEdit,
176         /* 129 */ LSID_DetachMemberQuery,
177         /* 130 */ LSID_MediaView,
178         /* 131 */ LSID_Stage,
179         /* 132 */ LSID_Telephone,
180         /* 133 */ LSID_Mail,
181         /* 134 */ LSID_WebSite,
182         /* 135 */ LSID_Repository,
183         /* 136 */ LSID_Progress,
184         /* 137 */ LSID_TimePassed,
185         /* 138 */ LSID_TimeRemain,
186         /* 139 */ LSID_TimeTotal,
187         /* 140 */ LSID_Date,
188         /* 141 */ LSID_Text,
189         /* 142 */ LSID_ShortTitle,
190         /* 143 */ LSID_Author,
191         /* 144 */ LSID_Publication,
192         /* 145 */ LSID_Common,
193         /* 146 */ LSID_DetachRepositoryQuery,
194         /* 147 */ LSID_StoreType,
195         /* 148 */ LSID_File,
196         /* 149 */ LSID_View,
197         /* 150 */ LSID_LogHint,
198         /* 151 */ LSID_Father,
199         /* 152 */ LSID_Mother,
200         /* 153 */ LSID_Parents,
201         /* 154 */ LSID_Spouses,
202         /* 155 */ LSID_Associations,
203         /* 156 */ LSID_UserRefs,
204         /* 157 */ LSID_Cal_Gregorian,
205         /* 158 */ LSID_Cal_Julian,
206         /* 159 */ LSID_Cal_Hebrew,
207         /* 160 */ LSID_Cal_Islamic,
208         /* 161 */ LSID_Cal_Persian,
209         /* 162 */ LSID_Cal_Indian,
210         /* 163 */ LSID_Cal_Bahai,
211         /* 164 */ LSID_Cal_French,
212         /* 165 */ LSID_Cal_Roman,
213         /* 166 */ LSID_Unknown,
214         /* 167 */ LSID_Summary,
215         /* 168 */ LSID_Other,
216         /* 169 */ LSID_Submission,
217         /* 170 */ LSID_Submitter,
218         /* 171 */ LSID_Location,
219         /* 172 */ LSID_Latitude,
220         /* 173 */ LSID_Longitude,
221         /* 174 */ LSID_Show,
222         /* 175 */ LSID_SearchCoords,
223         /* 176 */ LSID_Search,
224         /* 177 */ LSID_SelectCoords,
225         /* 178 */ LSID_SelectName,
226         /* 179 */ LSID_Priority,
227         /* 180 */ LSID_Percent,
228         /* 181 */ LSID_StartDate,
229         /* 182 */ LSID_StopDate,
230         /* 183 */ LSID_Goal,
231         /* 184 */ LSID_Theme,
232         /* 185 */ LSID_Corresponder,
233         /* 186 */ LSID_Group,
234         /* 187 */ LSID_DetachTaskQuery,
235         /* 188 */ LSID_DetachCommunicationQuery,
236         /* 189 */ LSID_DetachGroupQuery,
237         /* 190 */ LSID_WinResearchEdit,
238         /* 191 */ LSID_WinTaskEdit,
239         /* 192 */ LSID_WinCommunicationEdit,
240         /* 193 */ LSID_Error,
241         /* 194 */ LSID_LuaStartFailed,
242         /* 195 */ LSID_DateFormatInvalid,
243         /* 196 */ LSID_AdCountry,
244         /* 197 */ LSID_AdState,
245         /* 198 */ LSID_AdCity,
246         /* 199 */ LSID_AdPostalCode,
247         /* 200 */ LSID_Telephones,
248 
249         /* 201 */ LSID_EMails,
250         /* 202 */ LSID_WebSites,
251         /* 203 */ LSID_Value,
252         /* 204 */ LSID_Event,
253         /* 205 */ LSID_Place,
254         /* 206 */ LSID_Cause,
255         /* 207 */ LSID_Agency,
256         /* 208 */ LSID_PatFemale,
257         /* 209 */ LSID_PatMale,
258         /* 210 */ LSID_NotSelectedPerson,
259         /* 211 */ LSID_IsNotDefinedSex,
260         /* 212 */ LSID_IsNotFamilies, /* not used */
261         /* 213 */ LSID_AncestorsNumberIsInvalid,
262         /* 214 */ LSID_DescendantsNumberIsInvalid,
263         /* 215 */ LSID_GenerationsVisible,
264         /* 216 */ LSID_Unlimited,
265         /* 217 */ LSID_Spouse,
266         /* 218 */ LSID_MarriageDate,
267         /* 219 */ LSID_DetachFatherQuery,
268         /* 220 */ LSID_DetachMotherQuery,
269         /* 221 */ LSID_DetachSpouseQuery,
270         /* 222 */ LSID_DetachParentsQuery,
271         /* 223 */ LSID_TM_Both,
272         /* 224 */ LSID_TM_Ancestors,
273         /* 225 */ LSID_TM_Descendants,
274         /* 226 */ LSID_TM_TraceSelected,
275         /* 227 */ LSID_DoEdit,
276         /* 228 */ LSID_FamilyAdd,
277         /* 229 */ LSID_SpouseAdd,
278         /* 230 */ LSID_SonAdd,
279         /* 231 */ LSID_DaughterAdd,
280         /* 232 */ LSID_DoDelete,
281         /* 233 */ LSID_RebuildTree,
282         /* 234 */ LSID_RebuildKinships,
283         /* 235 */ LSID_Links,
284         /* 236 */ LSID_PlaceAndAttribute,
285         /* 237 */ LSID_LMarriage,
286         /* 238 */ LSID_LFamily,
287         /* 239 */ LSID_Namesakes,
288         /* 240 */ LSID_RemoveEventQuery,
289         /* 241 */ LSID_DetachNoteQuery,
290         /* 242 */ LSID_DetachMultimediaQuery,
291         /* 243 */ LSID_DetachSourceQuery,
292         /* 244 */ LSID_RemoveAssociationQuery,
293         /* 245 */ LSID_RemoveUserRefQuery,
294         /* 246 */ LSID_LoadGedComFailed,
295         /* 247 */ LSID_CheckGedComFailed,
296         /* 248 */ LSID_BirthDays,
297         /* 249 */ LSID_DaysRemained,
298         /* 250 */ LSID_Interface,
299         /* 251 */ LSID_Trees,
300         /* 252 */ LSID_Pedigrees,
301         /* 253 */ LSID_SaveCoding,
302         /* 254 */ LSID_Addresses,
303         /* 255 */ LSID_Mails,
304         /* 256 */ LSID_Webs,
305         /* 257 */ LSID_Internet,
306         /* 258 */ LSID_ProxyUse,
307         /* 259 */ LSID_ProxyServer,
308         /* 260 */ LSID_ProxyPort,
309         /* 261 */ LSID_ProxyLogin,
310         /* 262 */ LSID_Password,
311         /* 263 */ LSID_PasswordIsNotSpecified,
312         /* 264 */ LSID_StartupTips,
313         /* 265 */ LSID_Language,
314         /* 266 */ LSID_ListsAll,
315         /* 267 */ LSID_ListPersons,
316         /* 268 */ LSID_NamesFormat,
317         /* 269 */ LSID_NF1,
318         /* 270 */ LSID_NF2,
319         /* 271 */ LSID_NF3,
320         /* 272 */ LSID_DateFormat,
321         /* 273 */ LSID_PlacesWithAddress,
322         /* 274 */ LSID_HighlightUnparented,
323         /* 275 */ LSID_HighlightUnmarried,
324         /* 276 */ LSID_DefList,
325         /* 277 */ LSID_ViewTree,
326         /* 278 */ LSID_DiffLines,
327         /* 279 */ LSID_OnlyYears,
328         /* 280 */ LSID_Kinship,
329         /* 281 */ LSID_SignsVisible,
330         /* 282 */ LSID_TreeDecorative,
331         /* 283 */ LSID_PortraitsVisible,
332         /* 284 */ LSID_ChildlessExclude,
333         /* 285 */ LSID_Decor,
334         /* 286 */ LSID_Man,
335         /* 287 */ LSID_Woman,
336         /* 288 */ LSID_UnkSex,
337         /* 289 */ LSID_UnHusband,
338         /* 290 */ LSID_UnWife,
339         /* 291 */ LSID_Font,
340         /* 292 */ LSID_PedigreeGen,
341         /* 293 */ LSID_IncludeAttributes,
342         /* 294 */ LSID_IncludeNotes,
343         /* 295 */ LSID_IncludeSources,
344         /* 296 */ LSID_PedigreeFormat,
345         /* 297 */ LSID_PF1,
346         /* 298 */ LSID_PF2,
347         /* 299 */ LSID_RecordGoto,
348         /* 300 */ LSID_RecordMoveUp,
349 
350         /* 301 */ LSID_RecordMoveDown,
351         /* 302 */ LSID_FullName,
352         /* 303 */ LSID_BirthPlace,
353         /* 304 */ LSID_DeathPlace,
354         /* 305 */ LSID_Residence,
355         /* 306 */ LSID_Age,
356         /* 307 */ LSID_LifeExpectancy,
357         /* 308 */ LSID_DaysForBirth,
358         /* 309 */ LSID_Religion,
359         /* 310 */ LSID_Nationality,
360         /* 311 */ LSID_Education,
361         /* 312 */ LSID_Occupation,
362         /* 313 */ LSID_Caste,
363         /* 314 */ LSID_Mili,
364         /* 315 */ LSID_MiliInd,
365         /* 316 */ LSID_MiliDis,
366         /* 317 */ LSID_MiliRank,
367         /* 318 */ LSID_Changed,
368         /* 319 */ LSID_MarrRegistered,
369         /* 320 */ LSID_MarrNotRegistered,
370         /* 321 */ LSID_MarrDivorced,
371         /* 322 */ LSID_Birth,
372         /* 323 */ LSID_Adoption,
373         /* 324 */ LSID_Christening,
374         /* 325 */ LSID_Graduation,
375         /* 326 */ LSID_Retirement,
376         /* 327 */ LSID_Naturalization,
377         /* 328 */ LSID_Emigration,
378         /* 329 */ LSID_Immigration,
379         /* 330 */ LSID_Census,
380         /* 331 */ LSID_LastWill,
381         /* 332 */ LSID_ProbateOfWill,
382         /* 333 */ LSID_Death,
383         /* 334 */ LSID_Burial,
384         /* 335 */ LSID_Cremation,
385         /* 336 */ LSID_Fact,
386         /* 337 */ LSID_PhysicalDesc,
387         /* 338 */ LSID_NationalIDNumber,
388         /* 339 */ LSID_SocialSecurityNumber,
389         /* 340 */ LSID_ChildsCount,
390         /* 341 */ LSID_MarriagesCount,
391         /* 342 */ LSID_Property,
392         /* 343 */ LSID_NobilityTitle,
393         /* 344 */ LSID_Travel,
394         /* 345 */ LSID_Hobby,
395         /* 346 */ LSID_Award,
396         /* 347 */ LSID_RK_Unk,
397         /* 348 */ LSID_RK_Father,
398         /* 349 */ LSID_RK_Mother,
399         /* 350 */ LSID_RK_Husband,
400         /* 351 */ LSID_RK_Wife,
401         /* 352 */ LSID_RK_Son,
402         /* 353 */ LSID_RK_Daughter,
403         /* 354 */ LSID_RK_Grandfather,
404         /* 355 */ LSID_RK_Grandmother,
405         /* 356 */ LSID_RK_Grandson,
406         /* 357 */ LSID_RK_Granddaughter,
407         /* 358 */ LSID_RK_Brother,
408         /* 359 */ LSID_RK_Sister,
409         /* 360 */ LSID_RK_SonInLaw,
410         /* 361 */ LSID_RK_DaughterInLaw,
411         /* 362 */ LSID_RK_HusbandFather,
412         /* 363 */ LSID_RK_HusbandMother,
413         /* 364 */ LSID_RK_WifeFather,
414         /* 365 */ LSID_RK_WifeMother,
415         /* 366 */ LSID_RK_Uncle,
416         /* 367 */ LSID_RK_Aunt,
417         /* 368 */ LSID_RK_Nephew,
418         /* 369 */ LSID_RK_Niece,
419         /* 370 */ LSID_RK_CousinM,
420         /* 371 */ LSID_RK_CousinF,
421         /* 372 */ LSID_RK_BrotherInLaw_H,
422         /* 373 */ LSID_RK_SisterInLaw_H,
423         /* 374 */ LSID_RK_BrotherInLaw_W,
424         /* 375 */ LSID_RK_SisterInLaw_W,
425         /* 376 */ LSID_RK_GreatPrefix,
426         /* 377 */ LSID_RK_06,
427         /* 378 */ LSID_RK_07,
428         /* 379 */ LSID_RK_08,
429         /* 380 */ LSID_RK_09,
430         /* 381 */ LSID_TooMuchWidth,
431         /* 382 */ LSID_Backward,
432         /* 383 */ LSID_Forward,
433         /* 384 */ LSID_Prev,
434         /* 385 */ LSID_Next,
435         /* 386 */ LSID_YouKnowWhat,
436         /* 387 */ LSID_LoadingLocations,
437         /* 388 */ LSID_NotSelected,
438         /* 389 */ LSID_MapSelection,
439         /* 390 */ LSID_MapSelOnAll,
440         /* 391 */ LSID_MSBirthPlaces,
441         /* 392 */ LSID_MSDeathPlaces,
442         /* 393 */ LSID_MSResiPlace,
443         /* 394 */ LSID_MapSelOnSelected,
444         /* 395 */ LSID_SaveImage,
445 
446         /* 396 */ LSID_FormatUnsupported, // may be deprecated
447         /* 397 */ LSID_DataLoadError, // may be deprecated
448 
449         /* 398 */ LSID_DocPrint,
450         /* 399 */ LSID_DocPreview,
451         /* 400 */ LSID_Generation,
452 
453         /* 401 */ LSID_CondContains,
454         /* 402 */ LSID_CondNotContains,
455         /* 403 */ LSID_DK_0,
456         /* 404 */ LSID_DK_1,
457         /* 405 */ LSID_DK_2,
458         /* 406 */ LSID_DK_3,
459         /* 407 */ LSID_DK_4,
460         /* 408 */ LSID_DK_5,
461         /* 409 */ LSID_DK_6,
462         /* 410 */ LSID_DK_7,
463         /* 411 */ LSID_DK_8,
464         /* 412 */ LSID_DK_9,
465         /* 413 */ LSID_FEvt_1,
466         /* 414 */ LSID_FEvt_2,
467         /* 415 */ LSID_FEvt_3,
468         /* 416 */ LSID_FEvt_4,
469         /* 417 */ LSID_FEvt_5,
470         /* 418 */ LSID_FEvt_6,
471         /* 419 */ LSID_FEvt_7,
472         /* 420 */ LSID_FEvt_8,
473         /* 421 */ LSID_FEvt_9,
474         /* 422 */ LSID_STRef,
475         /* 423 */ LSID_STArc,
476         /* 424 */ LSID_STStg,
477         /* 425 */ LSID_DefaultValue,
478         /* 426 */ LSID_MT_02,
479         /* 427 */ LSID_MT_03,
480         /* 428 */ LSID_MT_04,
481         /* 429 */ LSID_MT_05,
482         /* 430 */ LSID_MT_06,
483         /* 431 */ LSID_MT_07,
484         /* 432 */ LSID_MT_08,
485         /* 433 */ LSID_MT_09,
486         /* 434 */ LSID_MT_10,
487         /* 435 */ LSID_MT_11,
488         /* 436 */ LSID_MT_12,
489         /* 437 */ LSID_MT_13,
490         /* 438 */ LSID_MT_14,
491         /* 439 */ LSID_MT_15,
492         /* 440 */ LSID_Prt_1,
493         /* 441 */ LSID_Prt_2,
494         /* 442 */ LSID_Prt_3,
495         /* 443 */ LSID_Prt_4,
496         /* 444 */ LSID_Prt_5,
497         /* 445 */ LSID_RStat_1,
498         /* 446 */ LSID_RStat_2,
499         /* 447 */ LSID_RStat_3,
500         /* 448 */ LSID_RStat_4,
501         /* 449 */ LSID_RStat_5,
502         /* 450 */ LSID_RStat_6,
503         /* 451 */ LSID_Com_1,
504         /* 452 */ LSID_Com_2,
505         /* 453 */ LSID_Com_3,
506         /* 454 */ LSID_Com_4,
507         /* 455 */ LSID_Com_5,
508         /* 456 */ LSID_Com_6,
509         /* 457 */ LSID_CD_1,
510         /* 458 */ LSID_CD_2,
511         /* 459 */ LSID_G_1,
512         /* 460 */ LSID_G_2,
513         /* 461 */ LSID_G_3,
514         /* 462 */ LSID_G_4,
515         /* 463 */ LSID_Cert_1,
516         /* 464 */ LSID_Cert_2,
517         /* 465 */ LSID_Cert_3,
518         /* 466 */ LSID_Cert_4,
519         /* 467 */ LSID_Research,
520         /* 468 */ LSID_Task,
521         /* 469 */ LSID_Communication,
522         /* 470 */ LSID_IDsCorrect,
523         /* 471 */ LSID_FormatCheck,
524         /* 472 */ LSID_IDsCorrectNeed, // obsolete
525         /* 473 */ LSID_MainBaseSize,
526         /* 474 */ LSID_SyncFin,
527         /* 475 */ LSID_PatSearch,
528         /* 476 */ LSID_LinksSearch,
529         /* 477 */ LSID_MediaFileNotLoaded,
530         /* 478 */ LSID_Scale,
531         /* 479 */ LSID_GEDCOMFilter,
532         /* 480 */ LSID_AllFilter,
533         /* 481 */ LSID_ImagesFilter,
534         /* 482 */ LSID_ScriptsFilter,
535         /* 483 */ LSID_TreeImagesFilter,
536         /* 484 */ LSID_DeathCauses,
537         /* 485 */ LSID_ExpPedigree,
538         /* 486 */ LSID_Parameter,
539         /* 487 */ LSID_Total,
540         /* 488 */ LSID_ManSum,
541         /* 489 */ LSID_WomanSum,
542         /* 490 */ LSID_FieldsFilter,
543 
544         /* 491 */ LSID_Year,
545         /* 492 */ LSID_PDFFilter,
546         /* 493 */ LSID_RTFFilter,
547         /* 494 */ LSID_HTMLFilter,
548         /* 495 */ LSID_FileBackup,
549         /* 496 */ LSID_BackupOnlyPrev,
550         /* 497 */ LSID_BranchCut,
551         /* 498 */ LSID_Not,
552         /* 499 */ LSID_BCut_Years,
553         /* 500 */ LSID_BCut_Persons,
554         /* 501 */ LSID_SrcAll,
555         /* 502 */ LSID_SrcNot,
556         /* 503 */ LSID_SrcAny,
557 
558         /* 504 */ LSID_MasterBase,
559         /* 505 */ LSID_OtherBase,
560         /* 506 */ LSID_CurrentBase,
561         /* 507 */ LSID_IncludedSourceFilter,
562         /* 508 */ LSID_IncludedGroupFilter,
563         /* 509 */ LSID_DuplicatesSearch,
564         /* 510 */ LSID_ValueInvalid,
565         /* 511 */ LSID_Operation,
566         /* 512 */ LSID_ToolOp_1,
567         /* 513 */ LSID_ToolOp_2,
568         /* 514 */ LSID_ToolOp_3,
569         /* 515 */ LSID_ToolOp_4,
570         /* 516 */ LSID_SearchUnlinkedNamesakes,
571         /* 517 */ LSID_ToolOp_6,
572         /* 518 */ LSID_ToolOp_7,
573         /* 519 */ LSID_ToolOp_8,
574         /* 520 */ LSID_ToolOp_9,
575         /* 521 */ LSID_SearchMatches,
576         /* 522 */ LSID_CheckFamiliesConnection,
577         /* 523 */ LSID_All,
578         /* 524 */ LSID_OnlyAlive,
579         /* 525 */ LSID_OnlyDied,
580         /* 526 */ LSID_AliveBefore,
581         /* 527 */ LSID_OnlyMans,
582         /* 528 */ LSID_OnlyWomans,
583         /* 529 */ LSID_NameMask,
584         /* 530 */ LSID_PlaceMask,
585         /* 531 */ LSID_EventMask,
586         /* 532 */ LSID_OnlyPatriarchs,
587         /* 533 */ LSID_DateInvalid,
588         /* 534 */ LSID_People,
589         /* 535 */ LSID_Years,
590         /* 536 */ LSID_Decennial,
591         /* 537 */ LSID_HowBirthes,
592         /* 538 */ LSID_HowDeads,
593         /* 539 */ LSID_Living,
594         /* 540 */ LSID_Deads,
595         /* 541 */ LSID_AvgAge,
596         /* 542 */ LSID_AvgLife,
597         /* 543 */ LSID_AvgChilds,
598         /* 544 */ LSID_AvgBorn,
599         /* 545 */ LSID_AvgMarriagesCount,
600         /* 546 */ LSID_AvgMarriagesAge,
601         /* 547 */ LSID_AncestorsCount,
602         /* 548 */ LSID_DescendantsCount,
603         /* 549 */ LSID_GenerationsCount,
604         /* 550 */ LSID_BirthYears,
605         /* 551 */ LSID_BirthYearsDec,
606         /* 552 */ LSID_DeathYears,
607         /* 553 */ LSID_DeathYearsDec,
608         /* 554 */ LSID_DistrChilds,
609         /* 555 */ LSID_AgeFirstborn,
610         /* 556 */ LSID_MarriagesAge,
611         /* 557 */ LSID_DiffSpouses,
612         /* 558 */ LSID_SelAll,
613         /* 559 */ LSID_SelFamily,
614         /* 560 */ LSID_SelAncestors,
615         /* 561 */ LSID_SelDescendants,
616         /* 562 */ LSID_RecMerge,
617         /* 563 */ LSID_RM_Search,
618         /* 564 */ LSID_RM_Skip,
619         /* 565 */ LSID_RM_Records,
620         /* 566 */ LSID_RM_SearchPersons,
621 
622         /* 567 */ LSID_RM_DirectMatching, // deprecated
623         /* 568 */ LSID_RM_IndistinctMatching,
624         /* 569 */ LSID_RM_OnlyNP, // deprecated
625 
626         /* 570 */ LSID_RM_BirthYear,
627         /* 571 */ LSID_RM_NameAccuracy,
628         /* 572 */ LSID_RM_YearInaccuracy,
629         /* 573 */ LSID_Repair,
630         /* 574 */ LSID_MinGenerations,
631         /* 575 */ LSID_SetPatFlag,
632         /* 576 */ LSID_InsertIntoBook,
633         /* 577 */ LSID_SimilarSurnames,
634         /* 578 */ LSID_SimilarNames,
635         /* 579 */ LSID_RecsDeleted,
636         /* 580 */ LSID_Record,
637         /* 581 */ LSID_Problem,
638         /* 582 */ LSID_Solve,
639         /* 583 */ LSID_PersonLonglived,
640         /* 584 */ LSID_PersonSexless,
641         /* 585 */ LSID_LiveYearsInvalid,
642         /* 586 */ LSID_StrangeSpouse,
643         /* 587 */ LSID_StrangeParent,
644         /* 588 */ LSID_Descendants,
645         /* 589 */ LSID_Generations,
646         /* 590 */ LSID_LinksCount,
647         /* 591 */ LSID_PlacesPrepare,
648         /* 592 */ LSID_PlaceAlreadyInBook,
649         /* 593 */ LSID_DNAMarkers,
650         /* 594 */ LSID_AAF_1,
651         /* 595 */ LSID_AAF_2,
652         /* 596 */ LSID_EmptyFamily,
653         /* 597 */ LSID_BackupEachRevision,
654         /* 598 */ LSID_Loading,
655         /* 599 */ LSID_FileSaveError,
656         /* 600 */ LSID_FillColor,
657 
658         /* 601 */ LSID_FillImage,
659         /* 602 */ LSID_TreeIndividualsCount,
660         /* 603 */ LSID_LogView,
661         /* 604 */ LSID_AncestorsCircle,
662         /* 605 */ LSID_Circle,
663         /* 606 */ LSID_TextColor,
664         /* 607 */ LSID_BackColor,
665         /* 608 */ LSID_LinesColor,
666         /* 609 */ LSID_RestrictNone,
667         /* 610 */ LSID_RestrictLocked,
668         /* 611 */ LSID_RestrictConfidential,
669         /* 612 */ LSID_RestrictPrivacy,
670         /* 613 */ LSID_LogSend,
671         /* 614 */ LSID_Charts,
672         /* 615 */ LSID_SizeToFit,
673         /* 616 */ LSID_ZoomIn,
674         /* 617 */ LSID_ZoomOut,
675         /* 618 */ LSID_SetIsDead,
676         /* 619 */ LSID_DefineSex,
677         /* 620 */ LSID_Plugins,
678         /* 621 */ LSID_TM_TraceKinships,
679         /* 622 */ LSID_NoMatchesFound,
680         /* 623 */ LSID_FindPrevious,
681         /* 624 */ LSID_FindNext,
682         /* 625 */ LSID_CertaintyIndex,
683         /* 626 */ LSID_BirthByMonth,
684         /* 627 */ LSID_Month,
685         /* 628 */ LSID_DlgReset,
686         /* 629 */ LSID_Field,
687         /* 630 */ LSID_Condition,
688         /* 631 */ LSID_DoNotSetSource,
689         /* 632 */ LSID_Slideshow,
690         /* 633 */ LSID_PrevRec,
691         /* 634 */ LSID_NextRec,
692         /* 635 */ LSID_GenerationFailed,
693         /* 636 */ LSID_Start,
694         /* 637 */ LSID_Stop,
695         /* 638 */ LSID_Demography,
696         /* 639 */ LSID_Names,
697         /* 640 */ LSID_NTAka,
698         /* 641 */ LSID_NTBirth,
699         /* 642 */ LSID_NTImmigrant,
700         /* 643 */ LSID_NTMaiden,
701         /* 644 */ LSID_NTMarried,
702         /* 645 */ LSID_RemoveNameQuery,
703         /* 646 */ LSID_RemoveNameFailed,
704         /* 647 */ LSID_Quote,
705         /* 648 */ LSID_BookmarkMerged,
706         /* 649 */ LSID_ShowDatesCalendar,
707         /* 650 */ LSID_RecordDuplicate,
708         /* 651 */ LSID_DuplicateWarning,
709         /* 652 */ LSID_ShowDatesSigns,
710         /* 653 */ LSID_FileNewTip,
711         /* 654 */ LSID_FileLoadTip,
712         /* 655 */ LSID_FileSaveTip,
713         /* 656 */ LSID_RecordAddTip,
714         /* 657 */ LSID_RecordEditTip,
715         /* 658 */ LSID_RecordDeleteTip,
716         /* 659 */ LSID_FilterTip,
717         /* 660 */ LSID_TreeAncestorsTip,
718         /* 661 */ LSID_TreeDescendantsTip,
719         /* 662 */ LSID_TreeBothTip,
720         /* 663 */ LSID_PedigreeTip,
721         /* 664 */ LSID_Pedigree_dAbovilleTip,
722         /* 665 */ LSID_Pedigree_KonovalovTip,
723         /* 666 */ LSID_StatsTip,
724         /* 667 */ LSID_ImageSaveTip,
725         /* 668 */ LSID_ModesTip,
726         /* 669 */ LSID_NewScriptTip,
727         /* 670 */ LSID_LoadScriptTip,
728         /* 671 */ LSID_SaveScriptTip,
729         /* 672 */ LSID_RunScriptTip,
730         /* 673 */ LSID_PortraitAddTip,
731         /* 674 */ LSID_PortraitDeleteTip,
732         /* 675 */ LSID_ParentsAddTip,
733         /* 676 */ LSID_ParentsEditTip,
734         /* 677 */ LSID_ParentsDeleteTip,
735         /* 678 */ LSID_FatherAddTip,
736         /* 679 */ LSID_FatherDeleteTip,
737         /* 680 */ LSID_FatherSelTip,
738         /* 681 */ LSID_MotherAddTip,
739         /* 682 */ LSID_MotherDeleteTip,
740         /* 683 */ LSID_MotherSelTip,
741         /* 684 */ LSID_NameCopyTip,
742         /* 685 */ LSID_HusbandAddTip,
743         /* 686 */ LSID_HusbandDeleteTip,
744         /* 687 */ LSID_HusbandSelTip,
745         /* 688 */ LSID_WifeAddTip,
746         /* 689 */ LSID_WifeDeleteTip,
747         /* 690 */ LSID_WifeSelTip,
748         /* 691 */ LSID_PersonAttachTip,
749         /* 692 */ LSID_PlaceAddTip,
750         /* 693 */ LSID_PlaceDeleteTip,
751         /* 694 */ LSID_ShowOnMapTip,
752         /* 695 */ LSID_SourceAddTip,
753         /* 696 */ LSID_GoalSelectTip,
754         /* 697 */ LSID_NewDBFileNeedToSave,
755         /* 698 */ LSID_FileWithSameNameAlreadyExists,
756         /* 699 */ LSID_ItsNotGEDSECCompatibleFile,
757         /* 700 */ LSID_ThisPersonHasSeveralFamilies,
758 
759         /* 701 */ LSID_UploadErrorInExcel,
760         /* 702 */ LSID_PersonsFilter,
761         /* 703 */ LSID_LinesVisible,
762         /* 704 */ LSID_MatchType,
763         /* 705 */ LSID_MatchInternal,
764         /* 706 */ LSID_MathExternal,
765         /* 707 */ LSID_Analyze,
766         /* 708 */ LSID_Match,
767         /* 709 */ LSID_WithoutDates,
768         /* 710 */ LSID_PatriarchsDiagram,
769         /* 711 */ LSID_FamilyBook,
770         /* 712 */ LSID_TableOfContents,
771         /* 713 */ LSID_PersonalRecords,
772         /* 714 */ LSID_Indexes,
773         /* 715 */ LSID_NotDeterminedPersonSex,
774         /* 716 */ LSID_Autosave,
775         /* 717 */ LSID_Minutes,
776         /* 718 */ LSID_IncludeGenerations,
777         /* 719 */ LSID_HideEmptySegments,
778         /* 720 */ LSID_DescendantsCircle,
779         /* 721 */ LSID_PortraitSelect,
780         /* 722 */ LSID_RelationshipCalculator,
781         /* 723 */ LSID_RelationshipMask,
782         /* 724 */ LSID_BirthdayToday,
783         /* 725 */ LSID_BirthdayTomorrow,
784         /* 726 */ LSID_BloodGroup,
785         /* 727 */ LSID_HairColor,
786         /* 728 */ LSID_EyesColor,
787         /* 729 */ LSID_MDNAHaplogroup,
788         /* 730 */ LSID_YDNAHaplogroup,
789         /* 731 */ LSID_RecordIsLocked,
790         /* 732 */ LSID_MaidenSurname,
791         /* 733 */ LSID_MarriedSurname,
792         /* 734 */ LSID_AdditionalNames, // TODO: better text
793         /* 735 */ LSID_ExtendedWomanSurnames,
794         /* 736 */ LSID_WSF_Maiden_Married,
795         /* 737 */ LSID_WSF_Married_Maiden,
796         /* 738 */ LSID_WSF_Maiden,
797         /* 739 */ LSID_WSF_Married,
798         /* 740 */ LSID_HusbSign,
799         /* 741 */ LSID_WifeSign,
800         /* 742 */ LSID_Geocoder,
801         /* 743 */ LSID_FatherAdd,
802         /* 744 */ LSID_MotherAdd,
803         /* 745 */ LSID_DefaultPortraits,
804         /* 746 */ LSID_RemovableMediaWarningMessage,
805         /* 747 */ LSID_RemovableMediaWarningOption,
806         /* 748 */ LSID_LoadRecentFiles,
807         /* 749 */ LSID_HolidayToday,
808         /* 750 */ LSID_HolidayTomorrow,
809         /* 751 */ LSID_DaysRemainedBeforeHoliday,
810         /* 752 */ LSID_Holidays,
811         /* 753 */ LSID_EmbeddedMediaPlayer,
812         /* 754 */ LSID_AllowMediaDirectReferences,
813         /* 755 */ LSID_CopyingFile,
814         /* 756 */ LSID_Actions,
815         /* 757 */ LSID_SelectAndCopy,
816         /* 758 */ LSID_NumberSym,
817         /* 759 */ LSID_Reports,
818         /* 760 */ LSID_InvertedTree,
819         /* 761 */ LSID_MarriagesDates,
820         /* 762 */ LSID_AutoCheckUpdates,
821         /* 763 */ LSID_ArcText,
822         /* 764 */ LSID_TreesAlbum,
823         /* 765 */ LSID_ShowPlaces,
824         /* 766 */ LSID_HideUnknownSpouses,
825         /* 767 */ LSID_Spacings,
826         /* 768 */ LSID_Margins,
827         /* 769 */ LSID_BranchDist,
828         /* 770 */ LSID_GenDist,
829         /* 771 */ LSID_SpouseDist,
830         /* 772 */ LSID_ImageSize,
831         /* 773 */ LSID_DetectedDataLoop,
832         /* 774 */ LSID_FatherAsChild,
833         /* 775 */ LSID_MotherAsChild,
834         /* 776 */ LSID_DuplicateChildrenInFamily,
835         /* 777 */ LSID_SelectColor,
836         /* 778 */ LSID_AutoSortChildren,
837         /* 779 */ LSID_AutoSortSpouses,
838         /* 780 */ LSID_CheckTreeSize,
839         /* 781 */ LSID_PLT_Adopted,
840         /* 782 */ LSID_PLT_Birth,
841         /* 783 */ LSID_PLT_Foster,
842         /* 784 */ LSID_CharsetDetection,
843         /* 785 */ LSID_LinkageType,
844         /* 786 */ LSID_HeWasBorn,
845         /* 787 */ LSID_SheWasBorn,
846         /* 788 */ LSID_GedMLFilter,
847         /* 789 */ LSID_ChildWithoutParents,
848         /* 790 */ LSID_FamilyRecordWithoutFamily,
849         /* 791 */ LSID_MediaFileDeleteQuery,
850         /* 792 */ LSID_StgNotFound,
851         /* 793 */ LSID_FileNotFound,
852         /* 794 */ LSID_AllowMediaRelativeReferences,
853         /* 795 */ LSID_MediaStoreDefault,
854         /* 796 */ LSID_AllowDeleteMediaFileFromStgArc,
855         /* 797 */ LSID_AllowDeleteMediaFileFromRefs,
856         /* 798 */ LSID_DeleteMediaFileWithoutConfirm,
857         /* 799 */ LSID_MediaRecordWithoutFiles,
858         /* 800 */ LSID_ArcNotFound,
859 
860         /* 801 */ LSID_RI_GeorgeKnight = 801,
861         /* 802 */ LSID_USSR_WWII_Combatant,
862         /* 803 */ LSID_USSR_WWII_KilledInBattle,
863         /* 804 */ LSID_USSR_WWII_WorkerInRear,
864         /* 805 */ LSID_USSR_Repressed,
865         /* 806 */ LSID_Religion_Islam,
866         /* 807 */ LSID_Religion_Catholicism,
867         /* 808 */ LSID_Religion_Orthodoxy,
868         /* 809 */ LSID_Religion_TheOldBelievers,
869 
870         /* 810 */ LSID_STRel,
871         /* 811 */ LSID_BackupRevisionsMaxCount,
872         /* 812 */ LSID_FirstCapitalLetterInNames,
873         /* 813 */ LSID_DefaultDepth,
874         /* 814 */ LSID_WarningOfDialogUnsavedChanges,
875         /* 815 */ LSID_WarnForClosingDialog,
876         /* 816 */ LSID_DottedLinesOfAdoptedChildren,
877         /* 817 */ LSID_GoToPersonRecord,
878         /* 818 */ LSID_STWeb,
879         /* 819 */ LSID_SeparateDatesAndPlacesLines,
880         /* 820 */ LSID_Details,
881         /* 821 */ LSID_CopyXRef,
882         /* 822 */ LSID_BoldNames,
883 
884         /* 823 */ LSID_Baptism,
885         /* 824 */ LSID_BarMitzvah,
886         /* 825 */ LSID_BatMitzvah,
887         /* 826 */ LSID_Blessing,
888         /* 827 */ LSID_AdultChristening,
889         /* 828 */ LSID_Confirmation,
890         /* 829 */ LSID_FirstCommunion,
891         /* 830 */ LSID_Ordination,
892         /* 831 */ LSID_GeoSearchCountryRestriction,
893         /* 832 */ LSID_SeparateDepth,
894         /* 833 */ LSID_Ancestors,
895         /* 834 */ LSID_MatchesNotFound,
896         /* 835 */ LSID_ShortKinshipForm,
897         /* 836 */ LSID_SurnameFirstInOrder,
898         /* 837 */ LSID_Borders,
899         /* 838 */ LSID_UpdateToLatestVersion,
900         /* 839 */ LSID_Providers,
901         /* 840 */ LSID_Coordinates,
902         /* 841 */ LSID_LoadPlaces,
903 
904         /* 000 */ LSID_Last = LSID_LoadPlaces
905     }
906 
907 
908     public static class LangMan
909     {
910         public const int LS_DEF_CODE = 1033;
911         public const string LS_DEF_SIGN = "enu";
912         public const string LS_DEF_NAME = "English";
913 
914         private static readonly string[] LSDefList = new string[]
915         {
916             /* 001 */ "File",
917             /* 002 */ "Edit",
918             /* 003 */ "Pedigree",
919             /* 004 */ "Service",
920             /* 005 */ "&Windows",
921             /* 006 */ "Help",
922             /* 007 */ "New",
923             /* 008 */ "Open...",
924             /* 009 */ "Reopen",
925             /* 010 */ "Save",
926             /* 011 */ "Close",
927             /* 012 */ "Properties",
928             /* 013 */ "Export",
929             /* 014 */ "Book of families...",
930             /* 015 */ "Save As...",
931             /* 016 */ "Export to Excel workbook...",
932             /* 017 */ "Exit",
933             /* 018 */ "Import",
934             /* 019 */ "Clear",
935             /* 020 */ "Add record",
936             /* 021 */ "Edit record",
937             /* 022 */ "Delete record",
938             /* 023 */ "<?>",
939             /* 024 */ "Ancestors tree",
940             /* 025 */ "Descendants tree",
941             /* 026 */ "Complete tree",
942             /* 027 */ "d'Aboville descending pedigree",
943             /* 028 */ "Konovalov descending pedigree",
944             /* 029 */ "Maps",
945             /* 030 */ "Statistics",
946             /* 031 */ "Ascending pedigree",
947             /* 032 */ "<?>",
948             /* 033 */ "<?>",
949             /* 034 */ "<?>",
950             /* 035 */ "Organizer",
951             /* 036 */ "Scripts...",
952             /* 037 */ "<?>",
953             /* 038 */ "Tools...",
954             /* 039 */ "Filter",
955             /* 040 */ "Options",
956             /* 041 */ "&Cascade",
957             /* 042 */ "&Horizontal tile",
958             /* 043 */ "&Vertical tile",
959             /* 044 */ "&Minimize all",
960             /* 045 */ "&Rearrange all",
961             /* 046 */ "<?>",
962             /* 047 */ "<?>",
963             /* 048 */ "<?>",
964             /* 049 */ "Content",
965             /* 050 */ "About",
966             /* 051 */ "Records",
967             /* 052 */ "filtered",
968             /* 053 */ "Individuals",
969             /* 054 */ "Families",
970             /* 055 */ "Notes",
971             /* 056 */ "Multimedia",
972             /* 057 */ "Sources",
973             /* 058 */ "Repositories",
974             /* 059 */ "Groups",
975             /* 060 */ "Researches",
976             /* 061 */ "Tasks",
977             /* 062 */ "Communications",
978             /* 063 */ "Locations",
979             /* 064 */ "unknown",
980             /* 065 */ "unknown",
981             /* 066 */ "?",
982             /* 067 */ "Male",
983             /* 068 */ "Female",
984             /* 069 */ "Intersex",
985             /* 070 */ "Do you want to save changes to the modified file?",
986             /* 071 */ "The specified parent has an existed family \"{0}\". Do you want to add the child to that family?",
987             /* 072 */ "Are you sure you want to remove individual \"{0}\"?",
988             /* 073 */ "Are you sure you want to remove family \"{0}\"?",
989             /* 074 */ "Are you sure you want to remove note \"{0}\"?",
990             /* 075 */ "Are you sure you want to remove source \"{0}\"?",
991             /* 076 */ "Are you sure you want to remove multimedia \"{0}\"?",
992             /* 077 */ "Are you sure you want to remove repository \"{0}\"?",
993             /* 078 */ "Are you sure you want to remove group \"{0}\"?",
994             /* 079 */ "Are you sure you want to remove research \"{0}\"?",
995             /* 080 */ "Are you sure you want to remove task \"{0}\"?",
996             /* 081 */ "Are you sure you want to remove communication \"{0}\"?",
997             /* 082 */ "Are you sure you want to remove location \"{0}\"?",
998             /* 083 */ "Address",
999             /* 084 */ "Events",
1000             /* 085 */ "Surname",
1001             /* 086 */ "Name",
1002             /* 087 */ "Patronymic",
1003             /* 088 */ "Sex",
1004             /* 089 */ "Nickname",
1005             /* 090 */ "Last name prefix",
1006             /* 091 */ "Name prefix",
1007             /* 092 */ "Name suffix",
1008             /* 093 */ "Patriarch",
1009             /* 094 */ "Bookmark",
1010             /* 095 */ "Association",
1011             /* 096 */ "Relation",
1012             /* 097 */ "Individual",
1013             /* 098 */ "Apply",
1014             /* 099 */ "Cancel",
1015             /* 100 */ "Close",
1016             /* 101 */ "Select",
1017             /* 102 */ "Add new",
1018             /* 103 */ "New individual",
1019             /* 104 */ "Edit individual",
1020             /* 105 */ "Checking of sex",
1021             /* 106 */ "Selecting a record",
1022             /* 107 */ "Source citation",
1023             /* 108 */ "User reference",
1024             /* 109 */ "Note",
1025             /* 110 */ "Source",
1026             /* 111 */ "Page",
1027             /* 112 */ "Certainty",
1028             /* 113 */ "Reference",
1029             /* 114 */ "Type",
1030             /* 115 */ "Family",
1031             /* 116 */ "Husband",
1032             /* 117 */ "Wife",
1033             /* 118 */ "Status",
1034             /* 119 */ "Children",
1035             /* 120 */ "Are you sure you want to detach link to husband?",
1036             /* 121 */ "Are you sure you want to detach link to wife?",
1037             /* 122 */ "Are you sure you want to detach link to child?",
1038             /* 123 */ "Birth date",
1039             /* 124 */ "Death date",
1040             /* 125 */ "Security restriction",
1041             /* 126 */ "Title",
1042             /* 127 */ "Members",
1043             /* 128 */ "Edit group",
1044             /* 129 */ "Are you sure you want to detach link to member?",
1045             /* 130 */ "view",
1046             /* 131 */ "Stage",
1047             /* 132 */ "Telephone number",
1048             /* 133 */ "email",
1049             /* 134 */ "Web site",
1050             /* 135 */ "Repository",
1051             /* 136 */ "Progress",
1052             /* 137 */ "Elapsed time",
1053             /* 138 */ "Remaining time",
1054             /* 139 */ "Total time",
1055             /* 140 */ "Date",
1056             /* 141 */ "Text",
1057             /* 142 */ "Short title",
1058             /* 143 */ "Author",
1059             /* 144 */ "Published",
1060             /* 145 */ "Common",
1061             /* 146 */ "Are you sure you want to detach link to repository?",
1062             /* 147 */ "Store type",
1063             /* 148 */ "File",
1064             /* 149 */ "View",
1065             /* 150 */ "Fragment {0}: {1} individuals",
1066             /* 151 */ "Father",
1067             /* 152 */ "Mother",
1068             /* 153 */ "Parents",
1069             /* 154 */ "Spouses",
1070             /* 155 */ "Associations",
1071             /* 156 */ "User references",
1072             /* 157 */ "Gregorian",
1073             /* 158 */ "Julian",
1074             /* 159 */ "Hebrew",
1075             /* 160 */ "Islamic",
1076             /* 161 */ "Persian",
1077             /* 162 */ "Indian",
1078             /* 163 */ "Bahai",
1079             /* 164 */ "French",
1080             /* 165 */ "Roman",
1081             /* 166 */ "Unknown",
1082             /* 167 */ "Summary",
1083             /* 168 */ "Other",
1084             /* 169 */ "Submission",
1085             /* 170 */ "Submitter",
1086             /* 171 */ "Location",
1087             /* 172 */ "Latitude",
1088             /* 173 */ "Longitude",
1089             /* 174 */ "Show",
1090             /* 175 */ "Search coords",
1091             /* 176 */ "Search",
1092             /* 177 */ "Select coords",
1093             /* 178 */ "Select name",
1094             /* 179 */ "Priority",
1095             /* 180 */ "Percent",
1096             /* 181 */ "Started",
1097             /* 182 */ "Stopped",
1098             /* 183 */ "Goal",
1099             /* 184 */ "Theme",
1100             /* 185 */ "Corresponder",
1101             /* 186 */ "Group",
1102             /* 187 */ "Are you sure you want to detach link to task?",
1103             /* 188 */ "Are you sure you want to detach link to communication?",
1104             /* 189 */ "Are you sure you want to detach link to group?",
1105             /* 190 */ "Edit research",
1106             /* 191 */ "Edit task",
1107             /* 192 */ "Edit communication",
1108             /* 193 */ "Error",
1109             /* 194 */ "Lua start failed!",
1110             /* 195 */ "Date format is invalid",
1111             /* 196 */ "Country",
1112             /* 197 */ "State",
1113             /* 198 */ "City",
1114             /* 199 */ "Postal code",
1115             /* 200 */ "Telephone numbers",
1116             /* 201 */ "Emails",
1117             /* 202 */ "Web sites",
1118             /* 203 */ "Value",
1119             /* 204 */ "Event",
1120             /* 205 */ "Place",
1121             /* 206 */ "Cause",
1122             /* 207 */ "Agency",
1123             /* 208 */ "Female",
1124             /* 209 */ "Male",
1125             /* 210 */ "An individual record is not selected.",
1126             /* 211 */ "This individual has no sex defined.",
1127             /* 212 */ "This individual has no families.",
1128             /* 213 */ "Estimated number of ancestors {0} is more than permissible limits.",
1129             /* 214 */ "Estimated number of descendants {0} is more than permissible limits.",
1130             /* 215 */ "Generations visible:",
1131             /* 216 */ "unlimited",
1132             /* 217 */ "Spouse",
1133             /* 218 */ "Marriage date",
1134             /* 219 */ "Are you sure you want to detach link to father?",
1135             /* 220 */ "Are you sure you want to detach link to mother?",
1136             /* 221 */ "Are you sure you want to detach link to spouse?",
1137             /* 222 */ "Are you sure you want to detach link to parents?",
1138             /* 223 */ "All",
1139             /* 224 */ "Ancestors only",
1140             /* 225 */ "Descendants only",
1141             /* 226 */ "Trace root",
1142             /* 227 */ "Edit",
1143             /* 228 */ "Add family",
1144             /* 229 */ "Add spouse",
1145             /* 230 */ "Add son",
1146             /* 231 */ "Add daughter",
1147             /* 232 */ "Delete",
1148             /* 233 */ "Rebuild tree",
1149             /* 234 */ "Rebuild kinships",
1150             /* 235 */ "Links",
1151             /* 236 */ "Place and attribute",
1152             /* 237 */ "marriage",
1153             /* 238 */ "family",
1154             /* 239 */ "Namesakes",
1155             /* 240 */ "Remove the event?",
1156             /* 241 */ "Are you sure you want to detach link to note?",
1157             /* 242 */ "Are you sure you want to detach link to multimedia?",
1158             /* 243 */ "Are you sure you want to detach link to source?",
1159             /* 244 */ "Are you sure you want to remove the association?",
1160             /* 245 */ "Are you sure you want to remove reference \"{0}\"?",
1161             /* 246 */ "Loading of gedcom failed.",
1162             /* 247 */ "Check gedcom format failed.",
1163             /* 248 */ "Birth days",
1164             /* 249 */ "{1} days remain before the birthday of \"{0}\"",
1165             /* 250 */ "Interface",
1166             /* 251 */ "Trees",
1167             /* 252 */ "Pedigrees",
1168             /* 253 */ "Files encoding",
1169             /* 254 */ "Addresses",
1170             /* 255 */ "Mails",
1171             /* 256 */ "Webs",
1172             /* 257 */ "Internet",
1173             /* 258 */ "Use proxy",
1174             /* 259 */ "Server",
1175             /* 260 */ "Port",
1176             /* 261 */ "Login",
1177             /* 262 */ "Password",
1178             /* 263 */ "The password is not specified",
1179             /* 264 */ "Show tips on startup",
1180             /* 265 */ "Language",
1181             /* 266 */ "All lists",
1182             /* 267 */ "List of individuals",
1183             /* 268 */ "Name format in lists",
1184             /* 269 */ "Surname_Name_Patronymic",
1185             /* 270 */ "Surname; Name_Patronymic",
1186             /* 271 */ "Surname; Name; Patronymic",
1187             /* 272 */ "Date format in lists",
1188             /* 273 */ "Include address into place text",
1189             /* 274 */ "Highlight unparented",
1190             /* 275 */ "Highlight unmarried",
1191             /* 276 */ "Default values",
1192             /* 277 */ "Show individuals in tree",
1193             /* 278 */ "Separate lines",
1194             /* 279 */ "Only years",
1195             /* 280 */ "Kinship",
1196             /* 281 */ "Additional symbols",
1197             /* 282 */ "Tree decorative",
1198             /* 283 */ "Show portraits",
1199             /* 284 */ "Hide died in childhood",
1200             /* 285 */ "Decor",
1201             /* 286 */ "Man",
1202             /* 287 */ "Woman",
1203             /* 288 */ "Unknown sex",
1204             /* 289 */ "Divorcee husband",
1205             /* 290 */ "Divorcee wife",
1206             /* 291 */ "Font",
1207             /* 292 */ "Pedigree generation",
1208             /* 293 */ "Include attributes of individuals",
1209             /* 294 */ "Include notes",
1210             /* 295 */ "Include sources",
1211             /* 296 */ "Pedigree format",
1212             /* 297 */ "Excess",
1213             /* 298 */ "Compact",
1214             /* 299 */ "Jump to a record",
1215             /* 300 */ "Move record up",
1216             /* 301 */ "Move record down",
1217             /* 302 */ "Full name",
1218             /* 303 */ "Birth place",
1219             /* 304 */ "Death place",
1220             /* 305 */ "Residence",
1221             /* 306 */ "Age",
1222             /* 307 */ "Lifetime",
1223             /* 308 */ "Days before birth",
1224             /* 309 */ "Religion",
1225             /* 310 */ "Nationality",
1226             /* 311 */ "Education",
1227             /* 312 */ "Occupation",
1228             /* 313 */ "Caste",
1229             /* 314 */ "Mili",
1230             /* 315 */ "Mili ind",
1231             /* 316 */ "Mili dis",
1232             /* 317 */ "Mili rank",
1233             /* 318 */ "Changed",
1234             /* 319 */ "Marriage registered",
1235             /* 320 */ "Marriage is not registered",
1236             /* 321 */ "Divorced",
1237             /* 322 */ "Birth",
1238             /* 323 */ "Adoption",
1239             /* 324 */ "Christening (child)",
1240             /* 325 */ "Graduation",
1241             /* 326 */ "Retirement",
1242             /* 327 */ "Naturalization",
1243             /* 328 */ "Emigration",
1244             /* 329 */ "Immigration",
1245             /* 330 */ "Census",
1246             /* 331 */ "Will",
1247             /* 332 */ "Probate of will",
1248             /* 333 */ "Death",
1249             /* 334 */ "Burial",
1250             /* 335 */ "Cremation",
1251             /* 336 */ "Fact",
1252             /* 337 */ "Physical description",
1253             /* 338 */ "National ID Number",
1254             /* 339 */ "Social security number",
1255             /* 340 */ "Number of children",
1256             /* 341 */ "Number of marriages",
1257             /* 342 */ "Property",
1258             /* 343 */ "Title",
1259             /* 344 */ "Travel",
1260             /* 345 */ "Hobby",
1261             /* 346 */ "Award",
1262             /* 347 */ "?",
1263             /* 348 */ "father",
1264             /* 349 */ "mother",
1265             /* 350 */ "husband",
1266             /* 351 */ "wife",
1267             /* 352 */ "son",
1268             /* 353 */ "daughter",
1269             /* 354 */ "grandfather",
1270             /* 355 */ "grandmother",
1271             /* 356 */ "grandson",
1272             /* 357 */ "granddaughter",
1273             /* 358 */ "brother",
1274             /* 359 */ "sister",
1275             /* 360 */ "son-in-law",
1276             /* 361 */ "daughter-in-law",
1277             /* 362 */ "father-in-law",
1278             /* 363 */ "mother-in-law",
1279             /* 364 */ "father-in-law",
1280             /* 365 */ "mother-in-law",
1281             /* 366 */ "uncle",
1282             /* 367 */ "aunt",
1283             /* 368 */ "nephew",
1284             /* 369 */ "niece",
1285             /* 370 */ "cousin",
1286             /* 371 */ "cousin",
1287             /* 372 */ "brother-in-law",
1288             /* 373 */ "sister-in-law",
1289             /* 374 */ "brother-in-law",
1290             /* 375 */ "sister-in-law",
1291             /* 376 */ "great",
1292             /* 377 */ "<?>",
1293             /* 378 */ "<?>",
1294             /* 379 */ "<?>",
1295             /* 380 */ "<?>",
1296             /* 381 */ "Image width is more than 65,000 pixels. Unable to save.",
1297             /* 382 */ "Back",
1298             /* 383 */ "Next",
1299             /* 384 */ "<?>",
1300             /* 385 */ "Next",
1301             /* 386 */ "You know that ...",
1302             /* 387 */ "Loading and searching places",
1303             /* 388 */ "(not selected)",
1304             /* 389 */ "Sample",
1305             /* 390 */ "For all people",
1306             /* 391 */ "Places of birth",
1307             /* 392 */ "Places of death",
1308             /* 393 */ "Places of residence",
1309             /* 394 */ "Only selected",
1310             /* 395 */ "Save image...",
1311             /* 396 */ "The format is not supported",
1312             /* 397 */ "Error loading data.",
1313             /* 398 */ "Print",
1314             /* 399 */ "Preview",
1315             /* 400 */ "Generation",
1316             /* 401 */ "contains",
1317             /* 402 */ "not contains",
1318             /* 403 */ "Exact",
1319             /* 404 */ "Before",
1320             /* 405 */ "After",
1321             /* 406 */ "Between",
1322             /* 407 */ "Period before",
1323             /* 408 */ "Period from",
1324             /* 409 */ "Period between",
1325             /* 410 */ "About",
1326             /* 411 */ "Calculated",
1327             /* 412 */ "Estimated",
1328             /* 413 */ "Engagement",
1329             /* 414 */ "Marriage",
1330             /* 415 */ "Public announcement of the marriage",
1331             /* 416 */ "Marriage contract",
1332             /* 417 */ "Obtaining permission to marry",
1333             /* 418 */ "Conclusion of the marriage agreement",
1334             /* 419 */ "Annulment of marriage",
1335             /* 420 */ "Filing of divorce",
1336             /* 421 */ "Divorce",
1337             /* 422 */ "Link to file",
1338             /* 423 */ "Saving to the archive",
1339             /* 424 */ "Saving to the store",
1340             /* 425 */ "-",
1341             /* 426 */ "Audio",
1342             /* 427 */ "Book",
1343             /* 428 */ "Card",
1344             /* 429 */ "Electronic",
1345             /* 430 */ "Fiche",
1346             /* 431 */ "Film",
1347             /* 432 */ "Magazine",
1348             /* 433 */ "Manuscript",
1349             /* 434 */ "Map",
1350             /* 435 */ "Newspaper",
1351             /* 436 */ "Photo",
1352             /* 437 */ "Tombstone",
1353             /* 438 */ "Video",
1354             /* 439 */ "- Unknown -",
1355             /* 440 */ "None",
1356             /* 441 */ "Low",
1357             /* 442 */ "Normal",
1358             /* 443 */ "High",
1359             /* 444 */ "Top",
1360             /* 445 */ "Defined",
1361             /* 446 */ "In progress",
1362             /* 447 */ "On hold",
1363             /* 448 */ "Problems",
1364             /* 449 */ "Completed",
1365             /* 450 */ "Withdrawn",
1366             /* 451 */ "Call",
1367             /* 452 */ "EMail",
1368             /* 453 */ "Fax",
1369             /* 454 */ "Letter",
1370             /* 455 */ "Tape",
1371             /* 456 */ "Visit",
1372             /* 457 */ "from",
1373             /* 458 */ "to",
1374             /* 459 */ "individual",
1375             /* 460 */ "family",
1376             /* 461 */ "source",
1377             /* 462 */ "other",
1378             /* 463 */ "Unreliable evidence",
1379             /* 464 */ "Questionable reliability of evidence",
1380             /* 465 */ "Circumstantial evidence",
1381             /* 466 */ "Direct and primary evidence",
1382             /* 467 */ "Research",
1383             /* 468 */ "Task",
1384             /* 469 */ "Correspondence",
1385             /* 470 */ "Correcting IDs",
1386             /* 471 */ "Checking format",
1387             /* 472 */ "Correction of identity records is required, continue?", // obsolete
1388             /* 473 */ "Number of objects in the master database: {0}",
1389             /* 474 */ "Synchronization is complete.",
1390             /* 475 */ "Identifying the patriarchs",
1391             /* 476 */ "Checking links",
1392             /* 477 */ "Archive not found, the data is not loaded",
1393             /* 478 */ "Scale",
1394             /* 479 */ "GEDKeeper GEDCOM files (*.ged)|*.ged|GEDKeeper GEDCOM encrypted files (*.geds)|*.geds",
1395             /* 480 */ "All files (*.*)|*.*",
1396             /* 481 */ "Images (*.bmp;*.gif;*.png;*.jpg)|*.bmp;*.gif;*.png;*.jpg",
1397             /* 482 */ "Scripts (*.lua)|*.lua",
1398             /* 483 */ "BMP files (*.bmp)|*.bmp|JPEG files (*.jpg)|*.jpg|EMF files (*.emf)|*.emf|PNG files (*.png)|*.png|GIF files (*.gif)|*.gif",
1399             /* 484 */ "Death causes",
1400             /* 485 */ "Pedigree",
1401             /* 486 */ "Parameter",
1402             /* 487 */ "Total",
1403             /* 488 */ "Men",
1404             /* 489 */ "Women",
1405             /* 490 */ "Fields filter",
1406             /* 491 */ "Year",
1407             /* 492 */ "PDF files (*.pdf)|*.pdf",
1408             /* 493 */ "RTF files (*.rtf)|*.rtf",
1409             /* 494 */ "HTML files (*.html)|*.html",
1410             /* 495 */ "Files backup",
1411             /* 496 */ "only previous file",
1412             /* 497 */ "Cutting off the branches",
1413             /* 498 */ "not",
1414             /* 499 */ "on years",
1415             /* 500 */ "in selected individuals",
1416             /* 501 */ "- all -",
1417             /* 502 */ "- not -",
1418             /* 503 */ "- any -",
1419             /* 504 */ "Master database",
1420             /* 505 */ "Database to merge",
1421             /* 506 */ "[current database]",
1422             /* 507 */ "There is a filter by a source. Do you want to add the source to a new individual?",
1423             /* 508 */ "There is a filter by a group. Do you want to add the group to a new individual?",
1424             /* 509 */ "Duplicates search",
1425             /* 510 */ "Invalid value",
1426             /* 511 */ "Operation",
1427             /* 512 */ "Compare databases",
1428             /* 513 */ "Merge databases",
1429             /* 514 */ "Split database",
1430             /* 515 */ "Merge records",
1431             /* 516 */ "Search unlinked namesakes",
1432             /* 517 */ "Check connection of families",
1433             /* 518 */ "Check database",
1434             /* 519 */ "Find the patriarchs",
1435             /* 520 */ "Manage places",
1436             /* 521 */ "Matching...",
1437             /* 522 */ "Check connection of families",
1438             /* 523 */ "all",
1439             /* 524 */ "living only ",
1440             /* 525 */ "dead only",
1441             /* 526 */ "Lived before",
1442             /* 527 */ "men only",
1443             /* 528 */ "women only",
1444             /* 529 */ "Mask of name",
1445             /* 530 */ "Mask of residence",
1446             /* 531 */ "Mask of the facts",
1447             /* 532 */ "Patriarchs only",
1448             /* 533 */ "Date is invalid",
1449             /* 534 */ "People",
1450             /* 535 */ "Years",
1451             /* 536 */ "Decade",
1452             /* 537 */ "Born",
1453             /* 538 */ "Died",
1454             /* 539 */ "Living",
1455             /* 540 */ "Dead",
1456             /* 541 */ "Average age",
1457             /* 542 */ "Life expectancy",
1458             /* 543 */ "Average number of children",
1459             /* 544 */ "Average age of the first child birth",
1460             /* 545 */ "Average number of marriages",
1461             /* 546 */ "Average age of marriage",
1462             /* 547 */ "Number of ancestors",
1463             /* 548 */ "Number of descendants",
1464             /* 549 */ "Number of generations of descendants",
1465             /* 550 */ "Birth years",
1466             /* 551 */ "Birth years (decades)",
1467             /* 552 */ "Death years",
1468             /* 553 */ "Death years (decades)",
1469             /* 554 */ "Distribution of the number of children",
1470             /* 555 */ "Age of first child birth",
1471             /* 556 */ "Age at marriage",
1472             /* 557 */ "Age difference of spouses",
1473             /* 558 */ "Select all links",
1474             /* 559 */ "Select family",
1475             /* 560 */ "Select ancestors",
1476             /* 561 */ "Select descendants",
1477             /* 562 */ "Merge",
1478             /* 563 */ "Search",
1479             /* 564 */ "Skip",
1480             /* 565 */ "Records",
1481             /* 566 */ "Search persons",
1482             /* 567 */ "Direct matching",
1483             /* 568 */ "Indistinct matching",
1484             /* 569 */ "Only by name / middle name (women only)",
1485             /* 570 */ "Check the year of birth",
1486             /* 571 */ "The accuracy of the name, %",
1487             /* 572 */ "Years inaccuracy",
1488             /* 573 */ "Repair",
1489             /* 574 */ "Generations of descendants, not less than",
1490             /* 575 */ "Set a sign",
1491             /* 576 */ "Register in list of locations",
1492             /* 577 */ "Similar surnames:",
1493             /* 578 */ "Similar names:",
1494             /* 579 */ "Selected personal records removed",
1495             /* 580 */ "Record",
1496             /* 581 */ "Problem",
1497             /* 582 */ "Solve",
1498             /* 583 */ "Perhaps died (age {0})",
1499             /* 584 */ "Sex is undefined",
1500             /* 585 */ "Year of birth more than year of death",
1501             /* 586 */ "The first marriage at the age of {0} years?",
1502             /* 587 */ "The first child was born at the age of {0} years?",
1503             /* 588 */ "Descendants",
1504             /* 589 */ "Generations",
1505             /* 590 */ "Number of links",
1506             /* 591 */ "Processing places",
1507             /* 592 */ "The place is already in the locations list",
1508             /* 593 */ "DNA markers",
1509             /* 594 */ "Average age of parents at the time first-born appeared, relative to parents age",
1510             /* 595 */ "Average age of parents at the time first-born appeared, relative to children age",
1511             /* 596 */ "Empty family record",
1512             /* 597 */ "backup each file revision",
1513             /* 598 */ "Loading",
1514             /* 599 */ "File saving error \"{0}\"{1}.",
1515             /* 600 */ "Background color...",
1516             /* 601 */ "Background image...",
1517             /* 602 */ "Persons in tree: {0}",
1518             /* 603 */ "View the error log",
1519             /* 604 */ "Ancestors Circle",
1520             /* 605 */ "Circle",
1521             /* 606 */ "Text color",
1522             /* 607 */ "Back color",
1523             /* 608 */ "Lines color",
1524             /* 609 */ "None",
1525             /* 610 */ "Locked",
1526             /* 611 */ "Confidential",
1527             /* 612 */ "Privacy",
1528             /* 613 */ "Send the error log",
1529             /* 614 */ "Charts",
1530             /* 615 */ "Fit window size",
1531             /* 616 */ "Zoom in",
1532             /* 617 */ "Zoom out",
1533             /* 618 */ "Ascertain a fact of death",
1534             /* 619 */ "Determine a sex",
1535             /* 620 */ "Plugins",
1536             /* 621 */ "Auto-trace relationships",
1537             /* 622 */ "No matches found",
1538             /* 623 */ "Find previous",
1539             /* 624 */ "Find next",
1540             /* 625 */ "The certainty index",
1541             /* 626 */ "Monthes of birth",
1542             /* 627 */ "Month",
1543             /* 628 */ "Reset",
1544             /* 629 */ "Field",
1545             /* 630 */ "Condition",
1546             /* 631 */ "Source is not specified",
1547             /* 632 */ "Slideshow",
1548             /* 633 */ "Previous record",
1549             /* 634 */ "Next record",
1550             /* 635 */ "Generation failed",
1551             /* 636 */ "Start",
1552             /* 637 */ "Stop",
1553             /* 638 */ "Demographics",
1554             /* 639 */ "Names",
1555             /* 640 */ "Name-nickname",
1556             /* 641 */ "Birth name",
1557             /* 642 */ "In immigration",
1558             /* 643 */ "Maiden name",
1559             /* 644 */ "Marriage name",
1560             /* 645 */ "Delete a name?",
1561             /* 646 */ "You cannot delete the single name",
1562             /* 647 */ "Quote",
1563             /* 648 */ "Place a bookmark on merged records",
1564             /* 649 */ "Show calendar near dates",
1565             /* 650 */ "Duplicate record",
1566             /* 651 */ "Attention: if you duplicate an individual, family links and associations are not copied",
1567             /* 652 */ "Show date type",
1568             /* 653 */ "Create a new tree file",
1569             /* 654 */ "Open the tree file",
1570             /* 655 */ "Save tree file",
1571             /* 656 */ "Add record (Ctrl+I)",
1572             /* 657 */ "Edit record (Ctrl+Enter)",
1573             /* 658 */ "Delete record (Ctrl+L)",
1574             /* 659 */ "Filtering list of records",
1575             /* 660 */ "Show a tree of ancestors",
1576             /* 661 */ "Show a tree of descendants",
1577             /* 662 */ "Show full tree",
1578             /* 663 */ "Pedigree",
1579             /* 664 */ "Pedigree by d'Aboville",
1580             /* 665 */ "Pedigree by Konovalov",
1581             /* 666 */ "Statistical analysis of data",
1582             /* 667 */ "Save the image",
1583             /* 668 */ "Display modes",
1584             /* 669 */ "Create a new script",
1585             /* 670 */ "Open a script",
1586             /* 671 */ "Save script",
1587             /* 672 */ "Execute the script",
1588             /* 673 */ "Attach the portrait",
1589             /* 674 */ "Detach the portrait",
1590             /* 675 */ "Join the family of parents",
1591             /* 676 */ "Edit the family of the parents",
1592             /* 677 */ "Disconnect family parents",
1593             /* 678 */ "Select or add the father",
1594             /* 679 */ "Disconnect father",
1595             /* 680 */ "Go to the record of the father",
1596             /* 681 */ "Select or add the mother",
1597             /* 682 */ "Disconnect mother",
1598             /* 683 */ "Go to the record of the mother",
1599             /* 684 */ "Copy name to clipboard",
1600             /* 685 */ "Select or add husband",
1601             /* 686 */ "Disconnect husband",
1602             /* 687 */ "Go to the record of the husband",
1603             /* 688 */ "Select or add wife",
1604             /* 689 */ "Disconnect wife",
1605             /* 690 */ "Go to the record of the wife",
1606             /* 691 */ "Choose an individual",
1607             /* 692 */ "Select or add a location",
1608             /* 693 */ "Remove the link to the place",
1609             /* 694 */ "Show the map",
1610             /* 695 */ "Select or add a record of source",
1611             /* 696 */ "Select the target record",
1612             /* 697 */ "If you use \"file\" or \"store\" storage type, you have to save new database file before continue",
1613             /* 698 */ "A file with the same name already exists",
1614             /* 699 */ "It's not a GEDSEC-compatible file",
1615             /* 700 */ "This individual has a few families. Children should be added via the spouses.",
1616             /* 701 */ "Export to Excel failed",
1617             /* 702 */ "Specific filter",
1618             /* 703 */ "Display lines",
1619             /* 704 */ "Type of comparison",
1620             /* 705 */ "Internal comparing (search for duplicates)",
1621             /* 706 */ "Comparing with another database",
1622             /* 707 */ "Analyze",
1623             /* 708 */ "Compare",
1624             /* 709 */ "Ignore dates",
1625             /* 710 */ "Chart",
1626             /* 711 */ "Family book",
1627             /* 712 */ "Table of contents",
1628             /* 713 */ "Records of individuals",
1629             /* 714 */ "Directories",
1630             /* 715 */ "Unable to auto-detect gender using name \"{0}\". Is it male gender?",
1631             /* 716 */ "Autosave every",
1632             /* 717 */ "minutes",
1633             /* 718 */ "Including number of generations",
1634             /* 719 */ "Hide empty segments",
1635             /* 720 */ "Descendants Circle",
1636             /* 721 */ "Choice of portrait",
1637             /* 722 */ "Relationship Calculator",
1638             /* 723 */ "{0} is {1} of {2}",
1639             /* 724 */ "Today is birthday of {0}",
1640             /* 725 */ "Tomorrow is birthday of {0}",
1641             /* 726 */ "Blood type",
1642             /* 727 */ "Hair color",
1643             /* 728 */ "Eyes color",
1644             /* 729 */ "mtDNA haplogroup",
1645             /* 730 */ "Y-DNA haplogroup",
1646             /* 731 */ "Record is locked by editor",
1647             /* 732 */ "Maiden surname",
1648             /* 733 */ "Married surname",
1649             /* 734 */ "Additional names",
1650             /* 735 */ "Extended women's surnames",
1651             /* 736 */ "Format \"Maiden (Married)\"",
1652             /* 737 */ "Format \"Married (Maiden)\"",
1653             /* 738 */ "Format \"Maiden\"",
1654             /* 739 */ "Format \"Married\"",
1655             /* 740 */ "H",
1656             /* 741 */ "W",
1657             /* 742 */ "Geocoder",
1658             /* 743 */ "Add father",
1659             /* 744 */ "Add mother",
1660             /* 745 */ "Show default portraits",
1661             /* 746 */ "A media file is added from the removable media. Continue?",
1662             /* 747 */ "Warn when adding media files from removable media",
1663             /* 748 */ "Load recently opened files at startup",
1664             /* 749 */ "Today is holiday \"{0}\"",
1665             /* 750 */ "Tomorrow is holiday \"{0}\"",
1666             /* 751 */ "{1} days remain before the holiday \"{0}\"",
1667             /* 752 */ "Holidays",
1668             /* 753 */ "Use embedded MediaPlayer",
1669             /* 754 */ "Allow direct references to media files",
1670             /* 755 */ "Copying file",
1671             /* 756 */ "Actions",
1672             /* 757 */ "Select and copy",
1673             /* 758 */ "№",
1674             /* 759 */ "Reports",
1675             /* 760 */ "Inverted tree",
1676             /* 761 */ "Dates of marriages",
1677             /* 762 */ "Automatically check for updates",
1678             /* 763 */ "Arc text",
1679             /* 764 */ "Album of Trees",
1680             /* 765 */ "Show places",
1681             /* 766 */ "Hide unknown spouses",
1682             /* 767 */ "Spacings",
1683             /* 768 */ "Margins",
1684             /* 769 */ "Branch distance",
1685             /* 770 */ "Generation distance",
1686             /* 771 */ "Spouse distance",
1687             /* 772 */ "Image size: {0} x {1} px",
1688             /* 773 */ "A data loop was detected: {0}",
1689             /* 774 */ "Father is listed as a child",
1690             /* 775 */ "Mother is listed as a child",
1691             /* 776 */ "There are duplicate children in the family",
1692             /* 777 */ "Select color",
1693             /* 778 */ "Autosort children",
1694             /* 779 */ "Autosort spouses",
1695             /* 780 */ "Check tree size allowed",
1696             /* 781 */ "Adopted",
1697             /* 782 */ "Birth",
1698             /* 783 */ "Foster",
1699             /* 784 */ "Detect Charset at load",
1700             /* 785 */ "Linkage type",
1701             /* 786 */ "Was born",
1702             /* 787 */ "Was born",
1703             /* 788 */ "GedML files (*.xml)|*.xml",
1704             /* 789 */ "Child detected without parents",
1705             /* 790 */ "Family record detected without family",
1706             /* 791 */ "Are you sure you want to remove multimedia file?",
1707             /* 792 */ "Storage not found",
1708             /* 793 */ "File \"{0}\" not found",
1709             /* 794 */ "Allow relative references to media files",
1710             /* 795 */ "Default media storage type",
1711             /* 796 */ "Allow delete media files from storage and archive",
1712             /* 797 */ "Allow delete media files by direct and relative references",
1713             /* 798 */ "Delete media files without confirm",
1714             /* 799 */ "Media record without files",
1715             /* 800 */ "Archive not found",
1716 
1717             /* 801 */ "RI:GeorgeKnight",
1718             /* 802 */ "USSR:WWII:Combatant",
1719             /* 803 */ "USSR:WWII:Killed in battle",
1720             /* 804 */ "USSR:WWII:Worker in rear",
1721             /* 805 */ "USSR:Repressed",
1722             /* 806 */ "Religion:Islam",
1723             /* 807 */ "Religion:Catholicism",
1724             /* 808 */ "Religion:Orthodoxy",
1725             /* 809 */ "Religion:The Old Believers",
1726 
1727             /* 810 */ "Relative link to file",
1728             /* 811 */ "Maximum number of backup revisions",
1729             /* 812 */ "First capital letter in names",
1730             /* 813 */ "Default depth",
1731             /* 814 */ "The dialog contains unsaved changes. Continue and save?",
1732             /* 815 */ "Warn for closing dialog with unsaved changes",
1733             /* 816 */ "Dotted lines of adopted children",
1734             /* 817 */ "Go to person record",
1735             /* 818 */ "Web address",
1736             /* 819 */ "Separate dates and places lines",
1737             /* 820 */ "Details",
1738             /* 821 */ "Copy XRef to clipboard",
1739             /* 822 */ "Bold font of names",
1740 
1741             /* 823 */ "Baptism",
1742             /* 824 */ "Bar mitzvah",
1743             /* 825 */ "Bat mitzvah",
1744             /* 826 */ "Blessing",
1745             /* 827 */ "Adult christening",
1746             /* 828 */ "Confirmation",
1747             /* 829 */ "First communion",
1748             /* 830 */ "Ordination",
1749             /* 831 */ "Restriction geo search by country",
1750             /* 832 */ "Separate depth",
1751             /* 833 */ "Ancestors",
1752             /* 834 */ "Matches not found",
1753             /* 835 */ "Short kinship form",
1754             /* 836 */ "Surname first in order",
1755             /* 837 */ "Borders",
1756             /* 838 */ "You've got version {0} of GEDKeeper. Would you like to update to the latest version {1}?",
1757             /* 839 */ "Providers",
1758             /* 840 */ "Coordinates",
1759             /* 841 */ "Load places",
1760         };
1761 
1762         private static readonly LangManager fLangMan = new LangManager();
1763 
LS(LSID lsid)1764         public static string LS(LSID lsid)
1765         {
1766             return fLangMan.LS(lsid);
1767         }
1768 
LS(LSID lsid, params object[] args)1769         public static string LS(LSID lsid, params object[] args)
1770         {
1771             return string.Format(fLangMan.LS(lsid), args);
1772         }
1773 
DefInit()1774         public static void DefInit()
1775         {
1776             fLangMan.DefInit(LSDefList);
1777         }
1778 
LoadFromFile(string fileName)1779         public static bool LoadFromFile(string fileName)
1780         {
1781             return fLangMan.LoadFromFile(fileName, 1);
1782         }
1783 
SaveDefaultLanguage()1784         public static void SaveDefaultLanguage()
1785         {
1786             StreamWriter lf = new StreamWriter(GKUtils.GetLangsPath() + "english.sample2", false, Encoding.UTF8);
1787             try
1788             {
1789                 lf.WriteLine(";" + LS_DEF_CODE.ToString() + "," + LS_DEF_SIGN + "," + LS_DEF_NAME);
1790                 for (LSID i = LSID.LSID_First; i <= LSID.LSID_Last; i++)
1791                 {
1792                     string ls = LSDefList[(int)i - 1];
1793                     if (!string.IsNullOrEmpty(ls)) {
1794                         lf.WriteLine(ConvertHelper.AdjustNumber((int)i, 3) + "=" + ls);
1795                     }
1796                 }
1797             }
1798             finally
1799             {
1800                 lf.Close();
1801             }
1802         }
1803     }
1804 
1805     public class LangManager : ILangMan
1806     {
1807         private readonly Dictionary<int, string> fList;
1808 
LangManager()1809         public LangManager()
1810         {
1811             fList = new Dictionary<int, string>();
1812         }
1813 
LS(Enum lsid)1814         public string LS(Enum lsid)
1815         {
1816             int idx = ((IConvertible)lsid).ToInt32(null);
1817             string res;
1818             return (fList.TryGetValue(idx, out res)) ? res : "?";
1819         }
1820 
LoadFromFile(string fileName, int offset = 0)1821         public bool LoadFromFile(string fileName, int offset = 0)
1822         {
1823             bool result = false;
1824 
1825             if (File.Exists(fileName))
1826             {
1827                 fList.Clear();
1828 
1829                 using (StreamReader lngFile = new StreamReader(fileName, Encoding.UTF8))
1830                 {
1831                     bool xt = false;
1832 
1833                     string st = lngFile.ReadLine();
1834                     if (!string.IsNullOrEmpty(st) && st[0] == ';')
1835                     {
1836                         st = st.Remove(0, 1);
1837                         string[] lngParams = st.Split(',');
1838                         if (lngParams.Length < 3)
1839                             throw new GKException("Header is incorrect");
1840 
1841                         xt = (lngParams.Length == 4 && lngParams[3] == "xt");
1842                     }
1843 
1844                     int i = 0 + (offset);
1845                     while (lngFile.Peek() != -1)
1846                     {
1847                         st = lngFile.ReadLine().Trim();
1848 
1849                         if (xt) {
1850                             // allowed empty and comment strings
1851                             if (string.IsNullOrEmpty(st) || st[0] == ';') {
1852                                 continue;
1853                             }
1854 
1855                             string[] parts = st.Split('=');
1856                             i = int.Parse(parts[0]);
1857                             fList.Add(i, parts[1]);
1858                         } else {
1859                             fList.Add(i, st);
1860                             i++;
1861                         }
1862                     }
1863                     result = true;
1864                 }
1865             }
1866 
1867             return result;
1868         }
1869 
DefInit(string[] source)1870         internal void DefInit(string[] source)
1871         {
1872             fList.Clear();
1873 
1874             for (LSID id = LSID.LSID_First; id <= LSID.LSID_Last; id++)
1875             {
1876                 int idx = (int)id;
1877                 fList.Add(idx, source[idx - 1]);
1878             }
1879         }
1880     }
1881 }
1882