diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 0aa0fe4..8cec7e0 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -14,17 +14,17 @@ jobs:
fail-fast: false
matrix:
os:
- - { prettyName: Windows, platform: windows-latest, configurationName: Windows, extraArgs: "", buildPath: "Release/net6.0-windows/publish"}
- - { prettyName: Linux, platform: ubuntu-latest, configurationName: Linux, extraArgs: "", buildPath: "Release/net6.0/publish"}
+ - { prettyName: Windows, platform: windows-latest, configurationName: Windows, extraArgs: "", buildPath: "Release/net8.0-windows/publish"}
+ - { prettyName: Linux, platform: ubuntu-latest, configurationName: Linux, extraArgs: "", buildPath: "Release/net8.0/publish"}
# - { prettyName: MacOS, platform: ubuntu-latest, configurationName: Release, platform: osx-x64 }
steps:
- name: Checkout
uses: actions/checkout@v2
- - name: Install .NET 6.0
+ - name: Install .NET 8.0
uses: actions/setup-dotnet@v1
with:
- dotnet-version: "6.0.x"
+ dotnet-version: "8.0.x"
- name: Compile for ${{ matrix.os.prettyName }}
run: dotnet publish -c ${{ matrix.os.configurationName }} ${{ matrix.os.extraArgs }}
diff --git a/.gitignore b/.gitignore
index 426d76d..3cee717 100644
--- a/.gitignore
+++ b/.gitignore
@@ -396,3 +396,6 @@ FodyWeavers.xsd
# JetBrains Rider
*.sln.iml
+.DS_Store
+
+builds/
diff --git a/.idea/.idea.UnionPatcher/.idea/indexLayout.xml b/.idea/.idea.UnionPatcher/.idea/indexLayout.xml
index c633a30..8b96167 100644
--- a/.idea/.idea.UnionPatcher/.idea/indexLayout.xml
+++ b/.idea/.idea.UnionPatcher/.idea/indexLayout.xml
@@ -9,6 +9,7 @@
README.md
UnionPatcher.sln.DotSettings
UnionPatcher.sln.DotSettings.user
+ build-all.sh
global.json
diff --git a/README.md b/README.md
index 247e60a..6eb80aa 100644
--- a/README.md
+++ b/README.md
@@ -1,15 +1,13 @@
# UnionPatcher
-A tool that will take the official EBOOT of a LittleBIGPlanet title and replace the server URLs with a custom one
+A tool that will take the official EBOOT of a LittleBigPlanet title and replace the server URLs with a custom one
## Prerequisites
* For running the console application, you will need the [.NET 6 Runtime](https://dotnet.microsoft.com/en-us/download/dotnet/6.0/runtime?utm_source=getdotnetcore&utm_medium=referral)
* You will need to know the server URL you wish to use
## Getting the latest build
-1. Access the [CI builds for UnionPatcher](https://github.com/LBPUnion/UnionPatcher/actions)
-2. In the "workflow runs" grid, select the first in the list with a green check mark (✔️)
-3. Scroll to the bottom of this build and find the correct zip for your platform
+You can obtain UnionPatcher builds via GitHub releases: https://github.com/LBPUnion/UnionPatcher/releases
## Building manually (Required for MacOS)
You will need the [.NET 6 SDK](https://dotnet.microsoft.com/en-us/download/dotnet/6.0)
diff --git a/UnionPatcher.Cli/UnionPatcher.Cli.csproj b/UnionPatcher.Cli/UnionPatcher.Cli.csproj
index a4adeee..5c6e24d 100644
--- a/UnionPatcher.Cli/UnionPatcher.Cli.csproj
+++ b/UnionPatcher.Cli/UnionPatcher.Cli.csproj
@@ -2,7 +2,7 @@
Exe
- net6.0
+ net8.0
enable
enable
UnionPatcher
diff --git a/UnionPatcher.Gui.Linux/UnionPatcher.Gui.Linux.csproj b/UnionPatcher.Gui.Linux/UnionPatcher.Gui.Linux.csproj
index aa10c2f..74f3bd8 100644
--- a/UnionPatcher.Gui.Linux/UnionPatcher.Gui.Linux.csproj
+++ b/UnionPatcher.Gui.Linux/UnionPatcher.Gui.Linux.csproj
@@ -2,7 +2,7 @@
Exe
- net6.0
+ net8.0
linux-x64
LBPUnion.UnionPatcher.Gui.Linux
LBPUnion.UnionPatcher.Gui.Linux
@@ -10,7 +10,7 @@
-
+
diff --git a/UnionPatcher.Gui.MacOS/Info.plist b/UnionPatcher.Gui.MacOS/Info.plist
new file mode 100755
index 0000000..883a4ac
--- /dev/null
+++ b/UnionPatcher.Gui.MacOS/Info.plist
@@ -0,0 +1,34 @@
+
+
+
+
+ CFBundleIdentifier
+ com.lbpunion.unionpatcher
+ NSHumanReadableCopyright
+ Copyright LBP Union 2024©
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+ CFBundleDevelopmentRegion
+ en
+ CFBundleIconFile
+ Icon.icns
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ APPL
+ CFBundleSignature
+ ????
+ NSPrincipalClass
+ NSApplication
+ CFBundleName
+ UnionPatcher
+ CFBundleExecutable
+ LBPUnion.UnionPatcher.Gui.MacOS
+ LSMinimumSystemVersion
+ 10.14
+ NSRequiresAquaSystemAppearance
+ False
+
+
diff --git a/UnionPatcher.Gui.MacOS/UnionPatcher.Gui.MacOS.csproj b/UnionPatcher.Gui.MacOS/UnionPatcher.Gui.MacOS.csproj
index b86ceb7..e4eb4d3 100644
--- a/UnionPatcher.Gui.MacOS/UnionPatcher.Gui.MacOS.csproj
+++ b/UnionPatcher.Gui.MacOS/UnionPatcher.Gui.MacOS.csproj
@@ -2,11 +2,13 @@
Exe
- net6.0
- osx-x64
+ net8.0
+ osx-x64;osx-arm64
LBPUnion.UnionPatcher.Gui.MacOS
LBPUnion.UnionPatcher.Gui.MacOS
Icon64.ico
+ true
+ true
@@ -16,6 +18,6 @@
-
+
diff --git a/UnionPatcher.Gui.Windows/UnionPatcher.Gui.Windows.csproj b/UnionPatcher.Gui.Windows/UnionPatcher.Gui.Windows.csproj
index 5e74fe7..8c18143 100644
--- a/UnionPatcher.Gui.Windows/UnionPatcher.Gui.Windows.csproj
+++ b/UnionPatcher.Gui.Windows/UnionPatcher.Gui.Windows.csproj
@@ -2,21 +2,24 @@
WinExe
- net6.0-windows
+ net8.0-windows
LBPUnion.UnionPatcher.Gui.Windows
LBPUnion.UnionPatcher.Gui.Windows
Icon64.ico
-
+
-
+
+
+
+
diff --git a/UnionPatcher.Gui/Forms/FilePatchForm.cs b/UnionPatcher.Gui/Forms/FilePatchForm.cs
index 27e9fa8..a52e04d 100644
--- a/UnionPatcher.Gui/Forms/FilePatchForm.cs
+++ b/UnionPatcher.Gui/Forms/FilePatchForm.cs
@@ -1,5 +1,6 @@
using System;
using System.Diagnostics;
+using System.Text.RegularExpressions;
using Eto;
using Eto.Drawing;
using Eto.Forms;
@@ -49,7 +50,7 @@ public class FilePatchForm : Form {
Rows = {
new TableRow(
new TableCell(new Label { Text = "EBOOT.elf: ", VerticalAlignment = VerticalAlignment.Center }),
- new TableCell(this.filePicker = new FilePicker { TabIndex = 0 })
+ new TableCell(this.filePicker = new FilePicker { TabIndex = 0 , FileAction = FileAction.OpenFile, Filters = { new FileFilter("ELF files", "*.elf", "*.ELF"), new FileFilter("All Files", "*.*") }})
),
new TableRow(
new TableCell(new Label { Text = "Server URL: ", VerticalAlignment = VerticalAlignment.Center }),
@@ -57,7 +58,7 @@ public class FilePatchForm : Form {
),
new TableRow(
new TableCell(new Label { Text = "Output filename: ", VerticalAlignment = VerticalAlignment.Center }),
- new TableCell(this.outputFileName = new FilePicker { TabIndex = 2, FileAction = FileAction.SaveFile })
+ new TableCell(this.outputFileName = new FilePicker { TabIndex = 2, FileAction = FileAction.SaveFile, Filters = { new FileFilter("ELF files", "*.elf", "*.ELF"), new FileFilter("All Files", "*.*") }})
),
new TableRow(
new TableCell(this.CreateHelpButton(4)),
@@ -73,46 +74,54 @@ public class FilePatchForm : Form {
private void Patch() {
if(string.IsNullOrWhiteSpace(this.filePicker.FilePath)) {
- Gui.CreateOkDialog("Form Error", "No file specified!").ShowModal();
+ Gui.CreateOkDialog("Form Error", "No file specified!");
return;
}
if(string.IsNullOrWhiteSpace(this.serverUrl.Text)) {
- Gui.CreateOkDialog("Form Error", "No server URL specified!").ShowModal();
+ Gui.CreateOkDialog("Form Error", "No server URL specified!");
return;
}
if(string.IsNullOrWhiteSpace(this.outputFileName.FilePath)) {
- Gui.CreateOkDialog("Form Error", "No output file specified!").ShowModal();
+ Gui.CreateOkDialog("Form Error", "No output file specified!");
return;
}
if(this.filePicker.FilePath == this.outputFileName.FilePath) {
- Gui.CreateOkDialog("Form Error", "Input and output filename are the same! Please save the patched file with a different name so you have a backup of your the original EBOOT.ELF.").ShowModal();
+ Gui.CreateOkDialog("Form Error", "Input and output filename are the same! Please save the patched file with a different name so you have a backup of your the original EBOOT.ELF.");
return;
}
if(!Uri.TryCreate(this.serverUrl.Text, UriKind.Absolute, out _)) {
- Gui.CreateOkDialog("Form Error", "Server URL is invalid! Please enter a valid URL.").ShowModal();
+ Gui.CreateOkDialog("Form Error", "Server URL is invalid! Please enter a valid URL.");
return;
}
+
+ if(!Regex.IsMatch(this.serverUrl.Text, "LITTLEBIGPLANETPS3_XML")) {
+ bool userCertain = Gui.CreateConfirmationDialog("URL Mistype", $"Server URL {this.serverUrl.Text} does not match LITTLEBIGPLANETPS3_XML, are you sure you want to use this?");
+ if (!userCertain) {
+ return;
+ }
+ // else, godspeed, captain
+ }
// Validate EBOOT after validating form; more expensive
ElfFile eboot = new(this.filePicker.FilePath);
if(eboot.IsValid == false) {
- Gui.CreateOkDialog("EBOOT Error", $"{eboot.Name} is not a valid ELF file (magic number mismatch)\n" + "The EBOOT must be decrypted before using this tool").ShowModal();
+ Gui.CreateOkDialog("EBOOT Error", $"{eboot.Name} is not a valid ELF file (magic number mismatch)\n" + "The EBOOT must be decrypted before using this tool");
return;
}
if(eboot.Is64Bit == null) {
- Gui.CreateOkDialog("EBOOT Error", $"{eboot.Name} does not target a valid system").ShowModal();
+ Gui.CreateOkDialog("EBOOT Error", $"{eboot.Name} does not target a valid system");
return;
}
if(string.IsNullOrWhiteSpace(eboot.Architecture)) {
- Gui.CreateOkDialog("EBOOT Error", $"{eboot.Name} does not target a valid architecture (PowerPC or ARM)").ShowModal();
+ Gui.CreateOkDialog("EBOOT Error", $"{eboot.Name} does not target a valid architecture (PowerPC or ARM)");
return;
}
@@ -120,10 +129,10 @@ public class FilePatchForm : Form {
Patcher.PatchFile(this.filePicker.FilePath, this.serverUrl.Text, this.outputFileName.FilePath);
}
catch(Exception e) {
- Gui.CreateOkDialog("Error occurred while patching", "An error occured while patching:\n" + e).ShowModal();
+ Gui.CreateOkDialog("Error occurred while patching", "An error occured while patching:\n" + e);
return;
}
- Gui.CreateOkDialog("Success!", "The Server URL has been patched to " + this.serverUrl.Text).ShowModal();
+ Gui.CreateOkDialog("Success!", "The Server URL has been patched to " + this.serverUrl.Text);
}
-}
\ No newline at end of file
+}
diff --git a/UnionPatcher.Gui/Forms/ModeSelectionForm.cs b/UnionPatcher.Gui/Forms/ModeSelectionForm.cs
index e121e05..1b3ffbc 100644
--- a/UnionPatcher.Gui/Forms/ModeSelectionForm.cs
+++ b/UnionPatcher.Gui/Forms/ModeSelectionForm.cs
@@ -1,8 +1,12 @@
using System;
+using System.IO;
+using System.Reflection;
+using System.Text;
+using Eto;
using Eto.Drawing;
using Eto.Forms;
-namespace LBPUnion.UnionPatcher.Gui.Forms;
+namespace LBPUnion.UnionPatcher.Gui.Forms;
public class ModeSelectionForm : Form {
#region UI
@@ -23,18 +27,50 @@ public class ModeSelectionForm : Form {
new TableCell(new Button(openFilePatcher) { Text = "File Patch (PS3/RPCS3)" })
),
},
- };
+ };
}
-
- private void openRemotePatcher(object sender, EventArgs e) {
- new RemotePatchForm().Show();
- this.Close();
+
+ private void openRemotePatcher(object sender, EventArgs e)
+ {
+ // If we're on macOS then set the CWD to the app bundle MacOS folder, so that SCETool can be found.
+ if (OSUtil.GetPlatform() == OSPlatform.OSX) Directory.SetCurrentDirectory(OSUtil.GetExecutablePath());
+
+ if (!Directory.Exists($"{OSUtil.GetExecutablePath()}/scetool"))
+ {
+ // This will always occur on macOS, so don't show this message for macOS users.
+ if (OSUtil.GetPlatform() != OSPlatform.OSX) Gui.CreateOkDialog("Workaround Triggered", ".NET could not locate the required files, triggering workaround.");
+ Gui.CreateOkDialog("Workaround", "UnionPatcher RemotePatcher requires a staging folder on macOS or in special circumstances on Windows, please set this to the directory of the UnionPatcher app or executable!");
+ SelectFolderDialog dialog = new SelectFolderDialog();
+ if (dialog.ShowDialog(this) != DialogResult.Ok)
+ {
+ Gui.CreateOkDialog("Workaround", "User did not specify a staging folder, aborting!");
+ return;
+ }
+ Directory.SetCurrentDirectory(dialog.Directory);
+ if (!Directory.Exists("scetool"))
+ {
+ Gui.CreateOkDialog("Workaround", "Invalid folder, remember to set the folder to the directory of the UnionPatcher app or executable!");
+ return;
+ }
+ }
+ RemotePatchForm rpForm = new RemotePatchForm();
+ rpForm.Show();
+ rpForm.Closed += OnSubFormClose;
+
+ this.Visible = false;
}
private void openLocalPatcher(object sender, EventArgs e) {
throw new NotImplementedException();
}
private void openFilePatcher(object sender, EventArgs e) {
- new FilePatchForm().Show();
+ FilePatchForm fpForm = new FilePatchForm();
+ fpForm.Show();
+ fpForm.Closed += OnSubFormClose;
+
+ this.Visible = false;
+ }
+ private void OnSubFormClose(object sender, EventArgs e)
+ {
this.Close();
}
diff --git a/UnionPatcher.Gui/Forms/RemotePatchForm.cs b/UnionPatcher.Gui/Forms/RemotePatchForm.cs
index 1e84400..7354ea9 100644
--- a/UnionPatcher.Gui/Forms/RemotePatchForm.cs
+++ b/UnionPatcher.Gui/Forms/RemotePatchForm.cs
@@ -34,25 +34,25 @@ public class RemotePatchForm : Form
control.Click += delegate {
if (string.IsNullOrEmpty(this.ps3LocalIP.Text))
{
- Gui.CreateOkDialog("Error", "No PS3 IP address specified!").ShowModal();
+ Gui.CreateOkDialog("Error", "No PS3 IP address specified!");
return;
}
if (string.IsNullOrEmpty(this.lbpGameID.Text))
{
- Gui.CreateOkDialog("Error", "No title ID specified!").ShowModal();
+ Gui.CreateOkDialog("Error", "No title ID specified!");
return;
}
if (string.IsNullOrEmpty(this.serverUrl.Text))
{
- Gui.CreateOkDialog("Error", "No server URL specified!").ShowModal();
+ Gui.CreateOkDialog("Error", "No server URL specified!");
return;
}
if (!Uri.TryCreate(this.serverUrl.Text, UriKind.Absolute, out _))
{
- Gui.CreateOkDialog("Error", "Server URL is invalid! Please enter a valid URL.").ShowModal();
+ Gui.CreateOkDialog("Error", "Server URL is invalid! Please enter a valid URL.");
return;
}
@@ -69,11 +69,11 @@ public class RemotePatchForm : Form
}
catch (Exception e)
{
- Gui.CreateOkDialog("Error occurred while patching", "An error occured while patching:\n" + e).ShowModal();
+ Gui.CreateOkDialog("Error occurred while patching", "An error occured while patching:\n" + e);
return;
}
- Gui.CreateOkDialog("Success!", $"The Server URL for {this.lbpGameID.Text} on the PS3 at {this.ps3LocalIP.Text} has been patched to {this.serverUrl.Text}").ShowModal();
+ Gui.CreateOkDialog("Success!", $"The Server URL for {this.lbpGameID.Text} on the PS3 at {this.ps3LocalIP.Text} has been patched to {this.serverUrl.Text}");
};
return control;
@@ -91,13 +91,13 @@ public class RemotePatchForm : Form
control.Click += delegate {
if (string.IsNullOrEmpty(this.ps3LocalIP.Text))
{
- Gui.CreateOkDialog("Form Error", "No PS3 IP address specified!").ShowModal();
+ Gui.CreateOkDialog("Form Error", "No PS3 IP address specified!");
return;
}
if (string.IsNullOrEmpty(this.lbpGameID.Text))
{
- Gui.CreateOkDialog("Form Error", "No game ID specified!").ShowModal();
+ Gui.CreateOkDialog("Form Error", "No game ID specified!");
return;
}
@@ -107,11 +107,11 @@ public class RemotePatchForm : Form
}
catch (Exception e)
{
- Gui.CreateOkDialog("Error occurred while reverting EBOOT", "An error occured while patching:\n" + e).ShowModal();
+ Gui.CreateOkDialog("Error occurred while reverting EBOOT", "An error occured while patching:\n" + e);
return;
}
- Gui.CreateOkDialog("Success!", $"UnionRemotePatcher reverted your the EBOOT for {this.lbpGameID.Text} to stock. You're ready to patch your EBOOT again.").ShowModal();
+ Gui.CreateOkDialog("Success!", $"UnionRemotePatcher reverted your the EBOOT for {this.lbpGameID.Text} to stock. You're ready to patch your EBOOT again.");
};
return control;
diff --git a/UnionPatcher.Gui/Gui.cs b/UnionPatcher.Gui/Gui.cs
index 9a62e51..fec6065 100644
--- a/UnionPatcher.Gui/Gui.cs
+++ b/UnionPatcher.Gui/Gui.cs
@@ -1,5 +1,4 @@
-using Eto.Drawing;
-using Eto.Forms;
+using Eto.Forms;
using LBPUnion.UnionPatcher.Gui.Forms;
namespace LBPUnion.UnionPatcher.Gui;
@@ -9,39 +8,11 @@ public static class Gui {
new Application().Run(new ModeSelectionForm());
}
- public static Dialog CreateOkDialog(string title, string errorMessage) {
- DynamicLayout layout = new();
- Button button;
-
- layout.Spacing = new Size(5, 5);
- layout.MinimumSize = new Size(350, 100);
-
- layout.BeginHorizontal();
- layout.Add(new Label {
- Text = errorMessage,
- });
-
- layout.BeginHorizontal();
- layout.BeginVertical();
- layout.Add(null);
- layout.Add(button = new Button {
- Text = "OK",
- });
-
- layout.EndVertical();
- layout.EndHorizontal();
- layout.EndHorizontal();
-
- Dialog dialog = new() {
- Content = layout,
- Padding = new Padding(10, 10, 10, 10),
- Title = title,
- };
-
- button.Click += delegate {
- dialog.Close();
- };
-
- return dialog;
+ public static void CreateOkDialog(string title, string errorMessage) {
+ MessageBox.Show(errorMessage, title, MessageBoxButtons.OK);
+ }
+ public static bool CreateConfirmationDialog(string title, string errorMessage) {
+ DialogResult result = MessageBox.Show(errorMessage, title, MessageBoxButtons.YesNo, MessageBoxType.Question);
+ return result == DialogResult.Yes;
}
}
\ No newline at end of file
diff --git a/UnionPatcher.Gui/UnionPatcher.Gui.csproj b/UnionPatcher.Gui/UnionPatcher.Gui.csproj
index 3bfcf88..7915919 100644
--- a/UnionPatcher.Gui/UnionPatcher.Gui.csproj
+++ b/UnionPatcher.Gui/UnionPatcher.Gui.csproj
@@ -7,15 +7,15 @@
- net6.0
+ net8.0
- net6.0-windows
+ net8.0-windows
-
+
diff --git a/UnionPatcher/Communication/FTP.cs b/UnionPatcher/Communication/FTP.cs
index 8ae313a..d96cee8 100644
--- a/UnionPatcher/Communication/FTP.cs
+++ b/UnionPatcher/Communication/FTP.cs
@@ -5,13 +5,15 @@ using System.IO;
using System.Linq;
using System.Net;
-namespace LBPUnion.UnionPatcher.Communication;
+#pragma warning disable SYSLIB0014 // the FtpWebRequest is needed in this case
+namespace LBPUnion.UnionPatcher.Communication;
public static class FTP
{
public static bool FileExists(string url, string user, string pass)
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(url);
+
request.Credentials = new NetworkCredential(user, pass);
request.Method = WebRequestMethods.Ftp.GetDateTimestamp;
@@ -36,6 +38,7 @@ public static class FTP
public static string[] ListDirectory(string url, string user, string pass)
{
+
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(url);
request.Credentials = new NetworkCredential(user, pass);
request.Method = WebRequestMethods.Ftp.ListDirectory;
@@ -53,7 +56,7 @@ public static class FTP
.Where(dir => !string.IsNullOrWhiteSpace(dir) && dir != "." && dir != "..")
.ToList();
- foreach(string dir in dirs.ToArray())
+ foreach (string dir in dirs.ToArray())
{
Console.WriteLine($"/{dir}");
}
@@ -128,7 +131,7 @@ public static class FTP
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
-
+
using StreamReader reader = new(responseStream);
return reader.ReadToEnd();
diff --git a/UnionPatcher/Communication/PS3MAPI.cs b/UnionPatcher/Communication/PS3MAPI.cs
index f99a96a..c3d0f69 100644
--- a/UnionPatcher/Communication/PS3MAPI.cs
+++ b/UnionPatcher/Communication/PS3MAPI.cs
@@ -12,7 +12,7 @@ using System.Net.Sockets;
using System.Text;
using System.Text.RegularExpressions;
-namespace LBPUnion.UnionPatcher.Communication;
+namespace LBPUnion.UnionPatcher.Communication;
public class PS3MAPI
{
@@ -102,7 +102,7 @@ public class PS3MAPI
Double = 2,
Triple = 3,
}
-
+
/// Ring PS3 Buzzer.
/// Simple, Double, Continuous
public void RingBuzzer(BuzzerMode mode)
@@ -234,7 +234,7 @@ public class PS3MAPI
}
}
main_sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
- main_ipEndPoint = new IPEndPoint(Dns.GetHostByName(sServerIP).AddressList[0], Port);
+ main_ipEndPoint = new IPEndPoint(Dns.GetHostAddresses(sServerIP)[0], Port);
try
{
main_sock.Connect(main_ipEndPoint);
@@ -781,12 +781,12 @@ public class PS3MAPI
SetBinaryMode(false);
}
}
- catch (Exception e)
+ catch
{
CloseDataSocket();
ReadResponse();
SetBinaryMode(false);
- throw e;
+ throw;
}
}
}
@@ -847,12 +847,12 @@ public class PS3MAPI
SetBinaryMode(false);
}
}
- catch (Exception e)
+ catch
{
CloseDataSocket();
ReadResponse();
SetBinaryMode(false);
- throw e;
+ throw;
}
}
}
@@ -1088,13 +1088,13 @@ public class PS3MAPI
Fail(new Exception("Malformed PASV response: " + sResponse));
}
- sServer = String.Format("{0}.{1}.{2}.{3}", pasv[0], pasv[1], pasv[2], pasv[3]);
+ sServer = string.Format("{0}.{1}.{2}.{3}", pasv[0], pasv[1], pasv[2], pasv[3]);
iPort = (int.Parse(pasv[4]) << 8) + int.Parse(pasv[5]);
try
{
CloseDataSocket();
data_sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
- data_ipEndPoint = new IPEndPoint(Dns.GetHostByName(sServerIP).AddressList[0], iPort);
+ data_ipEndPoint = new IPEndPoint(Dns.GetHostAddresses(sServerIP)[0], iPort);
data_sock.Connect(data_ipEndPoint);
}
catch (Exception e)
@@ -1159,13 +1159,13 @@ public class PS3MAPI
{
sLog = sLog + "COMMAND: " + sCommand + Environment.NewLine;
Connect();
- Byte[] byCommand = Encoding.ASCII.GetBytes((sCommand + "\r\n").ToCharArray());
+ byte[] byCommand = Encoding.ASCII.GetBytes((sCommand + "\r\n").ToCharArray());
main_sock.Send(byCommand, byCommand.Length, 0);
ReadResponse();
}
internal static void FillBucket()
{
- Byte[] bytes = new Byte[512];
+ byte[] bytes = new byte[512];
long lBytesRecieved;
int iMilliSecondsPassed = 0;
while (main_sock.Available < 1)
diff --git a/UnionPatcher/ElfFile.cs b/UnionPatcher/ElfFile.cs
index 03d5268..dcbc2fa 100644
--- a/UnionPatcher/ElfFile.cs
+++ b/UnionPatcher/ElfFile.cs
@@ -23,9 +23,10 @@ public class ElfFile {
Big = 0x02,
}
- private enum InstructionSetArchitecture : UInt16 {
+ private enum InstructionSetArchitecture : ushort {
PowerPC = 0x15, //64-bit PowerPC (PS3)
ARM = 0x28, //32-bit ARM (Vita)
+ MipsRS3000 = 0x08, // MIPS RS3000 Big-Endian 32bit (PSP)
}
public string Name { get; } = "Binary Blob";
@@ -72,12 +73,12 @@ public class ElfFile {
private string GetFileArchitecture(byte[] elfHeader, bool isBigEndian) {
byte[] architectureBytes = elfHeader[0x12..0x14];
- UInt16 fileArch = (isBigEndian) ?
+ ushort fileArch = (isBigEndian) ?
BinaryPrimitives.ReadUInt16BigEndian(architectureBytes) :
BinaryPrimitives.ReadUInt16LittleEndian(architectureBytes);
foreach(InstructionSetArchitecture arch in Enum.GetValues(typeof(InstructionSetArchitecture))) {
- if(fileArch == (UInt16)arch)
+ if(fileArch == (ushort)arch)
return arch.ToString();
}
return null;
diff --git a/UnionPatcher/OSUtil.cs b/UnionPatcher/OSUtil.cs
new file mode 100644
index 0000000..4aa26f3
--- /dev/null
+++ b/UnionPatcher/OSUtil.cs
@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.IO;
+using System.Linq;
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+namespace LBPUnion.UnionPatcher
+{
+ using RuntimeOSPlatform = System.Runtime.InteropServices.OSPlatform;
+
+ public enum OSPlatform
+ {
+ NotSupported,
+ Windows,
+ OSX,
+ Linux,
+ }
+ public class OSUtil
+ {
+ private static IEnumerable
+ <(OSPlatform Platform, RuntimeOSPlatform RuntimePlatform)?> EnumeratePlatforms()
+ {
+ yield return (OSPlatform.Windows, RuntimeOSPlatform.Windows);
+ yield return (OSPlatform.OSX, RuntimeOSPlatform.OSX);
+ yield return (OSPlatform.Linux, RuntimeOSPlatform.Linux);
+ }
+
+ public static OSPlatform GetPlatform()
+ {
+ return EnumeratePlatforms().FirstOrDefault(p
+ => RuntimeInformation.IsOSPlatform(p.Value.RuntimePlatform))?.Platform ?? default;
+ }
+
+ public static string GetExecutablePath()
+ {
+ var path = Path.GetDirectoryName(Assembly.GetEntryAssembly()?.Location);
+ if (string.IsNullOrEmpty(path))
+ path = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule?.FileName);
+ if (string.IsNullOrEmpty(path))
+ path = AppContext.BaseDirectory;
+
+ return path;
+ }
+ }
+}
+
diff --git a/UnionPatcher/Patcher.cs b/UnionPatcher/Patcher.cs
index 17e3bcb..7593974 100644
--- a/UnionPatcher/Patcher.cs
+++ b/UnionPatcher/Patcher.cs
@@ -1,37 +1,11 @@
using System;
using System.IO;
using System.Text;
+using System.Text.RegularExpressions;
namespace LBPUnion.UnionPatcher;
public static class Patcher {
- private static readonly string[] toBePatched = {
- // Normal LittleBigPlanet gameserver URLs
- "https://littlebigplanetps3.online.scee.com:10061/LITTLEBIGPLANETPS3_XML",
- "http://littlebigplanetps3.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- // LittleBigPlanet 3 Presence URLs
- "http://live.littlebigplanetps3.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- "http://presence.littlebigplanetps3.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- #region Spinoff URLs
- // LittleBigPlanet PSP URLs
- "http://lbppsp.online.scee.com:10060/LITTLEBIGPLANETPSP_XML",
- "https://lbppsp.online.scee.com:10061/LITTLEBIGPLANETPSP_XML",
- // LittleBigPlanet Vita URLs
- "http://lbpvita.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- "https://lbpvita.online.scee.com:10061/LITTLEBIGPLANETPS3_XML",
- #endregion
- #region Beta URLS
- // LittleBigPlanet 2 Beta URLs
- "http://lbp2ps3-beta.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- "https://lbp2ps3-beta.online.scee.com:10061/LITTLEBIGPLANETPS3_XML",
- // LittleBigPlanet (3?) Beta URLs
- "http://littlebigplanetps3-beta.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- "https://littlebigplanetps3-beta.online.scee.com:10061/LITTLEBIGPLANETPS3_XML",
- // LittleBigPlanet Vita Beta URLs
- "http://lbpvita-beta.online.scee.com:10060/LITTLEBIGPLANETPS3_XML",
- "https://lbpvita-beta.online.scee.com:10061/LITTLEBIGPLANETPS3_XML",
- #endregion
- };
public static void PatchFile(string fileName, Uri serverUrl, string outputFileName) {
PatchFile(fileName, serverUrl.ToString(), outputFileName);
@@ -72,13 +46,18 @@ public static class Patcher {
byte[] serverUrlAsBytes = Encoding.ASCII.GetBytes(serverUrl);
bool wroteUrl = false;
- foreach(string url in toBePatched) {
- if(serverUrl.Length > url.Length) {
- throw new ArgumentOutOfRangeException(nameof(serverUrl), $"Server URL ({serverUrl.Length} characters long) is above maximum length {url.Length}");
+
+ // Find a string including http or https and LITTLEBIGPLANETPS3_XML or LITTLEBIGPLANETPSP_XML,
+ // then match any additional NULL characters to dynamically gague the maximum length on a per-title basis
+ // without a hardcoded array of known server URLs
+ MatchCollection urls = Regex.Matches(dataAsString, "http?[^\x00]*?LITTLEBIGPLANETPS(3|P)_XML\x00*");
+ foreach(Match urlMatch in urls) {
+ string url = urlMatch.Value;
+
+ if(serverUrl.Length > url.Length - 1) {
+ throw new ArgumentOutOfRangeException(nameof(serverUrl), $"Server URL ({serverUrl.Length} characters long) is above maximum length {url.Length - 1}");
}
-
- int offset = dataAsString.IndexOf(url, StringComparison.Ordinal);
- if(offset < 1) continue;
+ int offset = urlMatch.Index;
writer.BaseStream.Position = offset;
for(int i = 0; i < url.Length; i++) {
diff --git a/UnionPatcher/RemotePatch.cs b/UnionPatcher/RemotePatch.cs
index d2d90c1..2e56bee 100644
--- a/UnionPatcher/RemotePatch.cs
+++ b/UnionPatcher/RemotePatch.cs
@@ -38,51 +38,76 @@ public class RemotePatch
public static void LaunchSCETool(string args)
{
string platformExecutable = "";
-
- if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
- platformExecutable = "scetool/win64/scetool.exe";
- else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
- platformExecutable = "scetool/linux64/scetool";
- else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX)) platformExecutable = "";
-
- if (platformExecutable != "")
+ switch (OSUtil.GetPlatform())
{
- ProcessStartInfo startInfo = new();
- startInfo.UseShellExecute = false;
- startInfo.FileName = Path.GetFullPath(platformExecutable);
- startInfo.WorkingDirectory = Path.GetFullPath(".");
- startInfo.Arguments = args;
- startInfo.RedirectStandardOutput = true;
+ case OSPlatform.Windows:
+ platformExecutable = "scetool/win64/scetool.exe";
+ break;
+ case OSPlatform.Linux:
+ if(RuntimeInformation.ProcessArchitecture == Architecture.X64)
+ {
+ platformExecutable = "scetool/linux64/scetool";
+ } else if (RuntimeInformation.ProcessArchitecture == Architecture.Arm)
+ {
+ platformExecutable = "scetool/linuxarm/scetool";
+ } else if (RuntimeInformation.ProcessArchitecture == Architecture.Arm64)
+ {
+ platformExecutable = "scetool/linuxarm64/scetool";
+ }
+ break;
+ case OSPlatform.OSX:
+ if (RuntimeInformation.OSArchitecture == Architecture.Arm64)
+ {
+ platformExecutable = "scetool/macarm64/scetool"; // For Apple Silicon Macs
+ }
+ else
+ {
+ platformExecutable = "scetool/mac64/scetool";
+ }
+ break;
+ default:
+ throw new Exception("Error starting SCETool. Your platform may not be supported yet.");
- Console.WriteLine("\n\n===== START SCETOOL =====\n");
- using (Process proc = Process.Start(startInfo))
- {
- while (!proc.StandardOutput.EndOfStream) Console.WriteLine(proc.StandardOutput.ReadLine());
- proc.WaitForExit();
- }
-
- Console.WriteLine("\n===== END SCETOOL =====\n\n");
}
- else
+
+ ProcessStartInfo startInfo = new();
+ startInfo.UseShellExecute = false;
+ startInfo.FileName = Path.GetFullPath(platformExecutable);
+ startInfo.WorkingDirectory = Path.GetFullPath(".");
+ startInfo.Arguments = args;
+ startInfo.RedirectStandardOutput = true;
+
+ Console.WriteLine("\n\n===== START SCETOOL =====\n");
+ using (Process proc = Process.Start(startInfo))
{
- throw new Exception("Error starting SCETool. Your platform may not be supported yet.");
+ while (!proc.StandardOutput.EndOfStream) Console.WriteLine(proc.StandardOutput.ReadLine());
+ proc.WaitForExit();
}
+
+ Console.WriteLine("\n===== END SCETOOL =====\n\n");
}
public void RevertEBOOT(string ps3ip, string gameID, string serverURL, string user, string pass)
{
Console.WriteLine("Restoring original EBOOT.BIN from EBOOT.BIN.BAK");
+ string workingDir = ".";
+ if (OSUtil.GetPlatform() == OSPlatform.OSX)
+ {
+ workingDir = $"{Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)}/UnionPatcher";
+ Directory.CreateDirectory(workingDir);
+ }
+
// Create a simple directory structure
- Directory.CreateDirectory(@"eboot");
- Directory.CreateDirectory($@"eboot/{gameID}");
- Directory.CreateDirectory($@"eboot/{gameID}/original");
+ Directory.CreateDirectory($@"{workingDir}/eboot");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}/original");
// Now we'll check and see if a backup exists on the server, if so download it and then upload it back as EBOOT.BIN
if (FTP.FileExists($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", user, pass))
{
- FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", @$"eboot/{gameID}/original/EBOOT.BIN.BAK", user, pass);
- FTP.UploadFile(@$"eboot/{gameID}/original/EBOOT.BIN.BAK", $"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN", user, pass);
+ FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", @$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN.BAK", user, pass);
+ FTP.UploadFile(@$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN.BAK", $"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN", user, pass);
}
else
{
@@ -93,6 +118,13 @@ public class RemotePatch
public void PSNEBOOTRemotePatch(string ps3ip, string gameID, string serverURL, string user, string pass)
{
Console.WriteLine("Detected Digital Copy - Running in Full Mode");
+
+ string workingDir = ".";
+ if (OSUtil.GetPlatform() == OSPlatform.OSX)
+ {
+ workingDir = $"{Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)}/UnionPatcher";
+ Directory.CreateDirectory(workingDir);
+ }
string idps = "";
string contentID = "";
@@ -103,25 +135,25 @@ public class RemotePatch
this._ps3Mapi.PS3.Notify("UnionRemotePatcher Connected! Patching...");
// Create simple directory structure
- Directory.CreateDirectory(@"rifs");
- Directory.CreateDirectory(@"eboot");
- Directory.CreateDirectory($@"eboot/{gameID}");
- Directory.CreateDirectory($@"eboot/{gameID}/original");
- Directory.CreateDirectory($@"eboot/{gameID}/patched");
+ Directory.CreateDirectory($@"{workingDir}/rifs");
+ Directory.CreateDirectory($@"{workingDir}/eboot");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}/original");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}/patched");
// Let's grab and backup our EBOOT
FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN",
- @$"eboot/{gameID}/original/EBOOT.BIN", user, pass);
+ @$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN", user, pass);
// Now we'll check and see if a backup exists on the server or not, if we don't have one on the server, then upload one
if (!FTP.FileExists($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", user, pass))
- FTP.UploadFile(@$"eboot/{gameID}/original/EBOOT.BIN",
+ FTP.UploadFile(@$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN",
$"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", user, pass);
// Start getting idps and act.dat - these will help us decrypt a PSN eboot
idps = PS3MAPI.PS3MAPIClientServer.PS3_GetIDPS();
- File.WriteAllBytes(@"data/idps", IDPSHelper.StringToByteArray(idps));
+ File.WriteAllBytes($@"data/idps", IDPSHelper.StringToByteArray(idps));
// Scan the users on the system
users = GetUsers(ps3ip, user, pass);
@@ -135,12 +167,12 @@ public class RemotePatch
$"ftp://{ps3ip}/dev_hdd0/home/{currentUser}/exdata/", user, pass))
if (fileName.Contains(gameID))
{
- FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/home/{currentUser}/exdata/act.dat", @"data/act.dat",
+ FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/home/{currentUser}/exdata/act.dat", $@"{workingDir}/data/act.dat",
user,
pass);
FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/home/{currentUser}/exdata/{fileName}",
- @$"rifs/{fileName}", user, pass);
+ @$"{workingDir}/rifs/{fileName}", user, pass);
contentID = fileName.Substring(0, fileName.Length - 4);
@@ -150,10 +182,10 @@ public class RemotePatch
}
// Finally, let's decrypt the EBOOT.BIN
- LaunchSCETool($" -v -d \"{Path.GetFullPath(@$"eboot/{gameID}/original/EBOOT.BIN")}\" \"{Path.GetFullPath(@$"eboot/{gameID}/original/EBOOT.ELF")}\"");
+ LaunchSCETool($" -v -d \"{Path.GetFullPath(@$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN")}\" \"{Path.GetFullPath(@$"{workingDir}/eboot/{gameID}/original/EBOOT.ELF")}\"");
// Now, patch the EBOOT;
- Patcher.PatchFile($"eboot/{gameID}/original/EBOOT.ELF", serverURL, $"eboot/{gameID}/patched/EBOOT.ELF");
+ Patcher.PatchFile($"{workingDir}/eboot/{gameID}/original/EBOOT.ELF", serverURL, $"{workingDir}/eboot/{gameID}/patched/EBOOT.ELF");
// Encrypt the EBOOT (PSN)
LaunchSCETool($"--verbose " +
@@ -173,10 +205,10 @@ public class RemotePatch
$" --np-app-type=SPRX" +
$" --np-content-id={contentID}" +
$" --np-real-fname=EBOOT.BIN" +
- $" --encrypt eboot/{gameID}/patched/EBOOT.ELF eboot/{gameID}/patched/EBOOT.BIN");
+ $" --encrypt {workingDir}/eboot/{gameID}/patched/EBOOT.ELF {workingDir}/eboot/{gameID}/patched/EBOOT.BIN");
// And upload the encrypted, patched EBOOT to the system.
- FTP.UploadFile(@$"eboot/{gameID}/patched/EBOOT.BIN",
+ FTP.UploadFile(@$"{workingDir}/eboot/{gameID}/patched/EBOOT.BIN",
$"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN", user, pass);
}
@@ -185,38 +217,45 @@ public class RemotePatch
{
Console.WriteLine("Detected Disc Copy - Running in Simplified Mode");
+ string workingDir = ".";
+ if (OSUtil.GetPlatform() == OSPlatform.OSX)
+ {
+ workingDir = $"{Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)}/UnionPatcher";
+ Directory.CreateDirectory(workingDir);
+ }
+
// Create a simple directory structure
- Directory.CreateDirectory(@"eboot");
- Directory.CreateDirectory($@"eboot/{gameID}");
- Directory.CreateDirectory($@"eboot/{gameID}/original");
- Directory.CreateDirectory($@"eboot/{gameID}/patched");
+ Directory.CreateDirectory($@"{workingDir}/eboot");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}/original");
+ Directory.CreateDirectory($@"{workingDir}/eboot/{gameID}/patched");
// Let's grab and backup our EBOOT
FTP.DownloadFile($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN",
- @$"eboot/{gameID}/original/EBOOT.BIN", user, pass);
+ @$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN", user, pass);
// Now we'll check and see if a backup exists on the server or not, if we don't have one on the server, then upload one
if (!FTP.FileExists($"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", user, pass))
- FTP.UploadFile(@$"eboot/{gameID}/original/EBOOT.BIN",
+ FTP.UploadFile(@$"{workingDir}/eboot/{gameID}/original/EBOOT.BIN",
$"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN.BAK", user, pass);
// Check for keys in the data directory
- if (!File.Exists("data/keys"))
+ if (!File.Exists($"./data/keys"))
throw new FileNotFoundException(
"UnionRemotePatcher cannot find the keys, ldr_curves, or vsh_curves files required to continue. Please make sure you have copies of these files placed in the data directory where you found the executable to run UnionRemotePatcher. Without them, we can't patch your game.");
// Decrypt the EBOOT
- LaunchSCETool($"-v -d eboot/{gameID}/original/EBOOT.BIN eboot/{gameID}/original/EBOOT.ELF");
+ LaunchSCETool($"-v -d {workingDir}/eboot/{gameID}/original/EBOOT.BIN {workingDir}/eboot/{gameID}/original/EBOOT.ELF");
// Now, patch the EBOOT;
- Patcher.PatchFile($"eboot/{gameID}/original/EBOOT.ELF", serverURL, $"eboot/{gameID}/patched/EBOOT.ELF");
+ Patcher.PatchFile($"{workingDir}/eboot/{gameID}/original/EBOOT.ELF", serverURL, $"{workingDir}/eboot/{gameID}/patched/EBOOT.ELF");
// Encrypt the EBOOT (Disc)
LaunchSCETool(
- $" -v --sce-type=SELF --skip-sections=FALSE --key-revision=0A --self-app-version=0001000000000000 --self-auth-id=1010000001000003 --self-vendor-id=01000002 --self-ctrl-flags=0000000000000000000000000000000000000000000000000000000000000000 --self-cap-flags=00000000000000000000000000000000000000000000003B0000000100040000 --self-type=APP --self-fw-version=0003005500000000 --compress-data true --encrypt \"{Path.GetFullPath(@$"eboot/{gameID}/patched/EBOOT.ELF")}\" \"{Path.GetFullPath(@$"eboot/{gameID}/patched/EBOOT.BIN")}\"");
+ $" -v --sce-type=SELF --skip-sections=FALSE --key-revision=0A --self-app-version=0001000000000000 --self-auth-id=1010000001000003 --self-vendor-id=01000002 --self-ctrl-flags=0000000000000000000000000000000000000000000000000000000000000000 --self-cap-flags=00000000000000000000000000000000000000000000003B0000000100040000 --self-type=APP --self-fw-version=0003005500000000 --compress-data true --encrypt \"{Path.GetFullPath(@$"{workingDir}/eboot/{gameID}/patched/EBOOT.ELF")}\" \"{Path.GetFullPath(@$"{workingDir}/eboot/{gameID}/patched/EBOOT.BIN")}\"");
// And upload the encrypted, patched EBOOT to the system.
- FTP.UploadFile(@$"eboot/{gameID}/patched/EBOOT.BIN",
+ FTP.UploadFile(@$"{workingDir}/eboot/{gameID}/patched/EBOOT.BIN",
$"ftp://{ps3ip}/dev_hdd0/game/{gameID}/USRDIR/EBOOT.BIN", user, pass);
}
-}
\ No newline at end of file
+}
diff --git a/UnionPatcher/UnionPatcher.csproj b/UnionPatcher/UnionPatcher.csproj
index 00942c0..b55e086 100644
--- a/UnionPatcher/UnionPatcher.csproj
+++ b/UnionPatcher/UnionPatcher.csproj
@@ -3,7 +3,7 @@
LBPUnion.UnionPatcher
LBPUnion.UnionPatcher
Debug;Release;Windows
- net6.0
+ net8.0
AnyCPU
Icon64.ico
diff --git a/UnionPatcher/data/keys b/UnionPatcher/data/keys
new file mode 100644
index 0000000..ab880ef
--- /dev/null
+++ b/UnionPatcher/data/keys
@@ -0,0 +1,4809 @@
+[NP_tid]
+type=OTHER
+key=9B515FEACF75064981AA604D91A54E97
+
+[NP_ci]
+type=OTHER
+key=6BA52976EFDA16EF3C339FB2971E256B
+
+[NP_klic_free]
+type=OTHER
+key=72F990788F9CFF745725F08E4C128387
+
+[NP_klic_key]
+type=OTHER
+key=F2FBCA7A75B04EDC1390638CCDFDD1EE
+
+[NP_klic_dev]
+type=OTHER
+key=52C0B5CA76D6134BB45FC66CA637F2C1
+
+[NP_sig]
+type=OTHER
+pub=E6792E446CEBA27BCADF374B99504FD8E80ADFEB3E66DE73FFE58D3291221C65018C038D3822C3C9
+priv=000000000000000000000000000000000000000000
+ctype=2
+
+[NP_dat]
+type=OTHER
+key=2B7E151628AED2A6ABF7158809CF4F3C
+riv=3032ADFCDE09CFBFF0A3B3525B097FAF
+
+[NP_gpkg_key]
+type=OTHER
+key=2E7B71D7C9C9A14EA3221F188828B8F8
+
+[ppu]
+type=OTHER
+revision=0000
+erk=31A57D41FF28CD29721B41D347F48809D01E8C70A8F297D2F652C298315D9D4FD3ADB79D9BC55C38BF49F8664FB84281145A935130D5A22AAE065D2B3542175D36337FA72E0C24F10B8605BB1957D81D6DA1D45DCEBF6B503283905BC1F656CCD23F408234778FBCA0DAD68C625951E20C2CF06A001CDA65E715148CF1EEB294D2C4EABF968CFA6F23608F6F6257F317F53FD595A656EDC8739596EA6F25429217EC4391566D330DB1FE95CDF45B9F3B
+riv=B5F9F0E46307DBFA5F54BE397475E2BB
+
+[PUP_hmac_key]
+type=OTHER
+key=F491AD94C6811096915FD5D24481AEDCEDEDBE6BE513724DD8F7B691E88A38F4B5162BFBECBE3A62185DD7C94DA2225ADA3FBFCE555B9EA9649829EB30CE8366
+
+[spu]
+type=OTHER
+revision=0000
+erk=E044C1E29C53FEF2E064E31207D09D48676719789D59E5C1F004D002390F23608350EBCCCA16A69A08E2A813F18B92EF688B163CB6C4781F0285AEAD4DAB0FD2555A7B10D87DA8C9257136546E1A6A33782DC8C1B1A888A3FB2000EFBC12DE7FFC6EC40EC3782C8C53625B96E72334E67073EC2C0395A5DB0A1CACA119E61A86ADA4401ADD1CC764A0C2DB4D58E13F8B23515AB750DCED2BAE626CCE7FD07242E2BF4D2503282798E4A736ACC388412D
+riv=20385B4B1819FD8E691BBEF17001392B
+
+[pkg]
+type=PKG
+revision=00
+version=0000000000000000
+erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031
+riv=4ACEF01224FBEEDF8245F8FF10211E6E
+pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=23
+
+[pkg]
+type=PKG
+revision=00
+version=0000000000000000
+erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF
+riv=0123456789ABCDEFFEDCBA9876543210
+pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872
+priv=000000000000000000000000000000000001000000
+ctype=27
+
+[pkg]
+type=PKG
+revision=00
+version=0003005500000000
+erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031
+riv=4ACEF01224FBEEDF8245F8FF10211E6E
+pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=23
+
+[pkg]
+type=PKG
+revision=01
+version=0003005600000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=
+ctype=17
+
+[pkg]
+type=PKG
+revision=00
+version=0004004600000000
+erk=A97818BD193A67A16FE83A855E1BE9FB5640938D4DBCB2CB52C5A2F8B02B1031
+riv=4ACEF01224FBEEDF8245F8FF10211E6E
+pub=41DA1A8F74FF8D3F1CE20EF3E9D8865C96014FE373CA143C9BADEDF2D9D3C7573307115CCFE04F13
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=23
+
+[PKG]
+type=PKG
+revision=00
+version=0004004600000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+[SPKG-REV000]
+type=OTHER
+revision=00
+version=0000000000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+[spp-4.46]
+type=SPP
+revision=00
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=00
+version=0000000000000000
+erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF
+riv=0123456789ABCDEFFEDCBA9876543210
+pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872
+priv=000000000000000000000000000000000001000000
+ctype=27
+
+[spp]
+type=SPP
+revision=00
+version=0003005500000000
+erk=56C655747A4B6957A2D8BB9AC605C297E6AC9871932BFECDDE066CEE5B29470A
+riv=007E6B268EF1E986D10A9889CF93A8CB
+pub=265C04E7F20C3B8ACAC90E7C9D12757ED7ACBC01AA6624A2A927E719A4AA1222F87D917005F6072A
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=22
+
+[spp]
+type=SPP
+revision=01
+version=0003005600000000
+erk=7FD222B3FEF467DF7E3F63AC8B77501A3B38752411E96AFEDA6587B5CD5E91B0
+riv=B889290922B002F57086B818A8FDE3CC
+pub=71E12CB3D81AFA79670AF4FAC4BBE41AA7F7DDF368F5615E933CB1C21A783B73C085CA49986CCF63
+priv=
+ctype=22
+
+[spp]
+type=SPP
+revision=02
+version=0003006000000000
+erk=ED17248214B9AB34D57ED5CA6CCAEC9879137B4B46CE5064E6491D34001BACF2
+riv=3E05572881C5BC845D310EAC28497B08
+pub=504F905A8AAAA0E9BF55F6D5285697E2CABDB1A5240C4745BE8923308169EAB43E1BFD265F5E579E
+priv=
+ctype=13
+
+[spp]
+type=SPP
+revision=02
+version=0003006100000000
+erk=ED17248214B9AB34D57ED5CA6CCAEC9879137B4B46CE5064E6491D34001BACF2
+riv=3E05572881C5BC845D310EAC28497B08
+pub=504F905A8AAAA0E9BF55F6D5285697E2CABDB1A5240C4745BE8923308169EAB43E1BFD265F5E579E
+priv=
+ctype=13
+
+[spp]
+type=SPP
+revision=03
+version=0003006500000000
+erk=E750FE8ED144D99782AC605944350B9F41AE489C3274C42C1BFD5AB06115C7C4
+riv=0F23BBED0473B4899AD793AC76D8F722
+pub=934861FF0D4BAF7141B658D1D84441D413060D7E534E99E357B5090EECFB34D947694ADB9F6E7D3F
+priv=
+ctype=22
+
+[spp]
+type=SPP
+revision=03
+version=0003006600000000
+erk=E750FE8ED144D99782AC605944350B9F41AE489C3274C42C1BFD5AB06115C7C4
+riv=0F23BBED0473B4899AD793AC76D8F722
+pub=934861FF0D4BAF7141B658D1D84441D413060D7E534E99E357B5090EECFB34D947694ADB9F6E7D3F
+priv=
+ctype=22
+
+[spp]
+type=SPP
+revision=04
+version=0003007000000000
+erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0
+riv=3B6203C2730D283F978A12D5390DD747
+pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8
+priv=
+ctype=23
+
+[spp]
+type=SPP
+revision=04
+version=0003007200000000
+erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0
+riv=3B6203C2730D283F978A12D5390DD747
+pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8
+priv=
+ctype=23
+
+[spp]
+type=SPP
+revision=04
+version=0003007300000000
+erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0
+riv=3B6203C2730D283F978A12D5390DD747
+pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8
+priv=
+ctype=23
+
+[spp]
+type=SPP
+revision=04
+version=0003007400000000
+erk=4B1A459AF1D484DABD727BD316351A9A1B3404E9B1DE925B95527166DB3BB2D0
+riv=3B6203C2730D283F978A12D5390DD747
+pub=0AEEB187EA76913765A15A435F2F1B15545F60794FB5244DC54801B6BABD497565ED6BF57C1A80C8
+priv=
+ctype=23
+
+[spp]
+type=SPP
+revision=05
+version=0004000000000000
+erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF
+riv=67B49380C74FFB15AD929E8C819586AD
+pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3
+priv=
+ctype=04
+
+[spp]
+type=SPP
+revision=05
+version=0004001000000000
+erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF
+riv=67B49380C74FFB15AD929E8C819586AD
+pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3
+priv=
+ctype=04
+
+[spp]
+type=SPP
+revision=05
+version=0004001100000000
+erk=11FA6344E869787209E6806E66A7799F7128BD98AEAE95B386D4C88EDDDB3FEF
+riv=67B49380C74FFB15AD929E8C819586AD
+pub=5E028AC83D1BF838CEC43CA11969C72533A057BB0C3CB4A571F8E08DD5DF793CD1E1270CA6E89FB3
+priv=
+ctype=04
+
+[spp]
+type=SPP
+revision=06
+version=0004002000000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004002100000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004002500000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004003000000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004003100000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004004000000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004004100000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004004500000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=00
+version=0004004600000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=06
+version=0004004600000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[spp]
+type=SPP
+revision=00
+version=0004002100000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004002500000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004003000000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004003100000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004004000000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004004100000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004004500000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[spp]
+type=SPP
+revision=00
+version=0004004600000000
+erk=22FDAD89CD16D37EEA68744E9AF0889B24B86BFF7C99F274A14A0481184763F8
+riv=5C57DC863833964A41376FD7E7233D74
+pub=7D446260E486DDE2F16A5E45400E2CF53BF0FC49D7EE1B40BF28F7B773CCB789EFC12BC1F8339EF3
+priv=
+ctype=12
+
+[rvk-4.46]
+type=RVK
+revision=00
+version=0000000000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=00
+version=0000000000000000
+erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF
+riv=0123456789ABCDEFFEDCBA9876543210
+pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872
+priv=000000000000000000000000000000000001000000
+ctype=27
+
+[rvk]
+type=RVK
+revision=00
+version=0003005500000000
+erk=03AF06FD1CE6DA366361682CDF59F9708B5D7876F40A9E1E9AC2B22F51B60BDF
+riv=8B5D7876F40A9E1E9AC2B22F51B60BDF
+pub=9ADE7830EB74245EC357CE4F6401633E5A8048FD865F9D8F1A9189535A37623E2921427463A754F7
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=29
+
+[rvk]
+type=RVK
+revision=01
+version=0003005600000000
+erk=22628A9EC4C414D5B32F2B4BA4926089DE9A461B190FB3E4392D057C525535DE
+riv=D5D4B8ED62B6CCA0249A79776E136975
+pub=51751B9F1DA58638D2D99F67E20A1D4A454C5B042CD1D0A449A2989808002BA68FB5B7F4B5B4E63B
+priv=
+ctype=32
+
+[rvk]
+type=RVK
+revision=02
+version=0003006000000000
+erk=BCFEDBE01D445CDEF335C543703D8E9C1199FAC33DC4595D7382EAF54EF9C4C3
+riv=B20A23079516205525683D8058379CBF
+pub=9859B677A5B8FCCA31A6FBA2E3220EE5E207343A58EEEE6B6CB260EB5E971352C45428E8C8398BE6
+priv=
+ctype=33
+
+[rvk]
+type=RVK
+revision=02
+version=0003006100000000
+erk=BCFEDBE01D445CDEF335C543703D8E9C1199FAC33DC4595D7382EAF54EF9C4C3
+riv=B20A23079516205525683D8058379CBF
+pub=9859B677A5B8FCCA31A6FBA2E3220EE5E207343A58EEEE6B6CB260EB5E971352C45428E8C8398BE6
+priv=
+ctype=33
+
+[rvk]
+type=RVK
+revision=0000
+version=0003006500000000
+erk=1EBD693BD813ADDA2203DAEE0441F4146C174F68F532B3E43A48F029230EF70C
+riv=501819323BFCF9FB99396B46B70A97E7
+pub=6563EA3D5694A913F24059A57B2A3645C7C8A587CF20075EFD978A048CAD7A68A8EB7E6BC4BC5448
+priv=
+ctype=30
+
+[rvk]
+type=RVK
+revision=03
+version=0003006600000000
+erk=1EBD693BD813ADDA2203DAEE0441F4146C174F68F532B3E43A48F029230EF70C
+riv=501819323BFCF9FB99396B46B70A97E7
+pub=6563EA3D5694A913F24059A57B2A3645C7C8A587CF20075EFD978A048CAD7A68A8EB7E6BC4BC5448
+priv=
+ctype=30
+
+[rvk]
+type=RVK
+revision=04
+version=0003007000000000
+erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4
+riv=0E5CB28FA2666E3ED45289DABC67DDC2
+pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371
+priv=
+ctype=31
+
+[rvk]
+type=RVK
+revision=04
+version=0003007200000000
+erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4
+riv=0E5CB28FA2666E3ED45289DABC67DDC2
+pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371
+priv=
+ctype=31
+
+[rvk]
+type=RVK
+revision=04
+version=0003007300000000
+erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4
+riv=0E5CB28FA2666E3ED45289DABC67DDC2
+pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371
+priv=
+ctype=31
+
+[rvk]
+type=RVK
+revision=04
+version=0003007400000000
+erk=4AF39F7A4E214ECB270416EDD17113A23DC5AD2EDAA5FC91817EE171CDB8B9F4
+riv=0E5CB28FA2666E3ED45289DABC67DDC2
+pub=758BBF611ED6BB8C32D2A49A7AD456D585D11C74926F977737EE309F213D971404A8F9022B409371
+priv=
+ctype=31
+
+[rvk]
+type=RVK
+revision=05
+version=0004000000000000
+erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E
+riv=182CC801794A2F7027BB76D29D598550
+pub=
+priv=
+ctype=
+
+[rvk]
+type=RVK
+revision=05
+version=0004001000000000
+erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E
+riv=182CC801794A2F7027BB76D29D598550
+pub=
+priv=
+ctype=
+
+[rvk]
+type=RVK
+revision=05
+version=0004001100000000
+erk=99E8959A4363BE9EBDBC2B9C73BCBBE627BF112883E650E3F95879C0BFFB103E
+riv=182CC801794A2F7027BB76D29D598550
+pub=
+priv=
+ctype=
+
+[rvk]
+type=RVK
+revision=06
+version=0004002000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004002100000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004002500000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004003000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004003100000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004004000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004004500000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[rvk]
+type=RVK
+revision=02
+version=0004004600000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+[rvk]
+type=RVK
+revision=06
+version=0004004600000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=
+ctype=12
+
+[isoldr]
+type=SELF
+revision=0000
+version=0000000000000000
+self_type=ISO
+erk=9E85BEE6D39E9632A77FE3CD6E647C8DFE4606C383E1697DD6D9CE63341EAFF9
+riv=2C1F4C82FF3A796D3A772CEEF010ECA4
+pub=625D1DF4C3264BBA9FC17A4437BA42591585A5ECCC6F3042DB3A80CBBC0426DAF33549C537AA7782
+priv=00D19A1B338041F7C31062B9C40E725E1DA5D7C11A
+ctype=20
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003001500000000
+self_type=ISO
+erk=8860D0CFF4D0DC688D3223321B96B59A777E6914961488E07048DAECB020ECA4
+riv=C82D015D46CF152F1DD0C16F18B5B1E5
+pub=733918D7C888130509346E6B4A8B6CAA357AB557E814E8122BF102C14A314BF9475B9D70EAF9EC29
+priv=009BE892E122A5C943C1BB7403A67318AA9E1B286F
+ctype=36
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003003100000000
+self_type=ISO
+erk=8860D0CFF4D0DC688D3223321B96B59A777E6914961488E07048DAECB020ECA4
+riv=C82D015D46CF152F1DD0C16F18B5B1E5
+pub=733918D7C888130509346E6B4A8B6CAA357AB557E814E8122BF102C14A314BF9475B9D70EAF9EC29
+priv=009BE892E122A5C943C1BB7403A67318AA9E1B286F
+ctype=36
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003004100000000
+self_type=ISO
+erk=101E27F3FA2FB53ACA924F783AD553162D56B975D05B81351A1111799F20254D
+riv=8D2E9C6297B8AD252998458296AC773C
+pub=138446EE0BDDA5638F97328C8956E6489CBBFE57C5961D40DD5C43BB4138F1C400A8B27204A5D625
+priv=00849DBC57D3B92F01864E6E82EB4EF0EF6311E122
+ctype=32
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003005000000000
+self_type=ISO
+erk=3F2604FA27AEADFBE1AC69EB00BB16EF196C2193CBD62900FFD8C25041680843
+riv=A414AC1DB7987E43777651B330B899E1
+pub=1F4633AFDE18614D6CEF38A2FD6C4CCAC7B6EB8109D72CD066ECEBA0193EA3F43C37AE83179A4E5F
+priv=0085B4B05DEBA7E6AD831653C974D95149803BB272
+ctype=33
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003005500000000
+self_type=ISO
+erk=BDB74AA6E3BA2DC10B1BD7F17198399A158DBE1FA0BEA68C90FCACBE4D04BE37
+riv=0207A479B1574F8E7F697528F05D5435
+pub=917E1F1DC48A54EB5F10B38E7569BB5383628A7C906F0DCA62FDA33805C15FAB270016940A09DB58
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=03
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003005600000000
+self_type=ISO
+erk=311C015F169F2A1E0757F7064B14C7C9F3A3FFEE015BD4E3A22401A2667857CE
+riv=7BB8B3F5AC8E0890E3148AE5688C7350
+pub=3F040EFA2335FED5670BA4D5C3AB2D9D0B4BA69D154A0062EA995A7D21DBAF0DC5A0DAD333D1C1DD
+priv=
+ctype=08
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003006000000000
+self_type=ISO
+erk=8474ADCA3B3244931EECEB9357841442442A1C4A4BCF4E498E6738950F4E4093
+riv=FFF9CACCC4129125CAFB240F419E5F39
+pub=098E1A53E59A95316B00D5A29C05FFEBAE41D1A8A386F9DA96F98858FD25E07BB7A3BC96A5D5B556
+priv=
+ctype=03
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003006100000000
+self_type=ISO
+erk=8474ADCA3B3244931EECEB9357841442442A1C4A4BCF4E498E6738950F4E4093
+riv=FFF9CACCC4129125CAFB240F419E5F39
+pub=098E1A53E59A95316B00D5A29C05FFEBAE41D1A8A386F9DA96F98858FD25E07BB7A3BC96A5D5B556
+priv=
+ctype=03
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003006500000000
+self_type=ISO
+erk=E6A21C599B75696C169EC02582BDA74A776134A6E05108EA701EC0CA2AC03592
+riv=D292A7BD57C0BB2EABBCA1252FA9EDEF
+pub=2ED078A13DC4617EB550AD06E228C83C142A2D588EB5E729402D18038A14842FD65B277DCAD225A5
+priv=
+ctype=08
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003006600000000
+self_type=ISO
+erk=E6A21C599B75696C169EC02582BDA74A776134A6E05108EA701EC0CA2AC03592
+riv=D292A7BD57C0BB2EABBCA1252FA9EDEF
+pub=2ED078A13DC4617EB550AD06E228C83C142A2D588EB5E729402D18038A14842FD65B277DCAD225A5
+priv=
+ctype=08
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003007000000000
+self_type=ISO
+erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51
+riv=8516A81F02CF938740498A406C880871
+pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D
+priv=
+ctype=21
+
+[isoldr]
+type=SELF
+version=0003007000000000
+revision=0100
+self_type=ISO
+erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8
+riv=94662F13D99A9F5D211C979FFDF65FE3
+pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B
+priv=
+ctype=0E
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003007200000000
+self_type=ISO
+erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51
+riv=8516A81F02CF938740498A406C880871
+pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D
+priv=
+ctype=21
+
+[isoldr]
+type=SELF
+version=0003007200000000
+revision=0100
+self_type=ISO
+erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8
+riv=94662F13D99A9F5D211C979FFDF65FE3
+pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B
+priv=
+ctype=0E
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003007300000000
+self_type=ISO
+erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51
+riv=8516A81F02CF938740498A406C880871
+pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D
+priv=
+ctype=21
+
+[isoldr]
+type=SELF
+version=0003007300000000
+revision=0100
+self_type=ISO
+erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8
+riv=94662F13D99A9F5D211C979FFDF65FE3
+pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B
+priv=
+ctype=0E
+
+[isoldr]
+type=SELF
+revision=0001
+version=0003007400000000
+self_type=ISO
+erk=072D3A5C3BDB0D674DE209381432B20414BC9BDA0F583ECB94BD9A134176DD51
+riv=8516A81F02CF938740498A406C880871
+pub=5A778DEB5C4F12E8D48E06A2BBBBE3C90FA8C6C47DF9BDB5697FD4A8EB7941CE3F59A557E81C787D
+priv=
+ctype=21
+
+[isoldr]
+type=SELF
+version=0003007400000000
+revision=0100
+self_type=ISO
+erk=786FAB8A0B89474A2CB80B3EA104CCCB9E13F66B45EC499BB31865D07C661EA8
+riv=94662F13D99A9F5D211C979FFDF65FE3
+pub=912C94C252B7799CEB45DFBB73EF7CAD9BCC0793A3331BBB79E3C47C0F5C782F698065A8D4DB0D8B
+priv=
+ctype=0E
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004000000000000
+self_type=ISO
+erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD
+riv=4F1E3EF07D893A4714B1B3D5A4E50479
+pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702
+priv=
+ctype=11
+
+[isoldr]
+type=SELF
+version=0004000000000000
+revision=0100
+self_type=ISO
+erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B
+riv=0E50DB6D937D262CB0499136852FCB80
+pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC
+priv=
+ctype=0F
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004001000000000
+self_type=ISO
+erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD
+riv=4F1E3EF07D893A4714B1B3D5A4E50479
+pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702
+priv=
+ctype=11
+
+[isoldr]
+type=SELF
+version=0004001000000000
+revision=0100
+self_type=ISO
+erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B
+riv=0E50DB6D937D262CB0499136852FCB80
+pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC
+priv=
+ctype=0F
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004001100000000
+self_type=ISO
+erk=4262657A3185D9480F82C8BD2F81766FCC2C8FD7DD5EBE8657B00B939E0C75BD
+riv=4F1E3EF07D893A4714B1B3D5A4E50479
+pub=4DBFCFA68B52F1D66E09AFA6C18EC65479EDBD027B6B8C6A5D85FE5C84D43EA40CEF1672078A0702
+priv=
+ctype=11
+
+[isoldr]
+type=SELF
+version=0004001100000000
+revision=0100
+self_type=ISO
+erk=16AA7D7C35399E2B1BFAF68CD19D7512A7855029C08BECC4CC3F035DF7F9C70B
+riv=0E50DB6D937D262CB0499136852FCB80
+pub=AEE2795BF295662A50DFAFE70D1B0B6F0A2EBB211E1323A275FC6E2D13BE4F2F10CA34784F4CF1EC
+priv=
+ctype=0F
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004002000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004020000000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004002100000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004021000000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004002500000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004025000000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004003000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004030000000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004003100000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004031000000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+version=0004004000000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004004000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004004100000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004004100000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004004500000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004004500000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004004600000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=
+ctype=15
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004004600000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=0044AA25B4276D79B494A29CB8DE104642424F8EEF
+ctype=15
+
+[isoldr]
+type=SELF
+version=0004004600000000
+revision=0100
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=
+ctype=02
+
+[isoldr]
+type=SELF
+revision=0001
+version=0004005000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=0044AA25B4276D79B494A29CB8DE104642424F8EEF
+ctype=15
+
+[lv0ldr]
+type=SELF
+revision=0000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+[lv0ldr]
+type=SELF
+revision=0000
+self_type=LV0
+erk=FEDCBA98765432100123456789ABCDEFFEDCBA98765432100123456789ABCDEF
+riv=0123456789ABCDEFFEDCBA9876543210
+pub=123DA14B3D21D82AFC759A9CF6F41610A24EC8704306BAC4E0941A5B70EEA037F1482EA7EC578872
+priv=000000000000000000000000000000000001000000
+ctype=27
+
+[lv0ldr]
+type=SELF
+version=0004004600000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+[lv0ldr]
+type=SELF
+version=0004005000000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0000000000000000
+self_type=LV1
+erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011
+riv=A17D6A522CB1B08F97DA8A82E97C12F7
+pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573
+priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8
+ctype=11
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003001500000000
+self_type=LV1
+erk=B9F3F9E6107CFF2680A91E118C2403CF4A6F18F3C7EFD7D13D1AC4DB760BD222
+riv=B43661B9A79BAD9D8E2B046469CDA1E7
+pub=4C870BE86DDD996A92A3F7F404F33604244A1D02AB5B78BC9DAF030B78BE8867CF586171B7D45D20
+priv=002CC736C7AD06D264E9AB663EB1F35F5DC159248C
+ctype=33
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003004100000000
+self_type=LV1
+erk=B880593856C8C6D2037585626A12977F50DCFCF3F132D2C89AA6E670EAFC1646
+riv=A79B05D4E37B8117A95E6E7C14FB640E
+pub=7454C7CCBFC2F66C142D78A730A3A6F973CC0FB75A46FCBB390790138910A0CAC78E5E21F4DA3375
+priv=00033A699FDD2DA6CDD6CCC03B2C6145F998706F74
+ctype=34
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003005000000000
+self_type=LV1
+erk=1E8EEEA9E80A729F3FA52CF523B25941EA44B4155D94E5DADC5C5A77847620C7
+riv=E034D31A80316960024D1B3D3164FDC3
+pub=7E3A196F4A5879F3A7B091A2263F7C24E1716129B580566D308D9C2254B36AEE53DEF30EC85F8398
+priv=005815D17125D04C33790321DE29EB6241365100B5
+ctype=35
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003005500000000
+self_type=LV1
+erk=53ABDF84BE08B0351B734F2B97D2BE1621BC6C889E4362E5C70F39D6C3ED9F23
+riv=44E652661AC7584DBE08ECB810FB5FC0
+pub=733198A7759BC07326755BC9773A8A17C8A7043C7BDAB83D88E230512E2EA3852D7DA4263A7E97F9
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=05
+
+[lv1ldr]
+type=SELF
+version=0003005600000000
+self_type=LV1
+erk=48793EBDDA1AF65D737DA2FDA2DD104447A698F8A82CAAEE992831711BA94E83
+riv=15DCF3C67147A45D09DE7521EECA07A1
+pub=85A8868C320127F10B6598964C69221C086702021D31803520E21FDE4DBE827766BE41825CB7328C
+priv=
+ctype=07
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003005600000000
+self_type=LV1
+erk=962E952E25236322FE415F6EAC9DEC6BB2AD93CA1FE6B4B82C9A21510BE4B76D
+riv=148E7A251EC03A2FA88EFCC13D882D4B
+pub=625D1DF4C3264BBA9FC17A4437BA42591585A5ECCC6F3042DB3A80CBBC0426DAF33549C537AA7782
+priv=
+ctype=07
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003006000000000
+self_type=LV1
+erk=5FF17D836E2C4AD69476E2614F64BDD05B9115389A9A6D055B5B544B1C34E3D5
+riv=DF0F50EC3C4743C5B17839D7B49F24A4
+pub=1CDABE30833823F461CA534104115FFF60010B710631E435A7D915E82AE88EDE667264656CB7062E
+priv=
+ctype=05
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003006100000000
+self_type=LV1
+erk=5FF17D836E2C4AD69476E2614F64BDD05B9115389A9A6D055B5B544B1C34E3D5
+riv=DF0F50EC3C4743C5B17839D7B49F24A4
+pub=1CDABE30833823F461CA534104115FFF60010B710631E435A7D915E82AE88EDE667264656CB7062E
+priv=
+ctype=05
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003006500000000
+self_type=LV1
+erk=BD0621FA19383C3C72ECBC3B008F1CD55FFD7C3BB7510BF11AD0CF0FC2B70951
+riv=569AF3745E1E02E3E288273CDE244CD8
+pub=21E26F11C2D69478609DD1BD278CDFC940D90386455BA52FCD1FA7E27AC2AFA826C79A10193B625C
+priv=
+ctype=07
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003006600000000
+self_type=LV1
+erk=BD0621FA19383C3C72ECBC3B008F1CD55FFD7C3BB7510BF11AD0CF0FC2B70951
+riv=569AF3745E1E02E3E288273CDE244CD8
+pub=21E26F11C2D69478609DD1BD278CDFC940D90386455BA52FCD1FA7E27AC2AFA826C79A10193B625C
+priv=
+ctype=07
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003007000000000
+self_type=LV1
+erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE
+riv=C8C98D5A5CE23AF5607A352AECACB0DC
+pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667
+priv=
+ctype=12
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003007200000000
+self_type=LV1
+erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE
+riv=C8C98D5A5CE23AF5607A352AECACB0DC
+pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667
+priv=
+ctype=12
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003007300000000
+self_type=LV1
+erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE
+riv=C8C98D5A5CE23AF5607A352AECACB0DC
+pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667
+priv=
+ctype=12
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0003007400000000
+self_type=LV1
+erk=41A6E0039041E9D8AAF4EF2F2A2971248EDBD96A3985611ED7B4CE73EE4804FE
+riv=C8C98D5A5CE23AF5607A352AECACB0DC
+pub=4389664390265F96C1A882374C0F856364E33DB09BE124A4666F9A12F0DD9C811EDD55BA21ED0667
+priv=
+ctype=12
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004000000000000
+self_type=LV1
+erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74
+riv=7144D7574937818517826227EF4AC0B4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=
+ctype=13
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004001000000000
+self_type=LV1
+erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74
+riv=7144D7574937818517826227EF4AC0B4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=
+ctype=13
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004001100000000
+self_type=LV1
+erk=557EDF6C063F3272B0D44EEC12F418DA774815B5415597CC5F75C21E048BAD74
+riv=7144D7574937818517826227EF4AC0B4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=
+ctype=13
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004002000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004002100000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004002500000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004003000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004003100000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004004000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004004100000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004004500000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004004600000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=0032EB213F3CAA49D5A392466EF11E727D4ADA2FCE
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004004600000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=
+ctype=30
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004005000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=1C0587163886C7071808501900200000143FCF9E3B8586084080061518078D141C05C70D3885474918068C93143FCC17
+priv=0032EB213F3CAA49D5A392466EF11E727D4ADA2FCE
+ctype=30
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0000008000000000
+self_type=LV2
+erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011
+riv=A17D6A522CB1B08F97DA8A82E97C12F7
+pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573
+priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8
+ctype=11
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003001500000000
+self_type=LV2
+erk=94303F69513572AB5AE17C8C2A1839D2C24C28F65389D3BBB11894CE23E0798F
+riv=9769BFD187B90990AE5FEA4E110B9CF5
+pub=AFAF5E96AF396CBB69071082C46A8F34A030E8EDB799E0A7BE00AA264DFF3AEBF7923920D559404D
+priv=0070ABF9361B02291829D479F56AB248203CD3EB46
+ctype=20
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003004100000000
+self_type=LV2
+erk=575B0A6C4B4F2760A03FE4189EBAF4D947279FD982B14070349098B08FF92C10
+riv=411CB18F460CE50CAF2C426D8F0D93C8
+pub=3FEE313954CB3039C321A7E33B97FFDEC8988A8B55759161B04DBF4731284E4A8191E3F17D32B0EA
+priv=0073076441A08CD179E5FACE349B86DA58B5B7BA78
+ctype=21
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003005000000000
+self_type=LV2
+erk=6DBD48D787C58803A8D724DA5ACF04FF8FCE91D7545D2322F2B7ABF57014AF68
+riv=603A36213708520ED5D745DEC1325BA5
+pub=5888CB83AC3CCA9610BC173C53141C0CA58B93719E744660CA8823D5EAEE8F9BF736997054E4B7E3
+priv=0009EBC3DE442FA5FBF6C4F3D4F9EAB07778A142BD
+ctype=22
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003005500000000
+self_type=LV2
+erk=84015E90FA23139628A3C75CC09714E6427B527A82D18ABC3E91CD8D7DDAFF17
+riv=5B240444D645F2038118F97FD5A145D5
+pub=B266318245266B2D33641CD8A864066D077FAC60B7E27399099A70A683454B70F9888E7CC0C2BF72
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=32
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003005600000000
+self_type=LV2
+erk=EAE15444048EFDE7A831BFA9F5D96F047C9FCFF50723E292CF50F5417D81E359
+riv=9CA9282DC7FA9F315EF3156D970B7CD4
+pub=0D58938CB47598A6A672874F1768068F8B80D8D17014D2ABEBAC85E5B0993D9FB6F307DDC3DDA699
+priv=
+ctype=33
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003006000000000
+self_type=LV2
+erk=88AD367EDEC2FEED3E2F99B1C685075C41BDEC90C84F526CAF588F89BBD1CBCC
+riv=8D18E8E525230E63DE10291C9DD615BF
+pub=86EED1D65E58890ABDA9ACA486A2BDDB9C0A529C2053FAE301F0F698EAF443DA0F60595A597A7027
+priv=
+ctype=32
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003006100000000
+self_type=LV2
+erk=88AD367EDEC2FEED3E2F99B1C685075C41BDEC90C84F526CAF588F89BBD1CBCC
+riv=8D18E8E525230E63DE10291C9DD615BF
+pub=86EED1D65E58890ABDA9ACA486A2BDDB9C0A529C2053FAE301F0F698EAF443DA0F60595A597A7027
+priv=
+ctype=32
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003006500000000
+self_type=LV2
+erk=688D5FCAC6F4EA35AC6AC79B10506007286131EE038116DB8AA2C0B0340D9FB0
+riv=75E0239D18B0B669EAE650972F99726B
+pub=008E1C820AC567D1BFB8FE3CC6AD2E1845A1D1B19ED2E18B18CA34A8D28A83EC60C63859CDB3DACA
+priv=
+ctype=33
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003006600000000
+self_type=LV2
+erk=688D5FCAC6F4EA35AC6AC79B10506007286131EE038116DB8AA2C0B0340D9FB0
+riv=75E0239D18B0B669EAE650972F99726B
+pub=008E1C820AC567D1BFB8FE3CC6AD2E1845A1D1B19ED2E18B18CA34A8D28A83EC60C63859CDB3DACA
+priv=
+ctype=33
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003007000000000
+self_type=LV2
+erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254
+riv=15058FA7F2CAD7C528B5F605F6444EB0
+pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED
+priv=
+ctype=11
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003007200000000
+self_type=LV2
+erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254
+riv=15058FA7F2CAD7C528B5F605F6444EB0
+pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED
+priv=
+ctype=11
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003007300000000
+self_type=LV2
+erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254
+riv=15058FA7F2CAD7C528B5F605F6444EB0
+pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED
+priv=
+ctype=11
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0003007400000000
+self_type=LV2
+erk=E81C5B04C29FB079A4A2687A39D4EA97BFB49D80EF546CEB292979A5F77A6254
+riv=15058FA7F2CAD7C528B5F605F6444EB0
+pub=438D0E5C1E7AFB18234DB6867472FF5F52B750F30C379C7DD1EE0FD23E417B3EA819CC01BAC480ED
+priv=
+ctype=11
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004000000000000
+self_type=LV2
+erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97
+riv=BBE7799B9A37CB272E386618FDFD4AEC
+pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8
+priv=
+ctype=07
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004001000000000
+self_type=LV2
+erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97
+riv=BBE7799B9A37CB272E386618FDFD4AEC
+pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8
+priv=
+ctype=07
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004001100000000
+self_type=LV2
+erk=A1E4B86ED02BF7F1372A2C73FE02BC738907EB37CE3BA605FE783C999FAFDB97
+riv=BBE7799B9A37CB272E386618FDFD4AEC
+pub=5B31A8E2A663EBD673196E2E1022E0D64988C4E1BBFE5E474415883A3BA0D9C562A2BE9C30E9B4A8
+priv=
+ctype=07
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004002000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004002100000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004002500000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004003000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004003100000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004004000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004004100000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004004500000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004004600000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=
+ctype=14
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004004600000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+priv=002EA7A1605F07D9FC76B12C7091CA5D65B1031ABC
+ctype=30
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004005000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+priv=002EA7A1605F07D9FC76B12C7091CA5D65B1031ABC
+ctype=30
+
+[appldr]
+type=SELF
+revision=0000
+version=0000008000000000
+self_type=APP
+erk=014485445EC9926C50F613AE77D9C37AA99838CCEB6F75FA78E29A8C622E8011
+riv=A17D6A522CB1B08F97DA8A82E97C12F7
+pub=72C1034FC8E4C1707B7147B9E930FA3F28EBFE070B5EBFBAE4A666B498050929815CF727C6264573
+priv=008732ACD0889FF7480C5C7D9A5D3BF43C46F220F8
+ctype=11
+
+[appldr]
+type=SELF
+revision=0000
+version=0000008000000000
+self_type=APP
+erk=95F50019E7A68E341FA72EFDF4D60ED376E25CF46BB48DFDD1F080259DC93F04
+riv=4A0955D946DB70D691A640BB7FAECC4C
+pub=6F8DF8EBD0A1D1DB08B30DD3A951E3F1F27E34030B42C729C55555232D61B834B8BDFFB07E54B343
+priv=006C3E4CCB2C69A5AD7C6F60448E50C7F9184EEAF4
+ctype=21
+
+[appldr]
+type=SELF
+revision=0001
+version=0003001500000000
+self_type=APP
+erk=79481839C406A632BDB4AC093D73D99AE1587F24CE7E69192C1CD0010274A8AB
+riv=6F0F25E1C8C4B7AE70DF968B04521DDA
+pub=94D1B7378BAFF5DFED269240A7A364ED68446741622E50BC6079B6E606A2F8E0A4C56E5CFF836526
+priv=003DE80167D2F0E9D30F2145144A558D1174F5410C
+ctype=11
+
+[appldr]
+type=SELF
+revision=0002
+version=0003001500000000
+self_type=APP
+erk=4F89BE98DDD43CAD343F5BA6B1A133B0A971566F770484AAC20B5DD1DC9FA06A
+riv=90C127A9B43BA9D8E89FE6529E25206F
+pub=8CA6905F46148D7D8D84D2AFCEAE61B41E6750FC22EA435DFA61FCE6F4F860EE4F54D9196CA5290E
+priv=
+ctype=13
+
+[appldr]
+type=SELF
+revision=0003
+version=0003001500000000
+self_type=APP
+erk=C1E6A351FCED6A0636BFCB6801A0942DB7C28BDFC5E0A053A3F52F52FCE9754E
+riv=E0908163F457576440466ACAA443AE7C
+pub=50022D5D37C97905F898E78E7AA14A0B5CAAD5CE8190AE5629A10D6F0CF4173597B37A95A7545C92
+priv=
+ctype=0B
+
+[appldr]
+type=SELF
+revision=0004
+version=0003004100000000
+self_type=APP
+erk=838F5860CF97CDAD75B399CA44F4C214CDF951AC795298D71DF3C3B7E93AAEDA
+riv=7FDBB2E924D182BB0D69844ADC4ECA5B
+pub=1F140E8EF887DAB52F079A06E6915A6460B75CD256834A43FA7AF90C23067AF412EDAFE2C1778D69
+priv=0074E922FDEE5DC4CDF22FC8D7986477F813400860
+ctype=14
+
+[appldr]
+type=SELF
+revision=0005
+version=0003004100000000
+self_type=APP
+erk=C109AB56593DE5BE8BA190578E7D8109346E86A11088B42C727E2B793FD64BDC
+riv=15D3F191295C94B09B71EBDE088A187A
+pub=B6BB0A84C649A90D97EBA55B555366F52381BB38A84C8BB71DA5A5A0949043C6DB249029A43156F7
+priv=
+ctype=15
+
+[appldr]
+type=SELF
+revision=0006
+version=0003004100000000
+self_type=APP
+erk=6DFD7AFB470D2B2C955AB22264B1FF3C67F180983B26C01615DE9F2ECCBE7F41
+riv=24BD1C19D2A8286B8ACE39E4A37801C2
+pub=71F46AC33FF89DF589A100A7FB64CEAC244C9A0CBBC1FDCE80FB4BF8A0D2E66293309CB8EE8CFA95
+priv=
+ctype=2C
+
+[appldr]
+type=SELF
+revision=0007
+version=0003005000000000
+self_type=APP
+erk=945B99C0E69CAF0558C588B95FF41B232660ECB017741F3218C12F9DFDEEDE55
+riv=1D5EFBE7C5D34AD60F9FBC46A5977FCE
+pub=AB284CA549B2DE9AA5C903B75652F78D192F8F4A8F3CD99209415C0A84C5C9FD6BF3095C1C18FFCD
+priv=002CF896D35DB871D0E6A252E799876A70D043C23E
+ctype=15
+
+[appldr]
+type=SELF
+revision=0008
+version=0003005000000000
+self_type=APP
+erk=2C9E8969EC44DFB6A8771DC7F7FDFBCCAF329EC3EC070900CABB23742A9A6E13
+riv=5A4CEFD5A9C3C093D0B9352376D19405
+pub=6E82F6B54A0E9DEBE4A8B3043EE3B24CD9BBB62B4416B0482582E419A2552E29AB4BEA0A4D7FA2D5
+priv=
+ctype=16
+
+[appldr]
+type=SELF
+revision=0009
+version=0003005000000000
+self_type=APP
+erk=F69E4A2934F114D89F386CE766388366CDD210F1D8913E3B973257F1201D632B
+riv=F4D535069301EE888CC2A852DB654461
+pub=1D7B974D10E61C2ED087A0981535904677EC07E96260F89565FF7EBDA4EE035C2AA9BCBDD5893F99
+priv=
+ctype=2D
+
+[appldr]
+type=SELF
+revision=000A
+version=0003005500000000
+self_type=APP
+erk=29805302E7C92F204009161CA93F776A072141A8C46A108E571C46D473A176A3
+riv=5D1FAB844107676ABCDFC25EAEBCB633
+pub=09301B6436C85B53CB1585300A3F1AF9FB14DB7C30088C4642AD66D5C148B8995BB1A698A8C71827
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=25
+
+[appldr]
+type=SELF
+revision=000B
+version=0003005500000000
+self_type=APP
+erk=A4C97402CC8A71BC7748661FE9CE7DF44DCE95D0D58938A59F47B9E9DBA7BFC3
+riv=E4792F2B9DB30CB8D1596077A13FB3B5
+pub=2733C889D289550FE00EAA5A47A34CEF0C1AF187610EB07BA35D2C09BB73C80B244EB4147700D1BF
+priv=
+ctype=26
+
+[appldr]
+type=SELF
+revision=000C
+version=0003005500000000
+self_type=APP
+erk=9814EFFF67B7074D1B263BF85BDC8576CE9DEC914123971B169472A1BC2387FA
+riv=D43B1FA8BE15714B3078C23908BB2BCA
+pub=7D1986C6BEE6CE1E0C5893BD2DF203881F40D5056761CC3F1F2E9D9A378617A2DE40BA5F09844CEB
+priv=
+ctype=3D
+
+[appldr]
+type=SELF
+revision=000D
+version=0003005600000000
+self_type=APP
+erk=03B4C421E0C0DE708C0F0B71C24E3EE04306AE7383D8C5621394CCB99FF7A194
+riv=5ADB9EAFE897B54CB1060D6885BE22CF
+pub=71502ADB5783583AB88B2D5F23F419AF01C8B1E72FCA1E694AD49FE3266F1F9C61EFC6F29B351142
+priv=
+ctype=12
+
+[appldr]
+type=SELF
+revision=000D
+version=0003005600000000
+self_type=APP
+erk=6DEC0F32E7403B6302122678A8DB1B41EEAB9A8449CFBD241C7FEAFEFD609094
+riv=20CF5F16EC9ABBD5ECEE9A957B4CD543
+pub=71F46AC33FF89DF589A100A7FB64CEAC244C9A0CBBC1FDCE80FB4BF8A0D2E66293309CB8EE8CFA95
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC000000
+ctype=12
+
+[appldr]
+type=SELF
+revision=000E
+version=0003005600000000
+self_type=APP
+erk=39A870173C226EB8A3EEE9CA6FB675E82039B2D0CCB22653BFCE4DB013BAEA03
+riv=90266C98CBAA06C1BF145FF760EA1B45
+pub=84DE5692809848E5ACBE25BE548F6981E3DB14735A5DDE1A0FD1F475866532B862B1AB6A004B7255
+priv=
+ctype=27
+
+[appldr]
+type=SELF
+revision=000F
+version=0003005600000000
+self_type=APP
+erk=FD52DFA7C6EEF5679628D12E267AA863B9365E6DB95470949CFD235B3FCA0F3B
+riv=64F50296CF8CF49CD7C643572887DA0B
+pub=0696D6CCBD7CF585EF5E00D547503C185D7421581BAD196E081723CD0A97FA40B2C0CD2492B0B5A1
+priv=
+ctype=3A
+
+[appldr]
+type=SELF
+revision=0010
+version=0003006000000000
+self_type=APP
+erk=A5E51AD8F32FFBDE808972ACEE46397F2D3FE6BC823C8218EF875EE3A9B0584F
+riv=7A203D5112F799979DF0E1B8B5B52AA4
+pub=50597B7F680DD89F6594D9BDC0CBEE03666AB53647D0487F7F452FE2DD02694631EA755548C9E934
+priv=
+ctype=25
+
+[appldr]
+type=SELF
+revision=0010
+version=0003006100000000
+self_type=APP
+erk=A5E51AD8F32FFBDE808972ACEE46397F2D3FE6BC823C8218EF875EE3A9B0584F
+riv=7A203D5112F799979DF0E1B8B5B52AA4
+pub=50597B7F680DD89F6594D9BDC0CBEE03666AB53647D0487F7F452FE2DD02694631EA755548C9E934
+priv=
+ctype=25
+
+[appldr]
+type=SELF
+revision=0011
+version=0003006000000000
+self_type=APP
+erk=0F8EAB8884A51D092D7250597388E3B8B75444AC138B9D36E5C7C5B8C3DF18FD
+riv=97AF39C383E7EF1C98FA447C597EA8FE
+pub=2FDA7A56AAEA65921C0284FF1942C6DE137370093D106034B59191951A5201B422D462F8726F852D
+priv=
+ctype=26
+
+[appldr]
+type=SELF
+revision=0013
+version=0003006500000000
+self_type=APP
+erk=DBF62D76FC81C8AC92372A9D631DDC9219F152C59C4B20BFF8F96B64AB065E94
+riv=CB5DD4BE8CF115FFB25801BC6086E729
+pub=B26FE6D3E3A1E766FAE79A8E6A7F48998E7FC1E4B0AD8745FF54C018C2A6CC7A0DD7525FAFEA4917
+priv=
+ctype=12
+
+[appldr]
+type=SELF
+revision=0014
+version=0003006500000000
+self_type=APP
+erk=491B0D72BB21ED115950379F4564CE784A4BFAABB00E8CB71294B192B7B9F88E
+riv=F98843588FED8B0E62D7DDCB6F0CECF4
+pub=04275E8838EF95BD013B223C3DF674540932F21B534C7ED2944B9104D938FEB03B824DDB866AB26E
+priv=
+ctype=27
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007000000000
+self_type=APP
+erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C
+riv=62773C70BD749269C0AFD1F12E73909E
+pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007200000000
+self_type=APP
+erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C
+riv=62773C70BD749269C0AFD1F12E73909E
+pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007300000000
+self_type=APP
+erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C
+riv=62773C70BD749269C0AFD1F12E73909E
+pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007400000000
+self_type=APP
+erk=A106692224F1E91E1C4EBAD4A25FBFF66B4B13E88D878E8CD072F23CD1C5BF7C
+riv=62773C70BD749269C0AFD1F12E73909E
+pub=566635D3E1DCEC47243AAD1628AE6B2CEB33463FC155E4635846CE33899C5E353DDFA47FEF5694AF
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=0017
+version=0003007000000000
+self_type=APP
+erk=4E104DCE09BA878C75DA98D0B1636F0E5F058328D81419E2A3D22AB0256FDF46
+riv=954A86C4629E116532304A740862EF85
+pub=3B7B04C71CAE2B1199D57453C038BB1B541A05AD1B94167B0AB47A9B24CAECB9000CB21407009666
+priv=
+ctype=08
+
+[appldr]
+type=SELF
+revision=0019
+version=0004000000000000
+self_type=APP
+erk=3236B9937174DF1DC12EC2DD8A318A0EA4D3ECDEA5DFB4AC1B8278447000C297
+riv=6153DEE781B8ADDC6A439498B816DC46
+pub=148DCA961E2738BAF84B2D1B6E2DA2ABD6A95F2C9571E54C6922F9ED9674F062B7F1BE5BD6FA5268
+priv=
+ctype=31
+
+[appldr]
+type=SELF
+revision=001A
+version=0004000000000000
+self_type=APP
+erk=5EFD1E9961462794E3B9EF2A4D0C1F46F642AAE053B5025504130590E66F19C9
+riv=1AC8FA3B3C90F8FDE639515F91B58327
+pub=BE4B1B513536960618BFEF12A713F6673881B02F9DC616191E823FC8337CCF99ADAA6172019C0C23
+priv=
+ctype=17
+
+[appldr]
+type=SELF
+revision=001C
+version=0004002000000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=
+ctype=09
+
+[appldr]
+type=SELF
+revision=001C
+version=0004002100000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+ctype=09
+
+[appldr]
+type=SELF
+revision=001C
+version=0004002500000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=
+ctype=09
+
+[appldr]
+type=SELF
+revision=001D
+version=0004002000000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=
+ctype=1A
+
+[appldr]
+type=SELF
+revision=001F
+version=0004003000000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=001F
+version=0004003100000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=001F
+version=0004004000000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=001F
+version=0004004100000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=001F
+version=0004004500000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=001C
+version=0004004600000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=002A9064DD179A34C4FA12A969E278005600E9AFE4
+ctype=09
+
+[appldr]
+type=SELF
+revision=001F
+version=0004004600000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=001D
+version=0004004600000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=00745179EACF255033E3F2D5D860F401C4650C7FCB
+ctype=1A
+
+[appldr]
+type=SELF
+revision=001F
+version=0004005000000000
+self_type=APP
+erk=46BD0891224E0CE13E2162921D4BB76193AEEE4416A729FCDD111C5536BF87C9
+riv=BF036387CDB613C0AC88A6D9D2CC5316
+pub=A14F6D5F9AD7EBB3B7A39A7C32F13E5DC3B0BA16BDC33D39FDDF88F4AEEA6CFEEB0C0796C917A952
+priv=
+ctype=0F
+
+[appldr]
+type=SELF
+revision=0000
+version=0000009200000000
+self_type=NPDRM
+erk=D91166973979EA8694476B011AC62C7E9F37DA26DE1E5C2EE3D66E42B8517085
+riv=DC01280A6E46BC674B81A7E8801EBE6E
+pub=A0FC44108236141BF3517A662B027AFC1AC513A05690496C754DEB7D43BDC41B80FD75C212624EE4
+priv=
+ctype=11
+
+[appldr]
+type=SELF
+revision=0001
+version=0001000000000000
+self_type=NPDRM
+erk=F9EDD0301F770FABBA8863D9897F0FEA6551B09431F61312654E28F43533EA6B
+riv=A551CCB4A42C37A734A2B4F9657D5540
+pub=B05F9DA5F9121EE4031467E74C505C29A8E29D1022379EDFF0500B9AE480B5DAB4578A4C61C5D6BF
+priv=00040AB47509BED04BD96521AD1B365B86BF620A98
+ctype=11
+
+[appldr]
+type=SELF
+revision=0002
+version=0001000000000000
+self_type=NPDRM
+erk=8E737230C80E66AD0162EDDD32F1F774EE5E4E187449F19079437A508FCF9C86
+riv=7AAECC60AD12AED90C348D8C11D2BED5
+pub=05BF09CB6FD78050C78DE69CC316FF27C9F1ED66A45BFCE0A1E5A6749B19BD546BBB4602CF373440
+priv=
+ctype=0A
+
+[appldr]
+type=SELF
+revision=0003
+version=0003001500000000
+self_type=NPDRM
+erk=1B715B0C3E8DC4C1A5772EBA9C5D34F7CCFE5B82025D453F3167566497239664
+riv=E31E206FBB8AEA27FAB0D9A2FFB6B62F
+pub=3F51E59FC74D6618D34431FA67987FA11ABBFACC7111811473CD9988FE91C43FC74605E7B8CB732D
+priv=
+ctype=08
+
+[appldr]
+type=SELF
+revision=0004
+version=0003004000000000
+self_type=NPDRM
+erk=BB4DBF66B744A33934172D9F8379A7A5EA74CB0F559BB95D0E7AECE91702B706
+riv=ADF7B207A15AC601110E61DDFC210AF6
+pub=9C327471BAFF1F877AE4FE29F4501AF5AD6A2C459F8622697F583EFCA2CA30ABB5CD45D1131CAB30
+priv=00B61A91DF4AB6A9F142C326BA9592B5265DA88856
+ctype=16
+
+[appldr]
+type=SELF
+revision=0005
+version=0003004000000000
+self_type=NPDRM
+erk=B73111B0B00117E48DE5E2EE5E534C0F0EFFA4890BBB8CAD01EE0F848F91583E
+riv=86F56F9E5DE513894874B8BA253334B1
+pub=B0BA1A1AB9723BB4E87CED9637BE056066BC56E16572D43D0210A06411DBF8FEB8885CD912384AE5
+priv=
+ctype=12
+
+[appldr]
+type=SELF
+revision=0006
+version=0003004000000000
+self_type=NPDRM
+erk=8B4C52849765D2B5FA3D5628AFB17644D52B9FFEE235B4C0DB72A62867EAA020
+riv=05719DF1B1D0306C03910ADDCE4AF887
+pub=2A5D6C6908CA98FC4740D834C6400E6D6AD74CF0A712CF1E7DAE806E98605CC308F6A03658F2970E
+priv=
+ctype=29
+
+[appldr]
+type=SELF
+revision=0007
+version=0003005000000000
+self_type=NPDRM
+erk=3946DFAA141718C7BE339A0D6C26301C76B568AEBC5CD52652F2E2E0297437C3
+riv=E4897BE553AE025CDCBF2B15D1C9234E
+pub=A13AFE8B63F897DA2D3DC3987B39389DC10BAD99DFB703838C4A0BC4E8BB44659C726CFD0CE60D0E
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=17
+
+[appldr]
+type=SELF
+revision=0008
+version=0003005000000000
+self_type=NPDRM
+erk=8E944267C02E69A4FE474B7F5FCD7974A4F936FF4355AEC4F80EFA123858D8F6
+riv=908A75754E521EAC2F5A4889C6D7B72D
+pub=91201DA7D79E8EE2563142ECBD646DA026C963AC09E760E5390FFE24DAE6864310ABE147F8204D0B
+priv=
+ctype=13
+
+[appldr]
+type=SELF
+revision=0009
+version=0003005000000000
+self_type=NPDRM
+erk=0786F4B0CA5937F515BDCE188F569B2EF3109A4DA0780A7AA07BD89C3350810A
+riv=04AD3C2F122A3B35E804850CAD142C6D
+pub=A1FE61035DBBEA5A94D120D03C000D3B2F084B9F4AFA99A2D4A588DF92B8F36327CE9E47889A45D0
+priv=
+ctype=2A
+
+[appldr]
+type=SELF
+revision=000A
+version=0003005500000000
+self_type=NPDRM
+erk=03C21AD78FBB6A3D425E9AAB1298F9FD70E29FD4E6E3A3C151205DA50C413DE4
+riv=0A99D4D4F8301A88052D714AD2FB565E
+pub=3995C390C9F7FBBAB124A1C14E70F9741A5E6BDF17A605D88239652C8EA7D5FC9F24B30546C1E44B
+priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F
+ctype=27
+
+[appldr]
+type=SELF
+revision=000B
+version=0003005500000000
+self_type=NPDRM
+erk=BB31DF9A6F62C0DF853075FAA65134D9CE2240306C1731D1F7DA9B5329BD699F
+riv=263057225873F83940A65C8C926AC3E4
+pub=BC3A82A4F44C43A197070CD236FDC94FCC542D69A3E803E0AFF78D1F3DA19A79D2F61FAB5B94B437
+priv=
+ctype=23
+
+[appldr]
+type=SELF
+revision=000C
+version=0003005500000000
+self_type=NPDRM
+erk=337A51416105B56E40D7CAF1B954CDAF4E7645F28379904F35F27E81CA7B6957
+riv=8405C88E042280DBD794EC7E22B74002
+pub=9BFF1CC7118D2393DE50D5CF44909860683411A532767BFDAC78622DB9E5456753FE422CBAFA1DA1
+priv=
+ctype=18
+
+[appldr]
+type=SELF
+revision=000D
+version=0003005600000000
+self_type=NPDRM
+erk=357EBBEA265FAEC271182D571C6CD2F62CFA04D325588F213DB6B2E0ED166D92
+riv=D26E6DD2B74CD78E866E742E5571B84F
+pub=00DCF5391618604AB42C8CFF3DC304DF45341EBA4551293E9E2B68FFE2DF527FFA3BE8329E015E57
+priv=
+ctype=3A
+
+[appldr]
+type=SELF
+revision=000E
+version=0003005600000000
+self_type=NPDRM
+erk=71AA75C70A255580E4AE9BDAA0B08828C53EAA713CD0713797F143B284C1589B
+riv=9DED878CB6BA07121C0F50E7B172A8BF
+pub=387FCDAEAFF1B59CFAF79CE6215A065ACEAFFAF4048A4F217E1FF5CE67C66EC3F089DB235E52F9D3
+priv=
+ctype=29
+
+[appldr]
+type=SELF
+revision=000F
+version=0003005600000000
+self_type=NPDRM
+erk=135C098CBE6A3E037EBE9F2BB9B30218DDE8D68217346F9AD33203352FBB3291
+riv=4070C898C2EAAD1634A288AA547A35A8
+pub=BBD7CCCB556C2EF0F908DC7810FAFC37F2E56B3DAA5F7FAF53A4944AA9B841F76AB091E16B231433
+priv=
+ctype=3B
+
+[appldr]
+type=SELF
+revision=0010
+version=0003006000000000
+self_type=NPDRM
+erk=4B3CD10F6A6AA7D99F9B3A660C35ADE08EF01C2C336B9E46D1BB5678B4261A61
+riv=C0F2AB86E6E0457552DB50D7219371C5
+pub=64A5C60BC2AD18B8A237E4AA690647E12BF7A081523FAD4F29BE89ACAC72F7AB43C74EC9AFFDA213
+ctype=27
+
+[appldr]
+type=SELF
+revision=0010
+version=0003006100000000
+self_type=NPDRM
+erk=4B3CD10F6A6AA7D99F9B3A660C35ADE08EF01C2C336B9E46D1BB5678B4261A61
+riv=C0F2AB86E6E0457552DB50D7219371C5
+pub=64A5C60BC2AD18B8A237E4AA690647E12BF7A081523FAD4F29BE89ACAC72F7AB43C74EC9AFFDA213
+priv=
+ctype=27
+
+[appldr]
+type=SELF
+revision=0013
+version=0003006500000000
+self_type=NPDRM
+erk=265C93CF48562EC5D18773BEB7689B8AD10C5EB6D21421455DEBC4FB128CBF46
+riv=8DEA5FF959682A9B98B688CEA1EF4A1D
+pub=9D8DB5A880608DC69717991AFC3AD5C0215A5EE413328C2ABC8F35589E04432373DB2E2339EEF7C8
+priv=
+ctype=18
+
+[appldr]
+type=SELF
+revision=0013
+version=0003006600000000
+self_type=NPDRM
+erk=265C93CF48562EC5D18773BEB7689B8AD10C5EB6D21421455DEBC4FB128CBF46
+riv=8DEA5FF959682A9B98B688CEA1EF4A1D
+pub=9D8DB5A880608DC69717991AFC3AD5C0215A5EE413328C2ABC8F35589E04432373DB2E2339EEF7C8
+priv=
+ctype=18
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007000000000
+self_type=NPDRM
+erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B
+riv=4AD981431B98DFD39B6388EDAD742A8E
+pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1
+priv=
+ctype=25
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007200000000
+self_type=NPDRM
+erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B
+riv=4AD981431B98DFD39B6388EDAD742A8E
+pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1
+priv=
+ctype=25
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007300000000
+self_type=NPDRM
+erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B
+riv=4AD981431B98DFD39B6388EDAD742A8E
+pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1
+priv=
+ctype=25
+
+[appldr]
+type=SELF
+revision=0016
+version=0003007400000000
+self_type=NPDRM
+erk=7910340483E419E55F0D33E4EA5410EEEC3AF47814667ECA2AA9D75602B14D4B
+riv=4AD981431B98DFD39B6388EDAD742A8E
+pub=62DFE488E410B1B6B2F559E4CB932BCB78845AB623CC59FDF65168400FD76FA82ED1DC60E091D1D1
+priv=
+ctype=25
+
+[appldr]
+type=SELF
+revision=0019
+version=0004000000000000
+self_type=NPDRM
+erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3
+riv=F72C1D80FFDA2E3BF085F4133E6D2805
+pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42
+priv=
+ctype=24
+
+[appldr]
+type=SELF
+revision=0019
+version=0004000100000000
+self_type=NPDRM
+erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3
+riv=F72C1D80FFDA2E3BF085F4133E6D2805
+pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42
+priv=
+ctype=24
+
+[appldr]
+type=SELF
+revision=0019
+version=0004001000000000
+self_type=NPDRM
+erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3
+riv=F72C1D80FFDA2E3BF085F4133E6D2805
+pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42
+priv=
+ctype=24
+
+[appldr]
+type=SELF
+revision=0019
+version=0004001100000000
+self_type=NPDRM
+erk=FBDA75963FE690CFF35B7AA7B408CF631744EDEF5F7931A04D58FD6A921FFDB3
+riv=F72C1D80FFDA2E3BF085F4133E6D2805
+pub=637EAD34E7B85C723C627E68ABDD0419914EBED4008311731DD87FDDA2DAF71F856A70E14DA17B42
+priv=
+ctype=24
+
+[appldr]
+type=SELF
+revision=001C
+version=0004002000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004002100000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004002500000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004003000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004003100000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004004000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004004100000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004004500000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004004600000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004004600000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=
+ctype=30
+
+[appldr]
+type=SELF
+revision=001C
+version=0004005000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009AC6B22A056BA9E0B6D1520F28A57A3135483F9F
+ctype=30
+
+[NP_edat_key]
+type=OTHER
+revision=00
+key=84E9FC3574EAA11A9462FFA53D5EA46B4D0003BF
+
+[NP_edat_key]
+type=OTHER
+revision=01
+key=6ECDFEC0A11890C1F2A689062D3EFE562317B2FB
+
+[NP_edat_hash]
+type=OTHER
+revision=00
+key=8A721A06ABC7BB9BF398C5EF5D6F1FD997BC0A56
+
+[NP_idps_const]
+type=OTHER
+key=5E06E04FD94A71BF0000000000000001
+
+[NP_rif_key]
+type=OTHER
+key=DA7D4B5E499A4F53B1C1A14A7484443B
+
+[NP_riv_key]
+type=OTHER
+key=E129F27C5103BC5CC44BCDF0A15E160D445066FF
+
+[NP_rap_initial]
+type=OTHER
+key=869F7745C13FD890CCF29188E3CC3EDF
+
+[NP_rap_pbox]
+type=OTHER
+key=0C030604010B0F08020700050A0E0D09
+
+[NP_rap_e1]
+type=OTHER
+key=A93E1FD67C55A329B75FDDA62A95C7A5
+
+[NP_rap_e2]
+type=OTHER
+key=67D45DA3296D006A4E7C537BF5538C74
+
+[NP_edat_key]
+type=OTHER
+revision=00
+key=BE959CA8308DEFA2E5E180C63712A9AE
+
+[NP_edat_default_hash_key]
+type=OTHER
+revision=00
+key=EFFE5BD1652EEBC11918CF7C04D4F011
+
+[NP_edat_key]
+type=OTHER
+revision=01
+key=4CA9C14B01C95309969BEC68AA0BC081
+
+[NP_edat_default_hash_key]
+type=OTHER
+revision=01
+key=3D92699B705B073854D8FCC6C7672747
+
+[NP_riv_key]
+type=OTHER
+key=00000000000000000000000000000000
+
+[NP_sdat_key]
+type=OTHER
+key=0D655EF8E674A98AB8505CFA7D012933
+
+[NP_sdat_sha1]
+type=OTHER
+key=F7B2917B1FA260FD51D37716A91036651F6F42F2
+
+[NP_vsh_pub]
+type=OTHER
+pub=6227B00A02856FB04108876719E0A0183291EEB96E736ABF81F70EE9161B0DDEB026761AFF7BC85B
+
+[NP_PSISOIMG0000]
+type=OTHER
+pub=948DA13E8CAFD5BA0E90CE434461BB327FE7E080475EAA0AD3AD4F5B6247A7FDA86DF69790196773
+priv=00bf21224b041f29549db25e9aade19e720a1fe0f1
+ctype=02
+
+[spp]
+type=SPP
+revision=00
+version=0004005300000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004002100000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004005300000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+[rvk]
+type=RVK
+revision=02
+version=0004005300000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004005300000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004005300000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004005300000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004005300000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004005300000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004005300000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004005300000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004005300000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004005300000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004005300000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+[spp]
+type=SPP
+revision=00
+version=0004005300000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004005300000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004005300000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004005300000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004005300000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004005300000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004005300000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004005300000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004005300000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004005300000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004005300000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004005300000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004005300000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+
+[spp]
+type=SPP
+revision=00
+version=0004005500000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004005500000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004005500000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004005500000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004005500000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004005500000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004005500000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004005500000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004005500000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004005500000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004005500000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004005500000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004005500000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+
+[spp]
+type=SPP
+revision=00
+version=0004006000000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004006000000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004006000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004006000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004006000000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004006000000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004006000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004006000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004006000000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004006000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004006000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004006000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004006000000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+
+[spp]
+type=SPP
+revision=00
+version=0004006500000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004006500000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004006500000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004006500000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004006500000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004006500000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004006500000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004006500000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004006500000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004006500000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004006500000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004006500000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004006500000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+
+
+[spp]
+type=SPP
+revision=00
+version=0004006600000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004006600000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004006600000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004006600000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004006600000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004006600000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004006600000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004006600000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004006600000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004006600000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004006600000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004006600000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004006600000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+
+[spp]
+type=SPP
+revision=00
+version=0004007000000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004007000000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004007000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004007000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004007000000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004007000000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004007000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004007000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004007000000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004007000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004007000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004007000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004007000000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+[spp]
+type=SPP
+revision=00
+version=0004007500000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004007500000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004007500000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004007500000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004007500000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004007500000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004007500000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004007500000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004007500000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004007500000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004007500000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004007500000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004007500000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+[spp]
+type=SPP
+revision=00
+version=0004007600000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004007600000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004007600000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004007600000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004007600000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004007600000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004007600000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004007600000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004007600000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004007600000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004007600000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004007600000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004007600000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+[spp]
+type=SPP
+revision=00
+version=0004007800000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004007800000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004007800000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004007800000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004007800000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004007800000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004007800000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004007800000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004007800000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004007800000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004007800000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004007800000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004007800000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+[spp]
+type=SPP
+revision=00
+version=0004008000000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004008000000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004008000000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004008000000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004008000000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004008000000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004008000000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004008000000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004008000000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004008000000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004008000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004008000000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004008000000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+[spp]
+type=SPP
+revision=00
+version=0004008100000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004008100000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004008100000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004008100000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004008100000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004008100000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004008100000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=085D38DBF9B757329EB862107929909D32FA1DAE60641BF4AC25319D7650597EE977F8E810FEEA96
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004008100000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004008100000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004008100000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004008100000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004008100000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004008100000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
+
+[spp]
+type=SPP
+revision=00
+version=0004008200000000
+erk=D2961BBFFEDAEE269B061454D6ACF262CD71BC6F5320180F0A04A07583CCF7C5
+riv=6D308B59BC9054B12C833359D31BAE77
+pub=0CDD0D1541A6B0DFD12E951578536CA60C93853B88FCE17592DC8D134B08A94AF8BB08667E2D70A5
+priv=0001608EF3BACAFFB8C3A5958A24F758325B62B08C
+ctype=07
+
+
+[metldr]
+type=SELF
+revision=00
+self_type=LDR
+version=0004008200000000
+erk=C0CEFE84C227F75BD07A7EB846509F93B238E770DACB9FF4A388F812482BE21B
+riv=47EE7454E4774CC9B8960C7B59F4C14D
+pub=C2D4AAF319355019AF99D44E2B58CA29252C89123D11D6218F40B138CAB29B7101F3AEB72A975019
+priv=00C5B2BFA1A413DD16F26D31C0F2ED4720DCFB0670
+ctype=20
+
+
+[rvk]
+type=RVK
+revision=02
+version=0004008200000000
+erk=695984B7EE2EC2F77FCC3120150DCE7E4480D84480DDD8C5940AEB6F79E63D17
+riv=A8BA3E4E63B2BB06FC0CE57E3BB8FC46
+pub=7F1950C6E497E922400586EE338B41E01C906C5A6DFD75FEB5249CFA4BEC534F5CA679670A452B2A
+priv=00245E673B039D656DA206BDAE4EAEFCBF2A8D5EAF
+ctype=12
+
+
+[isoldr]
+type=SELF
+revision=01
+version=0004008200000000
+self_type=ISO
+erk=63565DBE98C3B1A52AADC907C47130FE57A10734E84F22592670F86ED2B0A086
+riv=953F6A99891B4739358F5363A00C08B9
+pub=26BE7B02E7D65C6C21BF4063CDB8C0092FE1679D62FA1A8CCC284A1D21885473A959992537A06612
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=15
+
+
+[isoldr]
+type=SELF
+revision=0100
+version=0004008200000000
+self_type=ISO
+erk=B96EA32CB96EA32DB96EA32CB96EA32CB96EA32CB96EA32DB96EA32CB96EA32C
+riv=B96EA32CB96EA32DB96EA32DB96EA32C
+pub=2D7066E68C6AC3373B1346FD76FE7D18A207C811500E65D85DB57BC4A27AD78F59FD53F38F50E151
+priv=00294411363290975BA551336D3965D88AF029A17B
+ctype=02
+
+
+[lv0ldr]
+type=SELF
+version=0004008200000000
+self_type=LV0
+erk=CA7A24EC38BDB45B98CCD7D363EA2AF0C326E65081E0630CB9AB2D215865878A
+riv=F9205F46F6021697E670F13DFA726212
+pub=A8FD6DB24532D094EFA08CB41C9A72287D905C6B27B42BE4AB925AAF4AFFF34D41EEB54DD128700D
+priv=001AD976FCDE86F5B8FF3E63EF3A7F94E861975BA3
+ctype=33
+
+
+[lv1ldr]
+type=SELF
+revision=0000
+version=0004008200000000
+self_type=LV1
+erk=10CEA04973FCCC12EC19924510822D8D4C41F657FD3D7E73F415A8D687421BCD
+riv=ED8699562C6AC65204FA166257E7FCF4
+pub=9AF86FC869C159FBB62F7D9674EE257ABF12E5A96D5875B4AA73C13C2BC13E2A4079F98B9B935EE2
+priv=004312C65347ACBE95CC306442FEFD0AF4C2935EB3
+ctype=14
+
+
+[lv2ldr]
+type=SELF
+revision=0000
+version=0004008200000000
+self_type=LV2
+erk=0CAF212B6FA53C0DA7E2C575ADF61DBE68F34A33433B1B891ABF5C4251406A03
+riv=9B79374722AD888EB6A35A2DF25A8B3E
+pub=1034A6F98AF6625CC3E3604B59B971CA617DF337538D2179EBB22F3BDC9D0C6DA56BA7DDFD205A50
+priv=009D4CBA2BFB1A8330D3E20E59D281D476D231C73A
+ctype=14
+
+
+[appldr]
+type=SELF
+revision=001D
+version=0004008200000000
+self_type=APP
+erk=D202174EB65A62048F3674B59EF6FE72E1872962F3E1CD658DE8D7AF71DA1F3E
+riv=ACB9945914EBB7B9A31ECE320AE09F2D
+pub=430322887503CF52928FAAA410FD623C7321281C8825D95F5B47EF078EFCFC44454C3AB4F00BB879
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=1A
+
+
+[appldr]
+type=SELF
+revision=001C np
+version=0004008200000000
+self_type=NPDRM
+erk=8103EA9DB790578219C4CEDF0592B43064A7D98B601B6C7BC45108C4047AA80F
+riv=246F4B8328BE6A2D394EDE20479247C5
+pub=503172C9551308A87621ECEE90362D14889BFED2CF32B0B3E32A4F9FE527A41464B735E1ADBC6762
+priv=009EF86907782A318D4CC3617EBACE2480E73A46F6
+ctype=30
+
+
+[spkg]
+type=PKG
+revision=00
+version=0004008200000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[pkg]
+type=PKG
+revision=00
+version=0004008200000000
+erk=F8F99006F1C007D5D0B1909E9566E0E70B569399FC3394A811809FDB5CAE92CD
+riv=59D28DB4ADDFB40B7D768BC9667C67B1
+pub=5432BDDD1F97418147AFF016EAA6100834F2CAA8C498B88965689EE44DF349B066CD43CBF4F2C5D0
+priv=00542D46E7B3DAAC8AEB81E533873AABD6D74BB710
+ctype=17
+
+
+[appldr]
+type=SELF
+revision=001C
+version=0004008200000000
+self_type=APP
+erk=CFF025375BA0079226BE01F4A31F346D79F62CFB643CA910E16CF60BD9092752
+riv=FD40664E2EBBA01BF359B0DCDF543DA4
+pub=36C1ACE6DD5CCC0006FDF3424750FAC515FC5CFA2C93EC53C6EC2BC421708D154E91F2E7EA54A893
+priv=0010818ED8A666051C6198662C3D6DDE2CA4901DDC
+ctype=09
+
diff --git a/UnionPatcher/data/ldr_curves b/UnionPatcher/data/ldr_curves
new file mode 100644
index 0000000..602292a
Binary files /dev/null and b/UnionPatcher/data/ldr_curves differ
diff --git a/UnionPatcher/data/vsh_curves b/UnionPatcher/data/vsh_curves
new file mode 100644
index 0000000..8eea736
Binary files /dev/null and b/UnionPatcher/data/vsh_curves differ
diff --git a/UnionPatcher/scetool/linux64/scetool b/UnionPatcher/scetool/linux64/scetool
new file mode 100755
index 0000000..27508ce
Binary files /dev/null and b/UnionPatcher/scetool/linux64/scetool differ
diff --git a/UnionPatcher/scetool/linuxarm/scetool b/UnionPatcher/scetool/linuxarm/scetool
new file mode 100755
index 0000000..d67b964
Binary files /dev/null and b/UnionPatcher/scetool/linuxarm/scetool differ
diff --git a/UnionPatcher/scetool/linuxarm64/scetool b/UnionPatcher/scetool/linuxarm64/scetool
new file mode 100644
index 0000000..8eada82
Binary files /dev/null and b/UnionPatcher/scetool/linuxarm64/scetool differ
diff --git a/UnionPatcher/scetool/mac64/scetool b/UnionPatcher/scetool/mac64/scetool
new file mode 100755
index 0000000..0b77874
Binary files /dev/null and b/UnionPatcher/scetool/mac64/scetool differ
diff --git a/UnionPatcher/scetool/macarm64/scetool b/UnionPatcher/scetool/macarm64/scetool
new file mode 100755
index 0000000..7798c2d
Binary files /dev/null and b/UnionPatcher/scetool/macarm64/scetool differ
diff --git a/UnionPatcher/scetool/win64/scetool.exe b/UnionPatcher/scetool/win64/scetool.exe
new file mode 100644
index 0000000..e97ef56
Binary files /dev/null and b/UnionPatcher/scetool/win64/scetool.exe differ
diff --git a/UnionPatcher/scetool/win64/zlib1.dll b/UnionPatcher/scetool/win64/zlib1.dll
new file mode 100644
index 0000000..ff86eb3
Binary files /dev/null and b/UnionPatcher/scetool/win64/zlib1.dll differ
diff --git a/build-all.sh b/build-all.sh
new file mode 100755
index 0000000..d9a116c
--- /dev/null
+++ b/build-all.sh
@@ -0,0 +1,31 @@
+mkdir -p builds
+#dotnet clean;
+
+dotnet publish -c Windows -r win-x64 --self-contained
+
+dotnet publish -c Linux -r linux-x64 --self-contained
+dotnet publish -c Linux -r linux-arm --self-contained
+dotnet publish -c Linux -r linux-arm64 --self-contained
+
+dotnet publish -c MacOS -r osx-x64 --self-contained
+dotnet publish -c MacOS -r osx-arm64 --self-contained
+
+# $1: Name.zip
+# $2: Path to zip
+function createBuild() {
+ currentDirectory=$(pwd)
+ cd $2 || return 1
+
+ zip -r "$1" *
+ cd $currentDirectory || return 1
+ mv "$2/$1" builds/
+}
+
+createBuild "UnionPatcher-Windows-x64.zip" "UnionPatcher.Gui.Windows/bin/Release/net8.0-windows/win-x64/publish/"
+
+createBuild "UnionPatcher-Linux-x64.zip" "UnionPatcher.Gui.Linux/bin/Release/net8.0/linux-x64/publish/"
+createBuild "UnionPatcher-Linux-arm.zip" "UnionPatcher.Gui.Linux/bin/Release/net8.0/linux-arm/publish/"
+createBuild "UnionPatcher-Linux-arm64.zip" "UnionPatcher.Gui.Linux/bin/Release/net8.0/linux-arm64/publish/"
+
+# CODESIGN_IDENTITY is the certificate that you want to use for codesigning for mac, if not present then will not be signed
+./build-mac.sh $CODESIGN_IDENTITY
diff --git a/build-mac.sh b/build-mac.sh
new file mode 100755
index 0000000..4e22f6e
--- /dev/null
+++ b/build-mac.sh
@@ -0,0 +1,21 @@
+# Script to build UnionPatcher for mac, builds a universal binary, and zips it up. also codesigns if $1 is specified
+
+dotnet clean
+dotnet publish UnionPatcher.Gui.MacOS --configuration Release /p:Platform="Any CPU" --self-contained -o macbuild
+dotnet publish UnionPatcher.Gui.MacOS --configuration Release /p:Platform="Any CPU" --arch x64 --self-contained -o macbuildx86
+
+rm -rf macbuilduniversal
+mkdir macbuilduniversal
+cp -r macbuild/UnionPatcher.Gui.MacOS.app macbuilduniversal/UnionPatcher.app
+cp UnionPatcher.Gui.MacOS/Info.plist macbuilduniversal/UnionPatcher.app/Contents/Info.plist
+rm -rf macbuilduniversal/UnionPatcher.app/Contents/MacOS/scetool/linux*
+rm -rf macbuilduniversal/UnionPatcher.app/Contents/MacOS/scetool/win*
+
+lipo -create -output macbuilduniversal/UnionPatcher.app/Contents/MacOS/LBPUnion.UnionPatcher.Gui.MacOS macbuildx86/LBPUnion.UnionPatcher.Gui.MacOS macbuild/LBPUnion.UnionPatcher.Gui.MacOS
+touch macbuilduniversal/UnionPatcher.app
+
+if [ -z ${1+x} ]; then
+ codesign -f --deep -s "$1" macbuilduniversal/UnionPatcher.app
+fi
+cd macbuilduniversal
+zip -r UnionPatcher-macOS-universal.zip UnionPatcher.app
diff --git a/global.json b/global.json
index 4db6a48..b47b061 100644
--- a/global.json
+++ b/global.json
@@ -1,7 +1,7 @@
{
"sdk": {
- "version": "5.0",
+ "version": "6.0",
"rollForward": "latestMajor",
"allowPrerelease": false
}
-}
\ No newline at end of file
+}