exports/Set-SysManClientHealth.ps1

<#
.Synopsis
Updates the latest entry for a target.
If no health entry exists for the provided target a new health entry will be created.\r\nIf this method is called with a computer account, it is only possible to report health on that computer (TargetId and TargetName will be ignored).
If called with a user account TargetId and TargetName will be honored.
.Description
Updates the latest entry for a target.
If no health entry exists for the provided target a new health entry will be created.\r\nIf this method is called with a computer account, it is only possible to report health on that computer (TargetId and TargetName will be ignored).
If called with a user account TargetId and TargetName will be honored.
.Example
To view examples, please use the -Online parameter with Get-Help or navigate to: https://docs.microsoft.com/en-us/powershell/module/sysman.webapi/set-sysmanclienthealth
.Inputs
SysMan.Powershell.Models.IComputerHealth
.Outputs
SysMan.Powershell.Models.IApiErrorMessage
.Outputs
SysMan.Powershell.Models.IComputerHealth
.Notes
COMPLEX PARAMETER PROPERTIES
To create the parameters described below, construct a hash table containing the appropriate properties. For information on hash tables, run Get-Help about_Hash_Tables.
 
HEALTH <IComputerHealth>: Represent a computer health entry.
  Architecture <String>: Which processor architecture is used
  Build <String>: Build number of the operating system
  ClientVersion <String>: Configuration Manager Client Version
  Domain <String>: The domain the computer is joined to
  LastLoggedOnUser <String>: The username who last logged on the computer
  Manufacturer <String>: Hardware Manufacturer
  Model <String>: Hardware Model
  OperatingSystem <String>: Operating system of the computer
  Services <String>: The state of the services check.
  [AdminShare <String>]: The state of the AdminShare check.
  [CacheSize <Int32?>]: Configuration Manager Client cache size
  [ClientCertificate <String>]: The state of the Configuration Manager client certificate check
  [ClientInstalled <DateTime?>]: The date when ConfigMgr Client Health installed the Configuration Manager Client
  [CreatedDate <DateTime?>]: The date the health entry was created
  [Dns <String>]: The state of the DNS check. If ‘Error’, Verify specific log file for more information on this error. The DNS server have registered an IP address for the hostname that is not present on the specific computer, and the IP addresses are listed in the log file.
  [Drivers <String>]: The state of the driver check. Verify specific log file for more information on this error. The drivers with errors are listed in the log file
  [HwInventory <DateTime?>]: Latest timestamp when hardware inventory ran on the client
  [Id <Int64?>]: The id of this health entry. Only populated if using SysMan health component
  [InstallDate <DateTime?>]: Date and time when the computer was installed
  [LastBootTime <DateTime?>]: The last time the client was rebooted
  [LastModified <DateTime?>]: The date the health entry was updated
  [MaxLogHistory <Int32?>]: Configuration Manager Client max number of log history files
  [MaxLogSize <Int32?>]: Configuration Manager Client max size for log files
  [OSDiskFreeSpace <Double?>]: Free space in percent on the C: drive
  [OSUpdates <DateTime?>]: Date and time when the computer installed its latest patch.
  [PendingReboot <String>]: The state of the pending reboot check
  [ProvisioningMode <String>]: The state of the Configuration Manager Client provisioning mode check
  [PsBuild <Int32?>]: Powershell build number
  [PsVersion <String>]: Powershell version
  [Sitecode <String>]: Configuration Manager Client Sitecode
  [StateMessages <String>]: The state of the StateMesasges check. Verifies that the client successfully sends state messages to the management point
  [TargetId <Int64?>]: The id of the target (client) associated with this health entry. Only populated if using SysMan health component.
  [TargetName <String>]: The name of the target (client) associated with this health entry
  [Timestamp <DateTime?>]: Latest execution time of the script
  [Updates <String>]: The state of the update check. Updates attempted to install on last execution is listed here
  [Version <String>]: The version of ConfigMgr Client Health script executed by the computer.
  [Wmi <String>]: The state of the WMI check
  [WuaHandler <String>]: The state of the WUAHandler check. Performs check on Windows Update Agent Handler and registry.
.Link
https://docs.microsoft.com/en-us/powershell/module/sysman.webapi/set-sysmanclienthealth
#>

