# Source for SKU: https://thelazyadministrator.com/2018/03/19/get-friendly-license-name-for-all-users-in-office-365-using-powershell/
# May needs updates later on
$Script:O365SKU = @{
    "O365_BUSINESS_ESSENTIALS"           = "Office 365 Business Essentials"
    "O365_BUSINESS_PREMIUM"              = "Office 365 Business Premium"
    "DESKLESSPACK"                       = "Office 365 (Plan K1)"
    "DESKLESSWOFFPACK"                   = "Office 365 (Plan K2)"
    "LITEPACK"                           = "Office 365 (Plan P1)"
    "EXCHANGESTANDARD"                   = "Office 365 Exchange Online Only"
    "STANDARDPACK"                       = "Enterprise Plan E1"
    "STANDARDWOFFPACK"                   = "Office 365 (Plan E2)"
    "ENTERPRISEPACK"                     = "Enterprise Plan E3"
    "ENTERPRISEPACKLRG"                  = "Enterprise Plan E3"
    "ENTERPRISEWITHSCAL"                 = "Enterprise Plan E4"
    "STANDARDPACK_STUDENT"               = "Office 365 (Plan A1) for Students"
    "STANDARDWOFFPACKPACK_STUDENT"       = "Office 365 (Plan A2) for Students"
    "ENTERPRISEPACK_STUDENT"             = "Office 365 (Plan A3) for Students"
    "ENTERPRISEWITHSCAL_STUDENT"         = "Office 365 (Plan A4) for Students"
    "STANDARDPACK_FACULTY"               = "Office 365 (Plan A1) for Faculty"
    "STANDARDWOFFPACKPACK_FACULTY"       = "Office 365 (Plan A2) for Faculty"
    "ENTERPRISEPACK_FACULTY"             = "Office 365 (Plan A3) for Faculty"
    "ENTERPRISEWITHSCAL_FACULTY"         = "Office 365 (Plan A4) for Faculty"
    "ENTERPRISEPACK_B_PILOT"             = "Office 365 (Enterprise Preview)"
    "STANDARD_B_PILOT"                   = "Office 365 (Small Business Preview)"
    "VISIOCLIENT"                        = "Visio Pro Online"
    "POWER_BI_ADDON"                     = "Office 365 Power BI Addon"
    "POWER_BI_INDIVIDUAL_USE"            = "Power BI Individual User"
    "POWER_BI_STANDALONE"                = "Power BI Stand Alone"
    "POWER_BI_STANDARD"                  = "Power-BI Standard"
    "PROJECTESSENTIALS"                  = "Project Lite"
    "PROJECTCLIENT"                      = "Project Professional"
    "PROJECTONLINE_PLAN_1"               = "Project Online"
    "PROJECTONLINE_PLAN_2"               = "Project Online and PRO"
    "ProjectPremium"                     = "Project Online Premium"
    "ECAL_SERVICES"                      = "ECAL"
    "EMS"                                = "Enterprise Mobility Suite"
    "RIGHTSMANAGEMENT_ADHOC"             = "Windows Azure Rights Management"
    "MCOMEETADV"                         = "PSTN conferencing"
    "SHAREPOINTSTORAGE"                  = "SharePoint storage"
    "PLANNERSTANDALONE"                  = "Planner Standalone"
    "CRMIUR"                             = "CMRIUR"
    "BI_AZURE_P1"                        = "Power BI Reporting and Analytics"
    "INTUNE_A"                           = "Windows Intune Plan A"
    "PROJECTWORKMANAGEMENT"              = "Office 365 Planner Preview"
    "ATP_ENTERPRISE"                     = "Exchange Online Advanced Threat Protection"
    "EQUIVIO_ANALYTICS"                  = "Office 365 Advanced eDiscovery"
    "AAD_BASIC"                          = "Azure Active Directory Basic"
    "RMS_S_ENTERPRISE"                   = "Azure Active Directory Rights Management"
    "AAD_PREMIUM"                        = "Azure Active Directory Premium"
    "MFA_PREMIUM"                        = "Azure Multi-Factor Authentication"
    "STANDARDPACK_GOV"                   = "Microsoft Office 365 (Plan G1) for Government"
    "STANDARDWOFFPACK_GOV"               = "Microsoft Office 365 (Plan G2) for Government"
    "ENTERPRISEPACK_GOV"                 = "Microsoft Office 365 (Plan G3) for Government"
    "ENTERPRISEWITHSCAL_GOV"             = "Microsoft Office 365 (Plan G4) for Government"
    "DESKLESSPACK_GOV"                   = "Microsoft Office 365 (Plan K1) for Government"
    "ESKLESSWOFFPACK_GOV"                = "Microsoft Office 365 (Plan K2) for Government"
    "EXCHANGESTANDARD_GOV"               = "Microsoft Office 365 Exchange Online (Plan 1) only for Government"
    "EXCHANGEENTERPRISE_GOV"             = "Microsoft Office 365 Exchange Online (Plan 2) only for Government"
    "SHAREPOINTDESKLESS_GOV"             = "SharePoint Online Kiosk"
    "EXCHANGE_S_DESKLESS_GOV"            = "Exchange Kiosk"
    "RMS_S_ENTERPRISE_GOV"               = "Windows Azure Active Directory Rights Management"
    "OFFICESUBSCRIPTION_GOV"             = "Office ProPlus"
    "MCOSTANDARD_GOV"                    = "Lync Plan 2G"
    "SHAREPOINTWAC_GOV"                  = "Office Online for Government"
    "SHAREPOINTENTERPRISE_GOV"           = "SharePoint Plan 2G"
    "EXCHANGE_S_ENTERPRISE_GOV"          = "Exchange Plan 2G"
    "EXCHANGE_S_ARCHIVE_ADDON_GOV"       = "Exchange Online Archiving"
    "EXCHANGE_S_DESKLESS"                = "Exchange Online Kiosk"
    "SHAREPOINTDESKLESS"                 = "SharePoint Online Kiosk"
    "SHAREPOINTWAC"                      = "Office Online"
    "YAMMER_ENTERPRISE"                  = "Yammer for the Starship Enterprise"
    "EXCHANGE_L_STANDARD"                = "Exchange Online (Plan 1)"
    "MCOLITE"                            = "Lync Online (Plan 1)"
    "SHAREPOINTLITE"                     = "SharePoint Online (Plan 1)"
    "OFFICE_PRO_PLUS_SUBSCRIPTION_SMBIZ" = "Office ProPlus"
    "EXCHANGE_S_STANDARD_MIDMARKET"      = "Exchange Online (Plan 1)"
    "MCOSTANDARD_MIDMARKET"              = "Lync Online (Plan 1)"
    "SHAREPOINTENTERPRISE_MIDMARKET"     = "SharePoint Online (Plan 1)"
    "OFFICESUBSCRIPTION"                 = "Office ProPlus"
    "YAMMER_MIDSIZE"                     = "Yammer"
    "DYN365_ENTERPRISE_PLAN1"            = "Dynamics 365 Customer Engagement Plan Enterprise Edition"
    "ENTERPRISEPREMIUM_NOPSTNCONF"       = "Enterprise E5 (without Audio Conferencing)"
    "ENTERPRISEPREMIUM"                  = "Enterprise E5 (with Audio Conferencing)"
    "MCOSTANDARD"                        = "Skype for Business Online Standalone Plan 2"
    "PROJECT_MADEIRA_PREVIEW_IW_SKU"     = "Dynamics 365 for Financials for IWs"
    "STANDARDWOFFPACK_IW_STUDENT"        = "Office 365 Education for Students"
    "STANDARDWOFFPACK_IW_FACULTY"        = "Office 365 Education for Faculty"
    "EOP_ENTERPRISE_FACULTY"             = "Exchange Online Protection for Faculty"
    "EXCHANGESTANDARD_STUDENT"           = "Exchange Online (Plan 1) for Students"
    "OFFICESUBSCRIPTION_STUDENT"         = "Office ProPlus Student Benefit"
    "STANDARDWOFFPACK_FACULTY"           = "Office 365 Education E1 for Faculty"
    "STANDARDWOFFPACK_STUDENT"           = "Microsoft Office 365 (Plan A2) for Students"
    "DYN365_FINANCIALS_BUSINESS_SKU"     = "Dynamics 365 for Financials Business Edition"
    "DYN365_FINANCIALS_TEAM_MEMBERS_SKU" = "Dynamics 365 for Team Members Business Edition"
    "FLOW_FREE"                          = "Microsoft Flow Free"
    "POWER_BI_PRO"                       = "Power BI Pro"
    "O365_BUSINESS"                      = "Office 365 Business"
    "DYN365_ENTERPRISE_SALES"            = "Dynamics Office 365 Enterprise Sales"
    "RIGHTSMANAGEMENT"                   = "Rights Management"
    "PROJECTPROFESSIONAL"                = "Project Professional"
    "VISIOONLINE_PLAN1"                  = "Visio Online Plan 1"
    "EXCHANGEENTERPRISE"                 = "Exchange Online Plan 2"
    "DYN365_ENTERPRISE_P1_IW"            = "Dynamics 365 P1 Trial for Information Workers"
    "DYN365_ENTERPRISE_TEAM_MEMBERS"     = "Dynamics 365 For Team Members Enterprise Edition"
    "CRMSTANDARD"                        = "Microsoft Dynamics CRM Online Professional"
    "EXCHANGEARCHIVE_ADDON"              = "Exchange Online Archiving For Exchange Online"
    "EXCHANGEDESKLESS"                   = "Exchange Online Kiosk"
    "SPZA_IW"                            = "App Connect"
    "WINDOWS_STORE"                      = "Windows Store for Business"
    "MCOEV"                              = "Microsoft Phone System"
    "VIDEO_INTEROP"                      = "Polycom Skype Meeting Video Interop for Skype for Business"
    "SPE_E5"                             = "Microsoft 365 E5"
    "SPE_E3"                             = "Microsoft 365 E3"
    "ATA"                                = "Advanced Threat Analytics"
    "MCOPSTN2"                           = "Domestic and International Calling Plan"
    "FLOW_P1"                            = "Microsoft Flow Plan 1"
    "FLOW_P2"                            = "Microsoft Flow Plan 2"
    "POWERAPPS_VIRAL"                    = "Microsoft PowerApps Plan 2"
}

