From 1b97c7836b63db8e7e7513edc02bfc8dcff2c970 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 2 Sep 2025 07:44:58 +0200 Subject: [PATCH 01/13] Bumped version and update Nuget packages --- ENI2/App.config | 4 +- ENI2/ENI2.csproj | 100 +++++++++--------- ENI2/packages.config | 28 ++--- .../bsmd.LockingService.csproj | 4 +- bsmd.LockingService/packages.config | 2 +- bsmd.database/bsmd.database.csproj | 4 +- bsmd.database/packages.config | 2 +- 7 files changed, 72 insertions(+), 72 deletions(-) diff --git a/ENI2/App.config b/ENI2/App.config index 54371fed..4f25599b 100644 --- a/ENI2/App.config +++ b/ENI2/App.config @@ -85,7 +85,7 @@ - + @@ -121,7 +121,7 @@ - + diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj index 81a70170..1b5e80d4 100644 --- a/ENI2/ENI2.csproj +++ b/ENI2/ENI2.csproj @@ -36,8 +36,8 @@ 5.4.0.0 true publish.html - 8 - 7.2.10.8 + 0 + 7.2.11.0 false true true @@ -137,72 +137,72 @@ packages\ExcelDataReader.3.7.0\lib\net462\ExcelDataReader.dll - - packages\log4net.3.1.0\lib\net462\log4net.dll + + packages\log4net.3.2.0\lib\net462\log4net.dll - - packages\Microsoft.Bcl.AsyncInterfaces.9.0.7\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + packages\Microsoft.Bcl.AsyncInterfaces.9.0.8\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll - - packages\Microsoft.Bcl.Cryptography.9.0.7\lib\net462\Microsoft.Bcl.Cryptography.dll + + packages\Microsoft.Bcl.Cryptography.9.0.8\lib\net462\Microsoft.Bcl.Cryptography.dll - - packages\Microsoft.Extensions.DependencyInjection.9.0.7\lib\net462\Microsoft.Extensions.DependencyInjection.dll + + packages\Microsoft.Extensions.DependencyInjection.9.0.8\lib\net462\Microsoft.Extensions.DependencyInjection.dll - - packages\Microsoft.Extensions.DependencyInjection.Abstractions.9.0.7\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + packages\Microsoft.Extensions.DependencyInjection.Abstractions.9.0.8\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll - - packages\Microsoft.Extensions.Logging.9.0.7\lib\net462\Microsoft.Extensions.Logging.dll + + packages\Microsoft.Extensions.Logging.9.0.8\lib\net462\Microsoft.Extensions.Logging.dll - - packages\Microsoft.Extensions.Logging.Abstractions.9.0.7\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + + packages\Microsoft.Extensions.Logging.Abstractions.9.0.8\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll - - packages\Microsoft.Extensions.Options.9.0.7\lib\net462\Microsoft.Extensions.Options.dll + + packages\Microsoft.Extensions.Options.9.0.8\lib\net462\Microsoft.Extensions.Options.dll - - packages\Microsoft.Extensions.Primitives.9.0.7\lib\net462\Microsoft.Extensions.Primitives.dll + + packages\Microsoft.Extensions.Primitives.9.0.8\lib\net462\Microsoft.Extensions.Primitives.dll packages\Microsoft.Office.Interop.Excel.15.0.4795.1001\lib\net20\Microsoft.Office.Interop.Excel.dll True - - packages\PDFsharp-MigraDoc.6.2.0\lib\netstandard2.0\MigraDoc.DocumentObjectModel.dll + + packages\PDFsharp-MigraDoc.6.2.1\lib\netstandard2.0\MigraDoc.DocumentObjectModel.dll - - packages\PDFsharp-MigraDoc.6.2.0\lib\netstandard2.0\MigraDoc.Rendering.dll + + packages\PDFsharp-MigraDoc.6.2.1\lib\netstandard2.0\MigraDoc.Rendering.dll - - packages\PDFsharp-MigraDoc.6.2.0\lib\netstandard2.0\MigraDoc.RtfRendering.dll + + packages\PDFsharp-MigraDoc.6.2.1\lib\netstandard2.0\MigraDoc.RtfRendering.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.BarCodes.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.BarCodes.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.Charting.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.Charting.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.Cryptography.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.Cryptography.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.Quality.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.Quality.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.Shared.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.Shared.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.Snippets.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.Snippets.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.System.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.System.dll - - packages\PDFsharp.6.2.0\lib\netstandard2.0\PdfSharp.WPFonts.dll + + packages\PDFsharp.6.2.1\lib\netstandard2.0\PdfSharp.WPFonts.dll @@ -214,12 +214,12 @@ packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.119.0\lib\net46\System.Data.SQLite.dll - - packages\System.Diagnostics.DiagnosticSource.9.0.7\lib\net462\System.Diagnostics.DiagnosticSource.dll + + packages\System.Diagnostics.DiagnosticSource.9.0.8\lib\net462\System.Diagnostics.DiagnosticSource.dll - - packages\System.Formats.Asn1.9.0.7\lib\net462\System.Formats.Asn1.dll + + packages\System.Formats.Asn1.9.0.8\lib\net462\System.Formats.Asn1.dll @@ -234,8 +234,8 @@ - - packages\System.Security.Cryptography.Pkcs.9.0.7\lib\net462\System.Security.Cryptography.Pkcs.dll + + packages\System.Security.Cryptography.Pkcs.9.0.8\lib\net462\System.Security.Cryptography.Pkcs.dll diff --git a/ENI2/packages.config b/ENI2/packages.config index 252b901b..abc33c26 100644 --- a/ENI2/packages.config +++ b/ENI2/packages.config @@ -2,27 +2,27 @@ - - - - - - - - - + + + + + + + + + - - + + - - + + - + \ No newline at end of file diff --git a/bsmd.LockingService/bsmd.LockingService.csproj b/bsmd.LockingService/bsmd.LockingService.csproj index d56c3074..8613ddac 100644 --- a/bsmd.LockingService/bsmd.LockingService.csproj +++ b/bsmd.LockingService/bsmd.LockingService.csproj @@ -46,8 +46,8 @@ 4 - - ..\ENI2\packages\log4net.3.1.0\lib\net462\log4net.dll + + ..\ENI2\packages\log4net.3.2.0\lib\net462\log4net.dll diff --git a/bsmd.LockingService/packages.config b/bsmd.LockingService/packages.config index 362ab867..d8dcf353 100644 --- a/bsmd.LockingService/packages.config +++ b/bsmd.LockingService/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/bsmd.database/bsmd.database.csproj b/bsmd.database/bsmd.database.csproj index a947e177..677f19ba 100644 --- a/bsmd.database/bsmd.database.csproj +++ b/bsmd.database/bsmd.database.csproj @@ -89,8 +89,8 @@ False - - ..\ENI2\packages\log4net.3.1.0\lib\net462\log4net.dll + + ..\ENI2\packages\log4net.3.2.0\lib\net462\log4net.dll ..\ENI2\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll diff --git a/bsmd.database/packages.config b/bsmd.database/packages.config index fbfa0890..2f8e7b39 100644 --- a/bsmd.database/packages.config +++ b/bsmd.database/packages.config @@ -1,5 +1,5 @@  - + \ No newline at end of file From 3dd24395241feeca0e0badf88c176f7de8f5d5b9 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 2 Sep 2025 07:47:12 +0200 Subject: [PATCH 02/13] Untrack LockingService.csproj.user --- .../bsmd.LockingService.csproj.user | 38 ------------------- 1 file changed, 38 deletions(-) delete mode 100644 bsmd.LockingService/bsmd.LockingService.csproj.user diff --git a/bsmd.LockingService/bsmd.LockingService.csproj.user b/bsmd.LockingService/bsmd.LockingService.csproj.user deleted file mode 100644 index f74e64f4..00000000 --- a/bsmd.LockingService/bsmd.LockingService.csproj.user +++ /dev/null @@ -1,38 +0,0 @@ - - - - true - Debug|Any CPU - - - - - - - - - - - - - - CurrentPage - True - False - False - False - - - - - - - - - True - True - - - - - \ No newline at end of file From 96ddbd5e0a112d26b87f7b5f331e1e980c4dfae6 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 2 Sep 2025 08:15:29 +0200 Subject: [PATCH 03/13] Adjusted column width on overview page --- ENI2/DetailViewControls/OverViewDetailControl.xaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ENI2/DetailViewControls/OverViewDetailControl.xaml b/ENI2/DetailViewControls/OverViewDetailControl.xaml index 9df80aea..cffcf2ec 100644 --- a/ENI2/DetailViewControls/OverViewDetailControl.xaml +++ b/ENI2/DetailViewControls/OverViewDetailControl.xaml @@ -267,7 +267,7 @@ SelectionMode="Extended" AutoGenerateColumns="False" MouseDoubleClick="dataGrid_ - + From cf81ec0225e9c199e6ec6befc43c202158172616 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 2 Sep 2025 09:54:19 +0200 Subject: [PATCH 05/13] Added default waste descriptions again for some waste types --- ENI2/Excel/ExcelUtil.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ENI2/Excel/ExcelUtil.cs b/ENI2/Excel/ExcelUtil.cs index 73dc9b96..87ada2ab 100644 --- a/ENI2/Excel/ExcelUtil.cs +++ b/ENI2/Excel/ExcelUtil.cs @@ -1239,7 +1239,7 @@ namespace ENI2.Excel { if ((reader.Mode == ExcelReader.CountryMode.DE) && waste.IsDashWasteCode) { - // waste.WasteDescription = "-"; + waste.WasteDescription = "-"; // NOP } else if (reader.Mode == ExcelReader.CountryMode.DK) From 8a836ed09648bc3d47df856e98d8b1c140cdc7ba Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 2 Sep 2025 09:54:44 +0200 Subject: [PATCH 06/13] Applied some rules to the ready to send dialog (preselected messages) --- ENI2/DetailRootControl.xaml.cs | 8 ++- .../OverViewDetailControl.xaml.cs | 55 ++++++++++++++----- .../WasteDetailControl.xaml.cs | 6 +- bsmd.database/Message.cs | 6 ++ 4 files changed, 57 insertions(+), 18 deletions(-) diff --git a/ENI2/DetailRootControl.xaml.cs b/ENI2/DetailRootControl.xaml.cs index a108449e..bf2eb99b 100644 --- a/ENI2/DetailRootControl.xaml.cs +++ b/ENI2/DetailRootControl.xaml.cs @@ -799,9 +799,15 @@ namespace ENI2 else aMessage.ErrorCount = null; if (violations.Count > 0) + { aMessage.ViolationCount = violations.Count; + aMessage.PositionViolationCount = violations.Count(v => !v.Identifier.IsNullOrEmpty()); + } else - aMessage.ViolationCount = null; + { + aMessage.ViolationCount = null; + aMessage.PositionViolationCount = null; + } string messageGroup = this.MessageGroupForMessage(aMessage); diff --git a/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs b/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs index 25ddadc5..6b1bcd4c 100644 --- a/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs +++ b/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs @@ -836,25 +836,52 @@ namespace ENI2.DetailViewControls { SelectImportClassesDialog sicd = new SelectImportClassesDialog(); List readyToSendMessages = new List(); - + + // Evaluate a number of criteria for messages that should not be preselected for sending + bool addToSend; foreach (Message message in this.Messages) - { - // Evaluate a number of criteria for messages that should not be preselected for sending - if (((message.ViolationCount ?? 0) > 0) || ((message.ErrorCount ?? 0) > 0)) continue; // these need more work - if (Message.IsListClass(message.MessageNotificationClass) && (message.Elements.Count == 0)) continue; // avoid suspend on empty list classes - if ((message.MessageNotificationClass == Message.NotificationClass.HAZA) && !XtraSendLogic.ShouldSendMessage(message)) continue; - if ((message.MessageNotificationClass == Message.NotificationClass.HAZD) && !XtraSendLogic.ShouldSendMessage(message)) continue; - if (message.MessageNotificationClass == Message.NotificationClass.BPOL) + { + addToSend = true; + + if ((message.ErrorCount ?? 0) > 0) continue; + switch(message.MessageNotificationClass) { - if (message.Elements.Count > 0) - { - if (message.Elements[0] is BPOL bpol) + case NotificationClass.HAZA: + addToSend = XtraSendLogic.ShouldSendMessage(message) && ((message.ViolationCount ?? 0) == 0); break; + case NotificationClass.HAZD: + addToSend = XtraSendLogic.ShouldSendMessage(message) && ((message.ViolationCount ?? 0) == 0); break; + case NotificationClass.BPOL: + if (message.Elements.Count > 0) { - if (bpol.PortOfItineraries.Count == 0) continue; + if (message.Elements[0] is BPOL bpol) + { + if (bpol.PortOfItineraries.Count == 0) addToSend = false; + } + if((message.ViolationCount ?? 0) > 0) addToSend = false; } - } + break; + case NotificationClass.WAS: + if ((message.PositionViolationCount ?? 0) > 0) addToSend = false; + break; + case NotificationClass.WAS_RCPT: + addToSend = false; + break; + case NotificationClass.NOA_NOD: + if ((message.PositionViolationCount ?? 0) > 0) addToSend = false; + break; + case NotificationClass.INFO: + if (Core.PoC == "DEHAM") addToSend = false; + else addToSend = ((message.ViolationCount ?? 0) > 0); + break; + default: + if((message.ViolationCount ?? 0) > 0) addToSend = false; + if(Message.IsListClass(message.MessageNotificationClass) && (message.Elements.Count == 0)) addToSend = false; + + break; } - readyToSendMessages.Add(message.MessageNotificationClass); + + if(addToSend) + readyToSendMessages.Add(message.MessageNotificationClass); } sicd.Messages = this.Messages; diff --git a/ENI2/DetailViewControls/WasteDetailControl.xaml.cs b/ENI2/DetailViewControls/WasteDetailControl.xaml.cs index a30426d9..6ba99603 100644 --- a/ENI2/DetailViewControls/WasteDetailControl.xaml.cs +++ b/ENI2/DetailViewControls/WasteDetailControl.xaml.cs @@ -94,7 +94,7 @@ namespace ENI2.DetailViewControls } } - public async override void Initialize() + public override void Initialize() { base.Initialize(); @@ -185,7 +185,7 @@ namespace ENI2.DetailViewControls #region Waste receipt grid event handler - private async void DataGridWasteReceipt_CreateRequested() + private void DataGridWasteReceipt_CreateRequested() { EditWasteReceiptDialog epd = new EditWasteReceiptDialog(); epd.WAS_RCPT = new WAS_RCPT(); @@ -236,7 +236,7 @@ namespace ENI2.DetailViewControls } } - private async void DataGridWasteReceipt_EditRequested(DatabaseEntity obj) + private void DataGridWasteReceipt_EditRequested(DatabaseEntity obj) { EditWasteReceiptDialog epd = new EditWasteReceiptDialog(); epd.WAS_RCPT = obj as WAS_RCPT; diff --git a/bsmd.database/Message.cs b/bsmd.database/Message.cs index 1e56b788..8f32a139 100644 --- a/bsmd.database/Message.cs +++ b/bsmd.database/Message.cs @@ -431,6 +431,12 @@ namespace bsmd.database /// public int? ViolationCount { get; set; } + /// + /// Number of violations during last validation that have the "identifier" set and are thus detected violations + /// from underlying list elements + /// + public int? PositionViolationCount { get; set; } + /// /// Number of errors during last validation /// From c1e450c18b56a98fcff042b8df5eb5038f20be92 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Tue, 2 Sep 2025 10:02:04 +0200 Subject: [PATCH 07/13] Updated assemblies to 7.2.11 --- bsmd.database/Properties/AssemblyProductInfo.cs | 2 +- bsmd.database/Properties/AssemblyProjectInfo.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bsmd.database/Properties/AssemblyProductInfo.cs b/bsmd.database/Properties/AssemblyProductInfo.cs index 22b429ad..ed222e86 100644 --- a/bsmd.database/Properties/AssemblyProductInfo.cs +++ b/bsmd.database/Properties/AssemblyProductInfo.cs @@ -2,6 +2,6 @@ [assembly: AssemblyCompany("schick Informatik")] [assembly: AssemblyProduct("BSMD NSW interface")] -[assembly: AssemblyInformationalVersion("7.2.10")] +[assembly: AssemblyInformationalVersion("7.2.11")] [assembly: AssemblyCopyright("Copyright © 2014-2025 schick Informatik")] [assembly: AssemblyTrademark("")] \ No newline at end of file diff --git a/bsmd.database/Properties/AssemblyProjectInfo.cs b/bsmd.database/Properties/AssemblyProjectInfo.cs index 2f779855..a32a612b 100644 --- a/bsmd.database/Properties/AssemblyProjectInfo.cs +++ b/bsmd.database/Properties/AssemblyProjectInfo.cs @@ -1,4 +1,4 @@ using System.Reflection; -[assembly: AssemblyVersion("7.2.10.*")] +[assembly: AssemblyVersion("7.2.11.*")] From 92998c2add4d43729ac86eba98497576e5e293d0 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Thu, 4 Sep 2025 07:41:47 +0200 Subject: [PATCH 08/13] Bugfixes and adjustments --- ENI2/DetailViewControls/OverViewDetailControl.xaml.cs | 2 +- bsmd.database/INFO.cs | 5 ++--- bsmd.database/WAS_RCPT.cs | 7 +++++++ 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs b/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs index 6b1bcd4c..4b3f3f57 100644 --- a/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs +++ b/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs @@ -871,7 +871,7 @@ namespace ENI2.DetailViewControls break; case NotificationClass.INFO: if (Core.PoC == "DEHAM") addToSend = false; - else addToSend = ((message.ViolationCount ?? 0) > 0); + else addToSend = !((message.ViolationCount ?? 0) > 0); break; default: if((message.ViolationCount ?? 0) > 0) addToSend = false; diff --git a/bsmd.database/INFO.cs b/bsmd.database/INFO.cs index 8f7b46bd..294a5e6e 100644 --- a/bsmd.database/INFO.cs +++ b/bsmd.database/INFO.cs @@ -216,9 +216,8 @@ namespace bsmd.database errors.Add(RuleEngine.CreateError(ValidationCode.IMPLAUSIBLE, "PortArea", this.PortArea, "INFO", "", this.Tablename)); } else - { - if(this.MessageCore.PoC != "DEHAM") - errors.Add(RuleEngine.CreateError(ValidationCode.PORTAREA, "PortArea", this.PortArea ?? "", "INFO", "", this.Tablename)); + { + errors.Add(RuleEngine.CreateError(ValidationCode.PORTAREA, "PortArea", this.PortArea ?? "", "INFO", "", this.Tablename)); } if(DeplacementSummerDraught_TNE.HasValue) diff --git a/bsmd.database/WAS_RCPT.cs b/bsmd.database/WAS_RCPT.cs index 178c0bfd..9abfad47 100644 --- a/bsmd.database/WAS_RCPT.cs +++ b/bsmd.database/WAS_RCPT.cs @@ -146,6 +146,13 @@ namespace bsmd.database }; this.WasteReceived.Add(foundWasteReceived); } + else + { + if (!foundWasteReceived.AmountWasteReceived_MTQ.HasValue) + { + foundWasteReceived.AmountWasteReceived_MTQ = 0; + } + } if (foundWasteReceived.WasteDescription.IsNullOrEmpty()) { From f58e9e707958081ea8255d9b3f33d043f5c490cb Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Thu, 4 Sep 2025 07:42:17 +0200 Subject: [PATCH 09/13] Version bump to 7.2.11.1 --- ENI2/ENI2.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj index 1b5e80d4..1b2ef669 100644 --- a/ENI2/ENI2.csproj +++ b/ENI2/ENI2.csproj @@ -36,8 +36,8 @@ 5.4.0.0 true publish.html - 0 - 7.2.11.0 + 1 + 7.2.11.1 false true true From 6eb265ea5585aad1e3db50eb509205a5e27dc358 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Wed, 10 Sep 2025 11:51:04 +0200 Subject: [PATCH 10/13] Fixed a bug, updated hazard goods list and bumped version to 7.2.11.2 --- .../OverViewDetailControl.xaml.cs | 7 +- ENI2/ENI2.csproj | 4 +- misc/GEFAHRGUTLISTE_STAND_2025_09_09.csv | 299 ++++++++++++++++++ misc/GEFAHRGUTLISTE_STAND_2025_09_09.xlsx | Bin 0 -> 58638 bytes 4 files changed, 305 insertions(+), 5 deletions(-) create mode 100644 misc/GEFAHRGUTLISTE_STAND_2025_09_09.csv create mode 100644 misc/GEFAHRGUTLISTE_STAND_2025_09_09.xlsx diff --git a/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs b/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs index 4b3f3f57..bb4f12af 100644 --- a/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs +++ b/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs @@ -843,7 +843,8 @@ namespace ENI2.DetailViewControls { addToSend = true; - if ((message.ErrorCount ?? 0) > 0) continue; + if ((message.ErrorCount ?? 0) > 0) continue; // skip selection if there are any errors left + switch(message.MessageNotificationClass) { case NotificationClass.HAZA: @@ -861,8 +862,8 @@ namespace ENI2.DetailViewControls } break; case NotificationClass.WAS: - if ((message.PositionViolationCount ?? 0) > 0) addToSend = false; - break; + // if ((message.PositionViolationCount ?? 0) > 0) addToSend = false; + break; // WAS will be selected even if there are (any) violations left case NotificationClass.WAS_RCPT: addToSend = false; break; diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj index 1b2ef669..a4ce66a9 100644 --- a/ENI2/ENI2.csproj +++ b/ENI2/ENI2.csproj @@ -36,8 +36,8 @@ 5.4.0.0 true publish.html - 1 - 7.2.11.1 + 2 + 7.2.11.2 false true true diff --git a/misc/GEFAHRGUTLISTE_STAND_2025_09_09.csv b/misc/GEFAHRGUTLISTE_STAND_2025_09_09.csv new file mode 100644 index 00000000..7c0af677 --- /dev/null +++ b/misc/GEFAHRGUTLISTE_STAND_2025_09_09.csv @@ -0,0 +1,299 @@ +Beschreibung;Gefahr;HAZARD_ENUM;FP;FP_ENUM;15.19?;Typ;IMSBC;MHB;IMSBC_MHB;Group;IMSBC_HAZ;UN-Nr.;IMO-Cl.;IBC;POLLUTION_CATEGORY_ENUM;MARPOL;IGC;FP_IBC;Bemerkung +1,3 Pentadiene / Piperylene;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Acetic acid ;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Z);2;;;; +Acetic acid glacial;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Z);2;;;; +Acetone ;;;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +Acrylonitrile (ACN) ;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Alcoholic beverages, n.o.s. (Wine);;;;; ;IBC;;;;;;;;x (Z);2;;;; +Alkanes (C6-C9);S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (X);0;;;; +n-Alkanens (C10+) ;;;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +Alkylate;;;<60°C;2; ;MARPOL;;;;;;;;;;x;;6; +Alumina hydrate / Aluminiumhydroxid;;;;;;IMSBC;x;y;;A/B;;;;;;;;; +alpha-Methylstyrene ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Ammonia aqueous (28% or less);S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);1;;;NF; +Ammonia / Anhydrous / Ammoniak;;;;; ;IGC;;;;;;1005;2.3;;;;x;; +Ammoniak Liquid 24,5% ;S/P;2;;;Ja;IBC;;;;;;;;x (Y);1;;;; +Ammonium Nitrate Fertilizer ;;;;; ;IMSBC;x;;;B;1;2067;5.1;;;;;; +Ammonium Nitrate with not more than 0,2% total;;;;; ;IMSBC;x;;;B;1;1942;5.1;;;;;; +Ammonium Polyphosphate Solution (APP) ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Ammonium Sulphate;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Ammonium nitrate solution (93% or less) ;S/P;2;NF;0;Nein;IBC;;;;;;;;x (Y);1;;;; +Ammonium thiosulphate solution (60% or less);S/P;2;NF;0;Nein;IBC;;;;;;;;x (Z);2;;;; +Aniline ;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +Anthracene Oil;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Anthracite / Coal / Kohle;;;;; ;IMSBC;x;y;;A/B;2;;;;;;;;Gruppe: B (und A) +ATRES / RAT / Atmospheric Residues / Residues (petroleum) atmospheric (APS Bottoms Resid A);;;>60°C;1;;MARPOL;;;;;;;;;;x;;; +AVGAS / Aviation Gasoline / Flugbenzin;;;;;;MARPOL;;;;;;;;;;x;;; +BALED RDF;;;;;;IMSBC;x ;y;;B;1;;;;;;;; +Base Oil / Lubricating oil / SN150/ SN500 / SN900 / BS20 / NYTEX 4700 / T9 / T600 / T150 ANR / VISOM 4 / Ultra S4 / Bright Stock / QHVI4 / QHVI8 / VHVI-4 = DISTILLATES (PETROLEUM) / HYDROTREATED HEAVY PARAFFINIC,;;;>60°C;1; ;MARPOL;;;;;;;;;;x;;; +Benzene / Benzol;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;-11; +Biodiesel / FAME - Fatty acid methyl esters;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Bitumen ;;;>60°C;1;;MARPOL;;;;;;;;;;x;;; +Blei in Blöcken / Lead Ingots;;;;;;;;;;;;;;;;;;; kein Gefahrgut! Aussage Herr Jnassen Rhenus Midgard Nordenham (tel. 21.07.2021) +Butan;;;;;;IGC;;;;;;1011;2.1;;;;x;; +Butene / Buthylen;;;;;;IGC;;;;;;1012;2.1;;;;x;; +Butyl acrylate (all isomers);S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Calcined clay / Kalzinierter Ton;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +C9 Petroleum Resin;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Calcium Ammonium Nitrate 27% N / CAN (in Big BAG);;;;; ;;;;;;;;;;;;;;Keine Anmeldung lt. Aussage von Wasserschutzpolizeit Hamburg +Calcium Ammonium Nitrate 27% N / CAN (in BULK);;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Calcium Chloride Solution;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +CARBON BLACK FEEDSTOCK / D8 / ANTHRACENE OIL;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;x;;;nach Sicherheitsdatenblatt fragen kann IBC oder Marpol sein +Carbon Black Oil Propylene Oxide;;;;;;MARPOL;;;;;;;;;;x;;; +Carbon Dioxide;;;;; ;IGC;;;;;;1013;2.2;;;;x;; +Caromax 28 ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Caustic potash / Potassium hydroxide solution / Kalilauge ;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);1;;;; +Caustic soda / Sodium hydroxide solution / Natronlauge;S/P;2;NF;0; Ja;IBC;;;;;;;;x (Y);1;;;; +China Clay;;;;; ;;;;;;;;;;;;;;Keine Anmeldung lt. Aussage von Herrn Schlicht (S+B) in Absprache mit Wasserschutz +Clay / TON;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Coal / Kohle / Anthracite;;;;;;IMSBC;x;y;;A/B;2;;;;;;;;Gruppe: B (und A) +Coal Tar ,;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Coal Tar Pitch (Flüssig);S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Coal Tar Pitch / Steinkohlenteerpech (FEST);;;;;;IMSBC;x;y;;B;1;;;;;;;; +Coconut oil ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +COKE BREEZE / Koksgrus;;;;; ;IMSBC;x;;;A;0;;;;;;;; +Used cooking oil (mit Triglycerides, C16-C18 and C18 unsaturated) ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Used cooking oil (wenn Triglycerides nicht ausdrücklich ausgewiesen) ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Copper concentrates ;;;;; ;IMSBC;x;;;A;0;3077;9;;;;;; +Copper concentrates (Metal Sulphide Concentrates);;;;; ;IMSBC;x;y;;A/B;2;;;;;;;; +Corn Oil , ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Creosete Oil ;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (X);0;;;; +Crude Benzene and mixtures having 10% benzene or more ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Cumene / Isopropylbenzene ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (y);1;;;; +Cutterstock / Cutter;;;;; ;MARPOL;;;;;;;;;;x;;; +Cyclohexane;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +DDGS Pellets / Dried Distiller Grains with solubles;;;;;;;;;;;;;;;;;;;Keine Anmeldung +DINP DIALKYL / Diisononylphthalat;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Distillate Hydrocrackers / DHC;;;;; ;MARPOL;;;;;;;;;;x;;;Bottoms Raw marterial for chemical industry Feedingstock for mineral oil industry +DIAMMONIUM PHOSPHATE / DAP;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +1,1- Dichloroethane;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +DIRECT REDUCED IRON;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +"Distillate / D10V / LVG / D8C / D10C / D10JUB / D 600 / D 700 / D 2000 +";;;;; ;MARPOL;;;;;;;;;;x;;; +DOLOMITE;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C, evtl. Ist auch Dolomitic quicklime gemeint, Nachfragen +Dolomitic quicklime;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +Eisen II Sulphat;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Eisensilikat granulat / Iron Silicate Granules;;;;;;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Energy Rich Fuel / Neste Renewable Diesel / NExBTL / HVO / Hydrotreated Vegetable Oils;;;>60°C;1;;;;;;;;;;;;;;;siehe Bemerkung NExBTL - Renewable Diesel +Ethyl acetate ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +Ethanol / Ethyl alcohol / Grain alcohol / Drinking alcohol;;;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +Ethylene glycol / (Mono-)Ethylenglycol / MEG / Glycol;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Ethyl tert-butyl ether / ETBE ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Ethylene;;;;; ;IGC;;;;;;1038;2.1;;;;X;; +ETHYLENE DICHLORIDE (ETD oder EDC) ;S/P;2;<60°C;2;Ja;IBC;;;;;;1184;;x (Y) ;;;;; +Etibor / BORAX / PENTAHYDRATE CRUDE;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +EXTRAIT / Vacuum gas oil;;;;;;MARPOL;;;;;;;;;;x;;; +Fatty acids, (C16+);P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y) ;;;;; +FAME / Fatty acid methyl esters / Biodiesel ,;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Feed Phosphate / Monocalcium Phosphate;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Ferroalloys / Ferro Silico Mangan / Ferrolegierung (unter 20 %);;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Ferrochrom;;;;;;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Ferrosilicochrom 40 / Ferrosilicon;;;;; ;IMSBC;x;;;B;1;1408;4.3;;;;;; +FERROUS METAL / BORINGS / SHAVINGS / TURNINGS / CUTTINGS;;;;; ;IMSBC;x;;;B;1;2793;4.2;;;;;; +FERTILIZER POTASH (PINK GRANULATED MURIATE OF POTASH);;;;;;IMSBC;x;;;;;;;;;;;; +Fish Meal treated with Antioxidant;;;;; ;IMSBC;x;;;B;1;2216;9;;;;;;wenn Ladehafen Bremen dann Gruppe C und nicht anzumelden +Fishoil;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Fish Silage Protein Concentrate (containing 4% or less formic acid);P;0;NF;0;Nein;IBC;;;;;;;;x (Y) ;;;;; +Fish protein concentrate (containing 4% or less formic acid);P;0;NF;0;Nein;IBC;;;;;;;;x (Z);2;;;; +FLUORSPAR / Flussspat;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +Fly Ash;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Formaldehyde solutions / Formalin ;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +FORMIC ACID (85% or less acid) , ;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +FORMIC ACID (over 85% acid) , ;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Foundry Coke / Gießereikoks /COKE;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Fraction C6 (containing benzene);S/P;2;>60°C;1;;IBC;;;;;;;;x (Y);1;;;; +Gas Condensate;;;<60°C;2; ;MARPOL;;;;;;;;;;x;;; +GAS OIL / Light Cycle Oil;;;>60°C;1; ;MARPOL;;;;;;;;;;x;;; +Gasoline blending stocks / Reformates / Gasoline blending stocks / polymer-fuel /Gasoline blending stocks / alkylates-fuel;;;;; ;MARPOL;;;;;;;;;;x;;; +Glycerine;S;1;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Ground Colemanite;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Gypsum / Gips;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +HCGO / Heavy Cycle Gas Oil;;;;; ;MARPOL;;;;;;;;;;x;;; +HFO ;;;;;;MARPOL;;;;;;;;;;x;;; +Hot roiled coils (HRC);;;;;;;;;;;;;;;;;;;Keine Anmeldung +Holzstämme / Wooden Poles;;;;; ;IMSBC;x;y;;B;1;;;;;;;;Nur wenn unter Deck, nur wenn in Loser Schüttung! +Hydrochloric Acid;S/P;2;NF;0;Nein;IBC;;;;;;;;x (Z);2;;;NF; +Hydrocarbon Wax / PROWAX 312;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (X);0;;;; +Hydro Cracker Bottoms ;;;;;;MARPOL;;;;;;;;;;x;;; +Hydrotreated Renewable Oil ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +IFO380 ;;;>60°C;1; ;MARPOL;;;;;;;;;;x;;; +ILMENITE CLAY / Ilmenit-Ton;;;;; ;IMSBC;x;;;;;;;;;;;;Anmerkung: Ilmenite für Nordenham= Ilmenit Sand - keine Anmeldung als GG +ILMENITE Concentrate;;;;;;IMSBC;x;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +IRON ORE / Eisenerz;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +IRON ORE / Eisenerz (FINES);;;;;;IMSBC;x;;;A;0;;;;;;;;x Kein MHB, ohne UN-/IMO-Nr. senden = geht nur im ENI (JGegis will eine Auswahl) +Iso- and cyclo-alkanes (C12+) / LIAV270 ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Iso- and cyclo-alkanes (C10-C11+) ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Isomerate ;;;<60°C;2;;MARPOL;;;;;;;;;;x ;;; +Isopentane / Pentane ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Isoprene ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +JET A1 / Normal Russian TS-1 / Kerosin / Kerosene;;;<60°C;2; ;MARPOL;;;;;;;;;;X;;; +Kalk ungeschlöscht / LIME UNSLAKED;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +Odourless Kerosene;;;>60°C;1;;MARPOL;;;;;;;;;;x;;; +Kokospalmenschalen;;;;;;IMSBC;x;;;;;;;;;;;;Keine Anmeldung +Lard / Schmalz;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +LCCS / Light Catalytically Cracked Spirit / Light Catalytically Cracked Naphtha;;;;; ;MARPOL;;;;;;;;;;x;;; +Lecithin ;;;;;;IBC;;;;;;;;x (OS);3;;;; +Lead Concentrate ;;;;; ;IMSBC;x;;;A;0;3077;9;;;;;;"Nachfragen ob als Mineral Concentrates (3077/9) oder METAL SULPHIDE CONCENTRATES (MHB) (""Shippers declaration for solid bulk cargos"" anfordern oder auch ""Cargo information for solid bulk cargos""" +Lead Concentrate (Metal Sulphide Concentrates);;;;; ;IMSBC;x;y;;A/B;2;;;;;;;;"Nachfragen ob als Mineral Concentrates (3077/9) oder METAL SULPHIDE CONCENTRATES (MHB) (""Shippers declaration for solid bulk cargos"" anfordern oder auch ""Cargo information for solid bulk cargos""" +Lead Ingots;;;;;;IBC;;;;;;;; ;;;;;Keine Anmeldung lt. Aussage Herr Jnassen Rhenus Midgard Nordenham (tel. 21.07.2021) +Light Vacuum Gas Oil / Petroleum / Petroleum Hydrocarbons;;;;;;MARPOL;;;;;;;;;;x;;; +Ligninsulphonic Acid / Sodium Salt Solution;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Ligno Sulphonate Sodium / Sulphite Lie (Lye) ;P;0;>60°C;1; ;IBC;;;;;;;;x (Z);2;;;; +Lime ;;;;;;IMSBC;x;y;;B;1;;;;;;;; +Limestone / Kalkstein;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Liquid petroleum paraffin, fraction of C14-C17 <2% aromatics);P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Lukoil / Crude Oil;;;;; ;MARPOL;;;;;;;;;;x;;; +Magnesium Chloride Solution;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Metal Sulphide Concentrates / Zink / Blei / Silber;;;;; ;IMSBC;x;y;;A/B;2;;;;;;;; +Methanol / Methyl Alcohol ;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Y) ;;;;; +Methyl Acrylate ;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Methyl Alcohol / Methanol ;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Y) ;;;;; +Methyl Isobutyl Ketone ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +Methylendiphenylisocyanate / MDI / Polymethylene polyphenyl isocyanate ;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (Y) ;;;;; +Methyl Methacrylate Monomer / MMM ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y) ;;;;; +Methyl Tert-Butyl Ether / MTBE ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +Mixed Fatty acid / MFA;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Mixed Xylene ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Molasses;;;NF;0; ;IBC;;;;;;;;x (OS);3;;;;Nicht anmeldepflichtig - Ausnahme: BREMEN (lt Auskunft von Herrn Kraft 09.01.2018)//FÜR BREMEN ANMELDEN ÜBER J GEGIS - an DBH - ohne Visit ID +Monoammonium Phosphate / MAP;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Monocalcium Phosphate / MCP / Futtermittel;;;;; ;IMSBC;x;y;;A/B;2;;;;;;;;Verpackt (IMDG) nicht anmeldepflichtig +Monoethylen Glycol / MEG;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Muriate of potash / Kaliumchlorid;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +n-Alkanes (C10+) / N-Paraffine / Paraffine Normal;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +N-Butanol / N-BUTYL ALCOHOL;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +N-paraffines / N-ALKANES (C10+);P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Naphtha ;;;<60°C;2;;MARPOL;;;;;;;;;;x;;; +Naphthalene / Molten;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Nepherlin Matrix 350 / Sand / Glas / Porzellan;;;;; ;;;;;;;;;;;;;; +NESSOL 40 (Noxious liquid, F, (6) n.o.s White Spirit);P;0;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Nessol D40 (Noxious liquid, F, (8) n.o.s. (siehe Noxious liquid…);P;0;<60°C;2;ja;IBC;;;;;;;; ;;;;; +Nessol D60 ( (contains Iso- und Cycloalkanes (C10-C11) (siehe Noxious liquid...);S/P;2;<60°C;2;Nein;IBC;;;;;;;; ;;;;; +Nessol D100 (contains Iso- und Cycloalkanes (C12+) ;S/P;2;<60°C;2;Nein;IBC;;;;;;;; ;;;;; +NExBTL / Renewable Diesel;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;>60;Risks: nicht zu finden in IBC-Code +Refinery NexTAME / Noxious liquid, F, (4) n.o.s. (trade name ...., contains ....) ;;;<60°C;2;Ja;IBC;;;;;;;;x (X);0;;;; +Nickelconzentrat ;;;;;;IMSBC;x;;;A;0;;;;;;;; +Nitric acid (70% and over) ;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);1;;;; +Nitric acid (less than 70%) ;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);1;;;; +Nonene / All Isomers;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;;siehe auch Propylene Trimer +NON OXY EBOB / Gasoline;;;;;;MARPOL;;;;;;;;;;x;;; +Normal Russian TS-1 Kerosene;;;;;;MARPOL;;;;;;;;;;x;;>23; +"Noxious liquid, NF, (5) n.o.s. / Trade Name (Nexbase 3050;3020;3030,3043) / Containscontains Iso- and cyclo-alkanes ";P;0;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +Noxious liquid, NF(5) n.o.s. LI 220 HF contains White Spirit, low ;P;0;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Noxious liquid, NF(5) n.o.s.(Solvesso 100, contains Alkyl (C3-C4) benzenes) ;P;0;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Noxious liquid, NF, (7) n.o.s. (Exxsol D80 , contains iso-and cycloalkanes(C12+));P;0;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +Noxious liquid, NF, (7) n.o.s. ((EXXSOL D60 und auch Nessol D60, contains iso-and cycloalkanes (C10-C11));P;0;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +Noxious liquid, F, (8) n.o.s. (NESSOL D40 contains Iso- and cycloalkanes (C10-C11)) ;P;0;<60°C;2;ja;IBC;;;;;;;;x (Y);1;;;; +Noxious liquid, F, (11?) n.o.s. (ETHYLOL 95, contains Ethyl alcohol)) ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +NPK Fertilizer / Ammonium Nitrate Based Fertilizer (Non Hazardous);;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Nynas VR5000 / Bitumen;;;>60°C;1;;MARPOL;;;;;;;;;;x;;; +NYTRO TAURUS / Insulating Oil;;;;;;MARPOL;;;;;;;;;;x;;; +Octene;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Odourless Kerosene D70 ;;;;;;MARPOL;;;;;;;;;;x;;; +Olivines / Mineralgemisch gehört Mineralklasse der „Silikate und Germanate“ ;;;;;;;;;;;;;;;;;;;Keine Anmeldung +Olive Stones (crushed) / Seed Cake / Oil Cake;;;;; ;IMSBC;x;;;B;1;1386;4.2;;;;;; +ORTHO-XYLENE ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Palm fatty acid distillate / PFAD;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Palmkernexpellers / pulverisierte Kernschalen;;;;;;;;;;;;;;;;;;;Keine Anmeldung lt. J.Müller Brake - siehe aber auch SEED CAKE +PALM KERNEL OIL / CPKO / Crude Palm Kernel Oil;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +PALM KERNEL STEARIN ;P;0;>60°C;1;Nein;;;;;;;;;;;;;; +PALM MID-FRACTION ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +PALM OIL ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +PALM OLEINE ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Palm stearin ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Palmitic Acid ;;;;; ;IBC;;;;;;;;x (Y);1;;;; +n-Paraffins (C10-C20) / N-ALKANES (C10+);P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Paraffin wax, highly-refined ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Paraffin wax, semi-refined ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +PARA XYLENE ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Pea Coke;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +PEAT MOSS / Torf;;;;; ;IMSBC;x;y;;A/B;2;;;;;;;;Für den Kielkanal nicht anmelden lt. Rücksprache UCA+Herrn Langbein/01.02.2016 => gültig für UCA/S+B +Peat (milled);;;;; ;;;;;;;;;;;;;;Keine Anmeldung lt. Herrn Schütte für NOK nicht anmelden/09.02.2021 +Pentadiene / 1,3-Pentadiene;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Perchloroethylene ;S/P;2;NF;0;Nein;IBC;;;;;;;;x (Y);1;;;; +PETROLEUM COKE / calcined or uncalcined oder Calcined Coke / Petcoke;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +PGI / Propylene Glycol Industrial;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Phenol;S/P;2;>60°C;1;Ja;IBC;;;;;;;;x (Y);1;;;; +Phosphoric Acid ;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Z);2;;;; +PITCH / Pech;;;;; ;IMSBC;x;y;;B;1;;;;;;;;In Bulk/Pitch Verpackt (MSDS = Material Safetey Data Sheet anfordern) +PME / Biodiesel;;;;; ;IBC;;;;;;;;x (Y);1;;;; +Polymethylene Polyphenyl Isocyanate ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Polyolefin (molecular weight 300+) ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Potash / Pottasche;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Potassium Hydroxide Solution / Caustic Potash / Kaliumhydroxidlösung;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);1;;;; +Propylbenzene / all isomers;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Propylene;;;;; ;IGC;;;;;;1077;2.2;;;;x;; +Propylene Dichloride / 1,2-DICHLOROPROPANE;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y) ;;;;; +Propylene Glycol Monoalkyl Ether / DOWANOL PM;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +Propylene Oxide; ;; ;; ;IGC;;;;;;1280;3;;;;x;; +Propylene Oxide;S/P;2;<60°C;2;Ja;IBC;;;;;;;;x (Y);1;;;; +Propylene Tetramer ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (X);0;;;; +Propylene Trimer ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Pyrolysis Fuel Oil;;;;; ;IBC;;;;;;;;?;;?;;; +Pyrolysis Gasoline containing benzene / Pygas /Aromatic hydrocarbons / C6-8 / Naphtha-Raffinate Pyrolyzate-derived ;S/P;2;<60°C;2;Nein;IBC;;;;;;;; x (Y) ;;;;; +Pyrite;;;;;;;;;;;;;;;;;;;"Achtung! Kann ""IMSBC: Gruppe C"" (also nicht anmeldepflichig sein) oder auch ""Gruppe: A"" bzw. ""Gruppe: A/B"" (somit Anmeldepflichtig)- beim Kunden nachfragen und ""Shippers declaration for solid bulk cargos"" oder es nennt sich auch ""Cargo information for solid bulk cargos"" anfordern" +Quicklime / Kalk ungelöscht / Lime / Burnt Lime / Un-slaked Lime / Building Lime / Calcia / Fat Lime / Chemical Lime / Fluxing Lime / Hard Burnt Lime / Soft Burnt Lime / Pebble Lime / Calcium Oxide / Calcium Monoxide / Calcined Limestone / Calcium oxide / CaO;;;;;;IMSBC;x;Y;;B;1;;;;;;;; +Rapeseed oil / Rapsöl;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Rape seed oil fatty acid methyl esters ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +BALED RDF;;;;;;IMSBC;x;y;;B;1;;;;;;;;beim KD/Schiff nach Blatt „Shipper's Declaration for Solid Bulk Cargos“ oder „Cargo Information for solid bulk cargos“„ fragen - 13.12.2021 +Refinery NexTAME / Noxious liquid, F, (4) n.o.s. (trade name ...., contains ....);P;0;<60°C;2;Ja;IBC;;;;;;;;x (y);1;;;; +Reformate / Naphtha / Gas Oil / UMS / Unleaded mo gas / Motor Gas;;;;;;MARPOL;;;;;;;;;;x;;; +RDF pellets / Refuse Derived Fuel;;;;; ;;;;;;;;;;;;;;Keine Anmeldung +Resin Oil / Distilled ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +RME 0,4MG/11 / FAME;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Sawn Timber / Schnittholz / Sägeholz;;;;; ;IMSBC;x;;;;;;;;;;;;nur wenn als Bulk (also keine Verpackung jeglicher Art (Drahtseile, Kunststoffbänder) und unter Deck +SEED Cake mit einem Ölgehalt von höchstens 1,5% und einem Feuchtigkeitsgehalt von höchstens 11% ///with not more than 1.5% oil and not more than 11% moisture.;;;;;;IMSBC;x;;;B;1;2217;4.2;;;;;; +SEED Cake containing vegetable oil a) durch mechanisches Pressen gewonnene Ölsaatenrückstände, die mehr als 10% Öl oder mehr als 20% Öl und Feuchtigkeit zusammen enthalten / (a) mechanically expelled seeds, containing more than 10% of oil or more than 20% of oil and moisture combined.);;;;;;IMSBC;x;;;B;1;1386;4.2;;;;;; +Shale Oil;;;;; ;MARPOL;;;;;;;;;;x;;; +Slack Wax / Petroleum / Hydrocarbon Wax;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Slop Water;;;;; ;;;;;;;;;;;;;;Keine Anmeldung lt. Johann/16.12.12 +Slops;;;;; ;;;;;;;;;;;;;; +Slurry / Residues / Petroleum;;;;; ;MARPOL;;;;;;;;;;x ;;; +Small Arms = Waffen zur Schiffsausrüstung gehörig;;;;; ;;;;;;;;;;;;;;Keine Anmeldung lt. Aussage von Fr. Kauschmann/16.05.2013 (09:50 Uhr) +Solvent ;;;;;;;;;;;;;;;;;;;Sicherheitsdatenblatt anfordern!!! +Sodium hydroxide solution / Caustic soda / Natronlauge;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);;;;; +Sodium Sulphate in Bulk;;;;; ;;;;;;;;;;;;;;Keine Anmeldung lt. Aussage von Herrn Illing Gefahrgutauskunfststelle Hamburg/14.02.14-10.25 Uhr +Soyabean meal / SBM / Sojabohnenmehl;;;;; ;IMSBC;x;y;;;;;;;;;;;"Kann Cat. A, B oder C sein (abhängig von der Zusammensetzung), +wenn keine genaue Angabe => Anfragen, ob anmledepflichtig oder nicht, +Wenn Port of Loading = Brake oder Hamburg => Cat. C und damit nicht anmeldepflichtig" +Soyabean Oil ,;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Soja protein concentrat / SPC;;;;;;;;;;;;;;;;;;;Keine Anmeldung +Steel Turnings;;;;; ;IMSBC;x;;;B;1;2793;4.2;;;;;; +Styrene Monomer ,;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Sulphur (molten) ;S;1;>60°C;1;Nein;IMSBC; ;;;;;;;x (Z);2;;;; +Sulphuric Acid;S/P;2;NF;0;Ja;IBC;;;;;;;;x (Y);1;;;; +Sunflower Husk Pellets in bulk;;;;;;;;;;;;;;;;;;;Keine Anmeldung, Gruppe C - tel Aussage Hr. Meiners (J.Müller) +Sunflower Seed Oil ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Tall oil fatty acid / TOFA (resin acids less than 20%) ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Tall oil pitch ;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Y);1;;;; +Tallow fatty acid;P;0;>60°C;1;Nein;IMSBC; ;;;;;;;x (Y);1;;;; +tert-Amyl ethyl ether / TAEE ;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Z);2;;;; +tert-Amyl methyl ether / TAME;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (X);0;;;; +Toasted meals / geröstete Mehle;;;;; ;IMSBC;x;;;;;;;;;;;;Group: B oder C - beim KD nach Blatt „Shipper's Declaration for Solid Bulk Cargos“ oder „Cargo Information for solid bulk cargos“„ fragen +Toluene ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Transformer oil / Insulating oil (z.B. NS8);;;;; ;MARPOL;;;;;;;;;;x;;; +Turpentine (z. B. LI200) ;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (X);0;;;; +UMS / Gasoline;;;;;;MARPOL;;;;;;;;;;x;;; +Nynas Naphthenic / Tyre Oils;;;;; ;MARPOL;;;;;;;;;;x;;; +Ultra-Low Sulphur Fuel Oil / ULSFO;;;;;;MARPOL;;;;;;;;;;x;;; +Urea Grain in bulk ;;;;; ;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +Urea Ammonium Nitrate solution / UAN (containing less than 1% free ammonia) ;S/P;2;NF;0;Nein;IBC;;;;;;;;x (Y);1;;;; +Urea solution ;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Urea Grain in bulk;;;;;;;;;;;;;;;;;;;Keine Anmeldung, IMSBC Gruppe C +VGO / Vakuum Gas Öl / Schweres Vakuumgasöl / HVGO;;;<60°C;2; ;MARPOL;;;;;;3082;9;;;x;;; +Vegetable acid oils;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (Y) ;;;;; +Versene 100 / ETHYLENEDIAMINETETRAACETIC ACID NA4-SALT;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y);1;;;; +Versenex 80 / Diethylenetriaminepentaacetic acid / pentasodium salt solution;P;0;>60°C;1;Nein;IBC;;;;;;;;x (Z);2;;;; +Vinyl Acetate monomer;S/P;2;<60°C;2;Nein;IBC;;;;;;;;x (Y) ;;;;; +VISTAR HS / Distillates Petroleum;;;;;;MARPOL;;;;;;;;;;x;;; +Wash Oil / Creosote oil / METHYLNAPHTHALENE acenaphthene fraction;S/P;2;>60°C;1;Nein;IBC;;;;;;;;x (X);0;;;; +Washed Waelz Oxide / Zink / zinkhaltiger Staub;;;;;;IMSBC;x;;;A;0;;;;;;;;lt. Rhenus Midgard/Hr. Janssen +Wilfarin PA1698 RSPO (siehe Fatty acids, (C16+) );P;0;>60°C;1;Nein;;;;;;;;;;;;;; +WOOD PELLETS ;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +Wood pulp;;;;;;;;;;;;;;;;;;;nicht anmelden = Aussage J.Müller, kein DG +Wood pulp pellets ;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +WOODCHIPS ;;;;; ;IMSBC;x;y;;B;1;;;;;;;; +Wooden poles / Holzstämme;;;;; ;IMSBC;x;y;;B;1;;;;;;;;NUR UNTER DECK (in Luken) anzumeldem - DECKSLADUNG NICHT! (außer für Baltic Lloyd, Rostock - ALLES anmelden!) lt. Herrn Ronneberger +Xylenes / Ortho-Xylene / Para Xylene;P;0;<60°C;2;Nein;IBC;;;;;;;;x (Y);1; ;;; +Zellulose / Cellulose / Wood pulp;;;;; ;;;;;;;;;;;;;;"Keine Anmeldung, +Nur falls Bulk-Ladung" +Zinc Concentrates / MRM BULK CONCENTRATES / Mineral Concentrates / METAL SULPHIDE CONCENTRATES;;;;; ;IMSBC;x;;;A;0;;;;;;;;Dieses Gefahrgut wird OHNE MHB und OHNE IMO/UN Nummer abgesendet. Eine gelbe Violation-Meldung aus dem NSW ist zu ignorieren diff --git a/misc/GEFAHRGUTLISTE_STAND_2025_09_09.xlsx b/misc/GEFAHRGUTLISTE_STAND_2025_09_09.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..aab5f0a7b9cb8cc8993bba6ee00e15c4d977717b GIT binary patch literal 58638 zcmeFX^;2A36fM}eySuvtcY-zUF2O=@*Cx0IcXtak?(PsAg1dW=;2tc~`DWhKn|kvf zymx;%_g2@b-gVE}YwfkyxoV0qu($wt03rYYpaQt_8GyZ^0Dw?9000Mo2>nUQ$l%dK$X^{3N$BXPxcdfwlUhLE7O?IyMf+X z*jG@t!gXkyEhngmPM7u)W~h>ghApctw{J>TU@=4f8a)X~5??xR3tikD500g2mTOMG zbCD=$d9Uw=S89=H1%&91PS5kou&e@WU+8R$o@nV#iHW~iMC|-A$Jh8C5ioBkQ$k>i ze$%t=mmu^NT9wR}bFknqDtEKHR#%mmPvyb9w|Y#=qd|p28DZ{XlwO&k*KK$)jwN?x zKWw)>VaH&GI8hZ;nTv%|8qqv##0nv@R|0p?z^$BTjY8bdA9XEQmn+X=sOMvUYd|iS zucTwdjKj>c*|sa4hQfdF=JvQlrM*ZGHWm(WQ)3(6WgoHLeTgiLy>;>Do+tVk+%cC4 zM_;=QCBpbS&XEM> z5hG0zT+J6bxHE8J(l*pN%}EXQSREv~)qkjfk4*8)xzHG1N*=6|3LMBV|@NkuU?g;tUADf8g?o78b12CxS4<{spu&o z*GZ-2A1J?p(H#4omSnS+ffQ4VI0QyEpxgg-e0@_S_H>l$VUMRO8XH%brp2>5EdANV z1A&>|HBH8)YIhI|w0OVxkSVL+#R%$-XRd53D^wiYrjePy2G(Ovv+EKg;gpbu;frPl z84N4yZ<#&SKrKpYo>zy}welC7CQoMvET@4_(8MAHmCoie@kZUutX6A$NA0QZ{}5|y zS_|6LndP|(QG1z~+xOi9vwLygeA!fTMm4B;u%Ec5Wk=`=?gI>(c&;aMy$1P_1}aCd z#)6|M%C;cY>wg8wpHwtuS{MMJ9RUEqfUL|{`wyN@u6AZlPImulTCw(}Y9$Bm+k4WZ zSc1PSBZ)mtkqeBk;zEYtee~Fz1V3@m&Dx%2%-@$zi{2a`uT{;4=B94asrJXFoV*Xw z8(#}0xs2fv^H)X-EPiO}Ou@K|#Z9tv6;oR%xEjv^x-}xFrv2XqjGV7U4qsORfg13P zniV%}iu6Qm5hA;IY@aQLr6q7thc=Q@3use`N-9R#Mp{HGDXV}iuqLD-{Z`y*GYJeH z5{k{xSUe2K#}hHyt|2%9Pt0L$Krin~%2k}I8+IMGTR|&A-sIl3y9`cjd z)d(NY)Gy^a_p6Fvx?shRnhXGkYB`GIk(O`Q#>i>mf&%E}4oJ^G+|gRALLa4dw(uv` zgFe5kTN73-ejN%w@WYzibak6qJ&8HI`)pwpqP2*|wX5^A9m^2VgF5n7(S4kA1|8Q? zzn3}eOL*>hoO@!@h=}bL>#TNU5etbsFmCqG@#;J3)SWN0Zq9yfTuv{4QJu6rH$quD zT7vnG(q7p~PCOy21NMc&_Es5@9{vqF3m%qkd>YkAg)3Y10J-%tW?S{G)C=>$GINog z;2=43kmj3uD)Wf@zz*Q`6S8aa`@mLXpk~A1Wbk#X^U?Rl>_wY=pLn@mymBN}b}V{{ z3}FD-?e*0!!18?ql)gLdx=nVT~$S%CpExM+4oq&mYcp zra9L+<0knoRxNuko0a)vJ~<+Uhm6L0pxx{Cnb;1l67YL2+vb6Ri*+n_Vb;Svj{Em# zAlH^Gy`wMFH}8xK8cV8wS+3A~Tm?nB1pEcKoSof7dp>eKFcYhi?}PaQwCyA$Of?xUWCm3-}|acny?+@ zK$U*{_8v0Z$7u0Am&VjWn#OlCchPD>`g=#5`brV%#q67}SW!AlL|jFjUY z2^0|g5PB}#@krTSdOsaEwIkG6cP zk+3OtWnktxk9=wOOB@<}i&m3eimBQD^k2avG1i(mi(L_QDx%sn#Lkbd)~Po!+Us=B z56(V`l(Nhk7R5VwMnyQO$EP>@;X^^uvhCls1jWk^u+LK}j`A4h$=D*@y_8w>#@ZPp zgL}<>j~S>XWhz_j!u5#VEBs(y!2GqxhMIT8T9W^@9vfS=(snRQ zBgoz>2f1}N2=gb{x1tki$LZVt?52ay zdyfR24Vm<)6y0NwF#1^~w+?>@91DL(5Nz|rU9GZ_(3IZAjmfc^n($CS ze%Ag}7br;av)Z9^_f_4gHw3{?pqw7hL*+MdloN>AIH0h-qY&<_BMg|JRnOp!5zjUo z#xkVX?MN)uuf_hvT^++kBW}0!vzNk=63rd%`9KwC8F^ZF1tXa;&o+1&j=!rlXe-OH zgJ3F5&U+x5f>l$PjL4NME7`9QK6xe9EFd_f?33a3fYo@5Fd2Bvd>lo5V38@)F~C_= zFzb3I!74FYDxiW$BiEf~ko%z62T8Cl+-{W&y1@dIqXm()T^{$_JnaP)6e4+0pb;vp z3`*u(%TdUk_u;xhiwt+NBM=TribTm)iVZrT~dlKp? z&)59s%)AVKuvg^Ue|qLW{N(tpCy~e|9oCLs%`EZk^ReKF7xvNFfcKPX`y>9^J{^9gY%r!x8`vD+9#Gv-0UlItzrW9`_V&K~z6|iY zJzX|=-}db7F-EJr^nZEmec#@m>otz!KZ(DKUtjbTdmnM?{d+Tw(fj&5-TVHL<<0MT z``n}jGWqX|nE&f`y2-mA{&c{`U#{O>UibS4*Dqs-zZcoxK12q5>h`)H$-dwGwHPh7 z)#ZIn!?bBtvTI4x#OG6emzMG%X{C4BG$*W)6t^@y>r=p8<<$HgqpZngL4l%i4y1)) zmEupSIzO?;&tWZ=pAd!i!mVboO{9u&VB_{ZT3Aw5<^+Wa&5r1CIOQ?0`6r7&5OnM~ zjW3+1&{Zv?bM*~cS%$svz{s|(7(vCFuy*tBqC09Ta3B3*Z}22){J9ATo&q&eUQ|NT zaWKbZw$9&-oS&C5CTpcHtwM?Zqfic@ zN&>CF`3>f6tN624AB4Wn)^{1*+K1m^_XfDA;t9W{zKiOfy+)U>;L6%~^{O!qfCq1O zq)S=XCcw)(hqFtsOw!l++i!nN^3)IKxBq6n=h1xc{mb?yT1xZgC&bWi(5pHB%eMru zOn2a<;tEPap_}$^&^XTJpcd{X>i%8sHu1KFA@;WK)W}+*aWPLHyj6FJOxYWh)nB|TjiY2r6u%~v$EH@a#+@MbUY{mRD6 zsowcf*bY?ngI2hc&mqoScv~dp6Fn6@S&-;kr?%-DZ|_#Gy&=ow?JV6RzVnu_w8BYU zb=;A4^fPk`8C-Hzv8PLotX>qx7Dk}O5mwYP^O^0BjuUO>oQe%ru)m?jS&vrHUr;#H ziG_>IRR)@U>R&}>C(TkkvuUD+x84X=HA`L@unyCEEKU)}X@w+90HF*$)4}Od%MM$s zM4nYL3!A{7`$&Hh+Kx20B9?L`_v)?0W5I$+k%qjNNmYHWjRpDX|8h}XH=RNRj!nRe z_%!CU|6kOs!KR8B>`fJ!26?|3r~ei@{1>)gIF287Hn7!3g}DgoLy`rWK;|OBpPmtQ z6|2<;-%(5E)N|HAkr&_=Tx8W@4g|Y6`jwuvuIO?tEBZwS_Wz~*QFRc0w#XR%e=lcS zuXtS`k796UPiH*v1%M&MyP0a@2^nO$XPKfNl~boX(Jv~B-( z6IFaQ^LHRWy-8!Focn)~zPLr^nMp-{j5I3BK6wyjisb8*OKV;=2WzZX<@A22*_UWN zS^a2^le!l2X^g7(W9y@Yqn+SUOVaqp(kWScE=*E;E**30zuX?lI|VohcqO%;LlCR* zmkma)vuLfN!IUFO8EE@Iw(T5O?B}`uMbbLDoSve&Cmx%kQ;Qwn=Azf%swDfYFSrlC zaeUj5xHewsF9;gFT+g(9`UFso3baYm^yNx6Pw_6Q9)W2dCM^_7D; zN3N!SQqSfnJ19qZK-*Esn(Rl^nM;#OQoc;r-l$5fl!T+GnPghg%)h&hM9tYEp}4Aw zJgex!Hny%{A~o!OPTwUqi`$~B+n!P=*fQ5EC_C(|Z%4{DW@hGdT3G5y?C^S=N4Os#hzeZ9Qk3^>e{82rp3~gNGqWWr%kR5 z-+j2ujza=iCfx+t*RaAhSOo?~$dhrTRtzCSMUQDkDNq4s%8S8R0K~=TXMAeFRgocB zd??bqy6|fwJPoV>c5;^-Y+an54Cs4u!m3g>9|wIzM3T|4Y3uyv^pXwf2U&&)@oZ0Y zG?Hcy>-WYx+!OwF%~7m%VRrdAXYVqhx(d0PH7U>ynmCqA4h+3uvtH01@#LS`*eF*m zWL)53xnutX`rQmRhagz$9i)=P1EZzK;&prd@~=RRT{4Ks>g+WDr!TXlYaK&N1OWSVj% z;j6G}nZ-LR3GL_o=cnkXl+n4uJv_nCDtpiB0jf*DC#*>!(>(2HycT@!>bqZfEfLCE zD>n@=nYQ-#U6MQm^nYzf4=os&8&`LM?K~E$3%lkdf(H#r+;~PF?61(jQq*4dz`5I) zoP$Z_7l*@W?a1lFJHEogIX*cu*}R^z-kMPBW2~1{$m(fUouI!GJrZ%UsJ{c5bl7wR z{bS9gZ%;{eeT8o$GmyroG4*lA{mxWRtBn}{ytPEGiutyL-S?D zNy%2kdDnJ@*Pe{4fhIBr5^r=AgiWO53NE1KdXji$v@;vW~!K7fsv|G07^bp=sr@T zb_(QuUEwftbZie)a|XzRZrPVn(0N>tZwPAq*BvOFeuFBmE@ik0yl{$R<%$jZBF*N% z#vn>fQL1Av4{OQ3gNl{R>33~ME78@w$CQY*TYHB2RfQ?sAp2=S73pCu8EFa-%Gb|A zA1Vaut2Z|W6ec%CwUJ_k%D=TL!LFC#Z?O;Zks+Yeo6lQPuhdWfzHz|(Ua6m&C5@z zxH3U?;QONr?CLu{NLO8+fhm@3VG3qqpG=SL+zb#_=E|oeD1PU>vmOb}Q|Rg@3V``Q zS)ASZe#IG%w}}m$sVq}|;NI8%X?en2=0q4*s&7YC zv}hBp&Es4WBV;;n1KG`3GYmmy6)bpfBZLnAXzpeaK{z|gQyvpO+te$-m+ zE%WPmC=(9Zc<&NmKJxsWHtDyLeoB=2z1CDX(YVoy^$*VF6X>X{F%~v3HK+Wz!i`D7 z2LMa@mO-S{{pob-g3!DgG%Z(yPZemthG;Dqhne6|jWOg!Kr)ZCNM- z#cmEPMQSXcunNn!qx80Ye->r@IU@kEwF4=I6O~xW+!wj^geZk0;U>oNbEirMi__3g z-+|rk9M_4aF7~u7nz!_h5n2MX4I;x~3syTI1lIU^qfSL@mpb+I1P5%raXuq<6jPd_ zpR!7scJ)7o@y1CnC`X!A2g3n9}y8;y&jiiSW|e8lh6+19B#0TeSe!?n_%UyO3X-r-xw+DH1~G6Q;RcVNB`{LZ6m7h! z>2&`X7#%LSw1*w4;3C1?F9vh3|0e6)`Z#V+pD=XuA-!CNKkoQ~8Owriel7MV=qEoO z{Zfcx!pBC2Ul`3hgT&+gFLjMSANBOc*Mc80)63u(gfmw~Yi0lp>*YV`bqglrA}+9S zHVvxQ&KNK^@1PgIT5>r3!C^8Yn*rPib2P6@+KN6np?qGh$gB+&U>J-mF?-NYGAXW#aUo;`L2$-+APb-)*(VX zWS;$ykpBuD0W5xqkau9y!EBeb-T$nNuEhHuxD585i51&vw)0~%T!-r7OD`u5_|+^( zM&79aj1|LKjvd~1ST>r}3nf-)MY@ z6z4hn`;7QA$xQUOslfO)+Fyxobm)1>RKDcc+t$YGLi%pR>V2;Y_%~ z9#}BkY#Z(rKcaHe6umQYD!K-I4?bwi^8imq{r$pWS4`kf;*YZYY~}lBGOXQS;jXP;qC)ki3&p?<< z*dc|?1}%GIp!2SHxiepqQ>B7cHva=X6^u64ghQ;^u3=y!{siAP;hnNC6UXXVvK)hu z+axa^>$0s#Dh2DxN;Wp9Qw%4xe6-f6wjq4Q#>&*~$>`d3=_!>ckc9^q%JAN&l!W zqlw7%U5Xh*wk1qvC_=U^;ujm`fgp7PrEQGER>7YC08tSYh2G0Al3qsTD>k$u8!LrZ zFzH|nhO?ie2S8h{Yo7)vI{%jB$myiIOfk)CY@}E79(9c4HQoX{1fPLXQJeBEhJljb zcV`N}{Nh%v~(Z>5>g&!XV|~sUfqX$@ElV zsFJG7XcWTI_^vB5=op)9u~o2Y*w;;VKj&@hCCB!@PvWLZB2n7NE600xZOtwi{askZ zX}~Z98&1;d+fkM32lY#$ugU>A!Y5$9{i_E6Q2=x>C>C)om(E&Vk@r=!in*YECDr~Z zUv9?r3_I@YR@O8A8`{!Rog)piQ^C?k^s+U5$6nw1#*s&PJF|hk=y`pcFECzk(jPyYbLqYCWr*oK|f`Uvww< z0*mOnEon>y*5A)Zb22=dxBe>x5-&33*Ugq=VRA~%*FWP>FP6VaR^x0iXtbOuu&>^= zNy7L!@M8=Z`cNb_{f;Q+6-#l)aLVU{KY!SAYrK=W%h$= zTdl!X_i>6`b~=!6dHnY}8s~m=I``C5KyxS%NO>@G{93q^EvWfG!T0mV;Ck*Qo5AH` zWaA&zk1l*~vt4L0ibRRB~by;4&TTA}Qto!uNecUg+JB$PotCv0t=00;#L4>%92Oe$kyRRO8#AUce z&{Loue&B#nLs74WxoeAQT-D+WmFY_8aTvEH^>wa#DCKTj{3SbpFV^JG9c3VHi_{dRVL ze_A7WLRmuPpmAL^!Y=ejZa*Ggetw=PbnIa%&thpFSk-bGGDb@Igf*6;%rSa zt5jc+9c^*miAK@ILA0yx)aF^M_fjF5yWXQ$L2sp<;p0;?8sOrl4bD0c9k$4sAP3i) z;`D=@_#%^{in06WL{f)Hr|3$o^blA-U5Zt_;}6uqULi=9Y-uPp!v#(RaByJfe$OKSo zAy5jZau0bkWWTfa~6-G zwgHDu(cXGv#1Dtz?e%)$6M>9h$ZRZ7DWN8e=pWTd1HOO#BO7(Q&zyqk!pd)>c4bSB z{;#aONzpNDPEvQB0pAZZ7BEr_cnM>ZS;t;u6|g7tR9tuYcOKPB=eY@?A|gPouG35R zA3rMrbxYt7#eq%TN>wKr^e7L+G`RJD!Nhh@h(M(~cii;DyarDGRd!q6vS+(Qj6oPO+c>|VF75fB$w zHwXkYsQU#sNRN!kwGm3I3WosTfpL`KZRB3--??!t&`C2=(Y1;gt8Xg6)}#F4LDJjzlq$x z_E}Vsl&nQUFH9K68yPp>c9+{ap?gPSff6-+tu=!wG zwAwrFG6M8Wjd0!IoIQ|7-zCE_GCQRnp>IKpwTVE{vit7C4<0jc^)%`zy|fWjsTsWJ zVAm}pE5#gau?4}wGhyj=^)m!C>!E4X<^?rb>qweoUN7`K@i^yuFQU+m+`M z2!5Zdd@g$V&~3JCYrbE8gmW^6-^(C{NzBUm8tbdbqnE1~*?2Tp=^&0b?J9-W*%_!; z-ae|C`i$^oKW}&dDN0WqEjH{obxGksRPUzl6VQcAi2PLlMqV?C-|RlBgsFs2`?K85lqx)HEuZj-Pb4!4L;gXA+`$EHV+IT{kX}t^6~>6(h%v{QB-3q2@cA88G$AH?Ih`Jo;zC z?bpx(CR}*#sIox=stN#FER?Px);fHa1lAsmEaMj2C(-?v%mw#>%X>(F`b_dZ4!xZ6 z*nsoLiOpdN^I4TLA=dtp4Z#;AMBvZlZ{tRS+10oa>q`nimeA$9soR|!B5z4P_rKmc zmQ?GkJ>N0IAV6>x*>i5q7+5q*-B)cx&)Tz{ijkL%e-d5v!SptR@8)NHt6$RFxXPZ| zL+RAP0rcG@<=H>^FyryQ#x2urn-Txhnx#%pFvgx8BI9HnJ&pWB^*Wu047!R_dG-6C ziEUTX=2!E1$3OB&1=K|ztr<&;X5XTQn%KK>7H?n-(ihw(FszLr#KR_5;L)zcdob-i znbxZv1XV6AJ(ecslL)9wQbd}8F)bSG!#;K|0mB4#(xf!60jym-XLHi+ArFFa0C7GC zKms;EeDKtfv$Aps84#^+IT0;RiFyVbR22uY#7j&wG|1Rj% zl86W~WK!9Vx=0IU0}DMSatK`89nUlgyM!LRs53k7&Do=~1{irBPAJ`0`Q>gRes1nn zes9*J`-4*x2X0&YLIGKiT*s$MW4AL+?yND(Jhlg(n=yK;UWDgG{W5x6c zva06a#*%?yU%o+lp3sv-EVaH*K&Z}vFI99cf?DbvDSz)v^G#~Erfg4e{9ayH`_6NP z1_l3)g$tC5WrYj0%Lx{?4U@|vl|&I&zrbiW0*^h zI8(?RN#c@vXWdD`I6YuQIvrETUP%5<+Xiw?kxWr*)p~+BnByo{Y8V+;Y^Fb29f`Ff zt_;4AxDiZ#dT6pH*0OflT_F#%6N-}w`bJwDx2Z1xLKPZ~;M+D^GmO?oXn*=)AEgir z9qFa>GyI?EjfeJmvaX{D^PPJ>^>acYZR2Khu1!_y?_?jcEvd4nY5GiZ+Bf zGbF&58HqP_Eo=a-#ylmZFvO$n>9NRuUrC1rB;?91<-qe+a%8}}Sn41T{=b&N!6Q(n zJ^n`)jp}37f+0eg!W%B)dYK2nXWn?8ld8|33(}(f22{ZUFkQA=pPud6bO3s31aS)HkayNQk4=zB2!k@ZZ2Vr&%*hZ)=?Hl zzPvI_-|v5X1{3JZ1o*ld`Kkzru|#}ZQHn)`YG?gd*pf{+;rCkiZ+S2^*>{6Y?Ulg3o5WoEtTQ?S=@Qa&PY6CY_#dFQ{jyJn zjJ!KKXjZo>6cpx5s;^^{i<|7*@)h&hr(>LQ?1kdiyv;tXJBTtt5dsaL*na(J*6TOD z_OkRg{061!3hDb|q5jkLyVl!{YmhD_=OU>}aD{2X^RIjQ#yEHjd)KPejS1@cHJ?zj z?|IYmms$W3&^IRNSEoJ;RDmg`hLqvuo0EYp%RXQb7Cyv<{2n-bBa=rtlcV z4%MAT$=MJcoUoq zp(3F9wi)%OXgmNu&gz{CE^0(xs$xbl_%lSt7q>nMeR!xH<~=a!r<_=05vV4P(Q$5w zwO^<{P~wEN5VFT49#ZBZw_~lD7(AwRIea$d4{wnFTA>${+*lMzG6nXkDISU zjht@It-@pd$^nAtj`$DG&bY*-XnDkHRRA$8S^sE3S2mre_8*D+>b$ZE-v8 zH8%$b)K7=XHj1^3gU;F>`aMQlp(Z{~pxtw9t^7`qXK}&sUNLX(-e3z(YWN#VLpWL{`jLiirWc5N%LdM9*1P`@&1C7Fh>SRxQ*oX7 zkBHQNHX9ps`p31tq>p@l$JMgU3u{Wr<=dnUsMX!>Z8H(2$iK}$i7$M;emng$dAoSJ z+Gtg4{F?LddF*6~09^*{Dg(NP;X$RC0paTd^S-4cRm2CSdW zP&-;A)eR@Bqy8C^DG)=l5L(m6ytYTeeSm6GQ91hgo1daRU^UXbDE*|;W@aLxFfb%J zC-*=j_{Nzd=3Zo5o+9uUT9AN5r`bc~A4NIvHDt+e@UX%N zbrHuWWZ+T=4EK;l(X1G7GtR{2id(D!|15C753{YBCM%f=uHx#+c}lKt&)1=dXeFcC zcJS(2$R4|p%HKZiJ)qfHh2VRC++)=?| z^|?WFy8694Zqs+n+6^##SqlqIkRY_3T!)fl=*QOV;!`AY^vT_o9cs}Rgx0R?@B$E* zT_Te6@vEkjuEs>iyarwt|4&y%h0Yey#uVm>373;^`YJW%X^(Be`ZZ`SY02o;>ogkP z;qo?YI{Nt!4ldmW`rqb53~CL#=Kg9F=W27M443s<0RN0?h)}d;p`Z z(nqp|%Nj68qR5Wn#Cuky?o~|Wr{&hvs99y>+{eC!LX(V{qm3OK0cEl&6i7(@=T`}v z)^|wb6?9ZT1b`W4$4>9#?s?gibu8V7=*$eu6qc$O)^{|%S5vDu7!>^>!DCELbuV+s z?9{Hm)Q_J-yEjZTjbKgQPx{o^);q67*+bI9TuA$qt=1^eZ$yT<`}`!R#Y(}cvtwFj za?wu*y4r1!{F1|`YN*1a2lV6ly?Rw!LA|^QVS%&!1Txl_cbk^LHqQnM|B}>RTZt>qzb>+oN+ z?sd5rOFS8y{8;m~Ph**T<&ZwMQ1vBnWs}Nm*?;{guh|@7H)6A*srbC~W?d?q+;SPs z!8^k!jwq1Q4CI-yx@fle@WB$q#0&@Bcb1d|AG9o-wf1S|!3X~#2t}K6)SJz+C6^Qn zvB3lh8dB!JAVJ5i1(~jK#15Y}Zg4e*kOAs-aA37G9N2)ve>`DWV2elr4?~Lt&CcX{UcQFJb{gY?Hvk_<_=Hd^?zI+Vr#W!Vn6n5JPec-BgO{>HGXR zgOE6g#y5_l8|`52xV1%uD-|O*zV}}>iO}`Hyq>KYBYR96oU<2RffPGnxoka=l&96x z0i&M+%3;Nb`V@fMTe~zv232(pPjZ~nC3Vnph8pvF*WR+4ekjkO3VTr^P3g@aok?A* zfLyD}RcOKFFME<-U6ekwV=L7{@*#tq4652kRw+A+6(eogf^AjTUERH`mQrd}S0r_% z+GTOPF&m_Za1a1I+xl##8?F7`8foM~AG@cXX(GSU@Eg*S{qpJl?gfX!MN!uX$$Phv zsRz8sq_z6S0|ol##rBi}Zs8mQ$^S(2XKz|q^K&vzcW;p|PtiV0w($=rtF7iusxp(>GX}5F!RfJUas_)( z*wo{X==owxX5T`Gj^dfzzrm^=`$Lo-Y^^6xb1MMpK*dg=(o>B4T9b>L`^Z;_g+VlqrJDYMXAg?BnPfE?UG5>` zqIx1JQ+p6>^3a3y~;dhTUNfqiZ)5&8x)gQH&9_5aSx4x#q?A+3*4Ot3TN=H|51DnIW^RM zr|iOI?r(AASc73{dp-5rIBBjwxw{BXPl?i$(KPQK@qct7O5rusi9*xxoVDi6nhHFs zV)+13CGXn4P`3YBH%h#Z6}?GGN<~##bpM)4)LRNvyN4t*;Wrerm|X? zaQ)6xNLy+%Ye?}BZ;&xRAx|zbs7ks=Dm7)Qc?g89D>E;ZIgnhkcb)Jto;%Rd@L2Os zHc)T8d+jSJjgv^Z_^2Uciw$jb9|unx=RtQA?BM}%i8RBQKpGYMj4y#6xrdf9d+R33 zt-Je-XGq&^`3Ni*0>~u11pDiGA@e%+3x+XPbO3Nf(dL&ZooKuae3L6B^)X0Kc&E1I zR{!rDqt1U~>^{1^{&J)1?knvYojf6lhC)#g}PH8(57WO>vD|fT_ ze$DV_HhD$C;1*^!O6yfQs(v2j%k?}YB+I)esG&2JvN~*WN#M){rv!vSkfM&J`&h+`Bw1j{B}k^n$7(3qD4z*d)c z!$EFr1kAd3^7M(O@r+A^YTQJmnp8AM!K8_>K@ja7N)8Lf-^uVx<6MLAyhd>@sr968 z*K8`vFY>qhvu|N@Ho9Y4Ziq;H+p6d<%Vxd9KR6#jN-oU|*r_q8IIx~xIr;ei92I1~)mbuFbWdh%11onJ+o zQsl#2jo-A8TZb1jbi;8kJ{CDcjG00)ks>?PEL`@XDq>&p-J~oP7xCRJ-MWH)1YCB4 z3fDFDHb3d291t#hdy=373Ult*78-=MP-th_qpf$XI5-#0774eZJfy+}h3aKK(} z!wPV1?ddJSF%!RVEks7qS4HTJ(a1rL}zcoTWMuBQ^WE(0Fgai!LGE`hmHjS zC?RNL&o-zL&&xB@GHW9V*<^myH05ZgZ|FX;@e!u|{{Dpgk_d2dGgyheW34}wrNfi# z+*#j=ImCiw5Co1UqAEtje}u-d)8pAAGGFirF<(zK8A;0Gx6IBerDKwV?@oP>nM*dO12#!WD;dRs5#)N*AUj zCBPo|C}0fx@&?ft0vyEJ)P`KC->W$3=;!-_z;`NT>H|uD(sLvN9YsKyfJ-Cdk^x_= zX(cSe?)nr>%@ew;>bGA9;NM@aL+dbS=f)WOf|Gtv?GSUHUw~L@C8?k>XREA*U}`fl zXQl6cOcgXtzuu55^t&SW{{UId(Dn^X_0>-rW(0>XDqQXCNLXRcOhoc$$okHE>PlOg zPPf%%b!BUg8l0n_p+?m9a0xM2JrvDi?ff`*3B(o(mIAUedRw_KF=!dH z6^a~(S3td!6;2|~2g%?EorOW~iUc+pI6Q9)8KdJdI0gy_t^UABLmDk0t=kQ0f#jG6 zgUdH7bhX6q^JQ1Gu9Dvfz=_EO^jayN?OzXo7d*^e9EH>@fyDyMdE|lW#k`RV{L2bbG4Ph+Q4seEs%COv4 zOu+sj1>`NwfEEcQ5dW0CWlSwwdJSN-@>c|>1B%^_UPAZj#f8&@@7tK{m_^*_;0C2y z?DvB_#{IBJGXxwozrcM(WIW!5cb*C9q^l_#qgq<3k|`;qrLjmNVp&Nv%%4GVSUu2(9nLP4 zO{49dzeHz7Z=1SC6G?gI|9N-9iaZ&Sw8acy00{QskoGSST^g{S){7f))P( zEw04U%GUbe>nX7ThPvnmtdhrje=hqiD{$9uVl~rDL3B7t9otJ2F!R%O2Q4lMz;G@r zUko{fbD29qf&nnLUjXoP_-+Tba()OVt1>OzJ9EN62*REfRa+W+e7Y|EMr_~$iy*KFk%m30QS;w}hS(SRvDADp+;fd&vt z60f~#MDVfc0yyY%=V7B%sDjM7PQ=_qt!V+1-^=Pt<}E>`;7ReXdt3)Rg|)<3*rN@C z%8WuDSv$b=o1|Ad$pOsz*;@=S&5A%rY%?xuhnzCcCrc+}c%v;!)F=xJ+&0*hd#Y{` z*t>?b-&FzQ%f4vZ&mmVPoF4nGNq_sNCs=jpUp^i_05&D)ln%l?aw+D?hOo zK_5npMrtgLu(~~We4cs6VJYV;zVKTkxM@HSu*^r|*gJF1(m9#}(ls@{sohnaW3bMT z?PM-2z*0})A!>5974_oU8BIng)7fcHPVMS~7)$NU%TFgXO3QmFRSj57az#kz_zOdr zX`dCUZynCbU+iluepe^38Nua$m*3Ko_PqA0JDf|CKu}RAV?r65rJ|H=HsrTZ6=<1o zYG~igOZ}x?CAt4+dRajswmpKe{W| zw9Gcj%EolSq2_0JVVri@2PO;{P7`8b$8h@c5*X%cQTQ|a*;ym>&umgFD>%_~YG=X% zWpq`x8~zRn`!apVHcM0m`pt$gcGppDW0D#JQ}$`3@h zs@Ud!Pz%s5#Jog^L=l|V?kkwo!j#&PpW&kXathOB{?Yb1SpD1P5(YuT8gCbFu)|o~ zFTs{&mRN#ThVZ7~w~w<1-pv*92oLrR#L!Bkedtgym50O}(W=krxLNS1MJDpI0QlM3 zUnQ)18V6kNrNPI#b160!y~huu)A$QaRKs`SHeW6E7oCh#F!$S+vAa!_Dd-!J9~d%+ z=JIDYJ4Edo{l<5_{DmlBRld}-d!tQJH(E%-#^Y~!dWU?e#}3bsPC}*gm8(aG8mc%H z+N~u$9{PlSJb98Mi_5~41sUy3EDE%N>{3TvM@E_qyG%X0QRm+^{PBnObJ@e(_1(X#Ny+~8KuD;)3aKnYR*3sBkF z>SfB--0)-`mD+6-Bz4_uo^BA^B+=G@Eh#0}h7Pq`aY&4I{*to|YXom<%w*QMaUs9N zgD3m5(u+kA5R{?IE(P<0yVh^$2YZO%;?j@rheq>qW197JIsoK>&Z*7?zH`OA@Svv; ztEw><86uS@>RJTR$g=9I8u3MWKgZ^1%2a0rRMJv0Wh7NVhywa-%Y^M9Ey9hrF{j7z zD12(WlX@kF;8BCyv@}!r#Ad^~;TQ(Hm#A+U*XC>tl`C6k!1C?UFeKr7*V?u8lf{Zz zwdOy;!<#0ca?W^m8P&!GuS37*h>DEN&hD9FFo#qF11Z55C)Z!IM`)8G6&AT(b*SRz zsQRC76+b&P8%hjjxEqmAUUs2jc|&hj19pQp7hdz*rnJ{9u}#C z5%tFlQ*n&O8^`e$C0J>RfWYE&xu*Y%rmKpIqieRfJ0#fPPH=a3cXxLS8XN|9cXti$ z4#5-LWpLNv7VdoiTK5H}dEiWUpRU@q_pa(3qka$HTwTTZx@rfyr@{2(x05@#W+V29 z%r}!K1URxdemIW$bbGuO+fCpUuJC+2UH~2~EoTjB)`X|>V!4C#g(JuwxONq_9-$U~ zhEa)EjQ#+zAsw%*Lp;Tj99P z*qzPdWeJtZL!h`6a3i3NwFfZVk~09|!^d_88q)0<1a|9f(XQk&f^-~z$o^QQ1d=OW zX#1)&t8S}@-m`OlhSeRQt{}2UBGD8LDbO`71q=}nsqKO~R63UmqI(oKjqztA;}FY3 zBgbzsllJY~yW^JDzo~25PfX(IS5&`SlTlmz84KcFaf{15 z9E+yo*owfoWa#G^R<_&O<;4ElwQ92(;oZl-3z@V-nd%p&pJlgV)50dHRW06l|CAM~ z=Do}FLFs2VN@mFVY4X^!^}_{2HUJhNX^+V>eul)8-6!r6)B(vOgB(m@(LWaSvFwH# ze|W*InE)4Y+#-x#YBK;{hUcDNmu3Hm?cP0v_uz-AOtzARDIwrD0qS5<9S%<|ZSZjP zyiLqL%uZy-)hWNl8Ni^_mO+v&^_?t55Kf^j z{rn(sUe_#I>A1h5QvIK=X|{>C>E!2Muov#1i5K5z6^h{CxEQC-8U0tZ^ro`SNz)mo z@?Gq2QFIYss4!d_AYd?y1hMXFs8=8LUO6IW4;}=fJaD^^>tMONaBIG0(qb}nhC}^A z?TXC&M=buj@veqjw1+)9T6zq}{{sRQbHqQT_>>&u$#HuknQ3TY)Ak+M;f&SR9cdL8 zZV0q&!3Kj_56t{0CRZqTiJm6}?`!?`yY$vd{sGVjUiEVEEp~D5$3Zd1>gW@=N%8&1 zgHRf{b&e&l?UCfvKBv8g`xI@|OZN50!;R^~yH!^*>nE?_lDF?2=rgU}769Zh+>@EV zeX)DESZfArgZaY9CD#hFcWF%2d95lxaoA4H2TJWbuhP=lPjRwG3C-qZ=XOw8Pml5# z2EhlNCRT_bDrE82ul96l3>*qmNNKwA3jg(v$4J8f=S6XV)td!o!PFx zcTsE#2)MZ?qmJMq(roBakV9}G(-nrZ=uNjD5R9s=SSevWrhDcrV#fs_Zc_P3re77zFQIaYyuRxGqRfaz`@Ftx)LvqIs!&J~N5M^8 zIR226@1f_yn{Xy-`ZFau>ktY}G%idRil{7G>Ca~*ngkCd!W?=@g~_yX@+5x#*st=H6C*;H04pg;Mic!uzd!OwvNKE0?Go%h*e zV9>tv&nt~zRaU6|6Y4z-9BgDReD>I1sP(CA4Djb;w#C9IAQG(Mfq+D?YvZl+2M7pKu~`Xe0%7poV}+Oj-c5k-IDO3njEHHRUAE zoEYm%hY1s({ql7Ss)}_b_oKgGOnAImG@>hCIG%5DXKJ^$8MV~6ByfMlc)m1oFDbhF zgl+-bM!q94VL_5wfL0*i>JJGZv{$`)u=9%-@I+t)=m=0qq576r)#AgZW=p6f22#q; zXu7H~AF&l0xIKr|gRA!&di)3&e^I{wC?=iD8hnB0x4g-duwr?LEsB{AVB$*xCg;wIZ=3sZFZLWuGp}^Q2bw)=XKIUwd)tHGtOUiKcDNNq6&4_v*Pr zmW^s>ZEC#EDd+T?sp0CvWTW=lUKW&(x}gZJF!Fa}eKlguvQ6}}Q=IUmX&NmEKHAJv-|oW)9}j15xK9$42mK4i z>~kXhN)kZIqRlqxc$Nn?Y}wYnwX9fq2#e}mJBGkxXJEnDis?^ z+j~n%#4tczZasBT>F#7JpbZ1H_R6O)rsEZMU<>!4)wO;4I8xuc=Hr4}d%4^@Lk2=d~so0TFg$c|P@5gE9j4pvo z!H?Uu5zH2>Tdq)#j^6|CY8gv=j&P%;*R{xkgK1jDS2Q+ELMiMEjpX~T)-vIXEF4d; z)1V4hfmPhL`Is5N*yr)Zh9|>>BV%BhDmpxu$!h1*pH2Seif%~lhdL(1B|}Yg_B$?~ zn?}@F)56Pr_5w~2i!oO$2AyqE3=*Ajbs~zKnS_mFvR*1w2C3X<&?(=6jZ(~0tF615 zr+W_BczkuKxwPhdV+lRk1#PmJozT0rYlqmN#1ONsqx0h}R{f9+i? z<{s6_EV2G_1(l~P{hiIJCA4#%eyLbO$tcZ+JUn?{slhMq{5iqcL&kR7x~m17t&UzV z(o!%9rM!Pecrk)3UDRRl#mN}IhW)n>wdh_d)gtn_KV)?@N{A^lmPS^mU^Up)>f*%n zO?0(SkHMotxxsGLqj^Dc4?`2RkVD)a+5LUw%Q5~BY&?ae101*_?qE?Pa~D~Al+CoG zt-si-hAF!9v^oqj2yCKaiHKMs3W+Qa7qnQh`S6qyMWmu(Auv-h7JJI53N(G&;m_gG zH7;0Hp6D{PmnOWk(^R&mT4oLY1I&K))J{??t;9r)^DVYX96FFUac^@N7?p@vN-H!N zLWD-G&#Hc~XaTmG0?>5Ak!j`Szx*Wi0$pU!&{g95%wG0)J)t}7=Feaq;E*JWRamgX zps@U?5i68Mv1;H(3>(y-zC6}Y@3IpOuaVRAIS6O;HOYNdG&2;%knK8Z9Z^2;fZfQT zJ|*7`7*wxrTwGinJ+aaIcG93_?vC=doJm(4x<(W~#Xx|m*y+FAAJCjm zJ%BQpd0=w(TB%N|nJi4I(UXv@qW;}U) zD26>(NYV4}%^3sa--J7~nFyk}u7@ie6;NGR#m&DP*vJq3!lCcGrs z+UA?Y1Mb&eb9z)-0&QAU37)mAq1*gK zW(xf(Z9FXN_$nrj~DEG#W+i<3R6JSnANI2zVKEjpl^xp`%Z$v7iXl2kvzw zi2WE87?#GXLIUN@VX3*Mu2A2@+BresmVG(gm1+3Z(Uquvh;JtOOqK6IdahO@p$UY{ zH_WRPIha%m2sC<3?~gdW2s{-nqH!%vcf82#J(}`-ng?vDdRDJSsz9U0hK0`>tZvwFvZZBld<;>|~eQ4yanLw}Blu z92fjgSmV+(n%T?T(6V|(E(IF2g#gi}fYM&DPrz0Z&T&`v3z1lHIjKc-Nd*FHH4z3@ zSTZ-xE>C;CCrS@+WBw`T0mZ1;9p>bQTr^@$c6K)!ioVfnh90us^f;p`ID^Mb(Q7oX z5p$W)J1T42+bxa}o4H611%mD+pa9^S;06PxX`X)SM#T#yggWHh9v_^Gt!ITI+AEAd zJ?6u&wdFJ>I}(CWDx<_i6){7Mvwqwz{!C4Wz+p~ynT&yCHz!Fr>=|XYE8tB`kmFNH*h6wl1Aw+zO%-T9wpe-LYNlo5*LR^b;1J3cS)s+{K zu(EajPU3#VBN8bte@?Q#+git(QjJu>DDra;bZbDK56tHPg7f?;NgcZjb<$=1C|0b) zJ;|@gKaLtE1&L#*tcv!C6zflrQq{1by~&sqBTnI%n&x=2SvPMM?Shk- z6!6`b#$!aRuL_tHQtZ%D#VY9zB`Pdzk}?ZAQ#uwm1gf-ns%Ks3zZ)ZUNZI_#*5dIT zVVO$ZVQy~7UCFFyg2zTbRlR9RqHhrNA+HeA6n0cw(|3yM&~{kQ_`S$RoZ!$k&2MCQ zZ{C2=(!4|FdC)5~2{$TSxG4{`INlOP1JERslObty;}8kpV;s|h=x2%^7!vhx6-g}u4Gm_Qt8&E4)bPf(<~8KpOZ~DX_?2O zyeYBH>v4APXV=?eMhcWFbabm_xuil%7^L7+8z@3YR-$CNko(y)!+3$Zt(zb)389zW zqi#Y`H^nJaqhdieqd@x_Vxs?IjI&N{T-usk-432VdI)v-GZ|$f@RAv}iHyJs^_s_XG}3r=74YY(XgGbgusrF^*}a zBWtmbe?TK(O6ArRhayn?*<#m4Y$BKbXOy1zL`*N4=bG}%$UJGyx}aAM#JJk zUUhI`y;gkC3X>DUl(_&G&SH=XI7lYt z-cH%2c!pa?k}6=6q-4FWMQ9I-Dq8#pGT-Mc*D0x0HB9~E8?%NN9v zPl+J7Jd;LsC*91Bh^tkI>G9Wjqw$N=`H>vgGVEJ1r7*uER=(O&)=|;txz%;z zDmU)yy36iStPo4=3DB=>OH0>xBU z)Zf(#c`CBuTxJ*1mu-_^oe>>IR(qWF3Oz7w|BY>u&^MxNOvjZi)hyU?<1*HBD)`C8 zPdOhgc1zEf)m0EALyHEo=vvm)6HV2Wxa9CbZ0eCQnUBK2T8VW8F#}V2#3iGv9+vtQ zxxB|0^K_=R^AsMW_UTrVyRp^Du|Ko1&aULB7FE%(L7cZhzEO2MoDp?;ar!(2P=4f1 z9%8}Z7d@{X?8uwYxVblAXZx66NZZBT4e6_e_#<-nQcD#ha3xj+#Eby(DhZAsyM8`w zoQlMcvR|_j%UhdVEbB~m>Ak~DK~>r&p3?0mdMHG61p$iB?*E~P7k5rn)}d#2&5_(t z1Xzl)m+vfCRd-LzL~LYy;qRpFy%K#UuJ2OKA(D2^k(au-`QJnsW*%D&~LErCrr?fFKz$h|V>-wjqi`RZpu= zW(O3CMF{DB=yoff-x+nSF-KGW_#5!CY!3@pXjmYQr^&`9K*urVj}nSQA&P*I@I4h&mxlgi>nD&w)juq+<+Fv~f+PkXg2MRE+TMi`KQ;Evazh-==bF|)2*3BKFXpElW z#fC-x6PQ}{-I6Wwsaz`3zj|yNzd6`8*sosoWCrzxHxBP&{+ZKOw-F_A@C|b`hU*Y_42We00hr7#5p!Fvhk5uO0S)dhmDvi5UyhlEh_Z4cHJ&{o*|E z>_~{$8+^M_(ptXzO>rgLee@BGPJ$zF5e25bp%P-(`o1R53{qGvNM0fkraheOa7!71aR3oAxSOXQ0bUCEaaJFUj^Kq5eywnRPJagbC6Mh?a1Jp}E7` ztM;nUk%{hR5=!eK>Z^n`{srg))5Il)y z^~hDlDq_{NI6!cA%XP8$!c&th!uTP{BQ>5%ghR$>>kITwA{~i=A+xfV7-!sXenM{Y z?U9xdn3iirgDBRE(f_Pn!Xq8-Tll>{eT9H=o&#}^?zVL$=RrmbAJjq3&NSjw2p>6# zK`Qb5C;_}yct+ux>4FZz*o7xFM@W2>k`}RqXyo01q>L2GLKQ60cBF!sc)rR>F6bct zl5VN!*h9Y5qNP;|9&#&bx9TN5p<8cAK*yG)w0B8CxIm6uWMbrqObB#C#AK!=qt9_xype0O*xU5y+NIT%l2;k^J$^s6J`D*c`B_s~nv`>XD6_b-o-{2B)1r{mD`w@t-;o_Y_=RFbbM6H}DzZDG zX^(>Z>EoXT^f1&;par8e5p&YYzAM5_=?Lr zqF-sXwSPLGxZ{qpJ^>5u;^$cX%52Y6!QdDSgTS#AtvTg6J{B27UUB22uqS{30wB-T zHMjo6(fJl6T__yxe~bv%m_vEQs~R95<>pn!Xn1HW6-O^-Ui!!W_moVW{+-LsYxr2V}} zzNXh#;%uQRC1CHJt4{j;=mz1LVOJUJ6P}9KPc_0bImZsb*q6kw!3q$l`gH=p?W`($(}?@h`b1HW!LoO-rGQ-CHr!C(bHT{cVZ8$Q#JF}6=a%~jPuQDc zYg{{Q`*WIcR6>;&-vejz=fA~$b7^87ujd+P0k#ndNd&t4#Rm8FjP!k5XFkJaj2uHJ zCj76InJ<(Y>(BjYh;NO&ZaRvLBt3LAQ8f+0XxyzrC8T8PR6N@BQnk(qSwq{sR)caL zjLkWgICebHDw7c)EFr)lLZOF{!8OEONi9<`4HB%ND(y+tPun$Hyu8hfm36!mj_4yE zD+0v~0T5FisnuWd30g2_F&mZ66tFUQ4j4S#KredSZ25mWXCG*`>Xog+0?xMzafSP= zRKr_o*{X$r+1>1E3miLwLUGGXRgB#YY|K9PUG{O8b2L9>%zy^g@DsfLc?Qt3mLOlq zNlF~3MQFuZw5`plLS(_ku79VWE&z8o_`tU5c7soUs=aOrQlJ|4TX$Nvq`273BA$R6 z^*gKSkZSymj`h$I2M~Var7k+t6{Bcie@&soBjUzHp~EhI7rYbc1mwO2{g(rJWOhtF zv5u2iHwjxWGfI@aiU?K~(R#)rQ`mEhqPb$Os0&0D4tp7!@8y#>2 zLj#v=*IJVB36*p=-r)FUPAY&0s>?R_Mv=!;^Y$ixE7?*hh&_Ma5p?T%o15DrgI)X5 zgL@0w_VHnBh0ctPTmn$9pFvQI&$m&YgMg?3(@t>Mm$`$KmJ=k{>EJt(@*ueL10Eq| zJfOc(`@jT?6PB9&0qNcxdL2ucO9Y5zfe$aVx-fU4quaKmwIeC;#%M%|wYQ|SC&?!E zo`kViA&=5T@3Xd5PeE*ySKIuHRQ^o}p(*^nYKY?E)aL7hsMhL&sT~S29mT&)mOWZ& z?^^afJAxsKznf4Aw5b3}Bv|5SHe5VcaN3S!{r&NpZWrG>ev?*iRN4aN?G2ua8bb*# z*ANA`_!1dUh3FaAm`x0choRD|h`bXp$Fh9U9X%itz?E9Gkv^xl#Gjd~_#z6+5fW@E zz+q&(hm?V$xI1k-^0{{PNv`xFj{Bmu*|##`tm#fzN7QfX>sxYoUQqjHcgsvGkT92qZ-bsgWnln`kd9x)cMPr zNmBelv}0AhP1pKyL$XA?_Ae9G5?q**r2$+?j$6CRLKID!%@rI+;g+f4ZNN3+&htX5 z<~)~`7rH+Q_+GunH#E|Mzb>*>R+lyMAiaL3PJx>yqr`~5(-lwy+v3Ko0_ALksexRR zu8+bovs&jEaIv#ml203d5H72!#!Ew7K za|vw8BA^#H^NBoYTZXCul&lHSLdHR4z{BHt!N2`;T+l?Nae&u$|K-cd$H=U+QQ&8e zv*hbT%oC{pd28$Xtl;zUIPhQl`PS!KKe)x}YEkynD=k0pY44YF;M>N}e>Wr`zlWdy zbmFfkF8`@mqR7%o|I2happ~W+jG*$BeU*t^GEn3N=G+|0b)3c%01U*O5A&K^t}6Q39pLg>{8fzby&zhmiNZe%4g z*ciuq5+NApPm7*Q&p5scMUF%qroQbJB~fI;f&?4-AY0FN zxlCj>i{~(4f*F7Jyi2(CJv8toO+HxO78WxfSC;ttzr@1+qp2d+7R2oLVa88ZU%c;* zv;nE9D1^5v*R1gvdl|H>KNa7{|NB8pCCI6w)uBw6n&R$*?(ol6+GJh{;HcXktK+*- zcG>b^sy6=ovBdLozQ)fNr>omJh(Du2bjm;yhuH1Q>E2ehg}3&{7!NLn-%S&`G+PzR zwVIS#`V%cPwD&Y+1aG#10nrP6mAfqkre?Mf6`@8Z>);Z(!ryUC(KoHpw!m#q8IdL) z9QMtXdIA@O^Y7bS+t|6lsKk&=EbDT{YPgO+_c9h$TQT!eojK;uqfF2S&IOGZlZ zIta;olIQj#6-$OYm{MY;BfVj?oeiq}W}n=|T-XuP_F$^DVUE>Wh;xF}(@C+kDsQ664OhhA(bm z%QmxiyY{Z&3V(rN;GRJA7l?|gPLW+4#P2z~g1J4*$5xEDU*cJQwstAYWj{{*JH_$* z%v#Sp19SRIk;`_uBC&6Oun?@g6i5|fAio_>6kz284o`HKecU)vKalq)z^DXwGzCnx ziNJtUjIle44x0LJQz+Je5?!dGx>p$TNXq1B0Uyr%Li2qD-5(#N22|xMm_#ylSN+?! zCfw%^<0%oLTVSB+;l0^jOp%(@qD4VI+k(fZmi3)hF< z2}e??K_jUY7azVz4CgiKDRpcS%T31Y`R8%rCWCDx)s7Bl6@X{;q2Llg#Xs=GCOTw2?h%?`1}Yy=!)k4JHJl_ zFv7z#wdkVfi(W;++9462%bef)NR4*ERL z`FT*l9Psh_>y)l!?g`lqMW2LAFpQ|N+ETuD;%j_)YpOc!wLe5WW(89LaVkHW{3NBjg|>xGJO!-!5?t5Q)<*vQEHg={(62grKw$;_@07; zIN}rnvt%YCqx-i4NF~inzI&3g%WV9zfPLSFiJtVF{!WHu8Ap%wOA+9@^qEKwODu=~ ziTomtGwG&|8NW5+(pKtJ+!AuJ9s>g~qI4R%pxjx_T6(=LWON_gTk`4q2|ibOWkB0Vplv1nsixy7EYoK@SwG zKxhHYgHS;>NDcEy5J!?wEX-IzS$U8q$KAkBCR~Gbw+C09C4%}(Prd243%ciiC?2~S zG9I*7r2)}Pw4F*lOn}=dsPx|c8-@-sugfzvHsSBzEyMt7 z=x`t+h;5huQ-Pf4v0zy7ddlngW6Eb^X4m7BceCsL^%u$Kjaneu6zK1Y5k;By){JRC z+pRihm9l&0O(>!?#QBw_DeSbK2SiM3nk+;*%jGfup~7J3i)K)@2SmeUKNF;a zJ`se&suvQA1@MJlq?aGAAvQfj3ZfT|C6Qtvy}dfe7J)_VPY$^^2{q1+LgRs@c{a54 z!7gZp_0@e0Xzqdnvf1;mwT6hOID`cRS2=rPx$x)(fMR^RKR+DSg| zSA;($ks6dddY}C&E^N?q8$KKCJO~x})@*(^JeT}~_0!k)ocfj0n{;RfN@jc1j54J# zzbI1;iA!yKQY_C^_JNL!8z1R!^mSQ{%npg8o6Ip2?-n1!4BO+0wY^5tWvzMZY&M^8 zg<0R?JF85g#To-cK?ll~x0m?Ys|^1Bh3aY|@A$4;pNa2a3TcM*g8u=~x)h{S>oqo; zGW9GvmlgP;h)ow9VvgN4Dg}sZXrAwi`i&*pDf&mWL3uy#uk$0r z-Q3XRsB}kNt03bEu$dWkDeWW?uUzFQz-s*hV|KEmOQpPP(vhA(>TfrZfF2kvU?w-1 zj1!2+YzI?u!I=qqA@Ql1!XT;_|PFLK&g%0ljGcprepOVikHD6d6h7#UT1WX1{QHV zdsd_i)O$v3hSH1f7Ujl)HSltcE+c&@iWHvk=uJC1B^v#3xE6#8NAdltq2#e(kF9(kyCUalX3wZ#kcyp5sOqPZluwrp{xjax4)((5|wH zCeb%W(wD3r)~7@w9Yhwh{z3~Ic+`Lu6No@tp`eZw(gi7=fA{}-%kgw~l+DYBAbKVI z`QF6w`TDEO>&CUwj>O_;x1nzByjI4x=++yvb2h9R3*Y$YM+SGdmbl9ayUC6W;$L;K z#1g<@qf+8Ict^8@fFTwQnD`lMMszzz8^qN84k?WpKX}U!V&DtsA`v2BgUB=er$fub z4W`pEo9`Momoq}3qkmgTy@2P}JT@U@upX|xUtL}NnK9MJ(e=#mOdu`P7C!!N)+O#K@?K z2umB7;o{y?z7+H>k@I<0_pSR23E#AnLSXCOuRuGyWOXlff1xXy`X9cU0vEzWa_>+SmCDHaUAjd^3>0`*Tx%Q`yTwsxcNx``s?pJ972*Q*4DK9+GU+2tKRtouhDRQa8U z@zxD@RaEm_*uq{BT}j>|Hu3@PREA1Tdu`B4Kc>_m_d}dB-IUC7Oc{|s-fd)PuFWGm zUL(LSHJ*dOFE?JI%K&4TaLnC8#=7DZp=8l<98D9duo&@ld@-itG_qnEmOV)loqSNi za&9A~XOk0ZxDLvCq{~m2BQ?+9YDnvwdZ@;~wdt-0xYew)xbna3(_N?&4JmBr6+m5S zUbEw!i{}+n=4)L=ap9q7FupSVy1%k!g#-|-P|&Jp5-wpLAens z!=gIj8F(OdX>$Q&O(7-WwFrP!((dlgpK)Bxz{=YKrO!T!2J<56DbzeRQ_zAT@0q0EhUS1 z5KDe{8(X)Fyxx_PEjmh&8%hHeD6vi-MeuN&Fk?8d>0nv}zRuH1j>9 zXczn5TK~9w9r4-picYkfbHS8v&HR+{xmO=5DFI+M^=NK65n>iovL5|M2ZOy6V8J3y zK%!e52zED>B8=I-f?=KQ4_jEZy*!6rvz@a@h{S{5B>nJVXa|KHZoY7AI19-{dSW#;(3E&3Mv` zpwtn-0VVTQ;&~A6iaoN^H0#@J`iBF0u`-v1a*Xyuxg2(x05xRLeC)^T#Uak4$HgU8 z5W#mqb?dmR4yZu_uv|6jU*n6Q;bXsKS$mwAlS2?HJ(*U3T@U7Q5gCAv=#JOnd8!=Iyx4t2OK0bV0+zx{p>ZG#$-s28yDZ`)v^vdc7?vW-9#Kyvgx zKmItxnXG+$#5#Jkm5I&Qutz};oSj+I8)S1@U17cA|JDq4{#a@)bBjyMl@?%=gVo6R z!s}&16XbE1P!yFu9M*1jCWM|FPqoE zIdr0;Om)y-5KT}qX#B<(W8Hso9gM|Al<1K$W9)`bj&XJ;)302oF2@K?_(&K!#G(DJ z$uB1v4zNMO1hZF3rXV_rM4~^W#d=^{gL!}w-uF}riDmrn{x=AihXI)6s}AL}P>X3-Y4P>NQpqKC#ZUwh)C<6gaRLjL0{w6oNLExl(P&%gC(ezZ=7A ztr?o_`9#P(xPr4Qn^E6liJo{OmakaKKb+jkaG5VkNi{!%m=x~@9LG#jDsD6*5Tk6` zb-qC5VFpuysJ9D;NBtCOr@U@*q*%PSJQvL6aCcj)SE?|F_^yy5W&O}g zUVl2SKE!mYQ9a13JsYZq`H%^j!LKzr{&@A2I;;b%eS_j@YJYc>e!L0#-x}@lwe9ZSVe{_4A&4618#eBcVb+vw27Jk*rU~7KXT)+*AR!9`Rx1 zh=-n$qBtd+p3xT~EPO`LkwOzoVMOk7=UwS>j??!FVUYVXF;Tv=9ra$9Sm`V5 zICkwn@3T*XNa94 zEGKg_CkuL3(P9$;?ui!|vYBj=-Rn#Q**%(C2~5}s7`iJm=USB3K@j(Gi8M9nFsanh zxE@KR&od~<>Q`3sh9x(BKlJQ|D#o)x!{51}q&R8%bkq8Oeka(8!^iZ)%Qv=w!w8O4DG1S5jl*Wm+rXM0EHZ^x`HZR*&(1+xkG)WBe zNrEY|vX+Q=7K)Gm2=O9@1e7mjAaktQbq2LwOu-)gFh}05r&4ZIh?@SC*JIkLUvz^^ z9e(#xwBlN>v1R$x43~rkOLYohsm^;qvH{ll9PLQ>KQ{gKB@hkS2B@IhgzgQrmYj=wCmRGMqD|_~G)TOOX>c!=a zbzD#TuymK)u`t5rw`A@l<6sv82Aho(z?alphc%eqOiKa?m2ZuUt>cA2tff$xE$FS3 zu_JWEP;_$p03DL1qlO_7lIHjJp@j};`0ITsZ2V)};~?nuH@4=ck)O|``~r3l2bAUp z@w-hUr+_`;Ka1%5@_(gm92)_Zk8Cidu+SN$CJw;?E9ca4f77}Q>QSo@Ckw&y zO1N8Npli5uMh;e^`B>yQybN1V3*N?h2d5`p;a-nuc1hI($e6z1u&I#w=7ywwhdsF` zrW^O!*E{_t_vm>S5Dig&XQV&WQ*ajd=glN%8cfXj6f7eeB=bS0?)L~+W1HyrEb?T1 zp6XrNcS8%f?zwr^pg8~N_1pu-?=a(nhgg?f^gUx z9Ypw{$4BUc?U-emo9Kh(ixi#x-|r9d3kHg99RF10&EvQ^FJZwqs?|9AKb;2FE|EOt zEuFP%{dU3p()!mJc$(RqWeh;@K%>@v z9K(K}x(n%-{8V@y5DLK7XMlp?(9;L0{wj$*rX{0;IK|M)n3@^{ee(7YkT?Z+ck zl2}@Y{$bg4e1KEbeogIL(wN3J%6O8tN^kwaOm}`=-$GUO?&7mT$s{|sT8#(KDZ49T z+6%2h9^u2;%G5;uQQ#Ncxl^``!~m-$H!82%5cj;@#pfaBN?A=u0?GEffX0{|wQh0K zQ=pcVavX+Slp3$<3yh(do72oD6{W7~U>iu)?vK+4^XnlXPwwy_0#kc*(-~xxo=xIo zb)a8nHzcZCZi}iMjbdS9za(7N@bPOgQ(M;OU4Cf41kgLlm+-T^NZVAPkG?B0=Jxrj zsMb4eyc1as5A&y(&XvbhVMy+-pR74}TpzLxxh}B;R8}rSzlFt1!0tKjhILyvY_&>C zm0gDjr)1Z>grUAzF_@qApl-En7b#=o+EssjOP&R56o`Q$fw-1WKF`fUin({OklK>m z$0g<7;nwUsTyW+1v5@VZ^Kao*rd7@?T>OT$iD2pP(d?I|canl{bDD%YA+(G-s-;9Q zjBtcrvpkhj_d^xE{?SVdmBL%q_DRcFI^s-)911+$jK8e6Qz`|T)}M@(is%L7PCb(j z%{j%-O1gzWu;(~jxqJAOBn%7ig^XcQ301x#&=xVO6?ekni9GAlYJIV7=PmYlo7p@6 z4G>+b;AlVz*7+j^>^Z6bj`~|m5I6JJOJsc&9rK?I>HfxfD8gF^uJ}v`mpBF@Clg_5 zhT5&cZpR_(hMi?16X1WoZ8qt<{lhV5j+p2cP4rB#KWYEzo9fb^6XL68#k;q#pm-HH zGduW`N|-Y&zLqbA6uEqh40wPmJTy2fPi*%}Sgg@tG~|yU6wi2WILy4at$m!Z3wFmt!20y5pcmWS z33+UQTQ{A94#zAB6b^Uiqi=moc|DYu+j(YwrcJdzP%=Isu zyA{fqBw>aUegZl0E3CWxTJ-!b|8Piv@a@}p05#%wq1{2%co%OpbfC|a(%vz2|w=@8Gc0HKG% zHk!{pIc&7-O|CkAa&gHcnlmeC(UT5i=BW+ChHuK0BJ6-4|0}F~2^W`Z?TkFV^#Zr? z=tqeRS*f=PbFD92UMhCKGLLI&NjvY($ctIMUPLEC$uG@0(XhF_?=vZNR%>{84wCf- zY!Box(yYHm7j&HgPbRF|@IXIGwfzS;1QY*>PNG?1y>?-Svx~X0KCw+QHO-4Jnf?wJA(ckwX_wQwI z#qpb$RPZ(K``8)ki}3;0z_4y}4j+H?8bv9#oifUyc2IlhEes_A`jbP*U$pAgWZ;!04T zd=)CHRR!yECib3Km$>IHV&AA@u=$WI#iWZAPO6S&X<9rZ<^pggflOkVv+Be1B=_@b zVo9&QXUfwbHWW}8wRyi4AVcs8gKu^!?H_Hc49D)=|M~U&SJ?$_fMqv3R@qCt1Oka(JUtizw9bFZ3G!gJKfQtuyNh~oLgUag=U@;5nH*<%mXoARntMw08v?L_8mzP+@&a| zsP7E&prGtM-PJ;`VD9G^cJ%2_ot}iNaD=_rxBYmCxdPT)&UgU@;vr8=etv;eJB!uvC&G! zBl4hp7=gPw;ZJ4Gy0iy6d)RaJU2K%$KG@p7I^zD_g{W1#e^d8p@D$=8S;}Tfu)u6J z!oY+05!fGLYB2~}t>eRE>)RAe1^*MrwLp$1eNKZrU8K77pr z1%zpXqq3AMRk=AM|K=+e>pNo{{=P5gaV197r&i6UX9bqlzKRc3gBbuetEIe{`FY?! zXy;c4gH&96kEp-JDh7*-@}`Ih9uZ7(V)Jh=v92}GJTU~_XicVIkg7)t z6PpgvCy2pjNu2n{$mZWcKd$xNRRX=md(-IiN}KAB2ey(__S9mZ9CHp}xKwEyvV0EQ zZt6d&KC3)wK+}zph6d5`bBI*D^kPB37jw!R=orba{*p&^gKaV9<&X|d3CBVf_h4tt zFT?f|E(BPj8OYYY<;N8L8dgT0i;barm5~j-)|W4~q6=msa-HA?0e)#-C|iGFa4D;b zOYui@PSP-z$7{xd>MR=2DFVbiroSkucTrn1w}saOvnxDY~{R~94wF*&nTwceSyNboer5SN_n&gN>}wSAk{ zjVw}nf=3K@%Nf8Jea~e%cyqY~JcN;Z+9SUFLK&MZVi``{NSwwkMR^e)0@JSkgL6zS z1R81ltC@|WD!(ef_c9(6XIqg3gq2jUBOB0(wvZXx7M&XcWXv~xuXr^stBFY+?U+B-yc+d;wT?&eSp_c4wm9e-o# zmQ74kzecBf0K14QQUVLMIJ2sH=LrW$V=!;3PgF(_yq^@bLKvh5z{ZRpu|duaQKDLw z2NMo+Ul_40(zF_?4<)fIe3B@sc&$Gh8Z&W-CL145yphVZeZN1k#=}=UoNczi?YPtd zbybnk*b*mUo29Fe`&pqy;dpuHCK*hOXb$g4u!KksPdwt|^(u^{=}x!LI||}g9#NDl zJOknnE=LWxi-2~jv_5Y*b4uczmr89b9zMP}a@$5ge>JSWV9s2T@QfQ&21i(Ly3j%T z23$m=3tb6kH;=^t!_zJ1jxDte`BkPeJ9y(r^}5@a$Xx`Ub3y@46S;8z3I$pFC2b|3 zoRm66WM{cUf4ABe;v^(%{X{Ik>cT)?B?>z}xP6Wq+&i3h}NFoC@u}eAjjQ@|Va}2KR3)+3miETS4 zwr$(CHL-2mwrzXjOl%tyJ2(ILy`OH~FS~ZFs$IKk?NfcapZ-0)OlLX3W<0Hb{j?S< zwk>8Bv|1mwOn#c*w4bboXNs}Pejz35MGgzhsd{LPp~ONN53^=xKN!P9bcy;jUq!l? zCT+!BD#Prb{2m-AEvDIN76U46+5psX)`PicSi9c$8~8q+s^tXZ^5pU;*M|*ZMtdK_v+P#^ZMW=)ovT1Z!++L(HE)JONk5?K&r}Zl21rWM*0?G7CQhU zAvv^CH*7odGd>?oa*u``KhK(f?&pKW&kBV)Hbi6v!|oA6FHEivLY!unm1LP40>b_!1ry za6sL|#2sSKJSHze^B;;D{_URNKXgf2OG2_yCsi~gbn9cVp?bBu2(gT1x*^RZ48Pve z>xHsk1~=+cRvV-Ojp$O2E-XITs*lq8pQK3Anp5-pEJi=fTDLOTT33W}qC4Th7FY%- zD2~b#gEY=>+}4UyVDH0It{4+%ywjk@$|fh)}wd< zM&Lvggo_?|Ztb2l|Bu8+)j|Ulm%1^jB~oMSyAZ%p@@IAinW|J@NVG4WkQ#KT56vma z`%fO1|A*?^TI#in#_a!H;^+rTq?ru+ zd6gKldVGj2k%cUo*n*!@1_^c_|4>3c0yZ5}ieG>%qUNt7zS}qT!JH(UQY(Nd^SafP zEE_BYu(k+fLsq_UOS-g_Kvn+mFr)j;CDBDJoucjwB72o(;*|deTJnw@{7DM9KR)B0xYjER77|eKl$tmR)S082d~QVgj+HGEe88y zCAw9NE!X^3>*P~*vGtlQIasxy=_`Pxz9 z+SaXj1)nth>LMrVqn!NGCbq&85HLL@3%|X}fZEA$kU><2(r^O;CjKxme$X?zW@Vx; z0Fa4}ONsNZ`};tf*qQInkH;Ql>8-3M&0tJxaWe>Gcs$eikJl0b#C@J#eO-&acBZfcf z^tSjgt?`Fc6RoiJqa5)M@D9vdVu27;KtghDKPmHc|Fyq(k@h3x`jE@EUXms6LDDN~ zek!gL&OT@_6o}MvictV5QWy?H%(JEu82aq?n%Jwl_;6=mYas!LUOjjgHdiMUqVpvJO%9BVL52t96nc18>=S|IL0q>?%Ev?Cm zZ5vOO9Y5tg1+8DXYV$P~yi(&wYWxr5j*AW`y?2^X6^7^EKQfZ|MsJwZ_k^nbds4-(=(sEI2G7^g!&($gVeYtuygm*`|OHwVHd9f`y!&QBKQgKG6 zi=26?d7I6MG;z-UQZ6Uz2PsJ~XI@-K&afm#jTSNEvN^=;o3}aoOKziXjw1q+&csJL z!pZFOC;jX*P@Bo~R~EaB^oP9eO60K1q811wNvSZ|Tl-D5TI5euPeA#3Q@X1_raS92gUD=4?_0j+>AUZ;Erko|$56L32x<8;tHCqSuKn zZ$vRB-S((rdOwWRavyR-%tc+XIwGemLK2hHOg1d{vyH1%t4~9(rA+A5C5QI_qP(9% z&F9G5l@-RkQ>hG-TC^ZoN|Dme;Jjj9VS+;&Dy2}t%o9ndoQ0JZF2$wyvF}5VG-)G> zRE25rSg0h%u&5xB$){fB0a4;un+&Y$l}}V{;k6dv6+hD0!*&c)v#G@jG!{a_>OVka znqm)K73~x})D-KnqAj39DH_=xE;JyD3PV@AjW#m!Gdv>F^@zjpl%S;3t4n=Kx>%~F zlH68_^)-M;L*`Lu)?fpEPtnV$Fng?Xj>)$gRlxHP= zzBv^~WUduwU6ZVNc~g(XuF2k*jv^Dxn>XTQbUm=z65R}VrJB<<9e2Hnntw4vQs(=N znbMY(Yw2t=RI-$mLKlTCd5DvLBC{qHGYd<9!lVOmDir^A_^mt&-+){ece*6fp1HL! zgb6>y3B=M)Q~<-2Mb-h`D&d>a*O>4DKm#NpI+spLZ4m#T*DAQR)xA-X^%W|P8LK>- z^9~mO^nUC}s3l`~@rR4#i{(!v>FL!H4vuK>#Zq0g;Q*=M9h=kgJ}bgkVOq9j$soQ6|Sb}r9A!!&hD5XL}lasD0K zCqGr#`O(EPbdi~UJW;Wq!h3I^KRVcinrImOs7V*!8s$h0oCu_GqpGurIOWJm5gE@ctfxxcna%%9=dXa?Z!r;4s4N)i`g0WathGqYozg7)A zL8gv)U@MRe(Iei!+LL}#VgG?TJBOjg5yK|!>e`;^k7J9~G>&#nWW%Q~GZxMR)qpN? zAkGoTX&!MqD;Mr_^zM&Ta*Z|6v+PsN)5gX?BeJYL87bjV$0{8a4j!o86PKkIB*7#s z=a2@8BN5ial+{=@K1 zd>x&y{|iSfaWw>%{+|f~Drl=eXSWLe*pdnr5S2oV&BD9%yavUUl(6INm+P-T%iZl!6JA5{hJd8p4$eLmK z&S+#g3$A4LrBJv9$_6Il<=wo$9F@u1UQo|$G`-IU1H$gY`oPd@@>VUXp$~d+V*FTd zprDHq$KFf+ez$9NJt8gn?L?&&heJx9@}ECAc|EV1r}+M> zrp$o;{R~*%in+f`&d)fPQoXytBC|+UP@!$8Wbw%-+u^g2Wg;!kc9;B-`ACp+Ipb>v zbPto{0uVI!@%iqHXK=0B9bY5_{mPP14{A?RQHM@lh?6zdix*cykz^SY0{n-1)4>|ln^V({4FMMz!k$~shv}PW=;-!NQVD(YR!&^ zIqf=@@)^7+^P-N#P$yMrU`+K|{#rK^s=INtMG9fPs6shcm6)CN*QM599*Q!x{TN&D z(XlsG<8>3fOmtpe`~6_w(93@*tKU7uEN& z0Hch>rC=Aqn?yX&p}uTlV)d6HscmzP(gHC_?N%JmHwD2`HH!Zk`#|!ac_zNYXpqXp z$^j!@G4q+J&83H^&EWtlV>wMbUhyVfyHLSN8tvynJ)RJm7O-*m1cA{gFeY^DsXv}* zvDSLxVug7Kq+39$cjzak!6I?mGE-~Y)9q&9DiK~)eOt%9O>i1pR$?jX=%8v+g#^$M zKLo)tUqo$z;8h`$4mr8d1XHw#n@?lIo#{0qNrEOuv`WEW_!vVdocd#XmJRGZkNygg`3bW{Ab4W2S+A(61^f!Lsh^mO;T=0(hgc*hbqv(+V?kGQBam{McM|$NT=-DNu8NmXry!**@Jsl)Dyi+We2TT|UrvUWOR5Awb> z*L~uEfoIrtafBK6wA{}qQ+Z`EgApI7zd|BY{kX}-A*RXX>pH&d#wmZSxJsxk#UIK)jw9R*d zT#8>g$V61~khy+!dqjy4JjIqQw|qHrt)BRaFl9t$JY=Bug2m5!L3!Q|1UHrGq+o*I zD%bk~7&IwYcJ_aOG8?+bm=g!vI5D8rZmA2e6n2^8v+A$RisrZE7-V^q_rZqwMgpZG zdLT%FpB$Sfi%WlG>XT_65U2mi1&H1r=mwz2%!^ z2p*E!&QkaDxId?PI9~d*Lf`BAxqnmF_p<*O)u*W`Hzv*zQ;FC2y;%2sAEux0=l3{v z)AwP^tEcvF=i@Q$hg!Ek4?q;E!t#0VO55@IyxZ9MKG*mAYJ}*exUGiCTL_kTVB{1Q z=Lu-R8fj;yV0LW6U&K@{gNzk)jX7Q%ojP|A-lx9F0D3A1<(tamcIJ&0t+kjQ zm){=-#&?(r)%i=k8-ZU{xM!Iw_81h^9mzfT(rkB$B!{;cd;iP5$wf;1xhS1uk;jBX zm4lc{QNr(lBKU9hHM1065B{8h!^8=UkJvooqE?E`*_30kYMD3-a2M_Q@~=`?7w6kw zaGX`zk9?fJ6A%&8mt=gU(u+pJIMg{RP&h}RtEfMy)Eu`+<1mQJ_eYfiN=ODdu){=d zEH3oEBm5uLqQAgE4VN-M{Q<}rRH(caNw28RdZO3&Ns7@))vhxvF;%N$cVIfGMZ&e` zyO5hPh@bGT{byp%{6)iz&r2e=R5969HMk;v6QVKb1jyH;2Z7U!jI^NH*9^af7XMge zDehizuhTs@@U9M@2cFD>H*N=eAy9b|oSYE_lxrX?bBFdCTip2N7O;=pUESYBMh29q zPqa$*Bu!^LXEV80qet_kkiVwZgNC43u$Tr=!KamIpbr@*oN~8I7%W0U*ZNASdgC7a zLU!9x$w{CU5l1%F5gM_`l;xDB8)s9c4%yuLn}w$vp>ZCsfpesjq7+@hPolh> z3fj`_e*wR|?$I{j&0Q5^<(zh$Re`1ElG>`ngz4yGIoJM|yqFCNnRw0#Bhr`GjnbWg zq+q$LW>mWAw7`BzglUwB%BFaw$BtwNv*ICTA;!w4xN3~XMg^;;Zlrg}VuexZcl%T5 zp43H8RLW$chbb9eJH}u_$^{G?zs(e6O>#Q2wC-p zKGxKzuKM!jN>>TO34z*;HLR;UA&SzKF_!iULmmuq%&6oKhKm1*c|@n1b;j|vn+$Ktj6uu)Sg8@68r%Gl$?)# zn@i8XLuU&%3)uz$&4hxBap^(gV^AOW3u(#(MffK%58>?s9L8bu1}b)g*FWgTE53F{ zvr`NQv85z`i;$2~UW!wr2jhYOux`49()BNO)ktZ;u;MCZ)XiMinVqCoRh$jfZ?5no z2bSQnP+1HdFg|B}=!q@R&qzdM!Qkn?SRS*1lGzMAy+4>TJM2*L!9URiwGv zO^o~Y)U2_rZAYeOTH4ls$tA{rfxZ)<0h5fzJce=|iTBq)*)iC7hV)mp+3W|f2x@s| z3+|iX)G%8rvKdk}ZfMIF?WT8)yQCcmCHKmfdI_7-Co#KmP@vP#^4XVO3Jt~9R%O`5 zR1#UxhnCC5O-hYoj&3HY-ZZ^ja$EuoyOVK3a^4_bOW2T%Y_jNjZWdwisryEuHqtw zr3&lpc3MEX>hr_S}AZ@sX(f#YP~M&pqeK1gP?@XiiB zHu2sqaoD;%<7FWtvbh3lb^SDnhf#LLE0)yHQJK-3$*D5(S{g`#<+}B4Wj|waU9Z_* zo{=kSS+a}4(H`11X>MV^>)Ois=fHyd&c8AMMTfk|Kzg=n(%IMzLUu*1U&(Ws8K2I- zZubQA9OZ@C9QP89Av0i)P%+5p<{lT8fy66&Fd}lt`f2wBY_hu_nXqz-6E-si!2_a0 z^H;X9#ji*NOY0aWduolu5;qsk`}auh&h9sMN`5Z9t$EYer~>Qj1veKD*-lyw|)sD;J zK=swP{080U1!p44iB43>kt0#Hs@y>ItdtQ8b;nlkqe5>I(UIUbJ$dkv24O#~J#^YfaRrQSf2+ zdO~o|;OSUB)?+G)9DX|((j8Yglv5adyzLZo8{=2c^YUjIL5CzTZ$J(jA;8o|$R*)| z(pWWzy4KLkiFR*>)iStU?Do?gGo#mwf!NEI+w~#PbRyAu+h^Uw*Pt5D-*bUHlq#p$ zk|9-Y;FbKvVvn!Z7Q*+`zKESr{a>5*MsuWt`J@cvlnSzh9fjl~+V5=ZcPa}i%R;c_ zrkGB7y_vRNjF7}Lf*uQ^xR%3lC;YGETsX)#^^}yOO=caMuTQ>uI7qzpAKP8`Fyz>& zf1t<+2y>eC>z_QE6_}E`WrQ>O9oBAZ!I#VId{&8GgAU|nBxwX$#%D1^kR4-H^k$VM z4s2ORborg4xq^27K3-oBD|z@$qG|B--UGHP;lqDRfWf~f~hMF z2TJo)rXiw)tyFPV*Bof|KeB2KaHhtz#=gjmFC<`jX52F)lG}s?(2%Ll;pD_Lw`#Y- zQoZ~=xP-B{gtrkfynJ=Xm%0Ys7REVWfpcz`a6%35{<8XDdnlV|ZB9A3UFkz-V6Za= zqP5rug9LNkEd(}%xm_Z_)Z?*nfRoskn0|1`C%ZU4l5e2zx=+f$d~?p7)zO*fUyvQ& z_h@T0M2NxZ_C(@d;cKb)RY(Z}!fg`Q0>Al20}B*#;Nxe*D`w(w*xfhitbAqjxn06v zb0iSg@riC(KqFsePfhL%4SEOatXPIyO%%o-U5GZS(Zvb_y<}(&LcA4ac2hw2OxN74 zGi6}6L33s{lexx$PaW|M@D%#+Rqr2HyoTT-zmUpGq#_>6xq5!a#5PG|>i+gr?iw%A zwIx=OBJ^lu_1~8oMfHd-)}0Q^0Sr7`KPGL0Dd8vqgj zloJYy;w&-E>JzC;^^R7^et?$nXj(R0R`o;%LGhu~jnNyfrweaoYj?ZP(c9`Xy~VJLUxg^9s&5;{ zITegZn;Tj1L)21D`B^f<773MRJv_75)qQz8t!Xs&D7qFrhCVJ`(hyZHBl{FkIAli| zo+tfK7>ZehXf)c05;F$7L6?kRCnf*+W^RX<7SqZ^cXG2SnMT+r&;nu<+5`esdPryV zmV&v!SxQ91peK70Q)GuZdxS*BH(c8QB-Vwr8-%i9jQ5MO)uhnT63*lw%{#>} zJ#)t5MJwb37%L0-1K=E~M#4xnGA#6>GTtQgl^$^*jU>f|mIIaWLW_K2 ze_J~KY$tUy2u2%bk4V`=KUKLHFM7L9V5VVBRvf)`=fgqA)9&L@Q?hWl^xAa30RC7$g&%-b5 z47t-R&7wnEvDxz}F`%fJa#ih^uB6+LleEzP3i$}%X+^YQnlblj&KZA_YOMsR$Wrcn zMcZcK5US(v-!Rg>1|9M?wv8!5;nn?Wk6*meua5C?3D}>|+_^O8A0$S1di!KvXVb_k z?8!D@FPYH-5ij{k0$$&=YJO1hrnmBU z{#3v)?h`uw^C4*1>k!I3R1Ttdiw@8_B7-3`?}y# z@s#vMa~|qw6GiGxDE8=o)uaDc`>^DY<&z-<0(vq70z&=2S%!t7lc|Zai<70D`Tryv zQ@Ya5`x33&Zo?m8wBmn%#j-)zr2VO_C=`Y=qzp0;Xvfcj$1<7Ikih4yj8?y=xwhKh zo*vfSS*rH@{VD&Jws~VB1(G~S*16?VR@fCCf?qL}bn-9fCfoCU=yT9epO(L#_jyb2 zs=jlK)@@(b*6qp8-llod+=~`U*3F75*ScpzTWeq&;gR3_nGH%P)Ou@oYn$iS&9(~l zfQcPoYIm-yNyppy;1!m6xbCYOdGj@u6Ye+_jV^mqvBgtMGrhHIj9l+9)ctyXZ2~_^ z=iNS`BvN?n#N6w#EkM`rPu@NGPmS)*XNRisg<)Mcv#mDxwgHnfFk9*7Srkf*myGb3 zyqCX|BG(;X+hblL|GswbaNFdf;7Go`>3j*@)yj}@JOu-v?sbX>5mx;$;0kzUTYIOD z3OQMy4~!u`v9k+RoB1(KwJDyoS~D#%re!Qz+8%OtrIFX1ac&R7Gv4)yJ{>MMU@Qc& za@XrDpOKRMfv+}w?Pbq+-zI*a4vA~YW?FJ4#HoO*&clF(77kt`9SkNpm<(vxl z#@LYO+Palx&({qx^k^NTu0DWBFb?I&AfV*MWrNS)<4QWVG!T^N*0!{y@6krU`J<^p z=Ssgl2_O~IwKfWi@9tLBl0x{VgpO`9kz$~KC|vSKdqNA! zZBPR>m_(9NBj{@5=Q7Bjr}q8q*N9E;$CVO+CiIMv{UNt&DE6-re0F8J%Y%bGYP)BN zpRWp?r(^3}+I;yjwfTbj4s804qTJVTE8W@BO?o8`W}@|aYeNr}0n%(X7oVX=)w3lp zJ;p8!4^LII3moSxlpz)Poq^&EcWbQ|51(P|eezVkK)k}2rA1@NiGa46bmHG&F9Hds zG8=neJV=GA{-Arr4R0QRM_+01b>A?tgZjDJq1PqQ;cO9fpFbot6`SvpmySK)M1*J) zNsWu&cY*$**ndZRM%0# zy@Zy&zJBK4Z*clWi#IHt;&}U>edA$YfO9}PEk&$48(uk?gs5bV>L06`Cm)`FA!g9e zfqtpAeg)Q^Pd%)r1ZnlW6`QE4c=531Q)V?bFbf6_0#yxUP zo7mKq^Jf=bP=tN$J7?rL1-q~je>%0qS6n@@ZAi0S{yZ2ax~-CfF0$L(IZUhHfB8>e zt!-+i`oN0U6OWKt+_MF=)cZ}y()uyE@$4LUnuudz_k#?M6{}MLZVf@|!f}OvdK_67H#8V^eu3riJu{` z@nZYKb8+pzgwn7}4{i&#*ND7hbxDD0$pcwA;?aZd$9H*Mxx;5#DK|RlxG7%Q45J<5 zN<6#gw42|C^u$dg*DV_p!w4gDdORmibfZhlzew%D=YQ!lWJcoI#C!bd+(d0EN&@BS zK3&2QE>j$1yTFLn3xksp)Axi+k}1tJBhgGOG+u8ildfG$fmec;Y?lu+R5x(Y*Jyqu4Ik%=v^38bIz-#??^PYk0ZYQ%B&;lR zCfLX-MI{Oj!2&Ix`EX)bpq zOnj**6II0}V41Kp+ry9zW|{zjT_-jn}+6nr#p(HO|6~%i*9)0$C zcTQ~o5|JbJi=M=OjpsF(Yhc$&M471I(1g?q5(APoon*F_0{$gkF9vRlzGI#DtM#g3 z@GdWjv+rjOf4}|!=(`b@0G72^%G(AsB7NR#(}kNC;G<$60q;p0s%h9G(mo3wuZt1M zg??m!giB%Xc>_d(8c}fwSss}{cBAPqi_v;+Qb-}h@R03Os# zEHZ{67IP}Uhnm##!i#@sc;#8l8OI*>+1g5W_Yn9aaNqwjp$!-##+527{c8&Lsh2TZ zzweh3*UuqM{)EEl2Blben>)tDDxQ**am$t)`8m1#zBF}rdUAdao7(^sD{K3ZD*1=ZE_-mnQUeX z#{JuQ$QA~g)8Q`f`zx=Z^IKUUA|1{rt_Hzp)|t<{CGck%p&_(grdt0*dlD&a_Yf?O zzG?lR;Z?ZTaAFyTuxyz?W~6~EE_W13O(GN>+g9t)&`@+1*hu$C!(7XJ`Hm@tDwtnM z_45i>{M9w9PKs=qIfk)1ea@)xJDe^iurvSr+zQd1dGk+;F1UE~KH@Pl&$uzE|$b9o(5_z_W6*gEQ0P4#rN!W zd-G1pv6|SiY`oZks#;_bL)Nl)?|Y=#5LJ;0C+eu$)mJ!gOb0*NM4U)%f#A1#Yfo#z zw>@fNvN`qzCzo=QISV0BePO`(+$-B$++8!VmpY8>x)jWp2g+>}hmKRiJG7Wrxu#v97w~=>E^r%z-NX?7M9hy@iH&O-hd+ z(^b?sv!C|10Lg{nE>~QM2b++t1FC%ZEkvK_!g7%Z>K2sD$aTpMHC`T1QG{f@z<8)7 zQV%`@IHb06++xs3H(p32+t3UWEDF216G{e*;rYfvNSlvO(5J8)jzJ=KJ3^EUB&tv> zrMQ2GG_^p-@hJi}S9Ah+S_AI;9^MHEU$wxBJ~V%a8fz|6*_aGZ58gJ0$<5 zM%qt@)j0VX!T6&_z+pKKclsG`-5TIQC*Y9Mga5Ak)eb?Q)X9p6R%3e z40^PvfX#=|`Ucu)-QO3N(9#syc+ z@IDTdoAZQJtV3&Bo5S8swKN3@1PI1?7dvpmeLeAu1fFd3l1x)t*A3 zr9(o#)<8km@}$DDrMBzt%1-Fw3J%zGCD{of>-yGRx>6{y)v~?49ka`in-9w1I1oeT z%1pFr+r#Sun=zDQOE5@i-@G0+mBd7Ekvco~_Z`h;kLA_pH+d6X>RVMa{%xMcCdbV_ zHaHd^L0&lkGRcZK*($}gVzLOep9Q<+CnN6D5*AVBK6o{LgC1;;h-P$oaKUiR{-CuR zV#iNiU7$>VJG4(=jx5LHys0xe><=4HS-r2mr5Z7{!%_IoDi@d&+0%1MguI&gozHJ? z*>(yw`KZJ&`5KxGCK+C}fFHe!{7(2xVhZv&aIj*I?s$-K^lH4bg%PC)XRxEH ziip}!!jr=G%FtgMB;5#?$f4k^*dNW^#n{LZGJlmm+@!tR8KzOzb3r;$2?t8ZCW9+0 zdhqn=VZLq<{dVWKo4dJ0?UsLg<@$m?#uhxJlv^+VwO;Gchor#I-)QFp zE!cgQ?-EJk$T`BE4+F@57`V|Z8B^-%RJ;6p>Gs|eTVRR-g{1L>ShoWmAKoKM?G{Rm zT!~e%1^P!+1OW>17}qJ5-ehe#J~0ch7LSTl$50OBA=*vCSmZF4&Z=s7RmJCfREQS{ z10@<^l#TVohg8vTo9v2s`iDH+q@9wSDJqcqgAR&g*HQ5&O0qXL=xC3H6}O@Fwv0#w z-P1_%+Kk@u^)(!ohIwI6pp&_mK;9 z&OJj&iF@G`08zH|vr645Vamo6a;%+_1k*P$gBZ4$-1bC!>9+z_;QrJr z-B$1dd_TXYf;=jCt`-0L&mG_$y%)Bs{MNjf#(;=p zMU+?eKJKt-I8|QDyx-nL7xSQ`P+3~H7CVX>uXHE|a?S=H8}wxF zL<4Uuyp*ks*yKyuBs84wCR^Dv$qkM=ED%6>p|+*>jRk#cJyL%CfwWn6MA&_L{dFk0 zRDgSF@o^)Bcovov@Wct5E1Pw$%yEk7ZPt_p3Y>E{M+zZD!<-&fiT8;*;)R z-wvar)l+b$kyK0@nx|`yU_JE}941`b%?Wy;ralA8-fKn}k?#vd65?0LxS_xhf-O&=({}=a>>Tg?{-9oKenMna7yWT|1IPH8s0C zbQv*1q6_SDX8<) z)8?TP8H$-p1%iXDzli_07bVXvl3zqZy}zoYo5U~d!cVF0$iIO5FULWeOYFGEngn)1 zSL@FAI)hoI0-gHG1H@_YmY*bZI1ZvD@YV!JL5UFpO5Ky#BxcEA6U+qThQ5PIG524~ zOGDI`EdDQmRAxHF!`~*`I&d4PDLy38WVHe_Z5PYmjy^bgrtw)5-Q?wo$HACRr=>`6wW2 zqdx=FQcaY}M31_6#jHf}f#-OVe3##w7 z9qe&>a=1eH*5{^#H87}pGT4dNv|3WPkxt#T^rXo%NZ`IA{vM6}^!mGD-4fWq-F90z zAc_;l9EE?WEkS}Kp@6_@p+RBKZ}zb5V|r#J1@;vvy(S&OHM%SUi!bW%VG ziwN&m&$-qbSd;EhWllx1@^W6OUtnl);8pCn zI6Yi1_~FuI{^%Rw)fN2@|MU$U@>i466gHi$ z3?iruhDLJC(jlKiyx=Le%r-#x9rsR-5-2_;yM;_y4h=N@Oa5jemBi@zM+J zMflxMbI5Bc{$aNHAF*;! z*cvixkPJf-E0H$p&ji<3f8#?cL_LWsTZkoMu9BB57B^&-6Kg6twQxbH*+3N(C{U`ARw31R=;Q3XN zQ&UlE*QX)D{0>m7=X*-SsY73+Iu%8)F^XXk{N0XiO&VNZM@biMaXLw~@KCH6@_F~GSd4gea#37bh z$*5NdK=K0AH5Y`2JLnQMdeIJqixpS)W)8cTBz=givw+{qWPvx~QK3PMJfp504%%RA z+ydg2Mh}kb^R~cete|-O-4MwtBr=B`+fup+(AcgMY;n8bJyi{kG4N+26Z;4TYYnR= z?zQy&(oRCH+Zf189zD@@=quKXUyjHFLARpa_)1Qli*2+qQ3wr1ZZQ+ozz)dz?v;I@ zk~DZZ&U96*l5L1fZ52E4GW3&Xe$7_vpT`^D?YhT8nwAn#f*?F>9PsZU9yo9NYCjTb zE)MD|xq{fEHqMqJy(tzPpqzK>+|}>FBg_Hf)+_y^jyiZ)gx?eUgSUTksz(8-km?{{ zzKpj!!OtT9H9M~gy9Z0);`Kx&C=rT#JSM*+D)lUarO(H;3J7|p%6Okp5D}w#N-OJ@ zMRWSJwjacKj_9RuhZywmEGRA@;Fp_?jk_1~cl<`#G;x%z>1zzBF!UL=o-t-|gX5So z=vl+#aUv#QywggUz+R@ziN?jVYViJ>-Ysl62A6WhPuM{-83@|Wk#53b6+n(L5Ie=- z7g?UM=fXFzApN-^k{pblDOx z@`>5kiMQDPgTw#_A|B=1cKe51+7>SnZwcojZ?pDESe%+nx9X?lZ>VZn_$ zbjRE`T{Ify{wsBu3qy_$ZBKaK%9l$VKC!yT$2V|!idSbu)Og(&eOzORgp2 z58pY;E!aW9`dgerv`&yOH`>B6AEf0%j<-#H+6&|j%i}z00+uW!X(rq0W^Ur2`kPTCj^_kU1$KDk!q}0{J zM|42;lDIPQb_pQtXtWs7x9JUzoa`(~Im!$$RePl3a*zR&-=^FFn zKSWXt(6f-zP$#I$4(=E=tbNM3>oomn{NM#xNsQq$YX34ag=3n zJm9N?C9FsR3SDNnQv2+5_CGDrR()oA|app9MGY-7)G%+3NObb`V#`~y=oDj!KHKqaJ@ zB*}nDug`3(A|CXXlpYbIF?3A+U_T^nh|Y{y5l7-_IxEXXg5Jfc40esnp5vp85#9aU zF@Yj)UQf{raT(>dh7{R9OXaakS?pmM(6c)(NL*neelviVsMW#T$M!*n!%yfCR_7v{ z<+@e}=+bCd7aKSy0s(9-Tsm`R=P-kM3!>Kv8-H=Vk#%8GzqP}fIV3%f4#6u1zt_BE z8^NpV8C9yi8`ek@Wq|J5oYXBhD&eqPHq(qqty4N8XQkP>!2O^0&MTma<=^80Q3MMJ zktR)$dZY*eq(~=(76?r#N)bY6f>e>B2#7T4a0or27Xbz7O$7l79Vt=->Cz5}h^X8N z{?GNm@#VhUmwWS&`OfU`_nXx=|g&bGO%pf&Gu~+2lIt>iRM-1XRCO@G;NHD-V@nNrGD{-g-5=d6zMrl zv%KeHp2`x}=OSPz>v3WRBO&>NUC0Yw&KzIJxK($^BsHc~-&0&@a{L_Q{)BVFx+S19 zZ5Y0%!RB|m#PLDxOZAmZ{v-s$hjw(KzshXP=+xcg z|B+2Lp}?jECh9^Frj4iej+{%%&G{mPF+?$b)QpseD<1bfMaox!3fjy>Nt2jA#{nvCH9#+c23Sv}JF(s|K&5b5{dvaiI!M~rpkaiT& zXa-vpNgxo;pR*4Z?b#}xTdvU4M9Azs4m zJ7MQ~iVEx;H_XV(g^(3%7iWC021s4eHTtpq*q2S_7QV3yvC$on?WZ*bF}9!oHZ}nu^V)s!@)Hl}266X# zp1a#$6?mB~muXtn)>Y^AwOkh=kd74E(< zafKH@bsmzZl%v}M3?fyU*O??&H1x@^ zyqSlkkGo*n%2!dBWb6xGAz*aLbdVJ_W0Op z&(dkJR}wedR}e1-veTv6^w%y__Tl`i=qB@M zy-ZUU-E5-@@fc37PA3;%U_Z-Yvx-iRi0ZcE$tclcXR`onvPsU(yDH7Jry8x>L#5fo%iHUf7K%!r#@ch!#+JD*eR9v8Y?zuVck~oa5q~`PCS>+huIZn9Yp$2UU((Q36nJC~y)3)# z4X=?~`jNMbUyUS+jNO1$sv5b4gJQd8@}pnLZvE;(k-M9^>RB_n=yyO=)=Vz>748m$?5^Fm1cP@J)3#;~5*G*yd8v2u*+%ckxj38S9p3VOZSn4b(#gqK!D7DWgL= zX_B}^G^`TZF8*&7%%pwfV6lFc>`n2Orikm>o0EDED#+}AW;99@%mteFo2k|tgZtTZ zfuHRr7AWdJ4Ar6Fm!Hl30*#N+)#*^X#K#qZwbZkt)JozL;mT=>OPtmNw!d5?q}wW%1LfQ z9)S(KU_%ox|9AjC&y6Yy*LMYhCI2%ndYhGBWtQNtf%0-?*VCV19)?jh@o{=mrQuw* zA^ac?4hVT5v^C$D$t&x1+pHM9@ayxM&{$jL+^_(vW4Z zcrvOClS}|dg|j$RGnv3VgB^B&XM0E6K1&KPb@{nPu$q9@uc1#8PnKK|I|CA8@YNeu zqYiT!t13AJ^ywvHrb|4Taq)jrI>965AnvNO{a_F+O71Rn%~9MYnGo(q6n~fcddJ~@ z*4NOCK!NtfDd`UETdUZL+c2s>lhn|`5{&$q6jidlV$rS%M5dU;w6MDUDSV<@Ne?ys z`GmCo?CbO4`$HvrN>_(TKr2DF&yhHu_$qIW{Sn3HB!s|rgm<5tDvgCrh>w1W@ry$O6p zA_lcvY&Gyi5>MC3SW#$JWF%@gl#bdx7lqmdPjK%hM@6q@ngQ(Yp%z(51>Y6{B#(oS zN0=eLmOKzu?X6RF?HPJzHPb?Wm6a7fyL#Rd2yP%Ur!5KC=vwk{VAMmjehkEV)yefs zoW(C*=9N>P!T0fNhN~Cq+%D52wAqs~;5V@MTl4C;n=bK}P}~Xcuvg5*&hNTwe+pAK zb1OhChAq&?H!SFH29SK^_^L8%sBlxiCRZ;)eLD;M<+FBf&2T#Cj$TB^ zIV~pBWqnc0ZI1#}nYZ*{-f(@Yo&NF!QVd|3i)G8{t#2#WBPbMis7enqTlIPrgr(ZS zjpHLd3MAXa%Jd>a?Wg;3sKpzyqxpg!1&p`bSM>3H^*%(Ok`Rzw2hm-&H+qp`fFHIM zeSi(fxPv`HY;*MQmx}C{5;JV?-XWr+0kB8yPJdO^mo?6q%Sbc@i6C7bqgVU)X2}x+ z%%JnFkS8dNYoJaHw2+E%?u)-mC!Yi7B};#7bkCV2x;)7R@65JxU_GXnAxIia>V78i zn5Kno9ZWq`g>pcJw?kPk>%1;J6hWJHA124dmW_9YNr%E?@#ZjzP?dayf6bqaD!337 zdxz2o91Qvpt%Ao5i=L&tl4Nrs?ha|U42C(*<3-mU-lYqvBRX9nlF?}WxZ50EIv8%K z7frW3@0!$YYGKb88Tl=3gKAS+sfncog~JILp~$z&qeT`-9_xo`0$@=JM+F*MWc38wV%f`R!sWBSGLnpwf^CwELK_G zI-uY4*V3;cmxy(=hSvmN1{}^Q1H6!cvsF#t0q~*)c*zp+A_{pRs9__9fXXRdU?ie4 zyK12agp}64HRLQXLIERoqR<1PN6g3^SX&qXBV%AaMHH5^Y-er#qoQkhB2=;s`mX64 zXZHhIv&z1m<08rqm4Fg}9aEV4wi_0;n08L z(I2en+M^*T;>+vyw7(Nk2=-)0RUgbqoXc<$)*V2Kl7HvqS6PAafNI@@fB<|0l3h14 zdq6YV%0W#fA-|H81sIPMLG4DLEwZl<%KyhK&P$IUD{hTL!0fOvm8?J*x z^oN_19<7UN2fy-hXMUvF{&!R0#gNhHF~upFWVfxGG7xuy5<9RDDV5K zs9ob;_~!~z27wV1*>RAO5EJP+_UM{G`F3b6LnmJjO~ zr|kh(b~h~kw*ZX(uCf5m}pr{+SRfu1Unn0>BR>Y$?-(anMSq z$8Db^0mw07n(2V2NiF4^RJ7j%%|hLQd6;XD1jByF1vV5h{dX`yW2;fy#~?bfOC(lu zgEo2*wBeDr6ai)4XZv_M2I&e-c&KwE_gYpza}Z7wX3r#Mo%IN2Ly6GiPMzar3Bt3( zv_ci0Wl_iZA5&xML_x3|E$N>`6+2{mZTzyDnS)Z)P_NW3-^BUQI-!+0aSpVOb4tzJ zLnniEwel#0pW&)?GLk5{Qj&BULL`n@@K9mPq*zX0H_BC!?{6=|oV=>rOhuX6{ra1H zrSdu_a-PuW%hGV!?40vP{LTx9*7vR3o9Uv7lRvaGC%%Ilw11Ctkc3M#-vW2}>7)?I z8OU)GE2o<}E>6y_LN}dUtcmw->^L$K-V6vZ`M>@0i7~SWqdP5=GGFj&YEq<6W>?OJpMq(@b=1?)F|CgZC}TsEb^2mkH%%Bw!m;- z-h6C|``qo1taeW5V6mHAgl@+Ow4j#9y$kQ&?1!OZ-7fj~g_-+Wqlza8kxEQp?wV6xChW-t_U8i9{++Ysd5lp5k^u$gI8g zFg$l#-jNm}rPo$(!Q8ZT%L^(a$Y8>>w9 zoLtxN*a#Cd|2nEvSeDb|)m_c}M3cNgwxc6t+2v1Y7<4N$pI?j*H2K5q4`D?Af)Mao~2L0*JQnl;$Tt^@FZmSGm4X^&+_>-KPPtwDTG;voA8ahpzYaQj1pk^e*&mZAN#Ehs#l$SZ-dodFSXtT? zr))o!+0u#NOrbe;GC+-1+d5BmGHQ&Km=4(R7#r)-PZ+ z;Y{nE*g7gn&d+H6vmv{W<5qbaoyk3bM6Ad1Hm#t#D#tizD$&yz_{xz zH#2=NXKUB%MC5fe4hE<&5a#>@yfi^Se&T@lGjP)U9IxIVr9SMq6MstU0x+p2hd`(f zI1V4%UvP*x>}~1fWdFNbW60x{$w0H^Kmeu#&U}>n&Oa;uXNcc6BHx~lk1_%R8N(id zFdT^Ec=Ep+@t?8xU!(4acjfSENxuRWC;fKqq{9IYFKqBDfD&#$z^`Qv4!a(HTJe`_ ze!)-I!_O`rj&S%FhhGtR-W)y#zy1B;aKOU@_`d@3b?yf|G<^Tt;rzov4-fVJ3aa0= zAN0V$?_uwQ-!^{v0`$fpkbiymIP8A#I`B{T@`-=A|L3Zpqj3}vOkASk6vPSu8aGAE F{TBrh|CIm$ literal 0 HcmV?d00001 From e96b03d5950bb94300f60795a100e9b277c5d720 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Wed, 10 Sep 2025 17:11:29 +0200 Subject: [PATCH 11/13] fixed gefahrgutliste (this time including un-assigned entries) --- bsmd.database/HAZPosTemplate.cs | 10 ++++++---- misc/db.sqlite | Bin 14426112 -> 14426112 bytes 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/bsmd.database/HAZPosTemplate.cs b/bsmd.database/HAZPosTemplate.cs index 6b5935d0..44184668 100644 --- a/bsmd.database/HAZPosTemplate.cs +++ b/bsmd.database/HAZPosTemplate.cs @@ -68,7 +68,10 @@ namespace bsmd.database while(reader.Read()) { - if (reader.IsDBNull(4)) continue; // this row has no type -> ignore + string type = ""; + if (!reader.IsDBNull(4)) + type = reader.GetString(4); + HAZPosTemplate hpt = new HAZPosTemplate(); hpt.Description = reader.GetString(0); if (!reader.IsDBNull(1)) @@ -81,8 +84,7 @@ namespace bsmd.database if (specRefString.Equals("JA", StringComparison.OrdinalIgnoreCase) || specRefString.Equals("Yes", StringComparison.OrdinalIgnoreCase)) hpt.SpecRef15_19 = true; if (specRefString.Equals("NEIN", StringComparison.OrdinalIgnoreCase) || specRefString.Equals("No", StringComparison.OrdinalIgnoreCase)) hpt.SpecRef15_19 = false; } - - string type = reader.GetString(4); + switch(type) { case "IBC": hpt.TemplateType = SublistType.IBC; break; @@ -90,7 +92,7 @@ namespace bsmd.database case "IMSBC": hpt.TemplateType = SublistType.IMSBC ; break; case "MARPOL": hpt.TemplateType = SublistType.MARPOL; break; default: - continue; // ignore this thing + break; } if(!reader.IsDBNull(5)) diff --git a/misc/db.sqlite b/misc/db.sqlite index 529f4f1abfd1425ab16b78b2f95ede4926324c95..b85724a0cb8d6cc08497789866ce0473f3f47cdc 100644 GIT binary patch delta 18231 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 From e965bc6b89e507e15eb85b449b8c0b7c05c6ed57 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Wed, 10 Sep 2025 17:11:48 +0200 Subject: [PATCH 12/13] Version bump to 7.2.11.3 --- ENI2/ENI2.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj index a4ce66a9..fbc19900 100644 --- a/ENI2/ENI2.csproj +++ b/ENI2/ENI2.csproj @@ -36,8 +36,8 @@ 5.4.0.0 true publish.html - 2 - 7.2.11.2 + 3 + 7.2.11.3 false true true From 3f2fa20bca49c2ec065aea87a73a364f26b43581 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Thu, 11 Sep 2025 07:08:15 +0200 Subject: [PATCH 13/13] Created release version --- ENI2/App.config | 95 ++----------------- ENI2/ENI2.csproj | 8 +- ENI2/EditControls/CompareExcelDialog.xaml | 4 +- ENI2/EditControls/CopyDeclarationDialog.xaml | 23 +++-- ENI2/EditControls/CoreStatusInfoDialog.xaml | 4 +- ENI2/EditControls/EditRulesDialog.xaml | 6 +- ENI2/EditControls/ErrorListDialog.xaml | 2 +- ENI2/EditControls/MessageHistoryDialog.xaml | 6 +- ENI2/EditControls/NewDGItemDialog.xaml | 6 +- ENI2/EditControls/NewWithIdDialog.xaml | 26 ++--- ENI2/EditControls/SelectPortAreaDialog.xaml | 4 +- ENI2/EditControls/ViolationListDialog.xaml | 4 +- ENI2/EditControls/VisitIdDialog.xaml | 24 ++--- ENI2/MainWindow.xaml | 10 +- ENI2/Resources/EUREPORT.png | Bin 42234 -> 39708 bytes 15 files changed, 73 insertions(+), 149 deletions(-) diff --git a/ENI2/App.config b/ENI2/App.config index 4f25599b..4c7c4bc1 100644 --- a/ENI2/App.config +++ b/ENI2/App.config @@ -1,18 +1,18 @@ - + -
+
-
+
- - + + @@ -26,103 +26,28 @@ 1000 - http://192.168.2.24/LockingService/LockingService.svc - - - BSMD ReportGenerator + http://192.168.2.24/LockingService/LockingService.svc - Initial Catalog=nswtest;Data Source=192.168.2.24\SQLEXPRESS;Uid=dfuser;pwd=dfpasswd;Persist Security Info=False;Connection Reset=false + Initial Catalog=nsw;Data Source=192.168.2.24\SQLEXPRESS;Uid=dfuser;pwd=dfpasswd;Persist Security Info=False;Connection Reset=false - - - - 825 - - - 450 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj index fbc19900..725fdae7 100644 --- a/ENI2/ENI2.csproj +++ b/ENI2/ENI2.csproj @@ -8,7 +8,7 @@ WinExe Properties ENI2 - ENI2Test + ENI2 v4.8 512 {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} @@ -18,7 +18,7 @@ - eni_test\ + ENI2.publish\ true Web true @@ -28,9 +28,9 @@ false false true - http://192.168.2.24/eni_test/ + http://192.168.2.24/eni2.publish/ http://www.textbausteine.net/ - ENI Testversion + ENI Informatikbüro Daniel Schick NSW 5.4.0.0 diff --git a/ENI2/EditControls/CompareExcelDialog.xaml b/ENI2/EditControls/CompareExcelDialog.xaml index e77d7a89..c789a0dc 100644 --- a/ENI2/EditControls/CompareExcelDialog.xaml +++ b/ENI2/EditControls/CompareExcelDialog.xaml @@ -4,11 +4,11 @@ xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:ENI2.EditControls" - xmlns:enictrl="clr-namespace:ENI2.Controls" + xmlns:enictrl="clr-namespace:ENI2.Controls" xmlns:p="clr-namespace:ENI2.Properties" xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" mc:Ignorable="d" - Title="{x:Static p:Resources.textCompareExcel}" Height="260" Width="600" Background="AliceBlue" Icon="/ENI2Test;component/Resources/bullet_ball_grey.ico"> + Title="{x:Static p:Resources.textCompareExcel}" Height="260" Width="600" Background="AliceBlue" Icon="/ENI2;component/Resources/bullet_ball_grey.ico"> diff --git a/ENI2/EditControls/CopyDeclarationDialog.xaml b/ENI2/EditControls/CopyDeclarationDialog.xaml index ab1978e3..46ad36ec 100644 --- a/ENI2/EditControls/CopyDeclarationDialog.xaml +++ b/ENI2/EditControls/CopyDeclarationDialog.xaml @@ -4,11 +4,11 @@ xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:ENI2.EditControls" - xmlns:enictrl="clr-namespace:ENI2.Controls" + xmlns:enictrl="clr-namespace:ENI2.Controls" xmlns:p="clr-namespace:ENI2.Properties" xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" mc:Ignorable="d" - Title="{x:Static p:Resources.textCopyDeclaration}" Height="326" Width="440" WindowStyle="SingleBorderWindow" Background="AliceBlue" ResizeMode="NoResize" Icon="/ENI2Test;component/Resources/id_cards.ico"> + Title="{x:Static p:Resources.textCopyDeclaration}" Height="326" Width="440" WindowStyle="SingleBorderWindow" Background="AliceBlue" ResizeMode="NoResize" Icon="/ENI2;component/Resources/id_cards.ico"> @@ -34,28 +34,28 @@ - \ No newline at end of file diff --git a/ENI2/EditControls/CoreStatusInfoDialog.xaml b/ENI2/EditControls/CoreStatusInfoDialog.xaml index b09b092d..8dc5339f 100644 --- a/ENI2/EditControls/CoreStatusInfoDialog.xaml +++ b/ENI2/EditControls/CoreStatusInfoDialog.xaml @@ -8,7 +8,7 @@ xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" xmlns:p="clr-namespace:ENI2.Properties" mc:Ignorable="d" - Title="{x:Static p:Resources.textCoreStatus}" Height="436" Width="600" WindowStyle="SingleBorderWindow" Background="AliceBlue" Icon="/ENI2Test;component/Resources/bullet_ball_grey.ico" > + Title="{x:Static p:Resources.textCoreStatus}" Height="436" Width="600" WindowStyle="SingleBorderWindow" Background="AliceBlue" Icon="/ENI2;component/Resources/bullet_ball_grey.ico" > @@ -22,7 +22,7 @@ - +