function Set-SysManClientHealth {
[OutputType([SysMan.Powershell.Models.IComputerHealth], [SysMan.Powershell.Models.IApiErrorMessage])]
[CmdletBinding(DefaultParameterSetName='PutExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
param(
    [Parameter(ParameterSetName='Put', Mandatory, ValueFromPipeline)]
    [SysMan.Powershell.Category('Body')]
    [SysMan.Powershell.Models.IComputerHealth]
    # Represent a computer health entry.
    # To construct, see NOTES section for HEALTH properties and create a hash table.
    ${Health},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Which processor architecture is used
    ${Architecture},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Build number of the operating system
    ${Build},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Configuration Manager Client Version
    ${ClientVersion},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The domain the computer is joined to
    ${Domain},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The username who last logged on the computer
    ${LastLoggedOnUser},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Hardware Manufacturer
    ${Manufacturer},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Hardware Model
    ${Model},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Operating system of the computer
    ${OperatingSystem},

    [Parameter(ParameterSetName='PutExpanded', Mandatory)]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the services check.
    ${Services},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the AdminShare check.
    ${AdminShare},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Int32]
    # Configuration Manager Client cache size
    ${CacheSize},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the Configuration Manager client certificate check
    ${ClientCertificate},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # The date when ConfigMgr Client Health installed the Configuration Manager Client
    ${ClientInstalled},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # The date the health entry was created
    ${CreatedDate},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the DNS check.
    # If ‘Error’, Verify specific log file for more information on this error.
    # The DNS server have registered an IP address for the hostname that is not present on the specific computer, and the IP addresses are listed in the log file.
    ${Dns},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the driver check.
    # Verify specific log file for more information on this error.
    # The drivers with errors are listed in the log file
    ${Drivers},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # Latest timestamp when hardware inventory ran on the client
    ${HwInventory},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Int64]
    # The id of this health entry.
    # Only populated if using SysMan health component
    ${Id},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # Date and time when the computer was installed
    ${InstallDate},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # The last time the client was rebooted
    ${LastBootTime},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # The date the health entry was updated
    ${LastModified},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Int32]
    # Configuration Manager Client max number of log history files
    ${MaxLogHistory},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Int32]
    # Configuration Manager Client max size for log files
    ${MaxLogSize},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Double]
    # Free space in percent on the C: drive
    ${OSDiskFreeSpace},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # Date and time when the computer installed its latest patch.
    ${OSUpdates},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the pending reboot check
    ${PendingReboot},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the Configuration Manager Client provisioning mode check
    ${ProvisioningMode},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Int32]
    # Powershell build number
    ${PsBuild},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Powershell version
    ${PsVersion},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # Configuration Manager Client Sitecode
    ${Sitecode},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the StateMesasges check.
    # Verifies that the client successfully sends state messages to the management point
    ${StateMessages},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.Int64]
    # The id of the target (client) associated with this health entry.
    # Only populated if using SysMan health component.
    ${TargetId},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The name of the target (client) associated with this health entry
    ${TargetName},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.DateTime]
    # Latest execution time of the script
    ${Timestamp},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the update check.
    # Updates attempted to install on last execution is listed here
    ${Updates},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The version of ConfigMgr Client Health script executed by the computer.
    ${Version},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the WMI check
    ${Wmi},

    [Parameter(ParameterSetName='PutExpanded')]
    [SysMan.Powershell.Category('Body')]
    [System.String]
    # The state of the WUAHandler check.
    # Performs check on Windows Update Agent Handler and registry.
    ${WuaHandler},

    [Parameter(DontShow)]
    [SysMan.Powershell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Wait for .NET debugger to attach
    ${Break},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [SysMan.Powershell.Category('Runtime')]
    [SysMan.Powershell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be appended to the front of the pipeline
    ${HttpPipelineAppend},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [SysMan.Powershell.Category('Runtime')]
    [SysMan.Powershell.Runtime.SendAsyncStep[]]
    # SendAsync Pipeline Steps to be prepended to the front of the pipeline
    ${HttpPipelinePrepend},

    [Parameter(DontShow)]
    [SysMan.Powershell.Category('Runtime')]
    [System.Uri]
    # The URI for the proxy server to use
    ${Proxy},

    [Parameter(DontShow)]
    [ValidateNotNull()]
    [SysMan.Powershell.Category('Runtime')]
    [System.Management.Automation.PSCredential]
    # Credentials for a proxy server to use for the remote call
    ${ProxyCredential},

    [Parameter(DontShow)]
    [SysMan.Powershell.Category('Runtime')]
    [System.Management.Automation.SwitchParameter]
    # Use the default credentials for the proxy
    ${ProxyUseDefaultCredentials}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName
        $mapping = @{
            Put = 'SysMan.WebApi.private\Set-SysManClientHealth_Put';
            PutExpanded = 'SysMan.WebApi.private\Set-SysManClientHealth_PutExpanded';
        }
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {
        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {
        throw
    }
}

end {
    try {
        $steppablePipeline.End()
    } catch {
        throw
    }
}
}

# SIG # Begin signature block
# MIIWogYJKoZIhvcNAQcCoIIWkzCCFo8CAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDdhlJ0p0DFKMYZ
# 0H5mOAeD4UtDretzFPAh4S4Pg7ncJKCCEdcwggPuMIIDV6ADAgECAhB+k+v7fMZO
# WepLmnfUBvw7MA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJaQTEVMBMGA1UE
# CBMMV2VzdGVybiBDYXBlMRQwEgYDVQQHEwtEdXJiYW52aWxsZTEPMA0GA1UEChMG
# VGhhd3RlMR0wGwYDVQQLExRUaGF3dGUgQ2VydGlmaWNhdGlvbjEfMB0GA1UEAxMW
# VGhhd3RlIFRpbWVzdGFtcGluZyBDQTAeFw0xMjEyMjEwMDAwMDBaFw0yMDEyMzAy
# MzU5NTlaMF4xCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3Jh
# dGlvbjEwMC4GA1UEAxMnU3ltYW50ZWMgVGltZSBTdGFtcGluZyBTZXJ2aWNlcyBD
# QSAtIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsayzSVRLlxwS
# CtgleZEiVypv3LgmxENza8K/LlBa+xTCdo5DASVDtKHiRfTot3vDdMwi17SUAAL3
# Te2/tLdEJGvNX0U70UTOQxJzF4KLabQry5kerHIbJk1xH7Ex3ftRYQJTpqr1SSwF
# eEWlL4nO55nn/oziVz89xpLcSvh7M+R5CvvwdYhBnP/FA1GZqtdsn5Nph2Upg4XC
# YBTEyMk7FNrAgfAfDXTekiKryvf7dHwn5vdKG3+nw54trorqpuaqJxZ9YfeYcRG8
# 4lChS+Vd+uUOpyyfqmUg09iW6Mh8pU5IRP8Z4kQHkgvXaISAXWp4ZEXNYEZ+VMET
# fMV58cnBcQIDAQABo4H6MIH3MB0GA1UdDgQWBBRfmvVuXMzMdJrU3X3vP9vsTIAu
# 3TAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnRoYXd0
# ZS5jb20wEgYDVR0TAQH/BAgwBgEB/wIBADA/BgNVHR8EODA2MDSgMqAwhi5odHRw
# Oi8vY3JsLnRoYXd0ZS5jb20vVGhhd3RlVGltZXN0YW1waW5nQ0EuY3JsMBMGA1Ud
# JQQMMAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIBBjAoBgNVHREEITAfpB0wGzEZ
# MBcGA1UEAxMQVGltZVN0YW1wLTIwNDgtMTANBgkqhkiG9w0BAQUFAAOBgQADCZuP
# ee9/WTCq72i1+uMJHbtPggZdN1+mUp8WjeockglEbvVt61h8MOj5aY0jcwsSb0ep
# rjkR+Cqxm7Aaw47rWZYArc4MTbLQMaYIXCp6/OJ6HVdMqGUY6XlAYiWWbsfHN2qD
# IQiOQerd2Vc/HXdJhyoWBl6mOGoiEqNRGYN+tjCCBJkwggOBoAMCAQICEHGgtzaV
# 3bGvwjsrmhjuVMswDQYJKoZIhvcNAQELBQAwgakxCzAJBgNVBAYTAlVTMRUwEwYD
# VQQKEwx0aGF3dGUsIEluYy4xKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2Vydmlj
# ZXMgRGl2aXNpb24xODA2BgNVBAsTLyhjKSAyMDA2IHRoYXd0ZSwgSW5jLiAtIEZv
# ciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQDExZ0aGF3dGUgUHJpbWFyeSBS
# b290IENBMB4XDTEzMTIxMDAwMDAwMFoXDTIzMTIwOTIzNTk1OVowTDELMAkGA1UE
# BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEmMCQGA1UEAxMddGhhd3RlIFNI
# QTI1NiBDb2RlIFNpZ25pbmcgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
# AoIBAQCbVQJMFwXp0GbD/Cit08D+7+DpftQe9qobkUb99RbtmAdT+rqHG32eHwEn
# q7nSZ8q3ECVT9OO+m5C47SNcQu9kJVjliCIavvXHrvW+irEREZMaIql0acF0tmiH
# p4Mw+WTxseM4PvTWwfwS/nNXFzVXit1QjQP4Zs3KdoMTyNcOcR3kY8m6F/jRueSI
# 0iwoyCEgDUG3C+IvwoDmiHtTbMNEY4F/aEeMKyrPW/SMSWG6aYX9awB4BSZpEzCA
# OE7xWlXJxVDWqjiJR0Nc/k1zpUnFk2n+d5aar/OMDle6M9kOxkLTA3fEuzmtkfnz
# 95ZcOmSm7SdXwehA81Pyvik0/l/5AgMBAAGjggEXMIIBEzAvBggrBgEFBQcBAQQj
# MCEwHwYIKwYBBQUHMAGGE2h0dHA6Ly90Mi5zeW1jYi5jb20wEgYDVR0TAQH/BAgw
# BgEB/wIBADAyBgNVHR8EKzApMCegJaAjhiFodHRwOi8vdDEuc3ltY2IuY29tL1Ro
# YXd0ZVBDQS5jcmwwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMDMA4GA1Ud
# DwEB/wQEAwIBBjApBgNVHREEIjAgpB4wHDEaMBgGA1UEAxMRU3ltYW50ZWNQS0kt
# MS01NjgwHQYDVR0OBBYEFFeGm1S4vqYpiuT2wuITGImFzdy3MB8GA1UdIwQYMBaA
# FHtbRc+vzst6/TGSGmq280brV0hQMA0GCSqGSIb3DQEBCwUAA4IBAQAkO/XXoDYT
# x0P+8AmHaNGYMW4S5D8eH5Z7a0weh56LxWyjsQx7UJLVgZyxjywpt+75kQW5jkHx
# LPbQWS2Y4LnqgAFHQJW4PZ0DvXm7NbatnEwn9mdFEMnFvIdOVXvSh7vd3DDvxtRs
# zJk1bRzgYNPNaI8pWUuJlghGyY78dU/F3AnMTieLRM0HvKwE4LUzpYef9N1zDJHq
# EoFv43XwHrWTbEQX1T6Xyb0HLFZ3H4XdRui/3iyBlKP35benwTefdcpVd01eNinK
# hdhFQXJXdcB5W/o0EAZtZCBCtzrIHx1GZAJfxke+8MQ6KFTa9h5PmqIZQ6RvSfj8
# XkIgKISLRyBuMIIEnTCCA4WgAwIBAgIQCTq3hNaBtvt68SgSwpYLKDANBgkqhkiG
# 9w0BAQsFADBMMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3RlLCBJbmMuMSYw
# JAYDVQQDEx10aGF3dGUgU0hBMjU2IENvZGUgU2lnbmluZyBDQTAeFw0xODExMTUw
# MDAwMDBaFw0yMjAyMTMyMzU5NTlaMFsxCzAJBgNVBAYTAlNFMRIwEAYDVQQIDAlT
# dG9ja2hvbG0xEjAQBgNVBAcMCVN0b2NraG9sbTERMA8GA1UECgwISW5lcmEgQUIx
# ETAPBgNVBAMMCEluZXJhIEFCMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
# AQEAugUhf2sJ+eCo/qI1qaKLEZCUAnj23JnNmIRHLP5XJbXBmkmIcB7SH8qQW2Xy
# rPzs1PlzeuR5NiVURpWl27+KvfIkEPA8SQIGNV4FaesLQM4iOgaA+sp+aXUiVVZy
# GVaO+S4o1S4ahrb/OjTLUaJNiCYTqhW0o/h5YvSQOZBaQEwAXcFVPxZ5nr1Hbrma
# Z3SVDS/HU55X9BolDjeGQitUXS4pJT8Y5/bFLRDD7oC6rxYomsOawuvC/I3ynD9k
# hT0ye8OmOVGR8jbVCDSPpq1moFSn8pwouScwzdj2+8pRTq2NMBPi7M5VvNrgFNoL
# BEWj4VI2zirGAB88FVFQfl5utQIDAQABo4IBajCCAWYwCQYDVR0TBAIwADAfBgNV
# HSMEGDAWgBRXhptUuL6mKYrk9sLiExiJhc3ctzAdBgNVHQ4EFgQU1IKj1fPFqb20
# KeXXJdxHYD5qoyYwKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3RsLnN5bWNiLmNv
# bS90bC5jcmwwDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMG4G
# A1UdIARnMGUwYwYGZ4EMAQQBMFkwJgYIKwYBBQUHAgEWGmh0dHBzOi8vd3d3LnRo
# YXd0ZS5jb20vY3BzMC8GCCsGAQUFBwICMCMMIWh0dHBzOi8vd3d3LnRoYXd0ZS5j
# b20vcmVwb3NpdG9yeTBXBggrBgEFBQcBAQRLMEkwHwYIKwYBBQUHMAGGE2h0dHA6
# Ly90bC5zeW1jZC5jb20wJgYIKwYBBQUHMAKGGmh0dHA6Ly90bC5zeW1jYi5jb20v
# dGwuY3J0MA0GCSqGSIb3DQEBCwUAA4IBAQCDoioJABkoQWDuBN5tIKJAs9iRTySw
# UN/HoYSGdSOvO4UNhv889/fKcBJHY/WlTDFDoT/ULOcnQxOxNIWxw7gh/wjVX3hd
# 6eU2wCcwGXaHqLQ/Sx1RwRPGmn8fxB1Q8cgSkdYbUh8HyQcEv6Q0qTjb1rD9MaLj
# bP3ZQjDJ7gS5tLh/FQhBlLoGOA/z2LIfhiAsPLKgXuzNVJzUdjgRr06LoYmicwFX
# NyifRupyMTeRhIXxwFy1FHgFvZgL9ZstnqzgZ2kwpsClzoKljltRZMpYe64uWnKI
# fbU8agdhIH9kg/o2d2cypienAepMvxXyEtscrIWfTYn+Sd2RHVLDqcmsMIIEozCC
# A4ugAwIBAgIQDs/0OMj+vzVuBNhqmBsaUDANBgkqhkiG9w0BAQUFADBeMQswCQYD
# VQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xMDAuBgNVBAMT
# J1N5bWFudGVjIFRpbWUgU3RhbXBpbmcgU2VydmljZXMgQ0EgLSBHMjAeFw0xMjEw
# MTgwMDAwMDBaFw0yMDEyMjkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMR0wGwYDVQQK
# ExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjE0MDIGA1UEAxMrU3ltYW50ZWMgVGltZSBT
# dGFtcGluZyBTZXJ2aWNlcyBTaWduZXIgLSBHNDCCASIwDQYJKoZIhvcNAQEBBQAD
# ggEPADCCAQoCggEBAKJjCzlEuLsjp0RJuw7/ofBhClOTsJjbrSwPSsVu/4Y8U1UP
# Fc4EPyv9qZaW2b5heQtbyUyGduXgQ0sile7CK0PBn9hotI5AT+6FOLkRxSPyZFjw
# FTJvTlehroikAtcqHs1L4d1j1ReJMluwXplaqJ0oUA4X7pbbYTtFUR3PElYLkkf8
# q672Zj1HrHBy55LnX80QucSDZJQZvSWA4ejSIqXQugJ6oXeTW2XD7hd0vEGGKtwI
# TIySjJEtnndEH2jWqHR32w5bMotWizO92WPISZ06xcXqMwvS8aMb9Iu+2bNXizve
# BKd6IrIkri7HcMW+ToMmCPsLvalPmQjhEChyqs0CAwEAAaOCAVcwggFTMAwGA1Ud
# EwEB/wQCMAAwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwgwDgYDVR0PAQH/BAQDAgeA
# MHMGCCsGAQUFBwEBBGcwZTAqBggrBgEFBQcwAYYeaHR0cDovL3RzLW9jc3Aud3Mu
# c3ltYW50ZWMuY29tMDcGCCsGAQUFBzAChitodHRwOi8vdHMtYWlhLndzLnN5bWFu
# dGVjLmNvbS90c3MtY2EtZzIuY2VyMDwGA1UdHwQ1MDMwMaAvoC2GK2h0dHA6Ly90
# cy1jcmwud3Muc3ltYW50ZWMuY29tL3Rzcy1jYS1nMi5jcmwwKAYDVR0RBCEwH6Qd
# MBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTIwHQYDVR0OBBYEFEbGaaMOShQe
# 1UzaUmMXP142vA3mMB8GA1UdIwQYMBaAFF+a9W5czMx0mtTdfe8/2+xMgC7dMA0G
# CSqGSIb3DQEBBQUAA4IBAQB4O7SRKgBM8I9iMDd4o4QnB28Yst4l3KDUlAOqhk4l
# n5pAAxzdzuN5yyFoBtq2MrRtv/QsJmMz5ElkbQ3mw2cO9wWkNWx8iRbG6bLfsund
# IMZxD82VdNy2XN69Nx9DeOZ4tc0oBCCjqvFLxIgpkQ6A0RH83Vx2bk9eDkVGQW4N
# sOo4mrE62glxEPwcebSAe6xp9P2ctgwWK/F/Wwk9m1viFsoTgW0ALjgNqCmPLOGy
# 9FqpAa8VnCwvSRvbIrvD/niUUcOGsYKIXfA9tFGheTMrLnu53CAJE3Hrahlbz+il
# MFcsiUk/uc9/yb8+ImhjU5q9aXSsxR08f5Lgw7wc2AR1MYIEITCCBB0CAQEwYDBM
# MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3RlLCBJbmMuMSYwJAYDVQQDEx10
# aGF3dGUgU0hBMjU2IENvZGUgU2lnbmluZyBDQQIQCTq3hNaBtvt68SgSwpYLKDAN
# BglghkgBZQMEAgEFAKCBhDAYBgorBgEEAYI3AgEMMQowCKACgAChAoAAMBkGCSqG
# SIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3
# AgEVMC8GCSqGSIb3DQEJBDEiBCBV4pid7QvJvs39u5yuebgA2mE40mxdvTCf3M2o
# lCQNzTANBgkqhkiG9w0BAQEFAASCAQAgPWJVlYFzRVPnZQPseN/mH/uOHOhof8s3
# TLFskE70dbEQ5hArp2v52tWlymSiEdLPLgFNtKvq8Qj7nZMYqF+R2UFIt4+9azSu
# 6l/KhebVc73t8EwHcpDNt4ErHAriKAa4GPv6xFy+CTJNXOcZHGod48kemNmNwtg7
# QNa4CDLXZWNC1G0xpqw6AwF8NgMTYI2zVqJejaHJD491SocrTAsOLsLZ5illGx/+
# QVkeub7dJ7Qhcw28bzB+TFDBanw4DdhWF75AJ6gkG7ZlMenUK6JorXXiTYMf+2Zh
# OfUgbUL4sM1hKHAa88zKqKqvoHk7asQrDHLYprSUUTInZT+TO7QIoYICCzCCAgcG
# CSqGSIb3DQEJBjGCAfgwggH0AgEBMHIwXjELMAkGA1UEBhMCVVMxHTAbBgNVBAoT
# FFN5bWFudGVjIENvcnBvcmF0aW9uMTAwLgYDVQQDEydTeW1hbnRlYyBUaW1lIFN0
# YW1waW5nIFNlcnZpY2VzIENBIC0gRzICEA7P9DjI/r81bgTYapgbGlAwCQYFKw4D
# AhoFAKBdMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8X
# DTIwMDExNDEwMjcxOVowIwYJKoZIhvcNAQkEMRYEFEP8yt6UWdsp8Vcd+rkB2sj/
# 862TMA0GCSqGSIb3DQEBAQUABIIBABV7hopDSarl7Obqx2gZpUnyJ2BrGJb2i2VZ
# aUNvReWfcirG2ypYJ5ZoZlNBkuPAgEgcqsmRX2p+ntVdKx5Wc2DOzQEVMZrOhDzh
# C5Hl+CEPGoPETl5FFJA4atJx1D707q1MbZeO0lvgDodT89xGNulZXyHT4lGHCOYp
# hEJkM0DpN5HZdQ4lBB56bOBVzBKu3b4xPizREDz7oAkgNlOEhtrtQjzyo7mi2HGl
# TNvYpx5FRo2QChNw0qhz1TS9Pd/V10clZe92O9D+gI8hNCKTorXi+9TcfjFQ0rE4
# N3YyNL41fSpo1VvmDe8Qe1R/uKJhddHKlnSPMUDKI2FL2HFHYao=
# SIG # End signature block