function Get-NavDevice

{

  [CmdletBinding(SupportsShouldProcess = $true, DefaultParameterSetName='ByName')]
  param (
    [Parameter(ParameterSetName='ByName')]
    [parameter(HelpMessage = 'Search with part of the Devicename (FQDN hostname)')]
    [ValidateNotNullOrEmpty()]
    [string]$Name,

    [Parameter(ParameterSetName='ByModel')]
    [parameter(HelpMessage = 'Search with part of the model name')]
    [ValidateNotNullOrEmpty()]
    [string]$Model,

    [Parameter(ParameterSetName='ByIP')]
    [parameter(HelpMessage = 'Search with part of the device IP address')]
    [ValidateNotNullOrEmpty()]
    [string]$IP,


    [parameter(HelpMessage = 'Type of device to include, for example: SW, GSW, EDGE etc.')]
    [ValidateNotNullOrEmpty()]
    [ValidateSet('SW','GSW','EDGE','SRV','POWER','WLAN','OTHER')]
    [string]$Type

  )

  IF ($PSBoundParameters.ContainsKey('Name'))
  {$UriSuffix = "/?page_size=50000&search=$Name"}
  ELSE
  {$UriSuffix = '/?page_size=50000'}

  IF ($Model -and $Type)
  {$Filter = {($_.category.id -eq "$Type") -and ($_.chassis.model_name -like "*$Model*")}}
  ELSEIF ($IP -and $Type)
  {$Filter = {($_.category.id -eq "$Type") -and ($_.ip -eq "$IP")}}
  ELSEIF ($Model)
  {$Filter = {$_.chassis.model_name -like "*$Model*"}}
  ELSEIF ($IP)
  {$Filter = {$_.ip -eq "$IP"}}
  ELSEIF ($Type)
  {$Filter = {$_.category.id -eq "$Type"}}
  ELSE
  {$Filter = {$_ -like '*'}}

  $APIUri = 'http://8.8.8.8/api/1/netbox' + $UriSuffix
  $ApiQuery = Invoke-RestMethod -Method Get -Headers @{'Authorization'='token cakewalkman20321312414123'} -Uri $APIUri
  Write-Debug "The value of results.next is ($ApiQuery).Next"
  Write-Debug "The value of UriSuffix is $UriSuffix"
  Write-Debug "The value of ApiQuery is ($ApiQuery).results"
  Write-Debug "The value of ApiUri is $ApiUri"
  Write-Debug "The value of Filter before foreach is $Filter"

$Output = $APIQuery.Results | Where-Object -FilterScript $Filter | ForEach-Object {
    New-Object -TypeName psobject -Property @{
                                    Devicename = $_.sysname
                                    Type = $_.category.id
                                    IP = $_.ip
                                    NetboxID = $_.id
                                    Modelname = $_.chassis.model_name
                                    Serialnumber = $_.chassis.serial
                                    Room = $_.room.location + ' ' + $_.room.id
                                    RoomDescription = $_.room.description
                                    SoftwareVersion = $_.type.description + '' +$_.type.version
                                    HardwareRevision = $_.chassis.hardware_revision
                                    FirmwareRevision = $_.chassis.firmware_revision
                                    SoftwareRevision = $_.chassis.software_revision
                                    OrganizationId = $_.organization.Id
                                    OrganizationParent = $_.organization.parent
                                    OrganizationDescription = $_.organization.description
                                    SNMPVersion = $_.snmp_version
                                    UpTime = $_.up_since
                                    Status = SWITCH ($_.up) {
                                                       'Y' {'Online'}
                                                       'N' {'Offline'}
                                                            }
                                    Discovered = $_.discovered
                                    Group = $_.groups.ID
                                    }
  }
  Write-Debug "The value of Filter after foreach is $Filter"
  Write-Debug "The value of Output after foreach is $Output"
  Write-Output $Output
}
# SIG # Begin signature block
# MIIN+wYJKoZIhvcNAQcCoIIN7DCCDegCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUBFMviPf79A/ToKmXFHg2x+cN
# hTigggsxMIIFSTCCBDGgAwIBAgIRAPMKxE4HZQs+EipTj3vsWEUwDQYJKoZIhvcN
# AQELBQAwfTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3Rl
# cjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQx
# IzAhBgNVBAMTGkNPTU9ETyBSU0EgQ29kZSBTaWduaW5nIENBMB4XDTE4MTExNjAw
# MDAwMFoXDTIyMTExNjIzNTk1OVowgY4xCzAJBgNVBAYTAk5PMQ0wCwYDVQQRDAQ2
# NDU2MRgwFgYDVQQIDA9Nb3JlIG9nIFJvbXNkYWwxDzANBgNVBAcMBlNrYWFsYTEX
# MBUGA1UECQwOS3Zlcm5odXNsaWEgMTgxFTATBgNVBAoMDExhcnMgU3ZpbmdlbjEV
# MBMGA1UEAwwMTGFycyBTdmluZ2VuMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
# CgKCAQEA3lYNFOUtf0eMeUVVQlCLQTVFJLW5H/U54jYPdAJYtADo/FiZlDtvqcnr
# XfFXg7Y1d6yYItV+QsW3eaZGRRbqe7LNpYD7xqxfD1fLWXXXVGr3Bohr0tt+JZ6i
# u9+VjBKoypbk81pclZbp1BeXD1LYEfBE0g8avFAfiwT7JYg8qYgCQaDikq69Xijr
# qw8hug7fJ1aEzUG+g2o9hjZcaDMmAa8ohVYCmkk0tyybizdUA2P2iiOzcYGTwLih
# VuvF7A1sNZ/jZ4ffHlhqLT68oP3dWwIzmkPxSV7vKE3yMITLEQmSP7/uJvp5qg0d
# CLv2mz20fMUN2ad2i5QgJ+wnJ/FjuQIDAQABo4IBsDCCAawwHwYDVR0jBBgwFoAU
# KZFg/4pN+uv5pmq4z/nmS71JzhIwHQYDVR0OBBYEFKx5HPnt0GiU4dXHDSGe7tCj
# 0u5xMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMBMGA1UdJQQMMAoGCCsG
# AQUFBwMDMBEGCWCGSAGG+EIBAQQEAwIEEDBGBgNVHSAEPzA9MDsGDCsGAQQBsjEB
# AgEDAjArMCkGCCsGAQUFBwIBFh1odHRwczovL3NlY3VyZS5jb21vZG8ubmV0L0NQ
# UzBDBgNVHR8EPDA6MDigNqA0hjJodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01P
# RE9SU0FDb2RlU2lnbmluZ0NBLmNybDB0BggrBgEFBQcBAQRoMGYwPgYIKwYBBQUH
# MAKGMmh0dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET1JTQUNvZGVTaWduaW5n
# Q0EuY3J0MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5jb21vZG9jYS5jb20wIQYD
# VR0RBBowGIEWbGFycy5zdmluZ2VuQGdtYWlsLmNvbTANBgkqhkiG9w0BAQsFAAOC
# AQEAVVafexhPkBmVX66iUEO9cka2KDhnoa67LS3+vS0+Q+jjny9bVTYvZXbSaDmk
# WgQKZZk3iK0AMum3eCg+Hkm4bkfar2zBUeABX45IdAV1I698GHZkmsIWAjematn7
# 5qQnX3t0Xjz6RBkvfTdItY6sFzZUAkDUGtiy3BCfANgkQKhqTvRljK6S653tynqt
# yVvb65E+K7rbe6S00L6ichAUCYM2EUV9PpvZMViUrz74pAlOl2oopOBc8SGPWC+U
# Ja/IdQocXch1+ePnkktgZBDqVMkoP846Bh0CrPOxBPAAgMy/407jXXfjqJL8TZdD
# MvT9GeBtv8Spl9aQSl+lYRzA+zCCBeAwggPIoAMCAQICEC58h8wOk0pS/pT9HLfN
# NK8wDQYJKoZIhvcNAQEMBQAwgYUxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVh
# dGVyIE1hbmNoZXN0ZXIxEDAOBgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9E
# TyBDQSBMaW1pdGVkMSswKQYDVQQDEyJDT01PRE8gUlNBIENlcnRpZmljYXRpb24g
# QXV0aG9yaXR5MB4XDTEzMDUwOTAwMDAwMFoXDTI4MDUwODIzNTk1OVowfTELMAkG
# A1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMH
# U2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxIzAhBgNVBAMTGkNP
# TU9ETyBSU0EgQ29kZSBTaWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
# MIIBCgKCAQEAppiQY3eRNH+K0d3pZzER68we/TEds7liVz+TvFvjnx4kMhEna7xR
# kafPnp4ls1+BqBgPHR4gMA77YXuGCbPj/aJonRwsnb9y4+R1oOU1I47Jiu4aDGTH
# 2EKhe7VSA0s6sI4jS0tj4CKUN3vVeZAKFBhRLOb+wRLwHD9hYQqMotz2wzCqzSgY
# dUjBeVoIzbuMVYz31HaQOjNGUHOYXPSFSmsPgN1e1r39qS/AJfX5eNeNXxDCRFU8
# kDwxRstwrgepCuOvwQFvkBoj4l8428YIXUezg0HwLgA3FLkSqnmSUs2HD3vYYimk
# fjC9G7WMcrRI8uPoIfleTGJ5iwIGn3/VCwIDAQABo4IBUTCCAU0wHwYDVR0jBBgw
# FoAUu69+Aj36pvE8hI6t7jiY7NkyMtQwHQYDVR0OBBYEFCmRYP+KTfrr+aZquM/5
# 5ku9Sc4SMA4GA1UdDwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMBMGA1Ud
# JQQMMAoGCCsGAQUFBwMDMBEGA1UdIAQKMAgwBgYEVR0gADBMBgNVHR8ERTBDMEGg
# P6A9hjtodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9SU0FDZXJ0aWZpY2F0
# aW9uQXV0aG9yaXR5LmNybDBxBggrBgEFBQcBAQRlMGMwOwYIKwYBBQUHMAKGL2h0
# dHA6Ly9jcnQuY29tb2RvY2EuY29tL0NPTU9ET1JTQUFkZFRydXN0Q0EuY3J0MCQG
# CCsGAQUFBzABhhhodHRwOi8vb2NzcC5jb21vZG9jYS5jb20wDQYJKoZIhvcNAQEM
# BQADggIBAAI/AjnD7vjKO4neDG1NsfFOkk+vwjgsBMzFYxGrCWOvq6LXAj/MbxnD
# PdYaCJT/JdipiKcrEBrgm7EHIhpRHDrU4ekJv+YkdK8eexYxbiPvVFEtUgLidQgF
# TPG3UeFRAMaH9mzuEER2V2rx31hrIapJ1Hw3Tr3/tnVUQBg2V2cRzU8C5P7z2vx1
# F9vst/dlCSNJH0NXg+p+IHdhyE3yu2VNqPeFRQevemknZZApQIvfezpROYyoH3B5
# rW1CIKLPDGwDjEzNcweU51qOOgS6oqF8H8tjOhWn1BUbp1JHMqn0v2RH0aofU04y
# MHPCb7d4gp1c/0a7ayIdiAv4G6o0pvyM9d1/ZYyMMVcx0DbsR6HPy4uo7xwYWMUG
# d8pLm1GvTAhKeo/io1Lijo7MJuSy2OU4wqjtxoGcNWupWGFKCpe0S0K2VZ2+medw
# bVn4bSoMfxlgXwyaiGwwrFIJkBYb/yud29AgyonqKH4yjhnfe0gzHtdl+K7J+IMU
# k3Z9ZNCOzr41ff9yMU2fnr0ebC+ojwwGUPuMJ7N2yfTm18M04oyHIYZh/r9VdOEh
# dwMKaGy75Mmp5s9ZJet87EUOeWZo6CLNuO+YhU2WETwJitB/vCgoE/tqylSNklzN
# wmWYBp7OSFvUtTeTRkF8B93P+kPvumdh/31J4LswfVyA4+YWOUunMYICNDCCAjAC
# AQEwgZIwfTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3Rl
# cjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQx
# IzAhBgNVBAMTGkNPTU9ETyBSU0EgQ29kZSBTaWduaW5nIENBAhEA8wrETgdlCz4S
# KlOPe+xYRTAJBgUrDgMCGgUAoHgwGAYKKwYBBAGCNwIBDDEKMAigAoAAoQKAADAZ
# BgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgorBgEEAYI3AgELMQ4wDAYKKwYB
# BAGCNwIBFTAjBgkqhkiG9w0BCQQxFgQUoLQ9bhjPF67RbYW30Ci2IcoFrmwwDQYJ
# KoZIhvcNAQEBBQAEggEACRW7tarnEgyNEXPl1Bo24xhrSXDXbbNwh/0uj/lZvIks
# gPbD/83mEVBAll2wnUmAWq1eI2CMWcNHd9XDhOHHva9QmVUOWkv/AXIrWm0x6o9m
# bDlfnM72TT53tueOpCadtSN/wCCNtthF/Xi/nxaQo18x8NYaJSu/sLHwQOvLbvWE
# T9R7TqThR7XPCCG1vUvEYZyHx87VT8joBmYtnu1tDxadRgjaAOgwO6z41McKSysS
# O3S0fPLflhUJwWMmKSoBOZYlux8Q5kohboywqccPNNSCNWxevRkgRa7tGdgW49lw
# kwr92kSf8LVOcm/4NK1Rz8Uuty9HP1yrfL6/zFFjzA==
# SIG # End signature block