Source codes for command line version of Crash Analyser Carbide extension v1.3
authorJussi Ryoma <ext-jussi.s.ryoma@nokia.com>
Wed, 21 Apr 2010 09:51:02 +0300
changeset 2 0c91f0baec58
parent 1 7a31f7298d8f
child 3 045ade241ef5
Source codes for command line version of Crash Analyser Carbide extension v1.3
crashanalysercmd/Libraries/Engine/CrashDebuggerLib/Properties/AssemblyInfo.cs
crashanalysercmd/Libraries/Engine/CrashItemLib/Crash/Header/CIHeader.cs
crashanalysercmd/Libraries/Engine/CrashItemLib/Crash/InfoHW/CIInfoHW.cs
crashanalysercmd/Libraries/Engine/CrashItemLib/CrashItemLib.csproj
crashanalysercmd/Libraries/Engine/CrashItemLib/Sink/CISinkSerializationParameters.cs
crashanalysercmd/Libraries/Engine/ErrorLibrary/ErrorLibrary.cs
crashanalysercmd/Libraries/Engine/ErrorLibrary/ErrorLibraryError.cs
crashanalysercmd/Libraries/Engine/ErrorLibrary/ErrorLibraryLib.csproj
crashanalysercmd/Libraries/Engine/ErrorLibrary/HtmlFormatter.cs
crashanalysercmd/Libraries/Engine/ErrorLibrary/Properties/AssemblyInfo.cs
crashanalysercmd/Libraries/Engine/ErrorLibrary/Properties/Resources.Designer.cs
crashanalysercmd/Libraries/Engine/ErrorLibrary/Properties/Resources.resx
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ALLOC.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ALLOC_COUNT.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Agenda_model.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/BAFL.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/BITGDI.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Bitmap_Utility.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/C32-fault.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CESockIniData.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CHWComm.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CInSock.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CMdaAudioOutputStream.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CONARC.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CONE.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CWAPSession.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Clock.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Comm_Server.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CommsDbServer.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/E32USER-CBase.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/EIKCOCTL.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ESock.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ErrorCodes.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Etel_Server.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Exceptions.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/FBSCLI.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/FSCLIENT_panic.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Form.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/HTTP_COOKIEform.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/HTTP_CORE.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/IMAPServer.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ImageConversion.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/InSock.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Irda_Fault.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/KERN-EXEC.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/KERN.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Kern-Common.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Kern-Heap.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MATX.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MSGS.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MSGS_Client.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MTMUI_Data.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MTUI.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/PLAT_emulator.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/PLAT_generic_Kernel.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Protocol_panic.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Send.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/TCPIP.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Telephony.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/UI_Graphics.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/USER-EXEC.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/USER.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Versit-Parser.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ViewSrv.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/W32.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/WSERV.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/eSock_fault.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/eSock_panic.xml
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/schema.xsd
crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/smlController.xml
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/CrashInfoFilePlugin.csproj
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoDataBlock.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoFileDocument.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoHashBuilder.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoRegisterStorage.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CrashInfoConsts.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/Properties/AssemblyInfo.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/CrashXmlPlugin.csproj
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Header/CXmlSegHeader.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/InfoHW/CXmlSegInfoHW.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Memory/CXmlMemoryInfo.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Stacks/CXmlStack.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Utilities/CXmlExitInfo.cs
crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Utilities/SegConstants.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlCallStack.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlCodeSegData.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlDataBlock.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlFileDocument.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlFileUtilities.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlRegisterStorage.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/PlainTextOutput.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/XmlConsts.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/PluginImplementations/Sink/CXmlFileSink.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/Properties/AssemblyInfo.cs
crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/XmlFilePlugin.csproj
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianDebugLib/Engine/DbgEngine.cs
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianDebugLib/Entity/Configurations/DbgEntityConfigManager.cs
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/Plugins/SLPluginMap/Reader/RVCT/RVCTMapFileReader.cs
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/Plugins/SLPluginMap/Reader/RVCT/RVCTSymbolCreator.cs
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/QueryAPI/SymbolQueryAPI.cs
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianUtils/TextUtilities/Writers/AsyncTextWriters.cs
crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianUtils/Threading/MultiThreadedProcessor.cs
crashanalysercmd/ReleaseNotes.txt
crashanalysercmd/UI/Common/Engine/CrashAnalyserEngine.csproj
crashanalysercmd/UI/Console/CrashAnalyserConsole.csproj.user
crashanalysercmd/UI/Console/CrashAnalyserConsole.sln
crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.csproj
crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.csproj.user
crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.sln
crashanalysercmd/UI/CrashServer/Engine/CACmdLineEngine.cs
crashanalysercmd/UI/CrashServer/Engine/Files/CACmdLineFileSource.cs
crashanalysercmd/UI/CrashServer/Engine/Inputs/CACmdLineInputParameters.cs
crashanalysercmd/UI/Graphical/build.xml
crashanalysercmd/UI/Plugins/CAPluginCrashAnalyser/CAPluginCrashAnalysis.csproj
crashanalysercmd/UI/Plugins/CAPluginCrashAnalyser/CAPluginCrashAnalysis.csproj.user
crashanalysercmd/UI/Test tools/XmlValidator/Properties/AssemblyInfo.cs
crashanalysercmd/UI/Test tools/XmlValidator/Validator.cs
crashanalysercmd/UI/Test tools/XmlValidator/XmlValidator.csproj
--- a/crashanalysercmd/Libraries/Engine/CrashDebuggerLib/Properties/AssemblyInfo.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/Engine/CrashDebuggerLib/Properties/AssemblyInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -1,19 +1,4 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-* 
-* Description:
-*
-*/
+// Copyright (c) 2004-2008 Symbian Software Ltd. All rights reserved.
 using System.Reflection;
 using System.Runtime.CompilerServices;
 using System.Runtime.InteropServices;
--- a/crashanalysercmd/Libraries/Engine/CrashItemLib/Crash/Header/CIHeader.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/Engine/CrashItemLib/Crash/Header/CIHeader.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -61,6 +61,13 @@
             get { return iFileFormatVersion; }
             set { iFileFormatVersion = value; }
         }
+
+        [CIDBAttributeCell("Crash Source", 3)]
+        public int CrashSource
+        {
+            get { return iCrashSource; }
+            set { iCrashSource = value; }
+        }
         #endregion
 
         #region Internal methods
@@ -70,6 +77,7 @@
         private DateTime iCrashTime = new DateTime();
         private TimeSpan iUpTime = new TimeSpan();
         private CIVersionInfo iFileFormatVersion = new CIVersionInfo();
+        private int iCrashSource = -1; // user side = 1, kernel side = 0
         #endregion
     }
 }
--- a/crashanalysercmd/Libraries/Engine/CrashItemLib/Crash/InfoHW/CIInfoHW.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/Engine/CrashItemLib/Crash/InfoHW/CIInfoHW.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -83,6 +83,13 @@
             get { return iSerialNumber; }
             set { iSerialNumber = value; }
         }
+
+        [CIDBAttributeCell("Production Mode", 3)]
+        public int ProductionMode
+        {
+            get { return iPhoneMode; }
+            set { iPhoneMode = value; }
+        }
         #endregion
 
         #region Internal methods
@@ -129,6 +136,8 @@
         private string iProductCode = string.Empty;
         private string iSerialNumber = string.Empty;
         private List<CIVersionInfo> iVersions = new List<CIVersionInfo>();
+        private int iPhoneMode = -1; // production mode = 1, R&D mode = 0
+
         #endregion
     }
 }
--- a/crashanalysercmd/Libraries/Engine/CrashItemLib/CrashItemLib.csproj	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/Engine/CrashItemLib/CrashItemLib.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -1,7 +1,7 @@
 <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
   <PropertyGroup>
     <ProjectType>Local</ProjectType>
-    <ProductVersion>9.0.30729</ProductVersion>
+    <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}</ProjectGuid>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
@@ -264,6 +264,7 @@
     <EmbeddedResource Include="LibResources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>LibResources.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
   </ItemGroup>
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
--- a/crashanalysercmd/Libraries/Engine/CrashItemLib/Sink/CISinkSerializationParameters.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/Engine/CrashItemLib/Sink/CISinkSerializationParameters.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -279,6 +279,13 @@
             get { return iOperationData3; }
             set { iOperationData3 = value; }
         }
+        
+        public bool PlainTextOutput
+        {
+            get { return iPlainTextOutput; }
+            set { iPlainTextOutput = value; }
+        }
+
         #endregion
 
         #region Internal methods
@@ -352,6 +359,7 @@
         private TDetailLevel iDetailLevel = TDetailLevel.EFull;
         private string iFileExtensionSuccess = string.Empty;
         private string iFileExtensionFailed = string.Empty;
+        private bool iPlainTextOutput = false;
         private FileInfo iOutputFile;
         private DirectoryInfo iOutputDirectory;
         private TOutputMode iOutputMode = TOutputMode.EOutputToDirectory;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/ErrorLibrary.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,288 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class XmlErrorLibrary provides methods to read panic description and error description.
+* If the information is not yet parsed from the XML files, it will be read when the error/panic
+* description is asked first time.
+* 
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.IO;
+using System.Xml;
+using System.Collections.Specialized;
+using System.Reflection;
+using System.Resources;
+using System.Collections;
+using System.Globalization;
+
+namespace ErrorLibrary
+{
+    public static class XmlErrorLibrary
+    {
+
+        /**
+         * Returns panic description based on panic category and panic id.
+         * @param category Panic category.
+         * @param id Panic id.
+         * @return Panic description.
+         */
+        public static string GetPanicDescription(string category, string id)
+        {
+            lock (createLock)
+            {
+                if (iPanics == null)
+                {
+                    // Data not loaded, load it:
+                    LoadData();
+                }
+            }
+            
+            if (iPanics != null)
+            {
+                string searchKey = category + id;
+                foreach (ErrorLibraryError error in iPanics)
+                {
+                    if (error.GetSearchKey().Equals(searchKey))
+                    {
+                        return error.GetDescription();
+                    }
+                }
+            }
+            return string.Empty;
+        }
+
+        /**
+         * Loads panic description data from resources (xml-files).
+         */
+        private static void LoadData()
+        {
+
+            ResourceManager resMgr = ErrorLibrary.Properties.Resources.ResourceManager;
+
+
+            if (resMgr == null)
+            {
+                // Resource manager not available, not possible to read resources.
+                return;
+            }
+
+            ResourceSet resSet = resMgr.GetResourceSet(CultureInfo.CurrentCulture, true, true);
+
+            if (resSet == null)
+            {
+                // Resources not available, can not read them.
+                return;
+            }
+
+            IDictionaryEnumerator enumerator = resSet.GetEnumerator();
+
+            createDataStructures();
+
+            while (enumerator.MoveNext())
+            {
+                object obj = enumerator.Value;
+                if (obj is string)
+                {
+                    try
+                    {
+                        loadResources((string)obj);
+                    }
+                    catch (Exception)
+                    {
+                        // Exception reading one file. Try still to read others.
+                    }
+                }
+            }
+        }
+
+        /**
+         * Adds the data from one XML file (i.e. resourceString) to 
+         * data structures.
+         * 
+         * @param resourceString One XML-file as string.
+         */
+        private static void loadResources(string resourceString)
+        {
+            ErrorLibraryError error = null;
+            ErrorLibraryError error2 = null;
+            ErrorLibraryError panic = null;
+
+            string nodeText = "";
+            string categoryDescription = "";
+            string categoryName = "";
+            string panicKey = "";
+            string errorKey1 = "";
+            string errorKey2 = "";
+            string errorComponent = "";
+
+            byte[] xmlByteArray = Encoding.ASCII.GetBytes(resourceString);
+            MemoryStream memoryStream = new MemoryStream(xmlByteArray);
+            XmlTextReader textReader = new XmlTextReader(memoryStream);
+            while (textReader.Read())
+            {
+                XmlNodeType nType = textReader.NodeType;
+                if (nType == XmlNodeType.Text)
+                {
+                    nodeText = textReader.Value;
+                    switch (tagType)
+                    {
+                        case TagType.TagTypeCategoryName:
+                            categoryName = nodeText;
+                            break;
+                        case TagType.TagTypeCategoryDescription:
+                            categoryDescription = HtmlFormatter.formatCategoryDescription(categoryName, nodeText);
+                            break;
+                        case TagType.TagTypePanicId:
+                            panic = new ErrorLibraryError();
+                            panic.SetName(categoryName + " " + nodeText);
+                            panicKey = categoryName + nodeText;
+                            break;
+                        case TagType.TagTypePanicDescription:
+                            panic.SetDescription(HtmlFormatter.formatPanicDescription(panic.ToString(), nodeText));
+                            panic.AddToDescription(categoryDescription);
+                            // iPanics.put(panicKey, panic);
+                            panic.SetSearchKey(panicKey);
+                            iPanics.Add(panic);
+                            panic = null;
+                            panicKey = "";
+                            break;
+                        case TagType.TagTypePanicCategory:
+                            // Do nothing
+                            break;
+                        case TagType.TagTypeErrorName:
+                            error = new ErrorLibraryError();
+                            error.SetName(nodeText);
+                            errorKey1 = nodeText;
+                            break;
+                        case TagType.TagTypeErrorValue:
+                            error.SetDescription(HtmlFormatter.formatErrorDescription(error.ToString(), nodeText));
+                            error2 = new ErrorLibraryError();
+                            error2.SetName(nodeText);
+                            error2.SetDescription(HtmlFormatter.formatErrorDescription(nodeText, error.ToString()));
+                            errorKey2 = nodeText;
+                            break;
+                        case TagType.TagTypeErrorComponent:
+                            errorComponent = nodeText;
+                            break;
+                        case TagType.TagTypeErrorText:
+                            error.AddToDescription(nodeText);
+                            error.AddToDescription(HtmlFormatter.formatErrorComponent(errorComponent));
+                            error2.AddToDescription(nodeText);
+                            error2.AddToDescription(HtmlFormatter.formatErrorComponent(errorComponent));
+                            error.SetSearchKey(errorKey1);
+                            iErrors.Add(error);
+                            error = null;
+                            errorKey1 = "";
+                            error2.SetSearchKey(errorKey2);
+                            iErrors.Add(error2);
+                            error2 = null;
+                            errorKey2 = "";
+                            break;
+                    }
+                }
+                // if node type is an element
+                else if (nType == XmlNodeType.Element)
+                {
+                    string name = textReader.Name.ToString();
+                    nodeText = textReader.Value;
+
+                    if (TAG_CATEGORY_NAME.Equals(name))
+                    {
+                        tagType = TagType.TagTypeCategoryName;
+                    }
+                    else if (TAG_CATEGORY_DESCRIPTION.Equals(name))
+                    {
+                        tagType = TagType.TagTypeCategoryDescription;
+                    }
+                    else if (TAG_PANIC_ID.Equals(name))
+                    {
+                        tagType = TagType.TagTypePanicId;
+                    }
+                    else if (TAG_PANIC_DESCRIPTION.Equals(name))
+                    {
+                        tagType = TagType.TagTypePanicDescription;
+                    }
+                    else if (TAG_PANIC_CATEGORY.Equals(name))
+                    {
+                        tagType = TagType.TagTypePanicCategory;
+                    }
+                    else if (TAG_ERROR_NAME.Equals(name))
+                    {
+                        tagType = TagType.TagTypeErrorName;
+                    }
+                    else if (TAG_ERROR_VALUE.Equals(name))
+                    {
+                        tagType = TagType.TagTypeErrorValue;
+                    }
+                    else if (TAG_ERROR_COMPONENT.Equals(name))
+                    {
+                        tagType = TagType.TagTypeErrorComponent;
+                    }
+                    else if (TAG_ERROR_TEXT.Equals(name))
+                    {
+                        tagType = TagType.TagTypeErrorText;
+                    }
+
+                }
+            }
+
+        }
+
+        /**
+         * Create data structures for panics/errors.
+         */
+        private static void createDataStructures()
+        {
+            iErrors = new ArrayList();
+            iPanics = new ArrayList();
+        }
+
+
+        #region Data members
+
+        private enum TagType
+        {
+            TagTypeCategoryName,
+            TagTypeCategoryDescription,
+            TagTypePanicId,
+            TagTypePanicDescription,
+            TagTypePanicCategory,
+            TagTypeErrorName,
+            TagTypeErrorValue,
+            TagTypeErrorText,
+            TagTypeErrorComponent
+        }
+
+        private static string TAG_CATEGORY_NAME = "category_name";
+        private static string TAG_CATEGORY_DESCRIPTION = "category_description";
+        private static string TAG_PANIC_ID = "panic_id";
+        private static string TAG_PANIC_DESCRIPTION = "panic_description";
+        private static string TAG_PANIC_CATEGORY = "panic_category";
+        private static string TAG_ERROR_NAME = "error_name";
+        private static string TAG_ERROR_VALUE = "error_value";
+        private static string TAG_ERROR_TEXT = "error_text";
+        private static string TAG_ERROR_COMPONENT = "error_component";
+        
+        private static TagType tagType;
+        private static ArrayList iErrors = null;
+        private static ArrayList iPanics = null;
+
+        private static readonly object createLock = new object();
+
+        #endregion
+
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/ErrorLibraryError.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,112 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class ErrorLibraryError holds information of the one error in error library.
+* 
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace ErrorLibrary
+{
+    class ErrorLibraryError
+    {
+        /**
+         * Constructor
+         * @param name error name
+         * @param description error description
+         */
+        public ErrorLibraryError(string key, string name, string description)
+        {
+            searchKey = key;
+            errorName = name;
+            errorDescription = description;
+        }
+
+        /**
+         * Constructor
+         */
+        public ErrorLibraryError()
+        {
+            // for empty ErrorLibraryError creation
+        }
+
+        /**
+         * Set name for an error
+         * @param name error name
+         */
+        public void SetName(string name)
+        {
+            errorName = name;
+        }
+
+        /**
+         * Set description for an error.
+         * @param description error description
+         */
+        public void SetDescription(string description)
+        {
+            errorDescription = description;
+        }
+
+        /**
+         * Adds information to an error description
+         * @param description error description
+         */
+        public void AddToDescription(string description)
+        {
+            errorDescription += description;
+        }
+
+        /**
+         * Overrides ToString. Returns the name of the error.
+         * @return Error name
+         */
+        public override string ToString()
+        {
+            return errorName;
+        }
+
+        /**
+         * Returns the description of the error.
+         * @return Error description
+         */
+        public string GetDescription()
+        {
+            return errorDescription;
+        }
+
+        /**
+         * Sets key which is used in searching.
+         */
+        public void SetSearchKey(string key)
+        {
+            searchKey = key;
+        }
+
+        /**
+         * Gets key which is used in searching.
+         */
+        public string GetSearchKey()
+        {
+            return searchKey;
+        }
+
+        private string searchKey = string.Empty;
+        private string errorName = string.Empty;
+        private string errorDescription = string.Empty;
+
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/ErrorLibraryLib.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,405 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>9.0.21022</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{C4F270B5-5B50-4270-9CDC-1616D9645365}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>ErrorLibrary</RootNamespace>
+    <AssemblyName>ErrorLibrary</AssemblyName>
+    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="ErrorLibrary.cs" />
+    <Compile Include="ErrorLibraryError.cs" />
+    <Compile Include="HtmlFormatter.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Resources.resx</DependentUpon>
+    </Compile>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Agenda_model.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\WSERV.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\ALLOC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\ALLOC_COUNT.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\BAFL.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\BITGDI.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Bitmap_Utility.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\C32-fault.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CESockIniData.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CHWComm.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CInSock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Clock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CMdaAudioOutputStream.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Comm_Server.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CommsDbServer.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CONARC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CONE.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\CWAPSession.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\E32USER-CBase.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\EIKCOCTL.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\ErrorCodes.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\ESock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\eSock_fault.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\eSock_panic.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Etel_Server.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Exceptions.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\FBSCLI.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Form.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\FSCLIENT_panic.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\HTTP_COOKIEform.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\HTTP_CORE.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\ImageConversion.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\IMAPServer.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\InSock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Irda_Fault.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\KERN-EXEC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\KERN.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\MATX.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\MSGS.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\MSGS_Client.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\MTMUI_Data.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\MTUI.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\PLAT_emulator.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\PLAT_generic_Kernel.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Protocol_panic.xml" />
+    <None Include="Data\schema.xsd" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Send.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\smlController.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\symbianPanics.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\TCPIP.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Telephony.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\UI_Graphics.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\USER-EXEC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\USER.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\Versit-Parser.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\ViewSrv.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Data\W32.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
+    </EmbeddedResource>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Agenda_model.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\ALLOC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\ALLOC_COUNT.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\BAFL.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\BITGDI.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Bitmap_Utility.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\C32-fault.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CESockIniData.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CHWComm.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CInSock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Clock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CMdaAudioOutputStream.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Comm_Server.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CommsDbServer.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CONARC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CONE.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\CWAPSession.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\E32USER-CBase.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\EIKCOCTL.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\ErrorCodes.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\ESock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\eSock_fault.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\eSock_panic.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Etel_Server.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Exceptions.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\FBSCLI.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Form.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\FSCLIENT_panic.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\HTTP_COOKIEform.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\HTTP_CORE.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\ImageConversion.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\IMAPServer.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\InSock.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Irda_Fault.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\KERN.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\KERN-EXEC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\MATX.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\MSGS.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\MSGS_Client.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\MTMUI_Data.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\MTUI.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\PLAT_emulator.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\PLAT_generic_Kernel.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Protocol_panic.xml" />
+    <None Include="Resources\schema.xsd" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Send.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\smlController.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\TCPIP.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Telephony.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\UI_Graphics.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\USER.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\USER-EXEC.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Versit-Parser.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\ViewSrv.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\W32.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\WSERV.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Kern-Heap.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Resources\Kern-Common.xml" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/HtmlFormatter.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,86 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class HtmlFormatter is used to format text to HTML format.
+* 
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace ErrorLibrary
+{
+    class HtmlFormatter
+    {
+        /**
+         * Formats a description for a panic category in html format
+         * @param categoryName category name
+         * @param categoryDescription category description
+         * @return category description in html format
+         */
+        public static string formatCategoryDescription(string categoryName, string categoryDescription)
+        {
+            return BOLD + categoryName + BOLD_END + BREAK + BREAK + categoryDescription;
+        }
+
+        /**
+         * Formats a description for an error in html format
+         * @param errorName error name
+         * @param errorDescription error description 
+         * @return error description in html format
+         */
+        public static string formatErrorDescription(string errorName, string errorDescription)
+        {
+            return BOLD + errorName + "  " + errorDescription + BOLD_END + BREAK + BREAK;
+        }
+
+        /**
+         * Formats a description for a panic in html format
+         * @param panicName panic name
+         * @param panicDescription panic description
+         * @return panic description in html format
+         */
+        public static string formatPanicDescription(string panicName, string panicDescription)
+        {
+            return BOLD + panicName + BOLD_END + BREAK + panicDescription + BREAK + BREAK;
+        }
+
+        /**
+         * Formats a panic name to html format
+         * @param categoryName category name
+         * @param panicId panic id
+         * @return panic name in html format
+         */
+        public static string formatPanicName(string categoryName, string panicId)
+        {
+            return BREAK + BREAK + BOLD + categoryName + " - " + panicId + BOLD_END + BREAK;
+        }
+
+        /**
+         * 
+         * @param component
+         * @return
+         */
+        public static string formatErrorComponent(string component)
+        {
+            if (component.Trim().Length < 1)
+                return "";
+            return BREAK + BREAK + BOLD + "Error Component:" + BOLD_END + BREAK + component;
+        }
+
+	    private static string BOLD = "<b>";
+	    private static string BOLD_END = "</b>";
+	    private static string BREAK = "<br>";
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Properties/AssemblyInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("ErrorLibrary")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Nokia")]
+[assembly: AssemblyProduct("ErrorLibrary")]
+[assembly: AssemblyCopyright("Copyright © Nokia 2010")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("f4f669ed-a43f-4d49-98a7-0d392bd78b37")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Properties/Resources.Designer.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,1121 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:2.0.50727.3603
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace ErrorLibrary.Properties {
+    using System;
+    
+    
+    /// <summary>
+    ///   A strongly-typed resource class, for looking up localized strings, etc.
+    /// </summary>
+    // This class was auto-generated by the StronglyTypedResourceBuilder
+    // class via a tool like ResGen or Visual Studio.
+    // To add or remove a member, edit your .ResX file then rerun ResGen
+    // with the /str option, or rebuild your VS project.
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+    internal class Resources {
+        
+        private static global::System.Resources.ResourceManager resourceMan;
+        
+        private static global::System.Globalization.CultureInfo resourceCulture;
+        
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+        internal Resources() {
+        }
+        
+        /// <summary>
+        ///   Returns the cached ResourceManager instance used by this class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Resources.ResourceManager ResourceManager {
+            get {
+                if (object.ReferenceEquals(resourceMan, null)) {
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ErrorLibrary.Properties.Resources", typeof(Resources).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+        
+        /// <summary>
+        ///   Overrides the current thread's CurrentUICulture property for all
+        ///   resource lookups using this strongly typed resource class.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Globalization.CultureInfo Culture {
+            get {
+                return resourceCulture;
+            }
+            set {
+                resourceCulture = value;
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Agenda model&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Agenda model utility panics: &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;The agenda model is in a state inconsistent with an action being requested of it. &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;An entry contai [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Agenda_model {
+            get {
+                return ResourceManager.GetString("Agenda_model", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;ALLOC&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;These panics are raised in debug builds only and are caused when the heap debugging functions detect a memory leak.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt; nnnnnnnn&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;This panic is raised by the &amp;lt;code class=&quot;ApiItem&quot;&amp;gt;RHeap::__DbgMarkEnd()&amp;lt;/code&amp;gt;  and &amp;lt;code class=&quot;ApiItem&quot;&amp;gt;User::__D [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ALLOC {
+            get {
+                return ResourceManager.GetString("ALLOC", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;ALLOC COUNT&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;These panics are only raised in debug builds and are caused when the heap debugging functions detect a memory leak.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt; ALLOC COUNT 1 Expected aaaa Allocated bbbb Ln: ccc ddddd&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;This panic is raised by  &amp;lt;code class=&quot;ApiItem&quot;&amp;gt;RHeap::__DbgMarkCheck()&amp;lt [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ALLOC_COUNT {
+            get {
+                return ResourceManager.GetString("ALLOC_COUNT", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;BAFL&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Basic Application Framework Library (BFL.lib) panics. A number of APIs raise these panics. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;These are:&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;Application Utilities &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;Command Line Parsing &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;Environment Change Notifier &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;Incremental Matcher &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;Interface to Resource Files &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;pan [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string BAFL {
+            get {
+                return ResourceManager.GetString("BAFL", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;BITGDI&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Bitmaps (Graphical device) panics:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;No graphics device specified for use with &amp;lt;code&amp;gt;CFbsBitGc&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;2&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Unused&amp;lt;/p&amp;gt;&lt;/pani [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string BITGDI {
+            get {
+                return ResourceManager.GetString("BITGDI", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Bitmap Utility&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;TImageBitmapUtilPanic:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;ECorrupt&amp;lt;/code&amp;gt; - Data is corrupt cannot continue.&amp;lt;/p&amp;gt;	   &lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///  &lt;/panics&gt;
+        ///&lt;/panic_category&gt;.
+        /// </summary>
+        internal static string Bitmap_Utility {
+            get {
+                return ResourceManager.GetString("Bitmap_Utility", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;C32-fault&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic due to internal error of Serial Comms Server (or &amp;amp;quot;Comms Server&amp;amp;quot;).&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Failed to install active scheduler or error running the scheduler.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;p [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string C32_fault {
+            get {
+                return ResourceManager.GetString("C32_fault", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CESockIniData&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Socket panic when reading esock.ini&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Section name exceeded maximum length&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Variable name exceeded maximum length&amp;lt;/p&amp;gt; 	   &lt;/ [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CESockIniData {
+            get {
+                return ResourceManager.GetString("CESockIniData", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CHWComm&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of ECUART module raised by the Serial Comms Server (or &amp;amp;quot;CommsServer&amp;amp;quot;).&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Bad descriptor passed by client.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;&amp;lt;c [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CHWComm {
+            get {
+                return ResourceManager.GetString("CHWComm", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CInSock&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of TCP/IP relating to socket implementation&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Connectionless socket used when connected type required&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Attempt to send or receive  [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CInSock {
+            get {
+                return ResourceManager.GetString("CInSock", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Clock-client&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panics by the clock library:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Clock is already constructed&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Clock is already constructed&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/pani [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Clock {
+            get {
+                return ResourceManager.GetString("Clock", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CMdaAudioOutputStream&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Audio streaming panics&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;An attempt was made to change the audio stream player&apos;s properties while still writing to the stream.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;2&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CMdaAudioOutputStream {
+            get {
+                return ResourceManager.GetString("CMdaAudioOutputStream", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Comm server&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of client raised by the Serial Comms Server (or &amp;amp;quot;Comms Server&amp;amp;quot;).&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Write request made when request already in progress.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_descript [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Comm_Server {
+            get {
+                return ResourceManager.GetString("Comm_Server", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CommsDbServer&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;CommDb panics:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;CCommsDbTableView::InsertRecord()&amp;lt;/code&amp;gt; called when &amp;lt;code&amp;gt;InsertRecord()&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;UpdateRecord()&amp;lt;/code&amp;gt; has already been made.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
        /// [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CommsDbServer {
+            get {
+                return ResourceManager.GetString("CommsDbServer", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CONARC&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Converter Architecture panics&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;CCnaScanningConverterFinder::NextL()&amp;lt;/code&amp;gt; called before &amp;lt;code&amp;gt;FindAllConvL()&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_descripti [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CONARC {
+            get {
+                return ResourceManager.GetString("CONARC", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CONE&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;User Interface Control Framework panics&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Environment start up error &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;2&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Environment already exists &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/p [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CONE {
+            get {
+                return ResourceManager.GetString("CONE", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;CWAPSession&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;The WAP Stack API can raise panics with the category CWAPSession, and the following codes:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Client made unrecognised request to  WAP server&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string CWAPSession {
+            get {
+                return ResourceManager.GetString("CWAPSession", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;E32USER-CBase&lt;/category_name&gt;
+        ///  &lt;category_description&gt;Panics with this category are raised in user side code by member functions of CBase derived classes that reside in euser.dll. Typically, they are caused by passing bad or contradictory values to class constructors or member functions.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;The thread causing the panic is terminated.&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///	&lt;panic&gt;
+        ///    	&lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///    	&lt;pan [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string E32USER_CBase {
+            get {
+                return ResourceManager.GetString("E32USER_CBase", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;EIKCOCTL&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;TechView Core Controls panics:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Unused&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Environment could not be created&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///    [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string EIKCOCTL {
+            get {
+                return ResourceManager.GetString("EIKCOCTL", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;error_codes&gt;
+        ///  &lt;error&gt;
+        ///    &lt;error_name&gt;KErrNotFound&lt;/error_name&gt;
+        ///    &lt;error_value&gt;-1&lt;/error_value&gt;
+        ///    &lt;error_component&gt;E32  (E32ERR.H)&lt;/error_component&gt;
+        ///    &lt;error_text&gt;Unable to find the specified object&lt;/error_text&gt;
+        ///  &lt;/error&gt;
+        ///  &lt;error&gt;
+        ///    &lt;error_name&gt;KErrGeneral&lt;/error_name&gt;
+        ///    &lt;error_value&gt;-2&lt;/error_value&gt;
+        ///    &lt;error_component&gt;E32  (E32ERR.H)&lt;/error_component&gt;
+        ///    &lt;error_text&gt;General (unspecified) error&lt;/error_text&gt;
+        ///  &lt;/error&gt;
+        ///  &lt;error&gt;
+        ///    &lt;erro [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ErrorCodes {
+            get {
+                return ResourceManager.GetString("ErrorCodes", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;ESock&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of client from Sockets Server&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Unknown socket &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Unused &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ESock {
+            get {
+                return ResourceManager.GetString("ESock", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;eSock fault&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of Sockets Server due to internal Sockets Server error&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Socket server initiation error&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;No comms server available&amp;lt;/p&amp;gt;&lt;/ [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string eSock_fault {
+            get {
+                return ResourceManager.GetString("eSock_fault", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;eSock panic&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of client from Sockets Server due to server error&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;From the TESockCliPanic enumeration.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Failed to create Sockets Server&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_descri [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string eSock_panic {
+            get {
+                return ResourceManager.GetString("eSock_panic", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Etel Server&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic caused by incorrect use of the ETel Core API- e.g. passing bad or contradictory values to class constructors or member functions.&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;The client thread causing the panic is terminated.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;The subsession handle is not recognised by th [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Etel_Server {
+            get {
+                return ResourceManager.GetString("Etel_Server", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Exceptions&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Exceptions are generated by internal and external sources to cause the processor to handle an event, such as an externally generated interrupt or an attempt to execute an Undefined instruction. The processor state just before handling the exception is normally preserved so that the original program can be resumed when the exception routine has completed. More than one exce [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Exceptions {
+            get {
+                return ResourceManager.GetString("Exceptions", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;FBSCLI&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; Panics raised by clients of the font and bitmap server. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; No connection has been made to the font and bitmap server. &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;2&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Attempted to p [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string FBSCLI {
+            get {
+                return ResourceManager.GetString("FBSCLI", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Form&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Text Views panics: &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;201&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; A NULL layout handle was passed to &amp;lt;code&amp;gt;CTextView::NewL()&amp;lt;/code&amp;gt;, or to &amp;lt;code&amp;gt;CTextView::SetLayout()&amp;lt;/code&amp;gt; &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;202&lt;/panic_id&gt;
+        ///      &lt;pani [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Form {
+            get {
+                return ResourceManager.GetString("Form", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;FSCLIENT panic&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; Panics with this category are raised on clients requesting services provided by the file server. Typically, they are caused by passing bad or contradictory values to class constructors or member functions. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt; The thread causing the panic is terminated. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt; To avoid confusion, we need to emphasise that the panic category is the 14 cha [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string FSCLIENT_panic {
+            get {
+                return ResourceManager.GetString("FSCLIENT_panic", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;HTTP-COOKIE&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Cookie filter panics. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Invalid filter state &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; The &amp;lt;code&amp;gt;aCookieList&amp;lt;/code&amp;gt; array passed to &amp;lt;code class=&quot;ApiItem&quot;&amp; [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string HTTP_COOKIEform {
+            get {
+                return ResourceManager.GetString("HTTP_COOKIEform", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;HTTP-CORE&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; Transport Framework Client panics. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;RHTTPSession&amp;lt;/code&amp;gt; session is already open. &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Specified header field is mis [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string HTTP_CORE {
+            get {
+                return ResourceManager.GetString("HTTP_CORE", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;ImageConversion&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; Panics used in the Image Conversion Library &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; No source bitmap. &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; No destination bitmap. &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ImageConversion {
+            get {
+                return ResourceManager.GetString("ImageConversion", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;IMAPServer&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; IMAPServer panics are raised by the IMAP server-side MTM. They are used to signal errors in the implementation of the MTM, and are raised in debug builds. The panic codes are divided into a number of ranges, each of which relates to a particular area of functionality in the MTM: &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0-999&lt;/panic_id&gt;
+        /// [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string IMAPServer {
+            get {
+                return ResourceManager.GetString("IMAPServer", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;InSock&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; Panic of insock.dll &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;&amp;lt;code&amp;gt;TInetAddr&amp;lt;/code&amp;gt; constructor call with &amp;lt;code&amp;gt;TSockAddr&amp;lt;/code&amp;gt; argument of incorrect protocol family &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///  &lt;/panics&gt;
+        ///&lt;/panic_category&gt;.
+        /// </summary>
+        internal static string InSock {
+            get {
+                return ResourceManager.GetString("InSock", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Irda Fault&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; IrDA sockets (infra-red protocol) panics: &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Unused &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; Unused &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;pan [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Irda_Fault {
+            get {
+                return ResourceManager.GetString("Irda_Fault", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;KERN&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; These panic numbers represent errors which cause the Kernel itself to terminate. When the kernel terminates for the reasons listed here, it is said to fault rather than panic. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt; The faults themselves are raised by kernel side code. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;Note:many of the faults listed here are raised in debug builds only. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;pa [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string KERN {
+            get {
+                return ResourceManager.GetString("KERN", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Kern-Common&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;KERN-COMMON panics are raised by the kernel when various kernel-side utility functions are called with bad arguments.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;19&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;This panic is raised if an invalid descriptor type is given to Kern::KUDesGet() or Kern::KUDesPut(). &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
        /// [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Kern_Common {
+            get {
+                return ResourceManager.GetString("Kern_Common", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;KERN-EXEC&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; These panics represent program errors which are detected by the Kernel Executive. Typically, they are caused by passing bad or contradictory parameters to functions. Threads which cause exceptions also raise a KERN-EXEC panic. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt; The thread causing the panic is terminated. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/pani [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string KERN_EXEC {
+            get {
+                return ResourceManager.GetString("KERN_EXEC", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Kern-Heap&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;KERN-HEAP panics are raised by the kernel when bad parameters are passed to kernel-side heap functions. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;39&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;This panic is raised when the size specified for the new heap is smaller than the permitted minimum; it must be at least the size of a RHeap object [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Kern_Heap {
+            get {
+                return ResourceManager.GetString("Kern_Heap", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;MATHX&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;These panics represent errors raised by member functions of the &amp;lt;code class=&quot;ApiItem&quot;&amp;gt;TRealX&amp;lt;/code&amp;gt; class. Typically, they are the result of illegal maths operations, such as dividing by zero, or operations which result in overflow.&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;The thread causing the panic is terminated.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_i [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string MATX {
+            get {
+                return ResourceManager.GetString("MATX", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;MSGS&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Messaging panics of Message Server from the &amp;lt;code&amp;gt;msgs&amp;lt;/code&amp;gt; library&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;11&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Parent of context could not be found&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;12&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Parent of conte [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string MSGS {
+            get {
+                return ResourceManager.GetString("MSGS", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;MSGS Client&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Client messaging panics from the &amp;lt;code&amp;gt;msgs&amp;lt;/code&amp;gt; library&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Unsupported asynchronous request made to Message Server&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;2&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Se [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string MSGS_Client {
+            get {
+                return ResourceManager.GetString("MSGS_Client", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;MTMUI Data&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Messaging panic from the &amp;lt;code class=&quot;filename&quot;&amp;gt;mtur&amp;lt;/code&amp;gt; library relating to UI Data MTM operations&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Inconsistent start/end and zoom parameters passed to &amp;lt;code&amp;gt;CBaseMtmUiData::CreateBitmapsL()&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;/panic_descripti [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string MTMUI_Data {
+            get {
+                return ResourceManager.GetString("MTMUI_Data", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;MTUI&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Messaging panics from the &amp;lt;code class=&quot;filename&quot;&amp;gt;mtur&amp;lt;/code&amp;gt; library relating to User Interface MTM operations&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Empty selection passed to &amp;lt;code&amp;gt;CBaseMtmUi&amp;lt;/code&amp;gt; move, copy, or delete function&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string MTUI {
+            get {
+                return ResourceManager.GetString("MTUI", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;PLAT (emulator)&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;These panics represent errors which are detected by emulator   specific code. Typically, they are caused by passing bad or contradictory parameters to functions.&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;The thread causing the panic is terminated.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;These panics are raise [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string PLAT_emulator {
+            get {
+                return ResourceManager.GetString("PLAT_emulator", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;PLAT (generic Kernel)&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;These panics represent represent errors which are detected by  generic Kernel code. Typically, they are caused by passing bad or contradictory parameters to functions.&amp;lt;/p&amp;gt;&amp;lt;p&amp;gt;The thread causing the panic is terminated.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;This panic  [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string PLAT_generic_Kernel {
+            get {
+                return ResourceManager.GetString("PLAT_generic_Kernel", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Protocol panic&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;The Sockets Server gives a &amp;amp;quot;Protocol panic&amp;amp;quot; when it finds incorrect protocol module behaviour.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;An unknown request completed&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_descr [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Protocol_panic {
+            get {
+                return ResourceManager.GetString("Protocol_panic", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+        ///&lt;xsd:schema xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
+        ///
+        ///  &lt;xsd:element name=&quot;category_name&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:element name=&quot;category_description&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:element name=&quot;panic_id&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:element name=&quot;panic_description&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:element name=&quot;error_name&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:element name=&quot;error_value&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:element name=&quot;error_component&quot; type=&quot;xsd:string&quot;/&gt;
+        ///  &lt;xsd:el [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string schema {
+            get {
+                return ResourceManager.GetString("schema", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Send&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Messaging panics from &amp;lt;code&amp;gt;CSendAs&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Out of range index passed to &amp;lt;code&amp;gt;CSendAs::SetMtmL()&amp;lt;/code&amp;gt; or CSendAs::SetService()&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;2&lt;/panic_id&gt;
+        ///      &lt;panic_desc [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Send {
+            get {
+                return ResourceManager.GetString("Send", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;smlController&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;SyncML panics represent program errors which are detected by the SyncML framework. Typically, they are caused by passing bad or contradictory parameters to functions.&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;The thread causing the panic is terminated. &amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Invalid parameter. [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string smlController {
+            get {
+                return ResourceManager.GetString("smlController", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;TCPIP&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panic of TCP/IP protocol family module&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Function is not supported&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Unused&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string TCPIP {
+            get {
+                return ResourceManager.GetString("TCPIP", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Telephony&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Third party telephony panic:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;A client has attempted to re-post an asynchronous request before the original request has completed&amp;lt;/p&amp;gt;	   &lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///  &lt;/panics&gt;
+        ///&lt;/panic_category&gt;.
+        /// </summary>
+        internal static string Telephony {
+            get {
+                return ResourceManager.GetString("Telephony", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;UI Graphics&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;UI Graphics Utilities panics:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;A resource null pointer.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;Resource specified has an invalid number type.&amp;lt;/p&amp;gt;&lt;/panic_descriptio [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string UI_Graphics {
+            get {
+                return ResourceManager.GetString("UI_Graphics", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;USER&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Panics with this category are raised on the user side by member functions of T type and R type classes which reside in &amp;lt;code class=&quot;filename&quot;&amp;gt;euser.dll&amp;lt;/code&amp;gt;.&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;They are also raised by some static member functions of the &amp;lt;code&amp;gt;User&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;UserHeap&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;RHeap&amp;lt;/code&amp;gt; classes. Typically, they are c [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string USER {
+            get {
+                return ResourceManager.GetString("USER", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;USER-EXEC&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;No Description&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;3&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;In Symbian OS 8.1b, 9.0, 9.1 and subsequent versions:&amp;lt;/p&amp;gt; &amp;lt;p&amp;gt;this panic is raised when an exception is raised on the current thread by a call to &amp;lt;code class=&quot;ApiItem&quot;&amp;gt;User::RaiseException()&amp;lt;/code&amp;gt;, and the thread h [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string USER_EXEC {
+            get {
+                return ResourceManager.GetString("USER_EXEC", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;Versit-Parser&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt;Versit panics:&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;0&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;The parser has tried to access a token, but no current token exists.&amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt;An object of class &amp;lt;code&amp;gt;CVersitUnico [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string Versit_Parser {
+            get {
+                return ResourceManager.GetString("Versit_Parser", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;ViewSrv&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; The table below lists the View Server panics.&amp;lt;/p&amp;gt;&lt;/category_description&gt;
+        ///  &lt;panics&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;1&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; View Server creation failed. &amp;lt;/p&amp;gt;&lt;/panic_description&gt;
+        ///    &lt;/panic&gt;
+        ///    &lt;panic&gt;
+        ///      &lt;panic_id&gt;3&lt;/panic_id&gt;
+        ///      &lt;panic_description&gt;&amp;lt;p&amp;gt; A bad client call was made - i.e. the opcode sent by t [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ViewSrv {
+            get {
+                return ResourceManager.GetString("ViewSrv", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;W32&lt;/category_name&gt;
+        ///  &lt;category_description&gt;W32 is a synchronous interface onto the window server that user code can include, link to and invoke instead of sending low level client-server requests to the window server. Some errors can be detected before they are sent to the server and are raised as panics from W32. Code in the W32 synchronous interface runs in the client’s thread, so it raises panics in situations it can understand  [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string W32 {
+            get {
+                return ResourceManager.GetString("W32", resourceCulture);
+            }
+        }
+        
+        /// <summary>
+        ///   Looks up a localized string similar to &lt;?xml version=&apos;1.0&apos; encoding=&apos;UTF-8&apos;?&gt;
+        ///&lt;panic_category&gt;
+        ///  &lt;category_name&gt;WSERV&lt;/category_name&gt;
+        ///  &lt;category_description&gt; &amp;lt;p&amp;gt; The window server runs continuously and brings the machine down if it crashes, so it cannot panic its own thread when it detects an error in one of its client&amp;amp;#8217;s requests. Instead it panics the client&amp;amp;#8217;s thread using &amp;lt;code class=&quot;ApiItem&quot;&amp;gt;CSession::Panic()&amp;lt;/code&amp;gt;. These panics have a category of WSERV. &amp;lt;/p&amp;gt; &amp;lt;p&amp;gt; These panics are defined [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string WSERV {
+            get {
+                return ResourceManager.GetString("WSERV", resourceCulture);
+            }
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Properties/Resources.resx	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,295 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+  <data name="Agenda_model" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Agenda_model.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="ALLOC" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ALLOC.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="ALLOC_COUNT" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ALLOC_COUNT.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="BAFL" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\BAFL.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="BITGDI" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\BITGDI.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Bitmap_Utility" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Bitmap_Utility.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="C32_fault" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\C32-fault.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CESockIniData" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CESockIniData.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CHWComm" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CHWComm.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CInSock" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CInSock.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Clock" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Clock.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CMdaAudioOutputStream" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CMdaAudioOutputStream.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CommsDbServer" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CommsDbServer.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Comm_Server" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Comm_Server.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CONARC" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CONARC.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CONE" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CONE.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="CWAPSession" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\CWAPSession.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="E32USER_CBase" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\E32USER-CBase.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
+  </data>
+  <data name="EIKCOCTL" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\EIKCOCTL.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="ErrorCodes" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ErrorCodes.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="ESock" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ESock.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="eSock_fault" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\eSock_fault.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="eSock_panic" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\eSock_panic.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Etel_Server" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Etel_Server.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Exceptions" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Exceptions.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="FBSCLI" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\FBSCLI.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Form" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Form.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="FSCLIENT_panic" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\FSCLIENT_panic.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="HTTP_COOKIEform" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\HTTP_COOKIEform.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="HTTP_CORE" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\HTTP_CORE.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="ImageConversion" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ImageConversion.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="IMAPServer" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\IMAPServer.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="InSock" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\InSock.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Irda_Fault" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Irda_Fault.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="KERN" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\KERN.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="KERN_EXEC" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\KERN-EXEC.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="MATX" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\MATX.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="MSGS" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\MSGS.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="MSGS_Client" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\MSGS_Client.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="MTMUI_Data" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\MTMUI_Data.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="MTUI" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\MTUI.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="PLAT_emulator" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\PLAT_emulator.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="PLAT_generic_Kernel" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\PLAT_generic_Kernel.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Protocol_panic" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Protocol_panic.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="schema" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\schema.xsd;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Send" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Send.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="smlController" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\smlController.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="TCPIP" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\TCPIP.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Telephony" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Telephony.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="UI_Graphics" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\UI_Graphics.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="USER" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\USER.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="USER_EXEC" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\USER-EXEC.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Versit_Parser" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Versit-Parser.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="ViewSrv" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ViewSrv.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="W32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\W32.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
+  </data>
+  <data name="WSERV" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\WSERV.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Kern_Common" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Kern-Common.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+  <data name="Kern_Heap" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\Kern-Heap.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
+</root>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ALLOC.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>ALLOC</category_name>
+  <category_description> &lt;p&gt;These panics are raised in debug builds only and are caused when the heap debugging functions detect a memory leak.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id> nnnnnnnn</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by the &lt;code class="ApiItem"&gt;RHeap::__DbgMarkEnd()&lt;/code&gt;  and &lt;code class="ApiItem"&gt;User::__DbgMarkEnd()&lt;/code&gt; when the number of heap cells at the current nested level is not as expected. &lt;/p&gt;&lt;p&gt;nnnnnnnn is the hexadecimal pointer to the first orphaned heap cell.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ALLOC_COUNT.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>ALLOC COUNT</category_name>
+  <category_description> &lt;p&gt;These panics are only raised in debug builds and are caused when the heap debugging functions detect a memory leak.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id> ALLOC COUNT 1 Expected aaaa Allocated bbbb Ln: ccc ddddd</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by  &lt;code class="ApiItem"&gt;RHeap::__DbgMarkCheck()&lt;/code&gt;  and &lt;code class="ApiItem"&gt;User::__DbgMarkCheck()&lt;/code&gt; when the current number of allocated heap cells is not as expected. &lt;/p&gt;&lt;p&gt;&lt;code&gt;aaa&lt;/code&gt; is the expected number of heap cells.&lt;/p&gt;&lt;p&gt;&lt;code&gt; bbb&lt;/code&gt; is the allocated number of heap cells.&lt;/p&gt;&lt;p&gt;&lt;code&gt; ccc&lt;/code&gt; is a line number; typically the source statement line containing the call to &lt;code&gt;__DbgMarkCheck()&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;&lt;code&gt; ddddd&lt;/code&gt; is a file name; typically the file containing the source statement containing the call to &lt;code&gt;__DbgMarkCheck()&lt;/code&gt;.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Agenda_model.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,131 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Agenda model</category_name>
+  <category_description> &lt;p&gt;Agenda model utility panics: &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;The agenda model is in a state inconsistent with an action being requested of it. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;An entry contains bad or conflicting data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;A to-do list contains bad or conflicting data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;The to-do defaults contain bad or conflicting data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;An agenda entry does not contain any rich text. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;An agenda date/time has a NULL value. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Attempted to cast a &lt;code&gt;CAgnEntry&lt;/code&gt; to a &lt;code&gt;CAgnAppt&lt;/code&gt; when the entry's type is not &lt;code&gt;EAppt&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Attempted to cast a &lt;code&gt;CAgnEntry&lt;/code&gt; to a &lt;code&gt;CAgnEvent&lt;/code&gt; when the entry's type is not &lt;code&gt;EEvent&lt;/code&gt; or &lt;code&gt;EAnniv&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Attempted to cast a &lt;code&gt;CAgnEntry&lt;/code&gt; to a &lt;code&gt;CAgnAnniv&lt;/code&gt; when the entry's type is not &lt;code&gt;EAnniv&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Attempted to cast a &lt;code&gt;CAgnEntry&lt;/code&gt; to a &lt;code&gt;CAgnTodo&lt;/code&gt; when the entry's type is not &lt;code&gt;ETodo&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Attempted to set a date outside of the valid agenda model date range. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Attempted to access an array element outside the array bounds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Null pointer specified. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Attempted to delete an agenda item that wasn't found. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;The iterator has been assigned a null index. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;The iterator is out of range. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;The entry has a null time. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;A parameter with a null date value was specified. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;All instances of a repeating entry are exceptions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Tried to fetch an instance that couldn't be generated from the repeat details. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;An error has occurred in the entry cluster management. i.e. when storing the buffer there are more entries in it than the allowable maximum. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;Performed an operation on an entry that has been marked as deleted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;Sort entry not found in index. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;Requested an index that doesn't exist. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt;The stream from which an entry originates is different from the stream to which it is being updated/deleted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt;Called&lt;code&gt;CAgnAlarm::RequestServerTerminationNotification()&lt;/code&gt; more than once. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt;Called&lt;code&gt;CAgnAlarm::RequestServerTerminationNotification()&lt;/code&gt; with a callback set. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt;Agenda model filter priority is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt;Agenda model filter maximum priority has not been set. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt;Crossed out entries are not included in tidy filter. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt;Called an unsupported function. &lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/BAFL.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,99 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>BAFL</category_name>
+  <category_description> &lt;p&gt;Basic Application Framework Library (BFL.lib) panics. A number of APIs raise these panics. &lt;/p&gt; &lt;p&gt;These are:&lt;/p&gt; &lt;p&gt;Application Utilities &lt;/p&gt; &lt;p&gt;Command Line Parsing &lt;/p&gt; &lt;p&gt;Environment Change Notifier &lt;/p&gt; &lt;p&gt;Incremental Matcher &lt;/p&gt; &lt;p&gt;Interface to Resource Files &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt; &lt;/p&gt; &lt;p&gt;This panic is raised by &lt;code class="ApiItem"&gt;RResourceFile::ReadL()&lt;/code&gt;, when the length of the resource is greater than the maximum length of the target descriptor &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Out of range index passed to &lt;code&gt;RIncrMatcherBase::FirstMatchingIndex()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Maximum length passed to &lt;code&gt;RTextBuf::SetMaxLengthL()&lt;/code&gt; was &amp;lt;=0 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by the &lt;code&gt;Read...()&lt;/code&gt;  member functions and the &lt;code&gt;Advance()&lt;/code&gt;  member function of &lt;code class="ApiItem"&gt;TResourceReader&lt;/code&gt;, when the current position  in the resource buffer is moved  beyond the end of the buffer. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by &lt;code class="ApiItem"&gt;TResourceReader::Rewind()&lt;/code&gt;, when the current position  in the resource buffer is moved before the start of the buffer. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;No path specified in sound info passed to &lt;code&gt;CBaSystemSoundArray::SetSoundL()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;/p&gt;&lt;p&gt;This panic is raised by &lt;code class="ApiItem"&gt;TResourceReader::ReadTPtrC16()&lt;/code&gt;, when it detects that the alignment of Unicode strings within the  resource is incorrect, i.e. the buffer is of an incorrect length for reading  a Unicode string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Unsupported old resource file format&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;No system sound category set for new system sound &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Invalid system sound priority set &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;NULL UID passed to &lt;code&gt;CBaNamedPlugins::IndexOfUid()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;Bad resource file format found when constructing a &lt;code&gt;CBaNamedPlugins&lt;/code&gt; object. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;The array position at which the text representing the choice of no plug-in is to  be inserted, is invalid. The panic is raised by &lt;code&gt;CBaNamedPlugins::ConstructL()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;An invalid comparison algorithm or no comparison algorithm supplied when sorting the plug-in names in the implementation of &lt;code&gt;CBaNamedPlugins::ConstructL()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;Unused. &lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/BITGDI.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,83 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>BITGDI</category_name>
+  <category_description> &lt;p&gt;Bitmaps (Graphical device) panics:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;No graphics device specified for use with &lt;code&gt;CFbsBitGc&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;No font selected&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Sprite cancelled when no sprite is set&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Invalid display mode&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Invalid clipping region&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Invalid window handle&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Invalid font&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Invalid bitmap&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Co-ordinates out of range&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Bad parameter used while filling a polygon&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Invalid zero-sized parameter&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt; 	   </panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Bitmap_Utility.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Bitmap Utility</category_name>
+  <category_description> &lt;p&gt;TImageBitmapUtilPanic:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;ECorrupt&lt;/code&gt; - Data is corrupt cannot continue.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/C32-fault.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,39 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>C32-fault</category_name>
+  <category_description> &lt;p&gt;Panic due to internal error of Serial Comms Server (or &amp;quot;Comms Server&amp;quot;).&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Failed to install active scheduler or error running the scheduler.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Failed to create server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Failed to start server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Could not allocate a Clean Up Stack.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;API or function call not implemented yet.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Reference counting error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;NULL pointer passed to API.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Unable to allocate global timer, commonly caused by a memory allocation failure.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CESockIniData.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CESockIniData</category_name>
+  <category_description> &lt;p&gt;Socket panic when reading esock.ini&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Section name exceeded maximum length&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Variable name exceeded maximum length&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CHWComm.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CHWComm</category_name>
+  <category_description> &lt;p&gt;Panic of ECUART module raised by the Serial Comms Server (or &amp;quot;CommsServer&amp;quot;).&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Bad descriptor passed by client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;cancel()&lt;/code&gt; method called without calling the respective API first. I.e. an attempt was made to cancel an operation that was not started.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Incorrect usage of an API for the current DTE/DCE role.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Internal error caused by the notification count being negative.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CInSock.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CInSock</category_name>
+  <category_description> &lt;p&gt;Panic of TCP/IP relating to socket implementation&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Connectionless socket used when connected type required&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Attempt to send or receive on socket already in use&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CMdaAudioOutputStream.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,35 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CMdaAudioOutputStream</category_name>
+  <category_description> &lt;p&gt;Audio streaming panics&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to change the audio stream player's properties while still writing to the stream.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Not currently used.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to set the audio stream player's volume to an invalid value.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to access the stream before opening it.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to open the stream when it is already open.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to set the client's priority to an invalid value.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMdaAudioOutputStream::Open()&lt;/code&gt; was called with an incorrect audio package type&amp;#0160;&amp;#8212; it must be of type &lt;code&gt;TMdaAudioDataSettings&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CONARC.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,27 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CONARC</category_name>
+  <category_description> &lt;p&gt;Converter Architecture panics&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCnaScanningConverterFinder::NextL()&lt;/code&gt; called before &lt;code&gt;FindAllConvL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Attempt to scan unknown drive&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;File error while attempting to restore converter information &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCnaScanningCnfFinder::NextL()&lt;/code&gt; called before &lt;code&gt;FindAllCnfL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CONE.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,235 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CONE</category_name>
+  <category_description> &lt;p&gt;User Interface Control Framework panics&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; Environment start up error &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Environment already exists &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; App UI cannot be created &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; Control cannot be found in the control stack &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Environment caught unexpected leave &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; Non-leaving function CCoeControl::Draw() leaves during a redraw operation &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; Environment found file server resources had not been freed &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; Environment found window server resources had not been freed &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; Environment failed to handle window server event &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; The control already owns a window &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; The control cannot close the window as it does not own one &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; &lt;code&gt;CCoeControl::ComponentControl()&lt;/code&gt; has been called, but the control is not a container &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Environment cannot find the resource file in order to delete it &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Environment cannot find the specified resource in any resource file &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; A NULL resource file name was passed to &lt;code&gt;CCoeEnv::AddResourceFileL()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; Resource is wrong length to be read as Unicode string &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; Internal control set up error &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; Attempted to add NULL observer &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; Attempted to remove NULL observer &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; Attempted to set up NULL FEP &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; Observer has already been added &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; FEP could not be loaded due to set-up problem &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt; NULL GC passed to &lt;code&gt;CCoeEnv::SwapSystemGc()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt; Resource file has not been freed &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt; No view server session present &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt; Specified view could not be found &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt; NULL UID passed to &lt;code&gt;CCoeStatic::CCoeStatic()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt; Duplicate UID passed to &lt;code&gt;CCoeStatic::CCoeStatic()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt; Attempt to use &lt;code&gt;CoeSoundPlayer&lt;/code&gt; without an environment &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt; Open handles were found during application shutdown &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt; Unexpected view server event &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt; View observer not found &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt; View notification observer already exists &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>40</panic_id>
+      <panic_description>&lt;p&gt; Embedded app UI is not NULL &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>41</panic_id>
+      <panic_description>&lt;p&gt; Embedded app UI is not NULL &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt; Embedded app UI is not NULL &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>43</panic_id>
+      <panic_description>&lt;p&gt; Embedded app UI is not NULL &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt; Control being destroyed is still on the control stack &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt; Focus observer notification is not pending &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt; The handle for the current Window Server Redraw event is invalid &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>47</panic_id>
+      <panic_description>&lt;p&gt; No longer used &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>48</panic_id>
+      <panic_description>&lt;p&gt; No longer used &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>49</panic_id>
+      <panic_description>&lt;p&gt; The control parent-child hierarchy has become circular &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>50</panic_id>
+      <panic_description>&lt;p&gt; A control's parent has been set to something other than NULL or itself prior to being added to the control stack &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>51</panic_id>
+      <panic_description>&lt;p&gt; Two controls with the same ID exist &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>52</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to add an item to a control array which does not exist &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>53</panic_id>
+      <panic_description>&lt;p&gt; No longer used &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>54</panic_id>
+      <panic_description>&lt;p&gt; No longer used &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>55</panic_id>
+      <panic_description>&lt;p&gt; No longer used &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>56</panic_id>
+      <panic_description>&lt;p&gt; No longer used &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>57</panic_id>
+      <panic_description>&lt;p&gt; An error occured while notifying the central repository of a FEP change&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CWAPSession.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CWAPSession</category_name>
+  <category_description> &lt;p&gt;The WAP Stack API can raise panics with the category CWAPSession, and the following codes:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Client made unrecognised request to  WAP server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;An IPC error occurred&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to delete a non-existent sub-session&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to access a non-existent sub-session&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Clock.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,175 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Clock-client</category_name>
+  <category_description> &lt;p&gt;Panics by the clock library:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Clock is already constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Clock is already constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Clock is already constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Incorrect number of additions&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Incorrect number of additions&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;No more additions expected&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;Too few text sections&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;Too few hands&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;Too few hand features&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt;Invalid rectangle parameters&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt;Clock is not full constructed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt;Internal error&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Comm_Server.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,87 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Comm server</category_name>
+  <category_description> &lt;p&gt;Panic of client raised by the Serial Comms Server (or &amp;quot;Comms Server&amp;quot;).&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Write request made when request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Read request made when request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Break request made when request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Invalid port handle passed by client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Bad descriptor passed by client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;RComm::SetConfig()&lt;/code&gt; call made when another request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;RComm::SetSignals()&lt;/code&gt; call made when another request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;RComm::ResetBuffers()&lt;/code&gt; call made when another request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;RComm::ReceiveBufferLength()&lt;/code&gt; call made when another request already in progress.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Cannot have two outstanding &lt;code&gt;RComm::NotifySignalChange()&lt;/code&gt; requests from the same client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Cannot have two outstanding &lt;code&gt;RComm::NotifyFlowControlChange()&lt;/code&gt; requests from the same client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Cannot have two outstanding &lt;code&gt;RComm::NotifyConfigChange()&lt;/code&gt; requests from the same client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Cannot have two outstanding &lt;code&gt;RComm::NotifyBreak()&lt;/code&gt; requests from the same client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Cannot have two outstanding &lt;code&gt;RComm::NotifyDataAvailable()&lt;/code&gt; requests from the same client.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Cannot have two outstanding &lt;code&gt;RComm::NotifyOutputEmpty()&lt;/code&gt; requests from the same client. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Thread size is negative.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Minimum heap size is too small.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Maximum heap size is less than minimum heap size.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Wrong client session for set access request.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Client must close object before setting comm access.&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/CommsDbServer.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,55 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>CommsDbServer</category_name>
+  <category_description> &lt;p&gt;CommDb panics:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::InsertRecord()&lt;/code&gt; called when &lt;code&gt;InsertRecord()&lt;/code&gt; or &lt;code&gt;UpdateRecord()&lt;/code&gt; has already been made.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::UpdateRecord()&lt;/code&gt; called when &lt;code&gt;InsertRecord()&lt;/code&gt; or &lt;code&gt;UpdateRecord()&lt;/code&gt; has already been made.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::DeleteRecord()&lt;/code&gt; called when a previous call to &lt;code&gt;InsertRecord()&lt;/code&gt; or &lt;code&gt;UpdateRecord()&lt;/code&gt; has been made&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::PutRecordChanges()&lt;/code&gt; called without previous call to &lt;code&gt;InsertRecord()&lt;/code&gt; or &lt;code&gt;UpdateRecord()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::CancelRecordChanges()&lt;/code&gt; called without previous call to &lt;code&gt;InsertRecord()&lt;/code&gt; or &lt;code&gt;UpdateRecord()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::GotoFirstRecord()&lt;/code&gt; called while an operation involved in inserting or updating a record is still outstanding, or when the view has been closed.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::GotoNextRecord()&lt;/code&gt; called while an operation involved in inserting or updating a record is still outstanding, or when the view has been closed.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommsDbTableView::GotoPreviousRecord()&lt;/code&gt; called while an operation involved in inserting or updating a record is still outstanding, or when the view has been closed.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Attempt made to read from a column before either &lt;code&gt;PutRecordChanges()&lt;/code&gt; or &lt;code&gt;CancelRecordChanges()&lt;/code&gt; has been called to complete a record insertion or update operation.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Attempt is made to write to a column without calling &lt;code&gt;CCommsDbTableView::InsertRecord()&lt;/code&gt; or &lt;code&gt;CCommsDbTableView::UpdateRecord()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Attempt to write to table ID column with &lt;code&gt;CCommsDbTableView::WriteUintL()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CCommDbOverrideSettings::GetLongDesOverride()&lt;/code&gt; called with too small &lt;code&gt;aValue&lt;/code&gt; buffer.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/E32USER-CBase.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,359 @@
+<?xml version="1.0" encoding="utf-8"?>
+<panic_category>
+  <category_name>E32USER-CBase</category_name>
+  <category_description>Panics with this category are raised in user side code by member functions of CBase derived classes that reside in euser.dll. Typically, they are caused by passing bad or contradictory values to class constructors or member functions.&lt;br&gt;&lt;br&gt;The thread causing the panic is terminated.</category_description>
+  <panics>
+	<panic>
+    	<panic_id>1</panic_id>
+    	<panic_description>This panic is raised by the Set() member function of CAsyncCallBack, if this active object is already active when the function is called.</panic_description>
+  	</panic>
+	<panic>
+		<panic_id>2</panic_id>
+	    <panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;This panic is raised by the Call() member function of CAsyncOneShot if the active object has not already been added to the active scheduler.</panic_description>
+	</panic>
+	<panic>
+    	<panic_id>3</panic_id>
+    	<panic_description>This panic is raised during construction of a dynamic buffer (a CBufFlat or a CBufSeg) when the value of the granularity passed to the constructors is negative.</panic_description>
+  	</panic>
+	<panic>
+		<panic_id>4</panic_id>
+		<panic_description>This panic is raised when reading from a dynamic buffer (a CBufFlat or a CBufSeg) using the Read() member function. It is caused by attempting to read beyond the end of the buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>5</panic_id>
+		<panic_description>This panic is raised when writing to a dynamic buffer (a CBufFlat or a CBufSeg) using the Write() member function. It is caused by attempting to write beyond the end of the buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>6</panic_id>
+		<panic_description>This panic is raised when reading from a dynamic buffer (a CBufFlat or a CBufSeg) using the Read() member function. It is caused by specifying a negative length for the amount of data to be read.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>7</panic_id>
+		<panic_description>This panic is raised when writing to a dynamic buffer (a CBufFlat or a CBufSeg) using the Write() member function. It is caused by specifying a negative length for the amount of data to be written.</panic_description>
+	</panic>
+	<panic>
+    	<panic_id>8</panic_id>
+    	<panic_description>This panic is raised when inserting data into a dynamic buffer (a CBufFlat or a CBufSeg) using the InsertL() member function or when inserting an uninitialized region into the dynamic buffer using the ExpandL() member function. It is caused by passing a negative length value to these functions.</panic_description>
+	</panic>
+	<panic>
+    	<panic_id>9</panic_id>
+    	<panic_description>This panic is raised when inserting data into a dynamic buffer (a CBufFlat or a CBufSeg) using the InsertL() member function. It is caused when the variant of InsertL() which takes a pointer to TAny, is passed a NULL pointer value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>10</panic_id>
+		<panic_description>This panic is raised when specifying the minimum amount of space which a flat dynamic buffer (a CBufFlat) should occupy using the SetReserveL() member function. It is caused when the size value passed to the function is negative.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>11</panic_id>
+		<panic_description>This panic is raised when specifying the minimum amount of space which a flat dynamic buffer (a CBufFlat) should occupy using the SetReserveL() member function. It is caused when the size value passed to the function is less than the current size of the buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>12</panic_id>
+		<panic_description>This panic is raised by the Delete(), Ptr(), BackPtr() member functions of a flat dynamic buffer (a CBufFlat); the panic can also be raised by InsertL() and ExpandL(). It is caused when the position value passed to these functions is either negative or represents a position beyond the end of the current buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>13</panic_id>
+		<panic_description>This panic is raised by the Delete() member function of a flat dynamic buffer (a CBufFlat). It is caused when the combination of position and length values passed to the function implies an attempt to delete data beyond the end of the flat buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>14</panic_id>
+		<panic_description>This panic is raised by the Delete(), Ptr(), BackPtr() member functions of a segmented dynamic buffer (a CBufSeg); the panic can also be raised by InsertL() and ExpandL(). It is caused when the position value passed to these functions is either negative or represents a position beyond the end of the current buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>15</panic_id>
+		<panic_description>This panic is raised by the Delete() member function of a segmented dynamic buffer (a CBufSeg). It is caused when the combination of position and length values passed to the function implies an attempt to delete data beyond the end of the segmented buffer.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>16</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;This panic is raised by the InsertL(), Delete(), Ptr() and BackPtr() member functions as implemented for segmented buffers (CBufSeg), when the offset within a segment, where data is to be inserted or removed, is greater than the buffer granularity.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>17</panic_id>
+		<panic_description>This panic is raised by the constructors of arrays of fixed length objects as represented, for example, by the classes CArrayFixFlat, CArrayFixSeg and CArrayFixFlat&lt;TAny&gt;. It is caused when the record length is either negative or zero.&lt;br&gt;&lt;br&gt;The record length is either explicitly specified as in the case of the CArrayFixFlat&lt;TAny&gt; class or is implied by the length of the template class as in the case of the CArrayFixFlat class.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>18</panic_id>
+		<panic_description>This panic is raised by the constructors of arrays of fixed length objects as represented, for example, by the classes: CArrayFixFlat and CArrayFixSeg. It is caused when the granularity passed to the constructors is either negative or zero.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>19</panic_id>
+		<panic_description>This panic is raised by the constructors of arrays of variable length objects as represented, for example, by the classes: CArrayVarFlat and CArrayVarSeg. It is caused when the granularity passed to the constructors is either negative or zero.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>20</panic_id>
+		<panic_description>This panic is raised by the constructors of packed arrays as represented, for example, by the class CArrayPakFlat. It is caused when the granularity passed to the constructors is either negative or zero.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>21</panic_id>
+		<panic_description>This panic is raised by any operation which accesses an element of an array by explicit reference to an index number, for example, the Delete(), InsertL() and At() member functions or the operator Operator[]. It is caused by specifying an index value which is either negative or is greater than or equal to the number of objects currently within the array.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>22</panic_id>
+		<panic_description>This panic is raised when deleting contiguous elements from an array of fixed length objects (derived from CArrayFixBase) using the Delete() member function. It is caused by specifying the number of contiguous elements as a zero or negative value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>23</panic_id>
+		<panic_description>This panic is raised when inserting contiguous elements into an array of fixed length objects (derived from CArrayFixBase) using the InsertL() member function. It is caused by specifying the number of contiguous elements as a zero or negative value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>24</panic_id>
+		<panic_description>This panic is raised when resizing an array of fixed length objects (derived from CArrayFixBase) using the ResizeL() member function. It is caused by specifying the number of contiguous elements as a zero or negative value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>25</panic_id>
+		<panic_description>This panic is raised when deleting contiguous elements from an array of variable length objects (derived from CArrayVarBase) using the Delete() member function. It is caused by specifying the number of contiguous elements as a zero or negative value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>26</panic_id>
+		<panic_description>This panic is raised when deleting contiguous elements from a packed array (derived from CArrayPakBase) using the Delete() member function. It is caused by specifying the number of contiguous elements as a zero or negative value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>27</panic_id>
+		<panic_description>This panic is raised when reserving space in flat arrays of fixed length objects, (the CArrayFixFlat,CArrayFixFlat&lt;TAny&gt; and CArrayPtrFlat classes ) using the SetReserveL() member function. It is caused by specifying the number of elements, for which space is to be reserved, as less than the current number of elements in the array.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>28</panic_id>
+		<panic_description>This panic is raised when inserting or appending replicated elements to the arrays of fixed length objects CArrayFixFlat and CArrayFixSeg using the InsertL() or AppendL() functions. It is caused by specifying the number of replicas as negative or zero.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>29</panic_id>
+		<panic_description>This panic is raised when deleting elements from a fixed length, variable length or packed array (derived from CArrayFixBase, CArrayVarBase and CArrayPakBase) using the Delete() function. It is caused when the specification of the position of the first element to be deleted and the number of contiguous elements to be deleted refers to elements which are outside the bounds of the array.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>30</panic_id>
+		<panic_description>This panic is raised when inserting into, appending onto, expanding or extending a variable length array or a packed array (i.e. arrays derived from CArrayVar or CArrayPak) using the InsertL(), AppendL(), ExpandL() or ExtendL() functions respectively. It is caused by specifying the length of the element as a negative value.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>33</panic_id>
+		<panic_description>This panic is raised by the destructor of a CObject. It is caused, if an attempt is made to delete the CObject when the reference count is not zero.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>34</panic_id>
+		<panic_description>This panic is raised by the Close() member function of a CObject. It is caused, if the reference count is negative.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>35</panic_id>
+		<panic_description>This panic is raised by the Remove() member function of an object container, a CObjectCon. It is caused when the CObject to be removed from the container is not contained by the container.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>36</panic_id>
+		<panic_description>This panic is raised by the Remove() member function of a container index, a CObjectConIx. It is caused when the object container, a CObjectCon, to be removed from the index is not contained by the index.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>37</panic_id>
+		<panic_description>This panic is raised by the Remove() member function of an object index, a CObjectIx. It is caused when the handle passed to the Remove() function does not represent a CObject known to the object index.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>38</panic_id>
+		<panic_description>This panic is raised by the At(), FindByName() and FindByFullName() member functions of an object container, a CObjectCon. It is caused when the unique ID as derived from the handle is not the same as the unique ID held by the object container.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>39</panic_id>
+		<panic_description>This panic is raised by the At() member function of an object container, a CObjectCon. It is caused when the index represented by the handle is outside the permitted range. In effect, the handle is bad.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>40</panic_id>
+		<panic_description>This panic is raised by the destructor of an active object, a CActive. It is caused by an attempt to delete the active object while it still has a request outstanding.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>41</panic_id>
+		<panic_description>This panic is raised by the Add() member function of an active scheduler, a CActiveScheduler. It is caused by an attempt to add an active object to the active scheduler when it has already been added to the active scheduler.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>42</panic_id>
+		<panic_description>This panic is raised by the SetActive() member function of an active object, a CActive. It is caused by an attempt to flag the active object as active when it is already active, i.e. a request is still outstanding.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>43</panic_id>
+		<panic_description>This panic is raised by the Install() member function of an active scheduler, a CActiveScheduler. It is caused by attempting to install this active scheduler as the current active scheduler when there is already a current active scheduler; i.e. an active scheduler has already been installed.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>44</panic_id>
+		<panic_description>This panic is raised by calls to the Start(), Stop() and Add() member functions of an active scheduler, a CActiveScheduler when the thread does not have an installed active scheduler.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>45</panic_id>
+		<panic_description>This panic is raised by the Stop() member function of an active scheduler, a CActiveScheduler. Calling Stop() terminates the wait loop started by the most recent call to Start(). The panic is caused by a call to Stop() which is not matched by a corresponding call to Start().</panic_description>
+	</panic>
+	<panic>
+		<panic_id>46</panic_id>
+		<panic_description>This panic is raised by an active scheduler, a CActiveScheduler. It is caused by a stray signal.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>47</panic_id>
+		<panic_description>This panic is raised by the Error() virtual member function of an active scheduler, a CActiveScheduler. This function is called when an active object’s RunL() function leaves. Applications always replace the Error() function in a class derived from CActiveScheduler; the default behaviour provided by CActiveScheduler raises this panic.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>48</panic_id>
+		<panic_description>This panic is raised by the Add() member function of an active scheduler, a CActiveScheduler, when a NULL pointer is passed to the function.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>49</panic_id>
+		<panic_description>This panic is raised by the SetActive() and Deque() member functions of an active object, a CActive. It is raised if the active object has not been added to the active scheduler.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>50</panic_id>
+		<panic_description>This panic is raised by the SetPriority() member function of an active object, a CActive. It is caused by an attempt to change the priority of the active object while it is active, i.e. while a request is outstanding).</panic_description>
+	</panic>
+	<panic>
+		<panic_id>51</panic_id>
+		<panic_description>This panic is raised by the At(), After() and Lock() member functions of the CTimer active object. It is caused by an attempt to request a timer event when the CTimer active object has not been added to the active scheduler.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>52</panic_id>
+		<panic_description>This panic is raised by the Start() member function of the periodic timer active object, a CPeriodic, when a negative time interval is passed to the function.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>53</panic_id>
+		<panic_description>This panic is raised by the Start() member function of the periodic timer active object, a CPeriodic, when a negative delay time interval is passed to the function.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>54</panic_id>
+		<panic_description>This panic is raised by the RunL() member function of the CServer active object base class responsible for handling asynchronous requests from a client thread when the client passes a negative function code in RMessage. The only negative values permitted are RMessage::EConnect and RMessage::EDisConnect.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>55</panic_id>
+		<panic_description>This panic is raised by the Start() member function of the CServer active object base class responsible for handling asynchronous requests from a client thread. It is caused by the server having no name.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>56</panic_id>
+		<panic_description>This panic is raised by the New() and NewL() member functions of CBitMapAllocator when a negative or zero size is passed to them.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>57</panic_id>
+		<panic_description>This panic is raised by the Free(TInt aPos) member function of CBitMapAllocator when a position value is passed which is out of bounds.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>58</panic_id>
+		<panic_description>This panic is raised by the IsFree(TInt aPos) member function of CBitMapAllocator when a position value is passed which is out of bounds.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>59</panic_id>
+		<panic_description>This panic is raised by the AllocFromTopFrom(TInt aPos) member function of CBitMapAllocator when a position value is passed which is out of bounds.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>62</panic_id>
+		<panic_description>This panic is raised by the AllocAt() member function of CBitMapAllocator when the implied position has already been allocated.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>63</panic_id>
+		<panic_description>This panic is raised as a result of a call to the Pop() and PopAndDestroy() static member functions of the CleanupStack class. The panic occurs when TRAPs have been nested and an attempt is made to pop too many items from the cleanup stack for the current nest level.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>64</panic_id>
+		<panic_description>This panic is raised as a result of a call to the Pop() and PopAndDestroy() static member functions of the CleanupStack class. The panic occurs when attempt is made to pop more items from the cleanup stack than are on the cleanup stack.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>65</panic_id>
+		<panic_description>The panic is raised as a result of a call to the Pop() and PopAndDestroy() static member functions of the CleanupStack class. The panic occurs when an attempt is made to pop more items from the cleanup stack than are on the cleanup stack.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>66</panic_id>
+		<panic_description>This panic is raised if an attempt is being made to insert a cleanup item into a position on the cleanup stack reserved for marking the current TRAP nest level. In practice this error occurs if the call to CleanupStack::PushL() happens when there has been no call to TRAP().</panic_description>
+	</panic>
+	<panic>
+		<panic_id>67</panic_id>
+		<panic_description>This panic is raised when building a TCleanupStackItem which is to be added to the cleanup stack. The building of the TCleanupStackItem needs a TCleanupItem and this has been constructed with a NULL cleanup operation (a TCleanupOperation).</panic_description>
+	</panic>
+	<panic>
+		<panic_id>68</panic_id>
+		<panic_description>This panic is raised if there are no free slots available on the cleanup stack to insert a cleanup item.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>69</panic_id>
+		<panic_description>This panic is raised if no trap handler has been installed. In practice, this occurs if CTrapCleanup::New() has not been called before using the cleanup stack.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>70</panic_id>
+		<panic_description>This panic is raised as a result of a call to the versions of the Pop() and PopAndDestroy() static member functions of the CleanupStack class which take an explicit count of the items to be popped. The panic is caused by passing a negative value for the number of items to be popped.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>71</panic_id>
+		<panic_description>This panic is raised when TRAPs have been nested and an attempt is made to exit from a TRAP nest level before all the cleanup items belonging to that level have been popped off the cleanup stack.&lt;br&gt;&lt;br&gt;There must be the same number of items on the cleanup stack on entering a TRAP harness as there is on exiting. In other words, anything that is pushed onto the cleanup stack inside a TRAP harness must be popped off before leaving the harness.&lt;br&gt;&lt;br&gt;For example, the following code avoids this panic when FooLC() does not leave, by explicitly popping pointer before the end of the harness:&lt;br&gt;&lt;br&gt;TRAPD(error, pointer = FooLC(); CleanupStack::Pop(pointer));&lt;br&gt;&lt;br&gt;See also How to use TRAP.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>72</panic_id>
+		<panic_description>This panic is raised by the constructor of the circular buffer base class, a CCirBufBase, when the size value passed is zero or negative.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>73</panic_id>
+		<panic_description>This panic is raised by a call to the SetLengthL() member function of of the circular buffer base class, a CCirBufBase, by passing a length value which is zero or negative.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>74</panic_id>
+		<panic_description>This panic is raised by a call to the Add() member function of a circular buffer, a CCirBuf when the pointer to the item to be added is NULL.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>75</panic_id>
+		<panic_description>This panic is raised by a call to the Add() member function of a circular buffer, a CCirBuf when the number of items to be added is zero or negative.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>76</panic_id>
+		<panic_description>This panic is raised by a call to the Remove() member function of a circular buffer, a CCirBuf when the number of items to be removed is zero or negative.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>89</panic_id>
+		<panic_description>Introduced in 6.0: This panic is raised by call to the Replace() member function of CActiveScheduler when the replacement active scheduler is the same as the existing active scheduler.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>90</panic_id>
+		<panic_description>Introduced in 6.0: The panic is raised as a result of a call to the Pop() and PopAndDestroy() static member functions of the CleanupStack class. The panic occurs when an the item to be popped is not the expected item.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>91</panic_id>
+		<panic_description>This panic is raised by CActiveSchedulerWait::Start() when the CActiveSchedulerWait object has already been started.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>92</panic_id>
+		<panic_description>This panic is raised by CActiveSchedulerWait::AsyncStop() and CActiveSchedulerWait::CanStopNow() when the CActiveSchedulerWait object has not been started.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>93</panic_id>
+		<panic_description>This panic is raised during construction of a CAsyncOneShot if the attempt to open a handle to the current thread fails.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>94</panic_id>
+		<panic_description>Not used.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>95</panic_id>
+		<panic_description>This panic is raised on calls to the default implementations of functions: CPolicyServer::CustomSecurityCheckL() and CPolicyServer::CustomFailureActionL().&lt;br&gt;&lt;br&gt;The class CPolicyServer is intended to be derived from, and these functions in particular need to be re-implemented in a derived class. This panic is a symptom of a failure to provide a derived class.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>96</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;It is raised by the protected CPolicyServer constructor, if the first element pointed to by the iRanges member of the TPolicy aPolicy parameter does not have a value of 0; i.e. if aPolicy's TPolicy::iRanges[0] is not 0.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>97</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;It is raised by the protected CPolicyServer constructor, if the value of each element of the iRanges member of the TPolicy aPolicy parameter is not greater than the value of the previous element.&lt;br&gt;&lt;br&gt;See also TPolicy::iRanges.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>98</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;It is raised by the protected CPolicyServer constructor, if the value of every element in the iElementsIndex member of the TPolicy aPolicy parameter is not valid.&lt;br&gt;&lt;br&gt;Elements of iElementsIndex are invalid if their values are either:&lt;br&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;less than ESpecialCaseHardLimit&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;or&lt;br&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;greater than ESpecialCaseLimit&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;See also TPolicy::iElementsIndex and CPolicyServer::TSpecialCase.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>99</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;It is raised by the protected CPolicyServer constructor, if the value of the iOnConnect member of the TPolicy aPolicy parameter is not valid.&lt;br&gt;&lt;br&gt;The iOnConnect member is invalid if its value is either:&lt;br&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;less than ESpecialCaseHardLimit&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;or&lt;br&gt;&lt;br&gt;&lt;ul&gt;&lt;li&gt;greater than ESpecialCaseLimit&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;See also TPolicy::iOnConnect and CPolicyServer::TSpecialCase.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>100</panic_id>
+		<panic_description>This panic is raised if CPolicyServer::iPolicy is found to be invalid for some unknown reason.&lt;br&gt;&lt;br&gt;If you run the server in debug mode, it is likely that the server will panic with one of the panic codes in the range 96 to 99 inclusive. These are described above.&lt;br&gt;&lt;br&gt;See CPolicyServer for information about what constitutes a valid policy.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>101</panic_id>
+		<panic_description>This panic is raised when the value returned by the CPolicyServer::CustomSecurityCheckL() and CPolicyServer::CustomFailureActionL() functions is invalid.&lt;br&gt;&lt;br&gt;The CPolicyServer::TCustomResult enum defines the valid set of return values.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>102</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;It is raised by the protected CPolicyServer constructor, if the value of the iRangeCount member of the TPolicy aPolicy parameter is not greater than 0. A value of 0 implies that no policies have been passed to the policy server. It is a requirement that at least one policy be passed to the policy server.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>103</panic_id>
+		<panic_description>This panic is raised by the policy server framework if a message fails a policy check, whether custom or not.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>104</panic_id>
+		<panic_description>&lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt;&lt;br&gt;&lt;br&gt;It is raised by a number of CObjectIx member functions if the object's data becomes inconsistent.</panic_description>
+	</panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/EIKCOCTL.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,351 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>EIKCOCTL</category_name>
+  <category_description> &lt;p&gt;TechView Core Controls panics:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Environment could not be created&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Invalid command line&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Environment attempted to draw cursor in an unfocussed control&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Control does not own the cursor&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;No such hotkey in call to &lt;code&gt;CEikHotKeyTable::RemoveItem()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;No such menu item&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Hotkey and extra text set have been set on the same &lt;code&gt;CEikMenuPane&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Changing the title text of this menu bar is not permitted&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Text length exceeds the maximum in a &lt;code&gt;CEikSecretEditor&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt;Country or city selector already exists&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt;Index out of range in &lt;code&gt;CColumnListBoxData&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt;Illegal NULL pointer&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt;NULL field passed to &lt;code&gt;CEikEdwin::InsertFieldL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt;Combo box is too small&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt;Command button has no components (label or picture not set)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt;Unknown folder selected through a &lt;code&gt;CEikFolderNameSelector&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt;Toolbar has no observer&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt;Toolbar could not be created&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt;Internal event error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt;Invalid dimensions for a &lt;code&gt;CEikControlGroup&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>40</panic_id>
+      <panic_description>&lt;p&gt;Invalid number of lines for a &lt;code&gt;CEikControlGroup&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>41</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikControlGroup&lt;/code&gt; not fully initialised&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt;Invalid bitmap index in &lt;code&gt;CColumnListBoxData::Draw()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>43</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikProcess::SaveToDirectFileStoreL()&lt;/code&gt; cannot be used as there is no store for the process&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikProcess::SaveToDirectFileStoreL()&lt;/code&gt; cannot be used as the store is the wrong type&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt;No observer set for a &lt;code&gt;CEikDialogToolBar&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>47</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>48</panic_id>
+      <panic_description>&lt;p&gt;Invalid resource for creating a &lt;code&gt;CEikLabeledButton&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>49</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>50</panic_id>
+      <panic_description>&lt;p&gt;Options or data have not been set for a time dialog&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>51</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>52</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>53</panic_id>
+      <panic_description>&lt;p&gt;Environment set up error: logical color not found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>54</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>55</panic_id>
+      <panic_description>&lt;p&gt;Environment set up error: invalid logical color&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>56</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>57</panic_id>
+      <panic_description>&lt;p&gt;NULL text set for a &lt;code&gt;CEikLabel&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>58</panic_id>
+      <panic_description>&lt;p&gt;Environment set up error: invalid library&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>59</panic_id>
+      <panic_description>&lt;p&gt;Resource files are still open on environment closedown&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>60</panic_id>
+      <panic_description>&lt;p&gt;Control factory not removed on environment closedown&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>61</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikButtonGroupContainer::CleanupCommandPushL()&lt;/code&gt; called with &lt;code&gt;aPosition&lt;/code&gt; already allocated on the cleanup stack&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>62</panic_id>
+      <panic_description>&lt;p&gt;Corrupt &lt;code&gt;CEikButtonGroupContainer&lt;/code&gt; cleanup stack &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>63</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikButtonGroupContainer::UpdateCommandObserverL()&lt;/code&gt; called with an updated observer already present&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>64</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>65</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>66</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>67</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>68</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>69</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>70</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>71</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>72</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>73</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>74</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>75</panic_id>
+      <panic_description>&lt;p&gt;Corrupt edwin state for inlining editing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>76</panic_id>
+      <panic_description>&lt;p&gt;Invalid menu title identifier&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>77</panic_id>
+      <panic_description>&lt;p&gt;Environment set up error: library could not be loaded&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>78</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikScrollBarFrame&lt;/code&gt; could not create scroll bar&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>79</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CEikMsgWin&lt;/code&gt; used without vaild app UI&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>80</panic_id>
+      <panic_description>&lt;p&gt;Unexpected leave while setting the virtual cursor state&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>81</panic_id>
+      <panic_description>&lt;p&gt;Attempt to pop &lt;code&gt;CEikCommandButton&lt;/code&gt; from a NULL stack&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>82</panic_id>
+      <panic_description>&lt;p&gt;Unknown virtual cursor error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>83</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>84</panic_id>
+      <panic_description>&lt;p&gt;NULL button group factory referenced&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>85</panic_id>
+      <panic_description>&lt;p&gt;Button group factory did not create button group&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ESock.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,91 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>ESock</category_name>
+  <category_description> &lt;p&gt;Panic of client from Sockets Server&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; Unknown socket &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Connection request made while already attempting to connect &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Read request made while already attempting to read &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; Send request made while already attempting to send &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Close request made while already attempting to close &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; Shutdown request made while already attempting to shutdown &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; Accept request made while already attempting to accept &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; Ioctl request made while already attempting to perform Ioctl &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; Can't use &lt;code&gt;RSocket::SendTo()&lt;/code&gt; on connection-orientated sockets &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; Can't use &lt;code&gt;RSocket::ListenL()&lt;/code&gt; on connectionless sockets &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; Listen request made while already attempting to listen &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; Can't use &lt;code&gt;RSocket::Accept()&lt;/code&gt; if not listening &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Failed to accept &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Descriptor parameter error &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;A request was made of an &lt;code&gt;RHostResolver&lt;/code&gt;, &lt;code&gt;RServiceResolver&lt;/code&gt;, or &lt;code&gt;RNetDatabase&lt;/code&gt; when an asynchronous request was already pending. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; No socket in use &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; &lt;code&gt;RHostResolver::Next()&lt;/code&gt; called without initial resolution request &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; Socket not set up to connect &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ErrorCodes.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,7311 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<error_codes>
+  <error>
+    <error_name>KErrNotFound</error_name>
+    <error_value>-1</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Unable to find the specified object</error_text>
+  </error>
+  <error>
+    <error_name>KErrGeneral</error_name>
+    <error_value>-2</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>General (unspecified) error</error_text>
+  </error>
+  <error>
+    <error_name>KErrCancel</error_name>
+    <error_value>-3</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>The operation was cancelled</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoMemory</error_name>
+    <error_value>-4</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Not enough memory. Close some applications and try again</error_text>
+  </error>
+  <error>
+    <error_name>KErrNotSupported</error_name>
+    <error_value>-5</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>The operation requested is not supported</error_text>
+  </error>
+  <error>
+    <error_name>KErrArgument</error_name>
+    <error_value>-6</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Bad request</error_text>
+  </error>
+  <error>
+    <error_name>KErrTotalLossOfPrecision</error_name>
+    <error_value>-7</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Total loss of precision</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadHandle</error_name>
+    <error_value>-8</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Bad object</error_text>
+  </error>
+  <error>
+    <error_name>KErrOverflow</error_name>
+    <error_value>-9</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Overflow</error_text>
+  </error>
+  <error>
+    <error_name>KErrUnderflow</error_name>
+    <error_value>-10</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Underflow</error_text>
+  </error>
+  <error>
+    <error_name>KErrAlreadyExists</error_name>
+    <error_value>-11</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Already exists</error_text>
+  </error>
+  <error>
+    <error_name>KErrPathNotFound</error_name>
+    <error_value>-12</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Unable to find the specified folder</error_text>
+  </error>
+  <error>
+    <error_name>KErrDied</error_name>
+    <error_value>-13</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Closed</error_text>
+  </error>
+  <error>
+    <error_name>KErrInUse</error_name>
+    <error_value>-14</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>The specified object is currently in use by another program</error_text>
+  </error>
+  <error>
+    <error_name>KErrServerTerminated</error_name>
+    <error_value>-15</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Server has closed</error_text>
+  </error>
+  <error>
+    <error_name>KErrServerBusy</error_name>
+    <error_value>-16</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Server busy</error_text>
+  </error>
+  <error>
+    <error_name>KErrCompletion</error_name>
+    <error_value>-17</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Completion error</error_text>
+  </error>
+  <error>
+    <error_name>KErrNotReady</error_name>
+    <error_value>-18</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Not ready</error_text>
+  </error>
+  <error>
+    <error_name>KErrUnknown</error_name>
+    <error_value>-19</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Unknown error</error_text>
+  </error>
+  <error>
+    <error_name>KErrCorrupt</error_name>
+    <error_value>-20</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Corrupt</error_text>
+  </error>
+  <error>
+    <error_name>KErrAccessDenied</error_name>
+    <error_value>-21</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Access denied</error_text>
+  </error>
+  <error>
+    <error_name>KErrLocked</error_name>
+    <error_value>-22</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Locked</error_text>
+  </error>
+  <error>
+    <error_name>KErrWrite</error_name>
+    <error_value>-23</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Failed to write</error_text>
+  </error>
+  <error>
+    <error_name>KErrDisMounted</error_name>
+    <error_value>-24</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Wrong disk present</error_text>
+  </error>
+  <error>
+    <error_name>KErrEof</error_name>
+    <error_value>-25</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Unexpected end of file</error_text>
+  </error>
+  <error>
+    <error_name>KErrDiskFull</error_name>
+    <error_value>-26</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Disk full</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadDriver</error_name>
+    <error_value>-27</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Bad device driver</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadName</error_name>
+    <error_value>-28</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Bad name</error_text>
+  </error>
+  <error>
+    <error_name>KErrCommsLineFail</error_name>
+    <error_value>-29</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Comms line failed</error_text>
+  </error>
+  <error>
+    <error_name>KErrCommsFrame</error_name>
+    <error_value>-30</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Comms frame error</error_text>
+  </error>
+  <error>
+    <error_name>KErrCommsOverrun</error_name>
+    <error_value>-31</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Comms overrun error</error_text>
+  </error>
+  <error>
+    <error_name>KErrCommsParity</error_name>
+    <error_value>-32</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Comms parity error</error_text>
+  </error>
+  <error>
+    <error_name>KErrTimedOut</error_name>
+    <error_value>-33</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Timed out</error_text>
+  </error>
+  <error>
+    <error_name>KErrCouldNotConnect</error_name>
+    <error_value>-34</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Failed to connect</error_text>
+  </error>
+  <error>
+    <error_name>KErrCouldNotDisconnect</error_name>
+    <error_value>-35</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Failed to disconnect</error_text>
+  </error>
+  <error>
+    <error_name>KErrDisconnected</error_name>
+    <error_value>-36</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Disconnected</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadLibraryEntryPoint</error_name>
+    <error_value>-37</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Bad library entry point</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadDescriptor</error_name>
+    <error_value>-38</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Bad descriptor</error_text>
+  </error>
+  <error>
+    <error_name>KErrAbort</error_name>
+    <error_value>-39</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Interrupted</error_text>
+  </error>
+  <error>
+    <error_name>KErrTooBig</error_name>
+    <error_value>-40</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Too big</error_text>
+  </error>
+  <error>
+    <error_name>KErrDivideByZero</error_name>
+    <error_value>-41</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Divide by zero</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadPower</error_name>
+    <error_value>-42</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Batteries too low</error_text>
+  </error>
+  <error>
+    <error_name>KErrDirFull</error_name>
+    <error_value>-43</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Folder full</error_text>
+  </error>
+  <error>
+    <error_name>KErrHardwareNotAvailable</error_name>
+    <error_value>-44</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSessionClosed</error_name>
+    <error_value>-45</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPermissionDenied</error_name>
+    <error_value>-46</error_value>
+    <error_component>E32  (E32ERR.H)</error_component>
+    <error_text>Permission denied when attempting operation</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrModemNotWorking</error_name>
+    <error_value>-101</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine. The fax modem has failed</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCannotConnect</error_name>
+    <error_value>-102</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCSIorCIG</error_name>
+    <error_value>-103</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrDISorDTC</error_name>
+    <error_value>-104</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrFrameFail</error_name>
+    <error_value>-105</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>The connection to the fax machine has been broken</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrAtNegotiatedSpeed</error_name>
+    <error_value>-106</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCFR</error_name>
+    <error_value>-107</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrMCF</error_name>
+    <error_value>-108</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCRP</error_name>
+    <error_value>-109</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoDial</error_name>
+    <error_value>-110</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine. Could not dial fax number</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoDialTone</error_name>
+    <error_value>-111</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine. No dial tone was detected</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrBusy</error_name>
+    <error_value>-112</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine. The line is busy</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoAnswer</error_name>
+    <error_value>-113</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine. The call was not answered</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoCarrier</error_name>
+    <error_value>-114</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine. The call was not answered by a fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrRemoteCannotReceive</error_name>
+    <error_value>-115</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not send to the fax machine. The fax machine is unable to receive faxes</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCompression</error_name>
+    <error_value>-116</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrPageTooLong</error_name>
+    <error_value>-117</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrDCN</error_name>
+    <error_value>-118</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrRemoteDCN</error_name>
+    <error_value>-119</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrHDLC</error_name>
+    <error_value>-120</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrStopAndWait</error_name>
+    <error_value>-121</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrTrainStop</error_name>
+    <error_value>-122</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrReceiveTimeout</error_name>
+    <error_value>-123</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not send to the fax machine. The connection has timed out</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCannotEndData</error_name>
+    <error_value>-124</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>The connection to the fax machine has been broken</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrEOP</error_name>
+    <error_value>-125</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrMPS</error_name>
+    <error_value>-126</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoReceiveMode</error_name>
+    <error_value>-127</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrCannotAnswer</error_name>
+    <error_value>-128</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrPrematureHangup</error_name>
+    <error_value>-129</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not receive fax. The fax machine ended the call</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrModemResponse</error_name>
+    <error_value>-130</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrPrematureOK</error_name>
+    <error_value>-131</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoFinalOK</error_name>
+    <error_value>-132</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrUnknownPageCode</error_name>
+    <error_value>-133</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoHangup</error_name>
+    <error_value>-134</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrNoNegotiate</error_name>
+    <error_value>-135</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrModemDisconnect</error_name>
+    <error_value>-136</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrWrongModemType</error_name>
+    <error_value>-137</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxErrTrainFail</error_name>
+    <error_value>-138</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxTransmitterStalled</error_name>
+    <error_value>-139</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxReceiverOverflow</error_name>
+    <error_value>-140</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCannotOpenPort</error_name>
+    <error_value>-141</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCannotCloseStore</error_name>
+    <error_value>-142</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCannotOpenStore</error_name>
+    <error_value>-143</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxThreadError</error_name>
+    <error_value>-144</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxFileSessionError</error_name>
+    <error_value>-145</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxLogCreateError</error_name>
+    <error_value>-146</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxFileSeeKError</error_name>
+    <error_value>-147</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxPDDError</error_name>
+    <error_value>-148</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxLDDError</error_name>
+    <error_value>-149</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxC32Error</error_name>
+    <error_value>-150</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCommsServerError</error_name>
+    <error_value>-151</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCommsPortError</error_name>
+    <error_value>-152</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCancelRequested</error_name>
+    <error_value>-153</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxNoClass2Xon</error_name>
+    <error_value>-154</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxConfigError</error_name>
+    <error_value>-155</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxCannotAutodetect</error_name>
+    <error_value>-156</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KCannotFindFirstPage</error_name>
+    <error_value>-157</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxBadInitialization</error_name>
+    <error_value>-158</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxOnlyJustAutoDetected</error_name>
+    <error_value>-159</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxBelowMinSpeed</error_name>
+    <error_value>-160</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxPollingUnsupported</error_name>
+    <error_value>-161</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KFaxNothingToPoll</error_name>
+    <error_value>-162</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KfaxEtelServerError</error_name>
+    <error_value>-163</error_value>
+    <error_component>ETelFax  (FAXSTD.H)</error_component>
+    <error_text>Could not connect to the fax machine</error_text>
+  </error>
+  <error>
+    <error_name>KPop3CannotConnect</error_name>
+    <error_value>-170</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>The POP3 server refused to allow a connection</error_text>
+  </error>
+  <error>
+    <error_name>KPop3InvalidUser</error_name>
+    <error_value>-171</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>The POP3 server refused to allow a connection. Check your mailbox username</error_text>
+  </error>
+  <error>
+    <error_name>KPop3InvalidLogin</error_name>
+    <error_value>-172</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>The POP3 server refused to allow a connection. Check your mailbox username and password</error_text>
+  </error>
+  <error>
+    <error_name>KPop3CannotCreateApopLogonString</error_name>
+    <error_value>-173</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>Could not create secure logon string. Mailbox server may not support secure logon</error_text>
+  </error>
+  <error>
+    <error_name>KPop3ProblemWithRemotePopServer</error_name>
+    <error_value>-174</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>Problem communicating with POP3 server</error_text>
+  </error>
+  <error>
+    <error_name>KPop3CannotOpenServiceEntry</error_name>
+    <error_value>-175</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KPop3CannotSetRequiredFolderContext</error_name>
+    <error_value>-176</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KPop3InvalidApopLogin</error_name>
+    <error_value>-177</error_value>
+    <error_component>EmailPop  (MIUT_ERR.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KImsKErrorDNSNotFound</error_name>
+    <error_value>-180</error_value>
+    <error_component>Email Sockets  (MIUT_ERR.H)</error_component>
+    <error_text>Could not find a DNS server. Please check the DNS address in the internet control panel</error_text>
+  </error>
+  <error>
+    <error_name>KImsKErrorControlPanelLocked</error_name>
+    <error_value>-181</error_value>
+    <error_component>Email Sockets  (MIUT_ERR.H)</error_component>
+    <error_text>Could not connect to internet. Please ensure the internet control panel Or equivalent description to internet control panel is closed</error_text>
+  </error>
+  <error>
+    <error_name>KErrNetUnreach</error_name>
+    <error_value>-190</error_value>
+    <error_component>Sockets  (INSOCK.H)</error_component>
+    <error_text>Could not connect to the network. Currently unreachable</error_text>
+  </error>
+  <error>
+    <error_name>KErrHostUnreach</error_name>
+    <error_value>-191</error_value>
+    <error_component>Sockets  (INSOCK.H)</error_component>
+    <error_text>Could not connect to the specified server</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoProtocolOpt</error_name>
+    <error_value>-192</error_value>
+    <error_component>Sockets  (INSOCK.H)</error_component>
+    <error_text>The specified server refuses the selected protocol</error_text>
+  </error>
+  <error>
+    <error_name>KErrUrgentData</error_name>
+    <error_value>-193</error_value>
+    <error_component>Sockets  (INSOCK.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapConnectFail</error_name>
+    <error_value>-200</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>Could not connect to IMAP4 server</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapServerFail</error_name>
+    <error_value>-201</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>The connection to the IMAP4 server has been broken</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapServerParse</error_name>
+    <error_value>-202</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapServerBusy</error_name>
+    <error_value>-203</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>The IMAP4 server refused to allow connection. The server is currently busy</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapServerVersion</error_name>
+    <error_value>-204</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>Could not connect to the IMAP server. The IMAP server is of the wrong version</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapSendFail</error_name>
+    <error_value>-205</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>Could not transmit to the IMAP4 server</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapBadLogon</error_name>
+    <error_value>-206</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>The IMAP4 server refused to allow a connection. Check your mailbox username and password</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapSelectFail</error_name>
+    <error_value>-207</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrImapWrongFolder</error_name>
+    <error_value>-208</error_value>
+    <error_component>Email IMAP4   (MIUT_ERR.H)</error_component>
+    <error_text>Could not select an IMAP4 folder</error_text>
+  </error>
+  <error>
+    <error_name>KSmtpNoMailFromErr</error_name>
+    <error_value>-240</error_value>
+    <error_component>Email SMTP  (MIUT_ERR.H)</error_component>
+    <error_text>Could not send email due to an invalid return email address. Check your email address in your account settings</error_text>
+  </error>
+  <error>
+    <error_name>KSmtpUnknownErr</error_name>
+    <error_value>-241</error_value>
+    <error_component>Email SMTP  (MIUT_ERR.H)</error_component>
+    <error_text>Problem while sending email</error_text>
+  </error>
+  <error>
+    <error_name>KSmtpBadMailFromAddress</error_name>
+    <error_value>-242</error_value>
+    <error_component>Email SMTP  (MIUT_ERR.H)</error_component>
+    <error_text>"Email message has an invalid ""From"" address"</error_text>
+  </error>
+  <error>
+    <error_name>KSmtpBadRcptToAddress</error_name>
+    <error_value>-243</error_value>
+    <error_component>Email SMTP  (MIUT_ERR.H)</error_component>
+    <error_text>"Email message has an invalid ""To"", ""Cc"" or ""Bcc"" address"</error_text>
+  </error>
+  <error>
+    <error_name>KSmtpLoginRefused</error_name>
+    <error_value>-244</error_value>
+    <error_component>Email SMTP  (MIUT_ERR.H)</error_component>
+    <error_text>SMTP server refused to allow connection</error_text>
+  </error>
+  <error>
+    <error_name>KBspInvalidMessage</error_name>
+    <error_value>-500</error_value>
+    <error_component>Bio Messaging  (BSP.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KBspSmartMessageInvalidToken</error_name>
+    <error_value>-501</error_value>
+    <error_component>Bio Messaging  (BSP.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KBspSmartMessageNoParserDefined</error_name>
+    <error_value>-502</error_value>
+    <error_component>Bio Messaging  (BSP.H)</error_component>
+    <error_text>Unknown message type cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpUnknownSmsType</error_name>
+    <error_value>-510</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Unknown message type cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpBIOMsgTypeNotSupported</error_name>
+    <error_value>-511</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Unknown message type cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KiacpMandatoryDataNotSet</error_name>
+    <error_value>-512</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpUnknownMailProtocol</error_name>
+    <error_value>-513</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Mailbox configuration message refers to an unknown protocol.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrRightToken</error_name>
+    <error_value>-514</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrLeftToken</error_name>
+    <error_value>-515</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrSmsDataNotParsed</error_name>
+    <error_value>-516</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrSmsDataNotRestored</error_name>
+    <error_value>-517</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Corrupt message cannot be read.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpScriptErrISPNotFound</error_name>
+    <error_value>-518</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Mailbox configuration message specifies an unknown Internet Access Point.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrScriptNotDefined</error_name>
+    <error_value>-519</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Message script error.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrScriptNotFoundInDB</error_name>
+    <error_value>-520</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Message script error.</error_text>
+  </error>
+  <error>
+    <error_name>KIacpErrScriptAlreadyAdd</error_name>
+    <error_value>-521</error_value>
+    <error_component>Bio Messaging   (IACPERR.H)</error_component>
+    <error_text>Message script error.</error_text>
+  </error>
+  <error>
+    <error_name>KErrWouldBlock</error_name>
+    <error_value>-1000</error_value>
+    <error_component>Sockets  (INSOCK.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrExtended</error_name>
+    <error_value>-1000</error_value>
+    <error_component>BAFL  (BASCHED.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrExtendedWithText</error_name>
+    <error_value>-1001</error_value>
+    <error_component>BAFL  (BASCHED.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KLeaveWithoutAlert</error_name>
+    <error_value>-1002</error_value>
+    <error_component>BAFL  (BASCHED.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KLeaveExit</error_name>
+    <error_value>-1003</error_value>
+    <error_component>BAFL  (BASCHED.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrEtelNotCallOwner</error_name>
+    <error_value>-2000</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelDuplicatePhoneName</error_name>
+    <error_value>-2001</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelAlreadyCallOwner</error_name>
+    <error_value>-2002</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelNoCarrier</error_name>
+    <error_value>-2003</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Problem communicating receiving device. Call was unexpectedly dropped</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelBusyDetected</error_name>
+    <error_value>-2004</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Phone number is busy. Wait before trying again</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelNoClientInterestedInThisCall</error_name>
+    <error_value>-2005</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelInitialisationFailure</error_name>
+    <error_value>-2006</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelCallNotActive</error_name>
+    <error_value>-2007</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelNoAnswer</error_name>
+    <error_value>-2008</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Call was not answered</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelNoDialTone</error_name>
+    <error_value>-2009</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelConfigPortFailure</error_name>
+    <error_value>-2010</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelFaxChunkNotCreated</error_name>
+    <error_value>-2011</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelNotFaxOwner</error_name>
+    <error_value>-2012</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelPortNotLoanedToClient</error_name>
+    <error_value>-2013</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelWrongModemType</error_name>
+    <error_value>-2014</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelUnknownModemCapability</error_name>
+    <error_value>-2015</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelAnswerAlreadyOutstanding</error_name>
+    <error_value>-2016</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelModemNotDetected</error_name>
+    <error_value>-2017</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrEtelModemSettingsCorrupt</error_name>
+    <error_value>-2018</error_value>
+    <error_component>Etel  (ETEL.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrExitNoModem</error_name>
+    <error_value>-3001</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text>No response from phone. Ensure phone is switched on</error_text>
+  </error>
+  <error>
+    <error_name>KErrExitModemError</error_name>
+    <error_value>-3002</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text>Problem communicating with Internet service's modem</error_text>
+  </error>
+  <error>
+    <error_name>KErrExitLoginFail</error_name>
+    <error_value>-3003</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text>Internet username or password is incorrect.</error_text>
+  </error>
+  <error>
+    <error_name>KErrExitScriptTimeOut</error_name>
+    <error_value>-3004</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text>Internet service login script timed out. Internet service login script may be incorrect.</error_text>
+  </error>
+  <error>
+    <error_name>KErrExitScriptError</error_name>
+    <error_value>-3005</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text>Problem with Internet service login script. Internet service login script may be incorrect.</error_text>
+  </error>
+  <error>
+    <error_name>KErrNetDialDatabaseDefaultUndefined</error_name>
+    <error_value>-3006</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrNetDialDatabaseTypeUnknown</error_name>
+    <error_value>-3007</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrNetDialDatabaseNotFound</error_name>
+    <error_value>-3008</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrNetDialHscsdNotSupported</error_name>
+    <error_value>-3009</error_value>
+    <error_component>Networking  (ND_ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIfAuthenticationFailure</error_name>
+    <error_value>-3050</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Internet username or password is incorrect</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfAuthNotSecure</error_name>
+    <error_value>-3051</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Internet service server only allows plain text authentication. This is currently disabled.</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfAccountDisabled</error_name>
+    <error_value>-3052</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Could not connect to Internet service. Your account has been disabled</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfRestrictedLogonHours</error_name>
+    <error_value>-3053</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Could not connect to Internet service. Your account is only active during restricted hours</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfPasswdExpired</error_name>
+    <error_value>-3054</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Could not connect to Internet service. Your Internet password has expired</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfNoDialInPermission</error_name>
+    <error_value>-3055</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Could not connect to Internet service. Your do not have dial-in permission</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfChangingPassword</error_name>
+    <error_value>-3056</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfCallbackNotAcceptable</error_name>
+    <error_value>-3057</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Could not connect to Internet service. Callback is not supported</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfDNSNotFound</error_name>
+    <error_value>-3058</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Could not find specified Internet server</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfLRDBadLine</error_name>
+    <error_value>-3059</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Bad line to Internet service dropped</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfNoServerPresent</error_name>
+    <error_value>-3060</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrIfRemoteDisconnected</error_name>
+    <error_value>-3061</error_value>
+    <error_component>TCP/IP  (IN_IFACE.H)</error_component>
+    <error_text>Panic</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelWrongMode</error_name>
+    <error_value>-3201</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Client has requested a mode-specific API service and the phone is currently in the wrong mode.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelFailedDueToModeChange</error_name>
+    <error_value>-3202</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Error code to cater for requests that fail because the mode changes mid-way during servicing that request</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelRemoteEndTermination</error_name>
+    <error_value>-3203</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Remote user (or network) has terminated an ongoing call.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelSmsFormatNotSupported</error_name>
+    <error_value>-3204</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Client requested a message format that is not supported by TSY anor phone.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelFeatureCodeNotSet</error_name>
+    <error_value>-3205</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Client requests a service whose feature code has not been programmed e.g. Call Forwarding.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelNetworkNotResponding</error_name>
+    <error_value>-3206</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>"Network has failed to respond to an MS initiated request e.g. ""flash info"""</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelCallForbidden</error_name>
+    <error_value>-3207</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Client requests a call to a destination that is forbidden.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelMaxReached</error_name>
+    <error_value>-3208</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The maximum number of entries in astore has been reached.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelCallTerminated</error_name>
+    <error_value>-3209</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Remote user (or network) has terminated an ongoing call.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelFormatNotSupported</error_name>
+    <error_value>-3210</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The client requested a message format that is not supported by TSY anor phone.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelHiddenEntry</error_name>
+    <error_value>-3211</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The phonebook entry is hidden.This is a USIM phonebook specific error.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelFallbacktoVoice</error_name>
+    <error_value>-3212</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The request to answer a multimedia call has failed because the network can now only support voice.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelMacVerificationFailed</error_name>
+    <error_value>-3213</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Authentication derived MAC does not match locally calculated MAC</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelSqnVerificationFailed</error_name>
+    <error_value>-3214</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Authentication derived SQN value is not in the expected range</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelAuthenticateFailed</error_name>
+    <error_value>-3215</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Authenticate command failed</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScMaxApplicationsActive</error_name>
+    <error_value>-3216</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Application cannot be activated as maximum number of applications already active.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScNoInfoNonVolatileMemoryUnchanged</error_name>
+    <error_value>-3217</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>No information given, the state of the non-volatile memory is unchanged.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScNoInfoNonVolatileMemoryChanged</error_name>
+    <error_value>-3218</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>No information given, the state of the non-volatile memory is changed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScReturnedDataCorrupt</error_name>
+    <error_value>-3219</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Part of the returned data may be corrupt.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScEofReached</error_name>
+    <error_value>-3220</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>End of file reached before reading requested number of bytes or records have been read.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScFileInvalidated</error_name>
+    <error_value>-3221</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Selected file is invalidated.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScNoMemory</error_name>
+    <error_value>-3222</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The smart card had a memory problem when executing the command.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScWrongLength</error_name>
+    <error_value>-3223</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Wrong length</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScGeneral</error_name>
+    <error_value>-3224</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Technical problem, no precise diagnosis</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScIncompatibleFileStructure</error_name>
+    <error_value>-3225</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Command incompatible with file structure</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScReferencedDataInvalidated</error_name>
+    <error_value>-3226</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Referenced data invalidated</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScFunctionNotSupported</error_name>
+    <error_value>-3227</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Function not supported</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScFileNotFound</error_name>
+    <error_value>-3228</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>File not found</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScRecordNotFound</error_name>
+    <error_value>-3229</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Record not found</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScReferencedDataNotFound</error_name>
+    <error_value>-3230</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Referenced data not found</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMEtelScApplicationNotActive</error_name>
+    <error_value>-3231</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Application not activate.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsAddressVacant</error_name>
+    <error_value>-3256</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>SMS destination address is valid but not currently allocated to an SMS terminal.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsAddressTranslationFailure</error_name>
+    <error_value>-3257</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>SMS destination address is invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsNetworkResourceShortage</error_name>
+    <error_value>-3258</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Network transmissionfailed due to lack of network resource or link capacity.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsNetworkFailure</error_name>
+    <error_value>-3259</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A network node failed, a link failed or a required operation failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsInvalidTeleserviceId</error_name>
+    <error_value>-3260</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>SMS Teleservice ID is either not known or not supported.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsOtherNetworkProblem</error_name>
+    <error_value>-3261</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A network problem other than identified by above error codes.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsNoPageResponse</error_name>
+    <error_value>-3262</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The addressed MS-based SME is known but it does not respond to a page.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsDestinationBusy</error_name>
+    <error_value>-3263</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The addressed MS-based SME is SMS capable but is currently engaged in a call, a service or a call mode that precludes the use of SMS.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsNoAcknowledgement</error_name>
+    <error_value>-3264</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The destination SME does not acknowledge receipt of the SMS delivery.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsDestinationResourceShortage</error_name>
+    <error_value>-3265</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A required terminal resource (e.g.memory) is not available to process this message.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsDeliveryPostponed</error_name>
+    <error_value>-3266</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Delivery is not currently possible but SMS notification is pending.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsOtherNetworkProblem</error_name>
+    <error_value>-3267</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The addressed destination is out of service for an extended period of time.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsDestinationNoLongerAtAddress</error_name>
+    <error_value>-3268</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The MS based SME is no longer at the temporary SMS routing address.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsOtherTerminalProblem</error_name>
+    <error_value>-3269</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A terminal problem other than identified by the above error codes.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsRadioInterfaceResourceShortage</error_name>
+    <error_value>-3320</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>There is no channel available or there is radio congestion at this time.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsRadioInterfaceIncompatibility</error_name>
+    <error_value>-3321</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The MS for an MS-based SME is operating in a mode that does not support SMS at this time.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsOtherRadioInterfaceProblem</error_name>
+    <error_value>-3322</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A radio interface problem other than identified by the above error codes.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsEncodingProblem</error_name>
+    <error_value>-3352</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The size of a parameter or field is not what is expected.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsOriginationDenied</error_name>
+    <error_value>-3353</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The originating MIN is not recognized, the originating address is not allowed for the originating MIN, the ESN doesn't match the originating MIN, the origination is not authorized, the originating address is not recognized, etc.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsTerminationDenied</error_name>
+    <error_value>-3354</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The destination is not authorized to receive the SMS message, the MC refused the message, the destination SME refused the message, the destination is not authorized for a required supplementary service, etc.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsSupplServiceNotSupported</error_name>
+    <error_value>-3355</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The originating supplementary service is not known or supported, the sender is not authorized for an originating supplementary service, etc.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsSmsNotSupported</error_name>
+    <error_value>-3356</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>SMS is not supported by an addressed functional entity.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsMissingExpectedParameter</error_name>
+    <error_value>-3358</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>An optional parameter is missing that is required for a particular function.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsMissingMandatoryParameter</error_name>
+    <error_value>-3359</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A parameter is missing that is mandatory for a particular message.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsUnrecognizedParameterValue</error_name>
+    <error_value>-3360</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A known parameter has an unknown or unsupported value.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsUnexpectedParameterValue</error_name>
+    <error_value>-3361</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>A known parameter has a known, but unexpected value.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsUserDataSizeError</error_name>
+    <error_value>-3362</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>The User Data size is too large for access technology, transport network, or call mode, etc. The User Data size is not what is expected for the indicated teleservice.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaSmsOtherGeneralProblem</error_name>
+    <error_value>-3363</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Other general problems.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGenConnDatabaseDefaultUndefined</error_name>
+    <error_value>-3606</error_value>
+    <error_component>Generic Connection Agent  (GENCONNERROR.H)</error_component>
+    <error_text>CommDb Error</error_text>
+  </error>
+  <error>
+    <error_name>KErrGenConnDatabaseTypeUnknown</error_name>
+    <error_value>-3607</error_value>
+    <error_component>Generic Connection Agent  (GENCONNERROR.H)</error_component>
+    <error_text>CommDb Error</error_text>
+  </error>
+  <error>
+    <error_name>KErrGenConnDatabaseNotFound</error_name>
+    <error_value>-3608</error_value>
+    <error_component>Generic Connection Agent  (GENCONNERROR.H)</error_component>
+    <error_text>CommDb Error</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRUnspecifedAbnormalRelease</error_name>
+    <error_value>-4001</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRChannelUnacceptable</error_name>
+    <error_value>-4002</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRTimerExpired</error_name>
+    <error_value>-4003</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRNoActivityOnRadioPath</error_name>
+    <error_value>-4004</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRPreEmptiveRelease</error_name>
+    <error_value>-4005</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRCallAlreadyCleared</error_name>
+    <error_value>-4065</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRInvalidMessage</error_name>
+    <error_value>-4095</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRNonExistentMessage</error_name>
+    <error_value>-4097</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>No network support for requested operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRIncompatibleMessageWithCallState</error_name>
+    <error_value>-4098</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRInvalidInformationElement</error_name>
+    <error_value>-4100</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmRRUnspecifiedProtocolError</error_name>
+    <error_value>-4111</error_value>
+    <error_component>TelephonyGSMRadioResourceNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMUnallocatedTmsi</error_name>
+    <error_value>-4129</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMImsiUnknownInHlr</error_name>
+    <error_value>-4130</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not allowed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMIllegalMs</error_name>
+    <error_value>-4131</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Phone is blacklisted. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMImsiUnknownInVlr</error_name>
+    <error_value>-4132</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMImeiNotAccepted</error_name>
+    <error_value>-4133</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Phone failure.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMIllegalMe</error_name>
+    <error_value>-4134</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Phone is blacklisted. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsServiceNotAllowed</error_name>
+    <error_value>-4135</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Failed to connect to the GPRS network</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsAndNonGprsServicesNotAllowed</error_name>
+    <error_value>-4136</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Failed to connect to the mobile network</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsMSIdentityCannotBeDerivedByTheNetwork</error_name>
+    <error_value>-4137</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Identity could not be derived by the network</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsMSImplicitlyDetached</error_name>
+    <error_value>-4138</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Your device was disconnected from the GPRS network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMPlmnNotAllowed</error_name>
+    <error_value>-4139</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Roaming is not allowed in this area.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMLocationAreaNotAllowed</error_name>
+    <error_value>-4140</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Roaming is not allowed in this area.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMRoamingNotAllowedInThisLocationArea</error_name>
+    <error_value>-4141</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Roaming is not allowed in this area.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsMSCTemporarilyNotReachable</error_name>
+    <error_value>-4144</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>GPRS MSC temporary not reachable</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMNetworkFailure</error_name>
+    <error_value>-4145</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMCongestion</error_name>
+    <error_value>-4150</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsLlcOrSndcpFailure</error_name>
+    <error_value>-4153</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Your connection to Internet was dropped.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsInsufficientResources</error_name>
+    <error_value>-4154</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Network overloaded.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsMissingorUnknownAPN</error_name>
+    <error_value>-4155</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>"""Could not connect to Internet service. Callback is not supported"""""""</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsUnknownPDPAddress</error_name>
+    <error_value>-4156</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>The address for the Internet provider is not correct.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsUserAuthenticationFailure</error_name>
+    <error_value>-4157</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Failed to identify the user.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsActivationRejectedByGGSN</error_name>
+    <error_value>-4158</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>No possible to connect to the Internet.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsActivationRejected</error_name>
+    <error_value>-4159</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>No possible to connect to the Internet.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMServiceOptionNotSupported</error_name>
+    <error_value>-4160</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMServiceOptionNotSubscribed</error_name>
+    <error_value>-4161</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Service not subscribed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMServiceOptionTemporaryOutOfOrder</error_name>
+    <error_value>-4162</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Service temporarily out of use. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsNSAPIAlreadyUsed</error_name>
+    <error_value>-4163</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>NS API already used</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsRegularContextDeactivation</error_name>
+    <error_value>-4164</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Regular context deactivation</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsQoSNotAccepted</error_name>
+    <error_value>-4165</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>The requested quality of service was not granted.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMCallCanNotBeIdentified</error_name>
+    <error_value>-4166</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsReactivationRequested</error_name>
+    <error_value>-4167</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>Reactivation requested</error_text>
+  </error>
+  <error>
+    <error_name>KErrGprsFeatureNotSupported</error_name>
+    <error_value>-4168</error_value>
+    <error_component>GPRS  (ETELPCKT.H)</error_component>
+    <error_text>This is not supported.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMSemanticErrorInMessage</error_name>
+    <error_value>-4223</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMMandatoryInformationElementError</error_name>
+    <error_value>-4224</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMNonExistentMessageType</error_name>
+    <error_value>-4225</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>No network support for requested operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMIncompatibleMessageWithProtocolState</error_name>
+    <error_value>-4226</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMNonExistentInformationElement</error_name>
+    <error_value>-4227</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMConditionalIEError</error_name>
+    <error_value>-4228</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmMMIncompatibleMessageWithCallState</error_name>
+    <error_value>-4229</error_value>
+    <error_component>TelephonyGSMMobilityManagementNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUnassignedNumber</error_name>
+    <error_value>-4257</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Invalid phone number. Check the number and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNoRouteToTransitNetwork</error_name>
+    <error_value>-4258</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNoRouteToDestination</error_name>
+    <error_value>-4259</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Invalid phone number. Check the number and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCChannelUnacceptable</error_name>
+    <error_value>-4262</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCOperatorDeterminedBarring</error_name>
+    <error_value>-4264</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not allowed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUserBusy</error_name>
+    <error_value>-4273</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Number is busy. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUserNotResponding</error_name>
+    <error_value>-4274</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>The remote user is not currently reachable. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUserAlertingNoAnswer</error_name>
+    <error_value>-4275</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>The remote user is not currently reachable. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCCallRejected</error_name>
+    <error_value>-4276</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Short network failure. Try again immediately.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNumberChanged</error_name>
+    <error_value>-4277</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Number has changed. Check the number and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNonSelectedUserClearing</error_name>
+    <error_value>-4282</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCDestinationOutOfOrder</error_name>
+    <error_value>-4283</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCInvalidNumberFormat</error_name>
+    <error_value>-4284</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Invalid phone number. Check the number and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCFacilityRejected</error_name>
+    <error_value>-4285</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCResponseToStatusEnquiry</error_name>
+    <error_value>-4286</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNormalUnspecified</error_name>
+    <error_value>-4287</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNoChannelAvailable</error_name>
+    <error_value>-4290</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNetworkOutOfOrder</error_name>
+    <error_value>-4294</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Serious cellular network failure. Please contact the cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCTemporaryFailure</error_name>
+    <error_value>-4297</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Short network failure. Try again immediately.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCSwitchingEquipmentCongestion</error_name>
+    <error_value>-4298</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCAccessInformationDiscarded</error_name>
+    <error_value>-4299</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCRequestedChannelNotAvailable</error_name>
+    <error_value>-4300</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCResourceNotAvailable</error_name>
+    <error_value>-4303</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCQualityOfServiceNotAvailable</error_name>
+    <error_value>-4305</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Service can not be provided.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCRequestedFacilityNotSubscribed</error_name>
+    <error_value>-4306</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCIncomingCallsBarredInCug</error_name>
+    <error_value>-4311</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Incoming calls are not allowed within closed user group.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCBearerCapabilityNotAuthorised</error_name>
+    <error_value>-4313</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Unauthorised operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCBearerCapabilityNotCurrentlyAvailable</error_name>
+    <error_value>-4314</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Requested service is not presently available. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCServiceNotAvailable</error_name>
+    <error_value>-4319</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCBearerServiceNotImplemented</error_name>
+    <error_value>-4321</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCChannelTypeNotImplemented</error_name>
+    <error_value>-4322</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCAcmGreaterThanAcmMax</error_name>
+    <error_value>-4324</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCRequestedFacilityNotImplemented</error_name>
+    <error_value>-4325</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCOnlyRestrictedDigitalInformationBCAvailable</error_name>
+    <error_value>-4326</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCServiceNotImplemented</error_name>
+    <error_value>-4335</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCInvalidCallReferenceValue</error_name>
+    <error_value>-4337</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCChannelDoesNotExist</error_name>
+    <error_value>-4338</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCSuspendedCallExistsButCallIdentityDoesNotWork</error_name>
+    <error_value>-4339</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCCallIdentityInUse</error_name>
+    <error_value>-4340</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNoCallSuspended</error_name>
+    <error_value>-4341</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCRequestedCallIdentityAlreadyCleared</error_name>
+    <error_value>-4342</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUserNotInCug</error_name>
+    <error_value>-4343</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Only calls within closed user group allowed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCIncompatibleDestination</error_name>
+    <error_value>-4344</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check connection type in connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCInvalidTransitNetworkSelection</error_name>
+    <error_value>-4347</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCIncompatibleSegmentedMessage</error_name>
+    <error_value>-4350</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCSemanticallyIncorrectMessage</error_name>
+    <error_value>-4351</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCInvalidMandatoryInformation</error_name>
+    <error_value>-4352</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNonExistentMessageType</error_name>
+    <error_value>-4353</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCIncompatibleMessageInProtocolState</error_name>
+    <error_value>-4354</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCNonExistentInformationElement</error_name>
+    <error_value>-4355</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCConditionalIEError</error_name>
+    <error_value>-4356</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCIncompatibleMessageInCallState</error_name>
+    <error_value>-4357</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCRecoveryOnTimerExpiry</error_name>
+    <error_value>-4358</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUnspecifiedProtocolError</error_name>
+    <error_value>-4367</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmCCUnspecifiedInterworkingError</error_name>
+    <error_value>-4383</error_value>
+    <error_component>TelephonyGSMCallControlNetworkErrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSUnknownSubscriber</error_name>
+    <error_value>-4385</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Unknown subscriber. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSIllegalSubscriber</error_name>
+    <error_value>-4393</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Unknown subscriber. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSBearerServiceNotProvisioned</error_name>
+    <error_value>-4394</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Service is not provisioned.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSTeleserviceNotProvisioned</error_name>
+    <error_value>-4395</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Service is not provisioned.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSIllegalEquipment</error_name>
+    <error_value>-4396</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSCallBarred</error_name>
+    <error_value>-4397</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Calls are barred by the operator. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSIllegalOperation</error_name>
+    <error_value>-4400</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSErrorStatus</error_name>
+    <error_value>-4401</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSNotAvailable</error_name>
+    <error_value>-4402</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSSubscriptionViolation</error_name>
+    <error_value>-4403</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Operation is not allowed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSIncompatibility</error_name>
+    <error_value>-4404</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>The requested supplementary service is incompatible.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSFacilityNotSupported</error_name>
+    <error_value>-4405</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSAbsentSubscriber</error_name>
+    <error_value>-4411</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSSystemFailure</error_name>
+    <error_value>-4418</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSDataMissing</error_name>
+    <error_value>-4419</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Parameter in the service request is missing.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSUnexpectedDataValue</error_name>
+    <error_value>-4420</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Unknown parameter in the service request.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSPasswordRegistrationFailure</error_name>
+    <error_value>-4421</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Wrong service password.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSNegativePasswordCheck</error_name>
+    <error_value>-4422</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Wrong service password.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSPasswordAttemptsViolation</error_name>
+    <error_value>-4427</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Too many times wrong service password.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSUnknownAlphabet</error_name>
+    <error_value>-4455</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Incompatible service language or alphabets.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSUssdBusy</error_name>
+    <error_value>-4456</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSMaxNumMptyParticipants</error_name>
+    <error_value>-4510</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Too many participants of a multiparty call.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSSResourcesUnavailable</error_name>
+    <error_value>-4511</error_value>
+    <error_component>TelephonyGSMSupplementaryServices  (EXTERROR.H)</error_component>
+    <error_text>Temporarily out of network resources when requesting the service.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnassignedNumber</error_name>
+    <error_value>-4513</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Invalid phone number. Check the number and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSOperatorDeterminedBarring</error_name>
+    <error_value>-4520</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not allowed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSCallBarred</error_name>
+    <error_value>-4522</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Call barred.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSReserved</error_name>
+    <error_value>-4523</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNetworkFailure</error_name>
+    <error_value>-4529</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSShortMessageTransferRejected</error_name>
+    <error_value>-4533</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Short network failure. Try again immediately.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSMemoryCapacityExceeded</error_name>
+    <error_value>-4534</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSDestinationOutOfOrder</error_name>
+    <error_value>-4539</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnidentifiedSubscriber</error_name>
+    <error_value>-4540</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown subscriber. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSFacilityRejected</error_name>
+    <error_value>-4541</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnknownSubscriber</error_name>
+    <error_value>-4542</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown subscriber. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNetworkOutOfOrder</error_name>
+    <error_value>-4550</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Serious cellular network failure. Please contact the cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSTemporaryFailure</error_name>
+    <error_value>-4553</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSCongestion</error_name>
+    <error_value>-4554</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSResourcesUnavailable</error_name>
+    <error_value>-4559</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Network busy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSRequestedFacilityNotSubscribed</error_name>
+    <error_value>-4562</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Service not subscribed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSRequestedFacilityNotImplemented</error_name>
+    <error_value>-4581</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Check operator services or connection settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInvalidShortMessageTransferReferenceValue</error_name>
+    <error_value>-4593</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedInvalidMessage</error_name>
+    <error_value>-4607</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInvalidMandatoryInformation</error_name>
+    <error_value>-4608</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Error in message content.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNonExistentMessageType</error_name>
+    <error_value>-4609</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSIncompatibleMessageWithSmsProtocolState</error_name>
+    <error_value>-4610</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInformationElementNotImplemented</error_name>
+    <error_value>-4611</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Message type is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedProtocolError</error_name>
+    <error_value>-4623</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedInterworkingError</error_name>
+    <error_value>-4639</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSTelematicInterworkingNotSupported</error_name>
+    <error_value>-4640</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSShortMessageType0NotSupported</error_name>
+    <error_value>-4641</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Message type is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSCannotReplaceShortMessage</error_name>
+    <error_value>-4642</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Cannot deliver the message to the destination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedPIDError</error_name>
+    <error_value>-4655</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSDataCodingSchemeNotSupported</error_name>
+    <error_value>-4656</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Incompatible message language or alphabets.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSMessageClassNotSupported</error_name>
+    <error_value>-4657</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Message type is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedDCSError</error_name>
+    <error_value>-4671</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSCommandCannotBeActioned</error_name>
+    <error_value>-4672</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation cannot be performed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSCommandNotSupported</error_name>
+    <error_value>-4673</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedCommandError</error_name>
+    <error_value>-4687</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSTpduNotSupported</error_name>
+    <error_value>-4688</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not presently supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSServiceCentreBusy</error_name>
+    <error_value>-4704</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Service centre is busy. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNoSCSubscription</error_name>
+    <error_value>-4705</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>No service centre. Check messaging settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSCSystemFailure</error_name>
+    <error_value>-4706</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Service centre failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInvalidSMEAddress</error_name>
+    <error_value>-4707</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Service centre failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSDestinationSMEBarred</error_name>
+    <error_value>-4710</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>The destination is barred.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSDuplicateSM</error_name>
+    <error_value>-4711</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSTPVPFNotSupported</error_name>
+    <error_value>-4712</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Short message validity period not supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSTPVPNotSupported</error_name>
+    <error_value>-4713</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Short message validity period not supported by the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimSMSStorageFull</error_name>
+    <error_value>-4720</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Short message storage in SIM card is full.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNoSMSStorageCapabilityInSim</error_name>
+    <error_value>-4721</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>No short message storage capability in SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSErrorInMS</error_name>
+    <error_value>-4722</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Error receiving the short message.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSMemCapacityExceeded</error_name>
+    <error_value>-4723</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>No space to store the short message.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimAppToolkitBusy</error_name>
+    <error_value>-4724</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>SIM is busy performing another operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnspecifiedErrorCause</error_name>
+    <error_value>-4767</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Unknown network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSFailureInME</error_name>
+    <error_value>-4812</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Error in receiving the short message.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSServiceOfMSReserved</error_name>
+    <error_value>-4813</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Busy because of short message operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSOperationNotAllowed</error_name>
+    <error_value>-4814</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Operation is not allowed. Contact cellular network operator.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSOperationNotSupported</error_name>
+    <error_value>-4815</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Phone is not supporting the operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInvalidPDUModeParameter</error_name>
+    <error_value>-4816</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInvalidTextModeParameter</error_name>
+    <error_value>-4817</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimNotInserted</error_name>
+    <error_value>-4822</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Insert SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimPin1Required</error_name>
+    <error_value>-4823</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>PIN1 is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSPhoneToSimLockRequired</error_name>
+    <error_value>-4824</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimFailure</error_name>
+    <error_value>-4825</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>SIM card failure. Replace the SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimBusy</error_name>
+    <error_value>-4826</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>SIM card is busy performing another operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimWrong</error_name>
+    <error_value>-4827</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Wrong SIM card. Replace the SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSSimPuk1Required</error_name>
+    <error_value>-4828</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>PUK1 code is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSPin2Required</error_name>
+    <error_value>-4829</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>PIN2 is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSPuk2Required</error_name>
+    <error_value>-4830</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>PUK2 code is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSMemoryFailure</error_name>
+    <error_value>-4832</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Memory failure. Try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSInvalidMemoryIndex</error_name>
+    <error_value>-4833</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Memory failure. Try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSMemoryFull</error_name>
+    <error_value>-4834</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Memory is full. Remove some messages and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnknownSCAddress</error_name>
+    <error_value>-4842</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNoNetworkService</error_name>
+    <error_value>-4843</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Service not available.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSNetworkTimeout</error_name>
+    <error_value>-4844</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSCnmaAckNotExpected</error_name>
+    <error_value>-4852</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsmSMSUnknownError</error_name>
+    <error_value>-5012</error_value>
+    <error_component>TelephonyGSMSms  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBadComponentIndex</error_name>
+    <error_value>-5000</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying the use of an invalid component index</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBadBasePath</error_name>
+    <error_value>-5001</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying the use of a base uri path is not absolute and not empty</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBufferOverflow</error_name>
+    <error_value>-5002</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that a buffer is not big enough to append a component and delimiters</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBadDelimitedParserMode</error_name>
+    <error_value>-5003</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying the use of an supported parsing mode</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrNoDelimiter</error_name>
+    <error_value>-5004</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that the delimiting character is not set</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrNotParsed</error_name>
+    <error_value>-5005</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that the data has not been parsed</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErr16BitChar</error_name>
+    <error_value>-5006</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that a 16-bit character was found in data to be escape encode</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBadEscapeTriple</error_name>
+    <error_value>-5007</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that a badly formed escape triple was found in data being escape decoded</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsCannotConvert</error_name>
+    <error_value>-5008</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that charconv was unable to convert the input data</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrEmptyData</error_name>
+    <error_value>-5009</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that there was empty data</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrNoIntegerInData</error_name>
+    <error_value>-5010</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error specifying that there is no character representation of an integer</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrInvalidUri</error_name>
+    <error_value>-5011</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error code specifying an invalid uri</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBadEscapeMode</error_name>
+    <error_value>-5012</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error code for unsupported escaping mode</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrBadTextRemoveMode</error_name>
+    <error_value>-5013</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Error code for unsupported text whitespace removal mode</error_text>
+  </error>
+  <error>
+    <error_name>KUriUtilsErrDecodeMalformedQuotedString</error_name>
+    <error_value>-5014</error_value>
+    <error_component>URI Utils  (URIUTILSCOMMON.H)</error_component>
+    <error_text>Quoted string could not be decoded as it is malformed</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707PhoneFailure</error_name>
+    <error_value>-5024</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Phone failure. Switch off the phone and then switch on.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707NoConnectionToPhone</error_name>
+    <error_value>-5025</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Phone failure. Switch off the phone and then switch on.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707PhoneLinkReserved</error_name>
+    <error_value>-5026</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Phone is busy due the other call operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707OperationNotAllowed</error_name>
+    <error_value>-5027</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not allowed. Check phone settings.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707OperationNotSupported</error_name>
+    <error_value>-5028</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Operation is not supported by the phone.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707PhoneToSimLockRequired</error_name>
+    <error_value>-5029</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Blank</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SimNotInserted</error_name>
+    <error_value>-5034</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Insert SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SimPin1Required</error_name>
+    <error_value>-5035</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>PIN1 is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SIMPuk1Required</error_name>
+    <error_value>-5036</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>PUK1 code is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SimFailure</error_name>
+    <error_value>-5037</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>SIM card failure. Replace the SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SimBusy</error_name>
+    <error_value>-5038</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>SIM card is busy while performing other operation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SimWrong</error_name>
+    <error_value>-5039</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Wrong SIM card. Replace the SIM card.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707IncorrectPassword</error_name>
+    <error_value>-5040</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Incorrect code please re-enter.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SimPin2Required</error_name>
+    <error_value>-5041</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>PIN2 is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707SIMPuk2Required</error_name>
+    <error_value>-5042</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>PUK2 code is required to continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707MemoryFull</error_name>
+    <error_value>-5043</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Memory is full. Remove some messages and try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707InvalidIndex</error_name>
+    <error_value>-5044</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Memory failure. Try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707NotFound</error_name>
+    <error_value>-5045</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Requested information not found. Try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707MemoryFailure</error_name>
+    <error_value>-5046</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Memory failure. Try again.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707TextStringTooLong</error_name>
+    <error_value>-5047</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Entered string is too long. Please re-enter the string.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707InvalidCharsInTextString</error_name>
+    <error_value>-5048</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Invalid characters in text string. Please re-enter the string.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707DialStringTooLong</error_name>
+    <error_value>-5049</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Entered dial string is too long. Please re-enter the string.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707InvalidCharsInDialString</error_name>
+    <error_value>-5050</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Invalid characters in dial string. Please re-enter the string.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707NoNetworkService</error_name>
+    <error_value>-5054</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Service is not available.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707NetworkTimeout</error_name>
+    <error_value>-5055</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrGsm0707UnknownError</error_name>
+    <error_value>-5124</error_value>
+    <error_component>TelephonyGSMTE-TAerrors  (EXTERROR.H)</error_component>
+    <error_text>Temporary network failure. Try again later.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndNameNotFound</error_name>
+    <error_value>-5120</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Returned when no data found for GetByName</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndAddrNotFound</error_name>
+    <error_value>-5121</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Returned when no data found for GetByAddr</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndNoServers</error_name>
+    <error_value>-5122</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>No DNS server addresses available (timeout)</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndNoRoute</error_name>
+    <error_value>-5123</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Send timeout for the query (probably no route for server)</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndCache</error_name>
+    <error_value>-5124</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Corrupted data in cache (= bad DNS reply from server)</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndFormat</error_name>
+    <error_value>-5125</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Wrong format</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndServerFailure</error_name>
+    <error_value>-5126</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrDndBadName</error_name>
+    <error_value>-5127</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Bad name</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndNotImplemented</error_name>
+    <error_value>-5128</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrDndRefused</error_name>
+    <error_value>-5129</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Server refused</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndBadQuery</error_name>
+    <error_value>-5130</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Bad query from application (invalid domain name, etc.), not processed</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndNoRecord</error_name>
+    <error_value>-5131</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>No record found of the desired type and class.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndNameTooBig</error_name>
+    <error_value>-5132</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Buffer overflow with name</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndUnknown</error_name>
+    <error_value>-5133</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>Misc error - must be something wrong with the packet or the NS</error_text>
+  </error>
+  <error>
+    <error_name>KErrDndServerUnusable</error_name>
+    <error_value>-5134</error_value>
+    <error_component>Domain Name Daemon  (DND_ERR.H)</error_component>
+    <error_text>The server is unusable for the attempted query (for example, not allowing recursion)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_NotANATTPacket</error_name>
+    <error_value>-5154</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>UDP packet is NOT a NAT Taversal packet</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_NoInnerSource</error_name>
+    <error_value>-5155</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Cannot find inner-src for outbound packet when tunneling (for SECPOL)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_LostSA</error_name>
+    <error_value>-5156</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>An SA has been lost betweenApply andVerify, expired? (for SECPOL)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_IcmpError</error_name>
+    <error_value>-5157</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>An ICMP error report containing AH orESP (for INET6)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyUnknownSelector</error_name>
+    <error_value>-5158</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>unknown selector keyword</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyInboundOutbound</error_name>
+    <error_value>-5159</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Only one of the 'inbound' or 'outbound' is allowed</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyIpMaskExpected</error_name>
+    <error_value>-5160</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Expected IP address (as mask) here</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyIpAddressExpected</error_name>
+    <error_value>-5161</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Expected IP address here</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyInvalidIpAddress</error_name>
+    <error_value>-5162</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Invalid IP address</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyRightParen</error_name>
+    <error_value>-5163</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Right parenthesis expected</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyLeftParen</error_name>
+    <error_value>-5164</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Left parenthesis expected</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicySpecNotFound</error_name>
+    <error_value>-5165</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>SA specification is not defined before reference in selector</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicySyntaxError</error_name>
+    <error_value>-5166</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Generic delimiter error inspecification</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicySpecName</error_name>
+    <error_value>-5167</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>SA specification name missing or invalid</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyNoEncryptAlgorithm</error_name>
+    <error_value>-5168</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>ESP specification must include encryptionb algorithm</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyNoAuthAlgorithm</error_name>
+    <error_value>-5169</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>AH specification must include authentication algorithm</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyTooManyTypes</error_name>
+    <error_value>-5170</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Type can be specified onlyonce for specification</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyNoType</error_name>
+    <error_value>-5171</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>SA type (AH or ESP) omittedfrom specification</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyCloseBraceExpected</error_name>
+    <error_value>-5172</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>closing brace expected</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyNumberExpected</error_name>
+    <error_value>-5173</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>number value expected</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyUnknownSpec</error_name>
+    <error_value>-5174</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>unknown policy specification keyword</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyInvalidIdentity</error_name>
+    <error_value>-5175</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>invalid identity syntax</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyIdentityDefined</error_name>
+    <error_value>-5176</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>identify already defined</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyUnknownAuth</error_name>
+    <error_value>-5177</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>algorithm not defined in algorithm map</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PolicyUnknownEncrypt</error_name>
+    <error_value>-5178</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>algorithm not defined in algorithm map</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_UnavailableDigest</error_name>
+    <error_value>-5179</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>No installed library implements the digest</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_UnavailableCipher</error_name>
+    <error_value>-5180</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>No installed library implements the cipher</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_UnknownDigestNumber</error_name>
+    <error_value>-5181</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Attempting to use algorithmnumber that is not known</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_UnknownCipherNumber</error_name>
+    <error_value>-5182</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Attempting to use algorithmnumber that is not known</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_BadCipherKey</error_name>
+    <error_value>-5183</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Key in SA is too short (forthe algorithm) or is weak</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchDestinationIdentity</error_name>
+    <error_value>-5184</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>destination identity does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchSourceIdentity</error_name>
+    <error_value>-5185</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>source identity does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchProtocol</error_name>
+    <error_value>-5186</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>protocol does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchDestinationPort</error_name>
+    <error_value>-5187</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>destination port does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchSourcePort</error_name>
+    <error_value>-5188</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>source port does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchProxy</error_name>
+    <error_value>-5189</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>proxy address does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchSource</error_name>
+    <error_value>-5190</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>source address does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchReplayWindow</error_name>
+    <error_value>-5191</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>ReplayWindow length is shorter than required</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchedEncryptAlg</error_name>
+    <error_value>-5192</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Encrypt algorithm doesn't match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchedAuthAlg</error_name>
+    <error_value>-5193</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Auth algorithm doesn't match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchedPFS</error_name>
+    <error_value>-5194</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>PFS bit is not same</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchedType</error_name>
+    <error_value>-5195</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>SA Type (AH/ESP) does not match</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchedDestination</error_name>
+    <error_value>-5196</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>SA destination does not match (internal error?)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AcquireFailed</error_name>
+    <error_value>-5197</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Acquiring SA failed (no SAavailableor negotiated)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspBadCipherBlockSize</error_name>
+    <error_value>-5198</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Configuration error, cipherblock size must be &lt; 256</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspSequenceWrap</error_name>
+    <error_value>-5199</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Outbound sequence # wrappedaround for this SA</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhSequenceWrap</error_name>
+    <error_value>-5200</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Outbound sequence # wrappedaround for this SA</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhPacketTooLong</error_name>
+    <error_value>-5201</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Outbound packet would exeed2**16-1 with AH</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhRMBufSplit</error_name>
+    <error_value>-5202</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Inbound AH processing failed (Memory?)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_NoBundle</error_name>
+    <error_value>-5203</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Incoming packet had transforms, but policy doesn't require any</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_TooManyTransforms</error_name>
+    <error_value>-5204</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Incoming packet had more transforms than policy requires</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_UnrequiredSA</error_name>
+    <error_value>-5205</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Applied SA where policy hasnone</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MismatchedSA</error_name>
+    <error_value>-5206</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Applied SA does not match the policy</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_TunnelMismatch</error_name>
+    <error_value>-5207</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Tunnelmode does not match the policy</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_TooFewTransforms</error_name>
+    <error_value>-5208</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Incoming packet has less transforms than policy requires</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_MaxTransforms</error_name>
+    <error_value>-5209</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Incoming packet exceed configured maxlimit of transforms</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_NoSelectorMatch</error_name>
+    <error_value>-5210</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>None of the policy selectors matched</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_OutboundPending</error_name>
+    <error_value>-5211</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Outbooud SA does not exits,ACQUIRE pending</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_OutboundNotFound</error_name>
+    <error_value>-5212</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Outbound SA does not exist,ACQUIRE started</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_ReplayDuplicate</error_name>
+    <error_value>-5213</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Duplicate packet (replay window test)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspPadLength</error_name>
+    <error_value>-5214</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>The ESP pad length is corrupt (probably wrong key)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspPadByte</error_name>
+    <error_value>-5215</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>The ESP pad byte content isinvalid (probably wrong key)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_DataAlignment</error_name>
+    <error_value>-5216</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Data not aligned by block size</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_PacketLength</error_name>
+    <error_value>-5217</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Invalid lenght of the packet</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhAuthentication</error_name>
+    <error_value>-5218</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Authentication check failedin AH</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhIcvLength</error_name>
+    <error_value>-5219</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>ICV length in packet does not match algorithm</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhInboundSA</error_name>
+    <error_value>-5220</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>The inbound SA for AH doesnot exist</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_AhAuthAlg</error_name>
+    <error_value>-5221</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Required auth algorithm forAH not available/installed</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspEncrAlg</error_name>
+    <error_value>-5222</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Required encrypt algorithmfor ESP not available/installed</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspAuthAlg</error_name>
+    <error_value>-5223</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Required auth algorithm forESP not available/installed</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspAuthentication</error_name>
+    <error_value>-5224</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Authentication check failedin ESP</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_EspInboundSA</error_name>
+    <error_value>-5225</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>The inbound SA for ESP doesnot exist</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_CorruptPacketOut</error_name>
+    <error_value>-5226</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Corrupt packet after IPSECoperations</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_CorruptPacketIn</error_name>
+    <error_value>-5227</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>Truncated or corrupt packetor header(in)</error_text>
+  </error>
+  <error>
+    <error_name>EIpsec_RMBUF</error_name>
+    <error_value>-5228</error_value>
+    <error_component>IPSEC  (IPSECERR.H)</error_component>
+    <error_text>RMBUF operation failed unexpectedly</error_text>
+  </error>
+  <error>
+    <error_name>KErrIrObexClientNoDevicesFound</error_name>
+    <error_value>-5501</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text>No other infrared device found</error_text>
+  </error>
+  <error>
+    <error_name>KErrIrObexClientPeerDoesNotHaveObex</error_name>
+    <error_value>-5502</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text>Other IR device cannot handle IrObex</error_text>
+  </error>
+  <error>
+    <error_name>KErrIrObexClientPutPeerAborted</error_name>
+    <error_value>-5503</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text>Other IR device aborted the transfer</error_text>
+  </error>
+  <error>
+    <error_name>KErrIrObexServerPutPeerAborted</error_name>
+    <error_value>-5507</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text>Peer device aborted data transmission/obex sending</error_text>
+  </error>
+  <error>
+    <error_name>KErrIrObexConnectChallRejected</error_name>
+    <error_value>-5512</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text>Cannot authorise the challenge so link dropped</error_text>
+  </error>
+  <error>
+    <error_name>KErrIrObexRespSuccess</error_name>
+    <error_value>-5532</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespCreated</error_name>
+    <error_value>-5533</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespAccepted</error_name>
+    <error_value>-5534</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespNonAuthInfo</error_name>
+    <error_value>-5535</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespNoContent</error_name>
+    <error_value>-5536</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespResetContent</error_name>
+    <error_value>-5537</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespPartialContent</error_name>
+    <error_value>-5538</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespMultipleChoices</error_name>
+    <error_value>-5548</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespMovedPerm</error_name>
+    <error_value>-5549</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespMovedTemp</error_name>
+    <error_value>-5550</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespSeeOther</error_name>
+    <error_value>-5551</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespNotModified</error_name>
+    <error_value>-5552</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespUseProxy</error_name>
+    <error_value>-5553</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespBadRequest</error_name>
+    <error_value>-5564</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespUnauthorized</error_name>
+    <error_value>-5565</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespPaymentRequired</error_name>
+    <error_value>-5566</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespForbidden</error_name>
+    <error_value>-5567</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespNotFound</error_name>
+    <error_value>-5568</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespMethodNotAllowed</error_name>
+    <error_value>-5569</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespNotAcceptable</error_name>
+    <error_value>-5570</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespProxyAuthenReqd</error_name>
+    <error_value>-5571</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespTimedOut</error_name>
+    <error_value>-5572</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespConflict</error_name>
+    <error_value>-5573</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespGone</error_name>
+    <error_value>-5574</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespLengthReqd</error_name>
+    <error_value>-5575</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespPreCondFailed</error_name>
+    <error_value>-5576</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespReqEntityTooLarge</error_name>
+    <error_value>-5577</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespReqURLTooLarge</error_name>
+    <error_value>-5578</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespUnsupMediaType</error_name>
+    <error_value>-5579</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespInternalError</error_name>
+    <error_value>-5580</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespNotImplemented</error_name>
+    <error_value>-5581</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespBadGateway</error_name>
+    <error_value>-5582</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespServiceUnavail</error_name>
+    <error_value>-5583</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespGatewayTimeout</error_name>
+    <error_value>-5584</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespHTTPVerNotSupp</error_name>
+    <error_value>-5585</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespDatabaseFull</error_name>
+    <error_value>-5596</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrIrObexRespDatabaseLocked</error_name>
+    <error_value>-5597</error_value>
+    <error_component>IR OBEX  (OBEX.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrCodeBase</error_name>
+    <error_value>-5750</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrBadDateTime</error_name>
+    <error_value>-5751</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrRepeatTypeNotHandled</error_name>
+    <error_value>-5752</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrBadRepeatValue</error_name>
+    <error_value>-5753</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrBadTimeZone</error_name>
+    <error_value>-5754</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrBadTimePeriod</error_name>
+    <error_value>-5755</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrNumberExpected</error_name>
+    <error_value>-5756</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrNestedVcardExpected</error_name>
+    <error_value>-5757</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KVersitErrNoPropertyName</error_name>
+    <error_value>-5758</error_value>
+    <error_component>Versit (VERROR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>EOK</error_name>
+    <error_value>-6000</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI OK errorcode - Used to indicate the absence of any error condition</error_text>
+  </error>
+  <error>
+    <error_name>EUnknownOpcode</error_name>
+    <error_value>-6001</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unknownopcode error code</error_text>
+  </error>
+  <error>
+    <error_name>ENoConnection</error_name>
+    <error_value>-6002</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI no connection error code</error_text>
+  </error>
+  <error>
+    <error_name>EHardwareFail</error_name>
+    <error_value>-6003</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI hardwarefailure error code</error_text>
+  </error>
+  <error>
+    <error_name>EPageTimedOut</error_name>
+    <error_value>-6004</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI page timeout error code</error_text>
+  </error>
+  <error>
+    <error_name>EAuthenticationFailure</error_name>
+    <error_value>-6005</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI authentification failure error code</error_text>
+  </error>
+  <error>
+    <error_name>EKeyMissing</error_name>
+    <error_value>-6006</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI key missing error code</error_text>
+  </error>
+  <error>
+    <error_name>EKeyMemoryFull</error_name>
+    <error_value>-6007</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI key memory full error code</error_text>
+  </error>
+  <error>
+    <error_name>EConnectionTimeout</error_name>
+    <error_value>-6008</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI connection timeout error code</error_text>
+  </error>
+  <error>
+    <error_name>EMaxConnections</error_name>
+    <error_value>-6009</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI maximumnumber of connections exceeded error code</error_text>
+  </error>
+  <error>
+    <error_name>EMaxSCOConnections</error_name>
+    <error_value>-6010</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI maximumnumber of SCO connections exceeded error code</error_text>
+  </error>
+  <error>
+    <error_name>EMaxACLConnections</error_name>
+    <error_value>-6011</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI maximumnumber of ACL connections exceeded error code</error_text>
+  </error>
+  <error>
+    <error_name>ECommandDisallowed</error_name>
+    <error_value>-6012</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI commanddisallowed error code</error_text>
+  </error>
+  <error>
+    <error_name>EHostResourceRejection</error_name>
+    <error_value>-6013</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI host resource rejection error code</error_text>
+  </error>
+  <error>
+    <error_name>EHostSecurityRejection</error_name>
+    <error_value>-6014</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI host security rejection error code</error_text>
+  </error>
+  <error>
+    <error_name>EHostPersonalDeviceRejection</error_name>
+    <error_value>-6015</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI host personal device rejection error code</error_text>
+  </error>
+  <error>
+    <error_name>ERemoteHostTimeout</error_name>
+    <error_value>-6016</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI remote host timeout error code</error_text>
+  </error>
+  <error>
+    <error_name>EUnsupportedParameter</error_name>
+    <error_value>-6017</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unsupported parameter error code</error_text>
+  </error>
+  <error>
+    <error_name>EInvalidHCIParameter</error_name>
+    <error_value>-6018</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI invalid HCI parameter error code</error_text>
+  </error>
+  <error>
+    <error_name>ERemoteUserEndedConnection</error_name>
+    <error_value>-6019</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI remote device user ended connection error code</error_text>
+  </error>
+  <error>
+    <error_name>ERemoteLowResources</error_name>
+    <error_value>-6020</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI remote device low resources error code</error_text>
+  </error>
+  <error>
+    <error_name>ERemoteAboutToPowerOff</error_name>
+    <error_value>-6021</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI remote device about to power off error code</error_text>
+  </error>
+  <error>
+    <error_name>ETerminatedByLocalHost</error_name>
+    <error_value>-6022</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI treminated by local host error code</error_text>
+  </error>
+  <error>
+    <error_name>ERepeatedAttempts</error_name>
+    <error_value>-6023</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI repeated attempts error code</error_text>
+  </error>
+  <error>
+    <error_name>EPairingNotAllowed</error_name>
+    <error_value>-6024</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI pairingnot allowed error code</error_text>
+  </error>
+  <error>
+    <error_name>EUnknownLMPpdu</error_name>
+    <error_value>-6025</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unknown LMP PDU error code</error_text>
+  </error>
+  <error>
+    <error_name>EUnsupportedRemoteLMPFeature</error_name>
+    <error_value>-6026</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unsupported remote LMP feature error code</error_text>
+  </error>
+  <error>
+    <error_name>ESCOOffsetRejected</error_name>
+    <error_value>-6027</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI SCO offset rejected error code</error_text>
+  </error>
+  <error>
+    <error_name>ESCOIntervalRejected</error_name>
+    <error_value>-6028</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI SCO interval rejected error code</error_text>
+  </error>
+  <error>
+    <error_name>ESCOAirModeRejected</error_name>
+    <error_value>-6029</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI SCO airmode rejected error code</error_text>
+  </error>
+  <error>
+    <error_name>EInvalidLMPParameters</error_name>
+    <error_value>-6030</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI invalid LMP parameters error code</error_text>
+  </error>
+  <error>
+    <error_name>EUnspecifiedError</error_name>
+    <error_value>-6031</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unspecified error code</error_text>
+  </error>
+  <error>
+    <error_name>EUnsupportedLMPParameterValue</error_name>
+    <error_value>-6032</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unsupported LMP parameter value error code</error_text>
+  </error>
+  <error>
+    <error_name>ERoleChangeNotAllowed</error_name>
+    <error_value>-6033</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI role change not allowed error code</error_text>
+  </error>
+  <error>
+    <error_name>ELMPResponseTimeout</error_name>
+    <error_value>-6034</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI LMP response timeout error code</error_text>
+  </error>
+  <error>
+    <error_name>ELMPErrorTransactionCollision</error_name>
+    <error_value>-6035</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI LMP error transaction collision error code</error_text>
+  </error>
+  <error>
+    <error_name>ELMPPDUNotAllowed</error_name>
+    <error_value>-6036</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI LMP PDU not allowed error code</error_text>
+  </error>
+  <error>
+    <error_name>EEncryptionModeNotAcceptable</error_name>
+    <error_value>-6037</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI encryption mode not acceptable error code</error_text>
+  </error>
+  <error>
+    <error_name>EUnitKeyUsed</error_name>
+    <error_value>-6038</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI unit key not used error code</error_text>
+  </error>
+  <error>
+    <error_name>EQOSIsNotSupported</error_name>
+    <error_value>-6039</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI QOS notsupported error code</error_text>
+  </error>
+  <error>
+    <error_name>EInstantPassed</error_name>
+    <error_value>-6040</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI instant passed error code</error_text>
+  </error>
+  <error>
+    <error_name>EPairingWithUnitKeyNotSupported</error_name>
+    <error_value>-6041</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI pairing with unit key not supported error code</error_text>
+  </error>
+  <error>
+    <error_name>EDifferentTransactionCollision</error_name>
+    <error_value>-6042</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>Reserved by Bluetooth Spec</error_name>
+    <error_value>-6043</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>EQoSUnacceptableParameter</error_name>
+    <error_value>-6044</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI bad parameter error code</error_text>
+  </error>
+  <error>
+    <error_name>EQoSRejected</error_name>
+    <error_value>-6045</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI quality of service not accepted error code</error_text>
+  </error>
+  <error>
+    <error_name>EChannelClassificationNotSupported</error_name>
+    <error_value>-6046</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI adaptive frequency hopping channel classification not supported error code</error_text>
+  </error>
+  <error>
+    <error_name>EInsufficientSecurity</error_name>
+    <error_value>-6047</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI insufficient security error code</error_text>
+  </error>
+  <error>
+    <error_name>EParameterOutOfMandatoryRange</error_name>
+    <error_value>-6048</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI parameter value outside required range error code</error_text>
+  </error>
+  <error>
+    <error_name>Reserved by Bluetooth Spec</error_name>
+    <error_value>-6049</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>ERoleSwitchPending</error_name>
+    <error_value>-6050</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI failure because a masterslave role switch is about to take place error code</error_text>
+  </error>
+  <error>
+    <error_name>Reserved by Bluetooth Spec</error_name>
+    <error_value>-6051</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>EReservedSlotViolation</error_name>
+    <error_value>-6052</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI use of reserved baseband packet slot error code</error_text>
+  </error>
+  <error>
+    <error_name>ERoleSwitchFailed</error_name>
+    <error_value>-6053</error_value>
+    <error_component>Bluetooth HCI  (HCIERRORS.H)</error_component>
+    <error_text>HCI masterslave role switch failed error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadAddress</error_name>
+    <error_value>-6300</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP Bad address error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrSAPUnexpectedEvent</error_name>
+    <error_value>-6301</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP unexpected SAP event error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadPacketReceived</error_name>
+    <error_value>-6302</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP bad packet received error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPBadResponse</error_name>
+    <error_value>-6303</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP bad response error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrHCIConnectFailed</error_name>
+    <error_value>-6304</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP HCI connection failed error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrHCILinkDisconnection</error_name>
+    <error_value>-6305</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP HCI link disconnection error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrSAPNotConnected</error_name>
+    <error_value>-6306</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP SAP not connected error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrConfigBadParams</error_name>
+    <error_value>-6307</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP bad configuration parameters error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrConfigRejected</error_name>
+    <error_value>-6308</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP configuration rejected error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrConfigUnknownOptions</error_name>
+    <error_value>-6309</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP unknown configuration options error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2PeerDisconnected</error_name>
+    <error_value>-6310</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP peer disconnected error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPAccessRequestDenied</error_name>
+    <error_value>-6311</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP access request denied error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPRequestTimeout</error_name>
+    <error_value>-6312</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP request timeout error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2PeerRejectedCommand</error_name>
+    <error_value>-6313</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP peer rejected command error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrHostResNameTooLong</error_name>
+    <error_value>-6314</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP host resolver name too long error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPNoMorePSMs</error_name>
+    <error_value>-6315</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP no more PSMs error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPMaxTransmitExceeded</error_name>
+    <error_value>-6316</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP in reliable mode: the maximum L2Cap retransmissions have been made and channel will disconnect error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPDataControllerDetached</error_name>
+    <error_value>-6317</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP problems (e.g. no memory) whilst sending data error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPConfigPending</error_name>
+    <error_value>-6318</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP configuration is in progress error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPConfigAlreadyInProgress</error_name>
+    <error_value>-6319</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP attempt to alter config whilst configuration is in progress error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrL2CAPNoFreeCID</error_name>
+    <error_value>-6320</error_value>
+    <error_component>Bluetooth L2CAP  (BT_SOCK.H)</error_component>
+    <error_text>L2CAP no more channel IDs available error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommSAPUnexpectedEvent</error_name>
+    <error_value>-6350</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM unexpected event error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommAlreadyBound</error_name>
+    <error_value>-6351</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM SAP already bound error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommBadAddress</error_name>
+    <error_value>-6352</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM bad address error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommMTUSize</error_name>
+    <error_value>-6353</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM MTU size exceeded error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommFrameResponseTimeout</error_name>
+    <error_value>-6354</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM frame response timeout error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommMuxRemoteDisconnect</error_name>
+    <error_value>-6355</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM remote end disconnected error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommNotBound</error_name>
+    <error_value>-6356</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM SAP not bound error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommParameterNegotiationFailure</error_name>
+    <error_value>-6357</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM parameter negotiation failure error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommNotListening</error_name>
+    <error_value>-6358</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM not listening error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRfcommNoMoreServerChannels</error_name>
+    <error_value>-6359</error_value>
+    <error_component>Bluetooth RFCOMM  (BT_SOCK.H)</error_component>
+    <error_text>RFCOMM no more server channels available error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpBadAddress</error_name>
+    <error_value>-6400</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP bad address error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpSAPUnexpectedEvent</error_name>
+    <error_value>-6401</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP unexpected SAP event error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpBadPacketReceived</error_name>
+    <error_value>-6402</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP bad packet received error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpBadResponse</error_name>
+    <error_value>-6403</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP bad response error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpConnectFailed</error_name>
+    <error_value>-6404</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP connect failed error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpLinkDisconnection</error_name>
+    <error_value>-6405</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP link disconnection error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpSAPNotConnected</error_name>
+    <error_value>-6406</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP SAP not connected error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpPeerDisconnected</error_name>
+    <error_value>-6407</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP peer disconnection error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpAccessRequestDenied</error_name>
+    <error_value>-6408</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP access request denied error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpRequestTimeout</error_name>
+    <error_value>-6409</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP request timeout error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrAvctpPeerRejectedCommand</error_name>
+    <error_value>-6410</error_value>
+    <error_component>Bluetooth AVCTP  (BT_SOCK.H)</error_component>
+    <error_text>AVCTP peer rejected command error code</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpAlreadyBound</error_name>
+    <error_value>-6400</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Cannot bind to specifed sockets protocol, as already bound</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpPeerError</error_name>
+    <error_value>-6401</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Remote device gave unknown error</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpClientNotConnected</error_name>
+    <error_value>-6402</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Local device is not connected</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpUnsupportedVersion</error_name>
+    <error_value>-6403</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Invalid/unsupported SDP version</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpBadRecordHandle</error_name>
+    <error_value>-6404</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Invalid Service Record Handle</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpBadContinuationState</error_name>
+    <error_value>-6405</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Invalid ContinuationState</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpServerRejectedRequest</error_name>
+    <error_value>-6406</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>SDP server rejected the request</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpBadRequestBufferLength</error_name>
+    <error_value>-6407</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Request buffer was ill-formed</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpBadResultBufferLength</error_name>
+    <error_value>-6408</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Result buffer was ill-formed</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpBadUUIDLength</error_name>
+    <error_value>-6409</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>UUID entry was ill-formed</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpBadResultData</error_name>
+    <error_value>-6410</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>Response was ill-formed</error_text>
+  </error>
+  <error>
+    <error_name>KErrSdpDatabaseFull</error_name>
+    <error_value>-6411</error_value>
+    <error_component>Bluetooth SDP  (BTSDP.H)</error_component>
+    <error_text>SDP database is full</error_text>
+  </error>
+  <error>
+    <error_name>KErrInsufficientBasebandResources</error_name>
+    <error_value>-6450</error_value>
+    <error_component>Bluetooth Link Manager  (BTSOCK.H)</error_component>
+    <error_text>Insufficient baseband resources error value</error_text>
+  </error>
+  <error>
+    <error_name>KErrProxyWriteNotAvailable</error_name>
+    <error_value>-6451</error_value>
+    <error_component>Bluetooth Link Manager  (BTSOCK.H)</error_component>
+    <error_text>Proxy write not available error value</error_text>
+  </error>
+  <error>
+    <error_name>KErrReflexiveBluetoothLink</error_name>
+    <error_value>-6452</error_value>
+    <error_component>Bluetooth Link Manager  (BTSOCK.H)</error_component>
+    <error_text>Reflexive BT link error value</error_text>
+  </error>
+  <error>
+    <error_name>KMsvMediaUnavailable</error_name>
+    <error_value>-7000</error_value>
+    <error_component>Message Server  (MSVSTD.H)</error_component>
+    <error_text>There is no disk in the drive containing the Message Server index</error_text>
+  </error>
+  <error>
+    <error_name>KMsvMediaIncorrect</error_name>
+    <error_value>-7001</error_value>
+    <error_component>Message Server  (MSVSTD.H)</error_component>
+    <error_text>There is a disk in the drive containing the Message Server index, but it is the wrong one</error_text>
+  </error>
+  <error>
+    <error_name>KMsvMediaChanged</error_name>
+    <error_value>-7002</error_value>
+    <error_component>Message Server  (MSVSTD.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMsvIndexBackup</error_name>
+    <error_value>-7003</error_value>
+    <error_component>Message Server  (MSVSTD.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMsvIndexRestore</error_name>
+    <error_value>-7004</error_value>
+    <error_component>Message Server  (MSVSTD.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeDefault</error_name>
+    <error_value>-7200</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error making a default encoding of unrecognised headers</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeAccept</error_name>
+    <error_value>-7201</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Accept field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeAcceptCharset</error_name>
+    <error_value>-7202</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Accept-Charset field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeQValue</error_name>
+    <error_value>-7203</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding a q-value parameter</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeAuthorization</error_name>
+    <error_value>-7204</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Authorization field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeBasicAuth</error_name>
+    <error_value>-7205</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding Basiccredentials</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeDigestAuth</error_name>
+    <error_value>-7206</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding Digestcredentials</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeConnection</error_name>
+    <error_value>-7207</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Connection field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeContentLength</error_name>
+    <error_value>-7208</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Content-Length field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeContentType</error_name>
+    <error_value>-7209</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Content-Type field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeHost</error_name>
+    <error_value>-7210</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Host field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeHostPort</error_name>
+    <error_value>-7211</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Host field's port parameter</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeTransferEncoding</error_name>
+    <error_value>-7212</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Transfer-Encoding field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeUserAgent</error_name>
+    <error_value>-7213</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the User-Agent field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeDate</error_name>
+    <error_value>-7214</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Date field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeCookie</error_name>
+    <error_value>-7215</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Cookie field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeCacheControl</error_name>
+    <error_value>-7216</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Cache-Control field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodePragma</error_name>
+    <error_value>-7217</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Pragma field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeIfMatch</error_name>
+    <error_value>-7218</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the ifmatch field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeIfNoneMatch</error_name>
+    <error_value>-7219</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the ifnone match field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeIfModifiedSince</error_name>
+    <error_value>-7220</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the ifmodified since field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeIfUnmodifiedSince</error_name>
+    <error_value>-7221</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the ifunmodified since field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEncodeCookie2</error_name>
+    <error_value>-7222</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error encoding the Cookie2 field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedDate</error_name>
+    <error_value>-7260</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>General formatting error for date values</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedYear</error_name>
+    <error_value>-7261</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed year</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedMonth</error_name>
+    <error_value>-7262</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed short monthname</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedDay</error_name>
+    <error_value>-7263</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed number of day in month</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedWkDay</error_name>
+    <error_value>-7264</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed short day name</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedWeekDay</error_name>
+    <error_value>-7265</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed long day name</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedInteger</error_name>
+    <error_value>-7266</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed integer value</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeMalformedQuotedStr</error_name>
+    <error_value>-7267</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Malformed quoted string</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeAccept</error_name>
+    <error_value>-7270</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding the Accept field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeConnection</error_name>
+    <error_value>-7271</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding the Connection field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeContentLength</error_name>
+    <error_value>-7272</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding the Content-Length field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeContentType</error_name>
+    <error_value>-7273</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding the Content-Type field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeTransferEncoding</error_name>
+    <error_value>-7274</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding the Transfer-Encoding field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeWWWAuthenticate</error_name>
+    <error_value>-7275</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding the WWWAuthenticate field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeUnknownAuthScheme</error_name>
+    <error_value>-7276</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>The WWWAuthenticate field contained an unrecognised authentication scheme</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeBasicAuth</error_name>
+    <error_value>-7277</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding a Basic WWWAuthenticate challenge</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeDigestAuth</error_name>
+    <error_value>-7278</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding a Digest WWWAuthenticate challenge</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpDecodeCookie</error_name>
+    <error_value>-7279</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Error decoding a Set-Cookie field</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpRedirectExceededLimit</error_name>
+    <error_value>-7300</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>A uri redirected too many times, possibly indicating a circular redirection</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpRedirectUseProxy</error_name>
+    <error_value>-7301</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>A server responded that the uri must be fetched via a proxy</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpRedirectNoLocationField</error_name>
+    <error_value>-7302</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>A server sent a redirection response that did not include a Location header</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpUnknownParseState</error_name>
+    <error_value>-7303</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>An error occured in parsing which left the parser in a unknown state</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpRequestHasBody</error_name>
+    <error_value>-7330</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>A body is provided with a method that doesn't allow bodys to be transmitted</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpRequestBodyMissing</error_name>
+    <error_value>-7331</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>A body is missing from a method that requires it</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpTraceReqWithoutMaxForwardHeader</error_name>
+    <error_value>-7332</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Should contain The Max-Forward header</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpPostReqBodyWithoutSizeOnHTTP10</error_name>
+    <error_value>-7333</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Body must NOT be sent chunked if using HTTP/1.0</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpInvalidHeaderInRequest</error_name>
+    <error_value>-7334</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Request contained a response header or a entity header but no body</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpEntityHeaderMissingContentType</error_name>
+    <error_value>-7360</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>A body was provided in the request but no Content-Type header was set</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpGeneralHeaderMissingHost</error_name>
+    <error_value>-7361</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>The request URI was relative, but no Host header was set to indicate a server to connect to</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpCantResetRequestBody</error_name>
+    <error_value>-7370</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>The request body needed to be rewound but the client but it doesn't support</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpProtTransactionNotInitialised</error_name>
+    <error_value>-7371</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>The Protocol handler is not initialised</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpCannotEstablishTunnel</error_name>
+    <error_value>-7372</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Unable to establish a tunnel.</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpInvalidUri</error_name>
+    <error_value>-7373</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Invalid URI</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpNonPipeliningError</error_name>
+    <error_value>-7374</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Protocol handler experienced a non-pipelining error</error_text>
+  </error>
+  <error>
+    <error_name>KErrHttpPipeliningError</error_name>
+    <error_value>-7375</error_value>
+    <error_component>HTTP Client  (HTTPERR.H)</error_component>
+    <error_text>Protocol handler experienced a pipelining error</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLNoSharedCipher</error_name>
+    <error_value>-7401</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>No shared cipher was found. The handshake failed becausethere was no available shared cipher supported by both the client and the server.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLSocketBusy</error_name>
+    <error_value>-7402</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The socket already has received data pending on it. This error is seen when StartClientHandshake is called when  there is already data waiting to be read from the socket. *</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLInvalidCipherSuite</error_name>
+    <error_value>-7403</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>One or more cipher suites passed as an argument was invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLInvalidCert</error_name>
+    <error_value>-7404</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The certificate that was passed as an argument was invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLNoClientCert</error_name>
+    <error_value>-7405</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>No client certificate was supplied.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLUnsupportedKeySize</error_name>
+    <error_value>-7406</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The size of the key is toobig.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLUnsupportedKey</error_name>
+    <error_value>-7407</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>General unsupported key error</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLBadRecordHeader</error_name>
+    <error_value>-7408</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An invalid record was received.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLBadProtocolVersion</error_name>
+    <error_value>-7409</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Invalid protocol version.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSL2ServerOnly</error_name>
+    <error_value>-7410</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The server only supports the SSL2.0 protocol.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLUnexpectedMessage</error_name>
+    <error_value>-7411</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Unexpected message.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLUnsupportedCipher</error_name>
+    <error_value>-7412</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Unsupported cipher.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLBadMAC</error_name>
+    <error_value>-7413</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Bad MAC.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLReceivedAlert</error_name>
+    <error_value>-7414</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An SSL alert was received from the remote end, which caused the connection to be terminated.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLRecvNotSupportedHS</error_name>
+    <error_value>-7415</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An invalid handshake message was received.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLHSRecordFieldTooBig</error_name>
+    <error_value>-7416</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A field in the handshake record being parsed was too big.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLRecordHeaderTooBig</error_name>
+    <error_value>-7417</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Record header field too big.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLSendDataTooBig</error_name>
+    <error_value>-7418</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Send data field too big.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLNoCertificate</error_name>
+    <error_value>-7419</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>No certificate.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLInvalidHash</error_name>
+    <error_value>-7420</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Invalid hash.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLSendCanceled</error_name>
+    <error_value>-7421</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Send cancelled.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLRecvCanceled</error_name>
+    <error_value>-7422</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Receieve cancelled.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLHandshakeCanceled</error_name>
+    <error_value>-7423</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>CancelHandshake was calledduring one of the handshake methods.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLWriteFailed</error_name>
+    <error_value>-7424</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Write failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLFailedToLoad</error_name>
+    <error_value>-7425</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The SSL.dll couldn't be loaded by the adaptor.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLDisconnectIndication</error_name>
+    <error_value>-7426</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An unspecified error was signaled from the SSL.dll to the adaptor.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLDllLeave</error_name>
+    <error_value>-7427</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A leave occured in the SSL.dll.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertCloseNotify</error_name>
+    <error_value>-7500</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Close notification.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertUnexpectedMessage</error_name>
+    <error_value>-7510</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An inappropriate message was received.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertBadRecordMac</error_name>
+    <error_value>-7520</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A record was received withan incorrect MAC.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertDecryptionFailed</error_name>
+    <error_value>-7521</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A TLS cipher text was decrypted in an invalid way.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertRecordOverflow</error_name>
+    <error_value>-7522</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A TLS cipher text record was received which was too long.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertDecompressionFailure</error_name>
+    <error_value>-7530</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The decompression functionreceived improper input.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertHandshakeFailure</error_name>
+    <error_value>-7540</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>With given the options available, the sender was unable to negotiate an acceptable set of security parameters.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertNoCertificate</error_name>
+    <error_value>-7541</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>No certificate.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertBadCertificate</error_name>
+    <error_value>-7542</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A certificate was corrupt,e.g. contained signatures that could not be verified.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertUnsupportedCertificate</error_name>
+    <error_value>-7543</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The certificate was of an unsupported type.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertCertificateRevoked</error_name>
+    <error_value>-7544</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The certificate was revoked.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertCertificateExpired</error_name>
+    <error_value>-7545</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The certificate was expired.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertCertificateUnknown</error_name>
+    <error_value>-7546</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An unspecified problem withthe certificate. Certificate can not be used.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertIllegalParameter</error_name>
+    <error_value>-7547</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A field in the handshake was out of range or inconsistent with other fields.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertUnknownCA</error_name>
+    <error_value>-7548</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Either the CA certificate could not be located or the CA could not be matched with a known trusted CA.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertAccessDenied</error_name>
+    <error_value>-7549</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A valid certificate was received, but the access control denied access.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertDecodeError</error_name>
+    <error_value>-7550</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A message could not be decoded, e.g. some field was out of the specified range.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertDecryptError</error_name>
+    <error_value>-7551</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A handshake cryptographic operation failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertExportRestriction</error_name>
+    <error_value>-7560</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>A negotiation was not allowed due to export restrictions.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertProtocolVersion</error_name>
+    <error_value>-7570</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>The protocol version was not supported, e.g. the client has attempted to negotiate a recognised, but unsupportedprotocol.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertInsufficientSecurity</error_name>
+    <error_value>-7571</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>Returned instead of KErrSSLAlertHandshakeFailure when the negotiation fails because the server requests ciphers more secure than those supported by the client.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertInternalError</error_name>
+    <error_value>-7580</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>An internal error.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertUserCanceled</error_name>
+    <error_value>-7590</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>This handshake is being cancelled by the user.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSSLAlertNoRenegotiation</error_name>
+    <error_value>-7600</error_value>
+    <error_component>SSL/TLS  (SSLERR.H)</error_component>
+    <error_text>No renegotiation will be accepted.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportRequest</error_name>
+    <error_value>-8321</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The transport cannot send data as created.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportHeader</error_name>
+    <error_value>-8322</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The transport has not been suitably configured.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportSvrNoUri</error_name>
+    <error_value>-8323</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The URI does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportSvrError</error_name>
+    <error_value>-8324</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>There was a transport server error.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportAuthenticationFailure</error_name>
+    <error_value>-8325</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Transport Authentification failure.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportDisconnected</error_name>
+    <error_value>-8326</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Transport disconnected the session.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSyncEngineErrorBase</error_name>
+    <error_value>-8327</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Base value for engine-related errors.</error_text>
+  </error>
+  <error>
+    <error_name>KErrConnectionError</error_name>
+    <error_value>-8328</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Transports could not connect to the server.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCannotCommunicateWithServer</error_name>
+    <error_value>-8329</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Could not communicate with the server:possibly atime-out occurred.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDatabaseAdapterIndexError</error_name>
+    <error_value>-8330</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Database adapter failed to create an item.</error_text>
+  </error>
+  <error>
+    <error_name>KErrParseCallbackError</error_name>
+    <error_value>-8331</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCommandInvalid</error_name>
+    <error_value>-8332</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSessionIdNotValid</error_name>
+    <error_value>-8333</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Invalid session ID.</error_text>
+  </error>
+  <error>
+    <error_name>KErrVerDTDMissing</error_name>
+    <error_value>-8334</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>SyncML message did not specify a DTD version.</error_text>
+  </error>
+  <error>
+    <error_name>KErrProtoMissing</error_name>
+    <error_value>-8335</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>SyncML message did not specify a protocol.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSyncHdrMissing</error_name>
+    <error_value>-8336</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTargetLocMissing</error_name>
+    <error_value>-8337</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>SyncML message did not specify a target location.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSourceLocMissing</error_name>
+    <error_value>-8338</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>SyncML message did not specify a source location.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTargetLocNameMissing</error_name>
+    <error_value>-8339</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSourceLocNameMissing</error_name>
+    <error_value>-8340</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMappingInfoMissing</error_name>
+    <error_value>-8341</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Mapping of added item could not created.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMappingInfoNotAcked</error_name>
+    <error_value>-8342</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Mapping has not been acknowledged by the server.</error_text>
+  </error>
+  <error>
+    <error_name>KErrVersionDTDNotSupported</error_name>
+    <error_value>-8343</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>SyncML message specified an unsupported DTD version.</error_text>
+  </error>
+  <error>
+    <error_name>KErrProtoNotSupported</error_name>
+    <error_value>-8344</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>SyncML message specified an unsupported protocol.</error_text>
+  </error>
+  <error>
+    <error_name>KErrStatusCommandForCommandNotSent</error_name>
+    <error_value>-8345</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>A status was received for a cmdId, butthis cmdIdwas not sent.</error_text>
+  </error>
+  <error>
+    <error_name>KErrStatusCommandNotTheSame</error_name>
+    <error_value>-8346</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>A status was received but the commandstringdoesnot matched the received one.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMissingStatusCommands</error_name>
+    <error_value>-8347</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Status command(s) were expected but are missing.</error_text>
+  </error>
+  <error>
+    <error_name>KErrFailedToAddRecord</error_name>
+    <error_value>-8348</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Failed to add record in database.</error_text>
+  </error>
+  <error>
+    <error_name>KErrFailedToReplaceRecord</error_name>
+    <error_value>-8349</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Failed to replace record in database.</error_text>
+  </error>
+  <error>
+    <error_name>KErrFailedToDeleteRecord</error_name>
+    <error_value>-8350</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Failed to delete record in database.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXmlParsingError</error_name>
+    <error_value>-8351</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>XML parsing error.</error_text>
+  </error>
+  <error>
+    <error_name>KErrReferenceToolkitError</error_name>
+    <error_value>-8352</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>There was an error reported in the referencetoolkit.</error_text>
+  </error>
+  <error>
+    <error_name>KErrClientDatabaseNotFound</error_name>
+    <error_value>-8404</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>No suitable database was found on theclientdevice.</error_text>
+  </error>
+  <error>
+    <error_name>KErrServerDatabaseNotFound</error_name>
+    <error_value>-8405</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>No suitable database was found on theserver.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDevInfFileNotFound</error_name>
+    <error_value>-8406</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrObjectTooLargeToSendToServer</error_name>
+    <error_value>-8407</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Object is too large to send to server.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSlowSync</error_name>
+    <error_value>-8408</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Sync is going to be slow.</error_text>
+  </error>
+  <error>
+    <error_name>KErrFailedToGetRecord</error_name>
+    <error_value>-8409</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Failed to get record from DevMan.</error_text>
+  </error>
+  <error>
+    <error_name>KErrUserInteractionFailed</error_name>
+    <error_value>-8410</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>User interaction failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrStatusSizeMismatch</error_name>
+    <error_value>-8411</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Large object size mismatch.</error_text>
+  </error>
+  <error>
+    <error_name>KErrFailedToCloseDatabase</error_name>
+    <error_value>-8412</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Data Provider close failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMessageTooShort</error_name>
+    <error_value>-8451</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message is too short.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMessageIsCorrupt</error_name>
+    <error_value>-8452</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message is corrupt.</error_text>
+  </error>
+  <error>
+    <error_name>KErrBadTransportId</error_name>
+    <error_value>-8453</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Profile has no Transport ID.</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoNotificationBody</error_name>
+    <error_value>-8454</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has no body.</error_text>
+  </error>
+  <error>
+    <error_name>KErrWrongVersion</error_name>
+    <error_value>-8455</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message specifies an unsupportedversion.</error_text>
+  </error>
+  <error>
+    <error_name>KErrUnsupportedMimeType</error_name>
+    <error_value>-8456</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message specifies an unsupportedversion.</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoSuchTask</error_name>
+    <error_value>-8457</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrUnknownSyncType</error_name>
+    <error_value>-8458</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message specifies an unknown typeof sync.</error_text>
+  </error>
+  <error>
+    <error_name>KErrUnknownProfile</error_name>
+    <error_value>-8459</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message specifies an unknown profile.</error_text>
+  </error>
+  <error>
+    <error_name>KErrInvalidProfile</error_name>
+    <error_value>-8460</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrInvalidCredentials</error_name>
+    <error_value>-8461</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Unsupported (USERNETWPIN or USERPIN) securitymechanism specified.</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoCredentials</error_name>
+    <error_value>-8462</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrIntegrityFailureHMAC</error_name>
+    <error_value>-8463</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Failed to verify the generated HMAC value.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMustUsageUriNotComplete</error_name>
+    <error_value>-8464</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDMAccUriIsCorrupt</error_name>
+    <error_value>-8465</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has invalid DM account URI.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDMConUriIsCorrupt</error_name>
+    <error_value>-8466</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has invalid DM connectionURI.</error_text>
+  </error>
+  <error>
+    <error_name>KErrParmNameNotInProvDoc</error_name>
+    <error_value>-8468</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing characteristic.</error_text>
+  </error>
+  <error>
+    <error_name>KErrInvalidAppIdValue</error_name>
+    <error_value>-8469</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid App Id.</error_text>
+  </error>
+  <error>
+    <error_name>KErrInvalidToNapIdValue</error_name>
+    <error_value>-8470</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid TO-NAPID.</error_text>
+  </error>
+  <error>
+    <error_name>KErrInvalidProviderIdValue</error_name>
+    <error_value>-8471</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid Provider-ID.</error_text>
+  </error>
+  <error>
+    <error_name>KErrEmptyAauthLevelValue</error_name>
+    <error_value>-8472</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid AAUTHLEVEL.</error_text>
+  </error>
+  <error>
+    <error_name>KErrAppSrvAAuthLevelNotFound</error_name>
+    <error_value>-8473</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid APPSRV</error_text>
+  </error>
+  <error>
+    <error_name>KErrClientAAuthLevelNotFound</error_name>
+    <error_value>-8474</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid AppAuth Client</error_text>
+  </error>
+  <error>
+    <error_name>KErrInvalidAppAuth</error_name>
+    <error_value>-8475</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoApplicationCharac</error_name>
+    <error_value>-8476</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid APPLICATION characteristic</error_text>
+  </error>
+  <error>
+    <error_name>KErrNoAppAuthCharac</error_name>
+    <error_value>-8478</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Push message has missing or invalid APPAUTH characteristic.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMissingRequiredParmInSvr</error_name>
+    <error_value>-8480</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMissingRequiredParmInClient</error_name>
+    <error_value>-8481</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Currently unused.</error_text>
+  </error>
+  <error>
+    <error_name>KErrAppAddrCharacNotFound</error_name>
+    <error_value>-8484</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Missing APPADDR characteristic or subcharacteristic</error_text>
+  </error>
+  <error>
+    <error_name>KErrUnsupportedVersion</error_name>
+    <error_value>-8485</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Unsupported WBXML version</error_text>
+  </error>
+  <error>
+    <error_name>KErrWrongProvPublicDocId</error_name>
+    <error_value>-8486</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>Prov Document identifier not WAP Provisoningversion 1.0</error_text>
+  </error>
+  <error>
+    <error_name>KErrProfileNotFound</error_name>
+    <error_value>-8501</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested profile does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrConnectionNotFound</error_name>
+    <error_value>-8502</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested connection does not exist within the profile.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTaskNotFound</error_name>
+    <error_value>-8503</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested task does not exist within theprofile.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTransportNotFound</error_name>
+    <error_value>-8504</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested transport adaptor does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDataProviderNotFound</error_name>
+    <error_value>-8505</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested data provider does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrJobNotFound</error_name>
+    <error_value>-8506</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested job has completed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrObjectPendingDelete</error_name>
+    <error_value>-8507</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested object is pending deletion.</error_text>
+  </error>
+  <error>
+    <error_name>KErrObjectInUse</error_name>
+    <error_value>-8508</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The object to modify or delete is currently in use.</error_text>
+  </error>
+  <error>
+    <error_name>KErrProfileAccessDenied</error_name>
+    <error_value>-8509</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The specified profile is not available, e.g. a Device Management profile, or open foredit by another client.</error_text>
+  </error>
+  <error>
+    <error_name>KErrSuspended</error_name>
+    <error_value>-8510</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested data stream cannot be found intheData Store.</error_text>
+  </error>
+  <error>
+    <error_name>KErrDataDepotStreamNotFound</error_name>
+    <error_value>-8511</error_value>
+    <error_component>SyncML  (SYNCMLERR.H)</error_component>
+    <error_text>The requested data stream cannot be found intheData Store.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadAttributeValue</error_name>
+    <error_value>-9001</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>XML attribute value error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadAttributeName</error_name>
+    <error_value>-9002</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>XML attribute name error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLInvalidChild</error_name>
+    <error_value>-9003</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Invalid XML child element error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadNesting</error_name>
+    <error_value>-9004</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>XML element nesting error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLIncomplete</error_name>
+    <error_value>-9005</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>XML element incomplete error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadElementName</error_name>
+    <error_value>-9006</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>XML element name error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateDocTypeTags</error_name>
+    <error_value>-9007</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that more than one DOCTYPE tag has been encountered: the first one encountered will be used.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateVersionTags</error_name>
+    <error_value>-9008</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that more than one XML version tag has been encountered: the first one encountered will be used.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateRootElements</error_name>
+    <error_value>-9009</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that more than one element has been encountered at the root of the document.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLMissingDocTypeTag</error_name>
+    <error_value>-9010</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that no DOCTYPE tag was encountered.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLMissingVersionTag</error_name>
+    <error_value>-9011</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that no XML version tag was encountered.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateAttributeName</error_name>
+    <error_value>-9012</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that an element has two or more entries for the same attribute.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLMultipleRootElements</error_name>
+    <error_value>-9013</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates there is no single root element.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLCorruptFile</error_name>
+    <error_value>-9014</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates spurious characters have been found. This may occur as the result of a missing or an extra attribute or element delimiter.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLIllegalCharacter</error_name>
+    <error_value>-9015</error_value>
+    <error_component>MMS SMIL Translator  (MDXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates a built-in entity or element / attribute delimiter is at an inappropriate place.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadAttributeValue</error_name>
+    <error_value>-9001</error_value>
+    <error_component>XML Parser  (GMXMLDOMCONSTANTS.H)</error_component>
+    <error_text>XML attribute value error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadAttributeName</error_name>
+    <error_value>-9002</error_value>
+    <error_component>XML Parser  (GMXMLDOMCONSTANTS.H)</error_component>
+    <error_text>XML attribute name error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLInvalidChild</error_name>
+    <error_value>-9003</error_value>
+    <error_component>XML Parser  (GMXMLDOMCONSTANTS.H)</error_component>
+    <error_text>Invalid XML child element error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadNesting</error_name>
+    <error_value>-9004</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>XML element nesting error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLIncomplete</error_name>
+    <error_value>-9005</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>XML element incomplete error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadElementName</error_name>
+    <error_value>-9006</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>XML element name error code.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateDocTypeTags</error_name>
+    <error_value>-9007</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that more than one DOCTYPE tag has been encountered: the first one encountered will be used.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateVersionTags</error_name>
+    <error_value>-9008</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that more than one XML version tag has been encountered: the first one encountered will be used.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateRootElements</error_name>
+    <error_value>-9009</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that more than one element has been encountered at the root of the document (there should be a single &lt;smil&gt; element). The resulting tree may be confused, but is provided rather than being discarded.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLMissingDocTypeTag</error_name>
+    <error_value>-9010</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that no DOCTYPE tag was encountered.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLMissingVersionTag</error_name>
+    <error_value>-9011</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that no XML version tag was encountered.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLDuplicateAttributeName</error_name>
+    <error_value>-9012</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates that an element has two or more entries for the same attribute.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLMultipleRootElements</error_name>
+    <error_value>-9013</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates there is no single root element. This may be the result of two of more root elements being added incorrectly, or a missing root element leading to the child elements being assumed to be root nodes.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLCorruptFile</error_name>
+    <error_value>-9014</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates spurious characters have been found. This may occur as the result of a missing or an extra attribute or element delimiter.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLIllegalCharacter</error_name>
+    <error_value>-9015</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates a built-in entity or element / attribute delimiters at an inappropriate place.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLBadEntity</error_name>
+    <error_value>-9016</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXMLInvalidElement</error_name>
+    <error_value>-9017</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates an element was found to be invalid by the DTD</error_text>
+  </error>
+  <error>
+    <error_name>KErrXMLInvalidAttribute</error_name>
+    <error_value>-9018</error_value>
+    <error_component>XML Parser  (GMXMLCONSTANTS.H)</error_component>
+    <error_text>Error code that indicates an attribute was found to be invalid by the DTD</error_text>
+  </error>
+  <error>
+    <error_name>KMmsErrUnspecified</error_name>
+    <error_value>-9100</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrServiceDenied</error_name>
+    <error_value>-9101</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrMessageFormatCorrupt</error_name>
+    <error_value>-9102</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrSendingAddressUnresolved</error_name>
+    <error_value>-9103</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrMessageNotFound</error_name>
+    <error_value>-9104</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrNetworkProblem</error_name>
+    <error_value>-9105</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrContentNotAccepted</error_name>
+    <error_value>-9106</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrUnsupportedMessage</error_name>
+    <error_value>-9107</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrInvalidPDU</error_name>
+    <error_value>-9108</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsErrNoData</error_name>
+    <error_value>-9109</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KMmsNoResponseStatus</error_name>
+    <error_value>-9110</error_value>
+    <error_component>MMS Server MTM  (MMSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrBadPassphrase</error_name>
+    <error_value>-11000</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrTotalLossOfEntropy</error_name>
+    <error_value>-11001</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrKeyNotWeakEnough</error_name>
+    <error_value>-11002</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrInvalidPadding</error_name>
+    <error_value>-11003</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrWeakKey</error_name>
+    <error_value>-11004</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrNegativeExportNotSupported</error_name>
+    <error_value>-11005</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrKeyAlgorithm</error_name>
+    <error_value>-11006</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrKeyUsage</error_name>
+    <error_value>-11007</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrKeyValidity</error_name>
+    <error_value>-11008</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrKeySize</error_name>
+    <error_value>-11009</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrKeyAccess</error_name>
+    <error_value>-11010</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPrivateKeyNotFound</error_name>
+    <error_value>-11011</error_value>
+    <error_component>Security Services   (SECURITYERR.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEZlibErrStream</error_name>
+    <error_value>-11501</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>The Z_STREAM_ERROR zlib error code has been returned by an internal method due to a stream error.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrData</error_name>
+    <error_value>-11502</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>The Z_DATA_ERROR zlib error code has been returned by an internalmethod due to a data error.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrBuf</error_name>
+    <error_value>-11503</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>The Z_BUF_ERROR zlib error code has been returned by an internalmethod due to a buffer error.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrVersion</error_name>
+    <error_value>-11504</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>The Z_VERSION_ERROR zlib error code has been returned by an internal method due to a version error.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrUnexpected</error_name>
+    <error_value>-11505</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>Unexpected ezlib error.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrDeflateTerminated</error_name>
+    <error_value>-11506</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>Returned by ::DeflateL() if deflation has already occured.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrInflateTerminated</error_name>
+    <error_value>-11507</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>Returned by ::InflateL() if inflation has already occured.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrInflateDictionary</error_name>
+    <error_value>-11508</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text>An error has occured inflating the dictionary.</error_text>
+  </error>
+  <error>
+    <error_name>KEZlibErrNotGZipFile</error_name>
+    <error_value>-11509</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEZlibErrInvalidCompression</error_name>
+    <error_value>-11510</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEZlibErrBadGZipHeader</error_name>
+    <error_value>-11511</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEZlibErrBadGZipTrailer</error_name>
+    <error_value>-11512</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEZlibErrBadGZipCrc</error_name>
+    <error_value>-11513</error_value>
+    <error_component>EZLIB  (EZLIBERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrMMNotEnoughBandwidth</error_name>
+    <error_value>-12000</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Not enough network bandwidth.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMSocketServiceNotFound</error_name>
+    <error_value>-12001</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Error locating network socket services.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMNetworkRead</error_name>
+    <error_value>-12002</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>An error occurred while reading data from the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMNetworkWrite</error_name>
+    <error_value>-12003</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>An error occurred while writing data to the network.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMServerSocket</error_name>
+    <error_value>-12004</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Invalid socket error or an error occurred while creating a network socket.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMServerNotSupported</error_name>
+    <error_value>-12005</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Streaming Server not supported.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMServerAlert</error_name>
+    <error_value>-12006</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Server alert.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMUDPReceive</error_name>
+    <error_value>-12007</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Player cannot receive UDP data packets.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMInvalidProtocol</error_name>
+    <error_value>-12008</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Network transport not recognized.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMInvalidURL</error_name>
+    <error_value>-12009</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Invalid URL.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMMulticast</error_name>
+    <error_value>-12010</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>An error occured attempting to join or access multicast session.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMProxyServer</error_name>
+    <error_value>-12011</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Proxy status error, Proxy invalid response error or invalid hostname for proxy.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMProxyServerNotSupported</error_name>
+    <error_value>-12012</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Client cannot support proxy server.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMProxyServerConnect</error_name>
+    <error_value>-12013</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Unable to locate proxy server or Proxy connection could not be established.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMAudioDevice</error_name>
+    <error_value>-12014</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Cannot open audio device, or lost control of audio device.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMVideoDevice</error_name>
+    <error_value>-12015</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Problem blitting video to display.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMDecoder</error_name>
+    <error_value>-12016</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Invalid decoder, decoder not properly initialized, or appropriate decoder could not be found.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMPartialPlayback</error_name>
+    <error_value>-12017</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Only able to play either the audio or the video portion of the media file. Could be due to a codec that isn't supported, the video frame size being too large etc.</error_text>
+  </error>
+  <error>
+    <error_name>KErrMMDRMNotAuthorized</error_name>
+    <error_value>-12018</error_value>
+    <error_component>Multimedia Framework  (MMFERRORS.H)</error_component>
+    <error_text>Digital Rights have expired.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaUnknown</error_name>
+    <error_value>-13257</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Unknown reason</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaDataSizeMismatch</error_name>
+    <error_value>-13258</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Data size mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaProtocolVersionMismatch</error_name>
+    <error_value>-13259</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Protocol version mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaInvalidParameter</error_name>
+    <error_value>-13260</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Invalid parameter</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSIDNIDLengthMismatch</error_name>
+    <error_value>-13261</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SID NID length mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMessageNotExpectedInThisMode</error_name>
+    <error_value>-13262</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Message not expected in this mode</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaBlockIdValueNotSupported</error_name>
+    <error_value>-13263</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Block Id value not supported</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaPRLLengthMismatch</error_name>
+    <error_value>-13264</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - PRL length mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaCRC</error_name>
+    <error_value>-13265</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Incorrect CRC</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaLocked</error_name>
+    <error_value>-13266</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Mobile Station Locked</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaInvalidSPC</error_name>
+    <error_value>-13267</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Invalid SPC</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSPCChangeDeniedByUser</error_name>
+    <error_value>-13268</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SPC change denied by user</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaInvalidSpasm</error_name>
+    <error_value>-13269</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Invalid SPASM</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaBlockIdNotExpectedInThisMode</error_name>
+    <error_value>-13270</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Block Id not expected in this mode</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaUserZoneAlreadyInPUZL</error_name>
+    <error_value>-13271</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - User Zone already in PUZL</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaUserZoneNotInPUZL</error_name>
+    <error_value>-13272</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - User zone not in PUZL</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaNoEntriesInPUZL</error_name>
+    <error_value>-13273</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - No entries in PUZL</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaOperationModeMismatch</error_name>
+    <error_value>-13274</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - Operation Mode mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPMaxNumNaiMismatch</error_name>
+    <error_value>-13275</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP MAX_NUM_NAI mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPMaxNaiLengthMismatch</error_name>
+    <error_value>-13276</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP MAX_NAI_LENGTH mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPMaxNumNaiMismatch</error_name>
+    <error_value>-13277</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP MAX_NUM_NAI mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPMaxNaiLengthMismatch</error_name>
+    <error_value>-13278</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP MAX_NAI_LENGTH mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPPapMaxSsLenMismatch</error_name>
+    <error_value>-13279</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP PAP MAX_SS_LENGTH mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPChapMaxSsLenMismatch</error_name>
+    <error_value>-13280</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP CHAP MAX_SS_LENGTH mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPMaxMnAaaSsLenMismatch</error_name>
+    <error_value>-13281</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP MAX_MN-AAA_SS_LENGTH mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPMaxMnHaSsLenMismatch</error_name>
+    <error_value>-13282</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP MAX_MN-HA_SS_LENGTH mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPMnAaaAuthAlgoMismatch</error_name>
+    <error_value>-13283</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP MN-AAA_AUTH_ALGORITHM mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPMnhaAuthAlgoMismatch</error_name>
+    <error_value>-13284</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP MNHA_AUTH_ALGORITHM mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPActNaiEntryIndexMismatch</error_name>
+    <error_value>-13285</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP ACT_NAI_ENTRY_INDEX mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPActNaiEntryIndexMismatch</error_name>
+    <error_value>-13286</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP ACT_NAI_ENTRY_INDEX mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPPapNaiEntryIndexMismatch</error_name>
+    <error_value>-13287</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP PAP NAI_ENTRY_INDEX mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaSimpleIPChapNaiEntryIndexMismatch</error_name>
+    <error_value>-13288</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - SimpleIP CHAP NAI_ENTRY_INDEX mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaOtaMobileIPNaiEntryIndexMismatch</error_name>
+    <error_value>-13289</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected - MobileIP NAI_ENTRY_INDEX mismatch</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidFeature</error_name>
+    <error_value>-13513</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid Feature code</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidKeypadEntry</error_name>
+    <error_value>-13514</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid Keypad entry</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidNumberType</error_name>
+    <error_value>-13515</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid NumberType</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidNumberPlan</error_name>
+    <error_value>-13516</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid Number Plan</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidPI</error_name>
+    <error_value>-13517</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid Presentation Indicator</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidSI</error_name>
+    <error_value>-13518</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid Screening Indicator</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashInvalidPartyNum</error_name>
+    <error_value>-13519</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Rejected Info Record- Invalid Party Number</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaFlashL3BlockedFlashMessage</error_name>
+    <error_value>-13520</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Call-stack blocked sending flash message</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscSignallingFailure</error_name>
+    <error_value>-13768</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Signalling failure invoice call origination or termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscNetworkBusy</error_name>
+    <error_value>-13769</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Busy network in voicecall origination or termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscConnectionLost</error_name>
+    <error_value>-13770</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Loss of connection invoice call origination or termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscNetworkRelease</error_name>
+    <error_value>-13771</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Release of network invoice call origination or termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscBaseStationRejectServiceOption</error_name>
+    <error_value>-13772</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Service option rejection by base station in voice call origination or termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscAccessFailure</error_name>
+    <error_value>-13773</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Access failure in voice call originationor termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscNoService</error_name>
+    <error_value>-13774</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>Service not available in voicecall origination or termination.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCdmaMiscSecurityCodeBlocked</error_name>
+    <error_value>-13775</error_value>
+    <error_component>Multimode Telephony  (ETELMMERR.H)</error_component>
+    <error_text>This code is blocked (probably as a result of the maximum retry being exceeded)</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrNoInterfaceIdentified</error_name>
+    <error_value>-17004</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to instantiate an Interface Implementation failed because no registrations exist for this interface.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrNoResolver</error_name>
+    <error_value>-17014</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The Non-Default resolver could not be instantiated. The most likely situation is that an incorrect implementation uid was supplied.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrTooManyNotificationsOutstanding</error_name>
+    <error_value>-17026</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The client has requested too many notifications.ECom can only support a finite number of notifications</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrMissingParameter</error_name>
+    <error_value>-17028</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>An ECom service was requested with an essential parameter missing. For example, this error code will be supplied when calling an overload of CreateImplementationL which uses a non-default resolver if you fail tosupply the resolver</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrListInvalidAwaitNotification</error_name>
+    <error_value>-17029</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The registry index is invalid but the client has requested notifications - so they will receive a notification when the indexis ready again</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrListCurrentlyUnavailable</error_name>
+    <error_value>-17030</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The registry index is invalid and the client has not requested notifications. They will have to try again later after discoveries have completed.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrInvalidUnloadPolicy</error_name>
+    <error_value>-17003</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The Client requested a service which is not supplied by this framework</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrInvalidIIC</error_name>
+    <error_value>-17008</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>An attempt has been made to load an implementation contained within a dll which no longer exists (deleted or is on a CF card that has been removed).</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrDriveNotFound</error_name>
+    <error_value>-17019</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>An attempt has been made to update registry information for a dll on a drive that does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrUnknownService</error_name>
+    <error_value>-17002</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The Client requested a service which is not supplied by this framework The Client requested a service which is not supplied by this framework</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrReferenceCountInvalid</error_name>
+    <error_value>-17013</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The Interface Implementation reference count is invalid</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrDestructionFailed</error_name>
+    <error_value>-17017</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The Interface Implementations destruction could not be recorded</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrInvalidRegistryData</error_name>
+    <error_value>-17022</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>An attempt has been made to update the registry information for a non-existent DLL.  An ECom internal error.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrDestroyingWithNullDtorKey</error_name>
+    <error_value>-17027</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The client called DestroyedImplementation with a destruction key of NULL. This is an irrecoverable error because the object cannot be deleted.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrAlreadyReceiving</error_name>
+    <error_value>-17001</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEComErrEnableFailed</error_name>
+    <error_value>-17005</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Enable the registered Interface Implementation failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrDisableFailed</error_name>
+    <error_value>-17006</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Disable the registered Interface Implementation failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrNoRegistrationsFound</error_name>
+    <error_value>-17007</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to instantiate an Interface Implementation failed because no appropriate implementation was found.</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrUninstallFailed</error_name>
+    <error_value>-17009</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Remove the registered Interface Implementation failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrReinstallFailed</error_name>
+    <error_value>-17010</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Re-register an Interface Implementation failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrRegistrationFailed</error_name>
+    <error_value>-17011</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Register an Interface Implementation failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrNotConnected</error_name>
+    <error_value>-17012</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The client does not have a session open with theframework</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrSuspendFailed</error_name>
+    <error_value>-17015</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Suspend registration activities failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrResumeFailed</error_name>
+    <error_value>-17016</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>The call to Resume registration activities failed</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrDriveAlreadyInstalled</error_name>
+    <error_value>-17018</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>An attempt has been made to add a drive to the registry which already exists</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrIndexEntryNotFound</error_name>
+    <error_value>-17020</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEComErrNoRegistrationData</error_name>
+    <error_value>-17021</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text>An IIC has been found which does not have a corresponding registration information file</error_text>
+  </error>
+  <error>
+    <error_name>KEComErrMismatchedTags</error_name>
+    <error_value>-17023</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEComErrInstantiationPointerNotFound</error_name>
+    <error_value>-17024</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KEComErrInstantiationPointerNotAvailable</error_name>
+    <error_value>-17025</error_value>
+    <error_component>ECOM  (ECOMERRORCODES.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrCHFProxyObjectAlreadyExists</error_name>
+    <error_value>-17050</error_value>
+    <error_component>Content Handling Framework  (CHFERROR.H)</error_component>
+    <error_text>A proxy object with the same identifier already exists.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCHFNoSchemeInUri</error_name>
+    <error_value>-17051</error_value>
+    <error_component>Content Handling Framework  (CHFERROR.H)</error_component>
+    <error_text>Supplied URI has no scheme part.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCHFDataSupplierConstructionFailed</error_name>
+    <error_value>-17052</error_value>
+    <error_component>Content Handling Framework  (CHFERROR.H)</error_component>
+    <error_text>Data supplier construction failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCHFContentHandlerConstructionFailed</error_name>
+    <error_value>-17053</error_value>
+    <error_component>Content Handling Framework  (CHFERROR.H)</error_component>
+    <error_text>Content handler construction failed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCHFDataSupplierSetPositionFailed</error_name>
+    <error_value>-17054</error_value>
+    <error_component>Content Handling Framework  (CHFERROR.H)</error_component>
+    <error_text>Failed to set position in data supplier.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSSuddenDeath</error_name>
+    <error_value>-17103</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>A module has died.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSRequestCancelled</error_name>
+    <error_value>-17104</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>A request was cancelled.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidParameter</error_name>
+    <error_value>-17105</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>A parameter was in some way invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidParameterFile</error_name>
+    <error_value>-17106</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The file could not be found, read or was in some way corrupt.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidParameterName</error_name>
+    <error_value>-17107</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The name was invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidParameterStackSize</error_name>
+    <error_value>-17108</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The stack size was invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidParameterHeapSize</error_name>
+    <error_value>-17109</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The heap size was invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidUidType</error_name>
+    <error_value>-17110</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The second UID of the DLL was not the UID of a Comms Provider Module.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSModuleAlreadyExist</error_name>
+    <error_value>-17111</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>A Comms Provider Module with this name is already loaded.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidMBufPoolSize</error_name>
+    <error_value>-17112</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The size of the MBuf pool is invalid.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSModuleNotRunning</error_name>
+    <error_value>-17113</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified module is not running.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSModuleNotLoaded</error_name>
+    <error_value>-17114</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified module is not loaded.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSAlreadyBound</error_name>
+    <error_value>-17115</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified binding is already active.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSModulesStillRunning</error_name>
+    <error_value>-17116</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>There are running modules.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSNoNewHeapsAvailable</error_name>
+    <error_value>-17117</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>Unable to create more new heaps in the Comms Process. Consider sharing a heap between modules.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSRequestTimedOut</error_name>
+    <error_value>-17118</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>A request timed out. This can happen when a module stops responding to requests for some reason.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSModuleUnknown</error_name>
+    <error_value>-17119</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified module does not exist..</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSSubModuleUnknown</error_name>
+    <error_value>-17120</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified sub module does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSBindingUnknown</error_name>
+    <error_value>-17121</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified binding does not exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSStatusUnknown</error_name>
+    <error_value>-17122</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The status is unknown.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSBindingExists</error_name>
+    <error_value>-17123</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified binding exist.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSModuleNotReady</error_name>
+    <error_value>-17124</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The module is not ready for requests.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSBindingInProgress</error_name>
+    <error_value>-17125</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified binding is not yet completed.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSUnableToOpenHeap</error_name>
+    <error_value>-17126</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>Found heap but unable to open it for sharing.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSUnableToFindHeap</error_name>
+    <error_value>-17127</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>Unable to find specified heap.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSUnableToCreateQueues</error_name>
+    <error_value>-17128</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>Unable to create communication channels for new module.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSZombie</error_name>
+    <error_value>-17129</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>This Comms Provider Module exists but is not responding.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidParameterThreadFuncOrdinal</error_name>
+    <error_value>-17130</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>The specified ordinal does not exist for the DLL.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidBinding</error_name>
+    <error_value>-17131</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>Invalid binding.</error_text>
+  </error>
+  <error>
+    <error_name>KErrRSInvalidQueueLength</error_name>
+    <error_value>-17132</error_value>
+    <error_component>Root Server  (RSERROR.H)</error_component>
+    <error_text>Queue length of binding invalid. Must be betweenTRSBindingInfo::EMinQueueLength and TRSBindingInfo::EMaxQueueLength.</error_text>
+  </error>
+  <error>
+    <error_name>KErrConnectionTerminated</error_name>
+    <error_value>-17210</error_value>
+    <error_component>Esock  (ES_SOCK.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrCannotFindProtocol</error_name>
+    <error_value>-17211</error_value>
+    <error_component>Esock  (ES_SOCK.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrTreeStoreUriTooLong</error_name>
+    <error_value>-17250</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The supplied URI exceeded the maximum overall length supported.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreUriTooDeep</error_name>
+    <error_value>-17251</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The depth of the supplied URI exceeded the maximum tree depth supported.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreUriSegmentTooLong</error_name>
+    <error_value>-17252</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>A segment in the supplied URI exceeded the maximum length supported.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreBadUriSegmentName</error_name>
+    <error_value>-17253</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>A segment in the supplied URI contained characters in the 'reserved' range in RFC2396.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreBadUriDelimiters</error_name>
+    <error_value>-17254</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The supplied URI contained either a missing front delimiter or an illegal back delimiter.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreZeroLenUriSegment</error_name>
+    <error_value>-17255</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The supplied URI contained a segment of zero length (i.e. the character' with no content).</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreUnknownMountPoint</error_name>
+    <error_value>-17256</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The supplied mount point URI does not exist in this tree store.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreVolAlreadyAttached</error_name>
+    <error_value>-17257</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The specified tree volume is already attached in the tree store.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreVolumeNotAttached</error_name>
+    <error_value>-17258</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>The specified tree volume is already attached in the tree store.</error_text>
+  </error>
+  <error>
+    <error_name>KErrTreeStoreNotAPersistedTree</error_name>
+    <error_value>-17259</error_value>
+    <error_component>Central Repository  (TREESTOREERR.H)</error_component>
+    <error_text>An attempt was made to manipulate volumes for a tree that isn't persisted.</error_text>
+  </error>
+  <error>
+    <error_name>KErrPositionBufferOverflow</error_name>
+    <error_value>-17350</error_value>
+    <error_component>LBS Position Framework  (LBSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPositionIncalculable</error_name>
+    <error_value>-17351</error_value>
+    <error_component>LBS Position Framework  (LBSERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrCANotSupported</error_name>
+    <error_value>-17450</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>Agent does not support the requested capability.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCANoPermission</error_name>
+    <error_value>-17451</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>Rights evaluation failed for the supplied intent.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCANoRights</error_name>
+    <error_value>-17452</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>No rights were available for evaluation.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCANoAgent</error_name>
+    <error_value>-17453</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>The Agent required is not present. This may occur if content 'belongs' to an agent that is no longer available on the device.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCAOutOfRange</error_name>
+    <error_value>-17454</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>Values specified are out of range.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCAPendingRights</error_name>
+    <error_value>-17455</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>The rights were not available but are 'expected'.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCASizeNotDetermined</error_name>
+    <error_value>-17456</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>A request to get the content size failed because the agent was unable to determine it.</error_text>
+  </error>
+  <error>
+    <error_name>KErrCANewFileHandleRequired</error_name>
+    <error_value>-17457</error_value>
+    <error_component>Content Access Framework  (CAFERR.H)</error_component>
+    <error_text>The function failed because the agent needs the client to provide another file handle before the import can continue.</error_text>
+  </error>
+  <error>
+    <error_name>KErrXmlStringDictionaryPluginNotFound</error_name>
+    <error_value>-17550</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlParserPluginNotFound</error_name>
+    <error_value>-17551</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlGeneratorPluginNotFound</error_name>
+    <error_value>-17552</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlPluginNotFound</error_name>
+    <error_value>-17553</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlBadCharacterConversion</error_name>
+    <error_value>-17554</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnsupportedCharacterSet</error_name>
+    <error_value>-17555</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnavailableCharacterSet</error_name>
+    <error_value>-17556</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnsupportedElement</error_name>
+    <error_value>-17557</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnsupportedAttribute</error_name>
+    <error_value>-17558</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnsupportedAttributeValue</error_name>
+    <error_value>-17559</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlMissingStringDictionary</error_name>
+    <error_value>-17560</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnsupportedDocumentVersion</error_name>
+    <error_value>-17561</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlDocumentCorrupt</error_name>
+    <error_value>-17562</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlStringPoolTableNotFound</error_name>
+    <error_value>-17563</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlBadIndex</error_name>
+    <error_value>-17564</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrXmlUnsupportedExtInterface</error_name>
+    <error_value>-17566</error_value>
+    <error_component>XML Framework (XMLFRAMEWORKERRORS.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPrivacyTbNullPtr</error_name>
+    <error_value>-17901</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPrivacyTbProgramError</error_name>
+    <error_value>-17902</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPrivacyTbNullSearchString</error_name>
+    <error_value>-17903</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPrivacyTbWriteFailure</error_name>
+    <error_value>-17904</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPriPolicyTbPackedPriByte</error_name>
+    <error_value>-17905</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPriVersionTbInvalidVersion</error_name>
+    <error_value>-17906</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrPriVersionTbRecordAlreadyExist</error_name>
+    <error_value>-17907</error_value>
+    <error_component>LBS Privacy  (EPOS_CSPRIVACYSHARELEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyTbErrorBase</error_name>
+    <error_value>-17910</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSerPriTbMismatchServiceIdAndType</error_name>
+    <error_value>-17911</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSerPriTbServiceIdTypeChanged</error_name>
+    <error_value>-17912</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSerPriTbSecureIdChanged</error_name>
+    <error_value>-17913</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServiceIdPhoneNumberTbErrorBase</error_name>
+    <error_value>-17915</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServiceIdPhoneNumTbMatchDigitsOutOfRange</error_name>
+    <error_value>-17916</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyErrorBase</error_name>
+    <error_value>-17920</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyDuplicateServiceItemId</error_name>
+    <error_value>-17921</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyArrayIndexOutOfRange</error_name>
+    <error_value>-17922</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyDbModelErrorBase</error_name>
+    <error_value>-17925</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelWrongMajorVersion</error_name>
+    <error_value>-17926</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelServiceIdPhNoDigitsLessThan7</error_name>
+    <error_value>-17927</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelServiceIdTypeNotSet</error_name>
+    <error_value>-17928</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelWrongServiceInfoMask</error_name>
+    <error_value>-17929</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelNullServiceId</error_name>
+    <error_value>-17930</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelChildTbRcdNotDeleted</error_name>
+    <error_value>-17931</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelChildTbRcdNotUpdated</error_name>
+    <error_value>-17932</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrSPDbModelInvalidPhMatchLength</error_name>
+    <error_value>-17933</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyDbErrorBase</error_name>
+    <error_value>-17935</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyDbInvalidServiceItemIdInArray</error_name>
+    <error_value>-17936</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+  <error>
+    <error_name>KErrServicePrivacyDbEventObserverAlreadyExists</error_name>
+    <error_value>-17937</error_value>
+    <error_component>LBS Privacy  (EPOS_SERVICEPRIVACYLEAVECODE.H)</error_component>
+    <error_text />
+  </error>
+</error_codes>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Etel_Server.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,63 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Etel Server</category_name>
+  <category_description> &lt;p&gt;Panic caused by incorrect use of the ETel Core API- e.g. passing bad or contradictory values to class constructors or member functions.&lt;/p&gt; &lt;p&gt;The client thread causing the panic is terminated.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;The subsession handle is not recognised by the server.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;An attempt to read or write across the client-server boundary has failed. This usually indicates that the descriptor sent is incorrectly formatted.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;The message type- sent by the client- is not recognised by the server.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Client code has attempted to re-post an asynchronous request before the original request has completed.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;The client has attempted to open a sub-session without first opening its parent object. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;The client has attempted to use a zero length descriptor.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;The size field of a descriptor indicates that it contains a negative amount of data.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Not used.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Client failed to call &lt;code&gt;Open()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Client failed to call &lt;code&gt;Open()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Client code request to access an element outside the array range.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;The &lt;code&gt;Open()&lt;/code&gt; function has been called twice by the same sub-session.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;The client has passed a bad phone call type.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;The client has specified a bad name for a phone line or phone call object.&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Exceptions.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,115 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Exceptions</category_name>
+  <category_description> &lt;p&gt;Exceptions are generated by internal and external sources to cause the processor to handle an event, such as an externally generated interrupt or an attempt to execute an Undefined instruction. The processor state just before handling the exception is normally preserved so that the original program can be resumed when the exception routine has completed. More than one exception can arise at the same time.&lt;/p&gt; &lt;p&gt;When an exception occurs, execution is forced from a fixed memory address corresponding to the type of exception. These fixed addresses are called the exception vectors.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>EExcGeneral</panic_id>
+      <panic_description>&lt;p&gt;A miscellaneous exception. (EExcGeneral=0)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcIntegerDivideByZero</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to divide an integer by zero. (EExcIntegerDivideByZero=1)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcSingleStep</panic_id>
+      <panic_description>&lt;p&gt;Raised after executing an instruction, when CPU is in single-step mode. (EExcSingleStep=2)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcBreakPoint</panic_id>
+      <panic_description>&lt;p&gt;A break point was hit. (EExcBreakPoint=3)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcIntegerOverflow</panic_id>
+      <panic_description>&lt;p&gt;An integer value overflowed. (EExcIntegerOverflow=4)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcBoundsCheck</panic_id>
+      <panic_description>&lt;p&gt;Access to an out of bounds array element was caught. (EExcBoundsCheck=5)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcInvalidOpCode</panic_id>
+      <panic_description>&lt;p&gt;The CPU reached an invalid instruction. (EExcInvalidOpCode=6)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcDoubleFault</panic_id>
+      <panic_description>&lt;p&gt;A fault occurred while handling a previous exception or interrupt. (EExcDoubleFault=7)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcStackFault</panic_id>
+      <panic_description>&lt;p&gt;The thread ran out of stack space. (EExcStackFault=8)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcAccessViolation</panic_id>
+      <panic_description>&lt;p&gt;The thread attempted to access memory in an unauthorized area. (EExcAccessViolation=9)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcPrivInstruction</panic_id>
+      <panic_description>&lt;p&gt;Attempted to execute an instruction in wrong machine mode. (EExcPrivInstruction=10)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcAlignment</panic_id>
+      <panic_description>&lt;p&gt;The thread tried to read or write non-aligned data. (EExcAlignment=11)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcPageFault</panic_id>
+      <panic_description>&lt;p&gt;Thread could not access the memory page requested. (EExcPageFault=12)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatDenormal</panic_id>
+      <panic_description>&lt;p&gt;An operand in a floating point operation was denormal. (EExcFloatDenormal=13)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatDivideByZero</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to divide a floating point number by zero. (EExcFloatDivideByZero=14)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatInexactResult</panic_id>
+      <panic_description>&lt;p&gt;The result of a floating point operation could not be represented precisely. (EExcFloatInexactResult=15)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatInvalidOperation</panic_id>
+      <panic_description>&lt;p&gt;The result of a floating point operation was an ill-defined quantity. (EExcFloatInvalidOperation=16)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatOverflow</panic_id>
+      <panic_description>&lt;p&gt;The result of a floating point operation was too large to be represented. (EExcFloatOverflow=17)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatStackCheck</panic_id>
+      <panic_description>&lt;p&gt;The result of a floating point operation caused the stack to over or underflow. (EExcFloatStackCheck=18)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcFloatUnderflow</panic_id>
+      <panic_description>&lt;p&gt;The result of a floating point operation was too small to be represented. (EExcFloatUnderflow=19)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcAbort</panic_id>
+      <panic_description>&lt;p&gt;This exception is not raised by the Kernel, though it may be raised by a user thread on itself. (EExcAbort=20)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcKill</panic_id>
+      <panic_description>&lt;p&gt;This exception is not raised by the Kernel, though it may be raised by a user thread on itself. (EExcKill=21)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcUserInterrupt</panic_id>
+      <panic_description>&lt;p&gt;May be used to indicate a general exception. (EExcUserInterrupt=22)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcDataAbort</panic_id>
+      <panic_description>&lt;p&gt;The thread has tried to read data from an invalid address. (EExcDataAbort=23)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcCodeAbort</panic_id>
+      <panic_description>&lt;p&gt;The thread has tried to fetch an instruction from an invalid address. (EExcCodeAbort=24)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcMaxNumber</panic_id>
+      <panic_description>&lt;p&gt;Do not use. (EExcMaxNumber=25)&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>EExcInvalidVector</panic_id>
+      <panic_description>&lt;p&gt;Do not use. (EExcInvalidVector=26)&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/FBSCLI.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,95 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>FBSCLI</category_name>
+  <category_description> &lt;p&gt; Panics raised by clients of the font and bitmap server. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; No connection has been made to the font and bitmap server. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Attempted to pass a command to the font and bitmap server, but no connection has been made. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; Internal typeface store error: the list of accessed fonts (&lt;code&gt;CTypefaceStore::iFontAccess&lt;/code&gt;) is inconsistent with the font cache (&lt;code&gt;CFbsTypefaceStore::iTwipsCache&lt;/code&gt;). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; The typeface store was unable to create a font due to a NULL font handle or address. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; Attempted to access a NULL font pointer (debug builds only). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; Invalid bitmap format (debug builds only). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; Invalid bitmap display mode (&lt;code class="ApiItem"&gt;TDisplayMode&lt;/code&gt;). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; Invalid bitmap compression value (&lt;code class="ApiItem"&gt;TBitmapfileCompression&lt;/code&gt;), or an unsupported operation was attempted on a compressed bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; Bitmap decompression error (debug builds only). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Memory addressing error. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Either the display mode of the destination bitmap is not &lt;code&gt;EColor256&lt;/code&gt;, or the two bitmaps are different sizes in &lt;code class="ApiItem"&gt;CFbsColor256BitmapUtil::CopyBitmap()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; An error occurred when constructing a hardware bitmap (debug builds only). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; Memory alignment error in a bitmap loaded from ROM. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; New display mode not supported by &lt;code&gt;CBitwiseBitmap::ChangeDisplayMode()&lt;/code&gt; (debug builds only). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; New display mode not supported by &lt;code&gt;CBitwiseBitmap::ChangeDisplayMode()&lt;/code&gt; (debug builds only). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; When swapping a bitmap's width and height, the size of the new bitmap would exceed the amount of memory allocated. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; &lt;code&gt;CFbsBitmap::LockHeap()&lt;/code&gt; has not been called prior to calling &lt;code&gt;CFbsBitmap::DataAddress()&lt;/code&gt; (debug builds only). &lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/FSCLIENT_panic.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,119 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>FSCLIENT panic</category_name>
+  <category_description> &lt;p&gt; Panics with this category are raised on clients requesting services provided by the file server. Typically, they are caused by passing bad or contradictory values to class constructors or member functions. &lt;/p&gt; &lt;p&gt; The thread causing the panic is terminated. &lt;/p&gt; &lt;p&gt; To avoid confusion, we need to emphasise that the panic category is the 14 character string &lt;em&gt;FSCLIENT panic&lt;/em&gt;, and that the word panic is part of the panic category. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by: &lt;/p&gt; &lt;p&gt; the &lt;code&gt;TDriveUnit(TInt aDrive)&lt;/code&gt; variant of the &lt;code class="ApiItem"&gt;TDriveUnit&lt;/code&gt; constructor, &lt;/p&gt; &lt;p&gt; the &lt;code&gt;(TInt aDrive)&lt;/code&gt; variant of the &lt;code class="ApiItem"&gt;TDriveUnit&lt;/code&gt; assignment operator &lt;/p&gt; &lt;p&gt; when the specified drive number is greater than or equal to &lt;code&gt;KMaxDrives&lt;/code&gt;, i.e. 26. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by: &lt;/p&gt; &lt;p&gt; the &lt;code&gt;TDriveUnit(const TDesC&amp;amp; aDriveText)&lt;/code&gt; variant of the &lt;code class="ApiItem"&gt;TDriveUnit&lt;/code&gt; constructor, &lt;/p&gt; &lt;p&gt; the &lt;code&gt;(const TDesC&amp;amp; aDriveText)&lt;/code&gt; variant of the &lt;code class="ApiItem"&gt;TDriveUnit&lt;/code&gt; assignment operator &lt;/p&gt; &lt;p&gt; when the specified drive letter is invalid, i.e. does not correspond to a drive number. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when searching for the next file using &lt;code class="ApiItem"&gt;TFindFile::Find()&lt;/code&gt; or &lt;code class="ApiItem"&gt;TFindFile::FindWild()&lt;/code&gt; before the initial call specifying the search method. &lt;/p&gt; &lt;p&gt; Calls to &lt;code class="ApiItem"&gt;TFindFile::Find()&lt;/code&gt; cannot be made until an initial call has been made to either of: &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TFindFile::FindByDir()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TFindFile::FindByPath()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; Calls to &lt;code class="ApiItem"&gt;TFindFile::FindWild()&lt;/code&gt; cannot be made until an initial call has been made to either of: &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TFindFile::FindWildByDir()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TFindFile::FindWildByPath()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by a call to &lt;code class="ApiItem"&gt;TFileText::Seek()&lt;/code&gt; when the seek mode passed to the function is neither &lt;code class="ApiItem"&gt;TSeek&lt;/code&gt;&lt;code&gt;::ESeekStart&lt;/code&gt; nor &lt;code class="ApiItem"&gt;TSeek&lt;/code&gt;&lt;code&gt;::ESeekEnd&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;/p&gt; &lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code class="ApiItem"&gt;CFileMan&lt;/code&gt; implementation when the operation to be run is undefined. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;CFileBase::CurrentEntry()&lt;/code&gt; if there is no current entry. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; The value returned by the file management observer functions: &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;MFileManObserver::NotifyFileManStarted()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;MFileManObserver::NotifyFileManEnded()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;MFileManObserver::NotifyFileManOperation()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; is not a valid &lt;code class="ApiItem"&gt;MFileManObserver::TControl&lt;/code&gt; enum value. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; &lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt; &lt;/p&gt; &lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;CDirScan::SetScanDataL()&lt;/code&gt; when the path does not contain at least one '\' character. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Not used.&lt;/em&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RFile::Lock()&lt;/code&gt; when the number of bytes defining the region to be locked is either zero or negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RFile::UnLock()&lt;/code&gt; when the number of bytes defining the region to be unlocked is either zero or negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; All variants of the &lt;code class="ApiItem"&gt;RFile::Read()&lt;/code&gt; and &lt;code class="ApiItem"&gt;RFile::Write()&lt;/code&gt; functions take an argument denoting an offset value, in bytes, from the start of a file; the panic is raised by these functions when the offset value is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RFile::SetSize()&lt;/code&gt; when the argument denoting the size of the new file is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RFile::SetAtt()&lt;/code&gt; and &lt;code class="ApiItem"&gt;RFile::Set()&lt;/code&gt; when the same attribute bit is set in both the bitmask that indicates the file attributes to be set and the bitmask that indicates the attributes to be cleared. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; The panic is raised by the &lt;code&gt;[]&lt;/code&gt; operator of &lt;code class="ApiItem"&gt;TEntryArray&lt;/code&gt;, when the index value passed to the operator is greater than or equal to the number of elements in the array. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;CDir::Sort()&lt;/code&gt; when the method of sorting, as defined by the single function argument, is none of the entries: &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TEntryKey&lt;/code&gt;&lt;code&gt;::ESortNone&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TEntryKey&lt;/code&gt;&lt;code&gt;::ESortByDate&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TEntryKey&lt;/code&gt;&lt;code&gt;::ESortBySize&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TEntryKey&lt;/code&gt;&lt;code&gt;::ESortByExt&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TEntryKey&lt;/code&gt;&lt;code&gt;::ESortByUid&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TEntryKey&lt;/code&gt;&lt;code&gt;::ESortByName&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code class="ApiItem"&gt;TParsePtr&lt;/code&gt; constructor that takes a reference to a filename, when the name cannot be parsed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code class="ApiItem"&gt;TParsePtrC&lt;/code&gt; constructor that takes a const reference to a filename, when the name cannot be parsed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RFs::ReadFileSection()&lt;/code&gt; when the specified number of bytes to be read from the file is greater than the maximum length of the target descriptor. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt; &lt;i&gt;This panic is raised in debug builds only.&lt;/i&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by the &lt;code class="ApiItem"&gt;RFile::Write(const TDesC8&amp;amp;,TInt)&lt;/code&gt; variant when the specified length is greater than the length of the source descriptor. &lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Form.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,131 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Form</category_name>
+  <category_description> &lt;p&gt;Text Views panics: &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>201</panic_id>
+      <panic_description>&lt;p&gt; A NULL layout handle was passed to &lt;code&gt;CTextView::NewL()&lt;/code&gt;, or to &lt;code&gt;CTextView::SetLayout()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>202</panic_id>
+      <panic_description>&lt;p&gt; The character edit type in &lt;code&gt;CTextView::HandleCharEditL()&lt;/code&gt; was unknown or incompatible with the format changed value. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>203</panic_id>
+      <panic_description>&lt;p&gt; The horizontal scroll jump value was set to be outside the allowable range (0 to 9999). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>300</panic_id>
+      <panic_description>&lt;p&gt; An invalid document position was specified (e.g. negative or greater than the document length). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>400</panic_id>
+      <panic_description>&lt;p&gt; Drawing error: attempting to draw a line cursor without a line cursor bitmap having been set. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>500</panic_id>
+      <panic_description>&lt;p&gt;Pagination error: attempting to paginate without a document having been set. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>501</panic_id>
+      <panic_description>&lt;p&gt; Pagination error: appending zero or negative characters per page to the page list (array of characters per page). Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>502</panic_id>
+      <panic_description>&lt;p&gt; Pagination error: page list is empty. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>600</panic_id>
+      <panic_description>&lt;p&gt; Printing error: the page list has not been set or is defective. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>601</panic_id>
+      <panic_description>&lt;p&gt; Printing error: an invalid page number was specified. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>702</panic_id>
+      <panic_description>&lt;p&gt; Document formatting error: the selected range flag is on but the selection has zero length. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>704</panic_id>
+      <panic_description>&lt;p&gt; Document formatting error: the pixel position of the cursor is inconsistent with the position of its bounding line rectangle. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>705</panic_id>
+      <panic_description>&lt;p&gt; Document formatting error: the scroll caused by a single character edit was incomplete. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>800</panic_id>
+      <panic_description>&lt;p&gt; CTextView::HandleCharEditL()&lt;/code&gt; was called while there is a text selection. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>801</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to update the view when the document formatting is out of date. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>802</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to handle a text edit while background formatting is taking place. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>901</panic_id>
+      <panic_description>&lt;p&gt;A scroll was requested, but the specified amount to scroll by is zero. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>902</panic_id>
+      <panic_description>&lt;p&gt; An algorithmic error occurred while scrolling. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>903</panic_id>
+      <panic_description>&lt;p&gt; An error occured when scrolling down. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>904</panic_id>
+      <panic_description>&lt;p&gt; An error occured when scrolling up. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>905</panic_id>
+      <panic_description>&lt;p&gt; Invalid horizontal scroll value specified &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1000</panic_id>
+      <panic_description>&lt;p&gt; Out of memory. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1001</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to recover from an out of memory condition when no out of memory condition has occured. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1100</panic_id>
+      <panic_description>&lt;p&gt;The cursor is not fully on the screen following a scroll. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1104</panic_id>
+      <panic_description>&lt;p&gt; The document position was out of range for the current source document. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1200</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to turn highlighting on or off when the view is in the no visible highlighting state. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1202</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to create a graphics context for the view when one already exists. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1301</panic_id>
+      <panic_description>&lt;p&gt; A leave occurred when scrolling to change the cursor position. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1302</panic_id>
+      <panic_description>&lt;p&gt; The cursor movement specified is inconsistent with the function call. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1303</panic_id>
+      <panic_description>&lt;p&gt; There is a picture frame at the cursor position, but no picture frame is in memory. Debug builds only. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1304</panic_id>
+      <panic_description>&lt;p&gt; The value of a system constant has been changed. Debug builds only. &lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/HTTP_COOKIEform.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>HTTP-COOKIE</category_name>
+  <category_description> &lt;p&gt;Cookie filter panics. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; Invalid filter state &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; The &lt;code&gt;aCookieList&lt;/code&gt; array passed to &lt;code class="ApiItem"&gt;MHttpCookieManager::GetCookiesL()&lt;/code&gt; is not empty&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/HTTP_CORE.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,75 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>HTTP-CORE</category_name>
+  <category_description> &lt;p&gt; Transport Framework Client panics. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;RHTTPSession&lt;/code&gt; session is already open. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; Specified header field is missing. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Unused. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Unused. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; Mismatch between header's type and its attempted use. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Unused. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; A transaction error occurred, and the &lt;code&gt;MHFRunError()&lt;/code&gt; in use didn't handle it. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; Attempted to add a filter while there is a transaction outstanding. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; Attempted to add a filter at a position not between the protocol handler and the client. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CHTTPEncoder&lt;/code&gt; object destroyed without its data being released. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CHTTPEncoder&lt;/code&gt; object at the wrong state for adding data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; Unused. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; Invalid request data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Invalid response data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Unused. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; Unused. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; An invalid filter handle was specified. &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/IMAPServer.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,43 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>IMAPServer</category_name>
+  <category_description> &lt;p&gt; IMAPServer panics are raised by the IMAP server-side MTM. They are used to signal errors in the implementation of the MTM, and are raised in debug builds. The panic codes are divided into a number of ranges, each of which relates to a particular area of functionality in the MTM: &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0-999</panic_id>
+      <panic_description>&lt;p&gt; Session logic, which relates to the set up and management of an individual session to an IMAP server &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1000-1999</panic_id>
+      <panic_description>&lt;p&gt; IMAP settings loading and storage &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2000-2999</panic_id>
+      <panic_description>&lt;p&gt; Server MTM class implementation &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3000-3999</panic_id>
+      <panic_description>&lt;p&gt; Character set conversion &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4000-4999</panic_id>
+      <panic_description>&lt;p&gt; Storage and manipulation of messages &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5000-5999</panic_id>
+      <panic_description>&lt;p&gt; Controlling logic for handling client commands &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6000-6999</panic_id>
+      <panic_description>&lt;p&gt; Transport handler, which handles reading and writing of data to connected sockets &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7000-7999</panic_id>
+      <panic_description>&lt;p&gt; Synchronisation manager, which handles the synchronisation of mailbox folders between the locally persisted mailbox store and a remote mailbox store &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8000-8999</panic_id>
+      <panic_description>&lt;p&gt; Server MTM class &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ImageConversion.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,139 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>ImageConversion</category_name>
+  <category_description> &lt;p&gt; Panics used in the Image Conversion Library &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; No source bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; No destination bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Reset destination bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Convert called while busy. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; No conversion currently in progress. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Different destination bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; Different destination bitmap mask. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; The destination has been illegally modified. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; The bitmap has zero dimensions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; No bitmap mask specified. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; Invalid frame number. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; The source type is undefined. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; Comment are not supported. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Header processing is not complete. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Comment number is out of range. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; Bad display mode. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; Unknown header state. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; The descriptor that was passed is not NULL. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; Undefined MIME type. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; Illegal image sub-type. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; Illegal image type. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; Illegal encoder restart. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; Attempt to change options while decoding in progress. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; Decoder not created. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; Feature is not yet implemented. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; Relay sub thread panic timeout. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; Invalid thread state. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt; Invalid function leave request. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt; An Image Decoder was found to be in an invalid state. For example &lt;code class="ApiItem"&gt;CBufferedImageDecoder::ContinueConvert()&lt;/code&gt; was called when there is no image data to convert. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt; Illegal call to reserved function. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt; An index is invalid. For example &lt;code class="ApiItem"&gt;TFrameLayout::Length()&lt;/code&gt; will panic if the value of the index parameter &lt;code&gt;aIndex&lt;/code&gt;is not in the range&lt;code&gt;[0:TFrameLayout::Planes()]&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt; A parameter value is invalid. For example &lt;code class="ApiItem"&gt;TFrameLayout::SetLength()&lt;/code&gt; will panic if the value of the length parameter &lt;code&gt;aLength&lt;/code&gt; is negative. &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/InSock.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>InSock</category_name>
+  <category_description> &lt;p&gt; Panic of insock.dll &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;TInetAddr&lt;/code&gt; constructor call with &lt;code&gt;TSockAddr&lt;/code&gt; argument of incorrect protocol family &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Irda_Fault.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,47 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Irda Fault</category_name>
+  <category_description> &lt;p&gt; IrDA sockets (infra-red protocol) panics: &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Unused &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; Session not closed &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; Timer error &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; IR connection in bad state &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; Invalid state change &lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/KERN-EXEC.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,251 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>KERN-EXEC</category_name>
+  <category_description> &lt;p&gt; These panics represent program errors which are detected by the Kernel Executive. Typically, they are caused by passing bad or contradictory parameters to functions. Threads which cause exceptions also raise a KERN-EXEC panic. &lt;/p&gt; &lt;p&gt; The thread causing the panic is terminated. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the Kernel cannot find an object in the object index for the current process or current thread using the specified object index number (the raw handle number). &lt;/p&gt; &lt;p&gt; The most common reason for this is trying to use a kernel-side resource without first having sucessfully created it or sucessfully opened it. Typically, such resources are created or opened through user side handles, which are instances of classes derived from &lt;code class="ApiItem"&gt;RHandleBase&lt;/code&gt;, for example, &lt;code class="ApiItem"&gt;RLibrary&lt;/code&gt;, &lt;code class="ApiItem"&gt;RThread&lt;/code&gt;, &lt;code class="ApiItem"&gt;RProcess&lt;/code&gt;, &lt;code class="ApiItem"&gt;RSemaphore&lt;/code&gt; etc. [Note that this list is not exhaustive]. &lt;/p&gt; &lt;p&gt; For example, a call to &lt;code class="ApiItem"&gt;RLibrary::Lookup()&lt;/code&gt; panics with KERN-EXEC 0 if not preceded by a successful call to &lt;code class="ApiItem"&gt;RLibrary::Load()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; This is a general panic raised as a result of trying an unauthorised activity such as trying to suspend a thread, to set the priority of a thread or to set the priority of a process, when not authorised to do so. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the kernel when opening a kernel side object, a &lt;code class="ApiItem"&gt;DObject&lt;/code&gt; type, and the fullname is invalid. &lt;/p&gt; &lt;p&gt; The fullname is deemed to be invalid if it contains a character that is not one of the printable characters lying between 0x20 and 0x7e inclusive, or it contains an asterisk or a question mark. &lt;/p&gt; &lt;p&gt; See also &lt;code class="ApiItem"&gt;Kern::ValidateFullName()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an unhandled exception occurs. Exceptions have many causes, but the most common are access violations caused, for example, by dereferencing NULL. Among other possible causes are: general protection faults, executing an invalid instruction, alignment checks, etc. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the kernel when a handle to a code segment is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; This is a general type of panic that is usually raised by a device driver when dealing with an asynchronous request, and it finds that an asynchronous request is already outstanding. For an example of the context in which this is raised, see &lt;code class="filename"&gt;...\cedar\e32test\examples\driver1\driver1_ldd.cpp&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; This panic is also raised when trying to subscribe to a property through a call to &lt;code class="ApiItem"&gt;RProperty::Subscribe()&lt;/code&gt; and there is already an outstanding subscription on this property handle. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;DLogicalChannel::Request()&lt;/code&gt; when the request number passed to the function is smaller than the permitted minimum. &lt;/p&gt; &lt;p&gt; See also &lt;code class="ApiItem"&gt;DLogicalChannel::EMinRequestId&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a logical channel, and the unit number is outside the permitted range: &lt;/p&gt; &lt;p&gt; If unit numbers are not permitted, the unit number value must be &lt;code class="ApiItem"&gt;KNullUnit&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; If unit numbers are permitted, the unit number value must be less than &lt;code class="ApiItem"&gt;KMaxUnits&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; A logical channel is created as a result of a call to &lt;code class="ApiItem"&gt;RBusLogicalChannel::DoCreate()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the kernel if an event capture hook has already been designated. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the kernel if the current thread is not the designated event capture hook. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an attempt is made to set the priority of a thread or process to an illegal value. &lt;/p&gt; &lt;p&gt; The permitted priority values for a user process are a subset of the values defined by the &lt;code class="ApiItem"&gt;TProcessPriority&lt;/code&gt; enum. The permitted values are: &lt;/p&gt; &lt;code&gt; EPriorityLow &lt;/code&gt; &lt;p&gt; &lt;code&gt;EPriorityBackground &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;EPriorityForeground &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;EPriorityHigh &lt;/code&gt; &lt;/p&gt; &lt;p&gt; The permitted priority values for a user thread are a subset of the values defined by the &lt;code class="ApiItem"&gt;TThreadPriority&lt;/code&gt; enum. The permitted values are: &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityMuchLess &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityLess &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityNormal &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;EPriorityMore &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityMuchMore &lt;/code&gt; &lt;/p&gt; &lt;code&gt;EPriorityRealTime &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;EPriorityAbsoluteVeryLow &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityAbsoluteLow &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityAbsoluteBackground &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityAbsoluteForeground &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt; EPriorityAbsoluteHigh &lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a timer event is requested from an asynchronous timer service, an &lt;code class="ApiItem"&gt;RTimer&lt;/code&gt;, and a timer event is already outstanding. It is caused by calling either the &lt;code&gt;At()&lt;/code&gt;, &lt;code&gt;After()&lt;/code&gt; or &lt;code&gt;Lock()&lt;/code&gt; member functions after a previous call to any of these functions, but before the timer event requested by those functions has completed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; The panic is raised if kernel heap checking has failed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Kernel when a server program makes a request to receive a message, i.e. when it calls the &lt;code&gt;Receive()&lt;/code&gt; member function of &lt;code&gt;RServer2&lt;/code&gt;, the handle to the Kernel side server object. The panic occurs when a receive message request has previously been made and is still outstanding. &lt;/p&gt; &lt;p&gt; Note that &lt;code&gt;RServer2&lt;/code&gt; is internal to Symbian &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Kernel when a request for an event, as originated by a call to &lt;code&gt;UserSvr::RequestEvent()&lt;/code&gt;, defined in &lt;code class="filename"&gt;e32svr.h&lt;/code&gt;, is made while a previously made request is still outstanding. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;RSessionBase::ShareAuto()&lt;/code&gt; or &lt;code class="ApiItem"&gt;RSessionBase::ShareProtected()&lt;/code&gt;, i.e. when attempting to create a session with a server that can be shared, and the server does not allow or support shared sessions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when writing global DLL data, and the length of data to be written is greater than the space available. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when searching for objects, using the internal function &lt;code&gt;TFindHandleBase::NextObject()&lt;/code&gt;, and an invalid type of object is specified; i.e. it is not a thread, process, chunk, mutex etc. etc. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by kernel side code that implements heap debugging behaviour, when a specific debug request is not recognised. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an executive call is made with an invalid call number. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an attempt is being made to send a synchronous message to a server more than once, using the current thread's dedicated synchronous message. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt; This panic is called by &lt;code&gt;DProcess::Resume()&lt;/code&gt; when trying to resume a process that is still being loaded. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;Kern::KUDesInfo()&lt;/code&gt;, &lt;code class="ApiItem"&gt;Kern::KUDesPut()&lt;/code&gt; etc, when an invalid descriptor is passed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;Kern::KUDesSetLength()&lt;/code&gt; &amp;amp; &lt;code class="ApiItem"&gt;Kern::KUDesPut()&lt;/code&gt; when the descriptor passed to it is not a modifiable type; i.e. is derived from &lt;code class="ApiItem"&gt;TDesC&lt;/code&gt; but not derived from &lt;code class="ApiItem"&gt;TDes&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;Kern::KUDesSetLength()&lt;/code&gt; &amp;amp; &lt;code class="ApiItem"&gt;Kern::KUDesPut()&lt;/code&gt; when the length of the source descriptor is longer than the maximum length of the target descriptor. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the kernel side code that implements the setting of the currency symbol when the length of the currency symbol is greater than &lt;code class="ApiItem"&gt;KMaxCurrencySymbol&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by kernel code when it tries to acquire the process DLL lock just before a load, and the wait DLL lock is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by internal kernel code when an illegal attempt is made to attach to a library. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when extracting a list of DLL entry points, and the number exceeds the maximum permitted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>40</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by internal kernel code when an illegal attempt is made to detach a library. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>41</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by internal kernel code when an illegal attempt is made to attach to a library. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by internal kernel code when an illegal attempt is made to detach a library. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>43</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by kernel code when it tries to release the process DLL lock when a load fails, and the release DLL lock is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a bad message handle is passed to the kernel. This usually occurs when using functions called on the &lt;code class="ApiItem"&gt;RMessagePtr2&lt;/code&gt; or &lt;code class="ApiItem"&gt;RMessage2&lt;/code&gt; classes after the message has been completed; or when the &lt;code&gt;iHandle&lt;/code&gt; data member of the base class &lt;code class="ApiItem"&gt;RHandleBase&lt;/code&gt; has become corrupt. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt; This panic is not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt; This panic can be raised as a result of a call to one of a large number of functions. In general, the panic indicates an attempt to perform an operation on a thread or process by code running in another process - violating the security principle of process isolation. &lt;/p&gt; &lt;p&gt; There are exceptions to this general rule, for example, where the panic is raised because the calling process has insufficient capability. The precise reason is stated with the function(s). &lt;/p&gt; &lt;p&gt; The panic is raised on a call to the following function if the process owning the thread performing the call is not the creator of the target process or, if a handle is specified, the handle is not local. &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RProcess::SetParameter()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; The panic is raised on a call to the following functions if the process owning the thread performing the call is not the same as the target process. &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RProcess::Kill()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RProcess::Terminate()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RProcess::Panic()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RProcess::SetJustInTime()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RProcess::Resume()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::Kill()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::Terminate()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::Panic()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::Suspend()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::Resume()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::SetPriority()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::RequestComplete()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RThread::RequestSignal()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; NOTE: the creator of a new process can kill or panic the new process, change the new process priority and set the new process startup parameters until the process is resumed (which the creator can also do). After the new process has been resumed, then it becomes totally independent of its creator, and any attempt to panic it, kill it etc will raise the KERN-EXEC 46 panic. &lt;/p&gt; &lt;p&gt; The panic is raised on call to the following (Symbian partner only) functions if the calling process does not have the &lt;em&gt;PowerMgmt&lt;/em&gt; capability (&lt;code class="ApiItem"&gt;TCapability::ECapabilityPowerMgmt&lt;/code&gt;): &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;Power::PowerDown()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;Power::EnableWakeupEvents()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;Power::DisableWakeupEvents()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;Power::RequestWakeupEventNotification()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;Power::CancelWakeupEventNotification()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; The panic is raised on call to the following functions if the calling process does not have the &lt;em&gt;WriteDeviceData&lt;/em&gt; capability (&lt;code class="ApiItem"&gt;TCapability::ECapabilityWriteDeviceData&lt;/code&gt;): &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;User::SetMachineConfiguration()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;User::SetHomeTime()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;User::SetUTCTime()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;User::SetUTCOffset()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;User::SetUTCTimeAndOffset()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; The panic is raised on call to the following function if the calling process does not have the &lt;em&gt;ReadDeviceData&lt;/em&gt; capability (&lt;code class="ApiItem"&gt;TCapability::ECapabilityReadDeviceData&lt;/code&gt;): &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;User::MachineConfiguration()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>47</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the user issues a request to be notified of messages or the availability of space, when a request has already been issued and is still outstanding. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RMsgQueue&lt;/code&gt;, asynchronous message queues. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>48</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a message queue, and the size of the template parameter is invalid. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RMsgQueue&lt;/code&gt;, asynchronous message queues. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>49</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a message queue, and the specified number of slots is not positive. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RMsgQueue&lt;/code&gt;, asynchronous message queues. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>50</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised if an attempt is made to cancel an outstanding request to be notified of messages or the availability of space, and the cancel is being made by a thread in a different process to the one from which the request was originally made. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RMsgQueue&lt;/code&gt;, asynchronous message queues. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>51</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code&gt;RProcess::Setparameter()&lt;/code&gt; if a slot value is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>52</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code&gt;RProcess::Setparameter()&lt;/code&gt; if a slot is in use. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>53</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code&gt;RProcess::Setparameter()&lt;/code&gt; if the length of the data passed is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>54</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RCondVar::Wait()&lt;/code&gt; when the current thread does not hold the specified mutex. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>55</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a call is made to &lt;code&gt;RThread::GetDesMaxLength()&lt;/code&gt;, which is now obsolete. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>56</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised on a process which has not yet been resumed, and whose creator has died. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>57</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a session receives a message to connect to a server when the session is already connected to that server. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>58</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised during an attempt to connect to a server. As part of this process, a pointer to an instance of the &lt;code class="ApiItem"&gt;CSession2&lt;/code&gt; derived class is saved in the instance of the &lt;code class="ApiItem"&gt;CServer2&lt;/code&gt; derived class. &lt;/p&gt; &lt;p&gt; The panic is caused when the pointer to the session object is NULL. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>59</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised during an attempt to connect to a server. As part of this process, a pointer to an instance of the &lt;code class="ApiItem"&gt;CSession2&lt;/code&gt; derived class is saved in the instance of the &lt;code class="ApiItem"&gt;CServer2&lt;/code&gt; derived class. &lt;/p&gt; &lt;p&gt; This panic is caused when a pointer to the session has previously been set. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>60</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised during an attempt to connect to a server. As part of this process, a pointer to an instance of the &lt;code class="ApiItem"&gt;CSession2&lt;/code&gt; derived class is saved in the instance of the &lt;code class="ApiItem"&gt;CServer2&lt;/code&gt; derived class. &lt;/p&gt; &lt;p&gt;This panic is caused when a pointer to a session is being set, and the message is not the connect message.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/KERN.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,387 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>KERN</category_name>
+  <category_description> &lt;p&gt; These panic numbers represent errors which cause the Kernel itself to terminate. When the kernel terminates for the reasons listed here, it is said to fault rather than panic. &lt;/p&gt; &lt;p&gt; The faults themselves are raised by kernel side code. &lt;/p&gt; &lt;p&gt;Note:many of the faults listed here are raised in debug builds only. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when a system thread has panicked or terminated causing the entire system to re-boot. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when adding a code segment, a &lt;code&gt;DCodeSeg&lt;/code&gt; object, to the dependency table of another code segment. &lt;/p&gt; &lt;p&gt; The fault occurs when the number of dependent code segments added exceeds the maximum expected, suggesting some inconsistency. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DCodeSeg&lt;/code&gt; is internal to Symbian OS &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when the thread that deals with raw hardware events, as generated by the hardware drivers of a pointer device, a keyboard etc., has terminated. The thread is referred to as the thread event hook. &lt;/p&gt; &lt;p&gt; Note: &lt;/p&gt; &lt;p&gt; The most common cause is the death of the window server &amp;quot;wserv&amp;quot;. &lt;/p&gt; &lt;p&gt; Raw hardware events are represented by &lt;code class="ApiItem"&gt;TRawEvent&lt;/code&gt; objects. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when an attempt to allocate the buffer that is to contain raw hardware events (as represented by a set of &lt;code class="ApiItem"&gt;TRawEvent&lt;/code&gt; objects), cannot be allocated. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when a thread or process is panicked or terminated when one of the following is true: &lt;/p&gt; &lt;p&gt; the kernel is locked. &lt;/p&gt; &lt;p&gt; the current thread holds a fast mutex. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by internal functions, which as part of their implementation, fetch a &lt;code class="ApiItem"&gt;DObject&lt;/code&gt; based on the object type, a &lt;code&gt;TObjectType&lt;/code&gt; type. &lt;/p&gt; &lt;p&gt; The fault occurs when the value representing the object type lies outside the permitted values. &lt;/p&gt; &lt;p&gt; The fault can also be raised by &lt;code class="ApiItem"&gt;Kern::ObjectFromHandle()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Note: &lt;code class="ApiItem"&gt;TObjectType&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side session (&lt;code&gt;DSession&lt;/code&gt;) object's destructor if that session has not been detached from the kernel side server (&lt;code&gt;DServer&lt;/code&gt;) object by the time the destructor is called. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSession&lt;/code&gt; and &lt;code&gt;DServer &lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; The fault is raised by &lt;code&gt;DSession::Send()&lt;/code&gt; when an ASSERT, that expects a message to be free, fails. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSession&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side session (&lt;code&gt;DSession&lt;/code&gt;) object's destructor if there are still messages outstanding on that session by the time the destructor is called. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSession&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side server (&lt;code&gt;DServer&lt;/code&gt;) object's destructor if there are sessions still attached to that server by the time the destructor is called. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DServer&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side server (&lt;code&gt;DServer&lt;/code&gt;) object's destructor if that server still has messages that have been delivered but not yet accepted by the time the destructor is called. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side server (&lt;code&gt;DServer&lt;/code&gt;) object's &lt;code&gt;Close()&lt;/code&gt; function if that server still has messages that have been delivered but not yet accepted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side session (&lt;code&gt;DSession&lt;/code&gt;) object when the server calls its &lt;code&gt;ClosefromDisconnect()&lt;/code&gt; function to indicate completion of the disconnection, and the session object's access count is not zero. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSession&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt;This fault is raised in debug builds only.&lt;/p&gt; &lt;p&gt; This fault is raised when a message is being freed and the message appears to belong to an unknown message pool. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side session (&lt;code&gt;DSession&lt;/code&gt;) object's destructor if there are still messages outstanding on that session by the time the destructor is called. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSession&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>40</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>41</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when the DFC that is used to restart the second absolute timer queue (&lt;code&gt;TSecondQ&lt;/code&gt;) finds that the queue is not locked. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by the &lt;code class="ApiItem"&gt;DLogicalChannel&lt;/code&gt; destructor if there are outstanding messages by the time the destructor is called. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>43</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by a kernel side session (&lt;code&gt;DSession&lt;/code&gt;) object's destructor if the object's access count and the total client access count are not zero by the time the destructor is called. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSession&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when the kernel heap is being created and the specified initial size is less than or equal to the minimum value defined by &lt;code class="ApiItem"&gt;KMinHeapSize&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>47</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>48</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if creation of the machine configuration mutex fails during initialisation of the RAM drive. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>49</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if creation of a new chunk for the internal RAM drive fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>50</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if creation of the microkernel fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>51</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if the 3rd phase initialisation of the kernel fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>52</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if the startup of kernel extensions fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>53</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>54</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>55</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>56</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>57</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if initialisation of the RAM drive fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>58</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>59</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>60</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>61</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>62</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>63</panic_id>
+      <panic_description>&lt;p&gt; This fault acts as a trap if a thread calls &lt;code class="ApiItem"&gt;NKern::ThreadKill()&lt;/code&gt; to terminate itself, and the call to that &lt;code class="ApiItem"&gt;NKern::ThreadKill()&lt;/code&gt;function returns. When a thread calls on itself, the call should not return. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>64</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised if an attempt is made to set an invalid timer type (&lt;code&gt;TTimer::SetType()&lt;/code&gt;). &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;TTimer&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>65</panic_id>
+      <panic_description>&lt;p&gt; The fault is raised when updating a tick timer queue, and the delta value is greater than the maximum permitted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>66</panic_id>
+      <panic_description>&lt;p&gt;This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; The fault is raised when setting the thread (&lt;code&gt;DThread&lt;/code&gt;) priority, and the priority value is not a valid value. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DThread&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>67</panic_id>
+      <panic_description>&lt;p&gt;This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when a mutex (&lt;code&gt;DMutex&lt;/code&gt;) is signalled (&lt;code&gt;DMutex::Signal()&lt;/code&gt;) by the wrong thread. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DMutex&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>68</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when a mutex (&lt;code&gt;DMutex&lt;/code&gt;) is signalled (&lt;code&gt;DMutex::Signal()&lt;/code&gt;) and the current thread (&lt;code&gt;DThread&lt;/code&gt;) is not ready to run. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DMutex&lt;/code&gt; and &lt;code&gt;DThread&lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>69</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when a wait is called on a mutex (&lt;code&gt;DMutex::Wait()&lt;/code&gt;), and the current thread (&lt;code&gt;DThread&lt;/code&gt;) is not ready to run. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DMutex&lt;/code&gt; and &lt;code&gt;DThread&lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>70</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when a wait is called on a mutex (&lt;code&gt;DMutex::Wait()&lt;/code&gt;), and the current thread (&lt;code&gt;DThread&lt;/code&gt;) is blocked, waiting on another object. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DMutex&lt;/code&gt; and &lt;code&gt;DThread&lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>71</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; The fault is raised when a semaphore (&lt;code&gt;DSemaphore&lt;/code&gt;) is signalled and the current thread (&lt;code&gt;DThread&lt;/code&gt;) is not ready to run. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSemaphore&lt;/code&gt; and &lt;code&gt;DThread &lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>72</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; The fault is raised when a wait is called on a semaphore (&lt;code&gt;DSemaphore::Wait()&lt;/code&gt;) and the current thread (&lt;code&gt;DThread&lt;/code&gt;) is not ready to run. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSemaphore&lt;/code&gt; and &lt;code&gt;DThread &lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>73</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when a wait is called on a semaphore (&lt;code&gt;DSemaphore::Wait()&lt;/code&gt;), and the current thread (&lt;code&gt;DThread&lt;/code&gt;) is blocked, waiting on another object. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DSemaphore&lt;/code&gt; and &lt;code&gt;DThread &lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>74</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised during kernel heap manipulation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>75</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by the &lt;code&gt;DLibrary&lt;/code&gt; destructor if the number of user references on the library, which is equal to the number of handles on the library opened by the process or by any of its threads, is not zero. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DLibrary&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>76</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised by &lt;code&gt;DProcess::Release()&lt;/code&gt; if the number of dynamically loaded code segments attached to this process is not zero. &lt;/p&gt; &lt;p&gt; Note: the code segments referred to are only those corresponding to DLLs that have been explicitly loaded. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DProcess&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>77</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised during the creation of a code segment if a process data address is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>78</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when attaching a process to a code segment (&lt;code&gt;DCodeSeg::SetAttachProcess()&lt;/code&gt;). &lt;/p&gt; &lt;p&gt; The fault occurs if the code segment's &lt;code&gt;iExeCodeSeg&lt;/code&gt; field already points to some process's EXE code segment. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DCodeSeg&lt;/code&gt; and &lt;code&gt;DProcess &lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>79</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when attaching a process to a code segment (&lt;code&gt;DCodeSeg::SetAttachProcess()&lt;/code&gt;). &lt;/p&gt; &lt;p&gt; The fault occurs if a process (&lt;code&gt;DProcess&lt;/code&gt;) has already been attached to this code segment. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DCodeSeg&lt;/code&gt; and &lt;code&gt;DProcess &lt;/code&gt; are internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>80</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when an essential system thread terminates. Such a thread is flagged as being permanent (&lt;code&gt;KThreadFlagSystemPermanent&lt;/code&gt;). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>81</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised if creation of the just-in-time handler (&lt;code&gt;DJitCrashHandler&lt;/code&gt;) fails during the third phase of system initialisation (&lt;code class="ApiItem"&gt;Asic::Init3()&lt;/code&gt;). &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DJitCrashHandler&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>82</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>83</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised by &lt;code class="ApiItem"&gt;Kern::ProcessFromId()&lt;/code&gt; if the process container mutex is not held by the current thread. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>84</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised by &lt;code class="ApiItem"&gt;Kern::ThreadFromId()&lt;/code&gt; if the thread container mutex is not held by the current thread. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>85</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>86</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>87</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when an access-counted event handler callback object, &lt;code class="ApiItem"&gt;DKernelEventHandler&lt;/code&gt;, is created with a NULL &lt;code class="ApiItem"&gt;TCallback&lt;/code&gt; object. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>88</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised if attempting to wait on a mutex (&lt;code&gt;DMutex::Wait()&lt;/code&gt;) that has been created with an order value that violates the rules that prevent deadlock prevention. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>89</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when waiting on a condition variable object (&lt;code&gt;DCondVar&lt;/code&gt;) if the current thread is not ready to run. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DCondVar&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>90</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when waiting on a condition variable object (&lt;code&gt;DCondVar&lt;/code&gt;) if the current (Nanokernel) thread is not in a recognised state. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DCondVar&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>91</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This fault is raised when waiting on a condition variable object (&lt;code&gt;DCondVar&lt;/code&gt;) if the current (Symbian OS) thread is not in a recognised state. &lt;/p&gt; &lt;p&gt; Note: &lt;code&gt;DCondVar&lt;/code&gt; is internal to Symbian OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>92</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised when attempting to unblock a thread in a call to &lt;code&gt;DCondVar::UnBlockThread()&lt;/code&gt; if the thread state indicates that it is not suspended waiting on the &lt;code&gt;DCondVar&lt;/code&gt; object. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>93</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>94</panic_id>
+      <panic_description>&lt;p&gt; This fault is raised in a call to &lt;code class="ApiItem"&gt;Kern::ThreadKill()&lt;/code&gt; if an attempt is being made to kill a non-user thread that is also not the currently running thread. &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Kern-Common.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,79 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Kern-Common</category_name>
+  <category_description> &lt;p&gt;KERN-COMMON panics are raised by the kernel when various kernel-side utility functions are called with bad arguments.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if an invalid descriptor type is given to Kern::KUDesGet() or Kern::KUDesPut(). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when a length value passed to an 8-bit variant descriptor member function is invalid. It may be raised by some descriptor constructors and, specifically, by the &lt;code&gt;Replace()&lt;/code&gt; and &lt;code&gt;Set()&lt;/code&gt; descriptor member functions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when the index value passed to the 8-bit variant descriptor &lt;code&gt;Operator[]&lt;/code&gt; is out of bounds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when the position value passed to an 8-bit	variant descriptor member function is out of bounds. It may be raised by the &lt;code&gt;Left()&lt;/code&gt;, &lt;code&gt;Right()&lt;/code&gt;, &lt;code&gt;Mid()&lt;/code&gt;, &lt;code&gt;Insert()&lt;/code&gt;, &lt;code&gt;Delete()&lt;/code&gt; and &lt;code&gt;Replace()&lt;/code&gt; descriptor member functions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if the source passed to Kern::KUDesGet() is longer than the maximum length of the destination. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when expanding or contracting an	&lt;code class="ApiItem" &gt;HBufC8&lt;/code&gt; buffer using the &lt;code&gt;ReAlloc()&lt;/code&gt; or	&lt;code&gt;ReAllocL()&lt;/code&gt; descriptor member functions. Specifically, the panic occurs if the new length being specified is too small to contain the data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by the &lt;code&gt;Replace()&lt;/code&gt; member function of the 8-bit variant descriptor &lt;code class="ApiItem" &gt;TDes8&lt;/code&gt;, when the length of the source descriptor is negative or exceeds the maximum length of the target descriptor. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when 8-bit variant descriptors are constructed with negative length values. It may also be raised if the &lt;code&gt;Set()&lt;/code&gt;,	&lt;code&gt;Repeat()&lt;/code&gt; and the &lt;code&gt;Find()&lt;/code&gt; member functions are passed	negative length values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when 8-bit variant descriptors are constructed	with negative maximum length values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>88</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Compare(), Mem::CompareC() and	Mem::CompareF() when the length of the area of memory designated as the left hand area, is negative. This panic is raised in debug builds only. On the user	side this is associated with the USER category; on the kernel side this is associated with the KERN-COMMON category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>89</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Compare(), Mem::CompareC() and	Mem::CompareF() when the length of the area of memory designated as the right hand area, is negative. This panic is raised in debug builds only. On the user side this is associated with the USER category; on the kernel side this is	associated with the KERN-COMMON category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>90</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Copy() when the length of the area of memory to be copied is negative. This panic is raised in debug builds only. On	the user side this is associated with the USER category; on the kernel side	this is associated with the KERN-COMMON category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>91</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Move() when the length of the area of memory to be moved is not a multiple of 4. This panic is raised in debug builds only. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-COMMON category.  &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>92</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Move() when the address of the source for the move operation is not aligned on a 4 byte boundary. This panic is raised in debug builds only. On the user side this is associated with the USER	category; on the kernel side this is associated with the KERN-COMMON category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>93</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Move() when the address of the target for the move operation is not aligned on a 4 byte boundary. This panic is raised in debug builds only. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-COMMON category.  &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>94</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Swap() when the length of the area of memory to be swapped is negative. This panic is raised in debug builds only. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-COMMON category.  &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>95</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by Mem::Fill() and Mem::FillZ() when the length of the area of memory to be filled is negative. This panic is raised in debug builds only. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-COMMON category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>190</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when the security policy is found to be corrupt while performing a security policy check.  &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Kern-Heap.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Kern-Heap</category_name>
+  <category_description> &lt;p&gt;KERN-HEAP panics are raised by the kernel when bad parameters are passed to kernel-side heap functions. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when the size specified for the new heap is smaller than the permitted minimum; it must be at least the size of a RHeap object. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-HEAP category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised in a call to the RHeap member functions, AllocLen(), Free(), FreeZ(), ReAlloc(), ReAllocL(), Adjust() and AdjustL(), when a pointer passed to these functions does not point to a valid cell. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-HEAP category. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>213</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when attempting to set a new debug failure mode on a heap with an invalid argument. For example, if aBurst &gt; KMaxTUint6 when invoking __UHEAP_BURSTFAILNEXT when a RHeap object is used for the user heap. On the user side this is associated with the USER category; on the kernel side this is associated with the KERN-HEAP category. &lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MATX.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,27 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>MATHX</category_name>
+  <category_description> &lt;p&gt;These panics represent errors raised by member functions of the &lt;code class="ApiItem"&gt;TRealX&lt;/code&gt; class. Typically, they are the result of illegal maths operations, such as dividing by zero, or operations which result in overflow.&lt;/p&gt;&lt;p&gt;The thread causing the panic is terminated.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by &lt;code&gt;operator/=&lt;/code&gt; of a &lt;code class="ApiItem"&gt;TRealX&lt;/code&gt;, when the divisor is zero&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by &lt;code&gt;operator+=&lt;/code&gt;, &lt;code&gt;operator-=&lt;/code&gt; and &lt;code&gt;operator*=&lt;/code&gt; of a &lt;code class="ApiItem"&gt;TRealX&lt;/code&gt;, when the the result of the operation is an overflow.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by &lt;code&gt;operator+=&lt;/code&gt;, &lt;code&gt;operator-=&lt;/code&gt; and &lt;code&gt;operator*=&lt;/code&gt; of a &lt;code class="ApiItem"&gt;TRealX&lt;/code&gt;, when the the result of the operation is an underflow.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by &lt;code&gt;operator+=&lt;/code&gt;, &lt;code&gt;operator-=&lt;/code&gt; and &lt;code&gt;operator*=&lt;/code&gt; of a &lt;code class="ApiItem"&gt;TRealX&lt;/code&gt;, when the the operands are invalid.&lt;/p&gt;&lt;p&gt;For &lt;code&gt;operator+=&lt;/code&gt;, the panic is raised if one of these conditions applies:&lt;/p&gt; &lt;p&gt;the target operand is not a number,&lt;/p&gt; &lt;p&gt;the source operand is not a number,&lt;/p&gt; &lt;p&gt;the target and the source operands are infinite and have different signs.&lt;/p&gt; &lt;p&gt; For &lt;code&gt;operator-=&lt;/code&gt;, the panic is raised if one of these conditions applies:&lt;/p&gt; &lt;p&gt;the target operand is not a number, &lt;/p&gt; &lt;p&gt;the source operand is not a number,&lt;/p&gt; &lt;p&gt;the target and the source operands are infinite and have different signs&lt;/p&gt; &lt;p&gt;For &lt;code&gt;operator*=&lt;/code&gt;, the panic is raised if one of these conditions applies:&lt;/p&gt; &lt;p&gt;the target operand is not a number, &lt;/p&gt; &lt;p&gt;the source operand is not a number, &lt;/p&gt; &lt;p&gt;the target operand is infinite and the source operand is zero &lt;/p&gt; &lt;p&gt;the target operand is zero and the source operand is infinite.&lt;/p&gt; &lt;p&gt;For &lt;code&gt;operator/=&lt;/code&gt;, the panic is raised if one of these conditions applies:&lt;/p&gt; &lt;p&gt;the target operand is not a number,&lt;/p&gt; &lt;p&gt;the source operand is not a number,&lt;/p&gt; &lt;p&gt;the target operand and the source operand are both infinite,&lt;/p&gt; &lt;p&gt;the target operand and the source operand are both zero.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised by a number of operations on &lt;code class="ApiItem"&gt;TReal64&lt;/code&gt; and &lt;code class="ApiItem"&gt;TReal32&lt;/code&gt; types when they complete with an error code other than: &lt;code&gt;KErrArgument&lt;/code&gt;, &lt;code&gt;KErrDivideByZero&lt;/code&gt;, &lt;code&gt;KErrOverflow&lt;/code&gt; or &lt;code&gt;KErrUnderflow&lt;/code&gt;.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MSGS.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,339 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>MSGS</category_name>
+  <category_description> &lt;p&gt;Messaging panics of Message Server from the &lt;code&gt;msgs&lt;/code&gt; library&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Parent of context could not be found&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Specified entry was not a child of the parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;Specified entry was not a child of the parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::DeleteEntry()&lt;/code&gt; called on current context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; update index request failed as ID specified is not the same as the context ID&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>66</panic_id>
+      <panic_description>&lt;p&gt;Invalid &lt;code&gt;TMsvEntry&lt;/code&gt; provided in &lt;code&gt;CMsvServerEntry&lt;/code&gt; change function&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>94</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::EditStoreL()&lt;/code&gt; called with associated message store already open&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>95</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::ReadStoreL()&lt;/code&gt; called with associated message store already open&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>96</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; destroyed while associated message store was left open&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>97</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; object notified of unknown message store event type&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>98</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; object notified of event relating to unknown message store &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>99</panic_id>
+      <panic_description>&lt;p&gt;New &lt;code&gt;CMsvServerEntry&lt;/code&gt; context request failed as the contexts store is still open&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>109</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; context cannot be changed as it has been deleted&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>120</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; move  function failed as the destination is the current parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>146</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; request failed as no context has been set for the object&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>175</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::MoveEntry()/MoveEntryWithinService()&lt;/code&gt; failed as the destination belongs to a different service that the source&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>176</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; request called with an asynchronous move function is already being carried out on the context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>177</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::MoveEntryL()&lt;/code&gt; called with an asynchronous move function already being carried out on the context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>178</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; &lt;code&gt;::MoveEntryCompleted()&lt;/code&gt; called with no move completed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>179</panic_id>
+      <panic_description>&lt;p&gt;Target of &lt;code&gt;CMsvServerEntry::MoveEntryL()&lt;/code&gt; is the current context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>180</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; &lt;code&gt;::CancelMoveEntry()&lt;/code&gt; called with no move begun&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>181</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry&lt;/code&gt; destroyed while asynchronous move operation was in progress&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>194</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMtmDllInfo::SetHumanReadableNameL()&lt;/code&gt; called with name longer than 50 characters&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>195</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CRegisteredMtmDll&lt;/code&gt; object destroyed while MTM DLL is still in use&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>196</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CRegisteredMtmDll&lt;/code&gt; object released with no instances in use&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>197</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CRegisteredMtmDll&lt;/code&gt; load library call made while MTM DLL is still in use&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>198</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMtmDllRegistry::MtmTypeUid()&lt;/code&gt; an out-of-range index value&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>199</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMtmDllRegistry::IsInUse()&lt;/code&gt; specified a non-registered MTM&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>200</panic_id>
+      <panic_description>&lt;p&gt;MTM registered with type UID of existing MTM&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>203</panic_id>
+      <panic_description>&lt;p&gt;Request to sort entries by unknown priority&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>209</panic_id>
+      <panic_description>&lt;p&gt;Registration data for a single MTM component has incorrect value for UID2&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>210</panic_id>
+      <panic_description>&lt;p&gt;Request to sort entries by unknown MTM&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>211</panic_id>
+      <panic_description>&lt;p&gt;Error in constructed MTM list for sorting&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>223</panic_id>
+      <panic_description>&lt;p&gt;ID specified in new index entry is not the same as the context ID in &lt;code&gt;CMsvEntry&lt;/code&gt; change context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>227</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvSession&lt;/code&gt; &lt;code&gt;::RemoveObserver()&lt;/code&gt; was called for a non-registered observer&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>228</panic_id>
+      <panic_description>&lt;p&gt;Client attempted to remove an entry observer  that was not a registered observer&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>234</panic_id>
+      <panic_description>&lt;p&gt;Attempted to remove a session observer while no session observer exists&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>235</panic_id>
+      <panic_description>&lt;p&gt;No context for &lt;code&gt;CMsvEntry&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>236</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; children already sorted&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>237</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; encountered deletion of an entry not listed as a  child&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>239</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; context cannot be used, as it is being changed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>240</panic_id>
+      <panic_description>&lt;p&gt;A context &lt;code&gt;CMsvEntry&lt;/code&gt; change operation is already taking place&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>241</panic_id>
+      <panic_description>&lt;p&gt;Selection passed to &lt;code&gt;CMsvEntry::DeleteL()&lt;/code&gt; contains entries with different MTM or service properties&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>242</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry::ChildrenWithTypeL()&lt;/code&gt; was called with an unknown type&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>244</panic_id>
+      <panic_description>&lt;p&gt;Selection was specified in &lt;code&gt;CMsvEntry&lt;/code&gt; move, but MTM type or service fields are inconsistent among the entries&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>245</panic_id>
+      <panic_description>&lt;p&gt;Selection was specified in &lt;code&gt;CMsvEntry&lt;/code&gt; copy, but MTM type or service fields are inconsistent among the entries&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>249</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry::CreateL()&lt;/code&gt; called with invalid &lt;code&gt;TMsvEntry&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>250</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry::ChangeL()&lt;/code&gt; called with invalid &lt;code&gt;TMsvEntry&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>251</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; object destroyed with associated message store left open&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>258</panic_id>
+      <panic_description>&lt;p&gt;Empty selection passed to &lt;code&gt;CMsvEntry::DeleteL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>259</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry::SetEntryL()&lt;/code&gt; called with associated message store left open&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>260</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry::MoveL()&lt;/code&gt; called with move target set to the present parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>261</panic_id>
+      <panic_description>&lt;p&gt;Client attempts to open already open message store through &lt;code&gt;CMsvEntry&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>262</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvSession&lt;/code&gt; object destroyed with entries still on the session cleanup stack&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>265</panic_id>
+      <panic_description>&lt;p&gt;Entry passed to&lt;code&gt; CMsvEntry::DeleteL()&lt;/code&gt; has different owning service than parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>266</panic_id>
+      <panic_description>&lt;p&gt;Entry passed to&lt;code&gt; CMsvEntry::MoveL()&lt;/code&gt; has different owning service than parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>267</panic_id>
+      <panic_description>&lt;p&gt;Entry passed to&lt;code&gt; CMsvEntry::CopyL()&lt;/code&gt; has different owning service than parent&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>268</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; notified of new child with different owning service than context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>269</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; notified of entry deletion with different owning service than context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>270</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; notified of message store modification with different owning service than context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>271</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvEntry&lt;/code&gt; notified of entry modification with different owning service than context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>273</panic_id>
+      <panic_description>&lt;p&gt;The Message Server has completed an asynchronous request with an error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>275</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CBaseMtm::StoreBodyL()&lt;/code&gt; or &lt;code&gt;CBaseMtm::RestoreBodyL()&lt;/code&gt; called with no context set&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>279</panic_id>
+      <panic_description>&lt;p&gt;Entry ID of &lt;code&gt;CBaseMtm&lt;/code&gt; context changed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>280</panic_id>
+      <panic_description>&lt;p&gt;MTM data was not found in MTM data file on installation&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>281</panic_id>
+      <panic_description>&lt;p&gt;Copy or move already in progress for &lt;code&gt;CMsvServerEntry&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>282</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::Cancel()&lt;/code&gt; called when no asynchronous operation is in progress&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>283</panic_id>
+      <panic_description>&lt;p&gt;Error reading file system&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>284</panic_id>
+      <panic_description>&lt;p&gt;Unknown error in  &lt;code&gt;CMsvServerEntry::HasDirectory()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>285</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvOperation::FinalProgress()&lt;/code&gt; was called when the operation was not complete&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>286</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvOperation::FinalProgress()&lt;/code&gt; called an operation's &lt;code&gt;ProgressL()&lt;/code&gt; function that left&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>287</panic_id>
+      <panic_description>&lt;p&gt;Error reading file system&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>294</panic_id>
+      <panic_description>&lt;p&gt;The synchronous version of &lt;code&gt;CMsvEntry::CreateL()&lt;/code&gt;, &lt;code&gt;CMsvEntry::ChangeL()&lt;/code&gt;, or &lt;code&gt;CMsvEntry::DeleteL()&lt;/code&gt; was called for a non-local context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>296</panic_id>
+      <panic_description>&lt;p&gt;A &lt;code&gt;CMsvServerEntry&lt;/code&gt; delete function was called with an empty selection&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>299</panic_id>
+      <panic_description>&lt;p&gt;Target of a &lt;code&gt;CMsvServerEntry::CopyEntriesL()&lt;/code&gt; call was the current context&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>300</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CMsvServerEntry::CopyEntriesL()&lt;/code&gt; called when a copy is already in progress&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MSGS_Client.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,59 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>MSGS Client</category_name>
+  <category_description> &lt;p&gt;Client messaging panics from the &lt;code&gt;msgs&lt;/code&gt; library&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Unsupported asynchronous request made to Message Server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Session event notification request repeated by client&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Failed to write data into asynchronous call descriptor to be passed back to client&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Failed to read data from asynchronous call descriptor passed from client&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Client requested Message Server to create or modify an entry with invalid data&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Message Server session ended while a message store is still locked&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Message Server session ended with outstanding requests&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Client requested Message Server to release message store that was not locked&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Client requested Message Server to delete empty entry selection&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Client requested Message Server to pop remote entry from session cleanup stack&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Progress information exceeded maximum 256-character length&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Client requested Message Server to move an empty selection of entries&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Client requested Message Server to copy an empty selection of entries&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MTMUI_Data.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>MTMUI Data</category_name>
+  <category_description> &lt;p&gt;Messaging panic from the &lt;code class="filename"&gt;mtur&lt;/code&gt; library relating to UI Data MTM operations&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Inconsistent start/end and zoom parameters passed to &lt;code&gt;CBaseMtmUiData::CreateBitmapsL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Multiple location flags set in &lt;code&gt;TMtmUiFunction::aFlags&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/MTUI.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,19 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>MTUI</category_name>
+  <category_description> &lt;p&gt;Messaging panics from the &lt;code class="filename"&gt;mtur&lt;/code&gt; library relating to User Interface MTM operations&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Empty selection passed to &lt;code&gt;CBaseMtmUi&lt;/code&gt; move, copy, or delete function&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Target of &lt;code&gt;CBaseMtmUi&lt;/code&gt; move or copy function was not service or folder&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CBaseMtmUi::DeleteServiceL()&lt;/code&gt; called for non-service entry&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/PLAT_emulator.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>PLAT (emulator)</category_name>
+  <category_description> &lt;p&gt;These panics represent errors which are detected by emulator   specific code. Typically, they are caused by passing bad or contradictory parameters to functions.&lt;/p&gt; &lt;p&gt;The thread causing the panic is terminated.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised when a failure occurs running any DLL attach process calls which have been registered during startup.&lt;/p&gt;&lt;/td&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised when a failure occurs running any DLL attach process calls which have been registered during startup.&lt;/p&gt;&lt;/td&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when registering a thread callback.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if a failure occurs in loading &lt;code class="filename"&gt;EKERN.EXE&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if any of the &lt;code&gt;_E32Initialise()&lt;/code&gt;, &lt;code&gt;_E32DeInitialise()&lt;/code&gt; or &lt;code&gt;_E32ExitProcess()&lt;/code&gt; Kernel functions cannot be found.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if a leave occurs and there is no trap harness.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/PLAT_generic_Kernel.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,135 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>PLAT (generic Kernel)</category_name>
+  <category_description> &lt;p&gt;These panics represent represent errors which are detected by  generic Kernel code. Typically, they are caused by passing bad or contradictory parameters to functions.&lt;/p&gt;&lt;p&gt;The thread causing the panic is terminated.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised at system startup time if the secondary process cannot be created.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when a semaphore, a &lt;code&gt;DPlatSemaphore&lt;/code&gt;, is created and a negative count value is passed to the member function creating it.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when a semaphore, a &lt;code&gt;DPlatSemaphore&lt;/code&gt;, is signalled and the count value, if specified, is negative.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when fetching the home address of a specified address relative to the thread's process and the specified address is invalid.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised when an illegal attempt is made to kill a thread, a &lt;code&gt;DPlatThread&lt;/code&gt;; the thread may already be dead or its status may be unknown.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised when an illegal attempt is made to kill a thread, a &lt;code&gt;DPlatThread&lt;/code&gt;; the thread may already be dead or its status may be unknown.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised when an illegal attempt is made to kill a thread, a &lt;code&gt;DPlatThread&lt;/code&gt;; the thread may already be dead or its status may be unknown.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when an attempt is made to resume the first thread in a process, a &lt;code&gt;DPlatProcess&lt;/code&gt;, when that process has not been loaded.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when looking up a function by ordinal in a library, a &lt;code&gt;DPlatLibrary&lt;/code&gt;. The panic occurs when the specified ordinal number is zero or negative.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised because of a failure in the initialization of the Hardware Abstraction Layer (the HAL); specifically, the startup reason is not recognized.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised because of a failure in the initialization of the Hardware Abstraction Layer (the HAL); specifically, the keyboard could not be initialized.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised because of a failure in the initialization of the Hardware Abstraction Layer (the HAL); specifically, the x-y input device could not be initialized.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised by failures during system startup.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised by failures during system startup.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised by failures during system startup.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when a failure occurs in dispatching an exception.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>64</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when an attempt is made to create a hardware chunk when that chunk has already been created.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>80</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when a Kernel fixed heap is being created and the specified maximum length is negative.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>81</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when the Kernel attempts to mutate a fixed heap into a chunk heap and the specified minimum length is different from the current minimum length.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>83</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised in debug builds only.&lt;/p&gt;&lt;p&gt;This panic is raised by the millisecond timer when a call back has already been queued.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>87</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised in debug builds only.&lt;/p&gt; &lt;p&gt;This panic is raised during debugging when handling an exception via &lt;code&gt;Debug::HandleException&lt;/code&gt; and a write operation to the remote thread running the monitor program fails.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>88</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when setting up the context for a newly created thread and the specified thread type, which defines the context, is not recognized.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>90</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if there is no screen-switch-on handler.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>91</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised if a system thread has been panicked.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>92</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised when an attempt is made to move a fixed address chunk.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>93</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>94</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>95</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>96</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>97</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>98</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>99</panic_id>
+      <panic_description>&lt;p&gt;These panics are raised during initialization of the MMU if creation of various components fails; for example, the domain allocator or the page table linear allocator.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Protocol_panic.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,91 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Protocol panic</category_name>
+  <category_description> &lt;p&gt;The Sockets Server gives a &amp;quot;Protocol panic&amp;quot; when it finds incorrect protocol module behaviour.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;An unknown request completed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Protocol completed a connect request unexpectedly&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Protocol completed a connect with data request unexpectedly&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Protocol completed a shutdown with data request unexpectedly&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CProtocolFamilyBase::Remove()&lt;/code&gt; failed&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Protocol made incorrect call to the server through a &lt;code&gt;MSocketNotify&lt;/code&gt; function&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Protocol made call to &lt;code&gt;MSocketNotify::NewDataL()&lt;/code&gt; with bad &lt;code&gt;aCount&lt;/code&gt; value&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Protocol made call to &lt;code&gt;MSocketNotify::DisConnect()&lt;/code&gt; with connectionless socket&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Server could not get expected received data from protocol&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Protocol has returned an invalid &lt;code&gt;TServerProtocolDesc&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented &lt;code&gt;CProtocolBase::Error()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented descriptor-overload of &lt;code&gt;CProtocolBase::Process()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented &lt;code&gt;RMBufChain&lt;/code&gt;-overload &lt;code&gt;CProtocolBase::Process()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented descriptor-overload of &lt;code&gt;CProtocolBase::Send()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented &lt;code&gt;RMBufChain&lt;/code&gt;-overload &lt;code&gt;CProtocolBase::Send()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented &lt;code&gt;CProtocolBase::BindToL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Protocol has not implemented &lt;code&gt;CProtocolBase::BindL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Protocol made call to &lt;code&gt;MSocketNotify::ConnectComplete()&lt;/code&gt; on non-listening socket&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;Protocol made call to &lt;code&gt;MSocketNotify::ConnectComplete()&lt;/code&gt; when server has accepted maximum number of sockets&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Send.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,59 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Send</category_name>
+  <category_description> &lt;p&gt;Messaging panics from &lt;code&gt;CSendAs&lt;/code&gt;&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Out of range index passed to &lt;code&gt;CSendAs::SetMtmL()&lt;/code&gt; or CSendAs::SetService()&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Internal discrepancy in MTM array&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Asked to create zero-length MTM array&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CSendAs::SetMtmL()&lt;/code&gt; called when a message has already been created&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Asked to create zero-length service array&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;MTM not chosen when &lt;code&gt;CSendAs::CreateMessageL()&lt;/code&gt; called&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Message not saved when &lt;code&gt;CSendAs::AbandonMessage()&lt;/code&gt; called&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Message not created when &lt;code&gt;CSendAs::SaveMessageL()&lt;/code&gt; called&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CSendAs::RecipientList()&lt;/code&gt;, &lt;code&gt;CSendAs::RemoveRecipient()&lt;/code&gt;, or &lt;code&gt;CSendAs::AddRecipientL()&lt;/code&gt; called without message being saved or created&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CSendAs::SetSubjectL()&lt;/code&gt; called without message being saved or created&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CSendAs::SetBodyL()&lt;/code&gt; or &lt;code&gt;CSendAs::ValidateMessage()&lt;/code&gt; called without message being saved or created&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CSendAs&lt;/code&gt; active without asynchronous rendering being called&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;&lt;code&gt;CSendAs&lt;/code&gt; cancelled without asynchronous rendering being called&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/TCPIP.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,103 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>TCPIP</category_name>
+  <category_description> &lt;p&gt;Panic of TCP/IP protocol family module&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Function is not supported&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Server requested received data that protocol does not have&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Impossible binding request, such as bind to itself&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Internal NULL buffer error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Protocol closedown error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Open requested on already open socket&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Internal timer error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Invalid netmask address supplied&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Internal NULL pointer error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;ICMP protocol could not be loaded&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Internal protocol closedown error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;Internal error in urgent data handling &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;Internal error in DNS record handling&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;Internal error in DNS record handling&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;Internal error in DNS record handling&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Telephony.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Telephony</category_name>
+  <category_description> &lt;p&gt;Third party telephony panic:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;A client has attempted to re-post an asynchronous request before the original request has completed&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/UI_Graphics.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,39 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>UI Graphics</category_name>
+  <category_description> &lt;p&gt;UI Graphics Utilities panics:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;A resource null pointer.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Resource specified has an invalid number type.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;A null pointer.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;The logical color was not found.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;The logical color already exists.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Invalid color range specified.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;The application color array was not found.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Null TLS (thread-local storage).&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/USER-EXEC.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>USER-EXEC</category_name>
+  <category_description> &lt;p&gt;No Description&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;In Symbian OS 8.1b, 9.0, 9.1 and subsequent versions:&lt;/p&gt; &lt;p&gt;this panic is raised when an exception is raised on the current thread by a call to &lt;code class="ApiItem"&gt;User::RaiseException()&lt;/code&gt;, and the thread has no exception handler to handle the specified exception.&lt;/p&gt; &lt;p&gt;In Symbian OS up to 8.1a:&lt;/p&gt; &lt;p&gt;this panic is raised when the current thread calls &lt;code class="ApiItem"&gt;RThread::RaiseException()&lt;/code&gt; on itself, and the thread has no exception handler to handle the specified exception.&lt;/p&gt; &lt;p&gt;Note that the &lt;code class="ApiItem"&gt;RThread::RaiseException()&lt;/code&gt; API is deprecated in Symbian OS 8.1b, 9.0, 9.1 and subsequent versions, and should not be used.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/USER.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,787 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>USER</category_name>
+  <category_description> &lt;p&gt;Panics with this category are raised on the user side by member functions of T type and R type classes which reside in &lt;code class="filename"&gt;euser.dll&lt;/code&gt;.&lt;/p&gt; &lt;p&gt;They are also raised by some static member functions of the &lt;code&gt;User&lt;/code&gt;, &lt;code&gt;UserHeap&lt;/code&gt; and &lt;code&gt;RHeap&lt;/code&gt; classes. Typically, they are caused by passing bad or contradictory values to class constructors or member functions.&lt;/p&gt; &lt;p&gt; The thread causing the panic is terminated. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a thread calls &lt;code class="ApiItem"&gt;User&lt;/code&gt;&lt;code&gt;::Invariant()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Typically, &lt;code&gt;User::Invariant()&lt;/code&gt; is called when a test for a class invariant fails, i.e. when a test which checks that the internal data of an object is self-consistent, fails. &lt;/p&gt; &lt;p&gt; Check the design and implementation of your class. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a &lt;code class="ApiItem"&gt;TDateTime&lt;/code&gt; object is constructed with an invalid date or time field. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Ptr()&lt;/code&gt; member function of a 16-bit variant descriptor if the descriptor is invalid. &lt;/p&gt; &lt;p&gt; Check for ways in which the descriptor may have become corrupted, including an unsafe use of cast. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a length value passed to a 16-bit variant descriptor member function is invalid. It may be raised by some descriptor constructors and, specifically, by the &lt;code&gt;Replace()&lt;/code&gt; and &lt;code&gt;Set()&lt;/code&gt; descriptor member functions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the index value passed to the 16-bit variant descriptor &lt;code&gt;Operator[]&lt;/code&gt; is out of bounds &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the position value passed to a 16-bit variant descriptor member function is out of bounds. It may be raised by the &lt;code&gt;Left()&lt;/code&gt;, &lt;code&gt;Right()&lt;/code&gt;, &lt;code&gt;Mid()&lt;/code&gt;, &lt;code&gt;Insert()&lt;/code&gt;, &lt;code&gt;Delete()&lt;/code&gt; and &lt;code&gt;Replace()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;TDes16&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when any operation that moves or copies data to a 16-bit variant descriptor, causes the length of that descriptor to exceed its maximum length. &lt;/p&gt; &lt;p&gt; It may be caused by any of the copying, appending or formatting member functions and, specifically, by the &lt;code&gt;Insert()&lt;/code&gt;, &lt;code&gt;Replace()&lt;/code&gt;, &lt;code&gt;Fill()&lt;/code&gt;, &lt;code&gt;Fillz()&lt;/code&gt; and &lt;code&gt;ZeroTerminate()&lt;/code&gt; descriptor member functions. It can also be caused by the &lt;code&gt;SetLength()&lt;/code&gt; function. See &lt;code class="ApiItem"&gt;TDes16&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the format string passed to the 16-bit variant descriptor member functions &lt;code&gt;Format()&lt;/code&gt; and &lt;code&gt;AppendFormat()&lt;/code&gt; has invalid syntax. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;TDes16::Format()&lt;/code&gt; and &lt;code class="ApiItem"&gt;TDes16::AppendFormat()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by the &lt;code&gt;AppendFormatList()&lt;/code&gt; member function of the 16-bit variant descriptor &lt;code class="ApiItem"&gt;TDes16&lt;/code&gt;, if an invalid variable list is passed to the function when the format is &lt;code&gt;%S&lt;/code&gt; or &lt;code&gt;%s&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when expanding or contracting an &lt;code class="ApiItem"&gt;HBufC16&lt;/code&gt; buffer using the &lt;code&gt;ReAlloc()&lt;/code&gt; or &lt;code&gt;ReAllocL()&lt;/code&gt; descriptor member functions. Specifically, the panic occurs if the new length being specified is too small to contain the data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Replace()&lt;/code&gt; member function of the 16-bit variant descriptor &lt;code class="ApiItem"&gt;TDes16&lt;/code&gt; when the length of the source descriptor is negative or exceeds the maximum length of the target descriptor. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when 16-bit variant descriptors are constructed with negative length values. It may also be raised if the &lt;code&gt;Set()&lt;/code&gt;, &lt;code&gt;Repeat()&lt;/code&gt; and the &lt;code&gt;Find()&lt;/code&gt; member functions are passed negative length values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when 16-bit variant descriptors are constructed with negative maximum length values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Ptr()&lt;/code&gt; member function of an 8 bit variant descriptor if the descriptor is invalid. Check for ways in which the descriptor may have become corrupted, including an unsafe use of cast. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a length value passed to an 8 bit variant descriptor member function is invalid. It may be raised by some descriptor constructors and, specifically, by the &lt;code&gt;Replace()&lt;/code&gt; and &lt;code&gt;Set()&lt;/code&gt; descriptor member functions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the index value passed to the 8 bit variant descriptor &lt;code&gt;Operator[]&lt;/code&gt; is out of bounds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the position value passed to an 8 bit variant descriptor member function is out of bounds. It may be raised by the &lt;code&gt;Left()&lt;/code&gt;, &lt;code&gt;Right()&lt;/code&gt;, &lt;code&gt;Mid() &lt;/code&gt;, &lt;code&gt;Insert()&lt;/code&gt;, &lt;code&gt;Delete()&lt;/code&gt; and &lt;code&gt;Replace() &lt;/code&gt; descriptor member functions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when any operation that moves or copies data to an 8 bit variant descriptor, causes the length of that descriptor to exceed its maximum length. &lt;/p&gt; &lt;p&gt; It may be caused by any of the copying, appending or formatting member functions and, specifically, by the &lt;code&gt;Insert()&lt;/code&gt;, &lt;code&gt;Replace()&lt;/code&gt;, &lt;code&gt;Fill()&lt;/code&gt;, &lt;code&gt;Fillz()&lt;/code&gt; and &lt;code&gt;ZeroTerminate()&lt;/code&gt; descriptor member functions. It can also be caused by the &lt;code&gt;SetLength()&lt;/code&gt; function. See &lt;code class="ApiItem"&gt;TDes8&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the format string passed to the 8 bit variant descriptor member functions &lt;code&gt;Format()&lt;/code&gt; and &lt;code&gt;AppendFormat()&lt;/code&gt; has invalid syntax. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;TDes8::Format()&lt;/code&gt; and &lt;code class="ApiItem"&gt;TDes8::AppendFormat()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by the &lt;code&gt;AppendFormatList()&lt;/code&gt; member function of the 8-bit variant descriptor &lt;code class="ApiItem"&gt;TDes8&lt;/code&gt;, if an invalid variable list is passed to the function when the format is &lt;code&gt;%S&lt;/code&gt; or &lt;code&gt;%s&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when expanding or contracting an &lt;code class="ApiItem"&gt;HBufC8&lt;/code&gt; buffer using the &lt;code&gt;ReAlloc()&lt;/code&gt; or &lt;code&gt;ReAllocL()&lt;/code&gt; descriptor member functions. Specifically, the panic occurs if the new length being specified is too small to contain the data. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Replace()&lt;/code&gt; member function of the 8-bit variant descriptor &lt;code class="ApiItem"&gt;TDes8&lt;/code&gt;, when the length of the source descriptor is negative or exceeds the maximum length of the target descriptor. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when 8-bit variant descriptors are constructed with negative length values. It may also be raised if the &lt;code&gt;Set()&lt;/code&gt;, &lt;code&gt;Repeat()&lt;/code&gt; and the &lt;code&gt;Find()&lt;/code&gt; member functions are passed negative length values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when 8-bit variant descriptors are constructed with negative maximum length values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by the &lt;code&gt;Pos()&lt;/code&gt; member function of a &lt;code&gt;TRawEvent&lt;/code&gt;. The function returns the mouse/pen position encapsulated by the &lt;code&gt;TRawEvent&lt;/code&gt;. The panic is raised when the event is not a mouse/pen type event. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by the &lt;code&gt;ScanCode()&lt;/code&gt; member function of a &lt;code&gt;TRawEvent&lt;/code&gt;. The function returns the scan code associated with a key down or key up event encapsulated by the &lt;code&gt;TRawEvent&lt;/code&gt;. The panic is raised when the event is not a key down or key up event. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by the &lt;code&gt;Modifiers()&lt;/code&gt; member function of a &lt;code&gt;TRawEvent&lt;/code&gt;. The function returns the modifers associated with a modifiers update event encapsulated by the &lt;code&gt;TRawEvent&lt;/code&gt;. The panic is raised when the event is not a modifier update event. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the default &lt;code&gt;At()&lt;/code&gt; virtual member function of &lt;code class="ApiItem"&gt;TKey&lt;/code&gt;. The function is intended to be overridden by a derived class. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the default &lt;code&gt;Swap()&lt;/code&gt; virtual member function of &lt;code class="ApiItem"&gt;TSwap&lt;/code&gt;. The function is intended to be overridden by a derived class. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;operator[]&lt;/code&gt; of a &lt;code class="ApiItem"&gt;TUidType&lt;/code&gt; when the index value passed to the operator is either negative or is greater than or equal to the constant &lt;code&gt;KMaxCheckedUid&lt;/code&gt; defined in &lt;code class="filename"&gt;e32const.h&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Set(TDesC8&amp;amp;)&lt;/code&gt; member function of &lt;code&gt;TCheckedUid&lt;/code&gt; when the length of the descriptor passed to the function is not equal to the size of a &lt;code&gt;TCheckedUid&lt;/code&gt; object. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>41</panic_id>
+      <panic_description>&lt;p&gt; This panic is caused by the &lt;code class="ApiItem"&gt;UserHeap::ChunkHeap()&lt;/code&gt; static function when the value defining the minimum length of the heap is greater than the value defining the maximum length to which the heap can grow. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by a number of &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; member functions, &lt;code&gt;AllocLen()&lt;/code&gt;, &lt;code&gt;Free()&lt;/code&gt;, &lt;code&gt;FreeZ()&lt;/code&gt;, &lt;code&gt;ReAlloc()&lt;/code&gt;, &lt;code&gt;ReAllocL()&lt;/code&gt;, &lt;code&gt;Adjust()&lt;/code&gt; and &lt;code&gt;AdjustL()&lt;/code&gt; when a pointer passed to these functions does not point to a valid cell. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>43</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Adjust()&lt;/code&gt; and &lt;code&gt;AdjustL()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused when a heap cell is being shrunk and the amount by which the cell is being shrunk is less than the current length of the cell. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Free()&lt;/code&gt; and &lt;code&gt;FreeZ()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused when the cell being freed overlaps the next cell on the free list (i.e. the first cell on the free list with an address higher than the one being freed). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Free()&lt;/code&gt; and &lt;code&gt;FreeZ()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused when the cell being freed overlaps the previous cell on the free list (i.e. the last cell on the free list with an address lower than the one being freed). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;ReAlloc()&lt;/code&gt; and &lt;code&gt;ReAllocL()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused when the cell being reallocated overlaps the next cell on the free list (i.e. the first cell on the free list with an address higher than the one being reallocated). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>47</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Alloc()&lt;/code&gt;, &lt;code&gt;AllocL()&lt;/code&gt; or &lt;code&gt;AllocLC()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused by trying to allocate a cell from a heap, specifying an unsigned size value which is greater than or equal to the value of &lt;code&gt;KMaxTInt/2&lt;/code&gt;. The constant &lt;code&gt;KMaxTInt&lt;/code&gt; is defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; This panic may also be raised by the heap walker when it finds a bad allocated heap cell size. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>48</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the heap walker when it finds a bad allocated heap cell address. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>49</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the heap walker when it finds a bad free heap cell address. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>51</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by the &lt;code&gt;__DbgMarkEnd()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; in debug builds when there has been no corresponding call to the &lt;code&gt;__DbgMarkStart()&lt;/code&gt; member function; it is also caused when there are more calls to &lt;code&gt;__DbgMarkEnd()&lt;/code&gt; than to &lt;code&gt;__DbgMarkStart()&lt;/code&gt;. These functions are part of the debug assistance provided by the &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; class. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>52</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Adjust()&lt;/code&gt; and &lt;code&gt;AdjustL()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused when the offset from the start of the cell being stretched or shrunk is a negative value. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>54</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;ReAlloc()&lt;/code&gt; and &lt;code&gt;ReAllocL()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt;. It is caused when the new size for the cell being reallocated is a negative value. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>55</panic_id>
+      <panic_description>&lt;p&gt; This panic is caused by the &lt;code class="ApiItem"&gt;UserHeap&lt;/code&gt;&lt;code&gt;::ChunkHeap()&lt;/code&gt; static function when the value defining the minimum length of the heap is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>56</panic_id>
+      <panic_description>&lt;p&gt; This panic is caused by the &lt;code class="ApiItem"&gt;UserHeap&lt;/code&gt;&lt;code&gt;::ChunkHeap()&lt;/code&gt; static function when the value defining the maximum length to which the heap can grow, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>57</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when closing a shared heap using the &lt;code&gt;Close()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; and the access count is zero or negative. A zero or negative access count suggests that an attempt is being made to close the heap too many times. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>58</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when opening a heap for shared access using the &lt;code&gt;Open()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; and the heap type is not &lt;code&gt;EChunkNormal&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>59</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;UnGet()&lt;/code&gt; member function of the 8-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex8&lt;/code&gt;, if the character position is already at the start of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>60</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Inc()&lt;/code&gt; member function of the 8-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex8&lt;/code&gt;, if the resulting character position lies before the start of the string or after the end of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>61</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;SkipAndMark()&lt;/code&gt; member function of the 8-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex8&lt;/code&gt;, if the resulting character position lies before the start of the string or after the end of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>63</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;ValidateMark()&lt;/code&gt; member function of the 8-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex8&lt;/code&gt;, if the position of the extraction mark lies before the start of the string or after the end of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>64</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;UnGet()&lt;/code&gt; member function of the 16-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex16&lt;/code&gt;, if the character position is already at the start of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>65</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Inc()&lt;/code&gt; member function of the 16-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex16&lt;/code&gt;, if the resulting character position lies before the start of the string or after the end of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>66</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;SkipAndMark()&lt;/code&gt; member function of the 16-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex16&lt;/code&gt;, if the resulting character position lies before the start of the string or after the end of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>68</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;ValidateMark()&lt;/code&gt; member function of the 16-bit variant lexical analyzer, &lt;code class="ApiItem"&gt;TLex16&lt;/code&gt;, if the position of the extraction mark lies before the start of the string or after the end of the string. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>69</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code class="ApiItem"&gt;TDateSuffix&lt;/code&gt; constructor or its &lt;code&gt;Set()&lt;/code&gt; member function when the suffix index specified is negative or is greater than or equal to the value &lt;code&gt;KMaxSuffixes&lt;/code&gt; defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;. The index is used to access a locale dependent table of suffix characters which can be appended to the dates of the month (e.g. the characters &amp;quot;st&amp;quot; for 1st, &amp;quot;nd&amp;quot; for 2nd, &amp;quot;st&amp;quot; for 31st). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>70</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Introduced in 6.0:&lt;/em&gt; This panic is raised when attempting to complete a client/server request and the &lt;code&gt;RMessagePtr&lt;/code&gt; is null. &lt;/p&gt; &lt;p&gt; &lt;em&gt;Withdrawn in 6.0:&lt;/em&gt; This panic is raised by the &lt;code&gt;SetRetry()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RSessionBase&lt;/code&gt;, the client interface for communication with a server, when the specified delay time between resending a message to the server is either negative or a value greater than KMaxTint (defined in e32std.h). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>71</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Withdrawn in 6.0:&lt;/em&gt; This panic is raised by the &lt;code&gt;SetRetry()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RSessionBase&lt;/code&gt;, the client interface for communication with a server, when the specified number of attempts to resend a message to the server is either negative or a value greater than &lt;code&gt;KMaxTint&lt;/code&gt; (defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>72</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Withdrawn in 6.0:&lt;/em&gt; This panic is raised by the &lt;code&gt;SetRetry()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RSessionBase&lt;/code&gt;, the client interface for communication with a server, when the specified operation code identifying the required service is either negative or a value greater than &lt;code&gt;KMaxTint&lt;/code&gt; (defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;). &lt;/p&gt; &lt;p&gt; &lt;em&gt;Introduced in 6.0:&lt;/em&gt; This panic is raised by the &lt;code&gt;Send()&lt;/code&gt; and &lt;code&gt;SendReceive()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;RSessionBase&lt;/code&gt;, the client interface for communication with a server, when the specified operation code identifying the required service is either negative or a value greater than &lt;code&gt;KMaxTint&lt;/code&gt; (defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>73</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Receive()&lt;/code&gt; member function of &lt;code&gt;RServer&lt;/code&gt;, the handle to the server, when the attempt to receive a message for the server, synchronously, fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>75</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of a singly linked list header, a &lt;code class="ApiItem"&gt;TSglQue&lt;/code&gt; or by the &lt;code&gt;SetOffset()&lt;/code&gt; member function when the specified offset is not 4 byte aligned, i.e. when it is not divisible by 4. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>76</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when attempting to remove an object from a singly linked list, using the &lt;code&gt;Remove()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;TSglQue&lt;/code&gt;, when that object is not in the list. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>78</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of a doubly linked list header, a &lt;code class="ApiItem"&gt;TDblQue&lt;/code&gt; or by the &lt;code&gt;SetOffset()&lt;/code&gt; member function, when the specified offset is not 4 byte aligned, i.e. when it is not divisible by 4. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>79</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by a call to either the &lt;code&gt;First()&lt;/code&gt; and &lt;code&gt;Last()&lt;/code&gt; member functions of a doubly linked list, a &lt;code class="ApiItem"&gt;TDblQue&lt;/code&gt;, which return pointers to the first and last element in the list respectively; the panic occurs when the list is empty. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>80</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised by the post increment operator, &lt;code&gt;operator++&lt;/code&gt;, the post decrement operator, &lt;code&gt;operator&amp;mdash; &lt;/code&gt; and the return current element operator, &lt;code&gt;operator T*&lt;/code&gt;, of the doubly linked list iterator, a &lt;code class="ApiItem"&gt;TDblQueIter&lt;/code&gt;; the panic occurs when the element returned by these operators is not in the list. Typically, this is caused by the removal of the element from the list prior to calling these operators. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>81</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the get rectangle operator, &lt;code&gt;operator[]&lt;/code&gt;, of a clipping region, derived from the abstract base class &lt;code class="ApiItem"&gt;TRegion&lt;/code&gt;. The panic occurs when the index, which refers to the specific rectangle within the region, is greater than or equal to the number of rectangles contained within the region (as returned by the &lt;code&gt;Count()&lt;/code&gt; member function). &lt;/p&gt; &lt;p&gt; The index must be strictly less than the number of contained rectangles. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>82</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; It is raised when sorting the rectangles within a clipping region, derived from the abstract base class &lt;code class="ApiItem"&gt;TRegion&lt;/code&gt;, using the &lt;code&gt;Sort()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;TRegion&lt;/code&gt;. The panic occurs when the region is invalid. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>83</panic_id>
+      <panic_description>&lt;p&gt; This panic occurs when the Kernel sends a message to the Kernel server and this completes with an error, i.e. an error code which is not &lt;code&gt;KErrNone&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>84</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Panic()&lt;/code&gt; member function of &lt;code&gt;RTest&lt;/code&gt;, the test class. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>85</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;CheckConsoleCreated()&lt;/code&gt; member functions of &lt;code&gt;RTest&lt;/code&gt; and &lt;code&gt;RTestJ&lt;/code&gt;, the test classes, when the creation of a console, as derived from a &lt;code&gt;CConsoleBase&lt;/code&gt;, fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>86</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the static function &lt;code class="ApiItem"&gt;User::After()&lt;/code&gt; which is used to suspend the current thread until the specified time interval, in microseconds, has expired. The panic occurs when the specified time interval is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>87</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a relative timer event is requested from an asynchronous timer service, an &lt;code class="ApiItem"&gt;RTimer&lt;/code&gt;, using the &lt;code&gt;After()&lt;/code&gt; member function. The panic occurs when the requested time interval is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>88</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Compare()&lt;/code&gt;, &lt;code class="ApiItem"&gt;Mem::CompareC()&lt;/code&gt; and &lt;code class="ApiItem"&gt;Mem::CompareF()&lt;/code&gt;, which compare two areas of memory. The panic occurs when the length of the area of memory designated as the left hand area, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>89</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Compare()&lt;/code&gt;, &lt;code class="ApiItem"&gt;Mem::CompareC()&lt;/code&gt; and &lt;code class="ApiItem"&gt;Mem::CompareF()&lt;/code&gt;, which compare two areas of memory. The panic occurs when the length of the area of memory designated as the right hand area, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>90</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Copy()&lt;/code&gt;, which copies the content of one area of memory to another. The panic occurs when the length of the area of memory to be copied, is negative &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>91</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Move()&lt;/code&gt;, which moves the content of one area of memory to another. The panic occurs when the length of the area of memory to be moved, is not a multiple of 4. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>92</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Move()&lt;/code&gt;, which moves the content of one area of memory to another. The panic occurs when the address of the source for the move operation, is not aligned on a 4 byte boundary. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>93</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Move()&lt;/code&gt;, which moves the content of one area of memory to another. The panic occurs when the address of the target for the move operation, is not aligned on a 4 byte boundary. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>94</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Swap()&lt;/code&gt;, which swaps the content of one area of memory with another. The panic occurs when the length of the area of memory to be swapped, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>95</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;Mem::Fill()&lt;/code&gt; and &lt;code class="ApiItem"&gt;Mem::FillZ()&lt;/code&gt;, both of which fill an area of memory. The panic occurs when the length of the area of memory to be filled, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>96</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;User::QuickSort()&lt;/code&gt;, when the value for the number of records to be sorted, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>97</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;User::BinarySearch()&lt;/code&gt;, when the value for the number of records taking part in the search, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>98</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of the base key class, &lt;code class="ApiItem"&gt;TKey&lt;/code&gt;. It occurs when the offset value passed to the constructor is negative.As &lt;code&gt;TKey&lt;/code&gt; is an abstract class, i.e. objects of type &lt;code&gt;TKey&lt;/code&gt; are not intended to be explicitly constructed, look at the offset value passed to the constructors of derived classes such as &lt;code class="ApiItem"&gt;TKeyArrayFix&lt;/code&gt;, &lt;code class="ApiItem"&gt;TKeyArrayVar&lt;/code&gt; and &lt;code class="ApiItem"&gt;TKeyArrayPak&lt;/code&gt; for the cause of the panic. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>99</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a local or global chunk is created using the &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; member functions: &lt;code&gt;CreateLocal()&lt;/code&gt;, &lt;code&gt;CreateGlobal()&lt;/code&gt;, &lt;code&gt;CreateDoubleEndedLocal()&lt;/code&gt; and &lt;code&gt;CreateDoubleEndedGlobal()&lt;/code&gt;. It occurs when the value for the maximum size to which this chunk can be adjusted, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>100</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a local or global chunk is created using the &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; member functions: &lt;code&gt;CreateLocal()&lt;/code&gt; and &lt;code&gt;CreateGlobal()&lt;/code&gt;. It occurs when the value for the number of bytes to be committed to this chunk on creation, is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>101</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a local or global chunk is created using the &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; member functions: &lt;code&gt;CreateLocal()&lt;/code&gt; and &lt;code&gt;CreateGlobal()&lt;/code&gt;. It occurs when the value for the number of bytes to be committed to this chunk on creation is greater than the value for the maximum size to which this chunk can be adjusted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>102</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when changing the number of bytes committed to a chunk by calling the &lt;code&gt;Adjust()&lt;/code&gt; member function of &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt;. The panic occurs when the value passed to the function is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>103</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Withdrawn in 6.0:&lt;/em&gt; The panic is raised by the &lt;code&gt;CreateSession()&lt;/code&gt; member function of the abstract session base class &lt;code&gt;RSessionBase&lt;/code&gt;. &lt;code&gt;CreateSession()&lt;/code&gt; is a protected function and can only be called by member functions of derived classes. The panic occurs when the delay time interval passed to this function is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>104</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;Withdrawn in 6.0:&lt;/em&gt; The panic is raised by the &lt;code&gt;CreateSession()&lt;/code&gt; member function of the abstract session base class &lt;code&gt;RSessionBase&lt;/code&gt;. &lt;code&gt;CreateSession()&lt;/code&gt; is a protected function and can only be called by member functions of derived classes. The panic occurs when the retry count passed to this function is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>105</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a local or global semaphore is created using the &lt;code class="ApiItem"&gt;RSemaphore&lt;/code&gt; member functions: &lt;code&gt;CreateLocal()&lt;/code&gt; and &lt;code&gt;CreateGlobal()&lt;/code&gt;. It occurs when the value for the initial semaphore count is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>106</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a semaphore, an &lt;code class="ApiItem"&gt;RSemaphore&lt;/code&gt;, is signaled using the &lt;code&gt;Signal(TInt aCount)&lt;/code&gt; member function and the count value is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>107</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a critical section, an &lt;code class="ApiItem"&gt;RCriticalSection&lt;/code&gt;, is signalled using the &lt;code&gt;Signal()&lt;/code&gt; member function. The panic occurs when the &lt;code&gt;Signal()&lt;/code&gt; is not matched by an earlier call to &lt;code&gt;Wait() &lt;/code&gt; and suggests that this is a stray signal. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>108</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a thread using the &lt;code&gt;Create()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;RThread&lt;/code&gt;. The panic only occurs for those variants of &lt;code&gt;Create()&lt;/code&gt; which take a pointer to an &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; as one of the arguments and is caused if the heap referred to here is neither of type &lt;code class="ApiItem"&gt;RHeapBase::EChunkNormal&lt;/code&gt; nor of type &lt;code class="ApiItem"&gt;RHeapBase::EChunkStack&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>109</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a thread using the &lt;code&gt;Create()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;RThread&lt;/code&gt;. The panic occurs when the value of the stack size passed to these functions is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>110</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a thread using the &lt;code&gt;Create()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;RThread&lt;/code&gt;. The panic is only raised by those variants of &lt;code&gt;Create()&lt;/code&gt; which create a new heap for the new thread. The panic occurs if the minimum heap size specified is less than &lt;code&gt;KMinHeapSize&lt;/code&gt; , defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>111</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a thread using the &lt;code&gt;Create()&lt;/code&gt; member functions of &lt;code class="ApiItem"&gt;RThread&lt;/code&gt;. The panic is only raised by those variants of &lt;code&gt;Create()&lt;/code&gt; which create a new heap for the new thread. The panic occurs if the minimum heap size specified is greater than the maximum size to which the heap can grow &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>112</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Alloc()&lt;/code&gt; and &lt;code&gt;AllocL()&lt;/code&gt; member functions of class &lt;code&gt;RRef&lt;/code&gt; when the size value passed is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>113</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by: &lt;/p&gt; &lt;p&gt; the constructor of a time representation object, a &lt;code class="ApiItem"&gt;TTime&lt;/code&gt;, which takes a text string, when the format of that text string is incorrect or represents an invalid date/time. &lt;/p&gt; &lt;p&gt; the &lt;code&gt;Parse()&lt;/code&gt; member function of a time representation object, a &lt;code class="ApiItem"&gt;TTime&lt;/code&gt;, if the century offset value is either negative or is greater than or equal to 100. &lt;/p&gt; &lt;p&gt; the &lt;code class="ApiItem"&gt;Time::DaysInMonth()&lt;/code&gt; function, if an invalid month value is passed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>114</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This panic is raised by member functions of a &lt;code&gt;TBusLocalDrive&lt;/code&gt; when no connection has been made to a local drive. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>115</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when attempting to connect to a local drive using the &lt;code&gt;Connect()&lt;/code&gt; member function of &lt;code&gt;TBusLocalDrive&lt;/code&gt; and the specified drive number is out of range, i.e. the drive number is negative or is greater than or equal to &lt;code&gt;KMaxLocalDrives&lt;/code&gt;, defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>116</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;Lookup()&lt;/code&gt; member function of an &lt;code class="ApiItem"&gt;RLibrary&lt;/code&gt;, a handle to a dynamically loaded DLL, when the ordinal number of the required DLL function, is zero or negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>119</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when setting a new currency symbol using the &lt;code class="ApiItem"&gt;User::SetCurrencySymbol()&lt;/code&gt; function. The panic occurs when the length of the descriptor containing the new symbol is greater than &lt;code&gt;KMaxCurrencySymbol&lt;/code&gt;, defined in &lt;code class="filename"&gt;e32std.h&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>120</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;CreateDoubleEndedLocal()&lt;/code&gt; and &lt;code&gt;CreateDoubleEndedGlobal()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the lower address of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>121</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;CreateDoubleEndedLocal()&lt;/code&gt; and &lt;code&gt;CreateDoubleEndedGlobal()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the upper address of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>122</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;CreateDoubleEndedLocal()&lt;/code&gt; and &lt;code&gt;CreateDoubleEndedGlobal()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the upper address of the committed region is lower than the lower address of the committed region. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>123</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;CreateDoubleEndedLocal()&lt;/code&gt; and &lt;code&gt;CreateDoubleEndedGlobal()&lt;/code&gt; member functions of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the upper address of the committed region is lower than the maximum size to which this chunk can be adjusted. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>124</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;AdjustDoubleEnded()&lt;/code&gt; member function of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the lower address of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>125</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;AdjustDoubleEnded()&lt;/code&gt; member function of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the upper address of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>126</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the &lt;code&gt;AdjustDoubleEnded()&lt;/code&gt; member function of an &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; when the upper address of the committed region is lower than the lower address of the committed region. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>127</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when constructing an array of pointers, an &lt;code class="ApiItem"&gt;RPointerArray&lt;/code&gt;, and specifying a granularity value which is one of the following: &lt;/p&gt; &lt;p&gt; zero &lt;/p&gt; &lt;p&gt; negative &lt;/p&gt; &lt;p&gt; greater than &lt;code&gt;0x10000000&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>128</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when constructing an array of fixed length objects, an &lt;code class="ApiItem"&gt;RArray&lt;/code&gt;, and specifying a key offset value which is one of the following: &lt;/p&gt; &lt;p&gt; negative &lt;/p&gt; &lt;p&gt; not a multiple of 4 &lt;/p&gt; &lt;p&gt; greater than or equal to the size of the array elements. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>129</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when constructing an array of fixed length objects, an &lt;code class="ApiItem"&gt;RArray&lt;/code&gt;, and the length of the array elements is one of the following: &lt;/p&gt; &lt;p&gt; zero &lt;/p&gt; &lt;p&gt; negative &lt;/p&gt; &lt;p&gt; greater than 640. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>130</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an index value passed to a member function of a &lt;code class="ApiItem"&gt;RArray&lt;/code&gt; or a &lt;code class="ApiItem"&gt;RPointerArray&lt;/code&gt; identifying an array element, is out of bounds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>131</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the value identifying the insertion position in a call to &lt;code class="ApiItem"&gt;RArray::Insert()&lt;/code&gt; or &lt;code class="ApiItem"&gt;RPointerArray::Insert()&lt;/code&gt; is either negative or greater than the number of elements in the array. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>132</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an index value passed to &lt;code class="ApiItem"&gt;Mem::CollationMethodByIndex()&lt;/code&gt; or &lt;code class="ApiItem"&gt;Mem::CollationMethodId()&lt;/code&gt; is out of bounds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>133</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an index value passed to &lt;code class="ApiItem"&gt;TFixedArray::At()&lt;/code&gt; or &lt;code class="ApiItem"&gt;TFixedArray::operator[]&lt;/code&gt; is out of bounds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>134</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>135</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>136</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>137</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. The panic is caused when a parameter is too big. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>138</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists when an index value for the parameters is outside its permitted range. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>139</panic_id>
+      <panic_description>&lt;p&gt; &lt;em&gt;This panic is raised in debug builds only.&lt;/em&gt; &lt;/p&gt; &lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists when an index value for the parameters is outside its permitted range. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>140</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>141</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>142</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>143</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>144</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>145</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>146</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>147</panic_id>
+      <panic_description>&lt;/p&gt; &lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>148</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>149</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>150</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>151</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>152</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>153</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>154</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>155</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>156</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the variants of the &lt;code class="ApiItem"&gt;RArray&lt;/code&gt; or &lt;code class="ApiItem"&gt;RPointerArray&lt;/code&gt; constructors that take a value that defines the number of entries for the array. The panic is caused when this number is not positive. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>157</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RChunk::Commit()&lt;/code&gt; when the value of the offset of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>158</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RChunk::Commit()&lt;/code&gt; when the size of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>159</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RChunk::Allocate()&lt;/code&gt; when the size of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>160</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RChunk::Decommit()&lt;/code&gt; when the value of the offset of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>161</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by &lt;code class="ApiItem"&gt;RChunk::Decommit()&lt;/code&gt; when the size of the committed region is negative. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>162</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an invalid chunk type is passed to the internal member function &lt;code&gt;RChunk::Create()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>163</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a global chunk is being created and no name has been specified. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>164</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when creating a 'normal' chunk, and the offset of the bottom of the new committed region from the base of the chunk's reserved region is not zero. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RChunk&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>165</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the internal function &lt;code&gt;RLibrary::Init()&lt;/code&gt; when the function that constructs static data following a DLL load, leaves. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;RLibrary&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>166</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally, if a call to the static data destructors, following closure of a library handle, leaves. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>167</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;RAllocator::Close()&lt;/code&gt; when the number of handles is found to be greater than the maximum allowed, i.e. &lt;code class="ApiItem"&gt;RAllocator::EMaxHandles&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>168</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the internal &lt;code class="ApiItem"&gt;RHeap&lt;/code&gt; constructor when the offset value is invalid, i.e. is negative or not appropriate for the pagesize. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>169</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Symbian internal function &lt;code&gt;RHeap::Reduce()&lt;/code&gt; on failure. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>170</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Symbian internal function &lt;code&gt;RHeap::Reset()&lt;/code&gt; on failure. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>171</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Symbian internal function &lt;code&gt;RHeap::WalkCheckCell()&lt;/code&gt; if it detects a free cell with an invalid size. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>172</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Symbian internal function &lt;code&gt;RHeap::Initialise()&lt;/code&gt; when an alignment value is invalid, i.e is either less than the size of a &lt;code&gt;TAny*&lt;/code&gt; type, or is not a power of 2 (i.e. 2, 4, 8, 16 etc). &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>173</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>174</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised if any unimplemented pure virtual function is called. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>175</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a &lt;code class="ApiItem"&gt;User::Leave()&lt;/code&gt; is called and there is no &lt;code class="ApiItem"&gt;TRAP&lt;/code&gt; frame. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>176</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when a mathematical function fails with an unrecognized exception, i.e. one that is none of: &lt;code class="ApiItem"&gt;KErrArgument&lt;/code&gt;, &lt;code class="ApiItem"&gt;KErrDivideByZero&lt;/code&gt;, &lt;code class="ApiItem"&gt;KErrOverflow&lt;/code&gt; or &lt;code class="ApiItem"&gt;KErrUnderflow&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>177</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the Symbian internal function &lt;code&gt;RHeap::WalkCheckCell()&lt;/code&gt; on a bad cell type. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>178</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when descriptors convert integers into text, and an invalid radix is passed, i.e. a value that is not one of the &lt;code class="ApiItem"&gt;TRadix&lt;/code&gt; enum values. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>179</panic_id>
+      <panic_description>&lt;p&gt;This panic is raised in debug builds only. &lt;/p&gt; &lt;p&gt; This panic is raised when converting and appending numbers in descriptors, and buffers are not aligned on even addresses. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>180</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>181</panic_id>
+      <panic_description>&lt;p&gt; This is raised by a Symbian internal component related to Huffman encoding/decoding. Refer to Symbian &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>182</panic_id>
+      <panic_description>&lt;p&gt; This is raised by a Symbian internal component related to Huffman encoding/decoding. Refer to Symbian &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>183</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by member functions of the internal classes &lt;code&gt;RArrayBase&lt;/code&gt; and &lt;code&gt;RPointerArrayBase&lt;/code&gt;; specifically: &lt;/p&gt; &lt;p&gt; &lt;code&gt; RArrayBase::BinarySearch() &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;RArrayBase::BinarySearchUnsigned() &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;RArrayBase::BinarySearchSigned() &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;RPointerArrayBase::BinarySearch() &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;RPointerArrayBase::BinarySearchUnsigned() &lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code&gt;RPointerArrayBase::BinarySearchSigned() &lt;/code&gt; &lt;/p&gt; &lt;p&gt; when the find mode passed to these functions is not recognised. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>184</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised on a call to &lt;code class="ApiItem"&gt;RNotifier::Notify()&lt;/code&gt; when the length of one or more of the descriptors containing the displayable text is bigger than the maximum value that a &lt;code class="ApiItem"&gt;TUint16&lt;/code&gt; can hold. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>185</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the following functions when the month or day value is outside its permitted range of values: &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TMonthName::Set()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TMonthNameAbb::Set()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;TDayName::Set()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt; TDayNameAbb::Set()&lt;/code&gt; &lt;/p&gt; &lt;p&gt; See also: &lt;code class="ApiItem"&gt;TMonthName&lt;/code&gt;, &lt;code class="ApiItem"&gt;TMonthNameAbb&lt;/code&gt;, &lt;code class="ApiItem"&gt;TDayName&lt;/code&gt; and &lt;code class="ApiItem"&gt;TDayNameAbb&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>186</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised internally by the descriptor formatting functions during the handling of the variable parameter lists. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>187</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;TDes8::Expand()&lt;/code&gt;, if either the length, or the maximum length, or the pointer to the data is not an even number. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>188</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;TDes8::Collapse()&lt;/code&gt;, if either the length, or the maximum length, or the pointer to the data is not an even number. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>189</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in calls to the &lt;code class="ApiItem"&gt;TSecurityPolicy&lt;/code&gt; constructors, if the specified capability is found to be invalid. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;TCapability&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>190</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to &lt;code class="ApiItem"&gt;TSecurityPolicy::CheckPolicy()&lt;/code&gt;, if the security policy is found to be corrupt. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;TSecurityPolicy&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>191</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised in a call to: &lt;/p&gt; &lt;p class="CodeBlock"&gt;&lt;code&gt;TSecurityPolicy::TSecurityPolicy(TSecPolicyType&amp;nbsp;aType)&lt;/code&gt;&lt;/p&gt; &lt;p&gt; if &lt;code&gt;aType&lt;/code&gt; is neither &lt;code&gt;ETypePass&lt;/code&gt; nor &lt;code&gt;ETypeFail&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; See &lt;code class="ApiItem"&gt;TSecurityPolicy&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>192</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when constructing an &lt;code class="ApiItem"&gt;RPointerArray&lt;/code&gt; or an &lt;code class="ApiItem"&gt;RArray&lt;/code&gt; if the specified minimum growth step is less than or equal to zero or is greater than 65535. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>193</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when constructing an &lt;code class="ApiItem"&gt;RPointerArray&lt;/code&gt; or an &lt;code class="ApiItem"&gt;RArray&lt;/code&gt; if the specified exponential growth factor is less than or equal to 1 or is greater than or equal to 128. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>194</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised if code inside an __ASSERT_ALWAYS_NO_LEAVE harness leaves. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>195</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the attempt to grow a cell on the heap fails. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>196</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when an attempt is made to install a Win32 SE handler that is not on the stack. &lt;/p&gt; &lt;p&gt; See the internal class &lt;code&gt;TWin32SEHTrap&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>197</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised when the caller of an API does not have the right capabilities to call that API. You need to consult the documentation for the specific API for the capabilities needed to call it. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>198</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt; if a NULL function pointer is passed in as the hash function. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>199</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt; if a NULL function pointer is passed in as the identity relation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>200</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt; if a negative element size is specified. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>201</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the constructor of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt; if the specified key offset is inconsistent with the specified element size. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>202</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;VerifyReform()&lt;/code&gt; of the internal class &lt;code&gt;RHashTableBase &lt;/code&gt; if a deleted entry still remains after a hash table reform. This panic should never occur as it indicates an error in the hash table implementation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>203</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;ConsistencyCheck()&lt;/code&gt; of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt;. It indicates an error in the hash table implementation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>204</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;ConsistencyCheck()&lt;/code&gt; of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt;. It indicates an error in the hash table implementation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>205</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;ConsistencyCheck()&lt;/code&gt; of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt;. It indicates an error in the hash table implementation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>206</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;ConsistencyCheck()&lt;/code&gt; of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt;. It indicates an error in the hash table implementation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>207</panic_id>
+      <panic_description>&lt;/p&gt; &lt;p&gt; This panic is raised by the member function &lt;code&gt;ConsistencyCheck()&lt;/code&gt; of the internal class &lt;code&gt;RHashTableBase&lt;/code&gt;. It indicates an error in the hash table implementation. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>208</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;Next()&lt;/code&gt; of the internal class &lt;code&gt;THashTableIterBase&lt;/code&gt; if, while attempting to step a hash table iterator to the next entry, the iterator is found to point to an invalid table entry. This will typically occur if elements have been removed from the hash table without resetting the iterator. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>209</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised by the member function &lt;code&gt;Current()&lt;/code&gt; of the internal class &lt;code&gt;THashTableIterBase&lt;/code&gt; if, while interrogating the current position of a hash table iterator, the iterator is found to point to an invalid table entry. This will typically occur if elements have been added to or removed from the hash table without resetting the iterator. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>210</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised if an invalid argument is passed to the &lt;code&gt;Reserve()&lt;/code&gt; function on any of the hash table classes derived from the internal class &lt;code&gt;RHashTableBase&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>211</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised if the Win32 SE handler chain has been corrupted. &lt;/p&gt; &lt;p&gt; See the internal class &lt;code&gt;TWin32SEHTrap&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>212</panic_id>
+      <panic_description>&lt;p&gt; This panic is raised if a negative valued argument is passed to the &lt;code&gt;Reserve()&lt;/code&gt; member function of the &lt;code class="ApiItem"&gt;RArray&lt;/code&gt; or &lt;code class="ApiItem"&gt;RPointerArray&lt;/code&gt; classes . &lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/Versit-Parser.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>Versit-Parser</category_name>
+  <category_description> &lt;p&gt;Versit panics:&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;The parser has tried to access a token, but no current token exists.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;An object of class &lt;code&gt;CVersitUnicodeUtils&lt;/code&gt; (which converts between narrow and wide descriptors) has not been allocated by the parser.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;An attempt was made to construct a &lt;code&gt;CParserProperty&lt;/code&gt; without specifying a property value.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;A week day array, &lt;code&gt;CWeekDayArray&lt;/code&gt;, contains an invalid value, (not between &lt;code&gt;EMonday&lt;/code&gt; and &lt;code&gt;ESunday&lt;/code&gt; inclusive).&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;The number of a week within a month is invalid.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;The repeat type for a recurrence rule property value is not one of the values specified in &lt;code&gt;CVersitRecurrence::TType&lt;/code&gt;.&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/ViewSrv.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,47 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>ViewSrv</category_name>
+  <category_description> &lt;p&gt; The table below lists the View Server panics.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; View Server creation failed. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; A bad client call was made - i.e. the opcode sent by the client was one not defined in &lt;code&gt;TVwsRequestOpcode&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; The view that View Server is trying to remove has not been found. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; An application tried to add a view with an application UID other than its own. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; The custom message sent along with a view activation request was not copied across to the server properly. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to remove the currently active view. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; A client has requested a view event even though it still has an outstanding request open. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; The most common panic. A view has taken too long to complete its implementation of &lt;code&gt;ViewActivatedL()&lt;/code&gt; and must, therefore, be panicked to stop it from blocking the entire OS. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to activate a view that does not support the current screenmode. &lt;/p&gt;	   </panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; - A view has taken too long to complete its implementation of ViewDeactivated() and must, therefore, be panicked to stop it from blocking the entire OS. &lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/W32.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<panic_category>
+  <category_name>W32</category_name>
+  <category_description>W32 is a synchronous interface onto the window server that user code can include, link to and invoke instead of sending low level client-server requests to the window server. Some errors can be detected before they are sent to the server and are raised as panics from W32. Code in the W32 synchronous interface runs in the client’s thread, so it raises panics in situations it can understand on the current thread via User::Panic(). These panics have a category of W32. &lt;br&gt;&lt;br&gt;To minimise strain on the system, W32 can cache several requests in order in a buffer and send them as a group to the server. This means that a panic might not be caused by a bug in the last client-side code to run, but by an earlier line that does not get its request serviced until later. To debug such a panic it is often useful to turn on auto flushing.&lt;br&gt;&lt;br&gt;Window server synchronous interface (W32) panics are raised by the synchronous interface onto the window server when it realises a client has attempted an action the interface can’t legally pass on to the window server thread. Because the interface is synchronous, the current thread is panicked, and the request is never sent to the window server.&lt;br&gt;&lt;br&gt;These panics are defined in the enumeration TW32Panic in w32cmd.h.&lt;br&gt;&lt;br&gt;Note that some panics are raised in debug builds only.</category_description>
+  <panics>
+	<panic>
+    	<panic_id>0</panic_id>
+    	<panic_description>An attempt was made to reconnect to the window server using RWsSession::Connect(). It is only possible to reconnect if the current session has been closed.</panic_description>
+  	</panic>
+	<panic>
+		<panic_id>1</panic_id>
+	    <panic_description>Not used.</panic_description>
+	</panic>
+	<panic>
+    	<panic_id>2</panic_id>
+    	<panic_description>Not used.</panic_description>
+  	</panic>
+	<panic>
+		<panic_id>3</panic_id>
+		<panic_description>Not used.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>4</panic_id>
+		<panic_description>Raised by CWindowGc::MapColors() when its aNumPairs argument has a value greater than 16.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>5</panic_id>
+		<panic_description>Data is too long to fit into the window server's client side buffer, see Client-side buffer.&lt;br&gt;&lt;br&gt;Introduced in v6.0.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>6</panic_id>
+		<panic_description>CWsScreenDevice::SetCustomPalette() was called with a NULL pointer.&lt;br&gt;&lt;br&gt;Introduced in v7.0.</panic_description>
+	</panic>
+	<panic>
+    	<panic_id>7</panic_id>
+    	<panic_description>CWsScreenDevice::SetPalette() failed, but no error code could be returned. Debug builds for the emulator only.&lt;br&gt;&lt;br&gt;Introduced in v7.0.</panic_description>
+	</panic>
+	<panic>
+    	<panic_id>8</panic_id>
+    	<panic_description>A direct screen access function was called out of turn.&lt;br&gt;&lt;br&gt;Introduced in v7.0.</panic_description>
+	</panic>
+	<panic>
+		<panic_id>9</panic_id>
+		<panic_description>An attempt was made to pass an invalid region to the window server. Debug builds only.&lt;br&gt;&lt;br&gt;Introduced in v7.0s.</panic_description>
+	</panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/WSERV.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,259 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>WSERV</category_name>
+  <category_description> &lt;p&gt; The window server runs continuously and brings the machine down if it crashes, so it cannot panic its own thread when it detects an error in one of its client&amp;#8217;s requests. Instead it panics the client&amp;#8217;s thread using &lt;code class="ApiItem"&gt;CSession::Panic()&lt;/code&gt;. These panics have a category of WSERV. &lt;/p&gt; &lt;p&gt; These panics are defined in the enumeration &lt;code&gt;TClientPanic&lt;/code&gt; in &lt;code class="filename"&gt;w32cmd.h&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Note that some panics are raised in debug builds only. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt; Out of range opcode. &lt;/p&gt; &lt;p&gt; The client has sent a request opcode that wasn&amp;#8217;t recognised. Each server-side object can only handle some of the requests defined in the window server, and if the request isn&amp;#8217;t recognised, this panic is raised. &lt;/p&gt; &lt;p&gt; Clients would normally only get this is if they bypass the normal Window Server API. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt; Invalid command buffer. &lt;/p&gt; &lt;p&gt; A corrupt buffer of requests was discovered by the server. This is raised when the buffer itself is noticeably broken, and not when the commands in it are wrong. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt; Invalid handle. &lt;/p&gt; &lt;p&gt; The server couldn&amp;#8217;t find the target object for a request in the handle index. This can be raised when a command is sent to the handle for a window that has been closed, for example. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt; A handle whose value was NULL was detected. &lt;/p&gt; &lt;p&gt; For example, when Constructing one of the subclasses of the client-side &lt;code class="ApiItem"&gt;RWindowBase&lt;/code&gt; with a client handle argument of NULL. &lt;/p&gt; &lt;p&gt; On the server side, a &lt;code&gt;TWsClCmdCreateWindow&lt;/code&gt; with a client handle field of &lt;code&gt;NULL&lt;/code&gt; passed as argument to &lt;code&gt;CWsClientWindow::ConstructL()&lt;/code&gt; will raise this error. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt; A single drawing command was too big to fit into the client-side buffer. &lt;/p&gt; &lt;p&gt; The size of the buffer may be increased. See &lt;code class="ApiItem"&gt;RWsSession::SetBufferSizeL()&lt;/code&gt; and &lt;code class="ApiItem"&gt;RWsSession::SetMaxBufferSizeL()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt; Invalid window handle. &lt;/p&gt; &lt;p&gt; A handle which should have referred to a window of a particular type referred to a window of another type, or the object index didn&amp;#8217;t recognise the handle. &lt;/p&gt; &lt;p&gt; On the server side, this panic is ultimately raised by &lt;code&gt;CWsClient::HandleToWindow()&lt;/code&gt; and &lt;code&gt;CWsClient::HandleToClientWindow()&lt;/code&gt; during handle conversions. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt; Invalid bitmap handle. &lt;/p&gt; &lt;p&gt; A corrupt bitmap handle was encountered. This is a common panic uncovered when a bitmap handle refers to nothing, or to a server-side object that isn&amp;#8217;t a bitmap. &lt;/p&gt; &lt;p&gt; Also: &lt;/p&gt; &lt;p&gt; In response to an &lt;code&gt;EWsGcOpUseBrushPattern&lt;/code&gt; request if the bitmap parameter couldn&amp;#8217;t be used. On the client side, &lt;code class="ApiItem"&gt;CWindowGc::UseBrushPattern()&lt;/code&gt; sends this request. &lt;/p&gt; &lt;p&gt; In response to an &lt;code&gt;EWsSpriteOpAppendMember&lt;/code&gt; request when the bitmaps for the sprite member can't be created on the server side. On the client side, &lt;code class="ApiItem"&gt;RWsSpriteBase::AppendMember()&lt;/code&gt; sends this request. &lt;/p&gt; &lt;p&gt; Any failed attempt to duplicate a supplied bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt; Event read already outstanding. &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RWsSession::EventReady()&lt;/code&gt;, &lt;code class="ApiItem"&gt;RWsSession::RedrawReady()&lt;/code&gt;, or &lt;code class="ApiItem"&gt;RWsSession::PriorityKeyReady()&lt;/code&gt; was called again when an event read was already outstanding, i.e.. when an event was waiting to be delivered by the window server. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt; Attempted to use a non-active graphics context. &lt;/p&gt; &lt;p&gt; A drawing request was sent to a graphics context when the context was not active. &lt;/p&gt; &lt;p&gt; On the server side, this panic is raised by &lt;code&gt;CWsGc::CommandL()&lt;/code&gt; on all requests received when the context isn&amp;#8217;t active except &lt;code&gt;EWsGcOpActivate&lt;/code&gt;, &lt;code&gt;EWsGcOpDeactivate&lt;/code&gt;, &lt;code&gt;EWsGcOpFree&lt;/code&gt;, and &lt;code&gt;EWsGcOpTestInvariant&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt; Attempted to activate an already active graphics context. &lt;/p&gt; &lt;p&gt; On the server side, this is raised by &lt;code&gt;CWsGc::Activate()&lt;/code&gt; as a response to a &lt;code&gt;EWsGcOpActivate &lt;/code&gt; request. &lt;/p&gt; &lt;p&gt; The request is sent by the client-side method &lt;code class="ApiItem"&gt;CWindowGc::Activate()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt; Window already active. &lt;/p&gt; &lt;p&gt; An attempt was made to reactivate an active window. The request is sent by the client-side method &lt;code class="ApiItem"&gt;RWindowBase::Activate()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; On the server side, this panic is raised by &lt;code&gt;CWsClientWindow::Activate()&lt;/code&gt; in response to an &lt;code&gt;EWsWinOpActivate&lt;/code&gt; request. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt; Already inside a begin/end redraw pair. &lt;/p&gt; &lt;p&gt; A begin-redraw window request was made when the window had already begun redrawing. Begin-redraw messages are paired with end-redraw messages, and ordering is important. Invoking &lt;code class="ApiItem"&gt;RWindow::BeginRedraw()&lt;/code&gt;, then &lt;code&gt;RWindow::BeginRedraw()&lt;/code&gt; again before the corresponding &lt;code class="ApiItem"&gt;RWindow::EndRedraw()&lt;/code&gt; raises this panic. &lt;/p&gt; &lt;p&gt; On the server side, this panic is raised if an &lt;code&gt;EWsWinOpBeginRedraw&lt;/code&gt; request is sent twice before the closing &lt;code&gt;EWsWinOpEndRedraw &lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt; Invalid font handle. &lt;/p&gt; &lt;p&gt; On the client-side is raised if &lt;code class="ApiItem"&gt;CWindowGc::UseFont()&lt;/code&gt; is called with an invalid font handle. &lt;/p&gt; &lt;p&gt; On the server side, &lt;code&gt;CWsGc::SetGcAttribute()&lt;/code&gt; raises this error in response to an &lt;code&gt;EWsGcOpUseFont&lt;/code&gt; request. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt; Printing with no active font. &lt;/p&gt; &lt;p&gt; A command to draw text to a window was sent to a graphics context when no font was set. Any of the overloads of &lt;code class="ApiItem"&gt;CWindowGc::DrawTextVertical()&lt;/code&gt; or &lt;code class="ApiItem"&gt;CWindowGc::DrawText()&lt;/code&gt; might cause the panic to be raised; the font should be set using &lt;code class="ApiItem"&gt;CWindowGc::UseFont()&lt;/code&gt; first. &lt;/p&gt; &lt;p&gt; On the server side, this panic is raised by &lt;code&gt;CWsGc::DoDrawCommand()&lt;/code&gt; in response to any of the requests to display text defined in &lt;code&gt;TWsGcOpcodes&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt; Attempted to set an invalid text cursor type, see &lt;code class="ApiItem"&gt;RWindowGroup::SetTextCursor()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Valid types are defined in the &lt;code class="ApiItem"&gt;TTextCursor&lt;/code&gt; struct. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt; A drawing command was sent to a graphics context active on a group window. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt; Attempted to use a patterned brush when the pattern bitmap has not yet been set&amp;#0160;&amp;#8212;  &lt;code&gt;UseBrushPattern()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt; Attempted to do a client destroy function on an illegal handle. &lt;/p&gt; &lt;p&gt; A client tried to destroy or cancel a server-side object by its handle on an unrecognised handle, or on a handle of the wrong type for the operation. &lt;/p&gt; &lt;p&gt; This panic may be caused by the &lt;code class="ApiItem"&gt;RWindowGroup::CancelCaptureKeyUpAndDowns()&lt;/code&gt; or &lt;code class="ApiItem"&gt;RWindowGroup::CancelCaptureKey()&lt;/code&gt; methods. These correspond to the &lt;code&gt;EWsWinOpCancelCaptureKeyUpsAndDowns&lt;/code&gt; and &lt;code&gt;EWsWinOpCancelCaptureKey&lt;/code&gt; server requests. In this case, the panic means that there is no such capture key object in existence in the target window group. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt; Panic from the Anim DLL. &lt;/p&gt; &lt;p&gt; An animation DLL tried either changing its default or next timing interval when its timing mode was set to &lt;code&gt;ESyncNone&lt;/code&gt;, or activating a graphics context when the context was already activated. &lt;/p&gt; &lt;p&gt; There are a variety of other reasons why this panic might be raised, all which are Anim DLL related. The Animation writer can also cause functions raise this panic. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt; Invalid Anim object handle. &lt;/p&gt; &lt;p&gt; A null animation handle was detected in the server on receipt of an animation command, possibly because the relevant animation has been deleted. This panic may be raised by a subclass of &lt;code class="ApiItem"&gt;RAnim&lt;/code&gt; calling &lt;code class="ApiItem"&gt;RAnim::Command()&lt;/code&gt; or &lt;code class="ApiItem"&gt;RAnim::CommandReply()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; On the server side, the &lt;code&gt;EWsAnimDllOpCommandReply&lt;/code&gt; and &lt;code&gt;EWsAnimDllOpCommand&lt;/code&gt; requests can raise this panic in &lt;code&gt;CWsAnimDll &lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt; Leave from a non-leaving animation function. &lt;/p&gt; &lt;p&gt; Code in an animated DLL called by the server invoked &lt;code&gt;Leave()&lt;/code&gt;. Animated DLL code is provided by the client and run by the server, so unhandled leaves are trapped and the notification is passed on as a client panic. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>28</panic_id>
+      <panic_description>&lt;p&gt; Inconsistent polygon or polyline data was supplied. For example when restarting without finishing an old polygon. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>29</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to set a negative shadow height. &lt;/p&gt; &lt;p&gt; This panic is caused by a call to &lt;code class="ApiItem"&gt;RWindowBase::SetShadowHeight()&lt;/code&gt; with a negative argument. &lt;/p&gt; &lt;p&gt; On the server side, &lt;code&gt;CWsClientWindow::CommandL()&lt;/code&gt; raises the panic in response to an invalid &lt;code&gt;EWsWinOpSetShadowHeight&lt;/code&gt; request. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>30</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>31</panic_id>
+      <panic_description>&lt;p&gt; The client tried to construct a window with an invalid redraw type. The valid redraw types defined in the enumeration &lt;code&gt;TWinTypes&lt;/code&gt; of &lt;code class="filename"&gt;w32cmd.h &lt;/code&gt;. &lt;/p&gt; &lt;p&gt; On the server side, this panic is raised by &lt;code&gt;CWsClientWindow::ConstructL()&lt;/code&gt; in response to an initialisation message containing an invalid redraw type. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>32</panic_id>
+      <panic_description>&lt;p&gt; A server-side redraw region is almost certainly corrupt. &lt;/p&gt; &lt;p&gt; This panic is raised when an &lt;code&gt;EWsWinOpGetInvalidRegion&lt;/code&gt; is received by a &lt;code&gt;CWsRedrawMsgWindow&lt;/code&gt; with a &lt;code&gt;TInt&lt;/code&gt; parameter of zero or less. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>33</panic_id>
+      <panic_description>&lt;p&gt; The client failed to provide a reply buffer to a server-side function when one was needed. &lt;/p&gt; &lt;p&gt; All server-side functions that need more space for their reply than a &lt;code&gt;TInt&lt;/code&gt; use the client&amp;#8217;s reply buffer. If the client fails to provide space for such replies, this panic will be emitted. &lt;/p&gt; &lt;p&gt; This panic is raised by &lt;code&gt;CWsClient::ReplyBuf()&lt;/code&gt; when &lt;code&gt;CWsClient&lt;/code&gt;&amp;#8217;s reply buffer is null. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>34</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>35</panic_id>
+      <panic_description>&lt;p&gt; A client passed an invalid or unrecognised corner type or flag. &lt;/p&gt; &lt;p&gt; This panic is raised in response to a client call to &lt;code class="ApiItem"&gt;RWindowBase::SetCornerType()&lt;/code&gt; when specifying inconsistent or non-existent flags. &lt;/p&gt; &lt;p&gt; Valid flags are masked by &lt;code class="ApiItem"&gt;ECornerTypeMask&lt;/code&gt;, and recognised types are defined in &lt;code class="ApiItem"&gt;TCornerType&lt;/code&gt;. These are all defined in &lt;code class="filename"&gt;w32std.h&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; The server raises this panic as a response to &lt;code&gt;EWsWinOpSetCornerType&lt;/code&gt; request with an undefined corner type or an unrecognised flag in its parameters. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>36</panic_id>
+      <panic_description>&lt;p&gt; The server was asked to update a region of a backed-up window which has not had MaintainBackup called on it. &lt;/p&gt; &lt;p&gt; A client-side call to either form of &lt;code class="ApiItem"&gt;RBackedUpWindow::UpdateScreen()&lt;/code&gt; may raise this panic. &lt;/p&gt; &lt;p&gt; On the server side, the panic is raised in response to an &lt;code&gt;EWsWinOpUpdateScreenRegion&lt;/code&gt; or &lt;code&gt;EWsWinOpUpdateScreen &lt;/code&gt; request when not maintaining a full backup of a backed-up window. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>37</panic_id>
+      <panic_description>&lt;p&gt; Panic raised when it was not possible to read or write data to the client thread. The data is usually contained in a descriptor. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>38</panic_id>
+      <panic_description>&lt;p&gt; The client attempted to access a sprite after the sprite's window was destroyed. Note that pointer cursors are implemented as sprites. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>39</panic_id>
+      <panic_description>&lt;p&gt; A client requested event data without having received an event telling it that the data was ready. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>40</panic_id>
+      <panic_description>&lt;p&gt; The mask for a sprite is smaller than the sprite&amp;#8217;s bitmap. A mask is permitted to be larger than its bitmap. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>41</panic_id>
+      <panic_description>&lt;p&gt; Bad sprite handle. &lt;/p&gt; &lt;p&gt; A null sprite handle was encountered, or a handle which was supposed to refer to a sprite referred to something else. &lt;/p&gt; &lt;p&gt; The client-side methods &lt;code class="ApiItem"&gt;RWindowTreeNode::SetCustomPointerCursor()&lt;/code&gt; and &lt;code class="ApiItem"&gt;RWsSession::SetSystemPointerCursor()&lt;/code&gt;, amongst others, can cause this panic to be raised; they correspond to the server requests &lt;code&gt;EWsWinOpSetCustomPointerCursor&lt;/code&gt; and &lt;code&gt;EWsClOpSetSystemPointerCursor&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>42</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to set or clear a system pointer cursor without first owning the list of system pointer cursors. &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RWsSession::SetSystemPointerCursor()&lt;/code&gt; and &lt;code class="ApiItem"&gt;RWsSession::ClearSystemPointerCursor()&lt;/code&gt; can raise this panic. See also &lt;code class="ApiItem"&gt;RWsSession::ClaimSystemPointerCursorList()&lt;/code&gt; and &lt;code class="ApiItem"&gt;RWsSession::FreeSystemPointerCursorList()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; The server requests which can raise this panic are &lt;code&gt;EWsClOpSetSystemPointerCursor&lt;/code&gt; and &lt;code&gt;EWsClOpClearSystemPointerCursor&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>43</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to enable a pointer move buffer when none was allocated. &lt;/p&gt; &lt;p&gt; &lt;code class="ApiItem"&gt;RWindowBase::EnablePointerMoveBuffer()&lt;/code&gt; can cause this panic to be emitted; the corresponding server request is &lt;code&gt;EWsWinOpEnablePointerMoveBuffer&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>44</panic_id>
+      <panic_description>&lt;p&gt; Raised in response to commands that send a string, when the string has been incorrectly stored in the command buffer. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>45</panic_id>
+      <panic_description>&lt;p&gt; Not used. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>46</panic_id>
+      <panic_description>&lt;p&gt; An invalid call or request parameter was detected by &lt;code&gt;CWsPassword&lt;/code&gt;. This can be caused: &lt;/p&gt; &lt;p&gt; By &lt;code class="ApiItem"&gt;RWindowBase::PasswordWindow()&lt;/code&gt; sending an &lt;code&gt;EWsWinOpPasswordWindow&lt;/code&gt; server request whose password mode parameter is not recognised. &lt;/p&gt; &lt;p&gt; By an attempt to cancel the password window by a client which doesn&amp;#8217;t own the window. &lt;/p&gt; &lt;p&gt; By &lt;code class="ApiItem"&gt;RWsSession::PasswordEntered()&lt;/code&gt; sending a &lt;code&gt;EWsClOpPasswordEntered&lt;/code&gt; server request when no password window has been set, or when the client does not own the password window. &lt;/p&gt; &lt;p&gt; Valid password modes are defined in &lt;code class="ApiItem"&gt;TPasswordMode&lt;/code&gt; of &lt;code class="filename"&gt;w32std.h&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>47</panic_id>
+      <panic_description>&lt;p&gt; An invalid compute mode was sent to the window server. On the client side, &lt;code class="ApiItem"&gt;RWsSession::ComputeMode()&lt;/code&gt; can do this, the window server request is &lt;code&gt;EWsClOpComputeMode&lt;/code&gt;. Valid compute modes are defined in the enumeration &lt;code class="ApiItem"&gt;RWsSession::TComputeMode&lt;/code&gt;, which is declared in &lt;code class="filename"&gt;w32std.h&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>48</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to set the display mode of a backed-up window. This can be done with &lt;code class="ApiItem"&gt;RWindowBase::SetRequiredDisplayMode()&lt;/code&gt; or the &lt;code&gt;EWsWinOpRequiredDisplayMode&lt;/code&gt; server request. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>49</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to get a message when has not been signalled in the server. &lt;/p&gt; &lt;p&gt; This panic can be raised on a client thread calling &lt;code class="ApiItem"&gt;RWindowGroup::FetchMessage()&lt;/code&gt; or sending the &lt;code&gt;EWsWinOpGetMessageSize&lt;/code&gt; or &lt;code&gt;EWsWinOpGetMessage &lt;/code&gt; messages. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>50</panic_id>
+      <panic_description>&lt;p&gt; A client tried to send a second initialisation message, i.e. to call &lt;code class="ApiItem"&gt;RWsSession::Connect()&lt;/code&gt; twice. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>51</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to send a message without specifying a target window. &lt;/p&gt; &lt;p&gt; This can be raised, for example, in response to &lt;code class="ApiItem"&gt;RWsSession::RequestOffEvents()&lt;/code&gt; &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>52</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to perform and operation on a window that has had its parent or ancestor deleted. An operation which might raise this panic could be setting the window size, position or extent. &lt;/p&gt; &lt;p&gt; Introduced in v5.1 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>53</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to reset a window group&amp;#8217;s default owning window. For example, by calling the function &lt;code class="ApiItem"&gt;RWindowGroup::DefaultOwningWindow()&lt;/code&gt; twice on the same window group. &lt;/p&gt; &lt;p&gt; This is only raised in debug builds. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>54</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to perform an operation on an invalid screen mode. &lt;/p&gt; &lt;p&gt; For example, if the client called the functions &lt;code class="ApiItem"&gt;CWsScreenDevice::GetScreenModeSizeAndRotation()&lt;/code&gt; or &lt;code class="ApiItem"&gt;CWsScreenDevice::SetScreenMode()&lt;/code&gt; with an illegal index. &lt;/p&gt; &lt;p&gt; Introduced in v5.1 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>55</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to set an invalid screen enforcement mode. &lt;/p&gt; &lt;p&gt; The valid screen mode enforcement modes are defined in &lt;code class="ApiItem"&gt;TScreenModeEnforcement&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Introduced in v5.1 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>56</panic_id>
+      <panic_description>&lt;p&gt; A client specified an event type which was not a pointer event, when this is what was required by the operation. e.g. &lt;code class="ApiItem"&gt;RWindowGroup::SimulatePointerEvent()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Introduced in v5.1 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>57</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to specify a screen rotation or orientation that is not allowed. Each screen size mode has a list of allowed rotations. &lt;/p&gt; &lt;p&gt; Introduced in v5.1 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>58</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to call a function that can only be called on a top level client window on a lower level window. A top level client window is a window with a window group as a parent, e.g. &lt;code class="ApiItem"&gt;RWindowBase::MoveToGroup()&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Introduced in v6.0 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>59</panic_id>
+      <panic_description>&lt;p&gt; A client attempted to use a &lt;code class="ApiItem"&gt;RDirectScreenAccess&lt;/code&gt; object's member functions in the wrong order. &lt;/p&gt; &lt;p&gt; Introduced in v7.0 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>60</panic_id>
+      <panic_description>&lt;p&gt; The handle to a window server resource is already in use (debug builds only). &lt;/p&gt; &lt;p&gt; Introduced in v7.0 &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>61</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to set a custom text cursor (using &lt;code class="ApiItem"&gt;RWindowGroup::SetTextCursor()&lt;/code&gt;) but the cursor's type was not recognised. &lt;/p&gt; &lt;p&gt; Introduced in v7.0s. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>62</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to set a custom text cursor (using &lt;code class="ApiItem"&gt;RWindowGroup::SetTextCursor()&lt;/code&gt;) whose alignment value is invalid. For valid alignment values see the &lt;code class="ApiItem"&gt;TCustomTextCursorAlignment&lt;/code&gt; enumeration in class &lt;code class="ApiItem"&gt;RWsSession&lt;/code&gt;. &lt;/p&gt; &lt;p&gt; Introduced in v7.0s. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>63</panic_id>
+      <panic_description>&lt;p&gt; An attempt was made to set a custom text cursor (using &lt;code class="ApiItem"&gt;RWindowGroup::SetTextCursor()&lt;/code&gt;) that does not have any sprite members set. &lt;/p&gt; &lt;p&gt; Introduced in v7.0s.&lt;/p&gt;</panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/eSock_fault.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,119 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>eSock fault</category_name>
+  <category_description> &lt;p&gt;Panic of Sockets Server due to internal Sockets Server error&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Socket server initiation error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;No comms server available&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Failed to install active scheduler&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Failed to create Sockets Server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Failed to start Sockets Server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Call made to unimplemented &lt;code&gt;CProtocolBase::NewSAPL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Call made to unimplemented &lt;code&gt;CProtocolBase::NewHostResolverL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Call made to unimplemented &lt;code&gt;CProtocolBase::NewServiceResolverL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Call made to unimplemented &lt;code&gt;CProtocolBase::NewNetDatabaseL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Error in internal state&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Read attempted when already attempting&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Write attempted when already attempting&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Connect attempted when already attempting&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>19</panic_id>
+      <panic_description>&lt;p&gt;Close attempted when already attempting&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>20</panic_id>
+      <panic_description>&lt;p&gt;Ioctl attempted when already attempting&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>21</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>22</panic_id>
+      <panic_description>&lt;p&gt;Error in accepted connection queuing&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>23</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>24</panic_id>
+      <panic_description>&lt;p&gt;Failed to delete socket&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>25</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>26</panic_id>
+      <panic_description>&lt;p&gt;Internal session maintenance error&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>27</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/eSock_panic.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,23 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>eSock panic</category_name>
+  <category_description> &lt;p&gt;Panic of client from Sockets Server due to server error&lt;/p&gt; &lt;p&gt;From the TESockCliPanic enumeration.&lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Failed to create Sockets Server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Failed to start Sockets Server&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Unused&lt;/p&gt;	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/schema.xsd	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+  <xsd:element name="category_name" type="xsd:string"/>
+  <xsd:element name="category_description" type="xsd:string"/>
+  <xsd:element name="panic_id" type="xsd:string"/>
+  <xsd:element name="panic_description" type="xsd:string"/>
+  <xsd:element name="error_name" type="xsd:string"/>
+  <xsd:element name="error_value" type="xsd:string"/>
+  <xsd:element name="error_component" type="xsd:string"/>
+  <xsd:element name="error_text" type="xsd:string"/>
+  
+  <xsd:element name="panic_category">
+		<xsd:complexType>
+			<xsd:sequence>
+				<xsd:element ref="category_name" minOccurs="1" maxOccurs="1"/>
+				<xsd:element ref="category_description" minOccurs="1" maxOccurs="1"/>
+				<xsd:element ref="panics" minOccurs="1" maxOccurs="1"/>
+			</xsd:sequence>
+		</xsd:complexType>
+	</xsd:element>
+
+  <xsd:element name="panics">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="panic" minOccurs="1" maxOccurs="unbounded"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="panic">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="panic_id" minOccurs="1" maxOccurs="1"/>
+        <xsd:element ref="panic_description" minOccurs="1" maxOccurs="1"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="error_codes">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="error" minOccurs="1" maxOccurs="unbounded"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="error">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="error_name" minOccurs="1" maxOccurs="1"/>
+        <xsd:element ref="error_value" minOccurs="1" maxOccurs="1"/>
+        <xsd:element ref="error_component" minOccurs="1" maxOccurs="1"/>
+        <xsd:element ref="error_text" minOccurs="1" maxOccurs="1"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+</xsd:schema>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/Engine/ErrorLibrary/Resources/smlController.xml	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,83 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<panic_category>
+  <category_name>smlController</category_name>
+  <category_description> &lt;p&gt;SyncML panics represent program errors which are detected by the SyncML framework. Typically, they are caused by passing bad or contradictory parameters to functions.&lt;/p&gt; &lt;p&gt;The thread causing the panic is terminated. &lt;/p&gt;</category_description>
+  <panics>
+    <panic>
+      <panic_id>0</panic_id>
+      <panic_description>&lt;p&gt;Invalid parameter.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to pass an invalid parameter to a SyncML function. &lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlTask::SetNameL()&lt;/code&gt;, &lt;code class="ApiItem"&gt;CSmlProfile::AddTaskL()&lt;/code&gt;, &lt;code class="ApiItem"&gt;CSmlProfile::SetProfileNameL()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>1</panic_id>
+      <panic_description>&lt;p&gt;Incomplete data.&lt;/p&gt; &lt;p&gt;This panic is raised if there is a attempt to use a parameter which contains incomplete data.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlProfile::AddTaskL()&lt;/code&gt;, &lt;code class="ApiItem"&gt;CSmlController::CreateProfileL()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>2</panic_id>
+      <panic_description>&lt;p&gt;Null task member.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to externalise a Task object which has not been completely defined.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>3</panic_id>
+      <panic_description>&lt;p&gt;Task member not NULL.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to internalise Task information into a &lt;code&gt;CSmlTask&lt;/code&gt; object which is not NULL.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>4</panic_id>
+      <panic_description>&lt;p&gt;Null task identifier.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a task's identifier, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlTask::Identifier()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>5</panic_id>
+      <panic_description>&lt;p&gt;Null task provider.&lt;/p&gt; &lt;p&gt;This panic is raised there is an attempt to get a task's content provider information, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlTask::Provider()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>6</panic_id>
+      <panic_description>&lt;p&gt;Null task target.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a task's target database, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlTask::Target()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>7</panic_id>
+      <panic_description>&lt;p&gt;Null task source.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a task's source database, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlTask::Source()&lt;/code&gt;. &lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>8</panic_id>
+      <panic_description>&lt;p&gt;Null profile member.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to externalise a Profile object which has not been completely defined.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>9</panic_id>
+      <panic_description>&lt;p&gt;Profile member not NULL.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to internalise Profile information into a profile object which is not NULL.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>10</panic_id>
+      <panic_description>&lt;p&gt;Task list not empty.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to internalise Task list information into a profile object which is not empty.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>11</panic_id>
+      <panic_description>&lt;p&gt;Null profile identifier.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a profile's identifier value, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlProfile::Identifier()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>12</panic_id>
+      <panic_description>&lt;p&gt;Null profile authorisation type.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a profile's authorisation type value, when this has not previously been set.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>13</panic_id>
+      <panic_description>&lt;p&gt;Null profile protocol.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a profile's protocol information, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlProfile::Protocol()&lt;/code&gt;.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>14</panic_id>
+      <panic_description>&lt;p&gt;Null Content provider.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a profile's Content provider information, when this has not previously been set.&lt;/p&gt; &lt;p&gt;See &lt;code class="ApiItem"&gt;CSmlProfile::AddTaskL()&lt;/code&gt;&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>15</panic_id>
+      <panic_description>&lt;p&gt;Invalid Protocol.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to get a profile's transport protocol information, when the protocol does not exist.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>16</panic_id>
+      <panic_description>&lt;p&gt;Null Controller member.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to use one of the controller's members if it has not been initialised.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>17</panic_id>
+      <panic_description>&lt;p&gt;Controller Member Not Null.&lt;/p&gt; &lt;p&gt;This panic is raised if there is an attempt to use one of the controller members that should be null, e.g. at the start of the sync.&lt;/p&gt;</panic_description>
+    </panic>
+    <panic>
+      <panic_id>18</panic_id>
+      <panic_description>&lt;p&gt;Invalid Profile&lt;/p&gt; &lt;p&gt;This panic is raised when trying to retrieve a profile that does not exist.&lt;/p&gt; 	   </panic_description>
+    </panic>
+  </panics>
+</panic_category>
\ No newline at end of file
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/CrashInfoFilePlugin.csproj	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/CrashInfoFilePlugin.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -3,7 +3,7 @@
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
+    <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>{38D6EA43-2CA2-4637-9487-B3D5B5938558}</ProjectGuid>
     <OutputType>Library</OutputType>
@@ -46,7 +46,6 @@
     <Compile Include="FileFormat\CCrashInfoFileDocument.cs" />
     <Compile Include="FileFormat\CCrashInfoFileUtilities.cs" />
     <Compile Include="FileFormat\CCrashInfoRegisterStorage.cs" />
-    <Compile Include="FileFormat\CCrashInfoHashBuilder.cs" />
     <Compile Include="FileFormat\CrashInfoConsts.cs" />
     <Compile Include="LibResources.Designer.cs">
       <AutoGen>True</AutoGen>
@@ -65,11 +64,20 @@
       <Project>{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}</Project>
       <Name>CrashItemLib</Name>
     </ProjectReference>
+    <ProjectReference Include="..\..\..\Engine\ErrorLibrary\ErrorLibraryLib.csproj">
+      <Project>{C4F270B5-5B50-4270-9CDC-1616D9645365}</Project>
+      <Name>ErrorLibraryLib</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\Engines\MobileCrashLib\MobileCrashLib.csproj">
+      <Project>{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}</Project>
+      <Name>MobileCrashLib</Name>
+    </ProjectReference>
   </ItemGroup>
   <ItemGroup>
     <EmbeddedResource Include="LibResources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>LibResources.Designer.cs</LastGenOutput>
+      <SubType>Designer</SubType>
     </EmbeddedResource>
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoDataBlock.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoDataBlock.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -46,6 +46,8 @@
 using CrashItemLib.Crash.Traces;
 using SymbianStructuresLib.Debug.Trace;
 using CrashItemLib.Crash.InfoEnvironment;
+using ErrorLibrary;
+using MobileCrashLib;
 
 namespace CrashInfoFilePlugin.PluginImplementations.FileFormat
 {
@@ -76,6 +78,9 @@
 
                 //UpTime
                 iUptime = header.UpTime.TotalSeconds;
+
+                // Crash source
+                iCrashSource = header.CrashSource;
             }
         }
         /** Add romid, timestamp, platform, language and sw version */
@@ -234,7 +239,8 @@
             {
                 iProductType = info.ProductType; 
                 iProductCode = info.ProductCode.Trim();
-                iSerialNumber = info.SerialNumber.Trim();             
+                iSerialNumber = info.SerialNumber.Trim();
+                iProductionMode = info.ProductionMode;
             }           
         }
 
@@ -334,10 +340,10 @@
                 CISummarisableEntity primarySummary = aContainer.PrimarySummary;
                 if (primarySummary != null)
                 {
-                    CCrashInfoHashBuilder.TConfiguration config = CCrashInfoHashBuilder.TConfiguration.EDefault;
+                    MobileCrashHashBuilder.TConfiguration config = MobileCrashHashBuilder.TConfiguration.EDefault;
                     try //CCrashInfoHashBuilder.New throws an exception if there's not enough data for hash creation
                     {
-                        CCrashInfoHashBuilder builder = CCrashInfoHashBuilder.New(config, primarySummary);
+                        MobileCrashHashBuilder builder = MobileCrashHashBuilder.New(config, primarySummary);
                         iHash = builder.GetHash();
                     }
                     catch (Exception e)
@@ -503,6 +509,12 @@
             CCrashInfoFileUtilities.WriteOutputTags(iPanicCategory, CrashInfoConsts.Kpanic_category, aOutput);
         }
 
+        internal void WritePanicDescription(System.IO.StreamWriter aOutput)
+        {
+            string panicDescription = XmlErrorLibrary.GetPanicDescription(iPanicCategory, iPanicID.ToString());
+            CCrashInfoFileUtilities.WriteOutputTags(panicDescription, CrashInfoConsts.Kpanic_description, aOutput);
+        }
+
         internal void WriteLanguage(System.IO.StreamWriter aOutput)
         {
             CCrashInfoFileUtilities.WriteOutputTags(iLanguage, CrashInfoConsts.Klanguage, aOutput);
@@ -606,6 +618,31 @@
         {
             CCrashInfoFileUtilities.WriteOutputTags(iProductType, CrashInfoConsts.Kproduct_type, aOutput);   
         }
+
+        internal void WriteProductionMode(System.IO.StreamWriter aOutput)
+        {
+            if (iProductionMode == 1)
+            {
+                CCrashInfoFileUtilities.WriteOutputTags(CrashInfoConsts.Kproduction_mode_value, CrashInfoConsts.Kproduction_mode, aOutput);
+            }
+            else if (iProductionMode == 0)
+            {
+                CCrashInfoFileUtilities.WriteOutputTags(CrashInfoConsts.Krnd_mode_value, CrashInfoConsts.Kproduction_mode, aOutput);
+            }
+        }
+
+        internal void WriteCrashSource(System.IO.StreamWriter aOutput)
+        {
+            if (iCrashSource == 1)
+            {
+                CCrashInfoFileUtilities.WriteOutputTags(CrashInfoConsts.Kcrash_source_user, CrashInfoConsts.Kcrash_source, aOutput);
+            }
+            else if (iCrashSource == 0)
+            {
+                CCrashInfoFileUtilities.WriteOutputTags(CrashInfoConsts.Kcrash_source_kernel, CrashInfoConsts.Kcrash_source, aOutput);
+            }
+        }
+
         internal void WriteImei(System.IO.StreamWriter aOutput)
         {
             CCrashInfoFileUtilities.WriteOutputTags(iImei, CrashInfoConsts.Kimei, aOutput);
@@ -838,6 +875,8 @@
         private string iProductType = string.Empty; //aka RM-code
         private string iProductCode = string.Empty; //7-digit HW variant code 
         private string iSerialNumber = string.Empty; //aka PSN
+        private int? iProductionMode = null; // 1: production mode phone, 0: RnD phone
+        private int? iCrashSource = null; // 1: crash from user side, 0: from kernel side.
 
         private string iPhoneNumber = "NotFound";
         private string iImei = string.Empty;
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoFileDocument.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoFileDocument.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -96,6 +96,7 @@
                 datablock.WriteHWVersion(aOutput);
                 datablock.WritePanicID(aOutput);
                 datablock.WritePanicCategory(aOutput);
+                datablock.WritePanicDescription(aOutput);
                 datablock.WriteLanguage(aOutput);
                 datablock.WritePanicedProcess(aOutput);
                 datablock.WriteProgramCounter(aOutput);
@@ -109,6 +110,8 @@
                 datablock.WriteReporter(aOutput);
                 datablock.WriteArchive(aOutput);                
                 datablock.WriteProductType(aOutput);
+                datablock.WriteCrashSource(aOutput);
+                datablock.WriteProductionMode(aOutput);
                 datablock.WriteImei(aOutput);
                 datablock.WriteResetreason(aOutput);
                 datablock.WriteUptime(aOutput);
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoHashBuilder.cs	Tue Feb 23 17:05:24 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,399 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-using System;
-using System.IO;
-using System.Text;
-using System.Security.Cryptography;
-using System.Collections.Generic;
-using CrashItemLib.Crash;
-using CrashItemLib.Crash.Base;
-using CrashItemLib.Crash.Processes;
-using CrashItemLib.Crash.Registers;
-using CrashItemLib.Crash.Registers.Special;
-using CrashItemLib.Crash.Stacks;
-using CrashItemLib.Crash.Threads;
-using CrashItemLib.Crash.Symbols;
-using CrashItemLib.Crash.Summarisable;
-using SymbianStructuresLib.Arm.Registers;
-
-
-namespace CrashInfoFilePlugin.PluginImplementations.FileFormat
-{
-    public class CCrashInfoHashBuilder
-    {
-        #region Enumerations
-        [Flags]
-        public enum TConfiguration
-        {
-            // <summary>
-            // Include stack data in hash
-            // </summary>
-            EIncludeStack = 1,
-
-            // <summary>
-            // Force inclusion of stack data in hash, even if hash builder
-            // believes that it's inclusion is not needed in order to uniquely
-            // pin-point the crash.
-            // </summary>
-            EIncludeStackForced = 2,
-
-            // <summary>
-            // By default, offset is only included in program counter symbol. 
-            // This will force it to be incldued for all symbols (i.e. even
-            // those within stack trace).
-            // </summary>
-            EIncludeOffsetsForAllSymbols = 4,
-
-            // <summary>
-            // Include the processor mode at the time of the crash within the hash.
-            // </summary>
-            EIncludeProcessorMode = 8,
-
-            // <summary>
-            // By default we output an MD5 hash, but you can enable plain text
-            // output by using this option.
-            // </summary>
-            EOutputAsText = 16,
-            
-            // <summary>
-            // A general purpose default configuration
-            // </summary>
-            EDefault = EIncludeStack | EIncludeStackForced | EIncludeProcessorMode
-        }
-        #endregion
-
-        #region Factory
-        public static CCrashInfoHashBuilder New( TConfiguration aConfig, CISummarisableEntity aEntity )
-        {
-            CCrashInfoHashBuilder ret = CCrashInfoHashBuilder.New( aConfig, aEntity, KDefaultNumberOfStackEntriesToCheckForSymbols );
-            return ret;
-        }
-
-        public static CCrashInfoHashBuilder New( TConfiguration aConfig, CISummarisableEntity aEntity, int aNumberOfStackEntriesToCheck )
-        {
-            // By default we'll return an empty string for the hash if mandatory input
-            // elements are not available
-            CCrashInfoHashBuilder ret = null;
-            //
-            CIStack stack = aEntity.Stack;
-            CIThread thread = aEntity.Thread;
-            CIProcess process = aEntity.Process;
-            CIRegisterList regs = aEntity.Registers;
-            //
-            if ( stack != null && regs != null )
-            {
-                if ( process == null || thread == null )
-                {
-                    ret = new CCrashInfoHashBuilder( aConfig, regs, stack, aNumberOfStackEntriesToCheck );
-                }
-                else
-                {
-                    ret = new CCrashInfoHashBuilder( aConfig, regs, stack, thread, process, aNumberOfStackEntriesToCheck );
-                }
-            }
-            else
-            {
-                throw new ArgumentException( LibResources.KRes_CCrashInfoHashBuilder_BadSummarisable );
-            }
-            //
-            return ret;
-        }
-        #endregion
-
-        #region Constructors
-        private CCrashInfoHashBuilder( TConfiguration aConfig, CIRegisterList aRegisters, CIStack aStack, int aNumberOfStackEntriesToCheck )
-            : this( aConfig, aRegisters, aStack, null, null, aNumberOfStackEntriesToCheck )
-        {
-        }
-
-        private CCrashInfoHashBuilder( TConfiguration aConfig, CIRegisterList aRegisters, CIStack aStack, CIThread aThread, CIProcess aProcess, int aNumberOfStackEntriesToCheck )
-        {
-            iConfig = aConfig;
-            iRegisters = aRegisters;
-            iStack = aStack;
-            iProcess = aProcess;
-            iThread = aThread;
-            iNumberOfStackEntriesToCheck = aNumberOfStackEntriesToCheck;
-        }
-        #endregion
-
-        #region API
-        public string GetHash()
-        {
-            StringBuilder hash = new StringBuilder();
-            //
-            if ( ( iConfig & TConfiguration.EIncludeProcessorMode ) != 0 )
-            {
-                string processorMode = GetProcessorMode();
-                hash.AppendFormat( "MODE: [{0}] ", processorMode );
-            }
-            //
-            string moduleName = GetAppropriateBinaryModuleName();
-            hash.AppendFormat( "MODN: [{0}] ", moduleName );
-            //
-            string programCounter = GetProgramCounter();
-            hash.AppendFormat( "PC: [{0}] ", programCounter );
-            //
-            if ( ( iConfig & TConfiguration.EIncludeStack ) != 0 || ( iConfig & TConfiguration.EIncludeStackForced ) != 0 )
-            {
-                string stackSymbols = GetStackSymbols();
-                hash.AppendFormat( "STK: [{0}] ", stackSymbols );
-            }
-            
-            // Final stage is to MD5 hash the text, unless the caller requested
-            // plain text output.
-            string ret = hash.ToString();            
-            if ( ( iConfig & TConfiguration.EOutputAsText ) == 0 )
-            {
-                ret = GetMD5( ret );
-            }
-            //
-            return ret;
-        }
-        #endregion
-
-        #region Internal constants
-        private const int KDefaultNumberOfStackEntriesToCheckForSymbols = 4;
-        #endregion
-
-        #region Internal methods
-        private string GetProcessorMode()
-        {
-            string ret = LibResources.KRes_CCrashInfoHashBuilder_NoCPUMode;
-            //
-            if ( iRegisters.IsCurrentProcessorMode )
-            {
-                CIRegisterCPSR cpsr = iRegisters[ TArmRegisterType.EArmReg_CPSR ] as CIRegisterCPSR;
-                if ( cpsr != null )
-                {
-                    ret = ArmRegisterBankUtils.BankAsString( cpsr.ProcessorMode );
-                }
-            }
-            //
-            return ret;
-        }
-
-        private string GetAppropriateBinaryModuleName()
-        {
-            // We'll use the name of the binary associated with the program 
-            // counter symbol (if present) or then if not, we'll fall back
-            // to using the process name.
-            string ret = string.Empty;
-            //
-            bool fallBack = false;
-            if ( iRegisters.Contains( TArmRegisterType.EArmReg_PC ) )
-            {
-                CIRegister pc = iRegisters[ TArmRegisterType.EArmReg_PC ];
-                if ( pc.Symbol.IsNull == false )
-                {
-                    // Symbol available - use the associated binary name
-                    string binName = pc.Symbol.Symbol.Collection.FileName.EitherFullNameButDevicePreferred;
-                    ret = Path.GetFileName( binName );
-                }
-                else
-                {
-                    fallBack = true;
-                }
-            }
-            else
-            {
-                fallBack = true;
-            }
-
-            // Do we need to fallback because symbol et al was unavailable?
-            if ( fallBack )
-            {
-                // No Symbol, then in this case we'll try to fall back
-                // to the process name. 
-                if ( iProcess != null )
-                {
-                    ret = iProcess.Name;
-                }
-                else
-                {
-                    // Must be e.g. IRQ, FIQ, ABT, etc
-                    ret = LibResources.KRes_CCrashInfoHashBuilder_AbortModeStack;
-                }
-            }
-            //
-            return ret;
-        }
-
-        private string GetProgramCounter()
-        {
-            string ret = string.Empty;
-            //
-            if ( iRegisters.Contains( TArmRegisterType.EArmReg_PC ) )
-            {
-                CIRegister pc = iRegisters[ TArmRegisterType.EArmReg_PC ];
-                ret = CleanSymbol( pc.Value, pc.Symbol, true );
-            }
-            //
-            return ret;
-        }
-
-        private string GetStackSymbols()
-        {
-            StringBuilder ret = new StringBuilder();
-            //
-            if ( iStack.IsStackOutputAvailable )
-            {
-                bool isOverflow = iStack.IsOverflow;
-                bool isForced = ( iConfig & TConfiguration.EIncludeStackForced ) != 0;
-                bool isNullDereference = ( iStack.Registers.Contains( TArmRegisterType.EArmReg_00 ) && iStack.Registers[ TArmRegisterType.EArmReg_00 ].Value == 0 );
-
-                // If dealing with a stack overflow, then we don't, by default, include any
-                // symbols from the stack, as they are likely to be entirely dirty or "ghosts" for
-                // the most part. 
-                //
-                // Furthermore, if the 'crash' was caused by dereferencing a NULL this pointer
-                // (which is somewhat of a guess on our part, but we ascertain this by inspecting
-                // the value of R0) then we don't include stack either.
-                //
-                // However, the above behaviour can be overriden by forcing stack processing.
-                bool processEntries = ( ( isOverflow == false && isNullDereference == false ) || isForced );
-                if ( processEntries )
-                {
-                    // Get the entries and work out the number of items we should check for
-                    // associated symbols.
-                    CIElementList<CIStackEntry> stackEntries = iStack.ChildrenByType<CIStackEntry>();
-
-                    // Discard all the entries that are outside of the stack pointer range.
-                    // Once we see a register-based entry (for accurate decoding) or the current
-                    // stack pointer entry, we've reached the start of the interesting stack data.
-                    //
-                    // However, if there has been a stack overflow then don't discard anything
-                    // or else we'll end up with nothing left!
-                    if ( iStack.IsOverflow == false && stackEntries.Count > 0 )
-                    {
-                        int i = 0;
-                        while ( stackEntries.Count > 0 )
-                        {
-                            // If we see a register based entry then the stack reconstruction almost certainly
-                            // used the accurate algorithm.
-                            //
-                            // Since we have already included the program counter in the hash text, it doesn't
-                            // make sense to include it twice, so skip that.
-                            // However, link register might be useful.
-                            bool remove = true;
-                            CIStackEntry entry = stackEntries[ i ];
-
-                            if ( entry.IsCurrentStackPointerEntry )
-                            {
-                                break;
-                            }
-                            else if ( entry.IsRegisterBasedEntry )
-                            {
-                                // Preserve LR, skip PC
-                                if ( entry.Register.Type == TArmRegisterType.EArmReg_LR )
-                                {
-                                    ++i;
-                                    remove = false;
-                                }
-                            }
-
-                            if ( remove )
-                            {
-                                stackEntries.RemoveAt( 0 );
-                            }
-                        }
-                    }
-
-                    // Did the caller also want offsets within the output? By default only the program
-                    // counter receives this treatment, but it can be overridden.
-                    bool includeOffset = ( iConfig & TConfiguration.EIncludeOffsetsForAllSymbols ) != 0;
-
-                    // We should now have the stack entries directly relating to the crash call stack.
-                    // Process them in turn, but only look at entries which happen to have associated
-                    // symbols.
-                    
-                    int SymbolsNeeded = iNumberOfStackEntriesToCheck;
-                    foreach (CIStackEntry entry in stackEntries)
-                    {                       
-                        if ( entry.Symbol != null && entry.Symbol.IsNull == false )
-                        {
-                            string txt = CleanSymbol( entry.Data, entry.Symbol, includeOffset );
-                            ret.AppendFormat( "{0}, ", txt );
-                            SymbolsNeeded--;
-                        }     
-                        if (SymbolsNeeded == 0)
-                        {
-                            break;
-                        }
-                    }
-                   
-                    // Remove trailing comma
-                    string t = ret.ToString();
-                    if ( t.EndsWith( ", " ) )
-                    {
-                        ret = ret.Remove( ret.Length - 2, 2 );
-                    }
-                }
-            }
-            //
-            string final = ret.ToString().TrimEnd();
-            return final;
-        }
-
-        private string GetMD5( string aMakeHash )
-        {
-            MD5 md5 = MD5.Create();
-            byte[] inputBytes = Encoding.ASCII.GetBytes( aMakeHash );
-            byte[] hash = md5.ComputeHash( inputBytes );
-            //
-            StringBuilder sb = new StringBuilder();
-            //
-            for ( int i = 0; i < hash.Length; i++ )
-            {
-                sb.Append( hash[ i ].ToString( "x2" ) );
-            }
-            //
-            return sb.ToString();
-        }
-
-        private static string CleanSymbol( uint aAddress, CISymbol aSymbol, bool aAddOffset )
-        {
-            string ret = string.Empty;
-            //
-            if ( aSymbol.IsNull == false )
-            {
-                if ( aAddOffset )
-                {
-                    // Only include the name and offset, not the address
-                    uint offset = aSymbol.Symbol.Offset( aAddress );
-                    ret = string.Format( "|0x{0:x4}| {1}", offset, aSymbol.Symbol.Name );
-                }
-                else
-                {
-                    ret = aSymbol.Symbol.Name;
-                }
-            }
-            //
-            return ret;
-        }
-        #endregion
-
-        #region Data members
-        private readonly TConfiguration iConfig;
-        private readonly CIRegisterList iRegisters;
-        private readonly CIStack iStack;
-        private readonly CIThread iThread;
-        private readonly CIProcess iProcess;
-        private readonly int iNumberOfStackEntriesToCheck;
-        #endregion
-    }
-}
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoRegisterStorage.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CCrashInfoRegisterStorage.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -127,16 +127,15 @@
                 {
 
                     aOutput.Write(regList.Name);
+                    aOutput.Write(CrashInfoConsts.KEOL);
                     foreach (CCrasInfoRegisterItem reg in regList.Registers)
                     {
-                        aOutput.Write(CrashInfoConsts.KSeparator);
-                        aOutput.Write(reg.Name);
-                        aOutput.Write(CrashInfoConsts.KSeparator);
-                        aOutput.Write(reg.Value);
+                        aOutput.Write(reg.Name + " 0x" + reg.Value.ToString("X8"));
                         if (reg.Symbol != string.Empty)
                         {
-                            aOutput.Write(":" + reg.Symbol);
+                            aOutput.Write(" " + reg.Symbol);
                         }
+                        aOutput.Write(CrashInfoConsts.KEOL);
                     }
                     aOutput.Write(CrashInfoConsts.KEOL);
 
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CrashInfoConsts.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/FileFormat/CrashInfoConsts.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -44,6 +44,7 @@
         public const string Khw_version = "HW_VERSION";
         public const string Kpanic_id = "PANIC_ID";
         public const string Kpanic_category = "PANIC_CATEGORY";
+        public const string Kpanic_description = "PANIC_DESCRIPTION";
         public const string Klanguage = "LANGUAGE";
         public const string Kpanicked_process = "PANICKED_PROCESS";
         public const string Kprogram_counter = "PROGRAM_COUNTER";
@@ -57,6 +58,8 @@
         public const string Kreporter = "REPORTER";
         public const string Karchive = "ARCHIVE";
         public const string Kproduct_type = "PRODUCT_TYPE";
+        public const string Kproduction_mode = "PRODUCTION_MODE";
+        public const string Kcrash_source = "CRASH_SOURCE";
         public const string Kimei = "IMEI";
         public const string Knetwork_country_code = "NETWORK_COUNTRY_CODE";
         public const string Knetwork_identity = "NETWORK_IDENTITY";
@@ -100,6 +103,11 @@
         public const string Kbinfile_name = "BIN_FILE_NAME";
         public const string Ksymbolfile_names = "SYMBOL_FILE_NAME";
 
+        public const string Kproduction_mode_value = "Production mode";
+        public const string Krnd_mode_value = "R&D mode";
+        public const string Kcrash_source_user = "User";
+        public const string Kcrash_source_kernel = "Kernel";
+
         public const int KMaxStackSize = 65000; //max length of call stack output in bytes
         public const int KMaxItemAboveSP = 7; //How many items are taken above stack pointer, should never be less than 2 to keep PC and LR 
         public const int KNonSymbolItemsAfterSP = 20; //How many items are always taken below stack pointer (rest items are taken if they have symbols)
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/Properties/AssemblyInfo.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashInfoFilePlugin/Properties/AssemblyInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -1,19 +1,3 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
 using System.Reflection;
 using System.Runtime.CompilerServices;
 using System.Runtime.InteropServices;
@@ -45,8 +29,5 @@
 //      Build Number
 //      Revision
 //
-// You can specify all the values or you can default the Build and Revision Numbers 
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
 [assembly: AssemblyVersion("1.0.0.0")]
 [assembly: AssemblyFileVersion("1.0.0.0")]
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/CrashXmlPlugin.csproj	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/CrashXmlPlugin.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -3,7 +3,7 @@
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
+    <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>{284BC871-EAE3-4D8F-8DFF-6C953E1B119D}</ProjectGuid>
     <OutputType>Library</OutputType>
@@ -103,6 +103,14 @@
       <Project>{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}</Project>
       <Name>CrashItemLib</Name>
     </ProjectReference>
+    <ProjectReference Include="..\..\..\Engine\ErrorLibrary\ErrorLibraryLib.csproj">
+      <Project>{C4F270B5-5B50-4270-9CDC-1616D9645365}</Project>
+      <Name>ErrorLibraryLib</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\Engines\MobileCrashLib\MobileCrashLib.csproj">
+      <Project>{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}</Project>
+      <Name>MobileCrashLib</Name>
+    </ProjectReference>
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Header/CXmlSegHeader.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Header/CXmlSegHeader.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -64,6 +64,17 @@
                     CXmlVersionText version = new CXmlVersionText( header.FileFormatVersion );
                     version.XmlSerialize( aParameters );
                 }
+
+                // Crash source
+                if (header.CrashSource == 1)
+                {
+                    aParameters.Writer.WriteElementString(SegConstants.Header_Crash_Source, SegConstants.Header_Crash_Source_User);
+                }
+                else if(header.CrashSource == 0)
+                {
+                    aParameters.Writer.WriteElementString(SegConstants.Header_Crash_Source, SegConstants.Header_Crash_Source_Kernel);
+                }
+
             }
         }
         #endregion
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/InfoHW/CXmlSegInfoHW.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/InfoHW/CXmlSegInfoHW.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -65,6 +65,16 @@
                 // Serial number
                 string serialNumber = info.SerialNumber;
                 WriteStringIfNotEmpty( aParameters.Writer, SegConstants.HWInfo_SerialNumber, serialNumber );
+
+                // Crash source
+                if (info.ProductionMode == 1)
+                {
+                    aParameters.Writer.WriteElementString(SegConstants.HWInfo_ProductionMode, SegConstants.HWInfo_ProductionMode_Prd);
+                }
+                else if (info.ProductionMode == 0)
+                {
+                    aParameters.Writer.WriteElementString(SegConstants.HWInfo_ProductionMode, SegConstants.HWInfo_ProductionMode_RnD);
+                }
             }
         }
 
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Memory/CXmlMemoryInfo.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Memory/CXmlMemoryInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -38,7 +38,7 @@
         protected override void XmlSerializeContent( CrashXmlPlugin.FileFormat.Document.CXmlDocumentSerializationParameters aParameters )
         {
             CXmlNode.WriteId( iInfo, aParameters.Writer );
-            WriteIfNotZero( aParameters.Writer, SegConstants.CmnName, iInfo.Free );
+            WriteIfNotZero( aParameters.Writer, SegConstants.MemoryInfo_Free, iInfo.Free );
             WriteIfNotZero( aParameters.Writer, SegConstants.MemoryInfo_Capacity, iInfo.Capacity );
 
             if ( iInfo.Type == CIMemoryInfo.TType.ETypeDrive )
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Stacks/CXmlStack.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Stacks/CXmlStack.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -22,6 +22,7 @@
 using CrashItemLib.Crash.Stacks;
 using CrashItemLib.Crash.Registers;
 using CrashXmlPlugin.FileFormat.Node;
+using MobileCrashLib;
 
 namespace CrashXmlPlugin.FileFormat.Segment.Entries.Stacks
 {
@@ -53,6 +54,20 @@
             aParameters.Writer.WriteElementString( SegConstants.CmnSize, iStack.Size.ToString( "x" ) );
             aParameters.Writer.WriteElementString( SegConstants.CmnRange, iStack.Range.ToString() );
 
+            // Write defect hash
+            try
+            {
+                MobileCrashHashBuilder hashBuilder = MobileCrashHashBuilder.New(MobileCrashHashBuilder.TConfiguration.EDefault, iStack);
+                if (hashBuilder != null)
+                {
+                    aParameters.Writer.WriteElementString(SegConstants.Stacks_Stack_Hash, hashBuilder.GetHash());
+                }
+            }
+            catch (Exception ex)
+            {       
+                // Could not create MobileCrashHashBuilder, ignore.
+            }
+
             // Write any messages
             CXmlSegBase.XmlSerializeMessages( aParameters, iStack );
         }
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Utilities/CXmlExitInfo.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Utilities/CXmlExitInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -22,6 +22,7 @@
 using CrashItemLib.Crash.Threads;
 using CrashItemLib.Crash.ExitInfo;
 using CrashXmlPlugin.FileFormat.Node;
+using ErrorLibrary;
 
 namespace CrashXmlPlugin.FileFormat.Segment.Entries
 {
@@ -68,6 +69,10 @@
             case CIExitInfo.TExitType.EExitTypePanic:
                 aParameters.Writer.WriteElementString( SegConstants.ExitInfo_Category, iExitInfo.Category );
                 aParameters.Writer.WriteElementString( SegConstants.ExitInfo_Reason, iExitInfo.Reason.ToString() );
+                
+                // Get panic description
+                String description = XmlErrorLibrary.GetPanicDescription(iExitInfo.Category, iExitInfo.Reason.ToString());
+                aParameters.Writer.WriteElementString(SegConstants.ExitInfo_Description, description);
                 break;
             }
         }
--- a/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Utilities/SegConstants.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Utilities/SegConstants.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -49,6 +49,9 @@
         // Header
         public const string Header = "seg_header";
         public const string Header_Uptime = "uptime";
+        public const string Header_Crash_Source = "crash_source";
+        public const string Header_Crash_Source_User = "User";
+        public const string Header_Crash_Source_Kernel = "Kernel";
 
         // Symbols
         public const string Symbols = "seg_symbols";
@@ -63,6 +66,7 @@
         public const string Stacks = "seg_stacks";
         public const string Stacks_Stack = "stack";
         public const string Stacks_Stack_Data = "stack_data";
+        public const string Stacks_Stack_Hash = "hash";
         public const string Stacks_Stack_Attributes_Accurate = "accurate";
         public const string Stacks_Stack_Attributes_Heuristic = "heuristic";
         public const string Stacks_Stack_Data_Entry = "stack_entry";
@@ -109,6 +113,7 @@
         public const string ExitInfo_Type_Pending = "Pending";
         public const string ExitInfo_Reason = "exit_reason";
         public const string ExitInfo_Category = "exit_category";
+        public const string ExitInfo_Description = "exit_description";
 
         // Code Segs
         public const string CodeSegs = "seg_codesegs";
@@ -122,6 +127,9 @@
         public const string HWInfo_ProductType = "product_type";
         public const string HWInfo_ProductCode = "product_code";
         public const string HWInfo_SerialNumber = "serial_number";
+        public const string HWInfo_ProductionMode = "production_mode";
+        public const string HWInfo_ProductionMode_Prd = "Production mode";
+        public const string HWInfo_ProductionMode_RnD = "R&D mode";
 
         // SW Info
         public const string SWInfo = "seg_sw_info";
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlCallStack.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,227 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CCrashInfoCallStack is part of CrashAnalyser CrashInfoFile plugin.
+* It is a temporary container for thread call stack.
+* Call stack is stored in fully decoded form as lines of text
+* 
+*/
+
+using System;
+using System.Collections.Generic;
+using System.Text;
+using CrashItemLib.Crash.Stacks;
+using CrashItemLib.Crash.Registers;
+using CrashItemLib.Crash.Symbols;
+using XmlFilePlugin.PluginImplementations.FileFormat;
+
+namespace XmlFilePlugin.FileFormat
+{
+    class CXmlCallStack
+    {
+
+        #region Constructors
+        public CXmlCallStack()
+        {
+
+        }
+        #endregion
+
+
+
+        public void Read(CIStack aStack)
+        {
+            foreach (CIStackEntry entry in aStack)
+            {
+                CCrashInfoCSItem csItem = new CCrashInfoCSItem();
+                if (entry.IsCurrentStackPointerEntry)
+                {
+                    iStackPointerLocation = iCallStack.Count;
+                    csItem.iIsStackPointer = true;
+                }
+
+                CIRegister register = entry.Register;
+                if (register != null) //entry is from registers
+                {
+                    csItem.iIsRegisterEntry = true;
+                    if (register.Name == "PC")
+                    {
+                        csItem.iRegisterName = "Program counter";
+                    }
+                    else if (register.Name == "LR")
+                    {
+                        csItem.iRegisterName = "Link register";
+                    }
+                    else //other register
+                    {
+                        csItem.iRegisterName = register.Name;
+                    }
+                }
+                else //entry is from memory (normal case)
+                {
+                    csItem.iMemoryAddress = entry.Address;
+                }
+
+                //Add data contained in the memory location
+                csItem.iItemData = entry.Data;
+                csItem.iItemDataString = entry.DataAsString;
+
+                if (entry.Symbol != null) //add symbol if possible
+                {
+                    csItem.iHasSymbol = true;
+                    csItem.iSymbolName = entry.Symbol.Symbol.Name;
+                    csItem.iSymbolOffset = entry.FunctionOffset;
+                    csItem.iSymbolObject = entry.Symbol.Symbol.Object;
+
+                
+                }
+                // else symbol is not available
+
+                iCallStack.Add(csItem);
+
+            }
+
+        }
+        public void CleanStack()
+        {   
+            //Clean elements far above stack pointer
+            if (iStackPointerLocation != null)
+            {
+                int removeAmount = (int)iStackPointerLocation - XmlConsts.KMaxItemAboveSP;
+                               
+                if (removeAmount > 0)
+                {
+                    iCallStack.RemoveRange(0, removeAmount);
+                }
+
+                //Clean symbolless items far below stack pointer
+                for (int i = (int)iStackPointerLocation + XmlConsts.KNonSymbolItemsAfterSP; i < iCallStack.Count; )
+                {
+                    if (!iCallStack[i].iHasSymbol)
+                    {                        
+                        iCallStack.RemoveAt(i);
+                    }
+                    else
+                    {
+                        ++i;
+                    }
+                }
+            }
+        }
+          
+        
+        public override string ToString()
+        {
+            MakeWritableStack();
+            
+            System.Text.StringBuilder output = new System.Text.StringBuilder();
+            foreach (string line in iTextContent)
+            {
+                if (output.Length + line.Length + XmlConsts.Kxml_EOL.Length >= XmlConsts.KMaxStackSize)
+                {
+                    break;
+                }
+
+                output.AppendLine(line);
+            }
+            return output.ToString();
+
+        }
+              
+        private void MakeWritableStack()
+        {
+
+            foreach (CCrashInfoCSItem csItem in iCallStack)
+            {
+                System.Text.StringBuilder line = new System.Text.StringBuilder();
+                if (csItem.iIsStackPointer)
+                {
+                    line.Append("This is current stack pointer ");
+                }
+
+
+                if (csItem.iIsRegisterEntry) //entry is from registers
+                {
+                    line.Append(csItem.iRegisterName + " ");
+                }
+                else //entry is from memory (normal case)
+                {
+                    line.Append(csItem.iMemoryAddress.ToString("X").PadLeft(8, '0'));
+                }
+
+                line.Append(" " + csItem.iItemData.ToString("X").PadLeft(8, '0'));
+
+
+
+               if (csItem.iHasSymbol) //symbol if available
+               {
+                   line.Append(" " + csItem.iSymbolName);
+
+                   line.Append(" " + csItem.iSymbolOffset.ToString("X").PadLeft(4, '0'));
+
+                   line.Append(" " + csItem.iSymbolObject);
+               }
+               else //symbol is not available, print content in ascii (may contain some readable text)
+               {
+                   line.Append(" " + csItem.iItemDataString);
+               }               
+               iTextContent.Add(line.ToString());
+                
+           }
+        }
+
+        #region Data Members
+
+
+        private List<string> iTextContent = new List<string>();
+
+        private List<CCrashInfoCSItem> iCallStack = new List<CCrashInfoCSItem>();
+        private int? iStackPointerLocation = null;
+        #endregion
+
+        #region Nested Classes
+        private class CCrashInfoCSItem
+        {
+            #region Constructors
+            public CCrashInfoCSItem()
+            {
+
+            }
+            #endregion
+
+            #region Data Members
+
+            public uint iMemoryAddress = 0;
+            public uint iItemData = 0;
+            public string iItemDataString = string.Empty;
+
+            public bool iIsStackPointer = false;
+            public bool iIsRegisterEntry = false;
+            public string iRegisterName = string.Empty;
+            
+            public bool iHasSymbol = false;
+            public string iSymbolName = string.Empty;
+            public string iSymbolObject = string.Empty;
+            public uint iSymbolOffset = 0;
+
+            #endregion
+        }
+
+        #endregion
+   
+    }
+
+    
+
+}
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlCodeSegData.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,72 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CCrashInfoCodeSegItem is part of CrashAnalyser CrashInfoFile plugin.
+* Stores information about one code segment, also known as crash time loaded dll.
+* 
+* 
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    internal class CXmlCodeSegItem
+    {
+        #region Constructors
+        public CXmlCodeSegItem()
+        {
+
+        }
+        public CXmlCodeSegItem(uint aStart, uint aEnd, string aName)
+        {
+            iStart = aStart;
+            iEnd = aEnd;
+            iName = aName;
+        }
+        #endregion
+
+        #region Properties
+        public uint Start
+        {
+            get { return iStart; }
+            set { iStart = value; }
+        }
+
+        public uint End
+        {
+            get { return iEnd; }
+            set { iEnd = value; }
+        }
+
+        public string Name
+        {
+            get { return iName; }
+            set { iName = value; }
+        }
+
+        #endregion
+
+        #region Data Members
+
+        private uint iStart = 0;       
+        private uint iEnd = 0;       
+        private string iName = string.Empty;
+
+      
+
+        #endregion
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlDataBlock.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,803 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CCrashInfoDataBlock is part of CrashAnalyser CrashInfoFile plugin.
+* Provides reading methods, container and output methods for all data in a single
+* datablock of crashinfo file, corresponding to one crash. Complete crashinfo file 
+* may contain one or more datablock.
+* 
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+using CrashItemLib.Crash.Container;
+using CrashItemLib.Crash.Base;
+using CrashItemLib.Crash.Processes;
+using CrashItemLib.Crash.InfoSW;
+using CrashItemLib.Crash.Utils;
+using System.Globalization;
+using CrashItemLib.Crash.Threads;
+using CrashItemLib.Crash.Registers;
+using CrashItemLib.Crash.Symbols;
+using CrashItemLib.Crash.CodeSegs;
+using CrashItemLib.Crash.Memory;
+using CrashItemLib.Crash.Summarisable;
+using CrashItemLib.Crash.InfoHW;
+using CrashItemLib.Crash.Telephony;
+using CrashItemLib.Crash.Header;
+using CrashItemLib.Crash.Reports;
+using CrashItemLib.Crash.Stacks;
+using XmlFilePlugin.FileFormat;
+using CrashItemLib.Crash.Source;
+using CrashItemLib.Crash.Events;
+using CrashItemLib.Crash.Messages;
+using System.IO;
+using CrashItemLib.Crash.Traces;
+using SymbianStructuresLib.Debug.Trace;
+using CrashItemLib.Crash.InfoEnvironment;
+using ErrorLibrary;
+using MobileCrashLib;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    internal class CXmlDataBlock
+    {
+        #region Constructors
+        public CXmlDataBlock()
+           
+        {
+        }
+
+        #endregion
+
+        #region Adding data content
+        /** Add timestamp and uptime */
+        internal void AddHeader(CIContainer aContainer)
+        {
+            CIHeader header = (CIHeader) aContainer.ChildByType( typeof( CIHeader ) );
+            if (header != null)
+            {
+                //Timestamp
+                DateTime timeStamp = header.CrashTime;
+                String date = timeStamp.ToString("yyyyMMdd", DateTimeFormatInfo.InvariantInfo);
+                int hour = timeStamp.Hour;
+                int minute = timeStamp.Minute;
+                int second = timeStamp.Second;
+                iTimeStampText = date + hour.ToString().PadLeft(2, '0') + minute.ToString().PadLeft(2, '0') + second.ToString().PadLeft(2, '0');
+
+                //UpTime
+                iUptime = header.UpTime.TotalSeconds;
+                
+                // Crash source
+                iCrashSource = header.CrashSource;
+            }
+        }
+        /** Add romid, timestamp, platform, language and sw version */
+        internal void AddSWInfos(CIContainer aContainer)
+        {
+            CIInfoSW info = (CIInfoSW) aContainer.ChildByType( typeof( CIInfoSW ) );
+            if (info != null)
+            {
+                //RomID
+                if (info.ImageCheckSum != 0)
+                {
+                    iRomId = info.ImageCheckSum;                    
+                }
+                //Platform
+                iPlatform = info.Platform;
+                
+                //Language
+                iLanguage = info.Language;             
+
+                //Version                
+                const string KInfoSW_Version_Runtime    = "Runtime Version";
+                const string KInfoSW_Version_Variant    = "Variant Version";
+                const string KInfoSW_Version_S60        = "S60 Version";      
+                foreach ( CIVersionInfo version in info )
+                {
+                    if (version.IsValid && version.Name == KInfoSW_Version_Runtime)
+                    {                        
+                        iSWVersion = version.Value;                            
+                    }
+                    if (version.IsValid && version.Name == KInfoSW_Version_Variant)
+                    {                        
+                        iVariantVersion =  version.Value;                            
+                    }
+                    if (version.IsValid && version.Name == KInfoSW_Version_S60)
+                    {                        
+                        iS60Version =  version.Value;                            
+                    }
+                }          
+ 
+                //Timestamp
+                DateTime timeStamp = info.ImageTimeStamp;
+                String date = timeStamp.ToString("yyyyMMdd", DateTimeFormatInfo.InvariantInfo);
+                int hour = timeStamp.Hour;
+                int minute = timeStamp.Minute;
+                int second = timeStamp.Second;
+                iTimeStampText = date + hour.ToString().PadLeft(2, '0') + minute.ToString().PadLeft(2, '0') + second.ToString().PadLeft(2, '0');
+                           
+            }
+        }
+
+          
+
+        internal void AddThreadAndExitInfo(CIContainer aContainer)
+        {
+
+            CIElementList<CIThread> threads = aContainer.ChildrenByType<CIThread>( CIElement.TChildSearchType.EEntireHierarchy );
+            if (threads.Count > 1)
+            {
+                System.Console.WriteLine("Warning: XmlFilePlugin found multiple threads. XML file output can handle only one thread!");
+            }
+            foreach (CIThread thread in threads)
+            {
+                iPanicCategory = thread.ExitInfo.Category;
+                iPanicID = thread.ExitInfo.Reason;
+                iPanicDescription = XmlErrorLibrary.GetPanicDescription(iPanicCategory, iPanicID.ToString());
+                iCrashedModuleName = thread.FullName;
+            }
+
+        }
+
+        internal void AddPanicedProcess(CIContainer aContainer)
+        {
+            CIElementList<CIProcess> processes = aContainer.ChildrenByType<CIProcess>(CIElement.TChildSearchType.EEntireHierarchy);
+            if (processes.Count > 1)
+            {
+                System.Console.WriteLine("Warning: CrashInfoFilePlugin found multiple processes. CI file output can handle only one process!");
+            }
+            foreach (CIProcess process in processes)
+            {
+                 iProcess = process.Name;
+                 iUID = process.Uids.MostSignificant;
+            }
+
+        }
+
+        internal void AddRegisterLists(CIContainer aContainer)
+        {
+            CIElementList<CIRegisterListCollection> regListCols = aContainer.ChildrenByType<CIRegisterListCollection>(CIElement.TChildSearchType.EEntireHierarchy);
+            foreach (CIRegisterListCollection regListCol in regListCols)
+            {
+                foreach (CIRegisterList regList in regListCol)
+                {                                      
+                    iRegStorage.ReadRegisterData(regList);     
+                }
+            }
+
+        }
+
+        internal void AddStacks(CIContainer aContainer)
+        {
+            CIElementList<CIStack> stacks = aContainer.ChildrenByType<CIStack>(CIElement.TChildSearchType.EEntireHierarchy);
+            foreach (CIStack stack in stacks)
+            {
+                CXmlCallStack callStack = new CXmlCallStack();
+                callStack.Read(stack);
+                callStack.CleanStack();
+                iCallStacks.Add(callStack);
+
+            }
+        }
+
+        internal void AddCodeSegments(CIContainer aContainer)
+        {
+            // Get the code segments
+            CIElementList<CICodeSeg> codeSegs = aContainer.ChildrenByType<CICodeSeg>(CIElement.TChildSearchType.EEntireHierarchy);
+
+            // Sort them
+            Comparison<CICodeSeg> comparer = delegate(CICodeSeg aLeft, CICodeSeg aRight)
+            {
+                return string.Compare(aLeft.Name, aRight.Name, true);
+            };
+            codeSegs.Sort(comparer);
+
+            // List them
+            foreach (CICodeSeg codeSeg in codeSegs)
+            {
+                uint start = codeSeg.Range.Min;
+                uint end = codeSeg.Range.Max;
+                string name = codeSeg.Name;
+
+                CXmlCodeSegItem ciCodeSeg = new CXmlCodeSegItem(start, end, name);
+                iCodeSegs.Add(ciCodeSeg);
+            }
+        }
+
+        internal void AddMemoryInfo(CIContainer aContainer)
+        {
+            CIElementList<CIMemoryInfo> list = aContainer.ChildrenByType<CIMemoryInfo>(CIElement.TChildSearchType.EEntireHierarchy);
+            foreach ( CIMemoryInfo info in list )
+            {                
+                if ( info.Type == CIMemoryInfo.TType.ETypeRAM )
+                {
+                    iFreeMomery = info.Free;        
+                }
+                if (info.Type == CIMemoryInfo.TType.ETypeDrive)
+                {
+                    iDiskInfo = info.Free;
+                }
+            }
+        }
+
+        internal void AddHWInfo(CIContainer aContainer)
+        {
+            CIInfoHW info = (CIInfoHW)aContainer.ChildByType(typeof(CIInfoHW));
+            if (info != null)
+            {
+                iProductType = info.ProductType; 
+                iProductCode = info.ProductCode.Trim();
+                iSerialNumber = info.SerialNumber.Trim();
+                iProductionMode = info.ProductionMode;
+            }           
+        }
+
+        internal void AddTelephony(CIContainer aContainer)
+        {
+            CITelephony info = (CITelephony)aContainer.ChildByType(typeof(CITelephony));
+            if (info != null)
+            {
+                iPhoneNumber = info.PhoneNumber;
+                iImei = info.IMEI;
+                iImsi = info.IMSI;
+
+                CITelephonyNetworkInfo networkInfo = info.NetworkInfo;
+
+                iNetworkCountry = networkInfo.Country;
+                iNetworkIdentity = networkInfo.Identity;
+                iNetworkCell = networkInfo.CellId;
+                iLocInfo = networkInfo.CGI;
+
+            }
+
+        }
+
+        internal void AddEnvInfo(CIContainer aContainer)
+        {
+            CIInfoEnvironment info = (CIInfoEnvironment)aContainer.ChildByType(typeof(CIInfoEnvironment));
+            if (info != null)
+            {
+                iTestSet = info.TestSet;
+            }
+
+        }
+
+        internal void AddReportParameters(CIContainer aContainer)
+        {
+            CIReportInfo report = (CIReportInfo)aContainer.ChildByType(typeof(CIReportInfo));
+            if (report != null)
+            {
+                iReportType = report.Type;
+                if (iReportType != string.Empty)
+                {
+                    iFileType = XmlConsts.MobileCrashFileType.ETypeCrashAPIReport;
+                }
+                
+
+                iReportCategory = report.Category;
+                iReportOK = report.CountSuccess;
+                iReportFail = report.CountFail;
+                IEnumerator<CIReportParameter> parameters = report.GetEnumerator();
+                if (parameters.MoveNext()) //has first parameter
+                {
+                    iReportParamName1 = parameters.Current.Name;
+                    iReportParamValue1 = parameters.Current.Value;
+
+                    if (parameters.MoveNext()) //has second parameter
+                    {
+                        iReportParamName2 = parameters.Current.Name;
+                        iReportParamValue2 = parameters.Current.Value;
+                        if (parameters.MoveNext())
+                        {
+                            iReportParamName3 = parameters.Current.Name;
+                            iReportParamValue3 = parameters.Current.Value;
+                        }
+                    }
+                }
+                   
+                iReportComments = report.Comments;
+                
+            }
+            
+        }
+
+        internal void AddMessages(CIContainer container)
+        {
+            foreach (CIMessage message in container.Messages)
+            {
+                if (message.Title == "Miscellaneous Information")
+                {
+
+                    if (message.Description.Trim() == XmlConsts.KRegistrationMiscInfo)
+                    {
+                        iFileType = XmlConsts.MobileCrashFileType.ETypeRegistrationMessage;
+                    }
+                    if (message.Description.Trim() == XmlConsts.KAliveTimeMiscInfo)
+                    {
+                        iFileType = XmlConsts.MobileCrashFileType.ETypeAliveMessage;
+                    }
+                }
+            }
+        }
+
+        internal void AddCrashHash(CIContainer aContainer)
+        {
+            //hash is only calculated for normal crashes - registrations and reports are omitted
+            if (iFileType == XmlConsts.MobileCrashFileType.ETypeBasicCrash)
+            {
+                CISummarisableEntity primarySummary = aContainer.PrimarySummary;
+                if (primarySummary != null)
+                {
+                    MobileCrashHashBuilder.TConfiguration config = MobileCrashHashBuilder.TConfiguration.EDefault;
+                    try //CCrashInfoHashBuilder.New throws an exception if there's not enough data for hash creation
+                    {
+                        MobileCrashHashBuilder builder = MobileCrashHashBuilder.New(config, primarySummary);
+                        iHash = builder.GetHash();
+                    }
+                    catch (Exception /* e */)
+                    {
+                        //Not enough data -> no hash and no grouping
+                    }
+                }
+            }
+        }
+
+        internal void AddFileNames(CIContainer aContainer, string aArchivedFileName)
+     
+        {
+            iBinFilename = aArchivedFileName;
+
+            CISource source = aContainer.Source;
+            string binFileOriginalName = source.MasterFileName;
+                        
+            foreach (string filename in aContainer.FileNames)
+            {
+                if (filename != binFileOriginalName) //Since bin file name is stored separately, remove it from this list
+                {
+                    iSymbolFiles.Add(filename);
+                }
+            }          
+
+        }
+        internal void AddEventlog(CIContainer aContainer)
+        {
+            CIEventList events = aContainer.Events;
+            foreach (CIEvent ev in events)
+            {
+
+                iEventlog.Add(ev.Value.ToString());
+            }
+        }
+
+
+        internal void AddOstTraces(CIContainer aContainer)
+        {
+            CITraceData traceData = aContainer.Traces;
+            //
+            if (traceData != null && traceData.Lines.Length > 0)
+            {
+                foreach (CITrace ciTrace in traceData)
+                {
+                    System.Text.StringBuilder line = new System.Text.StringBuilder();                
+                   
+                    TraceLine trace = ciTrace;
+
+                    // Type
+                    string type = string.Empty;
+                    switch (trace.Type)
+                    {
+                        case TraceLine.TType.ETypeBinary:
+                            type = "Bin";
+                            break;
+                        case TraceLine.TType.ETypeRaw:
+                            type = "Raw";
+                            break;
+                        case TraceLine.TType.ETypeText:
+                            type = "Text";
+                            break;
+                        default:
+                            type = "Unknown";
+                            break;
+                    }
+                    if (string.IsNullOrEmpty(type) == false)
+                    {
+                        line.Append(type);
+                    }
+
+                    // Context id
+                    if (trace.ContextId != 0)
+                    {
+                        line.Append(" " + "0x" + trace.ContextId.ToString("x8"));
+                    }
+
+                    // Time stamp
+                    line.Append(" " + trace.TimeStamp.ToString());
+
+                    // Prefix
+                    string prefix = trace.Prefix;
+                    if (string.IsNullOrEmpty(prefix) == false)
+                    {
+                        line.Append(" " + prefix);
+                    }
+
+                    // Suffix
+                    string suffix = trace.Suffix;
+                    if (string.IsNullOrEmpty(suffix) == false)
+                    {
+                        line.Append(" " + suffix);
+                    }
+
+                    if (trace.HasIdentifier)
+                    {
+                        // Component/group/id triplet
+                        TraceIdentifier identifier = trace.Identifier;
+                        line.Append(" C:" + "0x" + identifier.Component.ToString("x8"));
+                        line.Append(" G:" + identifier.Group.ToString());
+                        line.Append(" I:" + identifier.Id.ToString());
+                        // File & line
+                        TraceLocation location = identifier.Location;
+                        //
+                        string file = location.File;
+                        string lineNumber = location.Line.ToString();
+                        //
+                        if (string.IsNullOrEmpty(file) == false && string.IsNullOrEmpty(lineNumber) == false)
+                        {
+                            line.Append(" " +file);
+                            line.Append(":" + lineNumber);
+                        }
+                    }
+
+                    // Payload
+                    string payload = trace.Payload;
+                    line.Append(" " + payload);
+                    iOstTraces.Add(line.ToString());
+                }
+            }
+        }
+
+        #endregion
+
+        #region Getters
+
+        internal XmlConsts.MobileCrashFileType FileType()
+        {
+            return iFileType;
+        }
+
+        internal string GetMiscInfo()
+        {
+            string mInfo = "NotFound";
+            if (iFileType == XmlConsts.MobileCrashFileType.ETypeRegistrationMessage)
+            {
+                mInfo = XmlConsts.KRegistrationMiscInfo;
+            }
+            if (iFileType == XmlConsts.MobileCrashFileType.ETypeAliveMessage)
+            {
+                mInfo = XmlConsts.KAliveTimeMiscInfo;
+            }
+            return mInfo;
+        }
+
+         internal string TimeStampText()
+         {
+             return iTimeStampText;
+         }
+
+         internal uint? RomId()
+         {
+             return iRomId;
+         }
+
+         internal string Platform()
+         {
+             return iPlatform;
+         }
+
+         internal string SWVersion()
+         {
+             return iSWVersion;
+         }
+
+         internal string S60Version()
+         {
+             return iS60Version;
+         }
+
+         internal string VariantVersion()
+         {
+             return iVariantVersion;
+         }
+
+         internal int? PanicId()
+         {
+             return iPanicID;
+         }
+
+         internal string PanicCategory()
+         {
+             return iPanicCategory;
+         }
+
+         internal string PanicDescription()
+         {
+             return iPanicDescription;
+         }
+
+         internal string Language()
+         {
+             return iLanguage;
+         }
+
+         internal string Process()
+         {
+             return iProcess;
+         }
+
+         internal CXmlRegisterStorage RegStorage()
+         {
+             return iRegStorage;
+         }
+
+         internal string CrashedModuleName()
+         {
+             return iCrashedModuleName;
+         }
+
+         internal List<CXmlCodeSegItem> CodeSegs()
+         {
+             return iCodeSegs;
+         }
+
+         internal ulong? FreeMemory() 
+         {
+             return iFreeMomery;
+         }
+
+         internal string ProductType()
+         {
+             return iProductType;
+         }
+
+         internal int? ProductionMode()
+         {
+             return iProductionMode;
+         }
+
+         internal int? CrashSource()
+         {
+             return iCrashSource;
+         }
+
+         internal string ProductCode() 
+         {
+             return iProductCode;
+         }
+         
+         internal string SerialNumber() 
+         {
+             return iSerialNumber;
+         }
+
+         internal string PhoneNumber()
+         {
+             return iPhoneNumber;
+         }
+        
+         internal string Imei() 
+         {
+             return iImei;
+         }
+
+         internal string Imsi() 
+         {
+             return iImsi;
+         }
+
+         internal string NetworkCountry() 
+         {
+             return iNetworkCountry;
+         }
+
+         internal string NetworkIdentity() 
+         {
+             return iNetworkIdentity;
+         }
+
+         internal string NetworkCell() 
+         {
+             return iNetworkCell;
+         }
+
+         internal string LocInfo() 
+         {
+             return iLocInfo;
+         }
+
+         internal string TestSet() 
+         {
+             return iTestSet;
+         }
+
+         internal double? Uptime() 
+         {
+             return iUptime;
+         }
+
+         internal uint? UID() 
+         {
+             return iUID;
+         }
+
+         internal ulong? DiskInfo() 
+         {
+             return iDiskInfo;
+         }
+
+         internal string ReportType() 
+         {
+             return iReportType;
+         }
+
+         internal string ReportCategory() 
+         {
+             return iReportCategory;
+         }
+
+         internal uint? ReportOK() 
+         {
+             return iReportOK;
+         }
+
+         internal uint? ReportFail() 
+         {
+             return iReportFail;
+         }
+
+         internal string ReportParamName1() 
+         {
+             return iReportParamName1;
+         }
+
+         internal uint? ReportParamValue1() 
+         {
+             return iReportParamValue1;
+         }
+
+         internal string ReportParamName2() 
+         {
+             return iReportParamName2;
+         }
+
+         internal uint? ReportParamValue2() 
+         {
+             return iReportParamValue2;
+         }
+
+         internal string ReportParamName3() 
+         {
+             return iReportParamName3;
+         }
+
+         internal uint? ReportParamValue3()
+         {
+             return iReportParamValue3;
+         }
+                 
+        internal string ReportComments() 
+         {
+             return iReportComments;
+         }
+        
+        internal string Hash()
+         {
+             return iHash;
+         }
+
+        internal List<CXmlCallStack> CallStacks()
+        {
+             return iCallStacks;
+        }
+
+        internal string BinFilename()
+        {
+            return iBinFilename;
+        }
+
+        internal List<string> SymbolFiles()
+        {
+            return iSymbolFiles;
+        }
+
+        internal List<string> Eventlog()
+        {
+            return iEventlog;
+        }
+
+        internal List<string> OstTraces()
+        {
+            return iOstTraces;
+        }
+        
+        #endregion
+
+         #region Data members
+         private XmlConsts.MobileCrashFileType iFileType = XmlConsts.MobileCrashFileType.ETypeBasicCrash;
+        
+        private string iTimeStampText = string.Empty; //YearMonthDayHourMinSec
+        private uint? iRomId = null; //aka rom's checksum word
+        private string iPlatform = string.Empty; //usually SOS
+        private string iSWVersion = string.Empty; //The "main" version number
+        private string iS60Version = string.Empty;
+        private string iVariantVersion = string.Empty;
+
+        private int? iPanicID = null;
+        private string iPanicCategory = string.Empty;
+        private string iPanicDescription = string.Empty;
+
+        private string iLanguage = string.Empty; //english, finnish etc
+        
+        private string iProcess = string.Empty;
+
+        private CXmlRegisterStorage iRegStorage = new CXmlRegisterStorage(); //registers
+
+        private string iCrashedModuleName = string.Empty; //thread name
+
+        private List<CXmlCodeSegItem> iCodeSegs = new List<CXmlCodeSegItem>(); //crash time loaded dlls
+
+        private ulong? iFreeMomery = null; //free ram
+
+        private string iProductType = string.Empty; //aka RM-code
+        private string iProductCode = string.Empty; //7-digit HW variant code 
+        private string iSerialNumber = string.Empty; //aka PSN
+        private int? iProductionMode = null; // 1: production mode phone, 0: RnD phone
+        private int? iCrashSource = null; // 1: crash from user side, 0: from kernel side.
+
+        private string iPhoneNumber = "NotFound";
+        private string iImei = string.Empty;
+        private string iImsi = string.Empty;
+        private string iNetworkCountry = string.Empty;
+        private string iNetworkIdentity = string.Empty;
+        private string iNetworkCell = string.Empty;
+        private string iLocInfo = string.Empty;
+        private string iTestSet = string.Empty;
+        private double? iUptime = null;
+        private uint? iUID = null;
+        private ulong? iDiskInfo = null;
+        private string iReportType = string.Empty;
+        private string iReportCategory = string.Empty;
+        private uint? iReportOK = null;
+        private uint? iReportFail = null;
+        private string iReportParamName1 = string.Empty;
+        private uint? iReportParamValue1 = null;
+        private string iReportParamName2 = string.Empty;
+        private uint? iReportParamValue2 = null;
+        private string iReportParamName3 = string.Empty;
+        private uint? iReportParamValue3 = null;
+        private string iReportComments = string.Empty;
+        private string iHash = string.Empty;
+
+        private List<CXmlCallStack> iCallStacks = new List<CXmlCallStack>(); //Call stacks
+
+        private string iBinFilename = string.Empty;
+        List<string> iSymbolFiles = new List<string>();
+        List<string> iEventlog = new List<string>();
+        List<string> iOstTraces = new List<string>();
+
+        #endregion
+
+
+
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlFileDocument.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,465 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CXmlFileDocument is part of CrashAnalyser XmlFilePlugin plugin.
+* Container and output implementation for data in XML File format.
+* XML format is an intermediate file used in the MobileCrash server
+* CXmlFileSink creates an instance of this class and uses it to output
+* crash data to file in XML format. 
+* 
+*/
+
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Xml;
+
+using CrashItemLib.Crash.Base;
+using CrashItemLib.Crash.Processes;
+using CrashItemLib.Crash.Container;
+using System.IO;
+using CrashItemLib.Sink;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    internal class CXmlFileDocument
+    {
+        #region Constructors
+        public CXmlFileDocument()
+           
+        {
+        }
+
+        #endregion
+
+        /** Creates a new datablock and inputs data from container to the datablock */
+        public void ReadDataFromContainer(CISinkSerializationParameters aParams)
+        {
+            CIContainer container = aParams.Container;
+
+            //Create a datablock for this container's contents
+            CXmlDataBlock datablock = new CXmlDataBlock();
+           
+            //Read all interesting data from container to the datablock
+            datablock.AddHeader(container);
+            datablock.AddSWInfos(container);
+            datablock.AddThreadAndExitInfo(container);
+            datablock.AddPanicedProcess(container);
+            datablock.AddRegisterLists(container);
+            datablock.AddStacks(container);
+            datablock.AddCodeSegments(container);
+            datablock.AddMemoryInfo(container);
+            datablock.AddHWInfo(container);
+            datablock.AddTelephony(container);
+            datablock.AddEnvInfo(container);
+            datablock.AddReportParameters(container);
+            datablock.AddMessages(container);
+            datablock.AddCrashHash(container);
+
+            string archivedFileName = (String)aParams.OperationData1;
+            datablock.AddFileNames(container, archivedFileName);
+            datablock.AddEventlog(container);
+
+            datablock.AddOstTraces(container);
+
+            //If all went well, we will add datablock to stored datablocks
+            iDatablocks.Add(datablock);
+        }
+
+        public void WriteToXmlStream(XmlWriter aOutput)
+        {
+            System.Diagnostics.Debug.Assert(aOutput != null);
+
+            WriteHeader(aOutput);
+
+            if (iDatablocks.Count > 0)
+            {
+                WriteReport(aOutput);
+            }
+            
+            WriteFooter(aOutput);
+        }
+
+        /**
+         * Writes as plain text.
+         */
+        public void WriteToPlainTextStream(StreamWriter aOutput)
+        {
+            PlainTextOutput.Write(aOutput, iDatablocks);
+        }
+
+        private void WriteReport(XmlWriter aOutput)
+        {
+            CXmlDataBlock datablock = iDatablocks[0];
+            
+            aOutput.WriteStartElement(XmlConsts.Kxml_report);
+
+            WriteDevice(aOutput, datablock);
+            WriteReportDetails(aOutput, datablock);
+
+            aOutput.WriteEndElement();
+        }
+
+
+        private static void WriteDevice(XmlWriter aOutput, CXmlDataBlock datablock)
+        {
+            // Device
+            aOutput.WriteStartElement(XmlConsts.Kxml_device);
+
+            if (datablock.Platform().Equals(XmlConsts.Kxml_sos))
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_platform, XmlConsts.Kxml_s60);
+            }
+            else
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_platform, datablock.Platform());
+            }
+
+            aOutput.WriteAttributeString(XmlConsts.Kxml_code, datablock.ProductType());
+            aOutput.WriteAttributeString(XmlConsts.Kxml_version, datablock.SWVersion());
+
+            if (datablock.RomId() != null)
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_romid, datablock.RomId().ToString());
+            }
+
+            // variant is not written.
+
+            if (datablock.Imei() != string.Empty)
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_imei, datablock.Imei());
+            }
+
+            // Write additional device details here if exist.
+
+            aOutput.WriteEndElement();
+        }
+
+        private static void WriteHeader(XmlWriter aOutput)
+        {
+            aOutput.WriteStartDocument();
+            aOutput.WriteDocType(XmlConsts.Kxml_report, null, XmlConsts.Kxml_doctype, null);
+        }
+
+        private static void WriteFooter(XmlWriter aOutput)
+        {
+            aOutput.WriteEndDocument();
+        }
+
+        private static void WriteReportDetails(XmlWriter aOutput, CXmlDataBlock datablock)
+        {
+            // Device report details
+            aOutput.WriteStartElement(XmlConsts.Kxml_report_details);
+            aOutput.WriteAttributeString(XmlConsts.Kxml_timestamp, datablock.TimeStampText());
+
+            string crashtypestr = "Not found";
+            if(datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeBasicCrash)
+            {
+                crashtypestr = XmlConsts.Kxml_type_crash;
+            }
+            else if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeAliveMessage)
+            {
+                crashtypestr = XmlConsts.Kxml_type_alivemsg;
+            }
+            else if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeCrashAPIReport)
+            {
+                crashtypestr = XmlConsts.Kxml_type_report;
+            }
+            else if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeRegistrationMessage)
+            {
+                crashtypestr = XmlConsts.Kxml_type_regmsg;
+            }
+
+            aOutput.WriteAttributeString(XmlConsts.Kxml_type, crashtypestr);
+
+            aOutput.WriteAttributeString(XmlConsts.Kxml_file_name, datablock.BinFilename());
+
+            if (crashtypestr.Equals(XmlConsts.Kxml_type_report))
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_report_category, datablock.ReportCategory());
+            }
+
+            if (crashtypestr.Equals(XmlConsts.Kxml_type_report))
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_report_type, datablock.ReportType());
+            }
+
+            if (datablock.CrashedModuleName() != string.Empty)
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_crashed_module, datablock.CrashedModuleName());
+            }
+
+            if (datablock.Hash() != string.Empty)
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_defect_hash, datablock.Hash());
+            }
+
+            // Child elements for report details
+            if (datablock.CodeSegs().Count > 0)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_loaded_dlls);
+            }
+            foreach (CXmlCodeSegItem codeseg in datablock.CodeSegs())
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_loaded_dll);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, codeseg.Name);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_start_address, codeseg.Start.ToString());
+                aOutput.WriteAttributeString(XmlConsts.Kxml_end_address, codeseg.End.ToString());
+                aOutput.WriteEndElement(); // loaded dll
+            }
+
+            if (datablock.CodeSegs().Count > 0)
+            {
+                aOutput.WriteEndElement(); // loaded dlls
+            }
+
+            // Traces
+            if(datablock.RegStorage().BasicRegs().Registers.Count > 0 ||
+                datablock.CallStacks().Count > 0 ||
+                datablock.OstTraces().Count > 0 ||
+                datablock.Eventlog().Count > 0 ||
+                datablock.RegStorage().OtherRegLists().Count > 0)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_traces);
+            }
+
+            WriteDetail(aOutput, XmlConsts.Kxml_register, datablock.RegStorage().BasicRegs().ToString());
+
+            // Extra registers  
+            System.Text.StringBuilder extraRegisters = new System.Text.StringBuilder();
+            foreach (CXmlRegisterStorage.CCrashInfoRegisterList registerList in datablock.RegStorage().OtherRegLists())
+            {
+                extraRegisters.AppendLine(registerList.ToPrettyString());
+            }
+            WriteDetail(aOutput, XmlConsts.Kxml_register_extra, extraRegisters.ToString());
+
+            // Call stack  
+            foreach (XmlFilePlugin.FileFormat.CXmlCallStack stack in datablock.CallStacks())
+            {
+                WriteDetail(aOutput, XmlConsts.Kxml_call_stack_text, stack.ToString());
+            }
+
+            // OST traces  
+            System.Text.StringBuilder ostTraces = new System.Text.StringBuilder();
+            foreach (string line in datablock.OstTraces())
+            {
+                ostTraces.AppendLine(line);
+            }
+            WriteDetail(aOutput, XmlConsts.Kxml_trace_data, ostTraces.ToString());
+
+            // Event log
+            System.Text.StringBuilder eventLog = new System.Text.StringBuilder();
+            foreach (string line in datablock.Eventlog())
+            {
+                eventLog.AppendLine(line);
+            }
+            WriteDetail(aOutput, XmlConsts.Kxml_eventlog, eventLog.ToString());
+
+            if (datablock.RegStorage().BasicRegs().Registers.Count > 0 ||
+                datablock.CallStacks().Count > 0 ||
+                datablock.OstTraces().Count > 0 ||
+                datablock.Eventlog().Count > 0 ||
+                datablock.RegStorage().OtherRegLists().Count > 0)
+            {
+                aOutput.WriteEndElement(); // traces
+            }
+            WriteDictionaryValues(aOutput, datablock);
+            WriteUniqueValues(aOutput, datablock);
+
+            aOutput.WriteEndElement(); // report details
+        }
+
+
+        private static void WriteDictionaryValues(XmlWriter aOutput, CXmlDataBlock datablock)
+        {
+            // Dictionary values
+            aOutput.WriteStartElement(XmlConsts.Kxml_dictionary_values);
+
+            WriteDetail(aOutput, XmlConsts.Kxml_panic_id, datablock.PanicId());
+            WriteDetail(aOutput, XmlConsts.Kxml_panic_category, datablock.PanicCategory());
+            WriteDetail(aOutput, XmlConsts.Kxml_panic_description, datablock.PanicDescription());
+            WriteDetail(aOutput, XmlConsts.Kxml_language, datablock.Language());
+            
+            if (!datablock.Process().Equals(XmlConsts.Kxml_unknown_process))
+            {
+                WriteDetail(aOutput, XmlConsts.Kxml_panicked_process, datablock.Process());
+            }
+
+            WriteDetail(aOutput, XmlConsts.Kxml_network_country_code, datablock.NetworkCountry());
+            WriteDetail(aOutput, XmlConsts.Kxml_network_identity, datablock.NetworkIdentity());
+            WriteDetail(aOutput, XmlConsts.Kxml_s60version, datablock.S60Version());
+            WriteDetail(aOutput, XmlConsts.Kxml_product_code, datablock.ProductCode());
+            WriteDetail(aOutput, XmlConsts.Kxml_variant_version, datablock.VariantVersion());
+
+            aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+            aOutput.WriteAttributeString(XmlConsts.Kxml_name, XmlConsts.Kxml_file_type);
+            if (datablock.ReportType() != string.Empty)
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_value, "1");
+            }
+            else
+            {
+                aOutput.WriteAttributeString(XmlConsts.Kxml_value, "0");
+            }
+            aOutput.WriteEndElement();
+
+            // Production mode
+            if (datablock.ProductionMode() != -1)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, XmlConsts.Kxml_production_mode);
+                if (datablock.ProductionMode() == 1)
+                {
+                    aOutput.WriteAttributeString(XmlConsts.Kxml_value, XmlConsts.Kxml_production_mode_value);
+                }
+                else
+                {
+                    aOutput.WriteAttributeString(XmlConsts.Kxml_value, XmlConsts.Kxml_rnd_mode_value);
+                }
+                aOutput.WriteEndElement();
+            }
+
+            // Crash source
+            if (datablock.CrashSource() != -1)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, XmlConsts.Kxml_crash_source);
+                if (datablock.CrashSource() == 1)
+                {
+                    aOutput.WriteAttributeString(XmlConsts.Kxml_value, XmlConsts.Kxml_crash_source_user);
+                }
+                else
+                {
+                    aOutput.WriteAttributeString(XmlConsts.Kxml_value, XmlConsts.Kxml_crash_source_kernel);
+                }
+                aOutput.WriteEndElement();
+            }
+
+            WriteSymbolFileNames(aOutput, datablock);
+
+
+            aOutput.WriteEndElement(); // dictionary values
+        }
+
+
+        private static void WriteUniqueValues(XmlWriter aOutput, CXmlDataBlock datablock)
+        {
+            // Unique values
+            aOutput.WriteStartElement(XmlConsts.Kxml_unique_values);
+
+            // Hw version is not added because it doesn't exist.
+
+            WriteDetail(aOutput, XmlConsts.Kxml_available_memory, datablock.FreeMemory());
+
+            if (datablock.RegStorage() != null && datablock.RegStorage().ProgramCounter() != null)
+            {
+                WriteDetail(aOutput, XmlConsts.Kxml_program_counter, datablock.RegStorage().ProgramCounter().Value);
+                WriteDetail(aOutput, XmlConsts.Kxml_program_counter_symbol, datablock.RegStorage().ProgramCounter().Symbol);
+            }
+
+            WriteDetail(aOutput, XmlConsts.Kxml_misc_info, datablock.GetMiscInfo());
+
+            // Reporter not written.
+            // Resetreason not written.
+
+            WriteDetail(aOutput, XmlConsts.Kxml_uptime, datablock.Uptime());
+            WriteDetail(aOutput, XmlConsts.Kxml_siminfo, datablock.Imsi());
+            WriteDetail(aOutput, XmlConsts.Kxml_locinfo, datablock.LocInfo());
+            WriteDetail(aOutput, XmlConsts.Kxml_cellid, datablock.NetworkCell());
+            WriteDetail(aOutput, XmlConsts.Kxml_psninfo, datablock.SerialNumber());
+            WriteDetail(aOutput, XmlConsts.Kxml_uid, datablock.UID());
+            WriteDetail(aOutput, XmlConsts.Kxml_testset, datablock.TestSet());
+            WriteDetail(aOutput, XmlConsts.Kxml_diskinfo, datablock.DiskInfo());
+            WriteDetail(aOutput, XmlConsts.Kxml_phone_number, datablock.PhoneNumber());
+            
+            WriteDetail(aOutput, XmlConsts.Kxml_report_ok, datablock.ReportOK());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_fail, datablock.ReportFail());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_param_name1, datablock.ReportParamName1());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_param_value1, datablock.ReportParamValue1());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_param_name2, datablock.ReportParamName2());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_param_value2, datablock.ReportParamValue2());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_param_name3, datablock.ReportParamName3());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_param_value3, datablock.ReportParamValue3());
+            WriteDetail(aOutput, XmlConsts.Kxml_report_comments, datablock.ReportComments());
+
+            aOutput.WriteEndElement(); // unique values
+        }
+
+
+        private static void WriteSymbolFileNames(XmlWriter aOutput, CXmlDataBlock datablock)
+        {
+            List<string> symbolFiles = datablock.SymbolFiles();
+
+            string symbolfilenames = string.Empty;
+            foreach (string fileName in symbolFiles)
+            {
+                if (symbolfilenames != string.Empty)
+                {
+                    symbolfilenames = symbolfilenames + ", ";
+                }
+                symbolfilenames = symbolfilenames + Path.GetFileName(fileName);
+            }
+
+            WriteDetail(aOutput, XmlConsts.Kxml_symbol_file_name, symbolfilenames);
+        }
+
+        private static void WriteDetail(XmlWriter aOutput, string name, ulong? value)
+        {
+            if (value != null)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, name);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_value, value.ToString());
+                aOutput.WriteEndElement();
+            }
+        }
+
+        private static void WriteDetail(XmlWriter aOutput, string name, double? value)
+        {
+            if (value != null)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, name);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_value, value.ToString());
+                aOutput.WriteEndElement();
+            }
+        }
+
+        private static void WriteDetail(XmlWriter aOutput, string name, string value)
+        {
+            if (value != string.Empty)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, name);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_value, value);
+                aOutput.WriteEndElement();
+            }
+        }
+
+        private static void WriteDetail(XmlWriter aOutput, string name, int? value)
+        {
+            if (value != null)
+            {
+                aOutput.WriteStartElement(XmlConsts.Kxml_detail);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_name, name);
+                aOutput.WriteAttributeString(XmlConsts.Kxml_value, value.ToString());
+                aOutput.WriteEndElement();
+            }
+        }
+
+        #region Data members
+        private List<CXmlDataBlock> iDatablocks = new List<CXmlDataBlock>();
+        #endregion
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlFileUtilities.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,44 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+using CrashItemLib.Crash.Symbols;
+using SymbianStructuresLib.Debug.Symbols;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    static class CXmlFileUtilities
+    {
+        public static bool IsSymbolSerializable(CISymbol aSymbol)
+        {
+            bool ret = true;
+            //
+            if (aSymbol.IsNull)
+            {
+                ret = false;
+            }
+            else
+            {
+                TSymbolType type = aSymbol.Symbol.Type;
+                ret = ( type != TSymbolType.EUnknown );
+            }           
+            return ret;
+        }
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/CXmlRegisterStorage.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,313 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CCrashInfoRegisterStorage is part of CrashAnalyser CrashInfoFile plugin.
+* Temporary container for arm register list information conversion from
+* CrashAnalyser data to CrashInfoFile document.
+* Reads register info from CIRegisterList structures and outputs formatted
+* CrashInfo file rows.
+* 
+*/
+
+using System;
+using System.Collections.Generic;
+using System.Text;
+using CrashItemLib.Crash.Registers;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    internal class CXmlRegisterStorage
+    {
+        #region Constructors
+        public CXmlRegisterStorage()           
+		{
+        
+		}
+		#endregion
+
+        public void ReadRegisterData(CIRegisterList aRegList)
+        {
+            //If long enough reglist starts with R0, it is assumed to be the "basic" register list (R0-R15)
+            if (aRegList.Count > 15 && aRegList[0].Type == SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_00)
+            {
+                iBasicRegs.Name = aRegList.Name;
+                foreach (CIRegister register in aRegList)
+                {
+                    string regName = GetRegisterName(register);      
+
+                    CCrasInfoRegisterItem regItem = new CCrasInfoRegisterItem(regName, register.Value);
+
+                    if (register.Symbol != null && CXmlFileUtilities.IsSymbolSerializable(register.Symbol))
+                    {                        
+                        regItem.Symbol = register.Symbol.Name;
+                    }
+
+                    iBasicRegs.Registers.Add(regItem);
+
+                    //Check if this is PC and save it separately
+                    if (register.Type == SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_PC)
+                    {
+                        iProgramCounter.Value = register.Value;
+                        iProgramCounter.Symbol = register.Symbol.Name;
+                    }
+                }
+            }
+            else //all other registers as their own list
+            {
+                CCrashInfoRegisterList regs = new CCrashInfoRegisterList();
+                regs.Name = aRegList.Name;
+                bool hasRealData = false;
+                foreach (CIRegister register in aRegList)
+                {
+                    string regName = GetRegisterName(register);
+                    CCrasInfoRegisterItem regItem = new CCrasInfoRegisterItem(regName, register.Value);
+                    if (register.Symbol != null && CXmlFileUtilities.IsSymbolSerializable(register.Symbol))
+                    {
+                        regItem.Symbol = register.Symbol.Name;
+                    }
+
+                    regs.Registers.Add(regItem);
+
+                    if (register.Value != 0)
+                    {
+                        hasRealData = true;
+                    }
+                }
+
+                if (hasRealData)
+                {
+                    iOtherRegLists.Add(regs);
+                }
+            }
+        }
+        // Return CrashInfo compatible register name - R0-R15 in short numeric form, other as they are 
+        public static string GetRegisterName(CIRegister aRegister)
+        {
+            string ret = aRegister.Name;
+            //
+            switch (aRegister.Type)
+            {
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_00:
+                    ret = "R0";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_01:
+                    ret = "R1";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_02:
+                    ret = "R2";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_03:
+                    ret = "R3";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_04:
+                    ret = "R4";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_05:
+                    ret = "R5";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_06:
+                    ret = "R6";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_07:
+                    ret = "R7";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_08:
+                    ret = "R8";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_09:
+                    ret = "R9";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_10:
+                    ret = "R10";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_11:
+                    ret = "R11";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_12:
+                    ret = "R12";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_SP:
+                    ret = "R13";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_LR:
+                    ret = "R14";
+                    break;
+                case SymbianStructuresLib.Arm.Registers.TArmRegisterType.EArmReg_PC:
+                    ret = "R15";
+                    break;
+                default:
+                    break;
+            }
+            //
+            return ret;
+        }
+
+        #region Getters
+        internal CCrashInfoRegisterList BasicRegs()
+        {
+            return iBasicRegs;
+        }
+
+        internal List<CCrashInfoRegisterList> OtherRegLists()
+        {
+            return iOtherRegLists;
+        }
+
+        internal CCrasInfoRegisterItem ProgramCounter()
+        {
+            return iProgramCounter;
+        }
+
+        #endregion
+
+
+        #region Data Members
+        private CCrashInfoRegisterList iBasicRegs = new CCrashInfoRegisterList(); //R0-R15
+        private List<CCrashInfoRegisterList> iOtherRegLists = new List<CCrashInfoRegisterList>(); //Other registers
+        private CCrasInfoRegisterItem iProgramCounter = new CCrasInfoRegisterItem("PC");
+
+        #endregion
+
+        #region Nested Classes
+        internal class CCrashInfoRegisterList
+        {
+            #region Constructors
+            public CCrashInfoRegisterList()
+            {
+
+            }
+            #endregion
+
+            public string ToPrettyString()
+            {
+                System.Text.StringBuilder output = new System.Text.StringBuilder();
+
+                if (iRegisters.Count > 0)
+                {
+                    output.AppendLine(iName);
+                    foreach (CCrasInfoRegisterItem reg in iRegisters)
+                    {
+                        if (reg.Symbol != string.Empty)
+                        {
+                            output.AppendLine(reg.Name + " 0x" + reg.Value.ToString("X8") + " " + reg.Symbol);
+                        }
+                        else
+                        {
+                            output.AppendLine(reg.Name + " 0x" + reg.Value.ToString("X8"));
+                        }
+                    }
+                }
+                return output.ToString();
+            }
+
+
+            public override string ToString()
+            {
+                string output = "";
+                if (iRegisters.Count > 0)
+                {
+                    output += iName;
+                    foreach (CCrasInfoRegisterItem reg in iRegisters)
+                    {
+                        output += XmlConsts.Kxml_separator;
+                        output += reg.Name;
+                        output += XmlConsts.Kxml_separator;
+                        output += reg.Value;
+                        if (reg.Symbol != string.Empty)
+                        {
+                            output += ":";
+                            output += reg.Symbol;
+                        }
+                    }
+                }
+                return output; 
+            }
+
+            #region Properties
+            public List<CCrasInfoRegisterItem> Registers
+            {
+                get { return iRegisters; }
+                set { iRegisters = value; }
+            }
+            public string Name
+            {
+                get { return iName; }
+                set { iName = value; }
+            }
+
+            #endregion
+
+            private List<CCrasInfoRegisterItem> iRegisters = new List<CCrasInfoRegisterItem>();            
+            private string iName;
+
+           
+        }
+
+        internal class CCrasInfoRegisterItem
+        {
+            #region Constructors
+            public CCrasInfoRegisterItem(string aName)
+            {
+                iName = aName;
+            }
+
+            public CCrasInfoRegisterItem(string aName, uint aValue)
+            {
+                iName = aName;
+                iValue = aValue;
+            }
+
+            #endregion
+
+            #region Properties
+            public string Name
+            {
+                get { return iName; }
+                set { iName = value; }
+            }
+
+            public uint Value
+            {
+                get { return iValue; }
+                set { iValue = value; }
+            }
+
+            public string Symbol
+            {
+                get { return iSymbol; }
+                set { iSymbol = value; }
+            }
+
+            #endregion
+
+
+            #region Data Members
+
+            private uint iValue = 0;
+            private string iName = string.Empty;
+            private string iSymbol = string.Empty;
+
+            #endregion
+        }
+
+        #endregion
+
+
+
+
+
+    }
+
+    
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/PlainTextOutput.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,381 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class PlainTextOutput is part of CrashAnalyser XmlFilePlugin plugin.
+* This class creates plain text output.
+*
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.IO;
+using XmlFilePlugin.PluginImplementations.FileFormat;
+using System.Text.RegularExpressions;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    class PlainTextOutput
+    {
+        private static int KColumnWidth = 30;
+        private static string KTitleCrashFile    = "Crash File";
+        private static string KTitleCodesegments = "Crash Time Loaded Code Segments";
+        private static string KTitleRegisters    = "Registers";
+        private static string KTitleCallStacks   = "Call Stacks";
+        private static string KTitleOstTraces    = "OST Traces";
+        private static string KTitleEventLog     = "Event Log";
+        private static string KTitleSymbolFileNames = "Symbol File Names";
+        private static string KTitleUniqueValues = "Unique Values";
+
+        public static void Write(StreamWriter writer, List<CXmlDataBlock> datablocks)
+        {
+            foreach (CXmlDataBlock datablock in datablocks)
+            {
+                WriteDataBlock(writer, datablock);
+                WriteUniqueValues(writer, datablock);
+            }
+        }
+
+        /**
+         * Writes one datablock as plain text.
+         */
+        private static void WriteDataBlock(StreamWriter writer, CXmlDataBlock datablock)
+        {
+            writer.Write(PrettyTitle(KTitleCrashFile));
+
+            // Device
+            if (datablock.Platform().Equals(XmlConsts.Kxml_sos))
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_platform, XmlConsts.Kxml_s60));
+            }
+            else
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_platform, datablock.Platform()));
+            }
+
+            writer.Write(PrettyString(XmlConsts.Kxml_code, datablock.ProductType()));
+            writer.Write(PrettyString(XmlConsts.Kxml_version, datablock.SWVersion()));
+
+            if (datablock.RomId() != null)
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_romid, "0x" + datablock.RomId().Value.ToString("X8")));
+            }
+
+            // variant is not written.
+
+            if (datablock.Imei() != string.Empty)
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_imei, datablock.Imei()));
+            }
+
+            writer.Write(PrettyString(XmlConsts.Kxml_timestamp, datablock.TimeStampText()));
+
+            string crashtypestr = "Not found";
+            if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeBasicCrash)
+            {
+                crashtypestr = XmlConsts.Kxml_type_crash;
+            }
+            else if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeAliveMessage)
+            {
+                crashtypestr = XmlConsts.Kxml_type_alivemsg;
+            }
+            else if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeCrashAPIReport)
+            {
+                crashtypestr = XmlConsts.Kxml_type_report;
+            }
+            else if (datablock.FileType() == XmlConsts.MobileCrashFileType.ETypeRegistrationMessage)
+            {
+                crashtypestr = XmlConsts.Kxml_type_regmsg;
+            }
+
+            writer.Write(PrettyString(XmlConsts.Kxml_type, crashtypestr));
+
+            writer.Write(PrettyString(XmlConsts.Kxml_file_name, datablock.BinFilename()));
+
+            if (crashtypestr.Equals(XmlConsts.Kxml_type_report))
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_report_category, datablock.ReportCategory()));
+            }
+
+            if (crashtypestr.Equals(XmlConsts.Kxml_type_report))
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_report_type, datablock.ReportType()));
+            }
+
+            if (datablock.CrashedModuleName() != string.Empty)
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_crashed_module, datablock.CrashedModuleName()));
+            }
+
+            if (datablock.Hash() != string.Empty)
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_defect_hash, datablock.Hash()));
+            }
+
+            WriteDictionaryValues(writer, datablock);
+
+            // Codesegments
+            if (datablock.CodeSegs().Count > 0)
+                writer.Write(PrettyTitle(KTitleCodesegments));
+    
+            foreach (CXmlCodeSegItem codeseg in datablock.CodeSegs())
+            {
+                string range = "0x" + codeseg.Start.ToString("X8") + " - " + "0x" + codeseg.End.ToString("x8");
+                writer.WriteLine(range + FillSpaces(range) + codeseg.Name);
+            }
+
+            // Registers
+            if (datablock.RegStorage().BasicRegs().ToPrettyString().Length > 0 ||
+                datablock.RegStorage().OtherRegLists().Count > 0)
+            {
+                writer.Write(PrettyTitle(KTitleRegisters));
+            }
+            writer.WriteLine(datablock.RegStorage().BasicRegs().ToPrettyString());
+
+            // Extra registers
+            foreach (CXmlRegisterStorage.CCrashInfoRegisterList registerList in datablock.RegStorage().OtherRegLists())
+            {
+                writer.WriteLine(registerList.ToPrettyString());
+            }
+
+            // Call stacks
+            if (datablock.CallStacks().Count > 0)
+                writer.Write(PrettyTitle(KTitleCallStacks));
+    
+            foreach (XmlFilePlugin.FileFormat.CXmlCallStack stack in datablock.CallStacks())
+            {
+                writer.WriteLine(stack.ToString());
+            }
+
+            // OST traces
+            if (datablock.OstTraces().Count > 0)
+                writer.Write(PrettyTitle(KTitleOstTraces));
+ 
+            foreach (string line in datablock.OstTraces())
+            {
+                writer.WriteLine(line);
+            }
+
+            // Event log
+            if (datablock.Eventlog().Count > 0)
+                writer.Write(PrettyTitle(KTitleEventLog));
+            
+            foreach (string line in datablock.Eventlog())
+            {
+                writer.WriteLine(line);
+            }
+        }
+
+
+        /**
+         * Writes dictionary values.
+         */
+        private static void WriteDictionaryValues(StreamWriter writer, CXmlDataBlock datablock)
+        {
+            writer.Write(PrettyString(XmlConsts.Kxml_panic_id, datablock.PanicId()));
+            writer.Write(PrettyString(XmlConsts.Kxml_panic_category, datablock.PanicCategory()));
+            writer.Write(PrettyString(XmlConsts.Kxml_panic_description, Regex.Replace(datablock.PanicDescription(), "<(.|\n)*?>", "")));
+            writer.Write(PrettyString(XmlConsts.Kxml_language, datablock.Language()));
+            
+            if (!datablock.Process().Equals(XmlConsts.Kxml_unknown_process))
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_panicked_process, datablock.Process()));
+            }
+
+            writer.Write(PrettyString(XmlConsts.Kxml_network_country_code, datablock.NetworkCountry()));
+            writer.Write(PrettyString(XmlConsts.Kxml_network_identity, datablock.NetworkIdentity()));
+            writer.Write(PrettyString(XmlConsts.Kxml_s60version, datablock.S60Version()));
+            writer.Write(PrettyString(XmlConsts.Kxml_product_code, datablock.ProductCode()));
+            writer.Write(PrettyString(XmlConsts.Kxml_variant_version, datablock.VariantVersion()));
+
+            if (datablock.ReportType() != string.Empty)
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_file_type, "1"));
+            }
+            else
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_file_type, "0"));
+            }
+
+            // Production mode
+            if (datablock.ProductionMode() != -1)
+            {
+                if (datablock.ProductionMode() == 1)
+                {
+                    writer.Write(PrettyString(XmlConsts.Kxml_production_mode, XmlConsts.Kxml_production_mode_value));
+                }
+                else
+                {
+                    writer.Write(PrettyString(XmlConsts.Kxml_production_mode, XmlConsts.Kxml_rnd_mode_value));
+                }
+            }
+
+            // Crash source
+            if (datablock.CrashSource() != -1)
+            {
+                if (datablock.CrashSource() == 1)
+                {
+                    writer.Write(PrettyString(XmlConsts.Kxml_crash_source, XmlConsts.Kxml_crash_source_user));
+                }
+                else
+                {
+                    writer.Write(PrettyString(XmlConsts.Kxml_crash_source, XmlConsts.Kxml_crash_source_kernel));
+                }
+            }
+
+            // Symbol file names
+            if (datablock.SymbolFiles().Count > 0)
+                writer.Write(PrettyTitle(KTitleSymbolFileNames));
+    
+            foreach (string fileName in datablock.SymbolFiles())
+            {
+                writer.WriteLine(fileName);
+            }
+        
+        }
+
+
+        /**
+         * Writes unique values.
+         */
+        private static void WriteUniqueValues(StreamWriter writer, CXmlDataBlock datablock)
+        {
+            // Unique values
+            writer.Write(PrettyTitle(KTitleUniqueValues));
+
+            // Available memory
+            writer.Write(PrettyString(XmlConsts.Kxml_available_memory, datablock.FreeMemory()));
+
+            if (datablock.RegStorage() != null && datablock.RegStorage().ProgramCounter() != null)
+            {
+                writer.Write(PrettyString(XmlConsts.Kxml_program_counter, "0x" + datablock.RegStorage().ProgramCounter().Value.ToString("X8")));
+                writer.Write(PrettyString(XmlConsts.Kxml_program_counter_symbol, datablock.RegStorage().ProgramCounter().Symbol));
+            }
+
+            writer.Write(PrettyString(XmlConsts.Kxml_misc_info, datablock.GetMiscInfo()));
+
+            // Reporter not written.
+            // Resetreason not written.
+
+            writer.Write(PrettyString(XmlConsts.Kxml_uptime, datablock.Uptime()));
+            writer.Write(PrettyString(XmlConsts.Kxml_siminfo, datablock.Imsi()));
+            writer.Write(PrettyString(XmlConsts.Kxml_locinfo, datablock.LocInfo()));
+            writer.Write(PrettyString(XmlConsts.Kxml_cellid, datablock.NetworkCell()));
+            writer.Write(PrettyString(XmlConsts.Kxml_psninfo, datablock.SerialNumber()));
+
+            if (datablock.UID() != null)
+               writer.Write(PrettyString(XmlConsts.Kxml_uid, "0x" + datablock.UID().Value.ToString("X8")));
+            
+            writer.Write(PrettyString(XmlConsts.Kxml_testset, datablock.TestSet()));
+            writer.Write(PrettyString(XmlConsts.Kxml_diskinfo, datablock.DiskInfo()));
+            writer.Write(PrettyString(XmlConsts.Kxml_phone_number, datablock.PhoneNumber()));
+
+            writer.Write(PrettyString(XmlConsts.Kxml_report_ok, datablock.ReportOK()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_fail, datablock.ReportFail()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_param_name1, datablock.ReportParamName1()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_param_value1, datablock.ReportParamValue1()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_param_name2, datablock.ReportParamName2()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_param_value2, datablock.ReportParamValue2()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_param_name3, datablock.ReportParamName3()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_param_value3, datablock.ReportParamValue3()));
+            writer.Write(PrettyString(XmlConsts.Kxml_report_comments, datablock.ReportComments()));
+        }
+
+
+        /**
+         * Returns string in the pretty format (i.e. two columns).
+         * Converts int param to string.
+         */
+        private static string PrettyString(string key, int? value)
+        {
+            if (value == null)
+            {
+                return string.Empty;
+            }
+            return PrettyString(key, value.ToString());
+        }
+
+        /**
+         * Returns string in the pretty format (i.e. two columns).
+         * Converts ulong param to string.
+         */
+        private static string PrettyString(string key, ulong? value)
+        {
+            if (value == null)
+            {
+                return string.Empty;
+            }
+            return PrettyString(key, value.ToString());
+        }
+
+        /**
+         * Returns string in the pretty format (i.e. two columns).
+         * Converts uint param to string.
+         */
+        private static string PrettyString(string key, uint? value)
+        {
+            if (value == null)
+            {
+                return string.Empty;
+            }
+            return PrettyString(key, value.ToString());
+        }
+
+        /**
+         * Returns string in the pretty format (i.e. two columns).
+         * Converts double param to string.
+         */
+        private static string PrettyString(string key, double? value)
+        {
+            if (value == null)
+            {
+                return string.Empty;
+            }
+            return PrettyString(key, value.ToString());
+        }
+
+        /**
+         * Returns string in the pretty format (i.e. two columns)
+         */
+        private static string PrettyString(string key, string value)
+        {
+            if (value == string.Empty || value.Length == 0)
+                return string.Empty;
+
+            return key.ToUpper() + ":" + FillSpaces(key) + value + "\n";
+        }
+
+        /**
+         * Fill spaces so that the output looks nice.
+         */
+        private static string FillSpaces(string key)
+        {
+            string spaceString = "";
+            
+            for (int i = key.Length; i < KColumnWidth; i++)
+            {
+                spaceString += " ";
+            }
+
+            return spaceString;
+        }
+
+        /**
+         * Writes title in the pretty format
+         */
+        private static string PrettyTitle(string titleString)
+        {
+            return "\n === " + titleString + " ===\n";
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/FileFormat/XmlConsts.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,136 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CrashInfoConsts is part of CrashAnalyser CrashInfoFile plugin.
+* Defines constant strings used in the crash info file format.
+* 
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace XmlFilePlugin.PluginImplementations.FileFormat
+{
+    internal class XmlConsts
+    {
+        //General constants
+        public const string KRegistrationMiscInfo = "MOBILECRASH_REGISTRATION";
+        public const string KAliveTimeMiscInfo = "MOBILECRASH_ALIVETIME";
+        
+        public const string Kxml_doctype = "MobileCrashCISchema.dtd";
+        public const string Kxml_unknown_process = "UnknownProcess.exe";
+        public const string Kxml_report = "report";
+        public const string Kxml_device = "device";
+        public const string Kxml_report_details = "report_details";
+        public const string Kxml_platform = "platform";
+        public const string Kxml_sos = "SOS";
+        public const string Kxml_s60 = "S60";
+        public const string Kxml_code = "code";
+        public const string Kxml_version = "version";
+        public const string Kxml_romid = "romid";
+        public const string Kxml_variant = "variant";
+        public const string Kxml_imei = "imei";
+        public const string Kxml_timestamp = "timestamp";
+        public const string Kxml_type = "type";
+        public const string Kxml_file_name = "file_name";
+        public const string Kxml_report_category = "report_category";
+        public const string Kxml_report_type = "report_type";
+        public const string Kxml_crashed_module = "crashed_module";
+        public const string Kxml_defect_hash = "defect_hash";
+        public const string Kxml_loaded_dlls = "loaded_dlls";
+        public const string Kxml_loaded_dll = "loaded_dll";
+        public const string Kxml_name = "name";
+        public const string Kxml_value = "value";
+        public const string Kxml_start_address = "start_address";
+        public const string Kxml_end_address = "end_address";
+        public const string Kxml_traces = "traces";
+        public const string Kxml_detail = "detail";
+        public const string Kxml_dictionary_values = "dictionary_values";
+        public const string Kxml_unique_values = "unique_values";
+        public const string Kxml_panic_id = "PANIC_ID";
+        public const string Kxml_panic_category = "PANIC_CATEGORY";
+        public const string Kxml_panic_description = "PANIC_DESCRIPTION";
+        public const string Kxml_language = "LANGUAGE";
+        public const string Kxml_panicked_process = "PANICKED_PROCESS";
+        public const string Kxml_network_country_code = "NETWORK_COUNTRY_CODE";
+        public const string Kxml_network_identity = "NETWORK_IDENTITY";
+        public const string Kxml_s60version = "S60VERSION";
+        public const string Kxml_production_mode = "PRODUCTION_MODE";
+        public const string Kxml_crash_source = "CRASH_SOURCE";
+
+        public const string Kxml_product_code = "P_CODE";
+        public const string Kxml_variant_version = "VARIANT_VERSION";
+        public const string Kxml_file_type = "FILE_TYPE";
+        public const string Kxml_available_memory = "AVAILABLE_MEMORY";
+        public const string Kxml_program_counter = "PROGRAM_COUNTER";
+        public const string Kxml_program_counter_symbol = "PC_SYMBOL";
+        public const string Kxml_misc_info = "MISC_INFO";
+        public const string Kxml_reporter = "REPORTER";
+        public const string Kxml_resetreason = "RESETREASON";
+        public const string Kxml_uptime = "UPTIME";
+        public const string Kxml_siminfo = "SIMINFO";
+        public const string Kxml_locinfo = "LOCINFO";
+        public const string Kxml_cellid = "CELLID";
+        public const string Kxml_psninfo = "PSNINFO";
+        public const string Kxml_uid = "UID";
+        public const string Kxml_testset = "TESTSET";
+        public const string Kxml_diskinfo = "DISKINFO";
+        public const string Kxml_phone_number = "PHONE_NUMBER";
+        public const string Kxml_register = "REGISTER";
+        public const string Kxml_register_extra = "REGISTER_EXTRA";
+        public const string Kxml_call_stack_text = "CALL_STACK";
+        public const string Kxml_trace_data = "TRACE_DATA";
+        public const string Kxml_eventlog = "EVENTLOG";
+        public const string Kxml_symbol_file_name = "SYMBOL_FILE_NAME";
+
+        public const string Kxml_report_ok = "REPORT_OK";
+        public const string Kxml_report_fail = "REPORT_FAIL";
+        public const string Kxml_report_param_name1 = "REPORT_PARAM_NAME1";
+        public const string Kxml_report_param_value1 = "REPORT_PARAM_VALUE1";
+        public const string Kxml_report_param_name2 = "REPORT_PARAM_NAME2";
+        public const string Kxml_report_param_value2 = "REPORT_PARAM_VALUE2";
+        public const string Kxml_report_param_name3 = "REPORT_PARAM_NAME3";
+        public const string Kxml_report_param_value3 = "REPORT_PARAM_VALUE3";
+        public const string Kxml_report_comments = "REPORT_COMMENTS";
+
+        public const string Kxml_separator = "|";
+        public const string Kxml_symbol_separator = ":";
+        public const string Kxml_EOL = "\r\n";        
+
+        public const string Kxml_type_crash = "crash";
+        public const string Kxml_type_report = "report";
+        public const string Kxml_type_regmsg = "rgmsg";
+        public const string Kxml_type_alivemsg = "alivemsg";
+
+        public const string Kxml_production_mode_value = "Production mode";
+        public const string Kxml_rnd_mode_value = "R&D mode";
+        public const string Kxml_crash_source_user = "User";
+        public const string Kxml_crash_source_kernel = "Kernel";
+
+        public const int KMaxStackSize = 65000; //max length of call stack output in bytes
+        public const int KMaxItemAboveSP = 7; //How many items are taken above stack pointer, should never be less than 2 to keep PC and LR 
+        public const int KNonSymbolItemsAfterSP = 20; //How many items are always taken below stack pointer (rest items are taken if they have symbols)
+        
+        //Internally used constants
+
+        public enum MobileCrashFileType
+        {            
+            ETypeBasicCrash = 0,
+            ETypeCrashAPIReport,
+            ETypeRegistrationMessage,
+            ETypeAliveMessage
+        }
+    
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/PluginImplementations/Sink/CXmlFileSink.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,103 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+* The class CCrashInfoFileSink is part of CrashAnalyser CrashInfoFile plugin.
+* Sink output plugin for Crash Info File format.
+* Implements CISink which is automatically discovered by CISinkManager.
+* Serialize function produces a Crash Info file formatted text output
+* 
+*/
+
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Xml;
+
+using CrashItemLib.Sink;
+
+//using CrashItemLib.Crash.Symbols;
+//using CrashItemLib.Crash.CodeSegs;
+//using CrashItemLib.Crash.Registers;
+//using CrashItemLib.Crash.Threads;
+
+
+using XmlFilePlugin.PluginImplementations.FileFormat;
+using System.IO;
+
+namespace XmlFilePlugin.PluginImplementations.Sink
+{
+    public class CXmlFileSink : CISink
+    {
+        #region Constants
+        public const string KCrashInfoSinkName = "XML Crash File";
+        #endregion
+
+        #region Constructors
+        public CXmlFileSink(CISinkManager aManager)
+            : base(KCrashInfoSinkName, aManager)
+        {
+        }
+        #endregion
+
+        #region From CISink
+
+        public override object Serialize(CISinkSerializationParameters aParams)
+        {
+            CXmlFileDocument document = new CXmlFileDocument();
+
+            //Read information relevant to crash info file from container to internal variables
+            document.ReadDataFromContainer(aParams);
+            string newFileName = "";
+            if (aParams.PlainTextOutput)
+            {
+                //Override default file extension
+                aParams.FileExtensionFailed = ".corrupt_txt";
+                aParams.FileExtensionSuccess = ".txt";
+
+                //Write document's internal data to file
+                newFileName = string.Empty;
+                using (Stream output = aParams.CreateFile(out newFileName))
+                {
+                    using (StreamWriter sw = new StreamWriter(output, Encoding.ASCII))
+                    {
+                        document.WriteToPlainTextStream(sw);
+                    }
+                }
+            }
+            else // XML output
+            {
+                //Override default file extension
+                aParams.FileExtensionFailed = ".corrupt_xml";
+                aParams.FileExtensionSuccess = ".xml";
+
+                //Write document's internal data to file
+                newFileName = string.Empty;
+                using (Stream output = aParams.CreateFile(out newFileName))
+                {
+                    XmlWriterSettings settings = new XmlWriterSettings();
+                    settings.Indent = true;
+                    settings.NewLineChars = XmlConsts.Kxml_EOL;
+                    settings.NewLineHandling = NewLineHandling.None;
+                    using (XmlWriter sw = XmlWriter.Create(output, settings))
+                    {
+                        document.WriteToXmlStream(sw);
+                    }
+                }
+            }
+            return newFileName;
+        }
+
+        #endregion
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/Properties/AssemblyInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("XmlFilePlugin")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Nokia")]
+[assembly: AssemblyProduct("XmlFilePlugin")]
+[assembly: AssemblyCopyright("Copyright © Nokia 2010")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("3b14e242-7156-4939-84f9-4d5cd76e64ed")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/Libraries/File Formats/Plugins/XmlFilePlugin/XmlFilePlugin.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>9.0.21022</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{1D07751A-83EA-4D7B-8B2B-C41305A799E0}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>XmlFilePlugin</RootNamespace>
+    <AssemblyName>XmlFile.plugin</AssemblyName>
+    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="SymbianUtils, Version=1.0.3463.26793, Culture=neutral, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\..\Engine\CrashItemLib\bin\Debug\SymbianUtils.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="FileFormat\CXmlCallStack.cs" />
+    <Compile Include="FileFormat\CXmlCodeSegData.cs" />
+    <Compile Include="FileFormat\CXmlDataBlock.cs" />
+    <Compile Include="FileFormat\CXmlFileDocument.cs" />
+    <Compile Include="FileFormat\CXmlFileUtilities.cs" />
+    <Compile Include="FileFormat\CXmlRegisterStorage.cs" />
+    <Compile Include="FileFormat\PlainTextOutput.cs" />
+    <Compile Include="FileFormat\XmlConsts.cs" />
+    <Compile Include="PluginImplementations\Sink\CXmlFileSink.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\..\..\..\..\PerfToolsSharedLibraries\Engine\SymbianStructuresLib\SymbianStructuresLib.csproj">
+      <Project>{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}</Project>
+      <Name>SymbianStructuresLib</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\..\Engine\CrashItemLib\CrashItemLib.csproj">
+      <Project>{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}</Project>
+      <Name>CrashItemLib</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\..\Engine\ErrorLibrary\ErrorLibraryLib.csproj">
+      <Project>{C4F270B5-5B50-4270-9CDC-1616D9645365}</Project>
+      <Name>ErrorLibraryLib</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\..\Engines\MobileCrashLib\MobileCrashLib.csproj">
+      <Project>{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}</Project>
+      <Name>MobileCrashLib</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+  <PropertyGroup>
+    <PostBuildEvent>set path_out="$(SolutionDir)$(OutDir)"
+if not exist %25path_out%25 (
+    mkdir %25path_out%25
+) 
+copy "$(TargetDir)\*.*" "$(SolutionDir)$(OutDir)"
+</PostBuildEvent>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianDebugLib/Engine/DbgEngine.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianDebugLib/Engine/DbgEngine.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -133,6 +133,17 @@
             EntityManager.Remove( aEntity );
         }
 
+        public void AddActiveRomId(uint aRomId)
+        {
+            if (! iActiveRomIds.Contains(aRomId))
+                iActiveRomIds.Add(aRomId);
+        }
+
+        public bool IsActiveRomId(uint aRomId)
+        {
+            return iActiveRomIds.Contains(aRomId);
+        }
+
         public void Prime( TSynchronicity aSynchronicity )
         {
             if ( EngineOperation != null )
@@ -478,6 +489,7 @@
         private readonly DbgEntityDescriptorManager iDescriptorManager;
         private PlatformIdAllocator iIdAllocator = new PlatformIdAllocator();
         private DbgEntityConfig iCurrentConfig = null;
+        private List<uint> iActiveRomIds = new List<uint>();
         private bool iVerbose;
         #endregion
     }
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianDebugLib/Entity/Configurations/DbgEntityConfigManager.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianDebugLib/Entity/Configurations/DbgEntityConfigManager.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -88,6 +88,12 @@
                 }
             }
         }
+
+        public bool IsActiveRomId(uint aRomId)
+        {
+            return iEngine.IsActiveRomId(aRomId);
+        }
+
         #endregion
 
         #region Event handlers
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/Plugins/SLPluginMap/Reader/RVCT/RVCTMapFileReader.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/Plugins/SLPluginMap/Reader/RVCT/RVCTMapFileReader.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -146,7 +146,7 @@
 
         #region Internal constants
         private readonly static Regex KGlobalBaseAddressRegEx = new Regex(
-              "\\s*Image\\$\\$ER_RO\\$\\$Base\\s+0x([A-Fa-f0-9]{8})\\s"+
+              "\\s*Image\\$\\$ER_RO\\$\\$Base.*\\s+0x([A-Fa-f0-9]{8})\\s"+
               "+Number",
              RegexOptions.CultureInvariant
             | RegexOptions.Compiled
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/Plugins/SLPluginMap/Reader/RVCT/RVCTSymbolCreator.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/Plugins/SLPluginMap/Reader/RVCT/RVCTSymbolCreator.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -70,6 +70,10 @@
                 string objectName = groups[ "Binary" ].Value;
                 uint size = uint.Parse( groups[ "Size" ].Value );
                 string symbol = groups[ "Function" ].Value;
+                if (symbol.Contains(KExported))
+                {
+                    symbol = symbol.Substring(0, symbol.LastIndexOf(KExported));
+                }
                 uint offsetAddress = uint.Parse( groups[ "Address" ].Value, System.Globalization.NumberStyles.HexNumber ) - globalBaseAddress;
                 TSymbolType type = TypeByString( typeString );
                 //
@@ -148,6 +152,9 @@
             | RegexOptions.Singleline
             | RegexOptions.Compiled
             );
+
+        private static readonly string KExported = " (EXPORTED)";
+
         #endregion
 
 		#region Internal methods
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/QueryAPI/SymbolQueryAPI.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianSymbolLib/QueryAPI/SymbolQueryAPI.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -65,6 +65,10 @@
         public Symbol Lookup( uint aAddress, out SymbolCollection aCollection )
         {
             aCollection = null;
+            if (aAddress < 0x400000) // Process run area is above this address
+            {
+                return null;
+            }
 
             // First check with the relocated/activated symbol collections,
             // i.e. RAM-loaded code that has been fixed up.
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianUtils/TextUtilities/Writers/AsyncTextWriters.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianUtils/TextUtilities/Writers/AsyncTextWriters.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -432,7 +432,7 @@
 		#region Helper methods - body
 		public void WriteBodyBegin()
 		{
-			WriteLine( "<BODY>" );
+			WriteLine( "<BODY onload=\"initialize();\" onmousemove=\"mouseMove(event);\">" );
 		}
 
 		public void WriteBodyEnd()
--- a/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianUtils/Threading/MultiThreadedProcessor.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/PerfToolsSharedLibraries/Engine/SymbianUtils/Threading/MultiThreadedProcessor.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -137,6 +137,8 @@
             int count = System.Environment.ProcessorCount;
             for ( int i = 0; i < count; i++ )
             {
+                System.Console.WriteLine("Creating thread " + i);
+
                 string name = string.Format( "Processor Thread {0:d3} {1:d8}", i, r.Next() );
                 Thread t = new Thread( new ThreadStart( RunThread ) );
                 t.IsBackground = true;
@@ -203,8 +205,20 @@
                     // Will be done by "Start"
                 }
 
-                // Always release the blocker to "unblock" the main thread
-                ReleaseBlocker();
+                try
+                {
+
+                    // Always release the blocker to "unblock" the main thread
+                    ReleaseBlocker();
+
+                }
+                catch (Exception e)
+                {
+                    //eerlehto 
+                    System.Console.WriteLine("{0} Caught an exception from ReleaseBlocker!", e);                     
+                    //throw;
+                    
+                }
             }
         }
 
@@ -214,20 +228,27 @@
         }
 
         private void DestroyBlocker()
-        {
-            if ( iSynchronousBlocker != null )
+        {            
+            lock (iBlockerLock)
             {
-                iSynchronousBlocker.Close();
-                iSynchronousBlocker = null;
+                if (iSynchronousBlocker != null)
+                {
+                    iSynchronousBlocker.Close();
+                    iSynchronousBlocker = null;
+            
+                }
             }
         }
 
         private void ReleaseBlocker()
-        {
-            if ( iSynchronousBlocker != null )
+        {            
+            lock (iBlockerLock)
             {
-                iSynchronousBlocker.Set();
-            }
+                if (iSynchronousBlocker != null)
+                {
+                    iSynchronousBlocker.Set();
+                }
+            }            
         }
 
         protected virtual void OnEvent( TEvent aEvent )
@@ -243,6 +264,12 @@
             {
                 base.CleanupManagedResources();
             }
+            catch (Exception e)
+            {
+                System.Console.WriteLine("Caught an exception inCleanupManagedResources!");
+                System.Console.WriteLine(e.StackTrace);
+                throw;
+            }
             finally
             {
                 DestroyBlocker();
@@ -256,6 +283,7 @@
         private BlockingQueue<T> iQueue = new BlockingQueue<T>();
         private List<Thread> iThreads = new List<Thread>();
         private ManualResetEvent iSynchronousBlocker = null;
+        private Object iBlockerLock = new Object();
         private TSynchronicity iSynchronicity = TSynchronicity.ESynchronous;
         #endregion
     }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/ReleaseNotes.txt	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,96 @@
+===============================================================================
+
+RELEASE NOTES - CrashAnalyser
+RELEASED 20th April 2010 
+
+
+
+===============================================================================
+
+Product Description:
+====================
+CrashAnalyser is a multi-format crash log decoder.
+CrashAnalyser has three UIs:
+ * Console UI - Used inside CrashAnalyser Carbide Plugin.
+ * Server EXE - Used on the MobileCrash server for automated decoding.
+ * Native UI - Used for internal development only, Carbide UI is recommended solution for end users.
+
+Main Features:
+==============
+- Decoding D_EXC crash logs
+- Decoding MobileCrash crash logs
+- Decoding Symbian ELF crash logs
+
+===============================================================================
+
+What's New 
+===================
+Version 1.0.9 20th April 2010 
+--------------------------------
+  - Changes in selge.ini file handling
+  - Added support for kern-common and kern-heap panic descriptions
+  - Added .nosync files and NOKIA START/END tags to support SF releasing
+  - Changed hash-code calculation so that similar crashes have same hash code
+  - Support for paged out code segments added
+
+===============================================================================
+
+Installation Notes:
+===================
+- [None]
+
+===============================================================================
+
+System Requirements:
+====================
+Basic Requirements:
+- .NET 2.0 Framework
+
+===============================================================================
+
+Compatibility Issues:
+=====================
+- [None]
+
+===============================================================================
+
+Known Issues:
+=============
+
+Bugs
+----
+- [None]
+
+
+===============================================================================
+
+Version History:
+================
+Version 1.0.8 12th March 2010
+  - VersionHistory.bin support
+  - Many other features
+
+Version 1.0.6 04th December 2009 
+--------------------------------
+  - Weekly division in ServerExe's archiving
+  - Fix for ELF core dump exceptions are not decoded to XML correctly
+  - Fix for SVC register is not supported
+  - Fix for CrashAnalyser does not generate stacks from ELF file to XML
+  - Workaround for cspr typo in MobileCrash
+  - Improve progress reporting while importing files (Console)
+  - Fix for some code segment warnings/messages are incorrectly formatted
+  - Fix for XML input files that contain meta-data directories are not handled properly
+
+Version 1.0.5 - 06th November 2009
+----------------------------------
+  -Added this releasenote
+  -Fix for race condition in symbol handling (affects all UIs)
+  -Fix in callstack hash creation ( Jira CRA-366 ) (affects ServerExe)
+  -Fix for stability when using broken mapfiles zip ( Jira CRA-361 ) (affects all UIs)
+
+
+===============================================================================
+
+Copyright © 2009 Nokia Corporation. All rights reserved. 
+Nokia and Nokia Connecting People are registered trademarks of 
+Nokia Corporation.
--- a/crashanalysercmd/UI/Common/Engine/CrashAnalyserEngine.csproj	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/Common/Engine/CrashAnalyserEngine.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -3,7 +3,7 @@
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
+    <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>{F9BFDB22-A976-43AD-BD9D-8495C6CCFD80}</ProjectGuid>
     <OutputType>Library</OutputType>
--- a/crashanalysercmd/UI/Console/CrashAnalyserConsole.csproj.user	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/Console/CrashAnalyserConsole.csproj.user	Wed Apr 21 09:51:02 2010 +0300
@@ -1,7 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <StartWorkingDirectory>C:\Tool Demo Files\2. Crash Data\File71 - Sys Core Dump\User</StartWorkingDirectory>
-    <StartArguments>-plugin CRASH_ANALYSIS -input input.xml  -PROGRESS</StartArguments>
+    <StartWorkingDirectory>D:\CA_current\UI\Console\bin\Debug\</StartWorkingDirectory>
+    <StartArguments>-plugin CRASH_ANALYSIS -input bug.xml  -PROGRESS</StartArguments>
     <StartAction>Project</StartAction>
     <StartProgram>d:\My Documents\Visual Studio 2008\Apps\CrashAnalyser\App\bin\Debug\CrashAnalyserConsole.exe</StartProgram>
   </PropertyGroup>
--- a/crashanalysercmd/UI/Console/CrashAnalyserConsole.sln	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/Console/CrashAnalyserConsole.sln	Wed Apr 21 09:51:02 2010 +0300
@@ -13,8 +13,12 @@
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "PerfToolsSharedLibraries", "PerfToolsSharedLibraries", "{22667FF0-120A-480C-BF4D-1E4939C89F22}"
 EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "3rd Party", "3rd Party", "{1E4DE160-DF3B-4DB3-B221-C524E69596AE}"
+EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Engine", "Engine", "{D8DAA636-2E62-4CDC-98A9-29523D296FEC}"
 EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UI", "UI", "{2AA08696-7506-4F27-AA81-C244DD2B67B7}"
+EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UI", "UI", "{C1B06919-BC36-4022-8E2D-823676328271}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianUtils", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianUtils\SymbianUtils.csproj", "{F6F4CE69-E73A-4917-97ED-B114DE90C92E}"
@@ -43,6 +47,10 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DExcPlugin", "..\..\Libraries\File Formats\Plugins\DExcPlugin\DExcPlugin.csproj", "{B75A7857-BA19-4A73-AACD-9F4D60C048F7}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileCrashPlugin", "..\..\Libraries\File Formats\Plugins\MobileCrashPlugin\MobileCrashPlugin.csproj", "{C80A53E9-DE4C-4D81-83EF-1515702D3616}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileCrashLib", "..\..\Libraries\File Formats\Engines\MobileCrashLib\MobileCrashLib.csproj", "{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}"
+EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrashAnalyserEngine", "..\Common\Engine\CrashAnalyserEngine.csproj", "{F9BFDB22-A976-43AD-BD9D-8495C6CCFD80}"
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Engine", "Engine", "{973F4051-745D-469A-A07C-D5C33B77F119}"
@@ -54,6 +62,10 @@
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CAPluginCrashAnalysis", "..\Plugins\CAPluginCrashAnalyser\CAPluginCrashAnalysis.csproj", "{29D6410E-E739-4810-A582-501C807D12F0}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrashXmlPlugin", "..\..\Libraries\File Formats\Plugins\CrashXmlPlugin\CrashXmlPlugin.csproj", "{284BC871-EAE3-4D8F-8DFF-6C953E1B119D}"
+	ProjectSection(ProjectDependencies) = postProject
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA} = {00DA206A-9DA2-4B2E-A376-05CAB2881ABA}
+		{C4F270B5-5B50-4270-9CDC-1616D9645365} = {C4F270B5-5B50-4270-9CDC-1616D9645365}
+	EndProjectSection
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianDebugLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianDebugLib\SymbianDebugLib.csproj", "{796DD82D-9E7D-476D-B700-086CD9A893DA}"
 EndProject
@@ -65,6 +77,14 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CLPluginImg", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianCodeLib\Plugins\CLPluginSymbianOS\CLPluginImg.csproj", "{3878E434-8B76-4127-BA89-68A90DA6E69A}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CLPluginNokiaFpsx", "..\..\..\PerfToolsSharedLibraries\Engine\NokiaFpsxCLPlugin\CLPluginNokiaFpsx.csproj", "{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NokiaFlashUpdateLibrary", "..\..\..\PerfToolsSharedLibraries\Engine\NokiaFlashUpdateLib\NokiaFlashUpdateLib.vcproj", "{971A1AD8-4142-422F-A196-7E07DC73D60A}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "NokiaArmDisassemblyEngine", "..\..\..\PerfToolsSharedLibraries\Engine\NokiaArmDisassembler\Dll\NokiaArmDisassemblerLib.vcproj", "{3C0CECE5-1C07-463F-A216-4E5D13750CC9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NokiaArmDisassembler", "..\..\..\PerfToolsSharedLibraries\Engine\NokiaArmDisassembler\Plugin\NokiaArmDisassembler.csproj", "{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}"
+EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Common", "Common", "{1F52FD03-0D26-4947-A53D-BC89DEA43335}"
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Stack", "Stack", "{401E7776-BFBE-49D5-A4C5-7B10CDC6A2F0}"
@@ -87,10 +107,30 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SLPluginSymbol", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianSymbolLib\Plugins\SLPluginSymbol\SLPluginSymbol.csproj", "{E921F00D-5F82-454E-9CBE-59381C48781C}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SLPluginZip", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianSymbolLib\Plugins\SLPluginZip\SLPluginZip.csproj", "{BDD4E602-AC36-473A-98D0-FE062213548A}"
+EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Trace", "Trace", "{A3FB325F-A50E-472D-9AF1-103D0D926C4A}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianOSTLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianOSTLib\SymbianOSTLib.csproj", "{3A44B9C6-1248-4739-AF09-E6961F85B1C5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianTraceLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianTraceLib\SymbianTraceLib.csproj", "{295412DA-8B51-4820-B6B0-63EA3949E3CB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DbgEntMetaDataConfig", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianDebugLib\Plugins\DbgEntMetaDataConfig\DbgEntMetaDataConfig.csproj", "{E50DC404-4F0E-4E90-B548-AB737A862C70}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DbgEntKeyBindings", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianDebugLib\Plugins\DbgEntKeyBindings\DbgEntKeyBindings.csproj", "{A7036A24-40DF-4349-AE25-2CFB54743728}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DbgEntTrace", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianDebugLib\Plugins\DbgEntTrace\DbgEntTrace.csproj", "{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}"
+EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianSymbolLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianSymbolLib\SymbianSymbolLib.csproj", "{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianZipLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianZipLib\SymbianZipLib.csproj", "{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CoreDumpLib", "..\..\Libraries\File Formats\Engines\CoreDumpLib\CoreDumpLib.csproj", "{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CoreDumpPlugin", "..\..\Libraries\File Formats\Plugins\CoreDumpPlugin\CoreDumpPlugin.csproj", "{925A3566-593D-475F-BD50-EAFEC70F2C2D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ErrorLibraryLib", "..\..\Libraries\Engine\ErrorLibrary\ErrorLibraryLib.csproj", "{C4F270B5-5B50-4270-9CDC-1616D9645365}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -211,6 +251,26 @@
 		{B75A7857-BA19-4A73-AACD-9F4D60C048F7}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{B75A7857-BA19-4A73-AACD-9F4D60C048F7}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{B75A7857-BA19-4A73-AACD-9F4D60C048F7}.Release|Win32.ActiveCfg = Release|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Any CPU.Build.0 = Release|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Win32.ActiveCfg = Release|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Any CPU.Build.0 = Release|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Win32.ActiveCfg = Release|Any CPU
 		{F9BFDB22-A976-43AD-BD9D-8495C6CCFD80}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{F9BFDB22-A976-43AD-BD9D-8495C6CCFD80}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{F9BFDB22-A976-43AD-BD9D-8495C6CCFD80}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -281,6 +341,46 @@
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Win32.ActiveCfg = Release|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Any CPU.Build.0 = Release|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Win32.ActiveCfg = Release|Any CPU
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Any CPU.ActiveCfg = Debug|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Mixed Platforms.Build.0 = Debug|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Win32.ActiveCfg = Debug|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Win32.Build.0 = Debug|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Any CPU.ActiveCfg = Release|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Mixed Platforms.ActiveCfg = Release|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Mixed Platforms.Build.0 = Release|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Win32.ActiveCfg = Release|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Win32.Build.0 = Release|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Any CPU.ActiveCfg = Debug|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Mixed Platforms.Build.0 = Debug|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Win32.ActiveCfg = Debug|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Win32.Build.0 = Debug|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Any CPU.ActiveCfg = Release|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Mixed Platforms.ActiveCfg = Release|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Mixed Platforms.Build.0 = Release|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Win32.ActiveCfg = Release|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Win32.Build.0 = Release|Win32
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Any CPU.Build.0 = Release|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Win32.ActiveCfg = Release|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -361,6 +461,66 @@
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Win32.ActiveCfg = Release|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Win32.ActiveCfg = Release|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Win32.ActiveCfg = Release|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Any CPU.Build.0 = Release|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Win32.ActiveCfg = Release|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Any CPU.Build.0 = Release|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Win32.ActiveCfg = Release|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Any CPU.Build.0 = Release|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Win32.ActiveCfg = Release|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Any CPU.Build.0 = Release|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Win32.ActiveCfg = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -371,6 +531,46 @@
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Win32.ActiveCfg = Release|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Win32.ActiveCfg = Release|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94}.Release|Win32.ActiveCfg = Release|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Release|Any CPU.Build.0 = Release|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D}.Release|Win32.ActiveCfg = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Any CPU.Build.0 = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Win32.ActiveCfg = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
@@ -380,10 +580,13 @@
 		{973F4051-745D-469A-A07C-D5C33B77F119} = {C1B06919-BC36-4022-8E2D-823676328271}
 		{4FC4A8C4-0E18-4180-AAE5-050640F2A583} = {C1B06919-BC36-4022-8E2D-823676328271}
 		{D8DAA636-2E62-4CDC-98A9-29523D296FEC} = {22667FF0-120A-480C-BF4D-1E4939C89F22}
+		{1E4DE160-DF3B-4DB3-B221-C524E69596AE} = {22667FF0-120A-480C-BF4D-1E4939C89F22}
+		{2AA08696-7506-4F27-AA81-C244DD2B67B7} = {22667FF0-120A-480C-BF4D-1E4939C89F22}
+		{268835BA-8944-490B-8675-31E7F85176A5} = {604FB4F9-0C98-4D20-BF2E-C4D0898B1B7F}
 		{87A37075-51F6-4D05-9D22-756AEA611F60} = {604FB4F9-0C98-4D20-BF2E-C4D0898B1B7F}
 		{4B8FB099-C9F4-442B-B132-7F0DD4D77E07} = {604FB4F9-0C98-4D20-BF2E-C4D0898B1B7F}
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC} = {268835BA-8944-490B-8675-31E7F85176A5}
-		{268835BA-8944-490B-8675-31E7F85176A5} = {87A37075-51F6-4D05-9D22-756AEA611F60}
+		{C4F270B5-5B50-4270-9CDC-1616D9645365} = {268835BA-8944-490B-8675-31E7F85176A5}
 		{2732FBB1-E515-4DDA-A70A-B34CE869CB21} = {D8DAA636-2E62-4CDC-98A9-29523D296FEC}
 		{1F52FD03-0D26-4947-A53D-BC89DEA43335} = {D8DAA636-2E62-4CDC-98A9-29523D296FEC}
 		{0287281D-42F7-480E-B46F-487A10F4C612} = {D8DAA636-2E62-4CDC-98A9-29523D296FEC}
@@ -393,30 +596,45 @@
 		{796DD82D-9E7D-476D-B700-086CD9A893DA} = {2732FBB1-E515-4DDA-A70A-B34CE869CB21}
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054} = {2732FBB1-E515-4DDA-A70A-B34CE869CB21}
 		{51C62A41-992E-4158-8A32-228ED49BF71D} = {2732FBB1-E515-4DDA-A70A-B34CE869CB21}
+		{E50DC404-4F0E-4E90-B548-AB737A862C70} = {2732FBB1-E515-4DDA-A70A-B34CE869CB21}
+		{A7036A24-40DF-4349-AE25-2CFB54743728} = {2732FBB1-E515-4DDA-A70A-B34CE869CB21}
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C} = {2732FBB1-E515-4DDA-A70A-B34CE869CB21}
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8} = {4A28BB65-9912-4573-B354-771A185A9942}
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1} = {1F52FD03-0D26-4947-A53D-BC89DEA43335}
 		{56ECA873-7D1D-45E7-A583-A5388D753321} = {1F52FD03-0D26-4947-A53D-BC89DEA43335}
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6} = {1F52FD03-0D26-4947-A53D-BC89DEA43335}
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8} = {1F52FD03-0D26-4947-A53D-BC89DEA43335}
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E} = {1F52FD03-0D26-4947-A53D-BC89DEA43335}
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71} = {1F52FD03-0D26-4947-A53D-BC89DEA43335}
 		{A041EDFE-A120-4100-A0A6-FB1984D80815} = {0287281D-42F7-480E-B46F-487A10F4C612}
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8} = {0287281D-42F7-480E-B46F-487A10F4C612}
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77} = {0287281D-42F7-480E-B46F-487A10F4C612}
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB} = {0287281D-42F7-480E-B46F-487A10F4C612}
 		{3878E434-8B76-4127-BA89-68A90DA6E69A} = {0287281D-42F7-480E-B46F-487A10F4C612}
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C} = {0287281D-42F7-480E-B46F-487A10F4C612}
+		{971A1AD8-4142-422F-A196-7E07DC73D60A} = {0287281D-42F7-480E-B46F-487A10F4C612}
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9} = {0287281D-42F7-480E-B46F-487A10F4C612}
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D} = {0287281D-42F7-480E-B46F-487A10F4C612}
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3} = {401E7776-BFBE-49D5-A4C5-7B10CDC6A2F0}
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49} = {401E7776-BFBE-49D5-A4C5-7B10CDC6A2F0}
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20} = {401E7776-BFBE-49D5-A4C5-7B10CDC6A2F0}
 		{19F87778-8320-42AC-BD00-FD23FC4D2828} = {401E7776-BFBE-49D5-A4C5-7B10CDC6A2F0}
 		{17F16EB8-BCD2-4272-B5F0-BC0E4B143CDD} = {4B8FB099-C9F4-442B-B132-7F0DD4D77E07}
 		{891FA26E-4F8F-4CF5-A638-A2B5D101846B} = {4B8FB099-C9F4-442B-B132-7F0DD4D77E07}
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA} = {17F16EB8-BCD2-4272-B5F0-BC0E4B143CDD}
+		{F5D7CFC3-05DE-438C-B6BC-5AEE98B77D94} = {17F16EB8-BCD2-4272-B5F0-BC0E4B143CDD}
 		{B75A7857-BA19-4A73-AACD-9F4D60C048F7} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
 		{284BC871-EAE3-4D8F-8DFF-6C953E1B119D} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
+		{925A3566-593D-475F-BD50-EAFEC70F2C2D} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
 		{F9BFDB22-A976-43AD-BD9D-8495C6CCFD80} = {973F4051-745D-469A-A07C-D5C33B77F119}
 		{29D6410E-E739-4810-A582-501C807D12F0} = {4FC4A8C4-0E18-4180-AAE5-050640F2A583}
 		{2E619377-8639-49F9-9494-4FAD25CBC05E} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
 		{E921F00D-5F82-454E-9CBE-59381C48781C} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
+		{BDD4E602-AC36-473A-98D0-FE062213548A} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5} = {A3FB325F-A50E-472D-9AF1-103D0D926C4A}
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB} = {A3FB325F-A50E-472D-9AF1-103D0D926C4A}
 	EndGlobalSection
 EndGlobal
--- a/crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.csproj	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -3,7 +3,7 @@
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
+    <ProductVersion>9.0.21022</ProductVersion>
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}</ProjectGuid>
     <OutputType>Exe</OutputType>
@@ -12,6 +12,8 @@
     <AssemblyName>CrashAnalyserServerExe</AssemblyName>
     <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
     <FileAlignment>512</FileAlignment>
+    <StartupObject>
+    </StartupObject>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
@@ -67,6 +69,10 @@
       <Project>{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}</Project>
       <Name>CrashItemLib</Name>
     </ProjectReference>
+    <ProjectReference Include="..\..\Libraries\File Formats\Engines\MobileCrashLib\MobileCrashLib.csproj">
+      <Project>{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}</Project>
+      <Name>MobileCrashLib</Name>
+    </ProjectReference>
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
--- a/crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.csproj.user	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.csproj.user	Wed Apr 21 09:51:02 2010 +0300
@@ -1,8 +1,19 @@
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     <StartWorkingDirectory>C:\Tool Demo Files\2. Crash Data\File63\Bins\</StartWorkingDirectory>
     <StartArguments>-PROGRESS</StartArguments>
     <StartAction>Project</StartAction>
     <StartProgram>d:\My Documents\Visual Studio 2008\Apps\CrashAnalyser\App\bin\Debug\CrashAnalyserServerExe.exe</StartProgram>
   </PropertyGroup>
+  <PropertyGroup>
+    <PublishUrlHistory />
+    <InstallUrlHistory />
+    <SupportUrlHistory />
+    <UpdateUrlHistory />
+    <BootstrapperUrlHistory />
+    <ErrorReportUrlHistory />
+    <FallbackCulture>en-US</FallbackCulture>
+    <VerifyUploadedFiles>false</VerifyUploadedFiles>
+  </PropertyGroup>
 </Project>
\ No newline at end of file
--- a/crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.sln	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/CrashServer/CrashAnalyserServerExe.sln	Wed Apr 21 09:51:02 2010 +0300
@@ -48,6 +48,9 @@
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileCrashPlugin", "..\..\Libraries\File Formats\Plugins\MobileCrashPlugin\MobileCrashPlugin.csproj", "{C80A53E9-DE4C-4D81-83EF-1515702D3616}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MobileCrashLib", "..\..\Libraries\File Formats\Engines\MobileCrashLib\MobileCrashLib.csproj", "{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}"
+	ProjectSection(ProjectDependencies) = postProject
+		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC} = {A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}
+	EndProjectSection
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianDebugLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianDebugLib\SymbianDebugLib.csproj", "{796DD82D-9E7D-476D-B700-086CD9A893DA}"
 EndProject
@@ -108,15 +111,32 @@
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SymbianZipLib", "..\..\..\PerfToolsSharedLibraries\Engine\SymbianZipLib\SymbianZipLib.csproj", "{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CrashInfoFilePlugin", "..\..\Libraries\File Formats\Plugins\CrashInfoFilePlugin\CrashInfoFilePlugin.csproj", "{38D6EA43-2CA2-4637-9487-B3D5B5938558}"
+	ProjectSection(ProjectDependencies) = postProject
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA} = {00DA206A-9DA2-4B2E-A376-05CAB2881ABA}
+		{C4F270B5-5B50-4270-9CDC-1616D9645365} = {C4F270B5-5B50-4270-9CDC-1616D9645365}
+	EndProjectSection
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlFilePlugin", "..\..\Libraries\File Formats\Plugins\XmlFilePlugin\XmlFilePlugin.csproj", "{1D07751A-83EA-4D7B-8B2B-C41305A799E0}"
+	ProjectSection(ProjectDependencies) = postProject
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA} = {00DA206A-9DA2-4B2E-A376-05CAB2881ABA}
+	EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test tools", "Test tools", "{46929EFA-6EF9-448D-AEED-F119E07095CD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlValidator", "..\Test tools\XmlValidator\XmlValidator.csproj", "{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ErrorLibraryLib", "..\..\Libraries\Engine\ErrorLibrary\ErrorLibraryLib.csproj", "{C4F270B5-5B50-4270-9CDC-1616D9645365}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
 		Debug|Mixed Platforms = Debug|Mixed Platforms
 		Debug|Win32 = Debug|Win32
+		Debug|x86 = Debug|x86
 		Release|Any CPU = Release|Any CPU
 		Release|Mixed Platforms = Release|Mixed Platforms
 		Release|Win32 = Release|Win32
+		Release|x86 = Release|x86
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
@@ -124,371 +144,481 @@
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Release|Any CPU.Build.0 = Release|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Release|Win32.ActiveCfg = Release|Any CPU
+		{C723AA40-3F22-4E77-92FB-437C5C2F0BD8}.Release|x86.ActiveCfg = Release|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Release|Any CPU.Build.0 = Release|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Release|Win32.ActiveCfg = Release|Any CPU
+		{F6F4CE69-E73A-4917-97ED-B114DE90C92E}.Release|x86.ActiveCfg = Release|Any CPU
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Debug|Any CPU.ActiveCfg = Debug|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Debug|Mixed Platforms.Build.0 = Debug|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Debug|Win32.ActiveCfg = Debug|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Debug|Win32.Build.0 = Debug|Win32
+		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Debug|x86.ActiveCfg = Debug|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Release|Any CPU.ActiveCfg = Release|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Release|Mixed Platforms.ActiveCfg = Release|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Release|Mixed Platforms.Build.0 = Release|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Release|Win32.ActiveCfg = Release|Win32
 		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Release|Win32.Build.0 = Release|Win32
+		{34CD3FB3-ABA7-4FA9-A30A-ACA8973039F8}.Release|x86.ActiveCfg = Release|Win32
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Release|Any CPU.Build.0 = Release|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Release|Win32.ActiveCfg = Release|Any CPU
+		{925A4DB0-85BD-4157-933F-5BFB93FB4DA1}.Release|x86.ActiveCfg = Release|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{56ECA873-7D1D-45E7-A583-A5388D753321}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Release|Any CPU.Build.0 = Release|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{56ECA873-7D1D-45E7-A583-A5388D753321}.Release|Win32.ActiveCfg = Release|Any CPU
+		{56ECA873-7D1D-45E7-A583-A5388D753321}.Release|x86.ActiveCfg = Release|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Release|Any CPU.Build.0 = Release|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Release|Win32.ActiveCfg = Release|Any CPU
+		{A041EDFE-A120-4100-A0A6-FB1984D80815}.Release|x86.ActiveCfg = Release|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Release|Any CPU.Build.0 = Release|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Release|Win32.ActiveCfg = Release|Any CPU
+		{3E11A9E3-3D9B-46CC-BF1D-F4AB0D6A34C3}.Release|x86.ActiveCfg = Release|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Release|Any CPU.Build.0 = Release|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Release|Win32.ActiveCfg = Release|Any CPU
+		{D3BDEB23-43DA-4534-986B-F6B3DD05EBF6}.Release|x86.ActiveCfg = Release|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Release|Any CPU.Build.0 = Release|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Release|Win32.ActiveCfg = Release|Any CPU
+		{2BE440C1-E5F6-4F5D-B533-0F745CAA65A8}.Release|x86.ActiveCfg = Release|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Release|Any CPU.Build.0 = Release|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Release|Win32.ActiveCfg = Release|Any CPU
+		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC}.Release|x86.ActiveCfg = Release|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Any CPU.Build.0 = Release|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|Win32.ActiveCfg = Release|Any CPU
+		{C80A53E9-DE4C-4D81-83EF-1515702D3616}.Release|x86.ActiveCfg = Release|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Any CPU.Build.0 = Release|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|Win32.ActiveCfg = Release|Any CPU
+		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA}.Release|x86.ActiveCfg = Release|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Release|Any CPU.Build.0 = Release|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Release|Win32.ActiveCfg = Release|Any CPU
+		{796DD82D-9E7D-476D-B700-086CD9A893DA}.Release|x86.ActiveCfg = Release|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Release|Any CPU.Build.0 = Release|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Release|Win32.ActiveCfg = Release|Any CPU
+		{EB93FD74-17C6-44B2-8384-4D58DC210F77}.Release|x86.ActiveCfg = Release|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Release|Any CPU.Build.0 = Release|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Release|Win32.ActiveCfg = Release|Any CPU
+		{A9B6DAEB-B3B8-4A73-9200-6C1FCDE3E3AB}.Release|x86.ActiveCfg = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Any CPU.Build.0 = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|Win32.ActiveCfg = Release|Any CPU
+		{3878E434-8B76-4127-BA89-68A90DA6E69A}.Release|x86.ActiveCfg = Release|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Any CPU.Build.0 = Release|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|Win32.ActiveCfg = Release|Any CPU
+		{26A14AD0-F517-45DB-874F-C71A0A8D4D5C}.Release|x86.ActiveCfg = Release|Any CPU
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Any CPU.ActiveCfg = Debug|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Mixed Platforms.Build.0 = Debug|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Win32.ActiveCfg = Debug|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|Win32.Build.0 = Debug|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Debug|x86.ActiveCfg = Debug|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Any CPU.ActiveCfg = Release|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Mixed Platforms.ActiveCfg = Release|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Mixed Platforms.Build.0 = Release|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Win32.ActiveCfg = Release|Win32
 		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|Win32.Build.0 = Release|Win32
+		{971A1AD8-4142-422F-A196-7E07DC73D60A}.Release|x86.ActiveCfg = Release|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Any CPU.ActiveCfg = Debug|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Mixed Platforms.Build.0 = Debug|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Win32.ActiveCfg = Debug|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|Win32.Build.0 = Debug|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Debug|x86.ActiveCfg = Debug|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Any CPU.ActiveCfg = Release|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Mixed Platforms.ActiveCfg = Release|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Mixed Platforms.Build.0 = Release|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Win32.ActiveCfg = Release|Win32
 		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|Win32.Build.0 = Release|Win32
+		{3C0CECE5-1C07-463F-A216-4E5D13750CC9}.Release|x86.ActiveCfg = Release|Win32
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Any CPU.Build.0 = Release|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|Win32.ActiveCfg = Release|Any CPU
+		{BE471BC2-DD55-46B9-80FA-ADE4C325EA1D}.Release|x86.ActiveCfg = Release|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Release|Any CPU.Build.0 = Release|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Release|Win32.ActiveCfg = Release|Any CPU
+		{E9ADC66E-C2DB-4CDD-B443-9053B6FC1054}.Release|x86.ActiveCfg = Release|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{51C62A41-992E-4158-8A32-228ED49BF71D}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Release|Any CPU.Build.0 = Release|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{51C62A41-992E-4158-8A32-228ED49BF71D}.Release|Win32.ActiveCfg = Release|Any CPU
+		{51C62A41-992E-4158-8A32-228ED49BF71D}.Release|x86.ActiveCfg = Release|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Release|Any CPU.Build.0 = Release|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Release|Win32.ActiveCfg = Release|Any CPU
+		{EF406EC5-04F3-45CA-BD01-686ACBD91C49}.Release|x86.ActiveCfg = Release|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Release|Any CPU.Build.0 = Release|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Release|Win32.ActiveCfg = Release|Any CPU
+		{958A6E2A-FEC7-4A7D-AB1D-58E368A08F20}.Release|x86.ActiveCfg = Release|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Release|Any CPU.Build.0 = Release|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Release|Win32.ActiveCfg = Release|Any CPU
+		{19F87778-8320-42AC-BD00-FD23FC4D2828}.Release|x86.ActiveCfg = Release|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Release|Any CPU.Build.0 = Release|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Release|Win32.ActiveCfg = Release|Any CPU
+		{2E619377-8639-49F9-9494-4FAD25CBC05E}.Release|x86.ActiveCfg = Release|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Release|Any CPU.Build.0 = Release|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Release|Win32.ActiveCfg = Release|Any CPU
+		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8}.Release|x86.ActiveCfg = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{E921F00D-5F82-454E-9CBE-59381C48781C}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Any CPU.Build.0 = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|Win32.ActiveCfg = Release|Any CPU
+		{E921F00D-5F82-454E-9CBE-59381C48781C}.Release|x86.ActiveCfg = Release|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Any CPU.Build.0 = Release|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|Win32.ActiveCfg = Release|Any CPU
+		{BDD4E602-AC36-473A-98D0-FE062213548A}.Release|x86.ActiveCfg = Release|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Any CPU.Build.0 = Release|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|Win32.ActiveCfg = Release|Any CPU
+		{3A44B9C6-1248-4739-AF09-E6961F85B1C5}.Release|x86.ActiveCfg = Release|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Any CPU.Build.0 = Release|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|Win32.ActiveCfg = Release|Any CPU
+		{295412DA-8B51-4820-B6B0-63EA3949E3CB}.Release|x86.ActiveCfg = Release|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Any CPU.Build.0 = Release|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|Win32.ActiveCfg = Release|Any CPU
+		{E50DC404-4F0E-4E90-B548-AB737A862C70}.Release|x86.ActiveCfg = Release|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Any CPU.Build.0 = Release|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|Win32.ActiveCfg = Release|Any CPU
+		{A7036A24-40DF-4349-AE25-2CFB54743728}.Release|x86.ActiveCfg = Release|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Any CPU.Build.0 = Release|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|Win32.ActiveCfg = Release|Any CPU
+		{9DE83DBF-827E-4A6D-BEA4-D6CCA7AA874C}.Release|x86.ActiveCfg = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Any CPU.Build.0 = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|Win32.ActiveCfg = Release|Any CPU
+		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC}.Release|x86.ActiveCfg = Release|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Any CPU.Build.0 = Release|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|Win32.ActiveCfg = Release|Any CPU
+		{0B246F3F-62D3-4732-86D2-3EC1F3ADBD71}.Release|x86.ActiveCfg = Release|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Debug|x86.ActiveCfg = Debug|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Release|Any CPU.Build.0 = Release|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Release|Win32.ActiveCfg = Release|Any CPU
+		{38D6EA43-2CA2-4637-9487-B3D5B5938558}.Release|x86.ActiveCfg = Release|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Release|Any CPU.Build.0 = Release|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Release|Win32.ActiveCfg = Release|Any CPU
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0}.Release|x86.ActiveCfg = Release|Any CPU
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Debug|Any CPU.ActiveCfg = Debug|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Debug|Mixed Platforms.Build.0 = Debug|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Debug|Win32.ActiveCfg = Debug|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Debug|x86.ActiveCfg = Debug|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Debug|x86.Build.0 = Debug|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Release|Any CPU.ActiveCfg = Release|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Release|Mixed Platforms.ActiveCfg = Release|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Release|Mixed Platforms.Build.0 = Release|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Release|Win32.ActiveCfg = Release|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Release|x86.ActiveCfg = Release|x86
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}.Release|x86.Build.0 = Release|x86
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|Win32.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Any CPU.Build.0 = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|Win32.ActiveCfg = Release|Any CPU
+		{C4F270B5-5B50-4270-9CDC-1616D9645365}.Release|x86.ActiveCfg = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
@@ -502,6 +632,7 @@
 		{87A37075-51F6-4D05-9D22-756AEA611F60} = {604FB4F9-0C98-4D20-BF2E-C4D0898B1B7F}
 		{4B8FB099-C9F4-442B-B132-7F0DD4D77E07} = {604FB4F9-0C98-4D20-BF2E-C4D0898B1B7F}
 		{A5B87D2F-E351-4B03-8BD0-9C8C91EDF1CC} = {268835BA-8944-490B-8675-31E7F85176A5}
+		{C4F270B5-5B50-4270-9CDC-1616D9645365} = {268835BA-8944-490B-8675-31E7F85176A5}
 		{2732FBB1-E515-4DDA-A70A-B34CE869CB21} = {D8DAA636-2E62-4CDC-98A9-29523D296FEC}
 		{1F52FD03-0D26-4947-A53D-BC89DEA43335} = {D8DAA636-2E62-4CDC-98A9-29523D296FEC}
 		{0287281D-42F7-480E-B46F-487A10F4C612} = {D8DAA636-2E62-4CDC-98A9-29523D296FEC}
@@ -538,6 +669,7 @@
 		{00DA206A-9DA2-4B2E-A376-05CAB2881ABA} = {17F16EB8-BCD2-4272-B5F0-BC0E4B143CDD}
 		{C80A53E9-DE4C-4D81-83EF-1515702D3616} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
 		{38D6EA43-2CA2-4637-9487-B3D5B5938558} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
+		{1D07751A-83EA-4D7B-8B2B-C41305A799E0} = {891FA26E-4F8F-4CF5-A638-A2B5D101846B}
 		{2E619377-8639-49F9-9494-4FAD25CBC05E} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
 		{4C6F0ECF-A5DC-47D0-BB11-F06E1C86A6C8} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
 		{E921F00D-5F82-454E-9CBE-59381C48781C} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
@@ -545,5 +677,6 @@
 		{6054A36B-F8A9-406F-B6CE-B531CC2AEADC} = {2A640D76-41DA-44B1-A510-5EF0FA08D542}
 		{3A44B9C6-1248-4739-AF09-E6961F85B1C5} = {A3FB325F-A50E-472D-9AF1-103D0D926C4A}
 		{295412DA-8B51-4820-B6B0-63EA3949E3CB} = {A3FB325F-A50E-472D-9AF1-103D0D926C4A}
+		{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7} = {46929EFA-6EF9-448D-AEED-F119E07095CD}
 	EndGlobalSection
 EndGlobal
--- a/crashanalysercmd/UI/CrashServer/Engine/CACmdLineEngine.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/CrashServer/Engine/CACmdLineEngine.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -43,6 +43,10 @@
 using SymbianUtils;
 using SymbianUtils.Tracer;
 using CrashItemLib.Crash.InfoSW;
+using MobileCrashLib;
+using MobileCrashLib.Parser;
+using MobileCrashLib.Structures.Items;
+using MobileCrashLib.Structures;
 
 namespace CrashAnalyserServerExe.Engine
 {
@@ -92,10 +96,20 @@
                 // will be flagged accordingly within the CACmdLineFileSource object.
                 TryToPrimeSources();
 
+                // Try to the ROM ID and file type (i.e. crash, 
+                // registration msg, report) out of the crash files. This information is
+                // used in later phases (e.g. if there are only registration messages in 
+                // source files then we do not have to load symbol files).
+                TryToGetCrashInformation();
+
                 // Next, prime the debug engine will all the debug meta-data inputs.
                 // Again, individual error messages will be associated with each meta-data
                 // input.
-                TryToPrimeDbgEngine();
+
+              //  if (SymbolFilesNeeded())
+                {
+                    TryToPrimeDbgEngine();
+                }
 
                 // Next, we invoke the crash engine to process all the crash item sources we
                 // created during the prime step. Exceptions are caught and associated 
@@ -125,6 +139,7 @@
             Trace( "[CA Cmd] - operation complete: " + error );
             return error;
         }
+
         #endregion
 
 		#region Properties
@@ -208,6 +223,7 @@
 
         #region Internal constants
         private const string KCrashItemSinkName = "CRASH INFO FILE";
+        private const string KXmlCrashItemSinkName = "XML CRASH FILE";
         private const string KParamProgress = "-PROGRESS";
         #endregion
 
@@ -218,17 +234,23 @@
             return report;
         }
 
-        private CISink FindSink()
+        private CISink FindSink(bool aUseXmlSink)
         {
             Trace( "[CA Cmd] FindSink() - START" );
             CISink ret = null;
             //
+            string sinkToUse = KCrashItemSinkName;
+            if (aUseXmlSink)
+            {
+                sinkToUse = KXmlCrashItemSinkName;
+            }
+
             CISinkManager sinkManager = iCrashItemEngine.SinkManager;
             foreach ( CISink sink in sinkManager )
             {
                 Trace( "[CA Cmd] FindSink() - found sink: " + sink.Name );
 
-                if ( sink.Name.ToUpper().Contains( KCrashItemSinkName ) )
+                if ( sink.Name.ToUpper().Contains( sinkToUse ) )
                 {
                     ret = sink;
                     break;
@@ -292,6 +314,32 @@
             Trace( "[CA Cmd] TryToPrimeSources() - END" );
         }
 
+        /**
+         * Get important data (i.e. RomId and content type)
+         */
+        private void TryToGetCrashInformation()
+        {
+            Trace("[CA Cmd] TryToGetCrashInformation() - START");
+
+            foreach (CACmdLineFileSource file in iInputs.SourceFiles)
+            {
+                if (file.Source != null)
+                {
+                    byte[] bytes = File.ReadAllBytes(file.File.FullName);
+                    MobileCrashBin bin = new MobileCrashBin(bytes);
+                    MobileCrashData data = new MobileCrashData();
+                    MobileCrashParser parser = new MobileCrashParser(bin, data);
+                    parser.Parse(TSynchronicity.ESynchronous);
+                    data = parser.MobileCrashData;
+                    file.RomId = data.ItemById<MobileCrashItemUint32>(TMobileCrashId.EMobileCrashId_ROMID);
+                    file.ContentType = data.ContentType;
+                }
+            }
+
+            Trace("[CA Cmd] TryToGetCrashInformation() - END");
+
+        }
+
         private void TryToPrimeDbgEngine()
         {
             DbgEngine debugEngine = iDebugEngine;
@@ -303,6 +351,12 @@
             {
                 debugEngine.Clear();
 
+                foreach (CACmdLineFileSource file in iInputs.SourceFiles)
+                {
+                    if (file.RomId != null)
+                        debugEngine.AddActiveRomId(file.RomId.Value);
+                }
+
                 foreach ( CACmdLineFSEntity entry in metaDataFiles )
                 {
                     Trace( "[CA Cmd] Seeding debug meta engine with entry: " + entry.Name );
@@ -448,7 +502,7 @@
         {
             CACmdLineFSEntityList<CACmdLineFileSource> inputFiles = iInputs.SourceFiles;
             //
-            CISink sink = FindSink();
+            CISink sink = FindSink(iInputs.UseXmlSink);
             if ( sink == null )
             {
                 throw new CACmdLineException( "CI Output Plugin Not Available", CACmdLineException.KErrSinkNotAvailable );
@@ -746,6 +800,8 @@
             {
                 if (message.Title == "MobileCrash content type")
                 {
+                    /* We could also decode registrations without but that will cause server to have
+                     * lots of registration only sw versions
                     if (message.Description.Trim() == "registration")
                     {
                         retval = true;
@@ -754,7 +810,9 @@
                     {
                         retval = true;
                     }
-                    else if (message.Description.Trim() == "report")
+                    else */
+
+                    if (message.Description.Trim() == "report")
                     {
                         retval = true;
                     }
@@ -850,6 +908,17 @@
 
         }
 
+        private bool SymbolFilesNeeded()
+        {
+            foreach (CACmdLineFileSource file in iInputs.SourceFiles)
+            {
+                if (file.ContentType == TMobileCrashContentType.EContentTypeException ||
+                    file.ContentType == TMobileCrashContentType.EContentTypePanic)
+                    return true;
+            }
+            return false;
+        }
+
         #endregion
 
         #region Output methods
@@ -862,7 +931,7 @@
         #region From ITracer
         public void Trace( string aMessage )
         {
-            System.Console.WriteLine("MANUAL TRACE:" +aMessage);
+            //System.Console.WriteLine("MANUAL TRACE:" +aMessage);
             iDebugEngine.Trace( aMessage );
         }
 
--- a/crashanalysercmd/UI/CrashServer/Engine/Files/CACmdLineFileSource.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/CrashServer/Engine/Files/CACmdLineFileSource.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -20,6 +20,8 @@
 using System.Collections.Generic;
 using CrashItemLib.Crash.Container;
 using CrashItemLib.Engine.Sources;
+using MobileCrashLib.Structures;
+using MobileCrashLib.Structures.Items;
 
 namespace CrashAnalyserServerExe.Engine
 {
@@ -129,6 +131,19 @@
             get { return iState; }
             set { iState = value; }
         }
+
+        public TMobileCrashContentType ContentType
+        {
+            get { return iContentType; }
+            set { iContentType = value; }
+        }
+
+        public MobileCrashItemUint32 RomId
+        {
+            get { return iRomId; }
+            set { iRomId = value; }
+        }
+
         #endregion
 
         #region Internal methods
@@ -217,6 +232,8 @@
         private CIEngineSource iSource = null;
         private List<OutputEntry> iOutputs = new List<OutputEntry>();
         private CIContainerCollection iContainers = null;
+        private TMobileCrashContentType iContentType = TMobileCrashContentType.EContentTypeUnknown;
+        private MobileCrashItemUint32 iRomId = new MobileCrashItemUint32();
         #endregion
     }
 
--- a/crashanalysercmd/UI/CrashServer/Engine/Inputs/CACmdLineInputParameters.cs	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/CrashServer/Engine/Inputs/CACmdLineInputParameters.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -68,7 +68,7 @@
             iSinkParams = new CISinkSerializationParameters( version, commandLine );
             iSinkParams.DetailLevel = CISinkSerializationParameters.TDetailLevel.EFull;
             iSinkParams.FileExtensionFailed = ".corrupt_ci";
-            iSinkParams.FileExtensionFailed = ".ci";
+            iSinkParams.FileExtensionSuccess = ".ci";
 
             // CHECKME:
             // The output data is written to the same directory as the input file.
@@ -118,7 +118,65 @@
                     {
                         TestWithoutMovingFiles = true;
                     }
+                    if (paramId == "-x")
+                    {
+                        UseXmlSink = true;
+                    }
 
+                    if (paramId == "-c")
+                    {
+                        CITargetPath = paramContent;
+                        System.Console.WriteLine("CITargetPath -c is " +CITargetPath);
+                    }
+                    
+                    // Plain text output
+                    if (paramId == "-p")
+                    {
+                        UseXmlSink = true; // XML sink is used for plain text output
+                        iSinkParams.PlainTextOutput = true;
+                    }
+                    
+                    // Crash files
+                    if (paramId == "-b")
+                    {
+                        FileInfo fi = new FileInfo(paramContent);
+                        CACmdLineFSEntityList<CACmdLineFileSource> fileList = new CACmdLineFSEntityList<CACmdLineFileSource>();
+
+                        if (fi.Exists)
+                        {
+                            fileList.Add(fi);
+                        }
+                        else
+                        {
+                            System.Console.WriteLine("Error: Crash file " + fi.FullName + " does not exist");
+                            retval = false;
+                        }
+                        iSources = fileList;
+                    }
+                    
+                    // Symbol/map/dictionary files
+                    if (paramId == "-m")
+                    {
+                        string[] symbolFileTable = paramContent.Split(',');
+                        CACmdLineFSEntityList<CACmdLineFSEntity> fileList = new CACmdLineFSEntityList<CACmdLineFSEntity>();
+                        foreach (string fileName in symbolFileTable)
+                        {
+                            FileInfo fi = new FileInfo(fileName);
+                            if(fi.Exists)
+                            {
+                                fileList.Add(fi);
+                            }
+                        }
+                        
+                        iMetaData = fileList;
+
+                        if (fileList.Count == 0)
+                        {
+                            System.Console.WriteLine("Error: Invalid symbol/map/dictionary files: " + paramContent);
+                            retval = false;
+                        }
+                    }
+                    
                 }
                 else
                 {
@@ -159,6 +217,18 @@
                 
             }
 
+            if (CITargetPath != string.Empty)
+            {
+                CITargetPath = Path.GetFullPath(CITargetPath);
+                System.Console.WriteLine("CITargetPath used! Resulting files will be created to " +CITargetPath);
+                
+                if (!Directory.Exists(CITargetPath))
+                {
+                    Directory.CreateDirectory(CITargetPath);
+                }
+                iSinkParams.OutputDirectory = new DirectoryInfo(CITargetPath);
+            }
+
             //make sure paths are absolute
             iArchivePath = Path.GetFullPath(iArchivePath);
             iSkippedPath = Path.GetFullPath(iSkippedPath);
@@ -209,11 +279,15 @@
         private void PrintCommandHelp()
         {
             System.Console.WriteLine("Command line parameters:");
-            System.Console.WriteLine("-a C:\\folderarchive\\   --Location where to move files to permanent archive");
-            System.Console.WriteLine("-s C:\\folder\\skipped\\  --Location whére to put skipped files to wait reprocessing");
-            System.Console.WriteLine("-f --Force decoding even if files are without symbols");
-            System.Console.WriteLine("-t --Test mode, will not move any files, ignores -a and -s");
-
+            System.Console.WriteLine("-a C:\\folderarchive\\   Location where to move files to permanent archive.");
+            System.Console.WriteLine("-s C:\\folder\\skipped\\  Location where to put skipped files to wait reprocessing.");
+            System.Console.WriteLine("-c C:\\folder\\output\\ Location where to put output files. Defaults to current working dir.");
+            System.Console.WriteLine("-b crashfile.bin   Crash file to be decoded.");
+            System.Console.WriteLine("-m crash.symbol,crash.map   Symbol/map/dictionary files.");
+            System.Console.WriteLine("-f Force decoding even if files are without symbols.");
+            System.Console.WriteLine("-t Test mode, will not move any files, ignores -a and -s.");
+            System.Console.WriteLine("-x Prints output in Xml format");
+            System.Console.WriteLine("-p Prints output in plain text format");
         }
 
         #endregion
@@ -230,6 +304,7 @@
         public CACmdLineFSEntityList<CACmdLineFileSource> SourceFiles
         {
             get { return iSources; }
+            set { iSources = value; }
         }
 
         public CACmdLineFSEntityList<CACmdLineFSEntity> MetaDataFiles
@@ -252,6 +327,11 @@
             get { return iErrorPath; }
             set { iErrorPath = value; }
         }
+        public string CITargetPath
+        {
+            get { return iCITargetPath; }
+            set { iCITargetPath = value; }
+        }  
         public bool DecodeWithoutSymbols
         {
             get { return iDecodeWithoutSymbols; }
@@ -262,6 +342,11 @@
             get { return iTestWithoutMovingFiles; }
             set { iTestWithoutMovingFiles = value; }
         }
+        public bool UseXmlSink
+        {
+            get { return iUseXmlSink; }
+            set { iUseXmlSink = value; }
+        }
 
         #endregion
 
@@ -307,10 +392,12 @@
         private CACmdLineFSEntityList<CACmdLineFSEntity> iMetaData = new CACmdLineFSEntityList<CACmdLineFSEntity>();
         private CACmdLineFSEntityList<CACmdLineFileSource> iSources = new CACmdLineFSEntityList<CACmdLineFileSource>();
 
+        private string iCITargetPath = string.Empty;  
         private string iArchivePath = string.Empty;       
         private string iSkippedPath = string.Empty;      
         private string iErrorPath = string.Empty;    
         private bool iTestWithoutMovingFiles = false;
+        private bool iUseXmlSink = false;
         private bool iDecodeWithoutSymbols = false;
 
 
--- a/crashanalysercmd/UI/Graphical/build.xml	Tue Feb 23 17:05:24 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-<project name="ActiveObjectAnalyser" default="build" basedir=".">
-                      
-  <description>BootMonitorFTPlugin build file</description>
-
-  <target name="compile">
-    <exec executable="cmd.exe" failonerror="true">
-      <arg value="/c"/>
-      <arg value="devenv CrashAnalyserUi.sln /clean"/>
-    </exec>
-    <exec executable="cmd.exe" failonerror="true">
-      <arg value="/c"/>
-      <arg value="devenv CrashAnalyserUi.sln /build Debug"/>
-    </exec>
-  </target>
-  
-  <target name="zip">
-  
-  	<tstamp>
-		   <format property="timestamp" pattern="dd-MM-yyyy" />
-		</tstamp>
-  	
-  	<delete dir="nightly_builds"/>
-  	<mkdir dir="nightly_builds"/>
-  	
-    <zip destfile="nightly_builds/CrashAnalyser_PC-${timestamp}.zip">
-      <zipfileset dir="bin\Debug"/>
-    </zip>
-  </target>
-
-  <target name="build" depends="compile,zip"/>
-
-</project>
--- a/crashanalysercmd/UI/Plugins/CAPluginCrashAnalyser/CAPluginCrashAnalysis.csproj	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/Plugins/CAPluginCrashAnalyser/CAPluginCrashAnalysis.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -12,6 +12,25 @@
     <AssemblyName>CACrashAnalysis.plugin</AssemblyName>
     <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
     <FileAlignment>512</FileAlignment>
+    <FileUpgradeFlags>
+    </FileUpgradeFlags>
+    <OldToolsVersion>3.5</OldToolsVersion>
+    <UpgradeBackupLocation />
+    <PublishUrl>publish\</PublishUrl>
+    <Install>true</Install>
+    <InstallFrom>Disk</InstallFrom>
+    <UpdateEnabled>false</UpdateEnabled>
+    <UpdateMode>Foreground</UpdateMode>
+    <UpdateInterval>7</UpdateInterval>
+    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
+    <UpdatePeriodically>false</UpdatePeriodically>
+    <UpdateRequired>false</UpdateRequired>
+    <MapFileExtensions>true</MapFileExtensions>
+    <ApplicationRevision>0</ApplicationRevision>
+    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
+    <IsWebBootstrapper>false</IsWebBootstrapper>
+    <UseApplicationTrust>false</UseApplicationTrust>
+    <BootstrapperEnabled>true</BootstrapperEnabled>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
@@ -78,6 +97,28 @@
       <Name>CrashAnalyserEngine</Name>
     </ProjectReference>
   </ItemGroup>
+  <ItemGroup>
+    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
+      <Visible>False</Visible>
+      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
+      <Install>false</Install>
+    </BootstrapperPackage>
+    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
+      <Visible>False</Visible>
+      <ProductName>.NET Framework 3.5 SP1</ProductName>
+      <Install>true</Install>
+    </BootstrapperPackage>
+    <BootstrapperPackage Include="Microsoft.VisualBasic.PowerPacks.10.0">
+      <Visible>False</Visible>
+      <ProductName>Microsoft Visual Basic PowerPacks 10.0</ProductName>
+      <Install>true</Install>
+    </BootstrapperPackage>
+    <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
+      <Visible>False</Visible>
+      <ProductName>Windows Installer 3.1</ProductName>
+      <Install>true</Install>
+    </BootstrapperPackage>
+  </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
        Other similar extension points exist, see Microsoft.Common.targets.
--- a/crashanalysercmd/UI/Plugins/CAPluginCrashAnalyser/CAPluginCrashAnalysis.csproj.user	Tue Feb 23 17:05:24 2010 +0200
+++ b/crashanalysercmd/UI/Plugins/CAPluginCrashAnalyser/CAPluginCrashAnalysis.csproj.user	Wed Apr 21 09:51:02 2010 +0300
@@ -1,6 +1,17 @@
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     <StartWorkingDirectory>
     </StartWorkingDirectory>
   </PropertyGroup>
+  <PropertyGroup>
+    <PublishUrlHistory />
+    <InstallUrlHistory />
+    <SupportUrlHistory />
+    <UpdateUrlHistory />
+    <BootstrapperUrlHistory />
+    <ErrorReportUrlHistory />
+    <FallbackCulture>en-US</FallbackCulture>
+    <VerifyUploadedFiles>false</VerifyUploadedFiles>
+  </PropertyGroup>
 </Project>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/UI/Test tools/XmlValidator/Properties/AssemblyInfo.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("XmlValidator")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Nokia")]
+[assembly: AssemblyProduct("XmlValidator")]
+[assembly: AssemblyCopyright("Copyright © Nokia 2010")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("fa2dbfc4-bfd1-4b73-b7ff-484dfb2565ad")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/UI/Test tools/XmlValidator/Validator.cs	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,73 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Xml;        
+using System.Xml.Schema; 
+	
+
+namespace XmlValidator
+{
+    class Validator
+    {
+
+        static void Main(string[] args)
+        {
+            string dtdFile = string.Empty;
+            string xmlFile = string.Empty;
+
+            if (args.Length == 2)
+            {
+                dtdFile = args[0];
+                xmlFile = args[1];
+            }
+            else
+            {
+                Console.WriteLine("Usage: XmlValidator.exe dtdfile.dtd xmlfile.xml");
+                return;
+            }
+            try
+            {
+                XmlReaderSettings settings = new XmlReaderSettings();
+                settings.ValidationType = ValidationType.DTD;
+                settings.ValidationEventHandler += XmlValidationEventHandler;
+                settings.ProhibitDtd = false;
+                XmlReader xmlReader = XmlReader.Create(xmlFile, settings);
+
+                while (xmlReader.Read())
+                {
+                    // Do nothing
+                }
+                xmlReader.Close();
+            }
+            catch (XmlException /* xmle */)
+            {
+                Console.Write("Not valid");
+                return;
+            }
+            catch (System.IO.FileNotFoundException ex)
+            {
+                Console.WriteLine("File not found!");
+                Console.WriteLine(ex.Message);
+                return;
+            }
+            
+            if (isValid)
+            {
+                Console.Write("Valid");
+            }
+            else
+            {
+                Console.Write("Not valid");
+            }
+
+        }
+
+        public static void XmlValidationEventHandler(object sender, ValidationEventArgs args)
+        {
+            isValid = false;
+//            Console.WriteLine("Validation event\n" + args.Message);
+        }
+        private static bool isValid = true;
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crashanalysercmd/UI/Test tools/XmlValidator/XmlValidator.csproj	Wed Apr 21 09:51:02 2010 +0300
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
+    <ProductVersion>9.0.21022</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{365428BC-90CF-4C71-8F3D-F0EF22A9A0D7}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>XmlValidator</RootNamespace>
+    <AssemblyName>XmlValidator</AssemblyName>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <TargetFrameworkProfile>Client</TargetFrameworkProfile>
+    <FileAlignment>512</FileAlignment>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
+    <PlatformTarget>x86</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
+    <PlatformTarget>x86</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Validator.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file