diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..d32bdb3
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,3 @@
+{
+ "dotnet.defaultSolution": "adreporting.sln"
+}
\ No newline at end of file
diff --git a/adreporting.sln b/adreporting.sln
new file mode 100644
index 0000000..ac70fc5
--- /dev/null
+++ b/adreporting.sln
@@ -0,0 +1,22 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31903.59
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "adreporting", "adreporting\adreporting.csproj", "{21E61748-E8E7-4262-B332-25CE460946B2}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {21E61748-E8E7-4262-B332-25CE460946B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {21E61748-E8E7-4262-B332-25CE460946B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {21E61748-E8E7-4262-B332-25CE460946B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {21E61748-E8E7-4262-B332-25CE460946B2}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+EndGlobal
diff --git a/adreporting/Program.cs b/adreporting/Program.cs
new file mode 100644
index 0000000..2a8e00e
--- /dev/null
+++ b/adreporting/Program.cs
@@ -0,0 +1,29 @@
+// See https://aka.ms/new-console-template for more information
+// Console.WriteLine("Hello, World!");
+
+using System.ComponentModel.DataAnnotations;
+using System.Reflection.PortableExecutable;
+using System.DirectoryServices.AccountManagement;
+
+DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://ua.ad.alaska.edu");
+DirectorySearcher searcher = new DirectorySearcher(directoryEntry) {
+ PageSize = int.MaxValue,
+ FilterUIHintAttribute = "(&(objectCategory=person))"
+}
+
+searcher.PropertiesToLoad.Add("sn");
+
+var result = searcher.FindOne();
+
+if (result == null) {
+ return;
+}
+
+string surname;
+
+if (result.Properties.Contains("sn")) {
+ surname = result.Properties["sn"][0].ToString();
+ Console.WriteLine(surname);
+} else {
+ Console.WriteLine("No user found!");
+}
\ No newline at end of file
diff --git a/adreporting/adreporting.csproj b/adreporting/adreporting.csproj
new file mode 100644
index 0000000..2150e37
--- /dev/null
+++ b/adreporting/adreporting.csproj
@@ -0,0 +1,10 @@
+
+
+
+ Exe
+ net8.0
+ enable
+ enable
+
+
+
diff --git a/adreporting/bin/Debug/net8.0/adreporting.deps.json b/adreporting/bin/Debug/net8.0/adreporting.deps.json
new file mode 100644
index 0000000..50ebc8e
--- /dev/null
+++ b/adreporting/bin/Debug/net8.0/adreporting.deps.json
@@ -0,0 +1,23 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v8.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v8.0": {
+ "adreporting/1.0.0": {
+ "runtime": {
+ "adreporting.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "adreporting/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/adreporting/bin/Debug/net8.0/adreporting.dll b/adreporting/bin/Debug/net8.0/adreporting.dll
new file mode 100644
index 0000000..b05b88a
Binary files /dev/null and b/adreporting/bin/Debug/net8.0/adreporting.dll differ
diff --git a/adreporting/bin/Debug/net8.0/adreporting.exe b/adreporting/bin/Debug/net8.0/adreporting.exe
new file mode 100644
index 0000000..a17b35e
Binary files /dev/null and b/adreporting/bin/Debug/net8.0/adreporting.exe differ
diff --git a/adreporting/bin/Debug/net8.0/adreporting.pdb b/adreporting/bin/Debug/net8.0/adreporting.pdb
new file mode 100644
index 0000000..495ff40
Binary files /dev/null and b/adreporting/bin/Debug/net8.0/adreporting.pdb differ
diff --git a/adreporting/bin/Debug/net8.0/adreporting.runtimeconfig.json b/adreporting/bin/Debug/net8.0/adreporting.runtimeconfig.json
new file mode 100644
index 0000000..becfaea
--- /dev/null
+++ b/adreporting/bin/Debug/net8.0/adreporting.runtimeconfig.json
@@ -0,0 +1,12 @@
+{
+ "runtimeOptions": {
+ "tfm": "net8.0",
+ "framework": {
+ "name": "Microsoft.NETCore.App",
+ "version": "8.0.0"
+ },
+ "configProperties": {
+ "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
+ }
+ }
+}
\ No newline at end of file
diff --git a/adreporting/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/adreporting/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2217181
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/adreporting/obj/Debug/net8.0/adreporting.AssemblyInfo.cs b/adreporting/obj/Debug/net8.0/adreporting.AssemblyInfo.cs
new file mode 100644
index 0000000..3071f47
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.AssemblyInfo.cs
@@ -0,0 +1,22 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("adreporting")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("adreporting")]
+[assembly: System.Reflection.AssemblyTitleAttribute("adreporting")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// Generated by the MSBuild WriteCodeFragment class.
+
diff --git a/adreporting/obj/Debug/net8.0/adreporting.AssemblyInfoInputs.cache b/adreporting/obj/Debug/net8.0/adreporting.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..68e2888
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+5849a552f7fce97fca66136ab543aa2fc71af9cf0bd351939b61073acdcd2ad7
diff --git a/adreporting/obj/Debug/net8.0/adreporting.GeneratedMSBuildEditorConfig.editorconfig b/adreporting/obj/Debug/net8.0/adreporting.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..14f0fc8
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,13 @@
+is_global = true
+build_property.TargetFramework = net8.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb =
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property.EnforceExtendedAnalyzerRules =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = adreporting
+build_property.ProjectDir = P:\adreporting\adreporting\
+build_property.EnableComHosting =
+build_property.EnableGeneratedComInterfaceComImportInterop =
diff --git a/adreporting/obj/Debug/net8.0/adreporting.GlobalUsings.g.cs b/adreporting/obj/Debug/net8.0/adreporting.GlobalUsings.g.cs
new file mode 100644
index 0000000..8578f3d
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.GlobalUsings.g.cs
@@ -0,0 +1,8 @@
+//
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/adreporting/obj/Debug/net8.0/adreporting.assets.cache b/adreporting/obj/Debug/net8.0/adreporting.assets.cache
new file mode 100644
index 0000000..eb9faa8
Binary files /dev/null and b/adreporting/obj/Debug/net8.0/adreporting.assets.cache differ
diff --git a/adreporting/obj/Debug/net8.0/adreporting.csproj.CoreCompileInputs.cache b/adreporting/obj/Debug/net8.0/adreporting.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..ddb28e3
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+2fed1aebbc644c0106b68bc84f16b3edc9292869eb7fb2fad4545886c86aafc5
diff --git a/adreporting/obj/Debug/net8.0/adreporting.csproj.FileListAbsolute.txt b/adreporting/obj/Debug/net8.0/adreporting.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..eefb8d2
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.csproj.FileListAbsolute.txt
@@ -0,0 +1,14 @@
+p:\adreporting\adreporting\bin\Debug\net8.0\adreporting.exe
+p:\adreporting\adreporting\bin\Debug\net8.0\adreporting.deps.json
+p:\adreporting\adreporting\bin\Debug\net8.0\adreporting.runtimeconfig.json
+p:\adreporting\adreporting\bin\Debug\net8.0\adreporting.dll
+p:\adreporting\adreporting\bin\Debug\net8.0\adreporting.pdb
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.GeneratedMSBuildEditorConfig.editorconfig
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.AssemblyInfoInputs.cache
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.AssemblyInfo.cs
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.csproj.CoreCompileInputs.cache
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.dll
+p:\adreporting\adreporting\obj\Debug\net8.0\refint\adreporting.dll
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.pdb
+p:\adreporting\adreporting\obj\Debug\net8.0\adreporting.genruntimeconfig.cache
+p:\adreporting\adreporting\obj\Debug\net8.0\ref\adreporting.dll
diff --git a/adreporting/obj/Debug/net8.0/adreporting.dll b/adreporting/obj/Debug/net8.0/adreporting.dll
new file mode 100644
index 0000000..b05b88a
Binary files /dev/null and b/adreporting/obj/Debug/net8.0/adreporting.dll differ
diff --git a/adreporting/obj/Debug/net8.0/adreporting.genruntimeconfig.cache b/adreporting/obj/Debug/net8.0/adreporting.genruntimeconfig.cache
new file mode 100644
index 0000000..0ab9c7a
--- /dev/null
+++ b/adreporting/obj/Debug/net8.0/adreporting.genruntimeconfig.cache
@@ -0,0 +1 @@
+1e85c8e6293cb3a7cc5c266263afa0b745f4ded1a4dfc256f57b1e144e6b2264
diff --git a/adreporting/obj/Debug/net8.0/adreporting.pdb b/adreporting/obj/Debug/net8.0/adreporting.pdb
new file mode 100644
index 0000000..495ff40
Binary files /dev/null and b/adreporting/obj/Debug/net8.0/adreporting.pdb differ
diff --git a/adreporting/obj/Debug/net8.0/apphost.exe b/adreporting/obj/Debug/net8.0/apphost.exe
new file mode 100644
index 0000000..a17b35e
Binary files /dev/null and b/adreporting/obj/Debug/net8.0/apphost.exe differ
diff --git a/adreporting/obj/Debug/net8.0/ref/adreporting.dll b/adreporting/obj/Debug/net8.0/ref/adreporting.dll
new file mode 100644
index 0000000..42ed598
Binary files /dev/null and b/adreporting/obj/Debug/net8.0/ref/adreporting.dll differ
diff --git a/adreporting/obj/Debug/net8.0/refint/adreporting.dll b/adreporting/obj/Debug/net8.0/refint/adreporting.dll
new file mode 100644
index 0000000..42ed598
Binary files /dev/null and b/adreporting/obj/Debug/net8.0/refint/adreporting.dll differ
diff --git a/adreporting/obj/adreporting.csproj.nuget.dgspec.json b/adreporting/obj/adreporting.csproj.nuget.dgspec.json
new file mode 100644
index 0000000..f2ddfb1
--- /dev/null
+++ b/adreporting/obj/adreporting.csproj.nuget.dgspec.json
@@ -0,0 +1,66 @@
+{
+ "format": 1,
+ "restore": {
+ "P:\\adreporting\\adreporting\\adreporting.csproj": {}
+ },
+ "projects": {
+ "P:\\adreporting\\adreporting\\adreporting.csproj": {
+ "version": "1.0.0",
+ "restore": {
+ "projectUniqueName": "P:\\adreporting\\adreporting\\adreporting.csproj",
+ "projectName": "adreporting",
+ "projectPath": "P:\\adreporting\\adreporting\\adreporting.csproj",
+ "packagesPath": "C:\\Users\\jmzetterman\\.nuget\\packages\\",
+ "outputPath": "P:\\adreporting\\adreporting\\obj\\",
+ "projectStyle": "PackageReference",
+ "configFilePaths": [
+ "C:\\Users\\jmzetterman\\AppData\\Roaming\\NuGet\\NuGet.Config"
+ ],
+ "originalTargetFrameworks": [
+ "net8.0"
+ ],
+ "sources": {
+ "https://api.nuget.org/v3/index.json": {}
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "projectReferences": {}
+ }
+ },
+ "warningProperties": {
+ "warnAsError": [
+ "NU1605"
+ ]
+ },
+ "restoreAuditProperties": {
+ "enableAudit": "true",
+ "auditLevel": "low",
+ "auditMode": "direct"
+ }
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "imports": [
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48",
+ "net481"
+ ],
+ "assetTargetFallback": true,
+ "warn": true,
+ "frameworkReferences": {
+ "Microsoft.NETCore.App": {
+ "privateAssets": "all"
+ }
+ },
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json"
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/adreporting/obj/adreporting.csproj.nuget.g.props b/adreporting/obj/adreporting.csproj.nuget.g.props
new file mode 100644
index 0000000..e604fb7
--- /dev/null
+++ b/adreporting/obj/adreporting.csproj.nuget.g.props
@@ -0,0 +1,15 @@
+
+
+
+ True
+ NuGet
+ $(MSBuildThisFileDirectory)project.assets.json
+ $(UserProfile)\.nuget\packages\
+ C:\Users\jmzetterman\.nuget\packages\
+ PackageReference
+ 6.9.1
+
+
+
+
+
\ No newline at end of file
diff --git a/adreporting/obj/adreporting.csproj.nuget.g.targets b/adreporting/obj/adreporting.csproj.nuget.g.targets
new file mode 100644
index 0000000..3dc06ef
--- /dev/null
+++ b/adreporting/obj/adreporting.csproj.nuget.g.targets
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/adreporting/obj/project.assets.json b/adreporting/obj/project.assets.json
new file mode 100644
index 0000000..40a04ba
--- /dev/null
+++ b/adreporting/obj/project.assets.json
@@ -0,0 +1,71 @@
+{
+ "version": 3,
+ "targets": {
+ "net8.0": {}
+ },
+ "libraries": {},
+ "projectFileDependencyGroups": {
+ "net8.0": []
+ },
+ "packageFolders": {
+ "C:\\Users\\jmzetterman\\.nuget\\packages\\": {}
+ },
+ "project": {
+ "version": "1.0.0",
+ "restore": {
+ "projectUniqueName": "P:\\adreporting\\adreporting\\adreporting.csproj",
+ "projectName": "adreporting",
+ "projectPath": "P:\\adreporting\\adreporting\\adreporting.csproj",
+ "packagesPath": "C:\\Users\\jmzetterman\\.nuget\\packages\\",
+ "outputPath": "P:\\adreporting\\adreporting\\obj\\",
+ "projectStyle": "PackageReference",
+ "configFilePaths": [
+ "C:\\Users\\jmzetterman\\AppData\\Roaming\\NuGet\\NuGet.Config"
+ ],
+ "originalTargetFrameworks": [
+ "net8.0"
+ ],
+ "sources": {
+ "https://api.nuget.org/v3/index.json": {}
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "projectReferences": {}
+ }
+ },
+ "warningProperties": {
+ "warnAsError": [
+ "NU1605"
+ ]
+ },
+ "restoreAuditProperties": {
+ "enableAudit": "true",
+ "auditLevel": "low",
+ "auditMode": "direct"
+ }
+ },
+ "frameworks": {
+ "net8.0": {
+ "targetAlias": "net8.0",
+ "imports": [
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48",
+ "net481"
+ ],
+ "assetTargetFallback": true,
+ "warn": true,
+ "frameworkReferences": {
+ "Microsoft.NETCore.App": {
+ "privateAssets": "all"
+ }
+ },
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json"
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/adreporting/obj/project.nuget.cache b/adreporting/obj/project.nuget.cache
new file mode 100644
index 0000000..aa598e9
--- /dev/null
+++ b/adreporting/obj/project.nuget.cache
@@ -0,0 +1,8 @@
+{
+ "version": 2,
+ "dgSpecHash": "u8AO9YPbHJkZ/CFhg5JZK+mQj8H3A8mhRE5mIxwyBFEURZfGRXH7H/A6Jr6nph0Yl4YtgbrIqyrJmDKdnj1e/w==",
+ "success": true,
+ "projectFilePath": "P:\\adreporting\\adreporting\\adreporting.csproj",
+ "expectedPackageFiles": [],
+ "logs": []
+}
\ No newline at end of file