diff --git a/.github/workflows/dotnet-desktop.yml b/.github/workflows/dotnet-desktop.yml
new file mode 100644
index 0000000..ab72c05
--- /dev/null
+++ b/.github/workflows/dotnet-desktop.yml
@@ -0,0 +1,115 @@
+# This workflow uses actions that are not certified by GitHub.
+# They are provided by a third-party and are governed by
+# separate terms of service, privacy policy, and support
+# documentation.
+
+# This workflow will build, test, sign and package a WPF or Windows Forms desktop application
+# built on .NET Core.
+# To learn how to migrate your existing application to .NET Core,
+# refer to https://docs.microsoft.com/en-us/dotnet/desktop-wpf/migration/convert-project-from-net-framework
+#
+# To configure this workflow:
+#
+# 1. Configure environment variables
+# GitHub sets default environment variables for every workflow run.
+# Replace the variables relative to your project in the "env" section below.
+#
+# 2. Signing
+# Generate a signing certificate in the Windows Application
+# Packaging Project or add an existing signing certificate to the project.
+# Next, use PowerShell to encode the .pfx file using Base64 encoding
+# by running the following Powershell script to generate the output string:
+#
+# $pfx_cert = Get-Content '.\SigningCertificate.pfx' -Encoding Byte
+# [System.Convert]::ToBase64String($pfx_cert) | Out-File 'SigningCertificate_Encoded.txt'
+#
+# Open the output file, SigningCertificate_Encoded.txt, and copy the
+# string inside. Then, add the string to the repo as a GitHub secret
+# and name it "Base64_Encoded_Pfx."
+# For more information on how to configure your signing certificate for
+# this workflow, refer to https://github.com/microsoft/github-actions-for-desktop-apps#signing
+#
+# Finally, add the signing certificate password to the repo as a secret and name it "Pfx_Key".
+# See "Build the Windows Application Packaging project" below to see how the secret is used.
+#
+# For more information on GitHub Actions, refer to https://github.com/features/actions
+# For a complete CI/CD sample to get started with GitHub Action workflows for Desktop Applications,
+# refer to https://github.com/microsoft/github-actions-for-desktop-apps
+
+name: .NET Core Desktop
+
+on:
+ push:
+ branches: [ "master" ]
+ pull_request:
+ branches: [ "master" ]
+
+jobs:
+
+ build:
+
+ strategy:
+ matrix:
+ configuration: [Debug, Release]
+
+ runs-on: windows-latest # For a list of available runner types, refer to
+ # https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on
+
+ env:
+ Solution_Name: your-solution-name # Replace with your solution name, i.e. MyWpfApp.sln.
+ Test_Project_Path: your-test-project-path # Replace with the path to your test project, i.e. MyWpfApp.Tests\MyWpfApp.Tests.csproj.
+ Wap_Project_Directory: your-wap-project-directory-name # Replace with the Wap project directory relative to the solution, i.e. MyWpfApp.Package.
+ Wap_Project_Path: your-wap-project-path # Replace with the path to your Wap project, i.e. MyWpf.App.Package\MyWpfApp.Package.wapproj.
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ # Install the .NET Core workload
+ - name: Install .NET Core
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: 8.0.x
+
+ # Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild
+ - name: Setup MSBuild.exe
+ uses: microsoft/setup-msbuild@v2
+
+ # Execute all unit tests in the solution
+ - name: Execute unit tests
+ run: dotnet test
+
+ # Restore the application to populate the obj folder with RuntimeIdentifiers
+ - name: Restore the application
+ run: msbuild $env:Solution_Name /t:Restore /p:Configuration=$env:Configuration
+ env:
+ Configuration: ${{ matrix.configuration }}
+
+ # Decode the base 64 encoded pfx and save the Signing_Certificate
+ - name: Decode the pfx
+ run: |
+ $pfx_cert_byte = [System.Convert]::FromBase64String("${{ secrets.Base64_Encoded_Pfx }}")
+ $certificatePath = Join-Path -Path $env:Wap_Project_Directory -ChildPath GitHubActionsWorkflow.pfx
+ [IO.File]::WriteAllBytes("$certificatePath", $pfx_cert_byte)
+
+ # Create the app package by building and packaging the Windows Application Packaging project
+ - name: Create the app package
+ run: msbuild $env:Wap_Project_Path /p:Configuration=$env:Configuration /p:UapAppxPackageBuildMode=$env:Appx_Package_Build_Mode /p:AppxBundle=$env:Appx_Bundle /p:PackageCertificateKeyFile=GitHubActionsWorkflow.pfx /p:PackageCertificatePassword=${{ secrets.Pfx_Key }}
+ env:
+ Appx_Bundle: Always
+ Appx_Bundle_Platforms: x86|x64
+ Appx_Package_Build_Mode: StoreUpload
+ Configuration: ${{ matrix.configuration }}
+
+ # Remove the pfx
+ - name: Remove the pfx
+ run: Remove-Item -path $env:Wap_Project_Directory\GitHubActionsWorkflow.pfx
+
+ # Upload the MSIX package: https://github.com/marketplace/actions/upload-a-build-artifact
+ - name: Upload build artifacts
+ uses: actions/upload-artifact@v4
+ with:
+ name: MSIX Package
+ path: ${{ env.Wap_Project_Directory }}\AppPackages
diff --git a/.vs/GPS.Net 3.0 (Visual Studio 2010)/v16/.suo b/.vs/GPS.Net 3.0 (Visual Studio 2010)/v16/.suo
new file mode 100644
index 0000000..e0f073c
Binary files /dev/null and b/.vs/GPS.Net 3.0 (Visual Studio 2010)/v16/.suo differ
diff --git a/.vs/GPS.Net/v16/.suo b/.vs/GPS.Net/v16/.suo
new file mode 100644
index 0000000..a2ebea0
Binary files /dev/null and b/.vs/GPS.Net/v16/.suo differ
diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json
new file mode 100644
index 0000000..f8b4888
--- /dev/null
+++ b/.vs/ProjectSettings.json
@@ -0,0 +1,3 @@
+{
+ "CurrentProjectSetting": null
+}
\ No newline at end of file
diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json
new file mode 100644
index 0000000..50f4034
--- /dev/null
+++ b/.vs/VSWorkspaceState.json
@@ -0,0 +1,6 @@
+{
+ "ExpandedNodes": [
+ "\\Examples"
+ ],
+ "PreviewInSolutionExplorer": false
+}
\ No newline at end of file
diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite
new file mode 100644
index 0000000..0dd34fe
Binary files /dev/null and b/.vs/slnx.sqlite differ
diff --git a/Examples/Compact Framework 3.5/VB.NET/.vs/GPS Diagnostics CF35 (VB.NET)/v16/.suo b/Examples/Compact Framework 3.5/VB.NET/.vs/GPS Diagnostics CF35 (VB.NET)/v16/.suo
new file mode 100644
index 0000000..251a499
Binary files /dev/null and b/Examples/Compact Framework 3.5/VB.NET/.vs/GPS Diagnostics CF35 (VB.NET)/v16/.suo differ
diff --git a/Examples/Desktop Framework/C#/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs b/Examples/Desktop Framework/C#/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
new file mode 100644
index 0000000..c66f422
--- /dev/null
+++ b/Examples/Desktop Framework/C#/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0,Profile=Client", FrameworkDisplayName = ".NET Framework 4 Client Profile")]
diff --git a/Examples/Desktop Framework/C#/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs b/Examples/Desktop Framework/C#/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..5d01041
--- /dev/null
+++ b/Examples/Desktop Framework/C#/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0", FrameworkDisplayName = ".NET Framework 4")]
diff --git a/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF20 (CSharp).csprojAssemblyReference.cache b/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF20 (CSharp).csprojAssemblyReference.cache
new file mode 100644
index 0000000..d9774da
Binary files /dev/null and b/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF20 (CSharp).csprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF35 (CSharp).csprojAssemblyReference.cache b/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF35 (CSharp).csprojAssemblyReference.cache
new file mode 100644
index 0000000..e188599
Binary files /dev/null and b/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF35 (CSharp).csprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF40 (CSharp).csprojAssemblyReference.cache b/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF40 (CSharp).csprojAssemblyReference.cache
new file mode 100644
index 0000000..954a0c0
Binary files /dev/null and b/Examples/Desktop Framework/C#/obj/Debug/GPS Diagnostics DF40 (CSharp).csprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/C#/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs b/Examples/Desktop Framework/C#/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
new file mode 100644
index 0000000..c66f422
--- /dev/null
+++ b/Examples/Desktop Framework/C#/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0,Profile=Client", FrameworkDisplayName = ".NET Framework 4 Client Profile")]
diff --git a/Examples/Desktop Framework/C#/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.cs b/Examples/Desktop Framework/C#/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..5d01041
--- /dev/null
+++ b/Examples/Desktop Framework/C#/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0", FrameworkDisplayName = ".NET Framework 4")]
diff --git a/Examples/Desktop Framework/C#/obj/Release/GPS Diagnostics DF35 (CSharp).csprojAssemblyReference.cache b/Examples/Desktop Framework/C#/obj/Release/GPS Diagnostics DF35 (CSharp).csprojAssemblyReference.cache
new file mode 100644
index 0000000..954a0c0
Binary files /dev/null and b/Examples/Desktop Framework/C#/obj/Release/GPS Diagnostics DF35 (CSharp).csprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/VB.NET/.vs/GPS Diagnostics DF35 (VB.NET)/v16/.suo b/Examples/Desktop Framework/VB.NET/.vs/GPS Diagnostics DF35 (VB.NET)/v16/.suo
new file mode 100644
index 0000000..2ab6f4f
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/.vs/GPS Diagnostics DF35 (VB.NET)/v16/.suo differ
diff --git a/Examples/Desktop Framework/VB.NET/Backup/App.config b/Examples/Desktop Framework/VB.NET/Backup/App.config
new file mode 100644
index 0000000..829b6c8
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/App.config
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Examples/Desktop Framework/VB.NET/Backup/GPS Diagnostics DF35 (VB.NET).vbproj b/Examples/Desktop Framework/VB.NET/Backup/GPS Diagnostics DF35 (VB.NET).vbproj
new file mode 100644
index 0000000..5aca407
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/GPS Diagnostics DF35 (VB.NET).vbproj
@@ -0,0 +1,146 @@
+
+
+
+ Debug
+ AnyCPU
+ 9.0.30729
+ 2.0
+ {452F1CB0-6401-4D64-B2CC-CD53C411D927}
+ WinExe
+ Diagnostics.My.MyApplication
+ Diagnostics
+ Diagnostics
+ 512
+ WindowsForms
+ v3.5
+ On
+ Binary
+ Off
+ On
+
+
+
+
+
+
+
+
+ Gps.ico
+
+
+ true
+ full
+ true
+ true
+ bin\Debug\DF35\
+ Diagnostics.xml
+ 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
+
+
+ pdbonly
+ false
+ true
+ true
+ bin\Release\DF35\
+ Diagnostics.xml
+ 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
+
+
+
+
+
+
+
+
+
+ 3.5
+
+
+ 3.5
+
+
+ 3.5
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Form
+
+
+ MainForm.vb
+ Form
+
+
+ True
+ Application.myapp
+
+
+
+ True
+ True
+ Resources.resx
+
+
+ True
+ Settings.settings
+ True
+
+
+
+
+ MainForm.vb
+ Designer
+
+
+ VbMyResourcesResXFileCodeGenerator
+ Resources.Designer.vb
+ My.Resources
+ Designer
+
+
+
+
+
+ MyApplicationCodeGenerator
+ Application.Designer.vb
+
+
+ SettingsSingleFileGenerator
+ My
+ Settings.Designer.vb
+
+
+
+
+ {26E18588-B04D-4987-BF36-8206A7E36FF9}
+ GeoFramework %28Desktop Framework 3.5%29
+
+
+ {D4245DD6-79F6-466A-98D3-4AF15D8C39A9}
+ GPS.NET %28Desktop Framework 3.5%29
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Examples/Desktop Framework/VB.NET/Backup/Gps.ico b/Examples/Desktop Framework/VB.NET/Backup/Gps.ico
new file mode 100644
index 0000000..c0bf015
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/Backup/Gps.ico differ
diff --git a/Examples/Desktop Framework/VB.NET/Backup/MainForm.Designer.vb b/Examples/Desktop Framework/VB.NET/Backup/MainForm.Designer.vb
new file mode 100644
index 0000000..31c642a
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/MainForm.Designer.vb
@@ -0,0 +1,672 @@
+ _
+Partial Class MainForm
+ Inherits System.Windows.Forms.Form
+
+ 'Form overrides dispose to clean up the component list.
+ _
+ Protected Overrides Sub Dispose(ByVal disposing As Boolean)
+ Try
+ If disposing AndAlso components IsNot Nothing Then
+ components.Dispose()
+ End If
+ Finally
+ MyBase.Dispose(disposing)
+ End Try
+ End Sub
+
+ 'Required by the Windows Form Designer
+ Private components As System.ComponentModel.IContainer
+
+ 'NOTE: The following procedure is required by the Windows Form Designer
+ 'It can be modified using the Windows Form Designer.
+ 'Do not modify it using the code editor.
+ _
+ Private Sub InitializeComponent()
+ Me.components = New System.ComponentModel.Container()
+ Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(MainForm))
+ Me.startButton = New System.Windows.Forms.Button()
+ Me.bearingTextBox = New System.Windows.Forms.TextBox()
+ Me.splitContainer1 = New System.Windows.Forms.SplitContainer()
+ Me.devicesListView = New System.Windows.Forms.ListView()
+ Me.columnHeader1 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.columnHeader2 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.deviceContextMenu = New System.Windows.Forms.ContextMenuStrip(Me.components)
+ Me.redetectMenuItem = New System.Windows.Forms.ToolStripMenuItem()
+ Me.resetMenuItem = New System.Windows.Forms.ToolStripMenuItem()
+ Me.imageList1 = New System.Windows.Forms.ImageList(Me.components)
+ Me.propertyGrid1 = New System.Windows.Forms.PropertyGrid()
+ Me.label5 = New System.Windows.Forms.Label()
+ Me.devicesTab = New System.Windows.Forms.TabPage()
+ Me.dataTab = New System.Windows.Forms.TabPage()
+ Me.altitudeTextBox = New System.Windows.Forms.TextBox()
+ Me.speedTextBox = New System.Windows.Forms.TextBox()
+ Me.label3 = New System.Windows.Forms.Label()
+ Me.label1 = New System.Windows.Forms.Label()
+ Me.dateTimeTextBox = New System.Windows.Forms.TextBox()
+ Me.label4 = New System.Windows.Forms.Label()
+ Me.label2 = New System.Windows.Forms.Label()
+ Me.positionTextBox = New System.Windows.Forms.TextBox()
+ Me.utcDateTimeTextBox = New System.Windows.Forms.TextBox()
+ Me.label6 = New System.Windows.Forms.Label()
+ Me.rawDataTab = New System.Windows.Forms.TabPage()
+ Me.sentenceListBox = New System.Windows.Forms.ListBox()
+ Me.satellitesTab = New System.Windows.Forms.TabPage()
+ Me.satellitesListView = New System.Windows.Forms.ListView()
+ Me.columnHeader3 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.columnHeader4 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.columnHeader5 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.columnHeader6 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.columnHeader7 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.bluetoothCheckBox = New System.Windows.Forms.CheckBox()
+ Me.nmeaInterpreter1 = New GeoFramework.Gps.Nmea.NmeaInterpreter()
+ Me.serialCheckBox = New System.Windows.Forms.CheckBox()
+ Me.tabControl1 = New System.Windows.Forms.TabControl()
+ Me.statusLabel = New System.Windows.Forms.ToolStripStatusLabel()
+ Me.resumeButton = New System.Windows.Forms.Button()
+ Me.pauseButton = New System.Windows.Forms.Button()
+ Me.stopButton = New System.Windows.Forms.Button()
+ Me.statusStrip1 = New System.Windows.Forms.StatusStrip()
+ Me.positionLabel = New System.Windows.Forms.ToolStripStatusLabel()
+ Me.speedLabel = New System.Windows.Forms.ToolStripStatusLabel()
+ Me.bearingLabel = New System.Windows.Forms.ToolStripStatusLabel()
+ Me.altitudeLabel = New System.Windows.Forms.ToolStripStatusLabel()
+ Me.exhaustiveCheckBox = New System.Windows.Forms.CheckBox()
+ Me.cancelDetectButton = New System.Windows.Forms.Button()
+ Me.detectButton = New System.Windows.Forms.Button()
+ Me.undetectButton = New System.Windows.Forms.Button()
+ Me.firstDeviceCheckBox = New System.Windows.Forms.CheckBox()
+ Me.clockSynchronizationCheckBox = New System.Windows.Forms.CheckBox()
+ CType(Me.splitContainer1, System.ComponentModel.ISupportInitialize).BeginInit()
+ Me.splitContainer1.Panel1.SuspendLayout()
+ Me.splitContainer1.Panel2.SuspendLayout()
+ Me.splitContainer1.SuspendLayout()
+ Me.deviceContextMenu.SuspendLayout()
+ Me.devicesTab.SuspendLayout()
+ Me.dataTab.SuspendLayout()
+ Me.rawDataTab.SuspendLayout()
+ Me.satellitesTab.SuspendLayout()
+ Me.tabControl1.SuspendLayout()
+ Me.statusStrip1.SuspendLayout()
+ Me.SuspendLayout()
+ '
+ 'startButton
+ '
+ Me.startButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.startButton.Location = New System.Drawing.Point(573, 142)
+ Me.startButton.Name = "startButton"
+ Me.startButton.Size = New System.Drawing.Size(98, 23)
+ Me.startButton.TabIndex = 0
+ Me.startButton.Text = "Start"
+ Me.startButton.UseVisualStyleBackColor = True
+ '
+ 'bearingTextBox
+ '
+ Me.bearingTextBox.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.bearingTextBox.Location = New System.Drawing.Point(131, 156)
+ Me.bearingTextBox.Name = "bearingTextBox"
+ Me.bearingTextBox.Size = New System.Drawing.Size(407, 20)
+ Me.bearingTextBox.TabIndex = 13
+ '
+ 'splitContainer1
+ '
+ Me.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.splitContainer1.Location = New System.Drawing.Point(3, 3)
+ Me.splitContainer1.Name = "splitContainer1"
+ '
+ 'splitContainer1.Panel1
+ '
+ Me.splitContainer1.Panel1.Controls.Add(Me.devicesListView)
+ '
+ 'splitContainer1.Panel2
+ '
+ Me.splitContainer1.Panel2.Controls.Add(Me.propertyGrid1)
+ Me.splitContainer1.Size = New System.Drawing.Size(533, 448)
+ Me.splitContainer1.SplitterDistance = 301
+ Me.splitContainer1.TabIndex = 10
+ '
+ 'devicesListView
+ '
+ Me.devicesListView.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.columnHeader1, Me.columnHeader2})
+ Me.devicesListView.ContextMenuStrip = Me.deviceContextMenu
+ Me.devicesListView.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.devicesListView.LargeImageList = Me.imageList1
+ Me.devicesListView.Location = New System.Drawing.Point(0, 0)
+ Me.devicesListView.Name = "devicesListView"
+ Me.devicesListView.Size = New System.Drawing.Size(301, 448)
+ Me.devicesListView.SmallImageList = Me.imageList1
+ Me.devicesListView.TabIndex = 0
+ Me.devicesListView.UseCompatibleStateImageBehavior = False
+ Me.devicesListView.View = System.Windows.Forms.View.Details
+ '
+ 'columnHeader1
+ '
+ Me.columnHeader1.Text = "Device Name"
+ Me.columnHeader1.Width = 148
+ '
+ 'columnHeader2
+ '
+ Me.columnHeader2.Text = "Status"
+ Me.columnHeader2.Width = 641
+ '
+ 'deviceContextMenu
+ '
+ Me.deviceContextMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.redetectMenuItem, Me.resetMenuItem})
+ Me.deviceContextMenu.Name = "deviceContextMenu"
+ Me.deviceContextMenu.Size = New System.Drawing.Size(121, 48)
+ '
+ 'redetectMenuItem
+ '
+ Me.redetectMenuItem.Name = "redetectMenuItem"
+ Me.redetectMenuItem.Size = New System.Drawing.Size(120, 22)
+ Me.redetectMenuItem.Text = "Redetect"
+ '
+ 'resetMenuItem
+ '
+ Me.resetMenuItem.Name = "resetMenuItem"
+ Me.resetMenuItem.Size = New System.Drawing.Size(120, 22)
+ Me.resetMenuItem.Text = "Reset"
+ '
+ 'imageList1
+ '
+ Me.imageList1.ImageStream = CType(resources.GetObject("imageList1.ImageStream"), System.Windows.Forms.ImageListStreamer)
+ Me.imageList1.TransparentColor = System.Drawing.Color.Transparent
+ Me.imageList1.Images.SetKeyName(0, "Gps.png")
+ Me.imageList1.Images.SetKeyName(1, "GpsRemove.png")
+ Me.imageList1.Images.SetKeyName(2, "Configuration Tools.png")
+ '
+ 'propertyGrid1
+ '
+ Me.propertyGrid1.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.propertyGrid1.Location = New System.Drawing.Point(0, 0)
+ Me.propertyGrid1.Name = "propertyGrid1"
+ Me.propertyGrid1.Size = New System.Drawing.Size(228, 448)
+ Me.propertyGrid1.TabIndex = 0
+ '
+ 'label5
+ '
+ Me.label5.AutoSize = True
+ Me.label5.Location = New System.Drawing.Point(20, 159)
+ Me.label5.Name = "label5"
+ Me.label5.Size = New System.Drawing.Size(46, 13)
+ Me.label5.TabIndex = 12
+ Me.label5.Text = "Bearing:"
+ '
+ 'devicesTab
+ '
+ Me.devicesTab.Controls.Add(Me.splitContainer1)
+ Me.devicesTab.Location = New System.Drawing.Point(4, 22)
+ Me.devicesTab.Name = "devicesTab"
+ Me.devicesTab.Padding = New System.Windows.Forms.Padding(3)
+ Me.devicesTab.Size = New System.Drawing.Size(539, 454)
+ Me.devicesTab.TabIndex = 0
+ Me.devicesTab.Text = "Devices"
+ Me.devicesTab.UseVisualStyleBackColor = True
+ '
+ 'dataTab
+ '
+ Me.dataTab.Controls.Add(Me.bearingTextBox)
+ Me.dataTab.Controls.Add(Me.label5)
+ Me.dataTab.Controls.Add(Me.altitudeTextBox)
+ Me.dataTab.Controls.Add(Me.speedTextBox)
+ Me.dataTab.Controls.Add(Me.label3)
+ Me.dataTab.Controls.Add(Me.label1)
+ Me.dataTab.Controls.Add(Me.dateTimeTextBox)
+ Me.dataTab.Controls.Add(Me.label4)
+ Me.dataTab.Controls.Add(Me.label2)
+ Me.dataTab.Controls.Add(Me.positionTextBox)
+ Me.dataTab.Controls.Add(Me.utcDateTimeTextBox)
+ Me.dataTab.Controls.Add(Me.label6)
+ Me.dataTab.Location = New System.Drawing.Point(4, 22)
+ Me.dataTab.Name = "dataTab"
+ Me.dataTab.Padding = New System.Windows.Forms.Padding(3)
+ Me.dataTab.Size = New System.Drawing.Size(539, 454)
+ Me.dataTab.TabIndex = 1
+ Me.dataTab.Text = "Real-Time Data"
+ Me.dataTab.UseVisualStyleBackColor = True
+ '
+ 'altitudeTextBox
+ '
+ Me.altitudeTextBox.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.altitudeTextBox.Location = New System.Drawing.Point(131, 102)
+ Me.altitudeTextBox.Name = "altitudeTextBox"
+ Me.altitudeTextBox.Size = New System.Drawing.Size(407, 20)
+ Me.altitudeTextBox.TabIndex = 11
+ '
+ 'speedTextBox
+ '
+ Me.speedTextBox.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.speedTextBox.Location = New System.Drawing.Point(131, 128)
+ Me.speedTextBox.Name = "speedTextBox"
+ Me.speedTextBox.Size = New System.Drawing.Size(407, 20)
+ Me.speedTextBox.TabIndex = 7
+ '
+ 'label3
+ '
+ Me.label3.AutoSize = True
+ Me.label3.Location = New System.Drawing.Point(20, 105)
+ Me.label3.Name = "label3"
+ Me.label3.Size = New System.Drawing.Size(45, 13)
+ Me.label3.TabIndex = 10
+ Me.label3.Text = "Altitude:"
+ '
+ 'label1
+ '
+ Me.label1.AutoSize = True
+ Me.label1.Location = New System.Drawing.Point(20, 19)
+ Me.label1.Name = "label1"
+ Me.label1.Size = New System.Drawing.Size(61, 13)
+ Me.label1.TabIndex = 0
+ Me.label1.Text = "Date/Time:"
+ '
+ 'dateTimeTextBox
+ '
+ Me.dateTimeTextBox.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.dateTimeTextBox.Location = New System.Drawing.Point(131, 16)
+ Me.dateTimeTextBox.Name = "dateTimeTextBox"
+ Me.dateTimeTextBox.Size = New System.Drawing.Size(407, 20)
+ Me.dateTimeTextBox.TabIndex = 1
+ '
+ 'label4
+ '
+ Me.label4.AutoSize = True
+ Me.label4.Location = New System.Drawing.Point(20, 131)
+ Me.label4.Name = "label4"
+ Me.label4.Size = New System.Drawing.Size(41, 13)
+ Me.label4.TabIndex = 6
+ Me.label4.Text = "Speed:"
+ '
+ 'label2
+ '
+ Me.label2.AutoSize = True
+ Me.label2.Location = New System.Drawing.Point(20, 47)
+ Me.label2.Name = "label2"
+ Me.label2.Size = New System.Drawing.Size(86, 13)
+ Me.label2.TabIndex = 2
+ Me.label2.Text = "UTC Date/Time:"
+ '
+ 'positionTextBox
+ '
+ Me.positionTextBox.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.positionTextBox.Location = New System.Drawing.Point(131, 73)
+ Me.positionTextBox.Name = "positionTextBox"
+ Me.positionTextBox.Size = New System.Drawing.Size(407, 20)
+ Me.positionTextBox.TabIndex = 5
+ '
+ 'utcDateTimeTextBox
+ '
+ Me.utcDateTimeTextBox.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.utcDateTimeTextBox.Location = New System.Drawing.Point(131, 44)
+ Me.utcDateTimeTextBox.Name = "utcDateTimeTextBox"
+ Me.utcDateTimeTextBox.Size = New System.Drawing.Size(407, 20)
+ Me.utcDateTimeTextBox.TabIndex = 3
+ '
+ 'label6
+ '
+ Me.label6.AutoSize = True
+ Me.label6.Location = New System.Drawing.Point(20, 76)
+ Me.label6.Name = "label6"
+ Me.label6.Size = New System.Drawing.Size(47, 13)
+ Me.label6.TabIndex = 4
+ Me.label6.Text = "Position:"
+ '
+ 'rawDataTab
+ '
+ Me.rawDataTab.Controls.Add(Me.sentenceListBox)
+ Me.rawDataTab.Location = New System.Drawing.Point(4, 22)
+ Me.rawDataTab.Name = "rawDataTab"
+ Me.rawDataTab.Size = New System.Drawing.Size(539, 454)
+ Me.rawDataTab.TabIndex = 2
+ Me.rawDataTab.Text = "Raw Data"
+ Me.rawDataTab.UseVisualStyleBackColor = True
+ '
+ 'sentenceListBox
+ '
+ Me.sentenceListBox.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.sentenceListBox.FormattingEnabled = True
+ Me.sentenceListBox.Location = New System.Drawing.Point(0, 0)
+ Me.sentenceListBox.Name = "sentenceListBox"
+ Me.sentenceListBox.Size = New System.Drawing.Size(539, 454)
+ Me.sentenceListBox.TabIndex = 4
+ '
+ 'satellitesTab
+ '
+ Me.satellitesTab.Controls.Add(Me.satellitesListView)
+ Me.satellitesTab.Location = New System.Drawing.Point(4, 22)
+ Me.satellitesTab.Name = "satellitesTab"
+ Me.satellitesTab.Size = New System.Drawing.Size(539, 454)
+ Me.satellitesTab.TabIndex = 3
+ Me.satellitesTab.Text = "Satelllites"
+ Me.satellitesTab.UseVisualStyleBackColor = True
+ '
+ 'satellitesListView
+ '
+ Me.satellitesListView.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.columnHeader3, Me.columnHeader4, Me.columnHeader5, Me.columnHeader6, Me.columnHeader7})
+ Me.satellitesListView.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.satellitesListView.Location = New System.Drawing.Point(0, 0)
+ Me.satellitesListView.Name = "satellitesListView"
+ Me.satellitesListView.Size = New System.Drawing.Size(539, 454)
+ Me.satellitesListView.TabIndex = 0
+ Me.satellitesListView.UseCompatibleStateImageBehavior = False
+ Me.satellitesListView.View = System.Windows.Forms.View.Details
+ '
+ 'columnHeader3
+ '
+ Me.columnHeader3.Text = "Satellite ID"
+ Me.columnHeader3.Width = 74
+ '
+ 'columnHeader4
+ '
+ Me.columnHeader4.Text = "Name"
+ Me.columnHeader4.Width = 257
+ '
+ 'columnHeader5
+ '
+ Me.columnHeader5.Text = "Azimuth"
+ '
+ 'columnHeader6
+ '
+ Me.columnHeader6.Text = "Elevation"
+ '
+ 'columnHeader7
+ '
+ Me.columnHeader7.Text = "Signal Strength"
+ Me.columnHeader7.Width = 95
+ '
+ 'bluetoothCheckBox
+ '
+ Me.bluetoothCheckBox.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.bluetoothCheckBox.Checked = True
+ Me.bluetoothCheckBox.CheckState = System.Windows.Forms.CheckState.Checked
+ Me.bluetoothCheckBox.Location = New System.Drawing.Point(565, 384)
+ Me.bluetoothCheckBox.Name = "bluetoothCheckBox"
+ Me.bluetoothCheckBox.Size = New System.Drawing.Size(144, 17)
+ Me.bluetoothCheckBox.TabIndex = 9
+ Me.bluetoothCheckBox.Text = "Allow Bluetooth"
+ Me.bluetoothCheckBox.UseVisualStyleBackColor = True
+ '
+ 'nmeaInterpreter1
+ '
+ Me.nmeaInterpreter1.IsFilterEnabled = False
+ '
+ 'serialCheckBox
+ '
+ Me.serialCheckBox.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.serialCheckBox.Checked = True
+ Me.serialCheckBox.CheckState = System.Windows.Forms.CheckState.Checked
+ Me.serialCheckBox.Location = New System.Drawing.Point(565, 338)
+ Me.serialCheckBox.Name = "serialCheckBox"
+ Me.serialCheckBox.Size = New System.Drawing.Size(144, 17)
+ Me.serialCheckBox.TabIndex = 7
+ Me.serialCheckBox.Text = "Allow Serial"
+ Me.serialCheckBox.UseVisualStyleBackColor = True
+ '
+ 'tabControl1
+ '
+ Me.tabControl1.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
+ Or System.Windows.Forms.AnchorStyles.Left) _
+ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.tabControl1.Controls.Add(Me.devicesTab)
+ Me.tabControl1.Controls.Add(Me.dataTab)
+ Me.tabControl1.Controls.Add(Me.rawDataTab)
+ Me.tabControl1.Controls.Add(Me.satellitesTab)
+ Me.tabControl1.Location = New System.Drawing.Point(12, 6)
+ Me.tabControl1.Name = "tabControl1"
+ Me.tabControl1.SelectedIndex = 0
+ Me.tabControl1.Size = New System.Drawing.Size(547, 480)
+ Me.tabControl1.TabIndex = 11
+ '
+ 'statusLabel
+ '
+ Me.statusLabel.Name = "statusLabel"
+ Me.statusLabel.Size = New System.Drawing.Size(657, 17)
+ Me.statusLabel.Spring = True
+ Me.statusLabel.Text = "Idle."
+ Me.statusLabel.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
+ '
+ 'resumeButton
+ '
+ Me.resumeButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.resumeButton.Enabled = False
+ Me.resumeButton.Location = New System.Drawing.Point(573, 243)
+ Me.resumeButton.Name = "resumeButton"
+ Me.resumeButton.Size = New System.Drawing.Size(98, 23)
+ Me.resumeButton.TabIndex = 3
+ Me.resumeButton.Text = "Resume"
+ Me.resumeButton.UseVisualStyleBackColor = True
+ '
+ 'pauseButton
+ '
+ Me.pauseButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.pauseButton.Enabled = False
+ Me.pauseButton.Location = New System.Drawing.Point(573, 213)
+ Me.pauseButton.Name = "pauseButton"
+ Me.pauseButton.Size = New System.Drawing.Size(98, 23)
+ Me.pauseButton.TabIndex = 2
+ Me.pauseButton.Text = "Pause"
+ Me.pauseButton.UseVisualStyleBackColor = True
+ '
+ 'stopButton
+ '
+ Me.stopButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.stopButton.Enabled = False
+ Me.stopButton.Location = New System.Drawing.Point(573, 171)
+ Me.stopButton.Name = "stopButton"
+ Me.stopButton.Size = New System.Drawing.Size(98, 23)
+ Me.stopButton.TabIndex = 1
+ Me.stopButton.Text = "Stop"
+ Me.stopButton.UseVisualStyleBackColor = True
+ '
+ 'statusStrip1
+ '
+ Me.statusStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.statusLabel, Me.positionLabel, Me.speedLabel, Me.bearingLabel, Me.altitudeLabel})
+ Me.statusStrip1.Location = New System.Drawing.Point(0, 506)
+ Me.statusStrip1.Name = "statusStrip1"
+ Me.statusStrip1.ShowItemToolTips = True
+ Me.statusStrip1.Size = New System.Drawing.Size(688, 22)
+ Me.statusStrip1.TabIndex = 12
+ Me.statusStrip1.Text = "statusStrip1"
+ '
+ 'positionLabel
+ '
+ Me.positionLabel.BorderSides = CType((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Top) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Right) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom), System.Windows.Forms.ToolStripStatusLabelBorderSides)
+ Me.positionLabel.BorderStyle = System.Windows.Forms.Border3DStyle.SunkenOuter
+ Me.positionLabel.Name = "positionLabel"
+ Me.positionLabel.Size = New System.Drawing.Size(4, 17)
+ Me.positionLabel.ToolTipText = "Current Position"
+ '
+ 'speedLabel
+ '
+ Me.speedLabel.BorderSides = CType((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Top) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Right) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom), System.Windows.Forms.ToolStripStatusLabelBorderSides)
+ Me.speedLabel.BorderStyle = System.Windows.Forms.Border3DStyle.SunkenOuter
+ Me.speedLabel.Name = "speedLabel"
+ Me.speedLabel.Size = New System.Drawing.Size(4, 17)
+ Me.speedLabel.ToolTipText = "Current Speed"
+ '
+ 'bearingLabel
+ '
+ Me.bearingLabel.BorderSides = CType((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Top) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Right) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom), System.Windows.Forms.ToolStripStatusLabelBorderSides)
+ Me.bearingLabel.BorderStyle = System.Windows.Forms.Border3DStyle.SunkenOuter
+ Me.bearingLabel.Name = "bearingLabel"
+ Me.bearingLabel.Size = New System.Drawing.Size(4, 17)
+ Me.bearingLabel.ToolTipText = "Current Bearing"
+ '
+ 'altitudeLabel
+ '
+ Me.altitudeLabel.BorderSides = CType((((System.Windows.Forms.ToolStripStatusLabelBorderSides.Left Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Top) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Right) _
+ Or System.Windows.Forms.ToolStripStatusLabelBorderSides.Bottom), System.Windows.Forms.ToolStripStatusLabelBorderSides)
+ Me.altitudeLabel.BorderStyle = System.Windows.Forms.Border3DStyle.SunkenOuter
+ Me.altitudeLabel.Name = "altitudeLabel"
+ Me.altitudeLabel.Size = New System.Drawing.Size(4, 17)
+ Me.altitudeLabel.ToolTipText = "Current Altitude"
+ '
+ 'exhaustiveCheckBox
+ '
+ Me.exhaustiveCheckBox.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.exhaustiveCheckBox.Location = New System.Drawing.Point(565, 361)
+ Me.exhaustiveCheckBox.Name = "exhaustiveCheckBox"
+ Me.exhaustiveCheckBox.Size = New System.Drawing.Size(144, 17)
+ Me.exhaustiveCheckBox.TabIndex = 8
+ Me.exhaustiveCheckBox.Text = "Exhaustive Scan"
+ Me.exhaustiveCheckBox.UseVisualStyleBackColor = True
+ '
+ 'cancelDetectButton
+ '
+ Me.cancelDetectButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.cancelDetectButton.Enabled = False
+ Me.cancelDetectButton.Location = New System.Drawing.Point(573, 57)
+ Me.cancelDetectButton.Name = "cancelDetectButton"
+ Me.cancelDetectButton.Size = New System.Drawing.Size(98, 23)
+ Me.cancelDetectButton.TabIndex = 5
+ Me.cancelDetectButton.Text = "Cancel"
+ Me.cancelDetectButton.UseVisualStyleBackColor = True
+ '
+ 'detectButton
+ '
+ Me.detectButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.detectButton.Location = New System.Drawing.Point(573, 28)
+ Me.detectButton.Name = "detectButton"
+ Me.detectButton.Size = New System.Drawing.Size(98, 23)
+ Me.detectButton.TabIndex = 4
+ Me.detectButton.Text = "Detect"
+ Me.detectButton.UseVisualStyleBackColor = True
+ '
+ 'undetectButton
+ '
+ Me.undetectButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.undetectButton.Enabled = False
+ Me.undetectButton.Location = New System.Drawing.Point(573, 86)
+ Me.undetectButton.Name = "undetectButton"
+ Me.undetectButton.Size = New System.Drawing.Size(98, 23)
+ Me.undetectButton.TabIndex = 6
+ Me.undetectButton.Text = "Undetect"
+ Me.undetectButton.UseVisualStyleBackColor = True
+ '
+ 'firstDeviceCheckBox
+ '
+ Me.firstDeviceCheckBox.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.firstDeviceCheckBox.Location = New System.Drawing.Point(565, 407)
+ Me.firstDeviceCheckBox.Name = "firstDeviceCheckBox"
+ Me.firstDeviceCheckBox.Size = New System.Drawing.Size(144, 17)
+ Me.firstDeviceCheckBox.TabIndex = 10
+ Me.firstDeviceCheckBox.Text = "Stop after first device"
+ Me.firstDeviceCheckBox.UseVisualStyleBackColor = True
+ '
+ 'clockSynchronizationCheckBox
+ '
+ Me.clockSynchronizationCheckBox.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
+ Me.clockSynchronizationCheckBox.Location = New System.Drawing.Point(565, 462)
+ Me.clockSynchronizationCheckBox.Name = "clockSynchronizationCheckBox"
+ Me.clockSynchronizationCheckBox.Size = New System.Drawing.Size(144, 17)
+ Me.clockSynchronizationCheckBox.TabIndex = 11
+ Me.clockSynchronizationCheckBox.Text = "Sync system clock"
+ Me.clockSynchronizationCheckBox.UseVisualStyleBackColor = True
+ '
+ 'MainForm
+ '
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
+ Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
+ Me.ClientSize = New System.Drawing.Size(688, 528)
+ Me.Controls.Add(Me.clockSynchronizationCheckBox)
+ Me.Controls.Add(Me.undetectButton)
+ Me.Controls.Add(Me.firstDeviceCheckBox)
+ Me.Controls.Add(Me.startButton)
+ Me.Controls.Add(Me.tabControl1)
+ Me.Controls.Add(Me.bluetoothCheckBox)
+ Me.Controls.Add(Me.serialCheckBox)
+ Me.Controls.Add(Me.resumeButton)
+ Me.Controls.Add(Me.pauseButton)
+ Me.Controls.Add(Me.stopButton)
+ Me.Controls.Add(Me.statusStrip1)
+ Me.Controls.Add(Me.cancelDetectButton)
+ Me.Controls.Add(Me.exhaustiveCheckBox)
+ Me.Controls.Add(Me.detectButton)
+ Me.Name = "MainForm"
+ Me.Text = "GPS.NET 3.0 Diagnostics"
+ Me.splitContainer1.Panel1.ResumeLayout(False)
+ Me.splitContainer1.Panel2.ResumeLayout(False)
+ CType(Me.splitContainer1, System.ComponentModel.ISupportInitialize).EndInit()
+ Me.splitContainer1.ResumeLayout(False)
+ Me.deviceContextMenu.ResumeLayout(False)
+ Me.devicesTab.ResumeLayout(False)
+ Me.dataTab.ResumeLayout(False)
+ Me.dataTab.PerformLayout()
+ Me.rawDataTab.ResumeLayout(False)
+ Me.satellitesTab.ResumeLayout(False)
+ Me.tabControl1.ResumeLayout(False)
+ Me.statusStrip1.ResumeLayout(False)
+ Me.statusStrip1.PerformLayout()
+ Me.ResumeLayout(False)
+ Me.PerformLayout()
+
+ End Sub
+ Private WithEvents speedometer1 As GeoFramework.Gps.Controls.Speedometer
+ Private WithEvents satelliteViewer1 As GeoFramework.Gps.Controls.SatelliteViewer
+ Private WithEvents altimeter1 As GeoFramework.Gps.Controls.Altimeter
+ Private WithEvents startButton As System.Windows.Forms.Button
+ Private WithEvents compass1 As GeoFramework.Gps.Controls.Compass
+ Private WithEvents bearingTextBox As System.Windows.Forms.TextBox
+ Private WithEvents splitContainer1 As System.Windows.Forms.SplitContainer
+ Private WithEvents devicesListView As System.Windows.Forms.ListView
+ Private WithEvents columnHeader1 As System.Windows.Forms.ColumnHeader
+ Private WithEvents columnHeader2 As System.Windows.Forms.ColumnHeader
+ Private WithEvents imageList1 As System.Windows.Forms.ImageList
+ Private WithEvents propertyGrid1 As System.Windows.Forms.PropertyGrid
+ Private WithEvents label5 As System.Windows.Forms.Label
+ Private WithEvents devicesTab As System.Windows.Forms.TabPage
+ Private WithEvents dataTab As System.Windows.Forms.TabPage
+ Private WithEvents altitudeTextBox As System.Windows.Forms.TextBox
+ Private WithEvents speedTextBox As System.Windows.Forms.TextBox
+ Private WithEvents label3 As System.Windows.Forms.Label
+ Private WithEvents label1 As System.Windows.Forms.Label
+ Private WithEvents dateTimeTextBox As System.Windows.Forms.TextBox
+ Private WithEvents label4 As System.Windows.Forms.Label
+ Private WithEvents label2 As System.Windows.Forms.Label
+ Private WithEvents positionTextBox As System.Windows.Forms.TextBox
+ Private WithEvents utcDateTimeTextBox As System.Windows.Forms.TextBox
+ Private WithEvents label6 As System.Windows.Forms.Label
+ Private WithEvents rawDataTab As System.Windows.Forms.TabPage
+ Private WithEvents sentenceListBox As System.Windows.Forms.ListBox
+ Private WithEvents satellitesTab As System.Windows.Forms.TabPage
+ Private WithEvents satellitesListView As System.Windows.Forms.ListView
+ Private WithEvents columnHeader3 As System.Windows.Forms.ColumnHeader
+ Private WithEvents columnHeader4 As System.Windows.Forms.ColumnHeader
+ Private WithEvents columnHeader5 As System.Windows.Forms.ColumnHeader
+ Private WithEvents columnHeader6 As System.Windows.Forms.ColumnHeader
+ Private WithEvents columnHeader7 As System.Windows.Forms.ColumnHeader
+ Private WithEvents bluetoothCheckBox As System.Windows.Forms.CheckBox
+ Private WithEvents nmeaInterpreter1 As GeoFramework.Gps.Nmea.NmeaInterpreter
+ Private WithEvents serialCheckBox As System.Windows.Forms.CheckBox
+ Private WithEvents tabControl1 As System.Windows.Forms.TabControl
+ Private WithEvents statusLabel As System.Windows.Forms.ToolStripStatusLabel
+ Private WithEvents resumeButton As System.Windows.Forms.Button
+ Private WithEvents pauseButton As System.Windows.Forms.Button
+ Private WithEvents stopButton As System.Windows.Forms.Button
+ Private WithEvents statusStrip1 As System.Windows.Forms.StatusStrip
+ Private WithEvents exhaustiveCheckBox As System.Windows.Forms.CheckBox
+ Private WithEvents cancelDetectButton As System.Windows.Forms.Button
+ Private WithEvents detectButton As System.Windows.Forms.Button
+ Private WithEvents undetectButton As System.Windows.Forms.Button
+ Private WithEvents deviceContextMenu As System.Windows.Forms.ContextMenuStrip
+ Friend WithEvents redetectMenuItem As System.Windows.Forms.ToolStripMenuItem
+ Friend WithEvents resetMenuItem As System.Windows.Forms.ToolStripMenuItem
+ Private WithEvents firstDeviceCheckBox As System.Windows.Forms.CheckBox
+ Private WithEvents positionLabel As System.Windows.Forms.ToolStripStatusLabel
+ Private WithEvents speedLabel As System.Windows.Forms.ToolStripStatusLabel
+ Private WithEvents bearingLabel As System.Windows.Forms.ToolStripStatusLabel
+ Private WithEvents altitudeLabel As System.Windows.Forms.ToolStripStatusLabel
+ Private WithEvents clockSynchronizationCheckBox As System.Windows.Forms.CheckBox
+
+End Class
diff --git a/Examples/Desktop Framework/VB.NET/Backup/MainForm.resx b/Examples/Desktop Framework/VB.NET/Backup/MainForm.resx
new file mode 100644
index 0000000..4689c2d
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/MainForm.resx
@@ -0,0 +1,729 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ 384, 17
+
+
+ 17, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAQ
+ cAAAAk1TRnQBSQFMAgEBAwEAARwBAAEcAQABMAEAATABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAHA
+ AwABMAMAAQEBAAEgBgABkEEAAQEDAAEBAwAEAQECAwMBBAMFAQcDCgQNARIDEwEaAxgBIQMdASkDIAEu
+ AyIBMgMjATMDIgExAyABLwMeASsDGwEmAxcBIAMSARgDDwEUAwoBDgMHAQkDAgEDAwABAQMAAQEDAAEB
+ ZwABAQMABAEBAgMBAQIDAwQEBAUBBwMGAQgDBgEIAwYBCAMGAQgDBQEHAzMBUgM6AWEDCgENAwMBBAMC
+ AQMDAAEBAwABAVAAAwYBCAMfAS0DMgFRAzgBXQMvAUkDCgENaAADAgEDAxYBHwMoAT0DLQFGAyYBOQMQ
+ ARUDAAEB7wABAQMAAQEDAAEBAwIBAwMEAQUDCAELAw8BFAMWAR8DIAEuAycBOwMtAUYDMgRRAaIDXwHj
+ A0EB/gMgAf8DJAH/AygB/wEuAi8B/wNZAfADXQHSA1ABmwM9AWgDOgFhAy8BSgMjATQDFwEgAwoBDQME
+ AQUDAQECAwABAQMAAQEDAAEBSwABAQMABAEEAgEDAwUEBwEKAw4BEwMSARkDGgEkAyABLgMmATgDKgFA
+ Ay0BRQMtAUYDLAFEA1cBtwE6AU8B5wH/ASEBNwHdAf8DWQG/AxkBIwMUARwDDwEUAwkBDAMDAQQDAAEB
+ AwABAQMAAQEDAAEBOAADDgETAy8BSQNWAbQD7AH/A7oB/wNfAeMDLgFHAwgBC2AAAwUBBwMkATYDNQFW
+ A2QB7ANNAfoDUgGnAzIBUQMWAR8DAAEB4wABAQMAAQEDAAEBAwIBAwMFAQcDDAEQAxcBIAMjATMDLQFG
+ AzUBVQNGAX8DHwH/AT8BPgE/Af8DtgH/A1EB/wMVAf8BmgKbAf8BJAIlAf8BJAIlAf8BJAIlAf8BJgEn
+ ASYB/wEoAikB/wItAS4B/wM0Af8DPgH/AU0CTgH/AlYBVwH/A2IB9gNKAYkDMwFSAxoBJAMJAQwDBAEF
+ AwEBAgMAAQEDAAEBAwABATcAAQEDAAEBAwABAQMDBAQBBgMLAQ8DFAEcAx4BKwMpAT8DMQFPAzgBXQM9
+ AWkDXAHPAx4B/wMhAf8DIwH/AycB/wMqAf8BRAFWAeoB/wE0AUgB5QH/ARgBLwHcAf8BDQEiAc0B/wNO
+ AZYDRQF9AzoBYgMuAUcDHwEsAw0BEgMFAQcDAQECAwABAQMAAQEDAAEBCAADJQE3Aw0BERwAAwwBEAMy
+ AVED1AH/A/AB/wOsAf8D8QH/A7gB/wNeAdgDLQFFAwcBCVgAAwQBBQMlATcDaAH6A50B/wOOAf8DYwH/
+ A7AB/wOfAf8DMQFPAwsBD98AAQEDAAQBAQIDBQEHAw0BEQMaASQDKAE9AzMBUwNMAZADKgH/A5IB/wEH
+ AgYB/wFdAVkBVwH/AcYBwQG+Af8ByQHEAcIB/wG5AbIBrwH/AbkBsgGvAf8DAwH/A4wB/wOBAf8CWwFa
+ Af8DRgH/AYsCjAH/A5IB/wNHAf8DMQH/ATsCPAH/AUoBSwFKAf8DVwH/AmIBYwH/A2AB/wNdAdcDMgFR
+ AxIBGAMHAQkDAgEDAwABAQMAAQEDAAEBKwABAQMAAQEDAAEBAwIBAwMHAQoDEQEXAx8ELAFEAzgBXANA
+ AW4DVwG3AyUB/wNdAf8DjwH/Ay8B/wMHAf8BZgJnAf8BJgInAf8BJgInAf8BJgInAf8BQwFWAeoB/wEt
+ AUIB4gH/ARMBKwHZAf8BBQEeAdMB/wIqASsB/wNPAf8DWgH/A00B+gNYAbwDQAFuAyMBMwMNARIDBQEH
+ AwEBAgMAAQEDAAEBAwABAQEFAQoBzQH/AwEBAhgAAwQBBQMsAUQD8gH/AwMB/wMDAf8D3wH/A7MB/wPs
+ Af8DhQH/A1oBvQMqAUADBQEHUAADAwEEAyMBNANxAfwD5gH/A0QB/wOUAf8DqAH/A6UB/wODAf8D3gH/
+ AxoBJNsABAEBAgMEAQUDCQEMAxUBHQMmATkDNQFXA1sB8QM5Af8DLAH/AZ4BmgGYAf8BgQFlAWMB/wMD
+ Af8DAwH/ARIBEQESAf8DAwH/Ab4BuAG1Af8BuwG0AbIB/wFPAk0B/wHmAeAB3gH/AeIB3AHaAf8B3QHX
+ AdUB/wGfAZwBmgH/AdEBygHHAf8ByAHBAb4B/wGlAZ8BnAH/AwMB/wGBAYIBgQH/AToBOwE6Af8DRAH/
+ AlEBUAH/A14B/wJlAWQB/wFaAlsB/wNIAYYDHwEsAwoBDQMEAQUDAQECAwABAQMAAQEDAAEBHwABAQMA
+ AQEDAgEDAwYBCAMRARcDIgExAzIBUQM/AWwDWgHFAzMB/wOUAf8CBgEFAf8BnAGXAZUB/wHMAcgBxgH/
+ Ac4BygHHAf8BuQGyAa8B/wG5AbIBrwH/AwMB/wNHAf8DKQH/AyMB/wE+AVEB6AH/AScBPAHhAf8BDwEn
+ AdcB/wEDARoB0QH/ARoBGwEtAf8BPAI9Af8DTAH/A1sB/wNnAf8DZwH/A2EB7gM+AWoDGAEiAwkBDAMD
+ AQQDAAEBA1wB0QJIAXUB+AMAAQEYAAMVAR0D5QH/A/4B/wMeAf8DIwH/AwMB/wP2Af8DtwH/A+cB/wNB
+ Af8DUgGkAycBOwMEAQVIAAMCAQMDIQEwA18B8wP1Af8DxQH/A4MB/wOuAf8DvAH/A8cB/wOrAf8DyAH/
+ AxgBIdcABAEBAgMFAQcDDgETAx0BKQMuAUcDJgH/ASsCLQH/AVUCVwH/AbsBtAGxAf8BwAG5AbcB/wMD
+ Af8BFwEWARcB/wIuAS8B/wFDAUIBQwH/A04B/wMDAf8BwAG6AbgB/wG+AbYBtAH/AVkCVwH/AeMB3gHc
+ Af8B4AHYAdcB/wFkAmIB/wHTAc0BygH/AeEC4AH/AcEBugG3Af8BtAGuAasB/wGnAaEBngH/AwMB/wOP
+ Af8DOgH/AzsB/wFHAkgB/wJWAVcB/wFcAVsBXAH/A1UB/wNMAZIDLQFFAw0BEQMFAQcDAgEDAwABAQMA
+ AQEDAAEBFwABAQMCAQMDBAEGAwwBEAMbASYDMAFMA0EBcgMlAf8BRAJFAf8DAwH/AcABuwG5Af8BQAE/
+ AT0B/wMDAf8DAwH/AwoB/wMDAf8BvQG4AbUB/wG6AbQBsQH/AVECTwH/AecB4QHgAf8B5AHeAdwB/wHf
+ AdkB1wH/ATwBSwHnAf8BIQE3Ad8B/wEOASUB1gH/AQMBGQHRAf8BBQEHAboB/wGTApQB/wE7AjwB/wFG
+ AUcBRgH/A1MB/wNgAf8DgQH/AVoCWwH/A04BmQMnAToDDQERAxABFgEyAT8BmAH+AxMBGgMAAQEDAAEB
+ FAADUQGgA+oB/wPPAf8D+wH/AzQB/wMlAf8DAwH/A/QB/wO6Af8D4wH/AwUB/wNGAX4DJAE2AwMBBEAA
+ AwEBAgMfAS0DYQHkA/AB/wPQAf8DyAH/A4gB/wO8Af8DyQH/A9MB/wO/Af8DowH/AyEBMNMABAEBAgMF
+ AQcDEQEXAyIBMgM3AVsBLQEsAS0B/wEoAioB/wNYAf8CCAEHAf8BwAG5AbYB/wHEAb0BuwH/AUUBRgFF
+ Af8DTwH/A1MB/wJVAVQB/wFUAlMB/wMDAf8BwwG9AboB/wHAAbkBtwH/AVACTgH/AeEB2wHZAf8B3AHV
+ AdMB/wFaAVYBVQH/AdUB0gHRAf8BxgG+AbsB/wG5AbIBrwH/AawBpgGjAf8DAwH/AcABuQG2Af8BvwG5
+ AbUB/wOOAf8DMQH/AzQB/wFDAUQBQwH/A0wB/wNQAf8DUQH/A04BlQMxAU0DDQESAwUBBwMBAQIDAAEB
+ AwABARMABAEBAgMHAQoDEwEaAyUBNwM4AV0DKQH/AS0CLgH/AVwCXQH/AbsBtQGzAf8BvwG6AbcB/wMD
+ Af8DFQH/AywB/wNAAf8DTgH/AwMB/wG/AboBuAH/AbwBtgG0Af8BWwJZAf8B5QHfAd4B/wHhAdoB2QH/
+ AYsCiQH/AasBpwHPAf8BGgExAd0B/wEKASIB1AH/AQMBGAHQAf8BAwEXAc8B/wMDAf8DUAH/ATwCPQH/
+ Az4B/wNKAf8DWQH/A14B/wFSAlMB/wNTAagDNQFXAQMBFAHVAf8BAwERAdUB/wMCAQMDAAEBAwABAQMA
+ AQEQAANdAdIDCQH/A6cB/wPUAf8DsAH/AzMB/wMiAf8DAwH/A+kB/wPAAf8D3AH/AwMB/wM9AWcDIgEx
+ AwIBAzgAAwIBAwMdASoDWwHIA+UB/wOJAf8DSQH/A+wB/wNMAf8DswH/A9AB/wPUAf8DoQH/A8MB/9cA
+ BAEBAgMLAQ8DIAEvAzwBZgEqAiwB/wOeAf8DAwH/AcgCxAH/AS4BKgEpAf8BwwG8AbkB/wHGAcEBvgH/
+ A1QB/wNTAf8CUwFSAf8CVQFUAf8DjAH/AwMB/wHGAcABvQH/AcMBvAG6Af8DAwH/AeMB3gHdAf8B3QHW
+ AdUB/wHdAdgB1gH/AeIB3wHeAf8B4QHdAdwB/wHmAeQB4gH/AQgCBgH/AcMBvQG5Af8BwwG9AbkB/wHD
+ AbwBuQH/AVUBUgFQAf8DPAH/AykB/wM1Af8DQAH/AUQBQwFEAf8BJQEnASYB/wNDAf8DTAGSAzEBTQMN
+ AREDBAEFAwABAQMAAQEDAAEBCwABAQMCAQMDBwEJAxUBHQMqAUEDRAF5Ay4B/wEpAisB/wGJAooB/wMD
+ Af8BvwG5AbcB/wHDAb0BuwH/A0cB/wNRAf8DVQH/A1YB/wNVAf8DAwH/AcIBvQG7Af8BvwG5AbcB/wFS
+ AlEB/wHiAdsB2gH/Ad0B1gHUAf8BWQFVAVQB/wHVAdIB0QH/AUoBVgHpAf8BCQEhAdMB/wEDARcBzwH/
+ AQMBFwHPAf8BAwEFAaUB/wGvAakBpwH/A1gB/wEyATMBMgH/AzUB/wNGAf8DTwH/A1QB/wNSAf8CWwFk
+ AfEBAwENAdwB/wMqAUEDBwEJAwIBAwMAAQEDAAEBAwABARAAAyEB/wMjAf8DrgH/A9cB/wNeAf8DNAH/
+ Ax8B/wMDAf8D4wH/A8MB/wPWAf8DAwH/AzgBXQMeASsDAQECMwABAQMbASYDWgG9A9oB/wOSAf8DjwH/
+ A48B/wPOAf8D2QH/A1QB/wONAf8DhgH/A4gB/wNUAabTAAEBAwABAQMCAQMDEgEYAzEBTQE/AkEB/wMD
+ Af8BygHHAcUB/wHRAc4BzQH/AdYB0wHSAf8BEgEOAQ0B/wHGAcABvQH/AckBwwHBAf8CVgFVAf8DlAH/
+ AY0BjgGNAf8DYwH/Ak4BTQH/Ay8B/wHJAcIBwAH/AcYBwAG9Af8BxgHAAb0B/wGrAaUBogH/AboBtAGy
+ Af8BygHEAcEB/wHNAccBxAH/Ac8BygHIAf8B0QHNAcoB/wHOAckBxgH/AcgBwQG/Af8BxgG/Ab0B/wHG
+ AcABvQH/AcYBwAG9Af8BIAEhASAB/wMnAf8DJwH/ATcBOAE3Af8DOQH/AToCOwH/AjoBOwH/A1EBnwNI
+ AYMDJwE7AwcBCgMBAQIDAAEBAwABAQsAAQEDAgEDAw4BEwMoAT0DSAGEASwCLgH/A7MB/wMDAf8B1AHR
+ AdAB/wEvASsBKgH/AcIBvAG6Af8BxQHAAb4B/wNWAf8DVQH/A1UB/wNXAf8DkQH/AwMB/wHFAb8BvQH/
+ AcIBvAG6Af8DAwH/AegB4gHhAf8B4QHbAdkB/wHkAeAB3gH/AekB5wHlAf8B8gLwAf8BGwEwAdgB/wED
+ ARwBzwH/AQMBFgHPAf8BAwEXAdAB/wEtASwBoQH/AY8BiwGJAf8BQQJCAf8DKgH/AzYB/wNCAf8DRQH/
+ ARoBGwEcAf8BBAEeAeAB/wEDARoB0AH/AzgBXgMRARcDBAEGAwABAQMAAQEDAAEBEAADFAEbAwMB/wNK
+ Af8DtQH/A9kB/wMxAf8DMwH/AxwB/wMDAf8D0wH/A8YB/wPVAf8DAwH/AzgBXAMaASUDAAEBKwABAQMZ
+ ASMDUgGjA8UB/wOYAf8DjgH/A7EB/wO3Af8DWwH/A9EB/wP1Af8D4AH/A+UB/wNgAevXAAEBAwABAQMD
+ AQQDEAEWA4cB/wE2AjQB/wG/AbwBuwH/AYsCiQH/A4cB/wHZAdUB1AH/AwMB/wHJAcMBwAH/AcwBxgHE
+ Af8BVwFYAVcB/wFIAkkB/wMwAf8DDQH/AwMB/wHZAdYB1QH/AdYB0QHQAf8B2wHXAdUB/wHhAd8B3QH/
+ AekB5gHlAf8B8AHvAe4B/wH3AvYB/wH8AfsB+gH/Af0B/AH6Af8B/AH7AfoB/wL7AfoB/wHfAdwB2gH/
+ AcsBxQHCAf8ByQHDAcEB/wHJAcMBwAH/AwMB/wIsASsB/wEhAiIB/wMtAf8DMwH/AzQB/wM1Af8DXgHs
+ A0kBhwM5AV8DFgEfAwMBBAMAAQEDAAEBBwABAQMAAQEDAwEEAxYBHgNEAXkBVQJXAf8DAwH/AcsByAHH
+ Af8B0gHPAc4B/wHXAdQB0wH/AREBDQEMAf8BxQG/Ab0B/wHIAcMBwQH/A2IB/wOTAf8DigH/A2EB/wNM
+ Af8BLwEwAS8B/wHIAcIBwAH/AcUBvwG9Af8BxgHAAb0B/wG0Aa4BrAH/AcABuwG4Af8BywHFAcMB/wHO
+ AckBxwH/AdEBzQHLAf8B0AHMAc4B/wESASgB0gH/AQMBFgHPAf8BAwEUAc8B/wEDARcB0QH/AYEBZgGB
+ Af8BHwIeAf8DKQH/AygB/wM5Af8CKwE1Af8BDQEmAd8B/wEDARIB0AH/A1cBuANMAZMDLgFHAwoBDQMC
+ AQMDAAEBAwABARQAAz4BagMDAf8DigH/A7sB/wPfAf8DMwH/AzIB/wMYAf8DAwH/A8AB/wPHAf8DxgH/
+ AwMB/wM2AVkDFwEgJwABAQMXASADSAGGA7sB/wOhAf8DjQH/A7IB/wO8Af8DnQH/A4sB/wOJAf8DggX/
+ A10Byt8AAQEDAgEDAVsCXAH/AYgBhQGDAf8BwwHAAb4B/wOHAf8DlAH/AdkB1gHVAf8B3wLaAf8BGgEW
+ ARUB/wHNAccBxAH/Ac0BxwHFAf8BngGcAZsB/wG4AbYBtQH/AegB5gHlAf8B8AHuAe0B/wH5AvgB/wH7
+ AvkB/wH5AvgB/wH6AfkB+AH/AvkB9wH/AvkB9wH/AfkC+AH/AvkB9wH/AfoB+AH3Af8B+gH5AfgB/wL5
+ AfgB/wH6AfkB9wH/AfoB+QH4Af8B1AHOAcwB/wHNAccBxAH/Ac0BxwHEAf8BIgEhASAB/wMxAf8DIwH/
+ AycB/wIzATIB/wEyATEBMgH/ASMBJAElAf8BLAErASwB/wNHAYADOQFfAyMBNAMKAQ0DAgEDAwABAQcA
+ AQEDAAEBAwMBBAMUARwBkAKRAf8BgwGBAWcB/wG4AbYBtQH/AVYCVQH/A4cB/wHbAdcB1gH/AwMB/wHJ
+ AcMBwQH/AcwBxgHEAf8DTQH/A0EB/wMqAf8DAwH/AwMB/wHaAdYB1QH/AdgB1AHSAf8B3gHaAdkB/wHl
+ AeIB4QH/AewB6wHqAf8B9AHzAfIB/wH6AvkB/wH8AvoB/wH8AfsB+gH/AfwC+gH/AeMB4gH2Af8BBAEc
+ AdAB/wEDAQ4BzAH/AQMBFwHRAf8BDQEfAccB/wMDAf8DLgH/AyMB/wIiASUB/wEQASgB4gH/AQMBEgHT
+ Af8BFQEbAbsB/wNMAfUDTgGWAz4BagMbASYDBAEGAwABAQMAAQEYAANXAbcDAwH/A58B/wPBAf8D6QH/
+ AzQB/wMvAf8DFQH/AwMB/wOvAf8DxgH/A8EB/wMDAf8DNQFXAxQBGx8AAQEDFgEeAz4BagOtAf8DqgH/
+ A4sB/wOzAf8DvAH/A5sB/wOIAf8DmQH/A1cB/wPlAf8DQgF24wABAQMkATYBMwIyAf8BvwG7AboB/wG8
+ AboBuQH/A7MB/wHWAdMB0gH/Aa0CqwH/AwMB/wHVAdABzgH/Ad4B2gHYAf8B6wHpAecB/wH7AfoB+QH/
+ AfcB9gH1Af8B9wH2AfUB/wL3AfYB/wH3AfYB9QH/AfcB9gH1Af8B+AH3AfUB/wH4AfcB9gH/AfgB9gH1
+ Af8C9wH1Af8B+AH3AfUB/wH4AfYB9QH/AfcC9gH/AfgB9wH1Af8B9gHzAfAB/wH4AfcB9gH/AfgB9wH2
+ Af8B3AHYAdYB/wHRAcoByAH/AdEBywHIAf8BjgKJAf8CNgE1Af8DJgH/AiYBJQH/ATUCNgH/AjMBNAH/
+ ARoBGwEcAf8DLAH/A0ABcQMzAVMDJAE1AxEBFwMDAQQDAAEBCwABAQMCAQMDgQH/AaABnQGbAf8BxQHC
+ AcAB/wOHAf8DmgH/AdkB1QHUAf8B4QHdAdwB/wEpASUBIwH/AcwBxwHEAf8BzQHIAcUB/wHhAd4B3QH/
+ AeUB4wHiAf8B6AHnAeUB/wHzAfIB8QH/AfwC+wH/AfoC+AH/AfoC+AH/AfoC+AH/AfoC+AH/AfoB+QH4
+ Af8B+gH5AfgB/wH6AfkB+AH/AfoB+QH4Af8B+wH5AfgB/wH7AfkB+AH/AfsB+QH4Af8B+wH5AfgB/wED
+ AQ8BzgH/AQMBEAHLAf8BCQEhAdMB/wELARcBsAH/AyMB/wMZAf8BEAEpAeQB/wEDAREB2AH/AQMBCwHL
+ Af8BJQImAf8DLQH/A0sBjgM9AWgDJgE5AwsBDwMCAQMDAAEBHAADXgH8AwMB/wOYAf8DyAH/A/QB/wM0
+ Af8DLgH/AxEB/wMDAf8DogH/A8YB/wOxAf8DAwH/AzMBUgMKAQ0YAAMUARsDNwFaA5wB/wOyAf8DigH/
+ A7QB/wO8Af8DlwH/A4oB/wOaAf8DWQH/A+0B/wMzAVLoAAGHAogB/wHUAc4BzAH/AacCpQH/A/AB/wMD
+ Af8BLAEpAScB/wHfAdsB2QH/AewB6QHoAf8B+QL3Af8B9QH0AfIB/wH1AfQB8gH/AfUC8wH/AfYB9AHz
+ Af8B9QH0AfMB/wH1AfQB8wH/AfUB9AHzAf8B9QH0AfMB/wH1AfQB8wH/AfYB9AHyAf8B9gH0AfMB/wH2
+ AfQB8wH/Ad4BxwG8Af8BvwGGAVEB/wHZAbABmwH/AeEBugGnAf8B4wG8AakB/wHoAd0B1wH/AvUB9AH/
+ AeEB3QHcAf8B1AHOAcwB/wHUAc4BywH/AbQBrwGtAf8CPQE8Af8DJQH/AyQB/wM5Af8DOAH/AicBJgH/
+ AS8BMAEvAf8DOAFcAysBQgMdASkDEgEYAwUBBw8AAQEDOwFlATACLgH/AcABvQG8Af8BwgHAAb4B/wG9
+ ArwB/wHiAd8B3gH/AWICXwH/AQsBBwEGAf8B1gHSAdAB/wHgAdwB2wH/Ae4B7AHrAf8B+gH5AfgB/wH4
+ AfYB9QH/AfgB9gH1Af8B+AH2AfUB/wH4AfYB9QH/AfgB9gH1Af8B+AL2Af8B+AL2Af8B+AL2Af8B+AH3
+ AfYB/wH5AfcB9gH/AfkB9wH2Af8B+QH3AfYB/wH5AfcB9gH/AeMBzgHFAf8B+AH2AfUB/wH5AfcB9gH/
+ AdIBzgHXAf8BAwETAcgB/wEDAQ8BxwH/AQQBGwHQAf8BAwEIAaMB/wEDAR0B2wH/AQMBDwHTAf8CAwHI
+ Af8DMgH/AR0CHgH/Ay0B/wNFAX0DNwFaAyUBNwMSARkDBAEFAwABASAAA18B+wMDAf8DnAH/A88B/wP8
+ Af8DNQH/AywB/wMNAf8DLAH/A6EB/wPFAf8DtwH/AxgB/wMgAS4UAAMSARgDNwFbA5oB/wO4Af8DhgH/
+ A7QB/wO8Af8DmAH/A40B/wOZAf8DYgH/A/AB/wMcASfsAAEZAhcB/wHYAdMB0AH/AdgB0gHQAf8B2QHT
+ AdEB/wHnAeQB4wH/AfgC9gH/AfIC8AH/AfIB8QHvAf8B8gHxAfAB/wHyAfEB7wH/AfIB8QHvAf8B8gHx
+ Ae8B/wHyAfEB8AH/AfMB8QHwAf8B8gHxAfAB/wHyAfEB8AH/AfEB7gHsAf8ByAGeAYsB/wHFAY0BWAH/
+ AdEBmwGBAf8B2AGjAYcB/wHaAaQBiQH/AdsBqAGOAf8B4wG9AakB/wHjAbwBqQH/AeIBvAGoAf8B3QHI
+ Ab4B/wHzAfIB8AH/AecB5AHiAf8B2AHTAdAB/wHYAdIB0AH/AdIBzgHLAf8DRQH/AyUB/wMiAf8DQAH/
+ AzEB/wEzAjQB/wM1Af8DLgFIAyABLwMUARwDDQERAwUBBwMAAQEMAAGGAocB/wHUAc8BzAH/AWIBYAFf
+ Af8B8QLwAf8DAwH/AVYBUgFQAf8B4QHdAdsB/wHvAe0B7AH/AfcB9gH1Af8B9QHzAfIB/wH1AfMB8gH/
+ AfUB8wHyAf8B9gLzAf8B9gLzAf8B9gH0AfMB/wH2AfQB8wH/AfYB9AHzAf8B9gH0AfMB/wH2AfQB8wH/
+ AfYB9AHzAf8B9gH0AfMB/wHLAaIBjwH/AcIBiwFXAf8B3AG0AaAB/wHhAbsBqAH/AeMBvQGpAf8B6AHb
+ AdYB/wH2AfQB8wH/AeEB3gHcAf8B1AHPAcwB/wEQASYBzQH/AQMBBAHBAf8BAwEGAcIB/wIDAcEB/wID
+ AcAB/wEvATABZwH/AzgB/wEpAioB/wMxAf8DPAFmAy0BRgMeASsDEgEYAwYBCCgAA1QB/wMFAf8DnAH/
+ A9YB/wPxAf8DNAH/AyoB/wMKAf8DXAH/A5YB/wPBAf8DpgH/AywBQwMBAQIMAAMQARYDMQFOA5QB/wPB
+ Af8DhAH/A7QB/wO7Af8DlwH/A5EB/wOWAf8DgQH/A/EB/wMUARzsAANKAYkB3AHWAdQB/wHcAdYB1AH/
+ Ad4B2QHXAf8B8QLvAf8B7wHuAewB/wHvAe4B7AH/AfAC7QH/Ae8B7gHtAf8B8AHuAe0B/wHwAe4B7AH/
+ Ae8B7gHsAf8B7wHuAewB/wHrAeQB4AH/AbwBgwFOAf8BzAGVAWAB/wHWAaABhgH/AdoBpQGJAf8B2gGl
+ AYoB/wHZAaQBiQH/AdgBowGIAf8B1wGiAYcB/wHXAaEBhgH/AdwBrgGWAf8B4QG6AacB/wHgAbsBpwH/
+ AeABuwGmAf8BxgGgAY8B/wHxAe8B7gH/AesB6AHnAf8B2wHWAdQB/wHbAdYB1QH/AdwB1gHVAf8DTAH/
+ AyQB/wMeAf8DRwH/AwMB/wMDAf8DAwH/A04BmAMUARwDDAEQAwUBBwMDAQQDAAEBDAABIgIhAf8B1wHS
+ AdAB/wHXAdIB0AH/AdsB1gHVAf8B6QHmAeQB/wH6AvkB/wHzAfEB8AH/AfMB8QHwAf8B8wHxAfAB/wHz
+ AfEB8AH/AfMB8QHwAf8B8wHxAfAB/wHzAfEB8AH/AfMB8QHwAf8B8wHxAfAB/wHzAfEB8AH/AfEB7QHr
+ Af8BuQGBAU4B/wHKAZIBXwH/AdQBnwGDAf8B2QGkAYgB/wHZAaQBiQH/AdoBpwGNAf8B4gG9AakB/wHj
+ AbwBqQH/AeIBvAGoAf8B3AHHAb0B/wH0AfIB8QH/AeYB4wHiAf8BpAGhAZ8B/wEDAQQBvwH/AgMBwwH/
+ AgMBwQH/AgMBvwH/AgMBoQH/AzEB/wMsAf8DNgH/AzYB/wMxAU8DIgExAxQBHAMNAREDBQEHAwABASgA
+ A4wB/wMcAf8DngH/A9oB/wPZAf8DMwH/AycB/wMGAf8DxQH/A54B/wOmAf8DVQG1AxEBFwgAAw4BEwMw
+ AUwDkQH/A8YB/wOCAf8DtgH/A7wB/wOVAf8DlQH/A5QB/wOPAf8D9gH/9AADVgH0Ad8B2gHYAf8B3wHa
+ AdgB/wHoAeQB4wH/AUUBPwE9Af8B7AHqAekB/wHsAesB6QH/AewB6wHpAf8B6wHpAegB/wHUAbcBqgH/
+ AcQBjAFXAf8B0QGaAWUB/wHYAaMBiAH/AdsBpgGMAf8B2wGmAYsB/wHaAaQBiQH/AdkBpAGIAf8B2AGj
+ AYgB/wHXAaIBhwH/AdcBoQGFAf8B1gGhAYUB/wHVAaABhAH/AdMBnwGDAf8B3wG6AaYB/wHgAboBpgH/
+ Ad4BugGmAf8B3gG5AaUB/wGyAWIBSAH/Ae4B7AHrAf8B7gHsAesB/wHfAdoB2AH/Ad8B2gHYAf8B3wHa
+ AdgB/wNVAf8DJAH/Ax4B/wNMAf8DAwH/AwMB/wMDAf8DVAH3AwoBDQMEAQUDAgEDAwABAQwAA00BkQHb
+ AdYB1AH/AdsB1gHUAf8B3gHZAdgB/wHzAfEB8AH/AfAB7gHtAf8B8AHuAe0B/wHwAe4B7QH/AfAB7gHt
+ Af8B8AHuAe0B/wHwAe4B7QH/AfAB7gHtAf8B8AHuAe0B/wHaAcIBtwH/AcEBiAFVAf8BzgGXAWUB/wHX
+ AaIBhwH/AdoBpQGJAf8B2gGlAYkB/wHZAaQBiAH/AdgBowGIAf8B1wGiAYcB/wHXAaEBhgH/AdwBrgGX
+ Af8B4QG6AaYB/wHhAbsBpwH/AeABugGmAf8BxAGeAYwB/wHaAdgB1wH/AQkBDQG7Af8BAwENAeMB/wED
+ AQcB2AH/AQMBBAHOAf8CAwHFAf8CAwHDAf8CAwHBAf8CAwGPAf8DAwH/AwMB/wMDAf8DUQGiAxYBHgMM
+ ARADBQEHAwMBBAMAAQEsAANPAf8DSQH/A6EB/wPeAf8DlAH/AzAB/wMkAf8DAwH/A98B/wPoAf8DuQH/
+ AzEBTgMLAQ8DDQERAzABTAOJAf8DyAH/A2YB/wO2Af8DvAH/A5YB/wOXAf8DkAH/A5oB/wPlAf/4AAFA
+ AkIB/wHjAd4B3AH/AeQB3gHcAf8B8QHvAe4B/wFMAUYBQwH/AUgBQgFAAf8BtQGFAVYB/wHfAbQBoAH/
+ AeUBwAGtAf8B5wHBAa4B/wHmAcEBrgH/AeEBtAGdAf8B2gGkAYkB/wHYAaMBiAH/AdgBogGHAf8B1wGh
+ AYYB/wHWAaEBhQH/AdUBoAGEAf8B1AGfAYMB/wHTAZ4BggH/AdMBnAGBAf8B0QGcAWUB/wHQAZsBZQH/
+ Ad8BuwGnAf8B3gG5AaYB/wHdAbkBpgH/Ad0BuAGlAf8BtAFkAUkB/wHqAegB5wH/AfMB8QHwAf8B4wHf
+ AdwB/wHkAd4B3QH/AeQB3gHdAf8DXQH/AyIB/wMdAf8BUQJSAf8DAwH/Aw4B/wMdAf8DNAH/AwEBAhgA
+ A1QB9wHfAdoB2AH/Ad8B2gHYAf8B6AHkAeMB/wFIAUIBPwH/Ae0B6gHpAf8B7QHqAekB/wHtAeoB6QH/
+ AesB5wHlAf8BxwGdAYkB/wHIAZIBXwH/AdMBnAGCAf8B2gGkAYkB/wHbAaYBiwH/AdoBpQGKAf8B2QGk
+ AYkB/wHZAaMBiAH/AdgBogGHAf8B1wGhAYYB/wHWAaEBhQH/AdUBoAGEAf8B1AGeAYMB/wHTAZ4BggH/
+ AeABuwGnAf8B3wG6AaYB/wHeAbkBpQH/AdcBsgGgAf8BUAE8AYYB/wEtAUAB4AH/AR4BNQHoAf8BCQEj
+ AeUB/wEDARAB5AH/AQMBCAHZAf8BEgEfAdUB/wEoASkBVQH/AQMBCQHKAf8BAwEEAc4B/wIDAa8B/wMD
+ Af8DBgH/A08B+wMJAQwDAwEEAwEBAgMAAQEwAAMCAQMDGwH/A5IB/wOjAf8D4QH/A1YB/wMwAf8DIAH/
+ AywB/wPIAf8D5gH/A10B8AM2AVkDPQFoA4YB/wPLAf8DYgH/A7UB/wO7Af8DlQH/A5sB/wOMAf8DqQH/
+ A9MB/wMAAQH4AANIAf8B5wHiAeAB/wHmAeIB4AH/AfUB8wHyAf8BVQFQAU0B/wFQAUoBSAH/AZ4BWwFH
+ Af8B5gHAAa0B/wHmAcEBrgH/AeUBwAGuAf8B5QHAAa0B/wHjAb0BqgH/AdcBogGFAf8B1gGhAYUB/wHW
+ AaABhAH/AdQBnwGDAf8B0wGdAYIB/wHSAZ0BgQH/AdEBmwFlAf8B0AGaAWQB/wHPAZkBYwH/Ac4BmAFi
+ Af8BzQGXAWEB/wHeAboBqAH/AdwBugGnAf8B3AG5AaYB/wHbAbkBpQH/AboBhwFUAf8B6AHlAeMB/wH1
+ AfQB8wH/AecB4gHgAf8B5wLhAf8B5wHiAeAB/wJiAWEB/wEgAh8B/wMcAf8BVAJTAf8DAwH/Ax0B/wEl
+ AiYB/wM3Af8cAAFDAkUB/wHjAd4B3AH/AeMB3gHcAf8B8QHvAe4B/wFPAUkBRgH/AUoBRQFCAf8BsAFn
+ AVEB/wHjAb0BqwH/AecBwQGuAf8B5wHCAa4B/wHmAcEBrgH/AeEBtQGfAf8B2QGkAYkB/wHZAaMBiAH/
+ AdgBogGHAf8B1wGhAYYB/wHWAaABhQH/AdUBoAGEAf8B1AGeAYMB/wHTAZ0BggH/AdIBnAGBAf8B0QGb
+ AWcB/wHQAZoBZgH/Ad8BugGnAf8B3gG5AaYB/wGqAY4BgQH/ASYBMAG7Af8BYAGHAe4B/wFSAWMB7AH/
+ ATcBSwHqAf8BHAE0AecB/wEFASAB5gH/ASMBLwHgAf8CYAFfAf8DJAH/Ax8B/wE2AUkB5wH/AQMBGQHl
+ Af8BDQEkAdwB/wIMASsB/wMzAf8DAQECRAADAwH/A8IB/wOgAf8D5AH/A5wB/wMqAf8DtwH/A+8B/wPU
+ Af8D0QH/A38B/gOEAf8DzQH/A14B/wO2Af8DuwH/A5YB/wOfAf8DhwH/A7UB/wO5Af//AAEAAUYCRwH/
+ AeoB5QHjAf8B6gHlAeQB/wH2AfQB8wH/AV0BWAFVAf8BWQFUAVEB/wGMAVQBRgH/AeQBvwGsAf8B5AG/
+ AawB/wHjAcABrQH/AeMBvwGsAf8B4wG/AawB/wHUAZ4BggH/AdMBnQGCAf8B0gGcAYEB/wHRAZsBZQH/
+ AdABmgFkAf8BzwGZAWMB/wHOAZgBYgH/Ac0BlwFhAf8BzAGWAV8B/wHKAZQBXgH/AckBkwFdAf8B3AG6
+ AagB/wHcAboBqAH/AdsBuQGnAf8B2gG5AacB/wHAAZIBYAH/AeQB4QHgAf8B+QH3AfYB/wHqAeYB5AH/
+ AeoB5QHkAf8B6gHlAeQB/wKBAWUB/wMfAf8BGwIaAf8BUwJUAf8DAwH/Ax8B/wMeAf8DOgH/HAABSQJK
+ Af8B5gHiAeAB/wHmAeIB4AH/AfQB8wHyAf8BWAFSAVAB/wFSAUwBSgH/AZ0BXQFJAf8B5gHBAa0B/wHl
+ AcEBrgH/AeUBwAGuAf8B5QHAAa0B/wHjAb4BqwH/AdcBoQGGAf8B1gGgAYUB/wHVAaABhAH/AdQBngGD
+ Af8B0wGdAYIB/wHSAZwBgQH/AdEBmwFnAf8B0AGaAWYB/wHPAZkBZQH/Ac4BmAFkAf8BzQGXAWIB/wHB
+ AaIBkgH/AVABVAHKAf8BhQGTAewB/wGKAZgB7wH/AYEBkAHuAf8BYQGJAe4B/wFOAWAB7QH/ATMBSAHp
+ Af8CSgHVAf8B5gHiAeAB/wNlAf8CIgEhAf8DHgH/A1UB/wEQAREBoAH/AS4BRAHpAf8BPwFTAesB/wEJ
+ AQsBtgH/AxoBJUQAAy8BSQMDAf8D6gH/A6AB/wPiAf8DxAH/A4kB/wNiAf8D2gH/A8MB/wPVAf8DoQH/
+ AwMB/wO1Af8DuwH/A5cB/wOfAf8DgwH/A8AB/wOvAf//AAUAA0QB/wHtAekB6AH/Ae0B6QHoAf8B9wL0
+ Af8BZAFfAVwB/wFhAVwBWQH/AWUBVwFQAf8B4gG9AakB/wHhAb0BqgH/AeEBvQGqAf8B4QG9AasB/wHg
+ Ab0BqgH/AdABmwFlAf8B0AGaAWQB/wHOAZkBYgH/Ac0BmAFhAf8BzAGWAWAB/wHLAZUBXwH/AcoBkwFe
+ Af8ByQGTAVwB/wHHAZIBWwH/AcYBkAFZAf8BxQGPAVgB/wHcAbsBqgH/AdsBuwGqAf8B2wG6AakB/wHa
+ AboBqQH/AcoBogGOAf8B4AHeAdwB/wH7AvkB/wHtAeoB6AH/Ae4B6QHnAf8B7QHpAecB/wOFAf8DHQH/
+ AxkB/wFSAlEB/wMDAf8DFAH/AQ8BEAEPAf8DOwH/HAADSQH/AeoB5gHkAf8B6gHmAeQB/wH2AfQB8wH/
+ AWABWwFYAf8BWwFWAVMB/wGKAVYBSQH/AeQBvwGsAf8B4wG/AawB/wHjAb8BrAH/AeMBvwGsAf8B4gG/
+ AawB/wHTAZ4BggH/AdIBnQGBAf8B0QGcAYEB/wHQAZoBZgH/Ac8BmQFlAf8BzgGYAWQB/wHNAZcBYwH/
+ AcwBlgFiAf8BywGVAWAB/wHJAZQBXwH/AcgBkgFeAf8BTgFfAeMB/wFOAV8B5gH/AV8BhgHpAf8BhwGU
+ Ae0B/wGDAZIB7gH/AWQBjAHuAf8BTwFhAe0B/wHXAdQB4AH/AeoB5gHkAf8B6gHmAeQB/wOBAf8DIQH/
+ AxwB/wNWAf8DAwH/AiABIQH/AYYBjwHtAf8BZAGLAe8B/wEmASwBsQH/AzEBTQMEAQZAAAMNAREDfAH7
+ A/kB/wPmAf8D4gH/A8IB/wOGAf8DiQH/AxwB/wP3Af8DzgH/A70B/wO7Af8DmQH/A6IB/wNjAf8DzAH/
+ A6QB//8ACQABOgI7Af8B8ALrAf8B8AHrAeoB/wH3AfUB9AH/AYQBZQFiAf8BggFjAWAB/wFlAWABXgH/
+ AeABuwGnAf8B4AG6AacB/wHfAboBpwH/Ad8BuwGnAf8B3wG7AakB/wHNAZcBYQH/AcwBlgFgAf8BywGV
+ AV8B/wHJAZMBXQH/AcgBkgFcAf8BxwGRAVsB/wHGAZABWQH/AcUBjwFYAf8BxAGNAVcB/wHDAYwBVQH/
+ AcEBiwFUAf8B2wG8AasB/wHaAbsBqgH/AdoBuwGqAf8B2QG7AaoB/wHUAbQBpAH/AdwB2wHZAf8C/AH7
+ Af8B8AHtAewB/wHwAewB6wH/AfAB7AHqAf8BiQKIAf8DGwH/AxgB/wNOAf8DAwH/AwUB/wMDAf8DOgH/
+ HAABRgJHAf8B7QHpAecB/wHtAekB5wH/AfcB9QH0Af8BZwFiAV8B/wFkAV8BXAH/AWcBWQFTAf8B4gG9
+ AakB/wHhAb0BqgH/AeEBvQGqAf8B4QG9AasB/wHgAb0BqgH/AdABmgFmAf8BzwGZAWUB/wHOAZgBZAH/
+ Ac0BlwFjAf8BzAGWAWIB/wHLAZUBYAH/AckBkwFfAf8ByAGSAV4B/wHHAZEBXQH/AcYBkAFbAf8BxQGP
+ AVoB/wHNAdIB+AH/AUcBWQHjAf8BTQFeAeYB/wFfAYYB6gH/AWABiAHrAf8BhwGOAewB/wH7AfoB+QH/
+ Ae0B6gHoAf8B7QHpAecB/wHtAekB5wH/AoYBhQH/Ax4B/wMbAf8DVAH/AwMB/wMSAf8DDQH/Az0B/wGe
+ AagB8wH/AWEBhwHtAf8CJQGNAf4DIwEzSAAD/gH/A+EB/wPHAf8DpwH/AwMB/wMFAf8DAwH/A7QB/wO6
+ Af8DmgH/A6QB/wNdAf8D0gH/A58B//8ADQADVgH0AfMB7wHtAf8B8wHuAe0B/wH4AfYB9QH/AYoBhQGC
+ Af8BigGFAYIB/wGIAYMBgQH/AdsBtQGhAf8B3AG2AaMB/wHcAbcBpAH/AdwBuAGlAf8B3AG4AaUB/wHO
+ AZsBgQH/AcgBkgFbAf8BxwGRAVsB/wHGAZABWQH/AcUBjwFYAf8BxAGNAVcB/wHCAYwBVQH/AcEBiwFU
+ Af8BwAGJAVIB/wG+AYgBUQH/AcwBowGNAf8B2QG6AakB/wHZAbsBqwH/AdkBuwGrAf8B2QG6AaoB/wHW
+ AbkBqAH/AdoB1wHVAf8B9gL1Af8B9AHwAe4B/wHzAe4B7QH/AfMB7wHtAf8BjAKKAf8DGQH/AxgB/wNJ
+ Af8CTgFNAf8DVQH/AoEBggH/AzgB/xwAATwCPQH/AfAB7AHqAf8B8AHsAeoB/wH3AvUB/wGEAWcBZAH/
+ AYMBZgFkAf8BgQFjAWAB/wHgAboBpgH/Ad8BugGnAf8B3wG6AacB/wHfAboBpwH/Ad4BuwGoAf8BzQGX
+ AWMB/wHMAZYBYgH/AcsBlQFgAf8ByQGTAV8B/wHIAZIBXgH/AccBkQFcAf8BxgGQAVsB/wHFAY4BWgH/
+ AcQBjQFYAf8BwgGMAVcB/wHBAYsBVgH/AdsBuwGrAf8BzQG/Ac8B/wGxAbgB9AH/Aa8BsQHsAf8B0QG1
+ AasB/wHeAdoB2QH/AfwC+wH/AfAB7QHrAf8B8AHsAeoB/wHwAewB6gH/AYoBiQGIAf8DHQH/AxoB/wNR
+ Af8DAwH/AwQB/wMEAf8DPAH/CAADXAHPAUQBUQHnAf8CWgFdAdNIAAPiAf8DwwH/A/0B/wMgAf8DIgH/
+ A6MB/wOlAf8DnQH/A6MB/wNWAf8D1wH/A2IB9v8AEQADVQGyAfUB8QHwAf8B9gHxAfAB/wH5AfcB9QH/
+ AZIBjQGKAf8BkwGOAYwB/wGPAYoBiAH/AdcBsAGbAf8B2QGzAZ8B/wHZAbMBnwH/AdkBswGfAf8B2AGz
+ AaAB/wHTAaoBlQH/AcQBjgFXAf8BwwGNAVYB/wHCAYsBVAH/AcEBigFTAf8BvwGJAVIB/wG+AYcBUQH/
+ Ab0BhgFPAf8BvAGFAU0B/wG6AYMBTAH/AdYBtwGkAf8B1gG2AaUB/wHWAbcBpgH/AdYBtwGmAf8B1gG3
+ AacB/wHUAbYBpgH/AdYB0gHQAf8B7wHtAewB/wH3AfIB8QH/AfUB8QHwAf8B9gHyAfAB/wGOAo0B/wMY
+ Af8DFgH/AUMCRAH/AkYBRQH/A0cB/wNRAf8BNQI0Af8cAANbAfEB8wHvAe0B/wHzAe8B7QH/AfgC9QH/
+ AYsBhgGDAf8BiwGGAYMB/wGIAYMBgQH/AdoBtAGgAf8B3AG2AaIB/wHcAbcBowH/AdwBtwGkAf8B2wG3
+ AaQB/wHOAZwBgQH/AcgBkQFdAf8BxgGQAVwB/wHFAY8BWgH/AcQBjgFZAf8BwwGMAVgB/wHBAYsBVgH/
+ AcABigFVAf8BvwGJAVMB/wG+AYcBUgH/Ac0BpQGOAf8B2QG6AakB/wHZAboBqgH/AdgBugGpAf8B1wG5
+ AaoB/wHWAbgBqAH/AdkB1gHUAf8B9gH1AfQB/wH0AfAB7gH/AfMB7wHtAf8B8wHvAe0B/wOMAf8DGgH/
+ AhsBGgH/A0sB/wNPAf8DVQH/A2UB/wM6Af9XAAEBAw4BEwMwAUwD+wH/A/EB/wP4Af8D5AH/A9oB/wOQ
+ Af8DnAH/A1IB/wPVAf8DXwHo/wAVAANHAYAB9QHwAe8B/wH3AfMB8gH/AfoC9gH/AZsBlwGUAf8BmwGW
+ AZQB/wGYAZMBkQH/AdIBqQGVAf8B1gGvAZoB/wHVAa8BmgH/AdUBrgGaAf8B1QGvAZoB/wHUAa8BmwH/
+ AcABigFTAf8BvwGJAVEB/wG9AYgBUAH/AbwBhgFPAf8BuwGFAU0B/wG6AYMBTAH/AbkBggFLAf8BtwGB
+ AUoB/wG2AYEBSAH/AdIBsQGgAf8B0wGyAaAB/wHTAbIBoAH/AdIBsgGhAf8B0gGzAaIB/wHRAbIBoQH/
+ AdIBzwHMAf8B5QHiAeEB/wH4AfQB8wH/AfcB8wHyAf8B9wHzAfIB/wGQAY8BjgH/AxkB/wMXAf8BPQE+
+ AT0B/wFAAj8B/wFBAkIB/wFIAUkBSAH/AzIB/xwAA1QBrAH1AfEB8AH/AfUB8QHwAf8B+QH2AfUB/wGT
+ AY4BjAH/AZMBjgGMAf8BkAGLAYkB/wHXAa8BmwH/AdkBswGfAf8B2QGzAZ4B/wHYAbMBnwH/AdgBswGg
+ Af8B1AGsAZYB/wHEAY4BWQH/AcMBjAFYAf8BwQGLAVYB/wHAAYoBVQH/Ab8BiAFTAf8BvQGHAVIB/wG8
+ AYYBUAH/AbsBhAFPAf8BugGDAU0B/wHWAbYBpAH/AdUBtQGkAf8B1gG3AaYB/wHVAbcBpgH/AdUBtwGm
+ Af8B1AG2AaYB/wHWAdIB0QH/Ae4B7AHrAf8B9gHyAfEB/wH1AfEB8AH/AfUB8QHwAf8BjgKNAf8DGgH/
+ AxgB/wNGAf8DSAH/A0kB/wNTAf8DNwH/TAADAQECAwoBDQMgAS4DMgFRA6cB/wMDAf8D7wH/A7EB/wO7
+ Af8D7QH/A+4B/wNcAf8DzwH/A2oB+QMCAQP/ABkAAZcClAH/AfkB9QH0Af8B+wL3Af8BoQGcAZkB/wGi
+ AZ0BmwH/AZ4BmgGXAf8BzQGjAY4B/wHSAakBkwH/AdEBqQGTAf8B0QGpAZMB/wHQAagBkwH/AdABqAGT
+ Af8BvQGGAU8B/wG7AYQBTQH/AboBhAFMAf8BuQGBAUoB/wG3AYEBSQH/AbYBZQFIAf8BtAFkAUYB/wG0
+ AWIBRQH/AbIBYQFDAf8BzgGqAZcB/wHNAasBmAH/Ac0BrAGZAf8BzQGsAZkB/wHNAawBmQH/Ac0BrQGa
+ Af8ByQHAAboB/wHcAdkB2AH/AfoB9gH1Af8B+QH1AfQB/wH5AfUB8wH/AZICkQH/AxgB/wEWAhUB/wM3
+ Af8DOQH/AzsB/wJAAT8B/wMvAf8cAANEAXkB7gHrAekB/wH3AfMB8gH/AfkC9gH/AZsBlwGUAf8BnAGX
+ AZQB/wGZAZQBkgH/AdEBqQGUAf8B1gGuAZkB/wHVAa4BmgH/AdUBrgGaAf8B1QGuAZkB/wHUAa4BmgH/
+ AcABigFVAf8BvwGIAVMB/wG9AYcBUgH/AbwBhgFQAf8BuwGEAU8B/wG6AYMBTQH/AbgBggFMAf8BtwGB
+ AUsB/wG2AWcBSQH/AdIBsAGeAf8B0gGxAZ8B/wHSAbEBnwH/AdEBsgGgAf8B0gGyAaEB/wHRAbIBoQH/
+ AdIBzwHNAf8B5AHiAeAB/wH4AfQB8wH/AfcB8wHyAf8B9wHzAfIB/wOPAf8DGwH/AxkB/wNAAf8DQgH/
+ A0QB/wNLAf8DNQH/KAADBwEJAxsBJgMfAS0DHwEtAx8BLQMdASoDHwEsAx8BLQMgAS8DKAE9AzEBTwNS
+ AaEDsgH/A9YB/wOiAf8DnwH/A7gB/wOiAf8DoAH/A/MB/wPyAf8DQgH/AzgBXgMfASwDAQEC/wAVAAE/
+ AT0BPAH/AfoB9gH1Af8B+wH4AfcB/wGjAZ4BnAH/AaUBoQGeAf8BogGeAZwB/wHDAZkBgwH/Ac0BpAGN
+ Af8BzAGiAYwB/wHMAaMBjQH/AcwBowGNAf8BywGiAYwB/wG4AYEBSgH/AbcBgQFIAf8BtQFlAUcB/wG0
+ AWMBRgH/AbMBYgFEAf8BsQFgAUIB/wGwAV8BQQH/Aa4BXQFAAf8BrgFcAT4B/wHIAaMBjwH/AcgBpAGP
+ Af8ByAGkAZAB/wHHAaQBkAH/AccBpQGRAf8BxwGlAZIB/wGiAYMBWgH/AdQB0QHQAf8B+wH3AfYB/wH6
+ AfYB9QH/AfoB9gH1Af8BjwGOAY0B/wMZAf8DFgH/ATICMQH/AzMB/wM0Af8BNwI2Af8DKgH/IAABjwGM
+ AYsB/wH5AfUB9AH/AfoC9wH/AaEBnQGaAf8BowGeAZwB/wGfAZoBmAH/AcwBogGNAf8B0QGoAZMB/wHQ
+ AagBkgH/AdABqAGSAf8BzwGnAZIB/wHPAagBkwH/AbsBhQFPAf8BugGEAU4B/wG5AYIBTAH/AbcBgQFL
+ Af8BtgFnAUoB/wG1AWYBSAH/AbQBZQFHAf8BsgFjAUUB/wGxAWIBRAH/Ac0BqQGWAf8BzAGqAZcB/wHM
+ AasBmAH/AcwBqwGZAf8BzAGqAZgB/wHMAawBmQH/AcYBvAG3Af8B3AHZAdgB/wH6AfYB9QH/AfkB9QH0
+ Af8B+QH1AfQB/wGSAZEBkAH/AxsB/wMYAf8DOQH/AzsB/wM9Af8DQQH/AzEB/yQAAwQBBQMpAT8DQAFu
+ A0ABbwNAAW8DQAFvAzYBWQNAAW4DQAFvA0kBhwNhAeEDkwH/A74B/wPJAf8D1QH/A7IB/wOHAf8DnwH/
+ A5AB/wNkAf8D2AH/A/EB/wP3Af8DKgH/AzgBXAMbASYDAAEB/wARAAE1AjIB/wH6AfYB9QH/AfsB9wH2
+ Af8BwQG+AbwB/wGjAZ8BnAH/AaIBnQGbAf8BtQGFAVEB/wHJAZ0BhgH/AcgBnQGFAf8ByAGdAYUB/wHG
+ AZsBhAH/AcYBmwGEAf8BtAFjAUUB/wGzAWEBRAH/AbEBYAFCAf8BsAFfAUAB/wGvAV0BPwH/Aa4BXAE9
+ Af8BrAFbATwB/wGrAVoBOwH/AaoBWAE6Af8BwwGcAYcB/wHCAZwBhwH/AcIBmwGGAf8BwQGbAYcB/wHB
+ AZwBhwH/AcIBnQGIAf8BhgE1ARoB/wHMAckBxgH/AfsC9wH/AfoB9gH1Af8B+gH2AfUB/wGOAY0BjAH/
+ AxgB/wEXAhYB/wMrAf8BLQEuAS0B/wEvAi4B/wEvATABLwH/AysB/CAAAUABPgE9Af8B+gH2AfUB/wH7
+ AfgB9wH/AaMBngGcAf8BpQGhAZ4B/wGjAZ4BnAH/AcIBlgGBAf8BzQGiAYwB/wHNAaIBjAH/AcwBowGM
+ Af8BywGiAYwB/wHLAaEBiwH/AbcBgQFLAf8BtgFnAUoB/wG1AWYBSAH/AbMBZQFHAf8BsgFjAUUB/wGx
+ AWIBRAH/AbABYAFCAf8BrgFfAUEB/wGtAV4BPwH/AccBogGOAf8BxwGiAY4B/wHHAaMBjwH/AccBowGQ
+ Af8BxwGkAZAB/wHHAaQBkQH/AaEBZwFYAf8B1QHRAdAB/wH7AfcB9gH/AfoB9gH1Af8B+gH2AfUB/wGO
+ Ao0B/wMbAf8DGAH/AzQB/wM2Af8DNwH/AzgB/wMtAf8nAAEBA4QB/wPFAf8DwAH/A70B/wO3Af8CrgGt
+ Af8BXQFaAVUB/wGFAYIBZgH/AZkBmAGWAf8CrQGsAf8D6QH/A78B/wPKAf8D1QH/A9wB/wOcAf8DTwH/
+ A6QB/wPjAf8DPgFqAzcBWwPuAf8D/AH/Ay4B/wM3AVoDFgEfAwABAf8ADQADTwH/AfoB9gH1Af8B+gH3
+ AfYB/wH+Av0B/wGfAZsBmAH/AZ8BmgGYAf8BpwFXATwB/wHEAZcBgQH/AcMBlgFlAf8BwwGWAWQB/wHC
+ AZUBYwH/AcEBlQFjAf8BtwGGAVAB/wGvAV0BPwH/Aa0BXAE+Af8BrAFbATwB/wGqAVkBOwH/AakBWAE5
+ Af8BqAFWATgB/wGnAVUBNwH/AacBVwE5Af8BvAGTAWIB/wG8AZIBYQH/AbsBkgFiAf8BuwGSAWIB/wG6
+ AZMBYwH/AboBkwFiAf8BhwE2ARsB/wHDAcABvQH/AfsB+AH3Af8B+gH2AfUB/wH6AfYB9QH/ApEBkAH/
+ AhkBGAH/ARcCFgH/AScCJgH/AykB/wMmAf8CKwEqAf8DWgHFIAABNgIzAf8B+gH2AfUB/wH7AfcB9gH/
+ AcQBwQG/Af8BowGfAZwB/wGiAZ0BmwH/AbQBhAFRAf8ByAGdAYYB/wHIAZ0BhQH/AccBnAGFAf8BxgGb
+ AYQB/wHGAZsBhAH/AbMBZQFHAf8BsgFjAUUB/wGxAWIBRAH/AbABYAFCAf8BrgFfAUEB/wGtAV4BPwH/
+ AawBXAE+Af8BqgFbAT0B/wGpAVoBOwH/AcIBmwGGAf8BwgGbAYYB/wHBAZsBhgH/AcEBmgGFAf8BwQGb
+ AYYB/wHBAZwBhwH/AYUBNgEcAf8BywHIAcYB/wH7AvcB/wH6AfYB9QH/AfoB9gH1Af8BjgKMAf8DGgH/
+ ARkCGAH/Ay4B/wMwAf8DMQH/AzIB/wNPAfgoAAOFAf0DywH/A8MB/wO8Af8DvQH/A70B/wFcAVgBVAH/
+ AYMBgQFkAf8DKgH/A2EB/wMDAf8D2wH/A8oB/wPUAf8D3gH/A+UB/wPoAf8D6QH/AzABSwgAA1QBpgPg
+ Af8D9gH/A04B/wM1AVcDEwEa/wANAAE8Aj0B/wH6AfYB9QH/AfoB9gH1Af8B/gL9Af8BmgGUAZIB/wGZ
+ AZQBkgH/AZ0BSwEwAf8BvwGQAV4B/wG9AZABXQH/Ab0BjwFcAf8BvAGPAVwB/wG8AY8BWwH/AbsBjgFb
+ Af8BqgFZAToB/wGoAVcBOAH/AacBVgE3Af8BpgFVATYB/wGlAVMBNAH/AaQBUgEzAf8BogFRATIB/wGu
+ AWMBSAH/AbYBjAFZAf8BtQGLAVkB/wG1AYoBWQH/AbQBigFZAf8BtAGKAVgB/wGzAYoBWQH/AYkBOAEb
+ Af8BwAG7AbgB/wH7AvgB/wH6AfYB9QH/AfoB9gH1Af8BkwGSAZEB/wEZAhgB/wMWAf8DJAH/ASUBJgEl
+ Af8DHwH/AyYB/wNMAY8gAAFTAlIB/wH6AfYB9QH/AfoB9wH2Af8B/gL9Af8BnwGaAZgB/wGfAZoBmAH/
+ AaYBWAE8Af8BwwGWAWcB/wHDAZYBZgH/AcIBlQFlAf8BwAGUAWQB/wHAAZUBZQH/AbcBhwFTAf8BrQFe
+ AUAB/wGsAV0BPgH/AasBWwE9Af8BqgFaATwB/wGoAVkBOgH/AacBVwE5Af8BpgFWATcB/wGnAVkBPAH/
+ AbsBkQFiAf8BuwGRAWMB/wG6AZEBYwH/AboBkgFjAf8BuQGSAWMB/wG6AZIBYwH/AYcBOQEcAf8BwwG/
+ Ab0B/wH7AfgB9wH/AfoB9gH1Af8B+gH2AfUB/wGSApEB/wMaAf8DGAH/AykB/wMrAf8DKAH/AywB/wNb
+ AcMsAAPIAf8DxgH/A8UB/wO5Af8DugH/ASMBIQEfAf8DkgH/A4sB/wOzAf8DgQH/AwMB/wPkAf8D1AH/
+ A90B/wPjAf8D5wH/Ax4BKxAAA2EB7gPXAf8D8gH/A10B/wMzAVMDEAEV/wAJAAFLAUwBTQH+AfoB9gH1
+ Af8B+gH2AfUB/wH9AvwB/wGTAY0BiwH/AZIBjQGKAf8BlAFDASgB/wG6AYoBWAH/AbkBigFWAf8BuAGJ
+ AVYB/wG2AYkBVQH/AbYBhwFTAf8BtQGHAVMB/wGmAVUBNgH/AaUBUwE0Af8BowFSATMB/wGiAVABMQH/
+ AaEBTwEwAf8BoAFOAS8B/wGfAU0BLQH/Aa4BgQFMAf8BsAGDAVAB/wGwAYMBUQH/Aa8BgQFPAf8BrgGC
+ AU4B/wGtAYEBTgH/Aa0BgQFOAf8BiQE4ARoB/wG9AbcBtQH/AfsB+QH4Af8B+gH2AfUB/wH6AfYB9QH/
+ AZkClgH/ARoCGQH/AxYB/wMnAf8DJgH/AxwB/wMkAf8DMAFMIAABPAI9Af8B+gH2AfUB/wH6AfYB9QH/
+ Af4C/QH/AZkBlAGSAf8BmQGTAZEB/wGcAU0BMQH/Ab4BkAFfAf8BvQGQAV8B/wG9AY4BXgH/AbsBjgFd
+ Af8BuwGOAVwB/wG6AY0BXAH/AakBWgE8Af8BqAFZAToB/wGnAVcBOQH/AaYBVgE3Af8BpAFVATYB/wGj
+ AVMBNAH/AaIBUgEzAf8BrgFmAUsB/wG2AYsBWwH/AbQBiQFZAf8BtAGJAVoB/wG0AYoBWQH/AbMBiAFZ
+ Af8BswGJAVoB/wGIATkBHAH/AcABuwG5Af8B+wL4Af8B+gH2AfUB/wH6AfYB9QH/AZMCkgH/ARsCGgH/
+ AxgB/wMmAf8DKAH/AyEB/wMoAf8DSgGKLAADjwH/A8cB/wPBAf8DvQH/A7sB/wMDAf8DOgH/Ax8B/wOp
+ Af8DggH/AwMB/wMDAf8D0gH/A9oB/wPiAf8DAQECGAADhwH+A8kB/wPtAf8DhwH/AzEBTwMMARD/AAUA
+ A0oBjAGpAaYBpQH/AfoB9QH0Af8B/AH7AfoB/wGMAYcBhQH/AYwBhwGEAf8BiwFDAS0B/wG2AYUBUQH/
+ AbQBhAFQAf8BswGEAU8B/wGyAYIBTgH/AbEBggFNAf8BsAGBAUwB/wGiAVABMQH/AaEBTwEwAf8BoAFO
+ AS8B/wGfAUwBLQH/AZ0BSwEsAf8BnAFKASoB/wGbAUkBKQH/AasBYwFIAf8BqgFhAUgB/wGqAWEBRwH/
+ AagBYAFGAf8BqAFgAUYB/wGnAWABRgH/AacBXwFFAf8BjQE9ASAB/wG5AbQBsgH/AfsB+QH4Af8B+QL1
+ Af8B+QH2AfQB/wKbAZoB/wMZAf8DFgH/AykB/wMnAf8DFgH/AyUB/wMEAQUgAAFMAk0B/gH4AfQB8wH/
+ AfoB9gH1Af8B/QL8Af8BkgGNAYoB/wGSAYwBigH/AZMBRAEpAf8BuQGKAVgB/wG5AYoBVwH/AbgBiAFX
+ Af8BtgGIAVYB/wG2AYcBVQH/AbUBhgFVAf8BpgFWATcB/wGkAVUBNgH/AaMBUwE0Af8BogFSATMB/wGg
+ AVEBMQH/AZ8BTwEwAf8BngFOAS8B/wGuAWcBTQH/AbABgwFRAf8BrwGCAVEB/wGuAYEBUAH/Aa0BgQFP
+ Af8BrAGBAU8B/wGsAYEBTwH/AYkBOQEcAf8BvAG4AbYB/wH7AfkB+AH/AfoB9gH1Af8B+gH2AfUB/wGZ
+ AZgBlwH/ARwCGwH/AxgB/wMpAf8DKAH/Ax4B/wMmAf8DLgFIMAADywH/A8UB/wO+Af8DvwH/AQsBCgEI
+ Af8DggH/A7EB/wOBAf8DSgH/AycB/wMDBf8D2AH/A9MB/yAAA4MB+wPDAf8D5gH/A2QB/AMwAUsDCQEM
+ /wAFAAFSAk8B/wH3AfQB8wH/AfsB+AH3Af8BiAGDAYEB/wGIAYIBZQH/AYQBUQFFAf8BsAGBAUsB/wGv
+ AWQBSgH/Aa4BYwFIAf8BrgFiAUcB/wGsAWEBRgH/AasBYQFGAf8BngFMAS0B/wGdAUoBKwH/AZwBSQEq
+ Af8BmgFIASgB/wGZAUcBKAH/AZgBRgEmAf8BlwFEASUB/wGmAVwBQgH/AaUBWwFAAf8BpAFbAUAB/wGk
+ AVoBPwH/AaMBWQE+Af8BogFZAT4B/wGhAVgBPgH/AZUBSQEsAf8BtgGxAa4B/wH6AvgB/wH3AfQB8wH/
+ AfcC8wH/AZ4BnQGcAf8BGgIZAf8DIAH/ASwCKwH/AysB/wMOAf8DJwH/AwABASAAA0QBeQGjAaABnwH/
+ AfkB9gH0Af8B/AH6AfkB/wGMAYcBhAH/AYsBhgGDAf8BigFFATAB/wG1AYQBUgH/AbMBhAFRAf8BsgGC
+ AVAB/wGxAYEBTwH/AbABgQFOAf8BrwFnAU0B/wGhAVEBMgH/AaABUAExAf8BngFPAS8B/wGdAU0BLgH/
+ AZwBTAEtAf8BmwFLASsB/wGaAUoBKgH/AaoBZAFKAf8BqQFjAUgB/wGpAWIBSAH/AagBYQFHAf8BpwFh
+ AUcB/wGnAWEBRgH/AaYBYAFGAf8BjQFAASMB/wG5AbQBsgH/AfsB+QH4Af8B+QH2AfQB/wH5AfYB9AH/
+ AZsBmgGZAf8DGwH/AxkB/wMsAf8DKgH/AxgB/wMnAf8DAgEDMAADbgH3A8cB/wPFAf8DvQH/AbICsQH/
+ AwMB/wO8Af8DvQH/A4MB/wMgAf8DAwH/A88B/wPUAf8DJgE5JAADyAH/A8IB/wPgAf8DXAHqAy0BRQMH
+ AQn/AAEAAVICUQH/AfYB8wHxAf8B+AH1AfQB/wGTAY4BiwH/AYYBgQFjAf8BhQFkAWEB/wGsAWABRQH/
+ AaoBXwFDAf8BqgFeAUEB/wGpAVwBQQH/AacBXAFAAf8BpgFbAT4B/wGdAUwBLQH/AZkBRwEnAf8BmAFG
+ ASYB/wGXAUQBJQH/AZUBQwEkAf8BlQFDASIB/wGTAUEBIQH/AaEBVgE6Af8BoAFWAToB/wGfAVQBOQH/
+ AZ4BVAE4Af8BngFSATcB/wGeAVMBOAH/AZsBUQE3Af8BjgFDASkB/wGzAa0BqwH/AfkB+AH3Af8B9QLy
+ Af8B9gHyAfEB/wOgAf8CGwEaAf8DIgH/AjgBNwH/AjIBMwH/AwgB/wMqAf8oAAFQAk0B/wH4AfQB8wH/
+ AfsB+AH3Af8BiAGDAYEB/wGIAYIBgQH/AYQBVAFJAf8BsAFnAUwB/wGvAWYBSwH/Aa0BZAFJAf8BrAFj
+ AUgB/wGsAWMBSAH/AasBYwFHAf8BnQFNAS4B/wGcAUwBLQH/AZsBSwErAf8BmgFKASoB/wGYAUgBKQH/
+ AZcBRwEnAf8BlgFGASYB/wGlAV0BQgH/AaQBXAFBAf8BpAFcAUEB/wGjAVoBPwH/AaIBWgE/Af8BoQFZ
+ AT4B/wGhAVkBPgH/AZQBSgEuAf8BtgGxAa4B/wH6AvgB/wH4AfQB8wH/AfgB9AHzAf8DngH/ARwCGwH/
+ AiMBIgH/Ay0B/wMtAf8DDwH/AykB/wMAAQEsAAMKAQ4DLAFEA8wB/wPBAf8DvwH/A78B/wMDAf8DIgH/
+ A6EB/wMcAf8DAwH/A74B/wPGAf8DzAH/LAADygH/A8MB/wPZAf8DXAHJAykBPwMEAQb8AANBAf8B9ALw
+ Af8B9QLxAf8B2gHYAdcB/wGFAWUBYgH/AYUBZQFiAf8BpwFbAT4B/wGnAVsBPwH/AaUBWQE9Af8BpAFY
+ ATsB/wGjAVcBOgH/AaIBVgE6Af8BnwFRATQB/wGVAUMBIwH/AZQBQgEiAf8BlAFBASEB/wGSAUABIAH/
+ AZEBPwEfAf8BkAE9AR0B/wGaAU4BMQH/AZEBRQEnAf8BhAE0ARYB/wFhAS4BFAH/AYEBRQE0Af8BlwGP
+ AYwB/wGWAZEBjgH/AZUBjwGMAf8BlQGQAY0B/wH3AfUB9AH/AfQB8QHvAf8B9AHwAe8B/wGkAaMBogH/
+ ARoCGQH/A0YB/wNKAf8BRAJDAf8DJQH/AzQB/ygAAVQBUwFSAf8B9gHzAfEB/wH4AfUB9AH/AZcBkgGP
+ Af8BhgGBAWYB/wGFAWYBZAH/AasBYgFGAf8BqgFhAUUB/wGpAV8BQwH/AagBXgFCAf8BpwFeAUEB/wGm
+ AV0BQAH/AZwBTgEvAf8BmAFIASkB/wGXAUcBJwH/AZYBRgEmAf8BlQFFASUB/wGUAUQBJAH/AZMBQwEj
+ Af8BoAFXATsB/wGfAVcBOwH/AZ8BVQE6Af8BngFVATkB/wGdAVQBOQH/AZwBUwE4Af8BlwFOATMB/wGH
+ ATwBIQH/AbMBrgGrAf8B+gH4AfcB/wH2AfMB8QH/AfYB8wHxAf8BoQKgAf8DHAH/AyUB/wM6Af8DNAH/
+ AwoB/wMsAf8sAAMJAQwDLQFGA6sB/wO/Af8DxQH/A8EB/wO9Af8BtAKzAf8DAwH/ASABHgEdAf8BlAGS
+ AY8B/wGpAagBpwH/AbgBtwG2Af8DwQH/A2QB5zAAA88B/wPKAf8D1QH/A04BmQMmATkDAwEE+AABLAIt
+ Af8B3QHaAdkB/wHyAe8B7gH/AfwC+wH/AYUBZQFjAf8BhQFlAWMB/wGiAVYBOQH/AaIBVgE5Af8BoQFU
+ ATgB/wGgAVQBNwH/AZ8BUgE2Af8BnwFSATUB/wGdAVEBNAH/AY8BPQEdAf8BigE5ARoB/wGEATIBFQH/
+ AWEBKwEPAf8BiwFUAUUB/wGaAY8BiQH/AZ8BmgGWAf8BngGZAZYB/wGcAZcBkwH/AZoBlQGSAf8BmQGU
+ AZEB/wGYAZIBjwH/AZgBkwGQAf8B4wHhAeAB/wH5AfcB9gH/AfIB7wHuAf8B8QHuAe0B/wHxAe4B7QH/
+ AagCpgH/AhwBGwH/A4EB/wNfAf8DVwH/A1gB/wFCAkEB/ygAAUIBQwFCAf8B9AHwAe8B/wH1AfEB8AH/
+ AdsB2QHYAf8BhQFnAWUB/wGFAWcBZQH/AaYBXAFAAf8BpgFcAUAB/wGlAVsBPgH/AaQBWQE9Af8BowFY
+ ATwB/wGhAVcBOwH/AZ4BUgE1Af8BlAFEASQB/wGTAUMBIwH/AZIBQgEiAf8BkQFBASEB/wGQAUABHwH/
+ AY8BPgEeAf8BmAFOATIB/wGLAT8BIQH/AWcBMQEUAf8BYgEzARsB/wGNAWEBVwH/AZcBkQGNAf8BlgGR
+ AY8B/wGVAY8BjQH/AZUBjwGNAf8B9wH1AfQB/wH0AfAB7wH/AfQB8AHvAf8BpAGjAaIB/wMcAf8DSgH/
+ A0sB/wNFAf8DKQH/AzUB/ygAAwQBBgMoAT0DpwH/A5sB/wOjAf8DyQH/A8IB/wPBAf8DuAH/A7kB/wFi
+ AV4BWwH/AYkBhgGDAf8BngGcAZsB/wGvAq4B/wO5Af8DDwEUNAAD1AH/A9kB/wPMAf8DPQFnAyMBMwMC
+ AQP0AANOAZgBiQGGAYUB/wHvAewB6wH/AfoC+AH/AYQBZAFhAf8BhQFlAWIB/wGeAVABNAH/AZwBUAEy
+ Af8BmAFLAS8B/wGIATcBGwH/AWMBLQESAf8BZQFEATMB/wGXAZEBjgH/AZoBlAGRAf8BnQGXAZQB/wGe
+ AZkBlgH/AaABmgGXAf8BoAGaAZcB/wGfAZoBlwH/AZ8BmQGWAf8BnAGXAZQB/wHZAdcB1gH/Af0C/AH/
+ AfsB+gH5Af8B9wH2AfUB/wHzAfIB8QH/AfAB7gHtAf8B7wLrAf8B7wLrAf8B7wHsAesB/wHvAewB6gH/
+ AaECnwH/AyAB/wOfAf8DkAH/AocBiAH/A54B/wNOAf8oAAEuAi8B/wHaAdcB1gH/AfEB7wHuAf8B/QL8
+ Af8BhQGBAWUB/wGFAYEBZQH/AaIBVwE7Af8BogFXATsB/wGgAVYBOgH/AZ8BVAE3Af8BngFUATcB/wGe
+ AVMBNgH/AZwBUgE1Af8BjQE+AR4B/wGIATkBGgH/AYEBMQEVAf8BXwEqAQ4B/wGUAYQBYwH/AaABmgGX
+ Af8BnwGZAZcB/wGeAZgBlgH/AZwBlgGUAf8BmgGUAZIB/wGZAZMBkQH/AZgBkwGQAf8BmAGTAZAB/wH+
+ Av0B/wH4AfYB9QH/AfIB7wHuAf8B8QHuAe0B/wHxAe4B7QH/AacCpgH/Ax4B/wOBAf8DYAH/A1kB/wNd
+ Af8DQwH/KAADGwEmA5IB/wOYAf8DoAH/A58B/wObAf8DwQH/A7wB/wO4Af8DuQH/AawCqwH/AYEBZAFg
+ Af8BkgGQAY0B/wGkAqMB/wOxAf8DAQECOAAD3AH/A+oB/wPJAf8DOAFeAx8BLAMBAQLwAAMEAQUBUAFP
+ AU4B/wHtAeoB6AH/AfUB8wHyAf8BgQFhAV4B/wGEAWQBYAH/AYUBZAFfAf8BiQGDAYEB/wGNAYcBhAH/
+ AZABigGHAf8BkgGNAYoB/wGVAY8BjAH/AZYBkQGOAf8BmwGVAZEB/wG2AbIBrwH/AeQB4gHhAf8D/AH/
+ AvkB+AH/AfcB9gH1Af8B9AHzAfEB/wHyAu4B/wHvAe0B7AH/Ae4B6gHpAf8B7QHqAekB/wHtAukB/wHt
+ AeoB6AH/Ae0B6gHpAf8B7QHqAekB/wHtAeoB6QH/Ae0B6gHpAf8BrwKrAf8BkgKRAf8CIAEfAf8DxgH/
+ A7oB/wKtAa4B/wObAf8DVwH/KAADSAGDAYQCgQH/Ae8B7AHrAf8B+gL4Af8BhAFmAWMB/wGFAWcBZAH/
+ AZwBUQE0Af8BmQFPATIB/wGRAUUBKQH/AYMBNQEZAf8BZwE6ASIB/wGGAVYBSgH/AZYBkQGOAf8BmQGU
+ AZEB/wGcAZcBlAH/AZ4BmQGWAf8BoAGaAZcB/wGgAZoBlwH/AZ8BmgGXAf8BnwGZAZcB/wG0AbABrgH/
+ AeUC4wH/AfwC+wH/AfoB+QH4Af8B9gH1AfQB/wHzAfEB8AH/AfAB7gHsAf8B7wHsAesB/wHvAewB6wH/
+ Ae8B7AHrAf8B7gHrAekB/wGiAaEBoAH/AyIB/wOeAf8DjwH/A4YB/wOcAf8DTwH/JAADBgEIA1IBqQOL
+ Af8DlwH/A6IB/wOjAf8DnQH/A6QB/wPCAf8DvQH/A7gB/wO5Af8BXwFcAVcB/wGFAYMBgQH/AZcBlgGV
+ Af8DnAH/PAADEgEZA+YB/wP0Af8DsAH/AzgBXQMhATADCAEL8AADOAH/AesB5wHmAf8B7gLrAf8B2gLY
+ Af8BgQFgAV0B/wGDAWMBYAH/AY4BiAGFAf8BzQHLAcoB/wHwAe8B7gH/AfoC+QH/AfcC9gH/AfQB8wHy
+ Af8B8QHvAe4B/wHuAewB6wH/Ae0B6QHoAf8B6wHoAecB/wHrAegB5wH/AesC5wH/AeoB6AHmAf8B6wHo
+ AecB/wHrAegB5wH/AesB6AHmAf8B6wHnAeYB/wHrAegB5gH/AeoC5wH/AesC5wH/AesC5wH/AeoB6AHn
+ Af8BvAG4AbcB/wGnAaYBpQH/Aj4BPQH/Al0BXAH/A9MB/wPTAf8BrAGrAawB/wG3AbYBtwH/Ay8BSSgA
+ AwIBAwFRAU8BTgH/Ae0B6gHoAf8B9ALyAf8BgQFjAWAB/wGDAWUBYwH/AYUBZgFkAf8BiQGDAYEB/wGN
+ AYcBhAH/AZABigGIAf8BkwGNAYsB/wGVAY8BjAH/AZcBkQGOAf8BmwGWAZQB/wHPAc0BywH/AfAC7wH/
+ AfsC+gH/AfkC9wH/AfYC9AH/AfMB8QHwAf8B8QHuAe0B/wHvAewB6gH/Ae0B6gHpAf8B7QHqAegB/wHt
+ AeoB6AH/Ae0B6gHoAf8B7QHqAegB/wHtAeoB6AH/Ae0B6gHoAf8B7QHqAegB/wGkAaABnwH/ApABjwH/
+ AyEB/wPFAf8DugH/A6wB/wOaAf8DVwH/JAADGAEiA5UB/wOOAf8DnAH/A6UB/wOjAf8DnwH/Ay8B/wPG
+ Af8DwAH/A7wB/wO4Af8BZQFiAV4B/wFjAWABXQH/AYoBiAGGAf8DUAH6QAADIwEzA/MB/wPnAf8DmwH/
+ AzoBYAMyAVADEAEV7AADKQH/AdMB0AHPAf8B6AHmAeUB/wHsAeoB6QH/AfIB8AHvAf8B8QHwAe8B/wHv
+ AewB6wH/AewB6gHpAf8B6gLmAf8B6QHmAeUB/wHpAuUB/wHpAeYB5AH/AegC5QH/AekC5QH/AekC5QH/
+ AekB5gHkAf8B6QLlAf8B6QHmAeQB/wHpAuUB/wHoAuUB/wHpAeYB5QH/AekB5gHlAf8B6QHmAeUB/wHf
+ AdwB2wH/AY4BigGJAf8BhQGCAYEB/wFBAj8B/wGuAqwB/wGwAa8BrgH/AlABTwH/AyIB/wHQAdEB0AH/
+ A9MB/wPTAf8D2AH/A6kB/zAAATcCOAH/AesB6AHmAf8B7gHsAeoB/wHwAe8B7gH/AWcBYQFfAf8BggFk
+ AWIB/wGQAYsBiAH/Ae4C7QH/AvwB+wH/AfkB+AH3Af8B9gH1AfQB/wHzAfIB8AH/AfAB7gHsAf8B7gHs
+ AeoB/wHsAekB5wH/AesB6AHmAf8B6wHoAeYB/wHrAegB5gH/AesB6AHmAf8B6wHoAeYB/wHrAegB5gH/
+ AesB6AHmAf8B6wHoAeYB/wHrAegB5gH/AesB6AHmAf8B6wHoAeYB/wHrAegB5gH/AesB6AHmAf8BpAGh
+ AZ8B/wG6AbkBuAH/ATwBOwE6Af8BjgGNAYwB/wPTAf8D0wH/AqIBowH/A7UB/wMoATwgAAMBAQIDUgGp
+ A2cB/wOHAf8DlwH/A6EB/wOiAf8DVgH/Ay8B/wPBAf8DxgH/A74B/wO2Af8DtwH/AVgBVQFRAf8BYwFh
+ AV4B/wMWAR5EAAMzAVID0gH/A80B/wO3Af8DiwH/Ay4BSAMFAQfoAAMeASsBWgFYAVcB/wHnAeQB4wH/
+ AecB5QHjAf8B5wHkAeMB/wHoAeQB4wH/AecB5AHjAf8B5wHkAeMB/wHoAeQB4wH/AecC5AH/AecB5QHj
+ Af8B5wHkAeMB/wHnAeQB4wH/AegB5AHjAf8B5wHlAeMB/wHnAeQB4wH/AecB5AHjAf8B3QHaAdkB/wG6
+ AbYBtQH/AYsBiAGHAf8BXgFcAVoB/wFJAkcB/wFTAVIBUQH/AacCpgH/AZQCkgH/AVcCVgH/AysB/wMR
+ Af8DCwH/AYYChwH/A64B/wG4AbkBuAH/AcECwgH/AaUBpAGlAf8BtgK1Af8DDQERMAADKwH8AcsBxwHG
+ Af8B6QHmAeUB/wHsAekB6AH/AfEB7wHuAf8B8AHuAe0B/wHuAesB6gH/AesB6QHoAf8B6gHnAeUB/wHp
+ AeYB5QH/AekB5gHlAf8B6QHmAeUB/wHpAeYB5QH/AekB5gHlAf8B6QHmAeUB/wHpAeYB5QH/AekB5gHl
+ Af8B6QHmAeUB/wHpAeYB5QH/AekB5gHlAf8B6QHmAeUB/wHpAeYB5QH/AeUB4gHhAf8BxAHAAb8B/wGM
+ AYgBhwH/AWIBXwFeAf8BSwFKAUkB/wGyAbABrwH/AakBqAGnAf8BSwJKAf8BLAIrAf8D0QH/A9MB/wPT
+ Af8D2gH/A6cB/yQAAwQBBgPJAf8DgwH/A4UB/wOJAf8DlgH/A14B3QQAA1ABngPJAf8DwQH/A7wB/wO6
+ Af8DuwH/AVEBTQFIAf8BWAFVAVEB/wMFAQdIAANiAfYDuQH/A7wB/wO8Af8DXAHRAyIBMQMAAQHoAAFF
+ AkYB/wHmAeMB4QH/AeYB4wHiAf8B5QHjAeIB/wHlAeMB4gH/AeYB4wHiAf8B5QHjAeIB/wHmAuIB/wHm
+ AeMB4gH/AeUB4wHiAf8B1QHRAdAB/wGnAaMBogH/AYMBZQFkAf8BQwFBAUAB/wFRAVABTwH/AYgChwH/
+ AZwCmwH/AY8CjgH/AVoCWQH/ATgCNwH/AR0CHAH/Aw8B/wMLAf8BKgIpAf8BWAFZAVgB/wFlAoEB/wFl
+ AoEB/wOCAf8BkQGSAZMB/wKcAZ0B/wGXApgB/wGRApIB/wNeAdA4AAMQARUBWAFVAVQB/wHnAeQB4wH/
+ AecB5AHjAf8B5wHkAeMB/wHnAeQB4wH/AecB5AHjAf8B5wHkAeMB/wHnAeQB4wH/AecB5AHjAf8B5wHk
+ AeMB/wHnAeQB4wH/AecB5AHjAf8B5wHkAeMB/wHnAeQB4wH/AecB5AHjAf8B5wHkAeMB/wHTAdABzgH/
+ AaYBogGhAf8BhwGDAYIB/wFUAlAB/wFJAUcBRgH/AYwBiwGKAf8BoAGfAZ4B/wGHAoYB/wFKAUkBSAH/
+ AyMB/wMQAf8DDAH/AZUClgH/Aa4CrwH/AbgCuQH/AcACwQH/AbIBsQGyAf8DswH/AwYBCCgAA18B/wOB
+ Af8DnQH/AzMBUwMAAQEDBwEKAxgBIQM7AWUDxwH/A8gB/wO/Af8DuQH/A7oB/wGzArIB/wFiAV8BXQH/
+ AwABAUgAAw8BFAO8Af8DvQH/A8YB/wPRAf8DNwFaAxIBGegAA1YB9AFNAUwBSwH/AbMBrwGuAf8B5QHi
+ AeEB/wG2AbMBsgH/AY4BiwGKAf8BYAFcAVsB/wE0AjIB/wFfAV4BXQH/AZkCmAH/A5QB/wGHAoYB/wFU
+ AlMB/wI3ATYB/wEdAhwB/wMPAf8DCgH/AwkB/wNfAf8BgwKEAf8BggKEAf8BgQKCAf8BVQFWAVcB/wFd
+ Al8B/wFkAmUB/wFdAl8B/wNaAf8BdAJ1Af4DFAEbTAACRAFDAf8B5gHjAeIB/wHmAeMB4gH/AeYB4wHi
+ Af8B5gHjAeIB/wHmAeMB4gH/AeYB4wHiAf8B5gHjAeIB/wHmAeMB4gH/AeYB4wHiAf8BzAHIAccB/wGN
+ AYkBiAH/AV4BWwFaAf8BNQIzAf8BXAFbAVoB/wGjAaIBoQH/AZoCmQH/AYgBhwGGAf8CTwFOAf8DLQH/
+ ARcCFgH/AQ8CDgH/AwwB/wE8AjsB/wFnAoEB/wFnAoEB/wFnAoEB/wGBAoIB/wKWAZcB/wGdAZ4BnwH/
+ AY4CjwH/AY8CkAH/A1cBtzgAAwIBAwMOARMDIgQxAU0DNgFYA4YB/wPPAf8DzQH/A8gB/wO8Af8DuwH/
+ A7cB/wFkAmMB/1AAA2QB7APIAf8D0wH/A+AB/wPpAf8DLwFJAwQBBugAAxkB/wJSAVEB/wOCAf8CYAFf
+ Af8DWAH/AUcCRgH/AzIB/wMdAf8DEAH/AyUB/wJNAUwB/wOVAf8DkQH/A44B/wGHAogB/wNfAf8BUQJS
+ Af8BhAGFAYQB/wFiAmMB/wNcAfgDVQGwAyEBMGQAA1sByAJUAVMB/wGgApwB/wHJAcUBxAH/AacBowGi
+ Af8BgwGBAWcB/wFQAU0BTAH/AUkBRwFGAf8BhAKDAf8ClwGWAf8CjwGOAf8BZQJkAf8DSwH/AjABLwH/
+ AhoBGQH/Aw8B/wMQAf8DKwH/AWQCZQH/AYIChAH/AYECgwH/AWECYgH/AVoCXAH/AWECYgH/AWQCZQH/
+ AV4CYAH/A20B9wNUAa4DDQESRAADEwEaAyoBQQM0AVQDUwGqA5EB/wPZAf8D1QH/A9AB/wPQAf8DxAH/
+ A8AB/wO9Af8DugH/AywBQ1QAA1IBpwPjAf8D8QH/A/oB/wNhAdoDAgED7AADNQFVAz8B/wJaAVkB/wOR
+ Af8DlAH/A5UB/wKTAZQB/wORAf8BTwJQAf8CXwFgAf8CgwGEAf8DXAH4A0oBjQMlATeEAAMZAf8DTgH/
+ AYECZwH/A10B/wNRAf8DPwH/ASsCKgH/AxgB/wMPAf8CQQFAAf8DZQH/AZMBlAGTAf8BkAKRAf8DjQH/
+ AYICgwH/AVQCVQH/AWACYQH/A4EB/wFjAmQB/wNdAfADOwFjAxIBGFwAAxUBHQNxAfoD1AH/A+kB/wPr
+ Af8D5QH/A+EB/wPVAf8DzwH/A8cB/wPBAf8DvQH/A7gB/1wAAy0BRgP4Af8D3gH/AywBQ/8AsQADCwEP
+ A1sB/wOOAf8DkQH/A5MB/wOTAf8DkgH/A5AB/wE9Aj4B/wOHAf8DhAH/A18B8wM0AVR8AANKAYwD5gH/
+ A/IB/wP0Af8D9AH/A+4B/wPhAf8D1QH/A80B/wPLAf8DwQH/A8AB//8A/wDaAANWAbQD3wH/A+cB/wPl
+ Af8D4QH/A9kB/wPWAf8DzAH/A60B//8A/wDuAAMlATcDKgFAAwgBC/8A/wD/AP8AUAABQgFNAT4HAAE+
+ AwABKAMAAcADAAEwAwABAQEAAQEFAAGAAQQWAAP/AQAB/wHgAgABAwL/Af4CAAE/Af8B/AEPAv8B/AEH
+ BgAB/wQAAX8B/wHgAgABAQH/AfgBBwL/AfgBAwYAAfwEAAEfAf8EAAFnAfABAwL/AfABAwYAAfgEAAEP
+ AfwEAAEHAeABAQL/AeABAwYAAfAEAAEDAfgEAAEHAeABAAL/AcABAwYAAeAEAAEBAfAEAAEDAeABAAF/
+ Af8BgAEDBgABwAQAAQEB4AQAAQEB4AEAAT8B/wEAAQcGAAHABQABwAUAAfABAAEfAf4BAAEHBgABgAUA
+ AcAFAAHwAQABDwH8AQABDwYAAYAFAAGABQAB+AEAAQ8B+AEAAR8GAAHABQABgAUAAfwBAAEHAfABAAE/
+ BgABwAUAAcAFAAH+AQABAwHwAQABfwYAAeAEAAEBAcAFAAH/AQABAwHgAQAB/wYAAeAFAAHgBAABAQH/
+ AYABAQHAAQEB/wYAAcAFAAHgBQAB/wHAAQEBgAEHAf8GAAHABAABAQHABQAB/wHgAgABDwH/BgABwAQA
+ AQ8BwAQAAQEB/wHgAgABDwH/BgABwAQAAR8BwAQAAQ8B/wH4AgABPwH/BgABwAQAAR8BwAQAAQ8B/wH4
+ AgABfwH/BgABwAQAAR8BwAQAAQMB/wH8AgAC/wYAAcAEAAEfAcAEAAEBAv8BgAEBAv8GAAHABAABHwHA
+ BAABGAL/AcABAwL/BgABwAQAAR8BwAQAAR8C/wEAAQcC/wYAAcAEAAEfAcAEAAEfAf8B/AEAAQcC/wYA
+ AeAEAAEfAcAEAAEfAfgCAAEDAv8GAAHgBAABHwHgBAABHwHwAgABAQL/BgAB4AQAAR8B4AQAAR8B8AMA
+ Av8GAAHgBAABHwHgBAABHwH4AgABwAL/BgAB4AQAAR8B4AQAAR8B/AEAAQEB4AF/Af8GAAHgBAABHwHg
+ BAABHwH8AQABAwHwAT8B/wYAAeAEAAEfAeAEAAEfAf4BAAEHAfgBHwH/BgAB8AQAAR8B4AQAAR8B/gEA
+ AQcB/AEPAf8GAAHwBAABPwHwBAABHwH8AQABDwH+AQcB/wYAAfAEAAE/AfAEAAE/AfgBAAEPAf8BAwH/
+ BgAB8AQAAT8B8AQAAT8B8AEAAQ8B/wGBAf8GAAHwBAABPwHwBAABPwHwAQABDwH/AcAB/wYAAfAEAAE/
+ AfAEAAE/AeABAAEfAf8BwAF/BgAB+AQAAT8B8AQAAT8B4AEAAR8B/wHgAT8GAAH4BAABfwH4BAABPwHA
+ AQABHwH/AfABHwYAAfgEAAF/AfgEAAF/AcABQAEfAf8B+AEPBgAB/AMAAQEB/wH4BAABfwHgAQABHwH/
+ AfgBDwYAAfwDAAEfAf8B/AMAAQEB/wH4AQABPwH/AfwBBwYAAf4CAAEHAv8B/AMAAR8B/wHwAQABPwH/
+ Af4BBwYAAf8BAAEDA/8B/gIAAQcC/wHwAQABfwL/AQ8GAAf/AQABBwP/AfABAAT/BgAM/wH8AQEE/wYA
+ Df8BxwT/BgAS/wYACw==
+
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ 127, 17
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ 274, 17
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ True
+
+
+ 65
+
+
\ No newline at end of file
diff --git a/Examples/Desktop Framework/VB.NET/Backup/MainForm.vb b/Examples/Desktop Framework/VB.NET/Backup/MainForm.vb
new file mode 100644
index 0000000..78eb32a
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/MainForm.vb
@@ -0,0 +1,416 @@
+Imports GeoFramework
+Imports GeoFramework.Gps
+Imports GeoFramework.Gps.IO
+Imports GeoFramework.Gps.Nmea
+Imports System.Threading
+
+Public Class MainForm
+
+ ' In case no GPS device can be found, we can use a GPS device emulator.
+ ' The VirtualDevice class encapsulates all GPS simulation features.
+
+ Public Sub New()
+
+ ' This call is required by the Windows Form Designer.
+ InitializeComponent()
+
+ ' Hook into GPS.NET's device detection events. These events will report on
+ ' any GPS devices which have been found, along with any problems encountered and reasons
+ ' why a particular device could NOT be detected.
+ AddHandler Devices.DeviceDetectionAttempted, AddressOf Devices_DeviceDetectionAttempted
+ AddHandler Devices.DeviceDetectionAttemptFailed, AddressOf Devices_DeviceDetectionAttemptFailed
+ AddHandler Devices.DeviceDetectionStarted, AddressOf Devices_DeviceDetectionStarted
+ AddHandler Devices.DeviceDetectionCompleted, AddressOf Devices_DeviceDetectionCompleted
+ AddHandler Devices.DeviceDetectionCanceled, AddressOf Devices_DeviceDetectionCanceled
+ AddHandler Devices.DeviceDetected, AddressOf Devices_DeviceDetected
+
+ ' Hook up event handlers for application-level and AppDomain-level exceptions so
+ ' they can be reported to the user
+ AddHandler Application.ThreadException, AddressOf Application_ThreadException
+ AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf CurrentDomain_UnhandledException
+ End Sub
+
+#Region " GPS Device Detection Events "
+
+ Sub Devices_DeviceDetectionCanceled(ByVal sender As Object, ByVal e As EventArgs)
+ BeginInvoke(New EventHandler(AddressOf DeviceDetectionCanceled), sender, e)
+ End Sub
+
+ Private Sub DeviceDetectionCanceled(ByVal sender As Object, ByVal e As EventArgs)
+ statusLabel.Text = "Device detection canceled!"
+ detectButton.Enabled = True
+ cancelDetectButton.Enabled = False
+ End Sub
+
+ Sub Devices_DeviceDetected(ByVal sender As Object, ByVal e As DeviceEventArgs)
+ BeginInvoke(New EventHandler(Of DeviceEventArgs)(AddressOf DeviceDetected), sender, e)
+ End Sub
+
+ Private Sub DeviceDetected(ByVal sender As Object, ByVal e As DeviceEventArgs)
+ Dim item As ListViewItem
+ For Each item In devicesListView.Items
+ If Object.ReferenceEquals(item.Tag, e.Device) Then
+ item.SubItems(1).Text = "GPS DETECTED"
+ item.ImageIndex = 0
+ End If
+ Next
+ devicesListView.Refresh()
+ End Sub
+
+ Sub Devices_DeviceDetectionCompleted(ByVal sender As Object, ByVal e As EventArgs)
+ BeginInvoke(New EventHandler(AddressOf DeviceDetectionCompleted), sender, e)
+ End Sub
+
+ Private Sub DeviceDetectionCompleted(ByVal sender As Object, ByVal e As EventArgs)
+ statusLabel.Text = "Device detection complete."
+ detectButton.Enabled = True
+ cancelDetectButton.Enabled = False
+ End Sub
+
+ Sub Devices_DeviceDetectionStarted(ByVal sender As Object, ByVal e As EventArgs)
+ BeginInvoke(New EventHandler(AddressOf DeviceDetectionStarted), sender, e)
+ End Sub
+
+ Private Sub DeviceDetectionStarted(ByVal sender As Object, ByVal e As EventArgs)
+ statusLabel.Text = "Detecting GPS devices..."
+ devicesListView.Items.Clear()
+ detectButton.Enabled = False
+ cancelDetectButton.Enabled = True
+ End Sub
+
+ Sub Devices_DeviceDetectionAttemptFailed(ByVal sender As Object, ByVal e As DeviceDetectionExceptionEventArgs)
+ BeginInvoke(New EventHandler(Of DeviceDetectionExceptionEventArgs)(AddressOf DeviceDetectionAttemptFailed), sender, e)
+ End Sub
+
+ Private Sub DeviceDetectionAttemptFailed(ByVal sender As Object, ByVal e As DeviceDetectionExceptionEventArgs)
+ Dim item As ListViewItem
+ For Each item In devicesListView.Items
+ If Object.ReferenceEquals(item.Tag, e.Device) Then
+ item.SubItems(1).Text = e.Exception.Message
+ item.ToolTipText = e.Exception.Message
+ item.ImageIndex = 1
+ End If
+ Next item
+ devicesListView.Refresh()
+ End Sub
+
+ Sub Devices_DeviceDetectionAttempted(ByVal sender As Object, ByVal e As DeviceEventArgs)
+ BeginInvoke(New EventHandler(Of DeviceEventArgs)(AddressOf DeviceDetectionAttempted), sender, e)
+ End Sub
+
+ Private Sub DeviceDetectionAttempted(ByVal sender As Object, ByVal e As DeviceEventArgs)
+ undetectButton.Enabled = True
+
+ For Each existingItem As ListViewItem In devicesListView.Items
+ If Object.ReferenceEquals(existingItem.Tag, e.Device) Then
+ existingItem.SubItems(1).Text = "Detecting..."
+ Return
+ End If
+ Next
+
+ Dim item As New ListViewItem
+ item.Text = e.Device.Name
+ item.ImageIndex = 2
+ item.Tag = e.Device
+ item.SubItems.Add(New ListViewItem.ListViewSubItem(item, "Detecting..."))
+ devicesListView.Items.Add(item)
+ devicesListView.Refresh()
+ End Sub
+
+#End Region
+
+#Region " NmeaInterpreter Events "
+
+ ' In GPS.NET 3.0, events may be raised from a thread other than the form's own thread. As a result,
+ ' we must use Invoke or BeginInvoke to "marshal" the code to the Form's thread.
+
+ Private Sub nmeaInterpreter1_SpeedChanged(ByVal sender As Object, ByVal e As SpeedEventArgs) Handles nmeaInterpreter1.SpeedChanged
+ BeginInvoke(New EventHandler(Of SpeedEventArgs)(AddressOf SpeedChanged), sender, e)
+ End Sub
+
+ Private Sub SpeedChanged(ByVal sender As Object, ByVal e As SpeedEventArgs)
+ speedTextBox.Text = e.Speed.ToString()
+ speedLabel.Text = speedTextBox.Text
+ End Sub
+
+ Private Sub nmeaInterpreter1_BearingChanged(ByVal sender As Object, ByVal e As AzimuthEventArgs) Handles nmeaInterpreter1.BearingChanged
+ BeginInvoke(New EventHandler(Of AzimuthEventArgs)(AddressOf BearingChanged), sender, e)
+ End Sub
+
+ Private Sub BearingChanged(ByVal sender As Object, ByVal e As AzimuthEventArgs)
+ bearingTextBox.Text = e.Azimuth.ToString()
+ bearingLabel.Text = bearingTextBox.Text
+ End Sub
+
+ Private Sub nmeaInterpreter1_AltitudeChanged(ByVal sender As Object, ByVal e As DistanceEventArgs) Handles nmeaInterpreter1.AltitudeChanged
+ BeginInvoke(New EventHandler(Of DistanceEventArgs)(AddressOf AltitudeChanged), sender, e)
+ End Sub
+
+ Private Sub AltitudeChanged(ByVal sender As Object, ByVal e As DistanceEventArgs)
+ altitudeTextBox.Text = e.Distance.ToString()
+ altitudeLabel.Text = altitudeTextBox.Text
+ End Sub
+
+ Private Sub nmeaInterpreter1_Paused(ByVal sender As Object, ByVal e As EventArgs) Handles nmeaInterpreter1.Paused
+ BeginInvoke(New EventHandler(AddressOf Paused), sender, e)
+ End Sub
+
+ Private Sub Paused(ByVal sender As Object, ByVal e As EventArgs)
+ pauseButton.Enabled = False
+ resumeButton.Enabled = True
+ statusLabel.Text = "Paused."
+ End Sub
+
+ Private Sub nmeaInterpreter1_Resumed(ByVal sender As Object, ByVal e As EventArgs) Handles nmeaInterpreter1.Resumed
+ BeginInvoke(New EventHandler(AddressOf Resumed), sender, e)
+ End Sub
+
+ Private Sub Resumed(ByVal sender As Object, ByVal e As EventArgs)
+ pauseButton.Enabled = True
+ resumeButton.Enabled = False
+ End Sub
+
+ Private Sub nmeaInterpreter1_Starting(ByVal sender As Object, ByVal e As DeviceEventArgs) Handles nmeaInterpreter1.Starting
+ BeginInvoke(New EventHandler(Of DeviceEventArgs)(AddressOf Starting), sender, e)
+ End Sub
+
+ Private Sub Starting(ByVal sender As Object, ByVal e As DeviceEventArgs)
+ statusLabel.Text = "Connecting to " + e.Device.Name + "..."
+ End Sub
+
+ Private Sub nmeaInterpreter1_Started(ByVal sender As Object, ByVal e As EventArgs) Handles nmeaInterpreter1.Started
+ BeginInvoke(New EventHandler(AddressOf Started), sender, e)
+ End Sub
+
+ Private Sub Started(ByVal sender As Object, ByVal e As EventArgs)
+ statusLabel.Text = "Connected! Waiting for data..."
+ sentenceListBox.Items.Clear()
+ startButton.Enabled = False
+ stopButton.Enabled = True
+ pauseButton.Enabled = True
+ resumeButton.Enabled = False
+
+ positionLabel.Text = Position.Empty.ToString()
+ speedLabel.Text = Speed.Empty.ToString()
+ bearingLabel.Text = Azimuth.Empty.ToString()
+ altitudeLabel.Text = Distance.Empty.ToString()
+ End Sub
+
+ Private Sub nmeaInterpreter1_Stopping(ByVal sender As Object, ByVal e As EventArgs)
+ BeginInvoke(New EventHandler(AddressOf Stopping), sender, e)
+ End Sub
+
+ Private Sub Stopping(ByVal sender As Object, ByVal e As EventArgs)
+ statusLabel.Text = "Stopping GPS device..."
+ End Sub
+
+ Private Sub nmeaInterpreter1_Stopped(ByVal sender As Object, ByVal e As EventArgs)
+ BeginInvoke(New EventHandler(AddressOf Stopped), sender, e)
+ End Sub
+
+ Private Sub Stopped(ByVal sender As Object, ByVal e As EventArgs)
+ statusLabel.Text = "Stopped."
+ startButton.Enabled = True
+ stopButton.Enabled = False
+ pauseButton.Enabled = False
+ resumeButton.Enabled = False
+ End Sub
+
+ Private Sub nmeaInterpreter1_SatellitesChanged(ByVal sender As Object, ByVal e As SatelliteListEventArgs)
+ BeginInvoke(New EventHandler(Of SatelliteListEventArgs)(AddressOf SatellitesChanged), sender, e)
+ End Sub
+
+ Private Sub SatellitesChanged(ByVal sender As Object, ByVal e As SatelliteListEventArgs)
+ Dim satellite As Satellite
+
+ ' Update each satellite
+ For Each satellite In e.Satellites
+ Dim isSatelliteNew As Boolean = True
+
+ ' Look through the existing list for matches
+ Dim viewItem As ListViewItem
+ For Each viewItem In satellitesListView.Items
+ ' Each item's Tag property houses a Satellite object
+ Dim existing As Satellite = CType(viewItem.Tag, Satellite)
+
+ ' Do the ID's match?
+ If existing.PseudorandomNumber.Equals(satellite.PseudorandomNumber) Then
+ ' Yes. Update the listview columns
+ viewItem.SubItems(2).Text = satellite.Azimuth.ToString()
+ viewItem.SubItems(3).Text = satellite.Elevation.ToString()
+ viewItem.SubItems(4).Text = satellite.SignalToNoiseRatio.ToString()
+ isSatelliteNew = False
+ End If
+ Next
+
+ ' If no existing satellite was found, then add a new one
+ If isSatelliteNew Then
+ ' Add a new column for this satellite
+ Dim newItem As New ListViewItem(satellite.PseudorandomNumber.ToString())
+ newItem.SubItems.Add(satellite.Name)
+ newItem.SubItems.Add(satellite.Azimuth.ToString())
+ newItem.SubItems.Add(satellite.Elevation.ToString())
+ newItem.SubItems.Add(satellite.SignalToNoiseRatio.ToString())
+ newItem.Tag = satellite
+ satellitesListView.Items.Add(newItem)
+ End If
+ Next
+ End Sub
+
+ Private Sub nmeaInterpreter1_PositionChanged(ByVal sender As Object, ByVal e As PositionEventArgs) Handles nmeaInterpreter1.PositionChanged
+ BeginInvoke(New EventHandler(Of PositionEventArgs)(AddressOf PositionChanged), sender, e)
+ End Sub
+
+ Private Sub PositionChanged(ByVal sender As Object, ByVal e As PositionEventArgs)
+ positionTextBox.Text = e.Position.ToString()
+ positionLabel.Text = positionTextBox.Text
+ End Sub
+
+ Private Sub nmeaInterpreter1_DateTimeChanged(ByVal sender As Object, ByVal e As DateTimeEventArgs) Handles nmeaInterpreter1.DateTimeChanged
+ BeginInvoke(New EventHandler(Of DateTimeEventArgs)(AddressOf DateTimeChanged), sender, e)
+ End Sub
+
+ Private Sub DateTimeChanged(ByVal sender As Object, ByVal e As DateTimeEventArgs)
+ dateTimeTextBox.Text = e.DateTime.ToShortDateString() + " " + e.DateTime.ToLongTimeString()
+ utcDateTimeTextBox.Text = e.DateTime.ToUniversalTime().ToString("R")
+ End Sub
+
+ Private Sub nmeaInterpreter1_SentenceReceived(ByVal sender As Object, ByVal e As NmeaSentenceEventArgs) Handles nmeaInterpreter1.SentenceReceived
+ BeginInvoke(New EventHandler(Of NmeaSentenceEventArgs)(AddressOf SentenceReceived), sender, e)
+ End Sub
+
+ Private Sub SentenceReceived(ByVal sender As Object, ByVal e As NmeaSentenceEventArgs)
+ If sentenceListBox.Items.Count >= 100 Then
+ sentenceListBox.Items.RemoveAt(0)
+ End If
+
+ sentenceListBox.Items.Add(e.Sentence.ToString())
+ sentenceListBox.SelectedIndex = sentenceListBox.Items.Count - 1
+
+ statusLabel.Text = "Receiving GPS data."
+ End Sub
+
+#End Region
+
+#Region " Button Events "
+
+ Private Sub detectButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles detectButton.Click
+ Devices.BeginDetection()
+ End Sub
+
+ Private Sub cancelDetectButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cancelDetectButton.Click
+ Devices.CancelDetection(True)
+ End Sub
+
+ Private Sub undetectButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles undetectButton.Click
+ Devices.Undetect()
+ devicesListView.Items.Clear()
+ undetectButton.Enabled = False
+ End Sub
+
+ Private Sub startButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles startButton.Click
+ Try
+ nmeaInterpreter1.Start()
+ Catch ex As Exception
+ MessageBox.Show(ex.Message, "Cannot connect to GPS")
+ End Try
+ End Sub
+
+ Private Sub stopButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles stopButton.Click
+ nmeaInterpreter1.Stop()
+ End Sub
+
+ Private Sub pauseButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles pauseButton.Click
+ nmeaInterpreter1.Pause()
+ End Sub
+
+ Private Sub resumeButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles resumeButton.Click
+ nmeaInterpreter1.Resume()
+ End Sub
+
+#End Region
+
+#Region " Context Menu Events "
+
+ Private Sub deviceContextMenu_Opening(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles deviceContextMenu.Opening
+ e.Cancel = devicesListView.SelectedItems.Count = 0
+ End Sub
+
+ Private Sub redetectMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles redetectMenuItem.Click
+ Dim device As Device = DirectCast(devicesListView.SelectedItems(0).Tag, Device)
+ device.Undetect()
+ device.BeginDetection()
+ End Sub
+
+ Private Sub resetMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles resetMenuItem.Click
+ Dim device As Device = DirectCast(devicesListView.SelectedItems(0).Tag, Device)
+ device.Reset()
+ End Sub
+
+#End Region
+
+#Region " Other Form Control Events "
+
+ Private Sub devicesListView_ItemSelectionChanged(ByVal sender As Object, ByVal e As ListViewItemSelectionChangedEventArgs) Handles devicesListView.ItemSelectionChanged
+ propertyGrid1.SelectedObject = e.Item.Tag
+ End Sub
+
+ Private Sub serialCheckBox_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles serialCheckBox.CheckedChanged
+ Devices.AllowSerialConnections = serialCheckBox.Checked
+ exhaustiveCheckBox.Enabled = serialCheckBox.Checked
+ End Sub
+
+ Private Sub exhaustiveCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles exhaustiveCheckBox.CheckedChanged
+ Devices.AllowExhaustiveSerialPortScanning = exhaustiveCheckBox.Checked
+ End Sub
+
+ Private Sub bluetoothCheckBox_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs) Handles bluetoothCheckBox.CheckedChanged
+ Devices.AllowBluetoothConnections = bluetoothCheckBox.Checked
+ End Sub
+
+ Private Sub firstDeviceCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles firstDeviceCheckBox.CheckedChanged
+ Devices.IsOnlyFirstDeviceDetected = firstDeviceCheckBox.Checked
+ End Sub
+
+ Private Sub clockSynchronizationCheckBox_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles clockSynchronizationCheckBox.CheckedChanged
+ Devices.IsClockSynchronizationEnabled = clockSynchronizationCheckBox.Checked
+ End Sub
+
+#End Region
+
+#Region " Unhandled Exception Events "
+
+ Private Sub CurrentDomain_UnhandledException(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs)
+ Dim ex As Exception = DirectCast(e.ExceptionObject, Exception)
+ NotifyOfUnhandledException(ex)
+ End Sub
+
+ Private Sub Application_ThreadException(ByVal sender As Object, ByVal e As ThreadExceptionEventArgs)
+ NotifyOfUnhandledException(e.Exception)
+ End Sub
+
+ '''
+ ''' Logs an unhandled exception and displays a message box alerting the user to the error.
+ '''
+ ''' The unhandled exception.
+ Private Sub NotifyOfUnhandledException(ByVal exception As Exception)
+ Try
+ ' Log the exception (and all of its inner exceptions)
+ Dim innerException As Exception = exception
+ While (Not (innerException) Is Nothing)
+ Trace.TraceError(innerException.ToString)
+ innerException = innerException.InnerException
+ End While
+
+ ' Stop the interpreter
+ nmeaInterpreter1.Stop()
+ Finally
+ ' Display the error to the user
+ MessageBox.Show( _
+ "An unexpected error has occurred." & vbLf & vbLf & exception.GetType.ToString & ": " & exception.Message, _
+ Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error)
+ End Try
+ End Sub
+
+#End Region
+End Class
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/Application.Designer.vb b/Examples/Desktop Framework/VB.NET/Backup/My Project/Application.Designer.vb
new file mode 100644
index 0000000..32fa9b5
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/Application.Designer.vb
@@ -0,0 +1,38 @@
+'------------------------------------------------------------------------------
+'
+' This code was generated by a tool.
+' Runtime Version:2.0.50727.3521
+'
+' Changes to this file may cause incorrect behavior and will be lost if
+' the code is regenerated.
+'
+'------------------------------------------------------------------------------
+
+Option Strict On
+Option Explicit On
+
+
+Namespace My
+
+ 'NOTE: This file is auto-generated; do not modify it directly. To make changes,
+ ' or if you encounter build errors in this file, go to the Project Designer
+ ' (go to Project Properties or double-click the My Project node in
+ ' Solution Explorer), and make changes on the Application tab.
+ '
+ Partial Friend Class MyApplication
+
+ _
+ Public Sub New()
+ MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
+ Me.IsSingleInstance = false
+ Me.EnableVisualStyles = true
+ Me.SaveMySettingsOnExit = true
+ Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
+ End Sub
+
+ _
+ Protected Overrides Sub OnCreateMainForm()
+ Me.MainForm = Global.Diagnostics.MainForm
+ End Sub
+ End Class
+End Namespace
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/Application.myapp b/Examples/Desktop Framework/VB.NET/Backup/My Project/Application.myapp
new file mode 100644
index 0000000..27659f2
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/Application.myapp
@@ -0,0 +1,10 @@
+
+
+ true
+ MainForm
+ false
+ 0
+ true
+ 0
+ true
+
\ No newline at end of file
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/AssemblyInfo.vb b/Examples/Desktop Framework/VB.NET/Backup/My Project/AssemblyInfo.vb
new file mode 100644
index 0000000..ee74e89
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/AssemblyInfo.vb
@@ -0,0 +1,37 @@
+Imports System
+Imports System.Reflection
+Imports System.Runtime.InteropServices
+
+' General Information about an assembly is controlled through the following
+' set of attributes. Change these attribute values to modify the information
+' associated with an assembly.
+
+' Review the values of the assembly attributes
+
+
+
+
+
+
+
+
+
+
+
+
+'The following GUID is for the ID of the typelib if this project is exposed to COM
+
+
+' Version information for an assembly consists of the following four values:
+'
+' Major Version
+' Minor Version
+' Build Number
+' Revision
+'
+' You can specify all the values or you can default the Build and Revision Numbers
+' by using the '*' as shown below:
+'
+
+
+
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/Resources.Designer.vb b/Examples/Desktop Framework/VB.NET/Backup/My Project/Resources.Designer.vb
new file mode 100644
index 0000000..136abcd
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/Resources.Designer.vb
@@ -0,0 +1,62 @@
+'------------------------------------------------------------------------------
+'
+' This code was generated by a tool.
+' Runtime Version:2.0.50727.3521
+'
+' Changes to this file may cause incorrect behavior and will be lost if
+' the code is regenerated.
+'
+'------------------------------------------------------------------------------
+
+Option Strict On
+Option Explicit On
+
+
+Namespace My.Resources
+
+ 'This class was auto-generated by the StronglyTypedResourceBuilder
+ 'class via a tool like ResGen or Visual Studio.
+ 'To add or remove a member, edit your .ResX file then rerun ResGen
+ 'with the /str option, or rebuild your VS project.
+ '
+ ' A strongly-typed resource class, for looking up localized strings, etc.
+ '
+ _
+ Friend Module Resources
+
+ Private resourceMan As Global.System.Resources.ResourceManager
+
+ Private resourceCulture As Global.System.Globalization.CultureInfo
+
+ '
+ ' Returns the cached ResourceManager instance used by this class.
+ '
+ _
+ Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
+ Get
+ If Object.ReferenceEquals(resourceMan, Nothing) Then
+ Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("WindowsApplication1.Resources", GetType(Resources).Assembly)
+ resourceMan = temp
+ End If
+ Return resourceMan
+ End Get
+ End Property
+
+ '
+ ' Overrides the current thread's CurrentUICulture property for all
+ ' resource lookups using this strongly typed resource class.
+ '
+ _
+ Friend Property Culture() As Global.System.Globalization.CultureInfo
+ Get
+ Return resourceCulture
+ End Get
+ Set(ByVal value As Global.System.Globalization.CultureInfo)
+ resourceCulture = value
+ End Set
+ End Property
+ End Module
+End Namespace
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/Resources.resx b/Examples/Desktop Framework/VB.NET/Backup/My Project/Resources.resx
new file mode 100644
index 0000000..af7dbeb
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/Resources.resx
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/Settings.Designer.vb b/Examples/Desktop Framework/VB.NET/Backup/My Project/Settings.Designer.vb
new file mode 100644
index 0000000..0f86c9a
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/Settings.Designer.vb
@@ -0,0 +1,73 @@
+'------------------------------------------------------------------------------
+'
+' This code was generated by a tool.
+' Runtime Version:2.0.50727.3521
+'
+' Changes to this file may cause incorrect behavior and will be lost if
+' the code is regenerated.
+'
+'------------------------------------------------------------------------------
+
+Option Strict On
+Option Explicit On
+
+
+Namespace My
+
+ _
+ Partial Friend NotInheritable Class MySettings
+ Inherits Global.System.Configuration.ApplicationSettingsBase
+
+ Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
+
+#Region "My.Settings Auto-Save Functionality"
+#If _MyType = "WindowsForms" Then
+ Private Shared addedHandler As Boolean
+
+ Private Shared addedHandlerLockObject As New Object
+
+ _
+ Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
+ If My.Application.SaveMySettingsOnExit Then
+ My.Settings.Save()
+ End If
+ End Sub
+#End If
+#End Region
+
+ Public Shared ReadOnly Property [Default]() As MySettings
+ Get
+
+#If _MyType = "WindowsForms" Then
+ If Not addedHandler Then
+ SyncLock addedHandlerLockObject
+ If Not addedHandler Then
+ AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
+ addedHandler = True
+ End If
+ End SyncLock
+ End If
+#End If
+ Return defaultInstance
+ End Get
+ End Property
+ End Class
+End Namespace
+
+Namespace My
+
+ _
+ Friend Module MySettingsProperty
+
+ _
+ Friend ReadOnly Property Settings() As Global.Diagnostics.My.MySettings
+ Get
+ Return Global.Diagnostics.My.MySettings.Default
+ End Get
+ End Property
+ End Module
+End Namespace
diff --git a/Examples/Desktop Framework/VB.NET/Backup/My Project/Settings.settings b/Examples/Desktop Framework/VB.NET/Backup/My Project/Settings.settings
new file mode 100644
index 0000000..85b890b
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/Backup/My Project/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).sln b/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).sln
new file mode 100644
index 0000000..9bb5c0b
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.30320.27
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "GPS Diagnostics DF35 (VB.NET)", "GPS Diagnostics DF35 (VB.NET).vbproj", "{452F1CB0-6401-4D64-B2CC-CD53C411D927}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {452F1CB0-6401-4D64-B2CC-CD53C411D927}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {452F1CB0-6401-4D64-B2CC-CD53C411D927}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {452F1CB0-6401-4D64-B2CC-CD53C411D927}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {452F1CB0-6401-4D64-B2CC-CD53C411D927}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {7E4514DB-5E82-4946-859E-4E4724DC09D3}
+ EndGlobalSection
+EndGlobal
diff --git a/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj b/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj
index f11a86e..9f0dc87 100644
--- a/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj
+++ b/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj
@@ -1,5 +1,5 @@
-
+
Debug
AnyCPU
@@ -26,6 +26,11 @@
Gps.ico
+
+
+
+
+ 3.5
true
@@ -34,7 +39,7 @@
true
bin\Debug\DF35\
Diagnostics.xml
- 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
+ 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355
pdbonly
@@ -43,7 +48,7 @@
true
bin\Release\DF35\
Diagnostics.xml
- 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
+ 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355
@@ -85,6 +90,7 @@
True
Application.myapp
+ True
diff --git a/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj.user b/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj.user
new file mode 100644
index 0000000..9b86104
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/GPS Diagnostics DF35 (VB.NET).vbproj.user
@@ -0,0 +1,6 @@
+
+
+
+ ShowAllFiles
+
+
\ No newline at end of file
diff --git a/Examples/Desktop Framework/VB.NET/My Project/Application.Designer.vb b/Examples/Desktop Framework/VB.NET/My Project/Application.Designer.vb
index 5a8822f..d9e79df 100644
--- a/Examples/Desktop Framework/VB.NET/My Project/Application.Designer.vb
+++ b/Examples/Desktop Framework/VB.NET/My Project/Application.Designer.vb
@@ -1,7 +1,7 @@
'------------------------------------------------------------------------------
'
' This code was generated by a tool.
-' Runtime Version:2.0.50727.3521
+' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
diff --git a/Examples/Desktop Framework/VB.NET/My Project/Resources.Designer.vb b/Examples/Desktop Framework/VB.NET/My Project/Resources.Designer.vb
index 11b9b13..565fc6b 100644
--- a/Examples/Desktop Framework/VB.NET/My Project/Resources.Designer.vb
+++ b/Examples/Desktop Framework/VB.NET/My Project/Resources.Designer.vb
@@ -1,7 +1,7 @@
'------------------------------------------------------------------------------
'
' This code was generated by a tool.
-' Runtime Version:2.0.50727.3521
+' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
@@ -11,6 +11,7 @@
Option Strict On
Option Explicit On
+Imports System
Namespace My.Resources
@@ -18,10 +19,10 @@ Namespace My.Resources
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
- '
- ' A strongly-typed resource class, for looking up localized strings, etc.
- '
-
+ ''' A strongly-typed resource class, for looking up localized strings, etc.
+ '''
+ _
@@ -31,30 +32,30 @@ Namespace My.Resources
Private resourceCulture As Global.System.Globalization.CultureInfo
- '
- ' Returns the cached ResourceManager instance used by this class.
- '
+ '''
+ ''' Returns the cached ResourceManager instance used by this class.
+ '''
_
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
- Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("WindowsApplication1.Resources", GetType(Resources).Assembly)
+ Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("Diagnostics.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
- '
- ' Overrides the current thread's CurrentUICulture property for all
- ' resource lookups using this strongly typed resource class.
- '
+ '''
+ ''' Overrides the current thread's CurrentUICulture property for all
+ ''' resource lookups using this strongly typed resource class.
+ '''
_
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
- Set(ByVal value As Global.System.Globalization.CultureInfo)
+ Set
resourceCulture = value
End Set
End Property
diff --git a/Examples/Desktop Framework/VB.NET/My Project/Settings.Designer.vb b/Examples/Desktop Framework/VB.NET/My Project/Settings.Designer.vb
index c7fd84c..539ffc9 100644
--- a/Examples/Desktop Framework/VB.NET/My Project/Settings.Designer.vb
+++ b/Examples/Desktop Framework/VB.NET/My Project/Settings.Designer.vb
@@ -1,7 +1,7 @@
'------------------------------------------------------------------------------
'
' This code was generated by a tool.
-' Runtime Version:2.0.50727.3521
+' Runtime Version:4.0.30319.42000
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
@@ -13,27 +13,27 @@ Option Explicit On
Namespace My
-
+
_
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
- Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
+ Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
#Region "My.Settings Auto-Save Functionality"
#If _MyType = "WindowsForms" Then
- Private Shared addedHandler As Boolean
+ Private Shared addedHandler As Boolean
- Private Shared addedHandlerLockObject As New Object
+ Private Shared addedHandlerLockObject As New Object
- _
- Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
- If My.Application.SaveMySettingsOnExit Then
- My.Settings.Save()
- End If
- End Sub
+ _
+ Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
+ If My.Application.SaveMySettingsOnExit Then
+ My.Settings.Save()
+ End If
+ End Sub
#End If
#End Region
@@ -41,14 +41,14 @@ Namespace My
Get
#If _MyType = "WindowsForms" Then
- If Not addedHandler Then
- SyncLock addedHandlerLockObject
- If Not addedHandler Then
- AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
- addedHandler = True
- End If
- End SyncLock
- End If
+ If Not addedHandler Then
+ SyncLock addedHandlerLockObject
+ If Not addedHandler Then
+ AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
+ addedHandler = True
+ End If
+ End SyncLock
+ End If
#End If
Return defaultInstance
End Get
@@ -63,7 +63,7 @@ Namespace My
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
- _
+ _
Friend ReadOnly Property Settings() As Global.Diagnostics.My.MySettings
Get
Return Global.Diagnostics.My.MySettings.Default
diff --git a/Examples/Desktop Framework/VB.NET/UpgradeLog.htm b/Examples/Desktop Framework/VB.NET/UpgradeLog.htm
new file mode 100644
index 0000000..54febf5
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/UpgradeLog.htm differ
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.vb b/Examples/Desktop Framework/VB.NET/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.vb
new file mode 100644
index 0000000..5b7af43
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.vb
@@ -0,0 +1,7 @@
+'
+ Option Strict Off
+ Option Explicit On
+
+ Imports System
+ Imports System.Reflection
+
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.vb b/Examples/Desktop Framework/VB.NET/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.vb
new file mode 100644
index 0000000..4339bf6
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.vb
@@ -0,0 +1,7 @@
+'
+ Option Strict Off
+ Option Explicit On
+
+ Imports System
+ Imports System.Reflection
+
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Examples/Desktop Framework/VB.NET/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
new file mode 100644
index 0000000..59f3c95
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF20 (VB.NET).vbprojAssemblyReference.cache b/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF20 (VB.NET).vbprojAssemblyReference.cache
new file mode 100644
index 0000000..9720667
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF20 (VB.NET).vbprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF35 (VB.NET).vbprojAssemblyReference.cache b/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF35 (VB.NET).vbprojAssemblyReference.cache
new file mode 100644
index 0000000..24df8ab
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF35 (VB.NET).vbprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF40 (VB.NET).vbprojAssemblyReference.cache b/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF40 (VB.NET).vbprojAssemblyReference.cache
new file mode 100644
index 0000000..24df8ab
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/obj/Debug/GPS Diagnostics DF40 (VB.NET).vbprojAssemblyReference.cache differ
diff --git a/Examples/Desktop Framework/VB.NET/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll b/Examples/Desktop Framework/VB.NET/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll
new file mode 100644
index 0000000..55ff115
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll differ
diff --git a/Examples/Desktop Framework/VB.NET/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.vb b/Examples/Desktop Framework/VB.NET/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.vb
new file mode 100644
index 0000000..5b7af43
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.vb
@@ -0,0 +1,7 @@
+'
+ Option Strict Off
+ Option Explicit On
+
+ Imports System
+ Imports System.Reflection
+
diff --git a/Examples/Desktop Framework/VB.NET/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.vb b/Examples/Desktop Framework/VB.NET/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.vb
new file mode 100644
index 0000000..4339bf6
--- /dev/null
+++ b/Examples/Desktop Framework/VB.NET/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.vb
@@ -0,0 +1,7 @@
+'
+ Option Strict Off
+ Option Explicit On
+
+ Imports System
+ Imports System.Reflection
+
diff --git a/Examples/Desktop Framework/VB.NET/obj/Release/GPS Diagnostics DF20 (VB.NET).vbprojAssemblyReference.cache b/Examples/Desktop Framework/VB.NET/obj/Release/GPS Diagnostics DF20 (VB.NET).vbprojAssemblyReference.cache
new file mode 100644
index 0000000..d9ed93c
Binary files /dev/null and b/Examples/Desktop Framework/VB.NET/obj/Release/GPS Diagnostics DF20 (VB.NET).vbprojAssemblyReference.cache differ
diff --git a/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs b/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
new file mode 100644
index 0000000..c66f422
--- /dev/null
+++ b/obj/Debug/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0,Profile=Client", FrameworkDisplayName = ".NET Framework 4 Client Profile")]
diff --git a/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs b/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..5d01041
--- /dev/null
+++ b/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0", FrameworkDisplayName = ".NET Framework 4")]
diff --git a/obj/Debug/GPS.NET (Desktop Framework 2.0).csprojAssemblyReference.cache b/obj/Debug/GPS.NET (Desktop Framework 2.0).csprojAssemblyReference.cache
new file mode 100644
index 0000000..d9ed93c
Binary files /dev/null and b/obj/Debug/GPS.NET (Desktop Framework 2.0).csprojAssemblyReference.cache differ
diff --git a/obj/Debug/GPS.NET (Desktop Framework 3.5).csprojAssemblyReference.cache b/obj/Debug/GPS.NET (Desktop Framework 3.5).csprojAssemblyReference.cache
new file mode 100644
index 0000000..92f7c28
Binary files /dev/null and b/obj/Debug/GPS.NET (Desktop Framework 3.5).csprojAssemblyReference.cache differ
diff --git a/obj/Debug/GPS.NET (Desktop Framework 4.0).csprojAssemblyReference.cache b/obj/Debug/GPS.NET (Desktop Framework 4.0).csprojAssemblyReference.cache
new file mode 100644
index 0000000..d9ed93c
Binary files /dev/null and b/obj/Debug/GPS.NET (Desktop Framework 4.0).csprojAssemblyReference.cache differ
diff --git a/obj/Debug/GPS.NET (VS2008 Designers).csprojAssemblyReference.cache b/obj/Debug/GPS.NET (VS2008 Designers).csprojAssemblyReference.cache
new file mode 100644
index 0000000..b4de436
Binary files /dev/null and b/obj/Debug/GPS.NET (VS2008 Designers).csprojAssemblyReference.cache differ
diff --git a/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs b/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
new file mode 100644
index 0000000..c66f422
--- /dev/null
+++ b/obj/Release/.NETFramework,Version=v4.0,Profile=Client.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0,Profile=Client", FrameworkDisplayName = ".NET Framework 4 Client Profile")]
diff --git a/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.cs b/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..5d01041
--- /dev/null
+++ b/obj/Release/.NETFramework,Version=v4.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0", FrameworkDisplayName = ".NET Framework 4")]
diff --git a/obj/Release/GPS.NET (Desktop Framework 2.0).csprojAssemblyReference.cache b/obj/Release/GPS.NET (Desktop Framework 2.0).csprojAssemblyReference.cache
new file mode 100644
index 0000000..d9ed93c
Binary files /dev/null and b/obj/Release/GPS.NET (Desktop Framework 2.0).csprojAssemblyReference.cache differ
diff --git a/obj/Release/GPS.NET (Desktop Framework 3.5).csprojAssemblyReference.cache b/obj/Release/GPS.NET (Desktop Framework 3.5).csprojAssemblyReference.cache
new file mode 100644
index 0000000..e188599
Binary files /dev/null and b/obj/Release/GPS.NET (Desktop Framework 3.5).csprojAssemblyReference.cache differ
diff --git a/obj/Release/GPS.NET (Desktop Framework 4.0).csprojAssemblyReference.cache b/obj/Release/GPS.NET (Desktop Framework 4.0).csprojAssemblyReference.cache
new file mode 100644
index 0000000..d9ed93c
Binary files /dev/null and b/obj/Release/GPS.NET (Desktop Framework 4.0).csprojAssemblyReference.cache differ