aboutsummaryrefslogtreecommitdiff
path: root/devtools
diff options
context:
space:
mode:
authorD G Turner2012-10-12 17:03:32 +0100
committerD G Turner2012-10-12 17:03:32 +0100
commit151b7beb47ec4b964862d6779bd48e3a33482bbd (patch)
tree867717c5266d0908d95edd82560599be20a4ede9 /devtools
parent80af0e239473f85c49cc2da3c848dfcde41d4a37 (diff)
parent2b55837650c4229dc3d75b660cecfc7a3292e5e0 (diff)
downloadscummvm-rg350-151b7beb47ec4b964862d6779bd48e3a33482bbd.tar.gz
scummvm-rg350-151b7beb47ec4b964862d6779bd48e3a33482bbd.tar.bz2
scummvm-rg350-151b7beb47ec4b964862d6779bd48e3a33482bbd.zip
Merge branch 'master' into teenagentRefactor
Conflicts: engines/teenagent/callbacks.cpp
Diffstat (limited to 'devtools')
-rw-r--r--devtools/create_kyradat/create_kyradat.cpp2
-rw-r--r--devtools/create_kyradat/games.cpp1
-rw-r--r--devtools/create_kyradat/tables.cpp1
-rw-r--r--devtools/create_project/config.h7
-rw-r--r--devtools/create_project/create_project.cpp28
-rw-r--r--devtools/create_project/create_project.h24
-rw-r--r--devtools/create_project/msbuild.cpp21
-rw-r--r--devtools/create_project/msvc.cpp19
-rw-r--r--devtools/create_project/msvc.h2
-rw-r--r--devtools/create_project/scripts/postbuild.cmd4
-rw-r--r--devtools/create_project/visualstudio.cpp8
-rw-r--r--devtools/create_project/xcode.cpp6
-rw-r--r--devtools/create_tony/create_tony.cpp183
-rw-r--r--devtools/create_tony/create_tony.h44
-rw-r--r--devtools/create_tony/module.mk10
-rw-r--r--devtools/create_tony/staticdata.h1370
-rwxr-xr-xdevtools/credits.pl50
-rw-r--r--devtools/module.mk2
18 files changed, 1723 insertions, 59 deletions
diff --git a/devtools/create_kyradat/create_kyradat.cpp b/devtools/create_kyradat/create_kyradat.cpp
index a87bde3e26..3b90ad0d85 100644
--- a/devtools/create_kyradat/create_kyradat.cpp
+++ b/devtools/create_kyradat/create_kyradat.cpp
@@ -47,7 +47,7 @@
#include <map>
enum {
- kKyraDatVersion = 82
+ kKyraDatVersion = 83
};
const ExtractFilename extractFilenames[] = {
diff --git a/devtools/create_kyradat/games.cpp b/devtools/create_kyradat/games.cpp
index a2759b1e53..89229eb4f2 100644
--- a/devtools/create_kyradat/games.cpp
+++ b/devtools/create_kyradat/games.cpp
@@ -119,6 +119,7 @@ const Game lolGames[] = {
{ kLoL, { EN_ANY, -1, -1 }, kPlatformPC, kNoSpecial, { "0cc764a204f7ba8cefe1a5f14c479619", 0 } },
{ kLoL, { RU_RUS, -1, -1 }, kPlatformPC, kNoSpecial, { "80a9f9bf243bc6ed36d98584fc6988c4", 0 } },
{ kLoL, { DE_DEU, -1, -1 }, kPlatformPC, kNoSpecial, { "6b843869772c1b779e1386be868c15dd", 0 } },
+ { kLoL, { FR_FRA, -1, -1 }, kPlatformPC, kNoSpecial, { "6b843869772c1b779e1386be868c15dd", 0 } },
// PC98 (no language specifc strings)
{ kLoL, { JA_JPN, -1, -1 }, kPlatformPC98, kNoSpecial, { "6d5bd4a2f5ce433365734ca6b7a8d984", "1b0a457c48ae6908da301b656fe0aab4" } },
diff --git a/devtools/create_kyradat/tables.cpp b/devtools/create_kyradat/tables.cpp
index 1b9f90f18f..19b69d9410 100644
--- a/devtools/create_kyradat/tables.cpp
+++ b/devtools/create_kyradat/tables.cpp
@@ -3349,6 +3349,7 @@ const ExtractEntrySearchData kLoLCharacterDefsProvider[] = {
{ RU_RUS, kPlatformPC, { 0x00000492, 0x000052BA, { { 0x52, 0x29, 0x0D, 0x49, 0xFD, 0x17, 0xD7, 0x70, 0x6D, 0xCA, 0xEB, 0xB6, 0x7E, 0xFA, 0xBE, 0x08 } } } }, // floppy
{ EN_ANY, kPlatformPC, { 0x00000492, 0x000046B0, { { 0x7A, 0x94, 0x8B, 0xC6, 0xF7, 0xF1, 0x2F, 0xF3, 0xBC, 0x1B, 0x0B, 0x4E, 0x00, 0xC9, 0x44, 0x58 } } } }, // floppy
{ DE_DEU, kPlatformPC, { 0x00000492, 0x000047FD, { { 0x8C, 0x0B, 0x8B, 0xCE, 0xE0, 0xB0, 0x8F, 0xA9, 0x06, 0xC3, 0x98, 0xE6, 0x2E, 0x09, 0xB6, 0x93 } } } }, // floppy
+ { FR_FRA, kPlatformPC, { 0x00000492, 0x000047FD, { { 0x8C, 0x0B, 0x8B, 0xCE, 0xE0, 0xB0, 0x8F, 0xA9, 0x06, 0xC3, 0x98, 0xE6, 0x2E, 0x09, 0xB6, 0x93 } } } }, // floppy
{ EN_ANY, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
{ DE_DEU, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
{ FR_FRA, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD
diff --git a/devtools/create_project/config.h b/devtools/create_project/config.h
index 20c1391cef..de4703a47d 100644
--- a/devtools/create_project/config.h
+++ b/devtools/create_project/config.h
@@ -28,7 +28,10 @@
#define LIBS_DEFINE "SCUMMVM_LIBS" // Name of the include environment variable
#define REVISION_DEFINE "SCUMMVM_INTERNAL_REVISION"
-//#define ADDITIONAL_LIBRARY ""
-#define NEEDS_RTTI 0
+#define ENABLE_LANGUAGE_EXTENSIONS "" // Comma separated list of projects that need language extensions
+#define DISABLE_EDIT_AND_CONTINUE "tinsel,tony" // Comma separated list of projects that need Edit&Continue to be disabled for co-routine support (the main project is automatically added)
+
+//#define ADDITIONAL_LIBRARY "" // Add a single library to the list of externally linked libraries
+#define NEEDS_RTTI 0 // Enable RTTI globally
#endif // TOOLS_CREATE_PROJECT_CONFIG_H
diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp
index 8499fec400..a8e09ff5eb 100644
--- a/devtools/create_project/create_project.cpp
+++ b/devtools/create_project/create_project.cpp
@@ -97,30 +97,6 @@ struct FSNode {
};
typedef std::list<FSNode> FileList;
-
-typedef StringList TokenList;
-
-/**
- * Takes a given input line and creates a list of tokens out of it.
- *
- * A token in this context is separated by whitespaces. A special case
- * are quotation marks though. A string inside quotation marks is treated
- * as single token, even when it contains whitespaces.
- *
- * Thus for example the input:
- * foo bar "1 2 3 4" ScummVM
- * will create a list with the following entries:
- * "foo", "bar", "1 2 3 4", "ScummVM"
- * As you can see the quotation marks will get *removed* too.
- *
- * You can also use this with non-whitespace by passing another separator
- * character (e.g. ',').
- *
- * @param input The text to be tokenized.
- * @param separator The token separator.
- * @return A list of tokens.
- */
-TokenList tokenize(const std::string &input, char separator = ' ');
} // End of anonymous namespace
enum ProjectType {
@@ -526,7 +502,7 @@ int main(int argc, char *argv[]) {
projectWarnings["agos"].push_back("4511");
projectWarnings["dreamweb"].push_back("4355");
-
+
projectWarnings["lure"].push_back("4189");
projectWarnings["lure"].push_back("4355");
@@ -787,6 +763,7 @@ bool parseEngine(const std::string &line, EngineDesc &engine) {
return true;
}
+} // End of anonymous namespace
TokenList tokenize(const std::string &input, char separator) {
TokenList result;
@@ -819,7 +796,6 @@ TokenList tokenize(const std::string &input, char separator) {
return result;
}
-} // End of anonymous namespace
namespace {
const Feature s_features[] = {
diff --git a/devtools/create_project/create_project.h b/devtools/create_project/create_project.h
index b4eda8f8d2..de77793ee7 100644
--- a/devtools/create_project/create_project.h
+++ b/devtools/create_project/create_project.h
@@ -31,6 +31,30 @@
typedef std::list<std::string> StringList;
+typedef StringList TokenList;
+
+/**
+ * Takes a given input line and creates a list of tokens out of it.
+ *
+ * A token in this context is separated by whitespaces. A special case
+ * are quotation marks though. A string inside quotation marks is treated
+ * as single token, even when it contains whitespaces.
+ *
+ * Thus for example the input:
+ * foo bar "1 2 3 4" ScummVM
+ * will create a list with the following entries:
+ * "foo", "bar", "1 2 3 4", "ScummVM"
+ * As you can see the quotation marks will get *removed* too.
+ *
+ * You can also use this with non-whitespace by passing another separator
+ * character (e.g. ',').
+ *
+ * @param input The text to be tokenized.
+ * @param separator The token separator.
+ * @return A list of tokens.
+ */
+TokenList tokenize(const std::string &input, char separator = ' ');
+
/**
* Structure to describe a game engine to be built into ScummVM.
*
diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp
index c797770955..0f77d91852 100644
--- a/devtools/create_project/msbuild.cpp
+++ b/devtools/create_project/msbuild.cpp
@@ -241,9 +241,11 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
// Check for project-specific warnings:
std::map<std::string, StringList>::iterator warningsIterator = _projectWarnings.find(name);
+ bool enableLanguageExtensions = find(_enableLanguageExtensions.begin(), _enableLanguageExtensions.end(), name) != _enableLanguageExtensions.end();
+ bool disableEditAndContinue = find(_disableEditAndContinue.begin(), _disableEditAndContinue.end(), name) != _disableEditAndContinue.end();
// Nothing to add here, move along!
- if (!setup.devTools && name != setup.projectName && name != "sword25" && name != "scummvm" && name != "grim" && warningsIterator == _projectWarnings.end())
+ if (!setup.devTools && name != setup.projectName && !enableLanguageExtensions && !disableEditAndContinue && warningsIterator == _projectWarnings.end())
return;
std::string warnings = "";
@@ -254,16 +256,17 @@ void MSBuildProvider::outputProjectSettings(std::ofstream &project, const std::s
project << "\t<ItemDefinitionGroup Condition=\"'$(Configuration)|$(Platform)'=='" << configuration << "|" << (isWin32 ? "Win32" : "x64") << "'\">\n"
"\t\t<ClCompile>\n";
- // Compile configuration
- if (setup.devTools || name == setup.projectName || name == "sword25" || name == "grim") {
+ // Language Extensions
+ if (setup.devTools || name == setup.projectName || enableLanguageExtensions)
project << "\t\t\t<DisableLanguageExtensions>false</DisableLanguageExtensions>\n";
- if (name == setup.projectName && !isRelease)
- project << "\t\t\t<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\n";
- } else {
- if (warningsIterator != _projectWarnings.end())
- project << "\t\t\t<DisableSpecificWarnings>" << warnings << ";%(DisableSpecificWarnings)</DisableSpecificWarnings>\n";
- }
+ // Edit and Continue
+ if ((name == setup.projectName || disableEditAndContinue) && !isRelease)
+ project << "\t\t\t<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\n";
+
+ // Warnings
+ if (warningsIterator != _projectWarnings.end())
+ project << "\t\t\t<DisableSpecificWarnings>" << warnings << ";%(DisableSpecificWarnings)</DisableSpecificWarnings>\n";
project << "\t\t</ClCompile>\n";
diff --git a/devtools/create_project/msvc.cpp b/devtools/create_project/msvc.cpp
index 96eaf643d1..b8d2401af9 100644
--- a/devtools/create_project/msvc.cpp
+++ b/devtools/create_project/msvc.cpp
@@ -33,6 +33,9 @@ namespace CreateProjectTool {
//////////////////////////////////////////////////////////////////////////
MSVCProvider::MSVCProvider(StringList &global_warnings, std::map<std::string, StringList> &project_warnings, const int version)
: ProjectProvider(global_warnings, project_warnings, version) {
+
+ _enableLanguageExtensions = tokenize(ENABLE_LANGUAGE_EXTENSIONS, ',');
+ _disableEditAndContinue = tokenize(DISABLE_EDIT_AND_CONTINUE, ',');
}
void MSVCProvider::createWorkspace(const BuildSetup &setup) {
@@ -75,10 +78,10 @@ void MSVCProvider::createWorkspace(const BuildSetup &setup) {
solution << "Global\n"
"\tGlobalSection(SolutionConfigurationPlatforms) = preSolution\n"
"\t\tDebug|Win32 = Debug|Win32\n"
- "\t\tAnalysis|Win32 = Analysis|Win32\n"
+ "\t\tAnalysis|Win32 = Analysis|Win32\n"
"\t\tRelease|Win32 = Release|Win32\n"
"\t\tDebug|x64 = Debug|x64\n"
- "\t\tAnalysis|x64 = Analysis|x64\n"
+ "\t\tAnalysis|x64 = Analysis|x64\n"
"\t\tRelease|x64 = Release|x64\n"
"\tEndGlobalSection\n"
"\tGlobalSection(ProjectConfigurationPlatforms) = postSolution\n";
@@ -86,14 +89,14 @@ void MSVCProvider::createWorkspace(const BuildSetup &setup) {
for (UUIDMap::const_iterator i = _uuidMap.begin(); i != _uuidMap.end(); ++i) {
solution << "\t\t{" << i->second << "}.Debug|Win32.ActiveCfg = Debug|Win32\n"
"\t\t{" << i->second << "}.Debug|Win32.Build.0 = Debug|Win32\n"
- "\t\t{" << i->second << "}.Analysis|Win32.ActiveCfg = Analysis|Win32\n"
- "\t\t{" << i->second << "}.Analysis|Win32.Build.0 = Analysis|Win32\n"
+ "\t\t{" << i->second << "}.Analysis|Win32.ActiveCfg = Analysis|Win32\n"
+ "\t\t{" << i->second << "}.Analysis|Win32.Build.0 = Analysis|Win32\n"
"\t\t{" << i->second << "}.Release|Win32.ActiveCfg = Release|Win32\n"
"\t\t{" << i->second << "}.Release|Win32.Build.0 = Release|Win32\n"
"\t\t{" << i->second << "}.Debug|x64.ActiveCfg = Debug|x64\n"
"\t\t{" << i->second << "}.Debug|x64.Build.0 = Debug|x64\n"
- "\t\t{" << i->second << "}.Analysis|x64.ActiveCfg = Analysis|x64\n"
- "\t\t{" << i->second << "}.Analysis|x64.Build.0 = Analysis|x64\n"
+ "\t\t{" << i->second << "}.Analysis|x64.ActiveCfg = Analysis|x64\n"
+ "\t\t{" << i->second << "}.Analysis|x64.Build.0 = Analysis|x64\n"
"\t\t{" << i->second << "}.Release|x64.ActiveCfg = Release|x64\n"
"\t\t{" << i->second << "}.Release|x64.Build.0 = Release|x64\n";
}
@@ -139,7 +142,7 @@ void MSVCProvider::createGlobalProp(const BuildSetup &setup) {
StringList x64EngineDefines = getEngineDefines(setup.engines);
x64Defines.splice(x64Defines.end(), x64EngineDefines);
- // HACK: This definitly should not be here, but otherwise we would not define SDL_BACKEND for x64.
+ // HACK: This definitely should not be here, but otherwise we would not define SDL_BACKEND for x64.
x64Defines.push_back("WIN32");
x64Defines.push_back("SDL_BACKEND");
@@ -168,7 +171,7 @@ std::string MSVCProvider::getPostBuildEvent(bool isWin32, bool createInstaller)
cmdLine += (isWin32) ? "x86" : "x64";
- cmdLine += " %SCUMMVM_LIBS% ";
+ cmdLine += " %" LIBS_DEFINE "% ";
// Specify if installer needs to be built or not
cmdLine += (createInstaller ? "1" : "0");
diff --git a/devtools/create_project/msvc.h b/devtools/create_project/msvc.h
index 0a994667fa..5a854b596a 100644
--- a/devtools/create_project/msvc.h
+++ b/devtools/create_project/msvc.h
@@ -32,6 +32,8 @@ public:
MSVCProvider(StringList &global_warnings, std::map<std::string, StringList> &project_warnings, const int version);
protected:
+ StringList _enableLanguageExtensions;
+ StringList _disableEditAndContinue;
void createWorkspace(const BuildSetup &setup);
diff --git a/devtools/create_project/scripts/postbuild.cmd b/devtools/create_project/scripts/postbuild.cmd
index d78119d058..8b70ec3dd8 100644
--- a/devtools/create_project/scripts/postbuild.cmd
+++ b/devtools/create_project/scripts/postbuild.cmd
@@ -24,8 +24,10 @@ echo Copying data files
echo.
xcopy /F /Y "%~4/lib/%~3/SDL.dll" "%~2" 1>NUL 2>&1
-xcopy /F /Y "%~4/lib/%~3/freetype6.dll" "%~2" 1>NUL 2>&1
+xcopy /F /Y "%~4/lib/%~3/freetype6.dll" "%~2" 1>NUL 2>&1
xcopy /F /Y "%~1/backends/vkeybd/packs/vkeybd_default.zip" "%~2" 1>NUL 2>&1
+xcopy /F /Y "%~1/gui/themes/translations.dat" "%~2" 1>NUL 2>&1
+
if "%~5"=="0" goto done
diff --git a/devtools/create_project/visualstudio.cpp b/devtools/create_project/visualstudio.cpp
index c301e78ad1..de2df96d78 100644
--- a/devtools/create_project/visualstudio.cpp
+++ b/devtools/create_project/visualstudio.cpp
@@ -103,6 +103,9 @@ void VisualStudioProvider::createProjectFile(const std::string &name, const std:
outputConfiguration(project, setup, libraries, "Release", "x64", "64", false);
} else {
+ bool enableLanguageExtensions = find(_enableLanguageExtensions.begin(), _enableLanguageExtensions.end(), name) != _enableLanguageExtensions.end();
+ bool disableEditAndContinue = find(_disableEditAndContinue.begin(), _disableEditAndContinue.end(), name) != _disableEditAndContinue.end();
+
std::string warnings = "";
if (warningsIterator != _projectWarnings.end())
for (StringList::const_iterator i = warningsIterator->second.begin(); i != warningsIterator->second.end(); ++i)
@@ -110,9 +113,8 @@ void VisualStudioProvider::createProjectFile(const std::string &name, const std:
std::string toolConfig;
toolConfig = (!warnings.empty() ? "DisableSpecificWarnings=\"" + warnings + "\"" : "");
- toolConfig += (name == setup.projectName ? "DebugInformationFormat=\"3\" " : "");
- toolConfig += (name == "sword25" ? "DisableLanguageExtensions=\"false\" " : "");
- toolConfig += (name == "grim" ? "DisableLanguageExtensions=\"false\" " : "");
+ toolConfig += (disableEditAndContinue ? "DebugInformationFormat=\"3\" " : "");
+ toolConfig += (enableLanguageExtensions ? "DisableLanguageExtensions=\"false\" " : "");
// Win32
outputConfiguration(setup, project, toolConfig, "Debug", "Win32", "");
diff --git a/devtools/create_project/xcode.cpp b/devtools/create_project/xcode.cpp
index 0574814e02..a9b8e7a752 100644
--- a/devtools/create_project/xcode.cpp
+++ b/devtools/create_project/xcode.cpp
@@ -206,7 +206,7 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p
// Create group
std::string name = getLastPathComponent(dir.name);
Object *group = new Object(this, "PBXGroup_" + name , "PBXGroup", "PBXGroup", "", name);
-
+
// List of children
Property children;
children.hasOrder = true;
@@ -225,7 +225,7 @@ void XCodeProvider::writeFileListToProject(const FileNode &dir, std::ofstream &p
ADD_SETTING_ORDER_NOVALUE(children, getHash(id), node->name, order++);
ADD_BUILD_FILE(id, node->name, node->name + " in Sources");
ADD_FILE_REFERENCE(node->name, property);
-
+
// Process child nodes
if (!node->children.empty())
writeFileListToProject(*node, projectFile, indentation + 1, duplicate, objPrefix + node->name + '_', filePrefix + node->name + '/');
@@ -917,7 +917,7 @@ std::string XCodeProvider::writeSetting(const std::string &variable, const Setti
for (unsigned int i = 0, count = 0; i < setting.entries.size(); ++i) {
std::string value = setting.entries.at(i).value;
- if(!value.empty()) {
+ if (!value.empty()) {
if (count++ > 0)
output += "," + newline;
diff --git a/devtools/create_tony/create_tony.cpp b/devtools/create_tony/create_tony.cpp
new file mode 100644
index 0000000000..f2d086c083
--- /dev/null
+++ b/devtools/create_tony/create_tony.cpp
@@ -0,0 +1,183 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * This is a utility for storing all the hardcoded data of Tony Tough in a separate
+ * data file, used by the game engine
+ */
+
+// Disable symbol overrides so that we can use system headers.
+#define FORBIDDEN_SYMBOL_ALLOW_ALL
+
+// HACK to allow building with the SDL backend on MinGW
+// see bug #1800764 "TOOLS: MinGW tools building broken"
+#ifdef main
+#undef main
+#endif // main
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "common/scummsys.h"
+#include "common/events.h"
+
+#include "create_tony.h"
+#include "staticdata.h"
+
+static void writeByte(FILE *fp, uint8 b) {
+ fwrite(&b, 1, 1, fp);
+}
+
+static void writeUint16BE(FILE *fp, uint16 value) {
+ writeByte(fp, (uint8)(value >> 8));
+ writeByte(fp, (uint8)(value & 0xFF));
+}
+
+void writeSint16BE(FILE *fp, int16 value) {
+ writeUint16BE(fp, (uint16)value);
+}
+
+static void writeUint32BE(FILE *fp, uint32 value) {
+ writeByte(fp, (uint8)(value >> 24));
+ writeByte(fp, (uint8)((value >> 16) & 0xFF));
+ writeByte(fp, (uint8)((value >> 8) & 0xFF));
+ writeByte(fp, (uint8)(value & 0xFF));
+}
+
+void writeSint32BE(FILE *fp, int32 value) {
+ writeUint32BE(fp, (uint16)value);
+}
+
+int main(int argc, char *argv[]) {
+ FILE *outFile;
+
+ outFile = fopen("tony.dat", "wb");
+
+ // Write header
+ fwrite("TONY", 4, 1, outFile);
+
+ writeByte(outFile, TONY_DAT_VER_MAJ);
+ writeByte(outFile, TONY_DAT_VER_MIN);
+
+ // game versions/variants
+ writeUint16BE(outFile, NUM_VARIANTS);
+
+ // Italian
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogIta[i]);
+ writeSint16BE(outFile, _lTableDialogIta[i]);
+ writeSint16BE(outFile, _cTableMaccIta[i]);
+ writeSint16BE(outFile, _lTableMaccIta[i]);
+ writeSint16BE(outFile, _cTableCredIta[i]);
+ writeSint16BE(outFile, _lTableCredIta[i]);
+ writeSint16BE(outFile, _cTableObjIta[i]);
+ writeSint16BE(outFile, _lTableObjIta[i]);
+ }
+
+ // Polish
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogPol[i]);
+ writeSint16BE(outFile, _lTableDialogPol[i]);
+ writeSint16BE(outFile, _cTableMaccPol[i]);
+ writeSint16BE(outFile, _lTableMaccPol[i]);
+ writeSint16BE(outFile, _cTableCredPol[i]);
+ writeSint16BE(outFile, _lTableCredPol[i]);
+ writeSint16BE(outFile, _cTableObjPol[i]);
+ writeSint16BE(outFile, _lTableObjPol[i]);
+ }
+
+ //Russian
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogRus[i]);
+ writeSint16BE(outFile, _lTableDialogRus[i]);
+ writeSint16BE(outFile, _cTableMaccRus[i]);
+ writeSint16BE(outFile, _lTableMaccRus[i]);
+ writeSint16BE(outFile, _cTableCredRus[i]);
+ writeSint16BE(outFile, _lTableCredRus[i]);
+ writeSint16BE(outFile, _cTableObjRus[i]);
+ writeSint16BE(outFile, _lTableObjRus[i]);
+ }
+
+ // Czech
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogCze[i]);
+ writeSint16BE(outFile, _lTableDialogCze[i]);
+ writeSint16BE(outFile, _cTableMaccCze[i]);
+ writeSint16BE(outFile, _lTableMaccCze[i]);
+ writeSint16BE(outFile, _cTableCredCze[i]);
+ writeSint16BE(outFile, _lTableCredCze[i]);
+ writeSint16BE(outFile, _cTableObjCze[i]);
+ writeSint16BE(outFile, _lTableObjCze[i]);
+ }
+
+ // French
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogFra[i]);
+ writeSint16BE(outFile, _lTableDialogFra[i]);
+ writeSint16BE(outFile, _cTableMaccFra[i]);
+ writeSint16BE(outFile, _lTableMaccFra[i]);
+ writeSint16BE(outFile, _cTableCredFra[i]);
+ writeSint16BE(outFile, _lTableCredFra[i]);
+ writeSint16BE(outFile, _cTableObjFra[i]);
+ writeSint16BE(outFile, _lTableObjFra[i]);
+ }
+
+ // Deutsch
+ for (int i = 0; i < 256; i++) {
+ writeSint16BE(outFile, _cTableDialogDeu[i]);
+ writeSint16BE(outFile, _lTableDialogDeu[i]);
+ writeSint16BE(outFile, _cTableMaccDeu[i]);
+ writeSint16BE(outFile, _lTableMaccDeu[i]);
+ writeSint16BE(outFile, _cTableCredDeu[i]);
+ writeSint16BE(outFile, _lTableCredDeu[i]);
+ writeSint16BE(outFile, _cTableObjDeu[i]);
+ writeSint16BE(outFile, _lTableObjDeu[i]);
+ }
+
+ fclose(outFile);
+ return 0;
+}
+
+void writeTextArray(FILE *outFile, const char *textArray[], int nbrText) {
+ int len, len1, pad;
+ uint8 padBuf[DATAALIGNMENT];
+
+ for (int i = 0; i < DATAALIGNMENT; i++)
+ padBuf[i] = 0;
+
+ writeUint16BE(outFile, nbrText);
+ len = DATAALIGNMENT - 2;
+ for (int i = 0; i < nbrText; i++) {
+ len1 = strlen(textArray[i]) + 1;
+ pad = DATAALIGNMENT - (len1 + 2) % DATAALIGNMENT;
+ len += 2 + len1 + pad;
+ }
+ writeUint16BE(outFile, len);
+
+ fwrite(padBuf, DATAALIGNMENT - 2, 1, outFile); // padding
+ for (int i = 0; i < nbrText; i++) {
+ len = strlen(textArray[i]) + 1;
+ pad = DATAALIGNMENT - (len + 2) % DATAALIGNMENT;
+
+ writeUint16BE(outFile, len + pad + 2);
+ fwrite(textArray[i], len, 1, outFile);
+ fwrite(padBuf, pad, 1, outFile);
+ }
+}
diff --git a/devtools/create_tony/create_tony.h b/devtools/create_tony/create_tony.h
new file mode 100644
index 0000000000..3075835bd9
--- /dev/null
+++ b/devtools/create_tony/create_tony.h
@@ -0,0 +1,44 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef CREATE_TONY_H
+#define CREATE_TONY_H
+
+#define ARRAYSIZE(x) ((int)(sizeof(x) / sizeof(x[0])))
+
+#define DATAALIGNMENT 4
+
+#define TONY_DAT_VER_MAJ 0 // 1 byte
+#define TONY_DAT_VER_MIN 3 // 1 byte
+
+// Number of variants of the game. For the moment, it's the same
+// as the number of languages
+#define NUM_VARIANTS 6
+
+typedef unsigned char uint8;
+typedef unsigned char byte;
+typedef unsigned short uint16;
+typedef signed short int16;
+
+void writeTextArray(FILE *outFile, const char *textData[], int nbrText);
+
+#endif // CREATE_TONY_H
diff --git a/devtools/create_tony/module.mk b/devtools/create_tony/module.mk
new file mode 100644
index 0000000000..6ff919032b
--- /dev/null
+++ b/devtools/create_tony/module.mk
@@ -0,0 +1,10 @@
+MODULE := devtools/create_tony
+
+MODULE_OBJS := \
+ create_tony.o
+
+# Set the name of the executable
+TOOL_EXECUTABLE := create_tony
+
+# Include common rules
+include $(srcdir)/rules.mk
diff --git a/devtools/create_tony/staticdata.h b/devtools/create_tony/staticdata.h
new file mode 100644
index 0000000000..fff977d8dc
--- /dev/null
+++ b/devtools/create_tony/staticdata.h
@@ -0,0 +1,1370 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ */
+
+#ifndef STATICDATA_H
+#define STATICDATA_H
+
+const int _cTableDialogIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 108, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, 93, 99,
+ 107, 106, 89, 89, -1, 94, 90, -1, -1, 95,
+ -1, 104, 91, -1, -1, -1, 96, -1, 109, 92,
+ -1, -1, 97, -1, -1, 98};
+
+const int _lTableDialogIta[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableDialogPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 124, -1, -1, 128, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 125, -1, -1, 129,
+ -1, -1, -1, 118, -1, 112, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, 126, -1, -1, -1, 119,
+ -1, -1, -1, -1, -1, 113, -1, 85, -1, -1,
+ -1, 127, -1, -1, -1, -1, -1, -1, 114, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, 120,
+ -1, 122, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, 93, 99,
+ 115, 106, 89, 89, 117, 94, 90, -1, -1, 95,
+ -1, 121, 91, 123, -1, -1, 96, -1, 109, 92,
+ -1, -1, 97, -1, -1, 98};
+
+const int _lTableDialogPol[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 12, 13, 13, 14, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 12, 13, 13, 13,
+ 13, 13, 13, 14, 13, 14, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 9,
+ 13, 13, 13, 13, 13, 16, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 12, 13,
+ 13, 13, 11, 13, 13, 13, 13, 13, 13, 10,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 12, 13, 13, 13, 12, 13, 13, 13, 13, 13,
+ 13, 11, 13, 11, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableDialogRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, 136, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 169, -1, -1, 85, -1, -1,
+ -1, -1, 130, 131, 132, 133, 134, 135, 137, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
+ 149, 150, 151, 152, 153, 154, 155, 156, 158, 159,
+ 157, 160, 161, 162, 163, 164, 165, 166, 167, 168,
+ 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
+ 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
+ 191, 192, 190, 193, 194, 195};
+
+const int _lTableDialogRus[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 11, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 12, 13, 13, 13, 13, 13,
+ 13, 13, 13, 15, 15, 11, 15, 11, 15, 10,
+ 13, 13, 12, 13, 14, 14, 13, 11, 12, 12,
+ 18, 11, 13, 12, 13, 12, 17, 18, 18, 19,
+ 16, 11, 16, 14, 14, 15, 10, 12, 13, 12,
+ 12, 10, 10, 10, 11, 12, 12, 12, 12, 10,
+ 11, 10, 14, 8, 11, 11, 12, 10, 15, 16,
+ 16, 16, 14, 9, 15, 14};
+
+const int _cTableDialogCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 197, -1,
+ -1, 206, 200, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 212, -1, -1, 221, 215, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, 202, -1, -1, -1, -1, 108, -1,
+ 198, 204, -1, -1, 196, 203, -1, 205, -1, 105,
+ 207, 208, -1, -1, -1, -1, 199, 209, 210, -1,
+ -1, 201, -1, -1, 88, 217, -1, -1, 93, 99,
+ 107, 106, 213, 219, -1, 94, 211, 218, -1, 220,
+ -1, 104, 222, 223, -1, -1, 96, -1, 214, 224,
+ 225, -1, 97, 216, -1, 98};
+
+const int _lTableDialogCze[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 12, 13,
+ 13, 19, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 12, 13, 13, 16, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 12, 11, 13, 13, 11, 11, 13, 15, 13, 13,
+ 10, 13, 13, 13, 13, 13, 14, 13, 13, 13,
+ 13, 11, 13, 13, 13, 15, 13, 13, 13, 13,
+ 13, 13, 12, 12, 13, 13, 12, 7, 13, 17,
+ 13, 13, 11, 11, 13, 13, 13, 13, 12, 13,
+ 13, 13, 13, 11, 13, 13};
+
+const int _cTableDialogFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 108, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, 226, -1, 93, 99,
+ 107, 106, 89, 227, 228, 94, 90, -1, 229, 95,
+ -1, 104, 91, -1, 232, -1, 233, -1, 109, 230,
+ -1, 231, 97, -1, -1, 98};
+
+const int _lTableDialogFra[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 15, 13, 13, 13,
+ 13, 13, 13, 12, 12, 13, 13, 13, 9, 13,
+ 13, 13, 13, 13, 11, 13, 11, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableDialogDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 71, 77, -1, 80, 81, 82, 111,
+ 75, 76, -1, 68, 63, 66, 64, 78, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 65, 62,
+ 69, 83, 70, 73, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 77, 67, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 79, -1, -1, -1, -1, -1, 87,
+ -1, 84, -1, -1, 86, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
+ -1, -1, -1, -1, -1, -1, 236, -1, 108, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
+ -1, -1, -1, -1, 237, -1, -1, -1, -1, -1,
+ 238, -1, -1, 234, 88, -1, -1, -1, 93, 99,
+ 107, 106, 89, 89, -1, 94, 90, -1, -1, 95,
+ -1, 104, 91, -1, -1, -1, 96, -1, 109, 92,
+ -1, -1, 97, -1, -1, 98};
+
+const int _lTableDialogDeu[] = {
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 9, 5, 5, 13, 13, 13, 13, 5,
+ 7, 7, 13, 13, 5, 13, 5, 13, 13, 13,
+ 13, 13, 10, 13, 13, 13, 13, 13, 5, 5,
+ 13, 13, 13, 10, 13, 13, 13, 13, 13, 10,
+ 11, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 5, 13, 13, 14, 15, 12,
+ 13, 12, 13, 13, 13, 6, 13, 13, 5, 16,
+ 12, 11, 11, 13, 13, 12, 13, 12, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 15, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
+ 13, 13, 13, 13, 13, 13};
+
+const int _cTableMaccIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, -1, -1, 87, 88,
+ -1, 101, 89, -1, -1, 90, 92, -1, -1, 93,
+ -1, 76, 95, -1, -1, -1, 96, -1, -1, 98,
+ -1, -1, 99, -1, -1, 85};
+
+const int _lTableMaccIta[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableMaccPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 114, -1, -1, 118, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 115, -1, -1, 119,
+ -1, -1, -1, 108, -1, 102, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, 109,
+ -1, -1, -1, -1, -1, 103, -1, -1, -1, -1,
+ -1, 117, -1, -1, -1, -1, -1, -1, 104, -1,
+ -1, -1, 106, -1, -1, -1, -1, -1, -1, 110,
+ -1, 112, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, -1, -1, 87, 88,
+ 105, 101, 89, -1, 107, 90, 92, -1, -1, 93,
+ -1, 111, 95, 113, -1, -1, 96, -1, -1, 98,
+ -1, -1, 99, -1, -1, 85};
+
+const int _lTableMaccPol[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 12, 10, 10, 14, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 12, 10, 10, 13,
+ 10, 10, 10, 14, 10, 14, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 13, 10, 10, 10, 9,
+ 10, 10, 10, 10, 10, 16, 10, 10, 10, 10,
+ 10, 13, 10, 10, 10, 10, 10, 10, 12, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 10,
+ 10, 13, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 12, 10, 10, 10, 12, 10, 10, 10, 10, 10,
+ 10, 11, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableMaccRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 126, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 159, -1, -1, -1, -1, -1,
+ -1, -1, 120, 121, 122, 123, 124, 125, 127, 128,
+ 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 148, 149,
+ 147, 150, 151, 152, 153, 154, 155, 156, 157, 158,
+ 160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
+ 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
+ 181, 182, 180, 183, 184, 185};
+
+const int _lTableMaccRus[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 9, 10, 10, 10, 10, 10,
+ 10, 10, 11, 11, 11, 9, 10, 10, 11, 10,
+ 10, 10, 11, 9, 11, 10, 11, 8, 10, 10,
+ 11, 11, 11, 11, 10, 10, 10, 10, 11, 11,
+ 11, 11, 11, 11, 10, 10, 11, 10, 9, 10,
+ 10, 9, 11, 11, 11, 11, 11, 11, 10, 9,
+ 11, 10, 9, 11, 10, 11, 10, 10, 11, 11,
+ 10, 10, 10, 9, 11, 11};
+
+const int _cTableMaccCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 187, -1,
+ -1, 196, 190, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 202, -1, -1, 211, 205, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 192, -1, -1, -1, -1, -1, -1,
+ 188, 194, -1, -1, 186, 193, -1, 195, -1, -1,
+ 197, 198, -1, -1, -1, -1, 189, 199, 200, -1,
+ -1, 191, -1, -1, 86, 207, -1, -1, 87, 88,
+ -1, 101, 203, 209, -1, 90, 201, 208, -1, 210,
+ -1, 76, 212, 213, -1, -1, 96, -1, 204, 214,
+ 215, -1, 99, 206, -1, 85};
+
+const int _lTableMaccCze[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 11, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 9, 10, 10, 11, 9, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 9, 10, 11, 10, 10,
+ 11, 11, 10, 10, 10, 10, 11, 11, 11, 10,
+ 10, 11, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 9, 10, 11,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 11,
+ 11, 10, 10, 11, 10, 10};
+
+const int _cTableMaccFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, 226, -1, 87, 88,
+ -1, 101, 228, 227, -1, 90, 92, -1, 229, 93,
+ -1, 76, 95, -1, 232, -1, 233, -1, -1, 230,
+ -1, 231, 99, -1, -1, 85};
+
+const int _lTableMaccFra[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 8, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 11,
+ 10, 11, 10, 10, 10, 10};
+
+const int _cTableMaccDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 62, 64, -1, 65, 66, 67, -1,
+ 69, 70, 74, 75, 78, 81, 79, 84, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 80, 77,
+ 82, 71, 83, 72, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, -1, -1, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 236, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 237, -1, -1, -1, -1, -1,
+ 238, -1, -1, 234, 86, -1, -1, -1, 87, 88,
+ -1, 101, 89, -1, -1, 90, 92, -1, -1, 93,
+ -1, 76, 95, -1, -1, -1, 96, -1, -1, 98,
+ -1, -1, 99, -1, -1, 85};
+
+const int _lTableMaccDeu[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 52, 53, -1, -1, -1, -1,
+ -1, 74, 56, 57, -1, -1, 60, 61, -1, -1,
+ -1, 73, 64, 65, -1, -1, -1, -1, -1, 68,
+ 69, -1, -1, -1, -1, -1};
+
+const int _lTableCredIta[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 124, -1, -1, 128, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 125, -1, -1, 129,
+ -1, -1, -1, 118, -1, 112, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, 126, -1, -1, -1, 119,
+ -1, -1, -1, -1, -1, 113, -1, 87, -1, -1,
+ -1, 127, -1, -1, -1, -1, -1, -1, 114, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, 120,
+ -1, 122, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 52, 53, -1, -1, -1, -1,
+ 115, 74, 56, 57, 117, -1, 60, 61, -1, -1,
+ -1, 121, 64, 123, -1, -1, -1, -1, -1, 68,
+ 69, -1, -1, -1, -1, -1};
+
+const int _lTableCredPol[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 15, 10, 10, 15, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 14, 10, 20, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 15, 10, 10, 10, 11,
+ 10, 10, 10, 10, 10, 12, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 15, 10,
+ 10, 10, 15, 10, 10, 10, 10, 10, 10, 16,
+ 10, 15, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 136, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 169, -1, -1, 87, -1, -1,
+ -1, -1, 130, 131, 132, 133, 134, 135, 137, 138,
+ 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
+ 149, 150, 151, 152, 153, 154, 155, 156, 158, 159,
+ 157, 160, 161, 162, 163, 164, 165, 166, 167, 168,
+ 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
+ 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
+ 191, 192, 190, 193, 194, 195};
+
+const int _lTableCredRus[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 15, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 11, 10, 10, 10, 10, 10,
+ 10, 10, 20, 16, 16, 14, 22, 15, 20, 12,
+ 16, 16, 16, 22, 18, 16, 15, 14, 13, 15,
+ 12, 14, 15, 13, 16, 14, 23, 23, 12, 16,
+ 10, 12, 20, 15, 12, 10, 10, 11, 16, 10,
+ 13, 12, 13, 13, 12, 13, 14, 11, 11, 11,
+ 12, 10, 10, 10, 11, 10, 11, 10, 15, 15,
+ 12, 16, 10, 11, 13, 11};
+
+const int _cTableCredCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 197, -1,
+ -1, 206, 200, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 212, -1, -1, 221, 215, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, 202, -1, -1, -1, -1, -1, -1,
+ 198, 204, -1, -1, 196, 203, -1, 205, -1, -1,
+ 207, 208, -1, -1, -1, -1, 199, 209, 210, -1,
+ -1, 201, -1, -1, 52, 217, -1, -1, -1, -1,
+ -1, 74, 213, 219, -1, -1, 211, 218, -1, 220,
+ -1, 73, 222, 223, -1, -1, -1, -1, 214, 224,
+ 225, -1, -1, 216, -1, -1};
+
+const int _lTableCredCze[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 15, 10,
+ 10, 19, 15, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 11, 10, 10, 12, 11, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 20, 10, 10, 19, 10, 10, 10,
+ 15, 15, 10, 10, 15, 7, 10, 20, 10, 10,
+ 16, 15, 10, 10, 10, 10, 15, 13, 13, 10,
+ 10, 14, 10, 10, 10, 12, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 11, 6, 10, 15,
+ 10, 10, 11, 11, 10, 10, 10, 10, 11, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 52, 53, 226, -1, -1, -1,
+ -1, 74, 56, 227, 228, -1, 60, 61, 229, -1,
+ -1, 73, 64, 65, 232, -1, 233, -1, -1, 230,
+ 69, 231, -1, -1, -1, -1};
+
+const int _lTableCredFra[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 12, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 6, 10,
+ 10, 10, 10, 10, 11, 10, 11, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableCredDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 81, -1, -1, -1, 90, 91, 111,
+ 84, 85, 99, 93, 95, -1, 100, 92, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 89, 94,
+ -1, 97, -1, 79, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 96, 98, -1, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
+ 49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, 86, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 87, -1, -1,
+ -1, -1, -1, -1, -1, -1, 55, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 67, -1, -1, -1, -1, -1,
+ 71, -1, -1, 234, 52, 53, -1, -1, 55, -1,
+ -1, 74, 56, 57, -1, -1 , 60, 61, -1, -1,
+ -1, 73, 64, 65, -1, -1, 67, -1, -1, 68,
+ 69, -1, 71, -1, -1, -1};
+
+const int _lTableCredDeu[] = {
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 11, 10, 10, 10, 10, 10, 10, 5,
+ 10, 10, 10, 10, 5, 10, 5, 10, 12, 8,
+ 10, 11, 12, 11, 12, 10, 11, 10, 5, 5,
+ 10, 10, 10, 10, 10, 19, 15, 14, 13, 14,
+ 13, 16, 15, 5, 8, 15, 13, 17, 15, 14,
+ 12, 14, 14, 15, 11, 12, 12, 16, 12, 13,
+ 14, 10, 10, 10, 9, 10, 10, 11, 9, 9,
+ 10, 9, 8, 9, 10, 5, 6, 12, 6, 14,
+ 10, 11, 11, 9, 9, 9, 6, 9, 10, 14,
+ 9, 10, 9, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 19, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 11, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 10, 10, 10, 10, 10, 10};
+
+const int _cTableObjIta[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 91, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, 85, -1, 61, -1, -1,
+ -1, 92, -1, 69, -1, -1, 70, 71, 86, -1,
+ 72, -1, 87, 73, 75, -1, -1, 76, -1, 89,
+ 78, 90, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, -1, -1, -1, -1, 70, -1,
+ 86, 63, -1, -1, 87, -1, -1, -1, -1, -1,
+ -1, 89, -1, 90, -1, -1, 79, -1, 62, -1,
+ -1, -1, 82, -1, -1, -1};
+
+const int _lTableObjIta[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 15, 26, 26, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 15, 26, 26, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 26, 20, 26, 26, 26, 26,
+ 26, 21, 26, 26, 26, 26, 17, 26, 22, 26,
+ 26, 26, 17, 26, 26, 26, 26, 26, 26, 17,
+ 26, 22, 26, 26, 19, 26, 26, 26, 26, 26,
+ 15, 26, 26, 26, 26, 26, 26, 26, 17, 26,
+ 22, 26, 26, 26, 17, 26, 26, 26, 26, 26,
+ 26, 17, 26, 22, 26, 26, 19, 26, 26, 26,
+ 26, 26, 15, 26, 26, 26};
+
+const int _cTableObjPol[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 91, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, 85, -1, 61, -1, -1,
+ -1, 92, -1, 69, -1, -1, 70, 71, 86, -1,
+ 72, -1, 87, 73, 75, -1, -1, 76, -1, 89,
+ 78, 90, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, -1, -1, -1, -1, 70, -1,
+ 86, 63, -1, -1, 87, -1, -1, -1, -1, -1,
+ -1, 89, -1, 90, -1, -1, 79, -1, 62, -1,
+ -1, -1, 82, -1, -1, -1};
+
+const int _lTableObjPol[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 15, 26, 26, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 15, 26, 26, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 26, 20, 26, 26, 26, 26,
+ 26, 21, 26, 26, 26, 26, 17, 26, 22, 26,
+ 26, 26, 17, 26, 26, 26, 26, 26, 26, 17,
+ 26, 22, 26, 26, 19, 26, 26, 26, 26, 26,
+ 15, 26, 26, 26, 26, 26, 26, 26, 17, 26,
+ 22, 26, 26, 26, 17, 26, 26, 26, 26, 26,
+ 26, 17, 26, 22, 26, 26, 19, 26, 26, 26,
+ 26, 26, 15, 26, 26, 26};
+
+const int _cTableObjRus[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 91, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, 100, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, 100, 85, -1, 61, -1, -1,
+ -1, 92, 94, 95, 96, 97, 98, 99, 101, 102,
+ 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
+ 113, 114, 115, 116, 117, 118, 119, 120, 122, 123,
+ 121, 124, 125, 126, 94, 95, 96, 97, 98, 99,
+ 101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
+ 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
+ 122, 123, 121, 124, 125, 126};
+
+const int _lTableObjRus[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 15, 26, 26, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 15, 26, 26, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 18, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 18, 20, 26, 26, 26, 26,
+ 26, 21, 18, 18, 18, 17, 16, 18, 20, 18,
+ 18, 18, 18, 16, 18, 15, 22, 15, 18, 22,
+ 19, 16, 21, 20, 16, 16, 19, 22, 19, 19,
+ 18, 15, 18, 18, 18, 18, 18, 17, 16, 18,
+ 20, 18, 18, 18, 18, 16, 18, 15, 22, 15,
+ 18, 22, 19, 16, 21, 20, 16, 16, 19, 22,
+ 19, 19, 18, 15, 18, 18};
+
+const int _cTableObjCze[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 128, -1,
+ 91, 137, 131, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 128, -1, 91, 137, 131, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, 85, -1, 61, -1, -1,
+ -1, 92, -1, 133, -1, -1, 70, 71, 86, -1,
+ 129, 135, 87, 73, 127, 134, -1, 136, -1, 89,
+ 138, 139, -1, -1, 79, -1, 130, 140, 141, -1,
+ 82, 132, -1, -1, -1, 133, -1, -1, 70, -1,
+ 86, 63, 129, 135, 87, -1, 127, 134, -1, 136,
+ -1, 89, 138, 139, -1, -1, 79, -1, 130, 140,
+ 141, -1, 82, 132, -1, -1};
+
+const int _lTableObjCze[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 15, 26,
+ 15, 24, 21, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 15, 26, 15, 24, 21, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 26, 20, 26, 26, 26, 26,
+ 26, 21, 26, 18, 26, 26, 17, 26, 22, 26,
+ 22, 17, 17, 26, 17, 19, 26, 23, 26, 17,
+ 17, 22, 26, 26, 19, 26, 18, 16, 16, 26,
+ 15, 16, 26, 26, 26, 18, 26, 26, 17, 26,
+ 22, 26, 22, 17, 17, 26, 17, 19, 26, 23,
+ 26, 17, 17, 22, 26, 26, 19, 26, 18, 16,
+ 16, 26, 15, 16, 26, 26};
+
+const int _cTableObjFra[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 91, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, 85, -1, 61, -1, -1,
+ -1, 92, -1, 69, -1, -1, 70, 71, 86, -1,
+ 72, -1, 87, 73, 75, -1, -1, 76, -1, 89,
+ 78, 90, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, -1, 0, 0, 0, -1, 70, -1,
+ 86, 63, 4, 4, 87, -1, 8, 8, 8, -1,
+ -1, 89, 14, 14, 14, -1, 14, -1, 62, 20,
+ -1, 20, 82, -1, -1, -1};
+
+const int _lTableObjFra[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 15, 26, 26, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 15, 26, 26, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 26, 20, 26, 26, 26, 26,
+ 26, 21, 26, 26, 26, 26, 17, 26, 22, 26,
+ 26, 26, 17, 26, 26, 26, 26, 26, 26, 17,
+ 26, 22, 26, 26, 19, 26, 26, 26, 26, 26,
+ 15, 26, 26, 26, 17, 17, 17, 26, 17, 26,
+ 22, 26, 15, 15, 17, 26, 16, 16, 16, 26,
+ 26, 17, 19, 19, 19, 26, 19, 26, 26, 15,
+ 26, 15, 15, 26, 26, 26};
+
+const int _cTableObjDeu[] = {
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, 51, -1, 53, 54, 55, 50,
+ 47, 48, 57, 41, 36, 40, 38, 46, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 39, 37,
+ 58, 49, 59, 44, -1, 0, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, -1, -1, -1, 56, -1, -1, 0, 1, 2,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 91, -1, -1, 93, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 93,
+ -1, -1, -1, 88, -1, 85, -1, -1, -1, 67,
+ -1, 60, -1, -1, 66, 92, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, 85, -1, 61, -1, -1,
+ -1, 92, -1, 69, -1, -1, 70, 71, 86, -1,
+ 72, -1, 87, 73, 75, -1, -1, 76, -1, 89,
+ 78, 90, -1, -1, 79, -1, -1, 81, -1, -1,
+ 82, -1, -1, 142, -1, -1, -1, -1, 70, -1,
+ 86, 63, -1, -1, 87, -1, -1, -1, -1, -1,
+ -1, 89, -1, 90, -1, -1, 79, -1, 62, -1,
+ -1, -1, 82, -1, -1, -1};
+
+const int _lTableObjDeu[] = {
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 11, 26, 26, 26, 26, 26, 26, 8,
+ 26, 26, 26, 26, 26, 12, 8, 26, 20, 20,
+ 15, 20, 20, 20, 20, 20, 20, 20, 26, 26,
+ 26, 26, 26, 26, 26, 17, 17, 19, 17, 15,
+ 17, 19, 17, 16, 26, 17, 14, 19, 17, 19,
+ 17, 19, 14, 13, 15, 15, 13, 19, 15, 13,
+ 20, 26, 26, 26, 26, 26, 26, 17, 17, 19,
+ 17, 15, 17, 19, 17, 16, 26, 17, 14, 19,
+ 17, 19, 17, 19, 14, 13, 15, 15, 13, 19,
+ 15, 13, 20, 26, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 26, 26, 26, 26,
+ 15, 26, 26, 21, 26, 26, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 26, 15, 26, 26, 21,
+ 26, 26, 26, 19, 26, 20, 26, 26, 26, 26,
+ 26, 26, 26, 26, 26, 21, 26, 26, 26, 19,
+ 26, 26, 26, 26, 26, 20, 26, 26, 26, 26,
+ 26, 21, 26, 26, 26, 26, 17, 26, 22, 26,
+ 26, 26, 17, 26, 26, 26, 26, 26, 26, 17,
+ 26, 22, 26, 26, 19, 26, 26, 26, 26, 26,
+ 15, 26, 26, 24, 26, 26, 26, 26, 17, 26,
+ 22, 26, 26, 26, 17, 26, 26, 26, 26, 26,
+ 26, 17, 26, 22, 26, 26, 19, 26, 26, 26,
+ 26, 26, 15, 26, 26, 26};
+
+#endif
diff --git a/devtools/credits.pl b/devtools/credits.pl
index 411ec3c10d..e04e35d3be 100755
--- a/devtools/credits.pl
+++ b/devtools/credits.pl
@@ -48,7 +48,7 @@ if ($mode eq "") {
$Text::Wrap::unexpand = 0;
if ($mode eq "TEXT") {
$Text::Wrap::columns = 78;
- $max_name_width = 21; # The maximal width of a name.
+ $max_name_width = 23; # The maximal width of a name.
} elsif ($mode eq "CPP") {
$Text::Wrap::columns = 48; # Approx.
}
@@ -69,6 +69,7 @@ sub html_entities_to_ascii {
# &aring; -> aa
# &amp; -> &
# &#322; -> l
+ # &#347; -> s
# &Scaron; -> S
$text =~ s/&aacute;/a/g;
$text =~ s/&eacute;/e/g;
@@ -76,6 +77,7 @@ sub html_entities_to_ascii {
$text =~ s/&oacute;/o/g;
$text =~ s/&oslash;/o/g;
$text =~ s/&#322;/l/g;
+ $text =~ s/&#347;/s/g;
$text =~ s/&Scaron;/S/g;
$text =~ s/&aring;/aa/g;
@@ -101,6 +103,7 @@ sub html_entities_to_cpp {
$text =~ s/&oacute;/\\363/g;
$text =~ s/&oslash;/\\370/g;
$text =~ s/&#322;/l/g;
+ $text =~ s/&#347;/s/g;
$text =~ s/&Scaron;/S/g;
$text =~ s/&aring;/\\345/g;
@@ -356,6 +359,9 @@ sub add_person {
my $min_name_width = length $desc > 0 ? $max_name_width : 0;
$name = $nick if $name eq "";
$name = html_entities_to_ascii($name);
+ if (length $name > $max_name_width) {
+ print STDERR "Warning: max_name_width is too small (" . $max_name_width . " < " . (length $name) . " for \"" . $name. "\")\n";
+ }
$desc = html_entities_to_ascii($desc);
$tab = " " x ($section_level * 2 + 1);
@@ -550,7 +556,9 @@ begin_credits("Credits");
begin_section("DreamWeb");
add_person("Torbj&ouml;rn Andersson", "eriktorbjorn", "");
add_person("Bertrand Augereau", "Tramb", "");
+ add_person("Filippos Karapetis", "[md5]", "");
add_person("Vladimir Menshakov", "whoozle", "(retired)");
+ add_person("Willem Jan Palenstijn", "wjp", "");
end_section();
begin_section("Gob");
@@ -608,6 +616,10 @@ begin_credits("Credits");
add_person("", "peres", "");
end_section();
+ begin_section("Pegasus");
+ add_person("Matthew Hoops", "clone2727", "");
+ end_section();
+
begin_section("Queen");
add_person("David Eriksson", "twogood", "(retired)");
add_person("Gregory Montoir", "cyx", "(retired)");
@@ -675,6 +687,12 @@ begin_credits("Credits");
add_person("Joost Peters", "joostp", "");
end_section();
+ begin_section("Tony");
+ add_person("Arnaud Boutonn&eacute;", "Strangerke", "");
+ add_person("Paul Gilbert", "dreammaster", "");
+ add_person("Alyssa Milburn", "fuzzie", "");
+ end_section();
+
begin_section("Toon");
add_person("Sylvain Dupont", "SylvainTV", "");
end_section();
@@ -692,6 +710,10 @@ begin_credits("Credits");
add_person("Gregory Montoir", "cyx", "(retired)");
end_section();
+ begin_section("Wintermute");
+ add_person("Einar Johan T. S&oslash;m&aring;en", "somaen", "");
+ end_section();
+
end_section();
@@ -930,9 +952,12 @@ begin_credits("Credits");
begin_section("French");
add_person("Thierry Crozat", "criezy", "");
end_section();
+ begin_section("Galician");
+ add_person("Santiago G. Sanz", "sgsanz", "");
+ end_section();
begin_section("German");
add_person("Simon Sawatzki", "SimSaw", "");
- add_person("Lothar Serra Mari", "Lothar93", "");
+ add_person("Lothar Serra Mari", "Lothar93", "(retired)");
end_section();
begin_section("Hungarian");
add_person("Alex Bevilacqua", "", "");
@@ -1059,7 +1084,7 @@ begin_credits("Credits");
# HACK!
- $max_name_width = 16;
+ $max_name_width = 17;
begin_section("Special thanks to");
begin_persons();
@@ -1072,6 +1097,7 @@ begin_credits("Credits");
add_person("Ivan Dubrov", "", "For contributing the initial version of the Gobliiins engine");
add_person("Henrik Engqvist", "qvist", "For generously providing hosting for our buildbot, SVN repository, planet and doxygen sites as well as tons of HD space");
add_person("DOSBox Team", "", "For their awesome OPL2 and OPL3 emulator");
+ add_person("Yusuke Kamiyamane", "", "For contributing some GUI icons ");
add_person("Till Kresslein", "Krest", "For design of modern ScummVM GUI");
add_person("", "Jezar", "For his freeverb filter implementation");
add_person("Jim Leiterman", "", "Various info on his FM-TOWNS/Marty SCUMM ports");
@@ -1082,8 +1108,6 @@ begin_credits("Credits");
add_person("James Woodcock", "", "Soundtrack enhancements");
end_persons();
- add_paragraph("Some icons by Yusuke Kamiyamane");
-
add_paragraph(
"Tony Warriner and everyone at Revolution Software Ltd. for sharing ".
"with us the source of some of their brilliant games, allowing us to ".
@@ -1127,6 +1151,22 @@ begin_credits("Credits");
"Broken Sword 2.5 team for providing sources of their engine and their great ".
"support.");
+ add_paragraph(
+ "Neil Dodwell and David Dew from Creative Reality for providing the source ".
+ "of Dreamweb and for their tremendous support.");
+
+ add_paragraph(
+ "Janusz Wi&#347;niewski and Miroslaw Liminowicz from Laboratorium Komputerowe Avalon ".
+ "for providing full source code for So&#322;tys and letting us redistribute the game.");
+
+ add_paragraph(
+ "Jan Nedoma for providing the sources to the Wintermute-engine, and for his ".
+ "support while porting the engine to ScummVM.");
+
+ add_paragraph(
+ "Bob Bell, Michel Kripalani, Tommy Yune, from Presto Studios for ".
+ "providing the source code of The Journeyman Project: Pegasus Prime.");
+
end_section();
end_credits();
diff --git a/devtools/module.mk b/devtools/module.mk
index 95eca50d18..1d682cdf05 100644
--- a/devtools/module.mk
+++ b/devtools/module.mk
@@ -56,7 +56,7 @@ credits:
$(srcdir)/devtools/credits.pl --text > $(srcdir)/AUTHORS
# $(srcdir)/devtools/credits.pl --rtf > $(srcdir)/Credits.rtf
$(srcdir)/devtools/credits.pl --cpp > $(srcdir)/gui/credits.h
- $(srcdir)/devtools/credits.pl --xml-website > $(srcdir)/../../web/trunk/data/credits.xml
+ $(srcdir)/devtools/credits.pl --xml-website > $(srcdir)/../scummvm-web/data/credits.xml
# $(srcdir)/devtools/credits.pl --xml-docbook > $(srcdir)/../../docs/trunk/docbook/credits.xml
md5scumm: devtools/md5table$(EXEEXT)