custom/Update-ZNGroupsMfaOutboundPolicy.ps1

<#
.Synopsis
Updates an outbound MFA Policy.
.Description
Updates an outbound MFA Policy.

.Link
https://github.com/zeronetworks/zero-powershell/zeronetworks/update-zngroupsmfaoutboundpolicy
#>

function Update-ZNGroupsMfaOutboundPolicy {
    [OutputType([ZeroNetworks.PowerShell.Cmdlets.Api.Models.ReactivePolicy])]
    [CmdletBinding(DefaultParameterSetName = 'UpdateExpanded', PositionalBinding = $false, SupportsShouldProcess, ConfirmImpact = 'Medium')]
    param(
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Path')]
        [System.String]
        # Account Name
        ${AccountName},
        
        [Parameter(ParameterSetName = 'UpdateExpanded', Mandatory)]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Path')]
        [System.String]
        # Group Id
        ${GroupId},

        [Parameter(ParameterSetName = 'UpdateExpanded', Mandatory)]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Path')]
        [System.String]
        # Group Type
        ${GroupType},
        
        [Parameter(ParameterSetName = 'UpdateExpanded', Mandatory)]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Path')]
        [System.String]
        # policy Id
        ${ReactivePolicyId},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Models.IPortsListItem[]]
        # extra ports to open.
        ${AdditionalPortsList},

        #[Parameter(ParameterSetName = 'UpdateExpanded')]
        #[ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        #[System.String]
        # destination asset(s).
        #${DstEntityInfoId},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [System.String]
        # destination ports.
        ${DstPort},

        #[Parameter(ParameterSetName = 'UpdateExpanded')]
        #[ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        #[System.String[]]
        # source processes.
        #${dstProcessNames},
        
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [String[]]
        # excluded source assets
        ${ExcludedSrcEntityInfos},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [String[]]
        # Excluded source processes
        ${ExcludedSrcProcesses},
        
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # fallback to logged on user enable/disable.
        ${FallbackToLoggedOnUser},
         
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int[]]
        # MFA methods.
        ${MfaMethods},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [Switch]
        # Override built in MFA policies
        ${OverrideBuiltins},
        
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int]
        # protocol 6 for TCP, 17 for UDP.
        ${ProtocolType},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int]
        # the rule expiration.
        ${RuleDuration},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Models.IReactivePolicyOutboundBodySrcEntityInfosItem[]]
        # source asset(s).
        ${SrcEntityInfos},
        
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [System.String[]]
        # source processes.
        ${SrcProcessNames},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Models.IReactivePolicyOutboundBodySrcUserInfosItem[]]
        # source user(s).
        ${SrcUserInfos},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int]
        # the policy state.
        ${State},
        
        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [System.String]
        # the policy description.
        ${Description},

        [Parameter()]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Runtime')]
        [System.Management.Automation.SwitchParameter]
        # Run the command as a job
        ${AsJob},

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

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

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

        [Parameter()]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Runtime')]
        [System.Management.Automation.SwitchParameter]
        # Run the command asynchronously
        ${NoWait},

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

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

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

    process {
        try {
            #Handle Get
            $policyId = $PSBoundParameters['ReactivePolicyId'].ToString()
            $groupId = $PSBoundParameters['GroupId'].ToString()
            $groupType = $PSBoundParameters['GroupType'].ToString()
            $policy = ZeroNetworks\Get-ZNGroupsMfaOutboundPolicy -GroupId $groupId -GroupType $groupType -ReactivePolicyId $policyId

            $updatedPolicy = [ZeroNetworks.PowerShell.Cmdlets.Api.Models.ReactivePolicyOutboundBody]::new()
            
            if($PSBoundParameters['AdditionalPortsList']){
                $updatedPolicy.AdditionalPortsList = $PSBoundParameters['AdditionalPortsList']
                $null = $PSBoundParameters.Remove('AdditionalPortsList')
            }
            else{
                $updatedPolicy.AdditionalPortsList = $policy.ItemAdditionalPortsList
                $null = $PSBoundParameters.Remove('AdditionalPortsList')
            }
            
            $updatedPolicy.DstEntityInfoId = $policy.DstEntityInfoId
        
            if($PSBoundParameters['DstPort']){
                $updatedPolicy.DstPort = $PSBoundParameters['DstPort']
                $null = $PSBoundParameters.Remove('DstPort')
            }
            else{
                $updatedPolicy.DstPort = $policy.ItemDstPort
                $null = $PSBoundParameters.Remove('DstPort')
            }
            
            #$updatedPolicy.DstProcessNames = $policy.ItemDstProcessNames

            if($PSBoundParameters['ExcludedSrcEntityInfos']){
                $updatedPolicy.ExcludedSrcEntityInfos = $PSBoundParameters['ExcludedSrcEntityInfos']
                $null = $PSBoundParameters.Remove('ExcludedSrcEntityInfos')
            }
            else{
                $updatedPolicy.ExcludedSrcEntityInfos = @($policy.ItemExcludedSrcEntityInfos)
                $null = $PSBoundParameters.Remove('ExcludedSrcEntityInfos')
            }

            if($PSBoundParameters['ExcludedSrcProcesses']){
                $updatedPolicy.ExcludedSrcProcesses = $PSBoundParameters['ExcludedSrcProcesses']
                $null = $PSBoundParameters.Remove('ExcludedSrcProcesses')
            }
            else{
                $updatedPolicy.ExcludedSrcProcesses = $policy.ItemExcludedSrcProcesses
                $null = $PSBoundParameters.Remove('ExcludedSrcProcesses')
            }
        
            if($PSBoundParameters['FallbackToLoggedOnUser']){
                $updatedPolicy.FallbackToLoggedOnUser = $PSBoundParameters['FallbackToLoggedOnUser']
                $null = $PSBoundParameters.Remove('FallbackToLoggedOnUser')
            }
            else{
                $updatedPolicy.FallbackToLoggedOnUser = $policy.ItemFallbackToLoggedOnUser
                $null = $PSBoundParameters.Remove('FallbackToLoggedOnUser')
            }
        
            if($PSBoundParameters['MfaMethods']){
                $updatedPolicy.MfaMethods = $PSBoundParameters['MfaMethods']
                $null = $PSBoundParameters.Remove('MfaMethods')
            }
            else{
                $updatedPolicy.MfaMethods = $policy.ItemMfaMethods
                $null = $PSBoundParameters.Remove('MfaMethods')
            }      
        
            if($PSBoundParameters['OverrideBuiltins']){
                $updatedPolicy.OverrideBuiltins = $PSBoundParameters['OverrideBuiltins']
                $null = $PSBoundParameters.Remove('OverrideBuiltins')
            }
            else{
                $updatedPolicy.OverrideBuiltins = $policy.ItemOverrideBuiltins
                $null = $PSBoundParameters.Remove('OverrideBuiltins')
            }
            
            if($PSBoundParameters['ProtocolType']){
                $updatedPolicy.ProtocolType = $PSBoundParameters['ProtocolType']
                $null = $PSBoundParameters.Remove('ProtocolType')
            }
            else{
                $updatedPolicy.ProtocolType = $policy.ItemProtocolType
                $null = $PSBoundParameters.Remove('ProtocolType')
            }
        
            if($PSBoundParameters['RuleDuration']){
                $updatedPolicy.RuleDuration = $PSBoundParameters['RuleDuration']
                $null = $PSBoundParameters.Remove('RuleDuration')
            }
            else{
                $updatedPolicy.RuleDuration = $policy.ItemRuleDuration
                $null = $PSBoundParameters.Remove('RuleDuration')
            }
            
            if($PSBoundParameters['SrcEntityInfos']){
                $updatedPolicy.SrcEntityInfos = $PSBoundParameters['SrcEntityInfos']
                $null = $PSBoundParameters.Remove('SrcEntityInfos')
            }
            else{
                $updatedPolicy.SrcEntityInfos = @($policy.ItemSrcEntityInfos)
                $null = $PSBoundParameters.Remove('SrcEntityInfos')
            }
            
            if($PSBoundParameters['SrcProcessNames']){
                $updatedPolicy.SrcProcessNames = $PSBoundParameters['SrcProcessNames']
                $null = $PSBoundParameters.Remove('SrcProcessNames')
            }
            else{
                $updatedPolicy.SrcProcessNames = $policy.ItemSrcProcessNames
                $null = $PSBoundParameters.Remove('SrcProcessNames')
            }

            if($PSBoundParameters['SrcUserInfos']){
                $updatedPolicy.SrcUserInfos = $PSBoundParameters['SrcUserInfos']
                $null = $PSBoundParameters.Remove('SrcUserInfos')
            }
            else{
                $updatedPolicy.SrcUserInfos = @($policy.ItemSrcUserInfos)
                $null = $PSBoundParameters.Remove('SrcUserInfos')
            }
            
            if($PSBoundParameters['State']){
                $updatedPolicy.State = $PSBoundParameters['State']
                $null = $PSBoundParameters.Remove('State')
            }
            else{
                $updatedPolicy.State = $policy.ItemState
                $null = $PSBoundParameters.Remove('State')
            }

            if($PSBoundParameters['Description']){
                $updatedPolicy.Description = $PSBoundParameters['Description']
                $null = $PSBoundParameters.Remove('Description')
            }
            else{
                $updatedPolicy.Description = $policy.ItemDescription
                $null = $PSBoundParameters.Remove('Description')
            }
            #Write-Debug $updatedPolicy | Out-String
            $null = $PSBoundParameters.Add('Body', $updatedPolicy)
            ZeroNetworks.internal\Update-ZNGroupsMfaOutboundPolicy @PSBoundParameters
        }
        catch {
            throw
        }
    }
}
# SIG # Begin signature block
# MII6ewYJKoZIhvcNAQcCoII6bDCCOmgCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCBIjA5i1/THwgPa
# GryE5i4FcgZpGcguTQ+UJcervhmN5aCCIrIwggXMMIIDtKADAgECAhBUmNLR1FsZ
# lUgTecgRwIeZMA0GCSqGSIb3DQEBDAUAMHcxCzAJBgNVBAYTAlVTMR4wHAYDVQQK
# ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xSDBGBgNVBAMTP01pY3Jvc29mdCBJZGVu
# dGl0eSBWZXJpZmljYXRpb24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgMjAy
# MDAeFw0yMDA0MTYxODM2MTZaFw00NTA0MTYxODQ0NDBaMHcxCzAJBgNVBAYTAlVT
# MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xSDBGBgNVBAMTP01pY3Jv
# c29mdCBJZGVudGl0eSBWZXJpZmljYXRpb24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRo
# b3JpdHkgMjAyMDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALORKgeD
# Bmf9np3gx8C3pOZCBH8Ppttf+9Va10Wg+3cL8IDzpm1aTXlT2KCGhFdFIMeiVPvH
# or+Kx24186IVxC9O40qFlkkN/76Z2BT2vCcH7kKbK/ULkgbk/WkTZaiRcvKYhOuD
# PQ7k13ESSCHLDe32R0m3m/nJxxe2hE//uKya13NnSYXjhr03QNAlhtTetcJtYmrV
# qXi8LW9J+eVsFBT9FMfTZRY33stuvF4pjf1imxUs1gXmuYkyM6Nix9fWUmcIxC70
# ViueC4fM7Ke0pqrrBc0ZV6U6CwQnHJFnni1iLS8evtrAIMsEGcoz+4m+mOJyoHI1
# vnnhnINv5G0Xb5DzPQCGdTiO0OBJmrvb0/gwytVXiGhNctO/bX9x2P29Da6SZEi3
# W295JrXNm5UhhNHvDzI9e1eM80UHTHzgXhgONXaLbZ7LNnSrBfjgc10yVpRnlyUK
# xjU9lJfnwUSLgP3B+PR0GeUw9gb7IVc+BhyLaxWGJ0l7gpPKWeh1R+g/OPTHU3mg
# trTiXFHvvV84wRPmeAyVWi7FQFkozA8kwOy6CXcjmTimthzax7ogttc32H83rwjj
# O3HbbnMbfZlysOSGM1l0tRYAe1BtxoYT2v3EOYI9JACaYNq6lMAFUSw0rFCZE4e7
# swWAsk0wAly4JoNdtGNz764jlU9gKL431VulAgMBAAGjVDBSMA4GA1UdDwEB/wQE
# AwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTIftJqhSobyhmYBAcnz1AQ
# T2ioojAQBgkrBgEEAYI3FQEEAwIBADANBgkqhkiG9w0BAQwFAAOCAgEAr2rd5hnn
# LZRDGU7L6VCVZKUDkQKL4jaAOxWiUsIWGbZqWl10QzD0m/9gdAmxIR6QFm3FJI9c
# Zohj9E/MffISTEAQiwGf2qnIrvKVG8+dBetJPnSgaFvlVixlHIJ+U9pW2UYXeZJF
# xBA2CFIpF8svpvJ+1Gkkih6PsHMNzBxKq7Kq7aeRYwFkIqgyuH4yKLNncy2RtNwx
# AQv3Rwqm8ddK7VZgxCwIo3tAsLx0J1KH1r6I3TeKiW5niB31yV2g/rarOoDXGpc8
# FzYiQR6sTdWD5jw4vU8w6VSp07YEwzJ2YbuwGMUrGLPAgNW3lbBeUU0i/OxYqujY
# lLSlLu2S3ucYfCFX3VVj979tzR/SpncocMfiWzpbCNJbTsgAlrPhgzavhgplXHT2
# 6ux6anSg8Evu75SjrFDyh+3XOjCDyft9V77l4/hByuVkrrOj7FjshZrM77nq81YY
# uVxzmq/FdxeDWds3GhhyVKVB0rYjdaNDmuV3fJZ5t0GNv+zcgKCf0Xd1WF81E+Al
# GmcLfc4l+gcK5GEh2NQc5QfGNpn0ltDGFf5Ozdeui53bFv0ExpK91IjmqaOqu/dk
# ODtfzAzQNb50GQOmxapMomE2gj4d8yu8l13bS3g7LfU772Aj6PXsCyM2la+YZr9T
# 03u4aUoqlmZpxJTG9F9urJh4iIAGXKKy7aIwggbtMIIE1aADAgECAhMzAAPTPQvc
# XBnyhp0vAAAAA9M9MA0GCSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYD
# VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJ
# RCBWZXJpZmllZCBDUyBBT0MgQ0EgMDIwHhcNMjUwNTI1MDc1ODAyWhcNMjUwNTI4
# MDc1ODAyWjBrMQswCQYDVQQGEwJJTDERMA8GA1UECBMIVGVsIEF2aXYxETAPBgNV
# BAcTCFRlbCBBdml2MRowGAYDVQQKExFaZXJvIE5ldHdvcmtzIEx0ZDEaMBgGA1UE
# AxMRWmVybyBOZXR3b3JrcyBMdGQwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGK
# AoIBgQCtkJPD5qKUQMrH4Bo11COp7iB1nQHXkjPaC4bYu8lRM14rPaqevmKu6Pf3
# sH+pK2niDn04drRNxYV1ONFPTapC/P7bty5yxJ5JlDZLZy195jDeBci8WWVc6O0+
# +qCYpZff0Di9KewnbuZ98OIlaSXkEbIZWOwixde9XnekCvr5eT2nyJqe8GEqOhvH
# D/lv+E7qVoYDJT3qDAwsPIVx09DAbJQpq4KJF6+Wccf+FVgPgVi5l4zICCey/63k
# YSemA2Z7GDfBMu3OeVmj6/hsJFqxDIe8bxBlmrkkwCrMNAaPghqYERsyAm9+RCkh
# gvvb2mcjN2wrhbq8ysSbzt9mIf5KaOcgR6GxrNmpXwy6xGSChPX95ylgV72QBFDE
# +2ngfCg3/lB6wsGuQFbODO/FAk3c1zwZyb1TxMLKOWAzKjBEVyq5JJeBBPbLOeuG
# TqD51l+hzeFfZVcNzR8VbtwIeyliaPLxNstBm3kMS6CRtIUOQwLIwvILqBUPkqgF
# Nu97IEECAwEAAaOCAhkwggIVMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeA
# MDwGA1UdJQQ1MDMGCisGAQQBgjdhAQAGCCsGAQUFBwMDBhsrBgEEAYI3YYGwosY4
# g9jRjh+BtaSjBsGi+2swHQYDVR0OBBYEFH89rxnEAjFZHBXjSx7iCiKtAKs6MB8G
# A1UdIwQYMBaAFCRFmaF3kCp8w8qDsG5kFoQq+CxnMGcGA1UdHwRgMF4wXKBaoFiG
# Vmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUy
# MElEJTIwVmVyaWZpZWQlMjBDUyUyMEFPQyUyMENBJTIwMDIuY3JsMIGlBggrBgEF
# BQcBAQSBmDCBlTBkBggrBgEFBQcwAoZYaHR0cDovL3d3dy5taWNyb3NvZnQuY29t
# L3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBB
# T0MlMjBDQSUyMDAyLmNydDAtBggrBgEFBQcwAYYhaHR0cDovL29uZW9jc3AubWlj
# cm9zb2Z0LmNvbS9vY3NwMGYGA1UdIARfMF0wUQYMKwYBBAGCN0yDfQEBMEEwPwYI
# KwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9S
# ZXBvc2l0b3J5Lmh0bTAIBgZngQwBBAEwDQYJKoZIhvcNAQEMBQADggIBANOmY0P8
# VemBIwTUfwOUSE4Zz//ZPTaQkRny2UIILHmjLJ8V4ieni7zzKU2q4DlrNrLSHmap
# C/teP93Xm9mhPVe2cy/fKH/h7ejas96yo0E4FXVfEIK4E0+XyY5I2LNwdcT4vVdT
# w7GdLBDUVuMxFuR7id3ZbfHO2/8zZ13K5lemqfxJ3FCQZNwmLxmQys7k4PimdfLv
# 4bXCS3mInY/zm78hVmwQfVL/EMcoag2P2ujBFf1C9Hj+sjIqDBKanJp5uRRVj4lD
# kMIed0wQszeekOiqpEvr1JWeIunamcFAY0QaG1Og9hqFacl2+IVhQ+eoLrJuHNXD
# FOqHs/4ZnJKZnT5yRizbpWOP96ZDwIlF2MHa0uPGxGFinvpdbMytfkcC6dRVDgXl
# FQIdsD766JiXLemuMDxGIHc2adAJhe6sApKZdarA7Lf5xcMIeT9IOQZAqVfSaHyb
# IjqmN5YyOvnQg9HgbcUZeJohYIN3Gs/31zoJqNFsIExt0/tasdI9DuUSk6s+MqEa
# PsBSU3uDNYzsp3qoMRX36ni2m2Ri63GnxgFgcXyTLV4w6PsEiWNaFUQQ43ODgPue
# pBwD+XMFX2CKsAQzx6SeyfoePqGSVwU0/r3VxIUv8SBo3jkz6vFKsK2KHyna6JyE
# aix6Vt2o7jG5NNyRssH2uUsR1uppVQKz+oiAMIIG7TCCBNWgAwIBAgITMwAD0z0L
# 3FwZ8oadLwAAAAPTPTANBgkqhkiG9w0BAQwFADBaMQswCQYDVQQGEwJVUzEeMBwG
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSswKQYDVQQDEyJNaWNyb3NvZnQg
# SUQgVmVyaWZpZWQgQ1MgQU9DIENBIDAyMB4XDTI1MDUyNTA3NTgwMloXDTI1MDUy
# ODA3NTgwMlowazELMAkGA1UEBhMCSUwxETAPBgNVBAgTCFRlbCBBdml2MREwDwYD
# VQQHEwhUZWwgQXZpdjEaMBgGA1UEChMRWmVybyBOZXR3b3JrcyBMdGQxGjAYBgNV
# BAMTEVplcm8gTmV0d29ya3MgTHRkMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIB
# igKCAYEArZCTw+ailEDKx+AaNdQjqe4gdZ0B15Iz2guG2LvJUTNeKz2qnr5iruj3
# 97B/qStp4g59OHa0TcWFdTjRT02qQvz+27cucsSeSZQ2S2ctfeYw3gXIvFllXOjt
# PvqgmKWX39A4vSnsJ27mffDiJWkl5BGyGVjsIsXXvV53pAr6+Xk9p8ianvBhKjob
# xw/5b/hO6laGAyU96gwMLDyFcdPQwGyUKauCiRevlnHH/hVYD4FYuZeMyAgnsv+t
# 5GEnpgNmexg3wTLtznlZo+v4bCRasQyHvG8QZZq5JMAqzDQGj4IamBEbMgJvfkQp
# IYL729pnIzdsK4W6vMrEm87fZiH+SmjnIEehsazZqV8MusRkgoT1/ecpYFe9kARQ
# xPtp4HwoN/5QesLBrkBWzgzvxQJN3Nc8Gcm9U8TCyjlgMyowRFcquSSXgQT2yznr
# hk6g+dZfoc3hX2VXDc0fFW7cCHspYmjy8TbLQZt5DEugkbSFDkMCyMLyC6gVD5Ko
# BTbveyBBAgMBAAGjggIZMIICFTAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIH
# gDA8BgNVHSUENTAzBgorBgEEAYI3YQEABggrBgEFBQcDAwYbKwYBBAGCN2GBsKLG
# OIPY0Y4fgbWkowbBovtrMB0GA1UdDgQWBBR/Pa8ZxAIxWRwV40se4goirQCrOjAf
# BgNVHSMEGDAWgBQkRZmhd5AqfMPKg7BuZBaEKvgsZzBnBgNVHR8EYDBeMFygWqBY
# hlZodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQl
# MjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBBT0MlMjBDQSUyMDAyLmNybDCBpQYIKwYB
# BQUHAQEEgZgwgZUwZAYIKwYBBQUHMAKGWGh0dHA6Ly93d3cubWljcm9zb2Z0LmNv
# bS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwSUQlMjBWZXJpZmllZCUyMENTJTIw
# QU9DJTIwQ0ElMjAwMi5jcnQwLQYIKwYBBQUHMAGGIWh0dHA6Ly9vbmVvY3NwLm1p
# Y3Jvc29mdC5jb20vb2NzcDBmBgNVHSAEXzBdMFEGDCsGAQQBgjdMg30BATBBMD8G
# CCsGAQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3Mv
# UmVwb3NpdG9yeS5odG0wCAYGZ4EMAQQBMA0GCSqGSIb3DQEBDAUAA4ICAQDTpmND
# /FXpgSME1H8DlEhOGc//2T02kJEZ8tlCCCx5oyyfFeInp4u88ylNquA5azay0h5m
# qQv7Xj/d15vZoT1XtnMv3yh/4e3o2rPesqNBOBV1XxCCuBNPl8mOSNizcHXE+L1X
# U8OxnSwQ1FbjMRbke4nd2W3xztv/M2ddyuZXpqn8SdxQkGTcJi8ZkMrO5OD4pnXy
# 7+G1wkt5iJ2P85u/IVZsEH1S/xDHKGoNj9rowRX9QvR4/rIyKgwSmpyaebkUVY+J
# Q5DCHndMELM3npDoqqRL69SVniLp2pnBQGNEGhtToPYahWnJdviFYUPnqC6ybhzV
# wxTqh7P+GZySmZ0+ckYs26Vjj/emQ8CJRdjB2tLjxsRhYp76XWzMrX5HAunUVQ4F
# 5RUCHbA++uiYly3prjA8RiB3NmnQCYXurAKSmXWqwOy3+cXDCHk/SDkGQKlX0mh8
# myI6pjeWMjr50IPR4G3FGXiaIWCDdxrP99c6CajRbCBMbdP7WrHSPQ7lEpOrPjKh
# Gj7AUlN7gzWM7Kd6qDEV9+p4tptkYutxp8YBYHF8ky1eMOj7BIljWhVEEONzg4D7
# nqQcA/lzBV9girAEM8eknsn6Hj6hklcFNP691cSFL/EgaN45M+rxSrCtih8p2uic
# hGoselbdqO4xuTTckbLB9rlLEdbqaVUCs/qIgDCCB1owggVCoAMCAQICEzMAAAAE
# llBL0tvuy4gAAAAAAAQwDQYJKoZIhvcNAQEMBQAwYzELMAkGA1UEBhMCVVMxHjAc
# BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE0MDIGA1UEAxMrTWljcm9zb2Z0
# IElEIFZlcmlmaWVkIENvZGUgU2lnbmluZyBQQ0EgMjAyMTAeFw0yMTA0MTMxNzMx
# NTJaFw0yNjA0MTMxNzMxNTJaMFoxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJRCBWZXJpZmll
# ZCBDUyBBT0MgQ0EgMDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDh
# zqDoM6JjpsA7AI9sGVAXa2OjdyRRm5pvlmisydGnis6bBkOJNsinMWRn+TyTiK8E
# lXXDn9v+jKQj55cCpprEx3IA7Qyh2cRbsid9D6tOTKQTMfFFsI2DooOxOdhz9h0v
# sgiImWLyTnW6locsvsJib1g1zRIVi+VoWPY7QeM73L81GZxY2NqZk6VGPFbZxaBS
# xR1rNIeBEJ6TztXZsz/Xtv6jxZdRb3UimCBFqyaJnrlYQUdcpvKGbYtuEErplaZC
# gV4T4ZaspYIYr+r/hGJNow2Edda9a/7/8jnxS07FWLcNorV9DpgvIggYfMPgKa1y
# saK/G6mr9yuse6cY0Hv/9Ca6XZk/0dw6Zj9qm2BSfBP7bSD8DfuIN+65XDrJLYuj
# T+Sn+Nv4ny8TgUyoiLDEYHIvjzY8xUELep381sVBrwyaPp6exT4cSq/1qv4BtwrC
# 6ZtmokkqZCsZpI11Z+TY2h2BxY6aruPKFvHBk6OcuPT9vCexQ1w0B7T2/6qKjPJB
# B6zwDdRc9xFBvwb5zTJo7YgKJ9ZMrvJK7JQnzyTWa03bYI1+1uOK2IB5p+hn1WaG
# flF9v5L8rlqtW9Nwu6S3k91MNDGXnnsQgToD7pcUGl2yM7OQvN0SHsQuTw9U8yNB
# 88KAq0nzhzXt93YL36nEXWURBQVdj9i0Iv42az1xZQIDAQABo4ICDjCCAgowDgYD
# VR0PAQH/BAQDAgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBQkRZmhd5Aq
# fMPKg7BuZBaEKvgsZzBUBgNVHSAETTBLMEkGBFUdIAAwQTA/BggrBgEFBQcCARYz
# aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnku
# aHRtMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMBIGA1UdEwEB/wQIMAYBAf8C
# AQAwHwYDVR0jBBgwFoAU2UEpsA8PY2zvadf1zSmepEhqMOYwcAYDVR0fBGkwZzBl
# oGOgYYZfaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9z
# b2Z0JTIwSUQlMjBWZXJpZmllZCUyMENvZGUlMjBTaWduaW5nJTIwUENBJTIwMjAy
# MS5jcmwwga4GCCsGAQUFBwEBBIGhMIGeMG0GCCsGAQUFBzAChmFodHRwOi8vd3d3
# Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMElEJTIwVmVy
# aWZpZWQlMjBDb2RlJTIwU2lnbmluZyUyMFBDQSUyMDIwMjEuY3J0MC0GCCsGAQUF
# BzABhiFodHRwOi8vb25lb2NzcC5taWNyb3NvZnQuY29tL29jc3AwDQYJKoZIhvcN
# AQEMBQADggIBAGctOF2Vsw0iiR0q3NJryKj6kQ73kJzdU7Jj+FCwghx0zKTaEk7M
# u38zVZd9DISUOT9C3IvNfrdN05vkn6c7y3SnPPCLtli8yI2oq8BA7nSww4mfdPeE
# I+mnE02GgYVXHPZTKJDhva86tywsr1M4QVdZtQwk5tH08zTBmwAEiG7iTpVUvEQN
# 7QZJ5Bf9kTs8d9ODjgu5+3ggqpiae/UK6iyneCUVixV6AucxZlRnxS070XxAKICi
# 4liEvk6UKSyANv2978dCEsWd6V+Dp1C5sgWyoH0iUKidgoln8doxm9i0DvL0Q5Er
# hzGW9N60JcAdrKJJcfS54T9P3bBUbRyy/lV1TKPrJWubba+UpgCRcg0q8M4Hz6zi
# H5OBKGVRrYAK7YVafsnOVNJumTQgTxES5iaS7IT8FOST3dYMzHs/Auefgn7l+S9u
# ONDTw57B+kyGHxK491AqqZnjQjhbZTIkowxNt63XokWKZKoMKGCcIHqXCWl7SB9u
# j3tTumult8EqnoHaTZ/tj5ONatBg3451w87JAB3EYY8HAlJokbeiF2SULGAAnlqc
# LF5iXtKNDkS5rpq2Mh5WE3Qp88sU+ljPkJBT4kLYfv3Hh387pg4VH1ph7nj8Ia6n
# t1FQh8tK/X+PQM9zoSV/djJbGWhaPzJ5jeQetkVoCVEzCEBfI9DesRf3MIIHnjCC
# BYagAwIBAgITMwAAAAeHozSje6WOHAAAAAAABzANBgkqhkiG9w0BAQwFADB3MQsw
# CQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMUgwRgYD
# VQQDEz9NaWNyb3NvZnQgSWRlbnRpdHkgVmVyaWZpY2F0aW9uIFJvb3QgQ2VydGlm
# aWNhdGUgQXV0aG9yaXR5IDIwMjAwHhcNMjEwNDAxMjAwNTIwWhcNMzYwNDAxMjAx
# NTIwWjBjMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0
# aW9uMTQwMgYDVQQDEytNaWNyb3NvZnQgSUQgVmVyaWZpZWQgQ29kZSBTaWduaW5n
# IFBDQSAyMDIxMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsvDArxmI
# KOLdVHpMSWxpCFUJtFL/ekr4weslKPdnF3cpTeuV8veqtmKVgok2rO0D05BpyvUD
# Cg1wdsoEtuxACEGcgHfjPF/nZsOkg7c0mV8hpMT/GvB4uhDvWXMIeQPsDgCzUGzT
# voi76YDpxDOxhgf8JuXWJzBDoLrmtThX01CE1TCCvH2sZD/+Hz3RDwl2MsvDSdX5
# rJDYVuR3bjaj2QfzZFmwfccTKqMAHlrz4B7ac8g9zyxlTpkTuJGtFnLBGasoOnn5
# NyYlf0xF9/bjVRo4Gzg2Yc7KR7yhTVNiuTGH5h4eB9ajm1OCShIyhrKqgOkc4smz
# 6obxO+HxKeJ9bYmPf6KLXVNLz8UaeARo0BatvJ82sLr2gqlFBdj1sYfqOf00Qm/3
# B4XGFPDK/H04kteZEZsBRc3VT2d/iVd7OTLpSH9yCORV3oIZQB/Qr4nD4YT/lWkh
# Vtw2v2s0TnRJubL/hFMIQa86rcaGMhNsJrhysLNNMeBhiMezU1s5zpusf54qlYu2
# v5sZ5zL0KvBDLHtL8F9gn6jOy3v7Jm0bbBHjrW5yQW7S36ALAt03QDpwW1JG1Hxu
# /FUXJbBO2AwwVG4Fre+ZQ5Od8ouwt59FpBxVOBGfN4vN2m3fZx1gqn52GvaiBz6o
# zorgIEjn+PhUXILhAV5Q/ZgCJ0u2+ldFGjcCAwEAAaOCAjUwggIxMA4GA1UdDwEB
# /wQEAwIBhjAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQU2UEpsA8PY2zvadf1
# zSmepEhqMOYwVAYDVR0gBE0wSzBJBgRVHSAAMEEwPwYIKwYBBQUHAgEWM2h0dHA6
# Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9SZXBvc2l0b3J5Lmh0bTAZ
# BgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTAPBgNVHRMBAf8EBTADAQH/MB8GA1Ud
# IwQYMBaAFMh+0mqFKhvKGZgEByfPUBBPaKiiMIGEBgNVHR8EfTB7MHmgd6B1hnNo
# dHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQlMjBJ
# ZGVudGl0eSUyMFZlcmlmaWNhdGlvbiUyMFJvb3QlMjBDZXJ0aWZpY2F0ZSUyMEF1
# dGhvcml0eSUyMDIwMjAuY3JsMIHDBggrBgEFBQcBAQSBtjCBszCBgQYIKwYBBQUH
# MAKGdWh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMvTWljcm9z
# b2Z0JTIwSWRlbnRpdHklMjBWZXJpZmljYXRpb24lMjBSb290JTIwQ2VydGlmaWNh
# dGUlMjBBdXRob3JpdHklMjAyMDIwLmNydDAtBggrBgEFBQcwAYYhaHR0cDovL29u
# ZW9jc3AubWljcm9zb2Z0LmNvbS9vY3NwMA0GCSqGSIb3DQEBDAUAA4ICAQB/JSqe
# /tSr6t1mCttXI0y6XmyQ41uGWzl9xw+WYhvOL47BV09Dgfnm/tU4ieeZ7NAR5bgu
# orTCNr58HOcA1tcsHQqt0wJsdClsu8bpQD9e/al+lUgTUJEV80Xhco7xdgRrehby
# hUf4pkeAhBEjABvIUpD2LKPho5Z4DPCT5/0TlK02nlPwUbv9URREhVYCtsDM+31O
# FU3fDV8BmQXv5hT2RurVsJHZgP4y26dJDVF+3pcbtvh7R6NEDuYHYihfmE2HdQRq
# 5jRvLE1Eb59PYwISFCX2DaLZ+zpU4bX0I16ntKq4poGOFaaKtjIA1vRElItaOKcw
# tc04CBrXSfyL2Op6mvNIxTk4OaswIkTXbFL81ZKGD+24uMCwo/pLNhn7VHLfnxlM
# VzHQVL+bHa9KhTyzwdG/L6uderJQn0cGpLQMStUuNDArxW2wF16QGZ1NtBWgKA8K
# qv48M8HfFqNifN6+zt6J0GwzvU8g0rYGgTZR8zDEIJfeZxwWDHpSxB5FJ1VVU1LI
# AtB7o9PXbjXzGifaIMYTzU4YKt4vMNwwBmetQDHhdAtTPplOXrnI9SI6HeTtjDD3
# iUN/7ygbahmYOHk7VB7fwT4ze+ErCbMh6gHV1UuXPiLciloNxH6K4aMfZN1oLVk6
# YFeIJEokuPgNPa6EnTiOL60cPqfny+Fq8UiuZzGCFx8wghcbAgEBMHEwWjELMAkG
# A1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjErMCkGA1UE
# AxMiTWljcm9zb2Z0IElEIFZlcmlmaWVkIENTIEFPQyBDQSAwMgITMwAD0z0L3FwZ
# 8oadLwAAAAPTPTANBglghkgBZQMEAgEFAKBeMBAGCisGAQQBgjcCAQwxAjAAMBkG
# CSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMC8GCSqGSIb3DQEJBDEiBCBARc5h6xZH
# FJRcEedYa7AGTRdjw91Gb1iMynBLklTNFzANBgkqhkiG9w0BAQEFAASCAYBBdK93
# Jo5KKP1zgFenVitXb9gNLQR+CU+w8A0NyJssp5k9jftnjLb0YF8rnWVH6V2Jm7BT
# dOF+yvYxmXFIS2vWtb+xrl2pHYRqxPMt5FdprOSJ2mhdw9OVdxaHqLyd4NhfRuZc
# w8FkxG5OKTL9Jp8h4GIi+oI9QYOq9592B1XfsQaCDQ2bREz42lK6aLkmMSyFAIll
# 42yasOkCdOu87iJ06y6zqj1JC8orzDvlSrEeKaNVuXwj3DO2Ta4Pe8bkq1Gs8MWg
# 9XRvYehzITc4clJugSAW2K1oXaWXMbcaiMZAenQFCE04wLo7IDZBEy3xFNLtA13m
# sjsufRJ0KC7VrDKLDC4PA5h9B9NNkU9oKeV9lP5s4EtZ6s0OdycssT7ZPtXZ/iDh
# k1VbWNW5ZuT9pbZnMNG3OKIXPQpHK7wZ0+uuOupz8DN18f7ftGQgcVGAnZMC6Q6r
# dXWmpy9Vgyv3BI7Pkvdd+VKrpllev7yqV2Ioh6wYtepWJv4brM/Yg9kcRCuhghSf
# MIIUmwYKKwYBBAGCNwMDATGCFIswghSHBgkqhkiG9w0BBwKgghR4MIIUdAIBAzEP
# MA0GCWCGSAFlAwQCAQUAMIIBYAYLKoZIhvcNAQkQAQSgggFPBIIBSzCCAUcCAQEG
# CisGAQQBhFkKAwEwMTANBglghkgBZQMEAgEFAAQg8eTfxWHYcgBzaRRuwTornnSS
# vkzqHkf8Q7maxhdOyjQCBmgSuuiZmhgSMjAyNTA1MjUxMjQxMjAuODZaMASAAgH0
# oIHgpIHdMIHaMQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G
# A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSUw
# IwYDVQQLExxNaWNyb3NvZnQgQW1lcmljYSBPcGVyYXRpb25zMSYwJAYDVQQLEx1U
# aGFsZXMgVFNTIEVTTjpCQjczLTk2RkQtNzdFRjE1MDMGA1UEAxMsTWljcm9zb2Z0
# IFB1YmxpYyBSU0EgVGltZSBTdGFtcGluZyBBdXRob3JpdHmggg8gMIIHgjCCBWqg
# AwIBAgITMwAAAAXlzw//Zi7JhwAAAAAABTANBgkqhkiG9w0BAQwFADB3MQswCQYD
# VQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMUgwRgYDVQQD
# Ez9NaWNyb3NvZnQgSWRlbnRpdHkgVmVyaWZpY2F0aW9uIFJvb3QgQ2VydGlmaWNh
# dGUgQXV0aG9yaXR5IDIwMjAwHhcNMjAxMTE5MjAzMjMxWhcNMzUxMTE5MjA0MjMx
# WjBhMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9u
# MTIwMAYDVQQDEylNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0Eg
# MjAyMDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJ5851Jj/eDFnwV9
# Y7UGIqMcHtfnlzPREwW9ZUZHd5HBXXBvf7KrQ5cMSqFSHGqg2/qJhYqOQxwuEQXG
# 8kB41wsDJP5d0zmLYKAY8Zxv3lYkuLDsfMuIEqvGYOPURAH+Ybl4SJEESnt0MbPE
# oKdNihwM5xGv0rGofJ1qOYSTNcc55EbBT7uq3wx3mXhtVmtcCEr5ZKTkKKE1CxZv
# NPWdGWJUPC6e4uRfWHIhZcgCsJ+sozf5EeH5KrlFnxpjKKTavwfFP6XaGZGWUG8T
# ZaiTogRoAlqcevbiqioUz1Yt4FRK53P6ovnUfANjIgM9JDdJ4e0qiDRm5sOTiEQt
# BLGd9Vhd1MadxoGcHrRCsS5rO9yhv2fjJHrmlQ0EIXmp4DhDBieKUGR+eZ4CNE3c
# tW4uvSDQVeSp9h1SaPV8UWEfyTxgGjOsRpeexIveR1MPTVf7gt8hY64XNPO6iyUG
# sEgt8c2PxF87E+CO7A28TpjNq5eLiiunhKbq0XbjkNoU5JhtYUrlmAbpxRjb9tSr
# eDdtACpm3rkpxp7AQndnI0Shu/fk1/rE3oWsDqMX3jjv40e8KN5YsJBnczyWB4Jy
# eeFMW3JBfdeAKhzohFe8U5w9WuvcP1E8cIxLoKSDzCCBOu0hWdjzKNu8Y5SwB1lt
# 5dQhABYyzR3dxEO/T1K/BVF3rV69AgMBAAGjggIbMIICFzAOBgNVHQ8BAf8EBAMC
# AYYwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFGtpKDo1L0hjQM972K9J6T7Z
# PdshMFQGA1UdIARNMEswSQYEVR0gADBBMD8GCCsGAQUFBwIBFjNodHRwOi8vd3d3
# Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5odG0wEwYDVR0l
# BAwwCgYIKwYBBQUHAwgwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwDwYDVR0T
# AQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTIftJqhSobyhmYBAcnz1AQT2ioojCBhAYD
# VR0fBH0wezB5oHegdYZzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9j
# cmwvTWljcm9zb2Z0JTIwSWRlbnRpdHklMjBWZXJpZmljYXRpb24lMjBSb290JTIw
# Q2VydGlmaWNhdGUlMjBBdXRob3JpdHklMjAyMDIwLmNybDCBlAYIKwYBBQUHAQEE
# gYcwgYQwgYEGCCsGAQUFBzAChnVodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtp
# b3BzL2NlcnRzL01pY3Jvc29mdCUyMElkZW50aXR5JTIwVmVyaWZpY2F0aW9uJTIw
# Um9vdCUyMENlcnRpZmljYXRlJTIwQXV0aG9yaXR5JTIwMjAyMC5jcnQwDQYJKoZI
# hvcNAQEMBQADggIBAF+Idsd+bbVaFXXnTHho+k7h2ESZJRWluLE0Oa/pO+4ge/XE
# izXvhs0Y7+KVYyb4nHlugBesnFqBGEdC2IWmtKMyS1OWIviwpnK3aL5JedwzbeBF
# 7POyg6IGG/XhhJ3UqWeWTO+Czb1c2NP5zyEh89F72u9UIw+IfvM9lzDmc2O2END7
# MPnrcjWdQnrLn1Ntday7JSyrDvBdmgbNnCKNZPmhzoa8PccOiQljjTW6GePe5sGF
# uRHzdFt8y+bN2neF7Zu8hTO1I64XNGqst8S+w+RUdie8fXC1jKu3m9KGIqF4aldr
# YBamyh3g4nJPj/LR2CBaLyD+2BuGZCVmoNR/dSpRCxlot0i79dKOChmoONqbMI8m
# 04uLaEHAv4qwKHQ1vBzbV/nG89LDKbRSSvijmwJwxRxLLpMQ/u4xXxFfR4f/gksS
# kbJp7oqLwliDm/h+w0aJ/U5ccnYhYb7vPKNMN+SZDWycU5ODIRfyoGl59BsXR/Hp
# RGtiJquOYGmvA/pk5vC1lcnbeMrcWD/26ozePQ/TWfNXKBOmkFpvPE8CH+EeGGWz
# qTCjdAsno2jzTeNSxlx3glDGJgcdz5D/AAxw9Sdgq/+rY7jjgs7X6fqPTXPmaCAJ
# KVHAP19oEjJIBwD1LyHbaEgBxFCogYSOiUIr0Xqcr1nJfiWG2GwYe6ZoAF1bMIIH
# ljCCBX6gAwIBAgITMwAAAEXfe+fnDAkWngAAAAAARTANBgkqhkiG9w0BAQwFADBh
# MQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIw
# MAYDVQQDEylNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0EgMjAy
# MDAeFw0yNDExMjYxODQ4NDdaFw0yNTExMTkxODQ4NDdaMIHaMQswCQYDVQQGEwJV
# UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UE
# ChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSUwIwYDVQQLExxNaWNyb3NvZnQgQW1l
# cmljYSBPcGVyYXRpb25zMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjpCQjczLTk2
# RkQtNzdFRjE1MDMGA1UEAxMsTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZSBTdGFt
# cGluZyBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDA
# jtP0N0JgNSdh+Pi9r4yT210+bHbdwvCUccgDxkQi5MSCsVXwXmAgAcPO+B2suloB
# 81i3nL5W2nHlEdsVUmdGCfBYTcWsMoY7Wv6QVdxdELHNqNvuu/uf6kFLCHDAqZB6
# JMDxRk26OiwtDVbSiM4QvvExziXmbMu6ADoIvrXzAvuBplbBo4arpFE4Lti/WvXz
# 7LU7aZKgQzMzeVWvc+8iPdROa1ui9F5k5zs2U+4Y9MDCNe2qlLXoZTsN/gKsG8L1
# rmf0zXmioK1aNkRmWyB8zMDbwq9IqqpL9TJEFTBssQLSQ/p3+s7PLLS7EKA/bn2e
# 3NQXpz43teYLlfTg8Wjs5KcpywnTTiP1biCSLoy1EcGU9bWEHcRSU/Mx/Hu89WT7
# /R6uHcMp7lRSJnnhoLqFyWTepzvg6hFxeRGKqF4Tt8MsyaQbMbOIx+KLyjUrR9wN
# SEvUS19/YYvobQ3eqz/ay0mu2bijKhRElrCVM3nInznPNwXVdJozs/n3mOEXPyAH
# hAFO+zrvBBrmeswlEc1ZOW+phsiahhhfvKHOYBQsU7d6yyeu8iuIamLWm/g2+g9K
# y+ChDvQONVSsNuJ/yDA6Uh5+ly6dsZjMIo1kLes57FTokZ5TQ2VksD1Q9oXenF6e
# MQWqxlZWvckp/r+xuy0AgWzIzZk4yK+Ujyl9pZLhbwIDAQABo4IByzCCAccwHQYD
# VR0OBBYEFCXQ2+r1JdBEyafwHcavPYdjK5XyMB8GA1UdIwQYMBaAFGtpKDo1L0hj
# QM972K9J6T7ZPdshMGwGA1UdHwRlMGMwYaBfoF2GW2h0dHA6Ly93d3cubWljcm9z
# b2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUyMFB1YmxpYyUyMFJTQSUyMFRp
# bWVzdGFtcGluZyUyMENBJTIwMjAyMC5jcmwweQYIKwYBBQUHAQEEbTBrMGkGCCsG
# AQUFBzAChl1odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01p
# Y3Jvc29mdCUyMFB1YmxpYyUyMFJTQSUyMFRpbWVzdGFtcGluZyUyMENBJTIwMjAy
# MC5jcnQwDAYDVR0TAQH/BAIwADAWBgNVHSUBAf8EDDAKBggrBgEFBQcDCDAOBgNV
# HQ8BAf8EBAMCB4AwZgYDVR0gBF8wXTBRBgwrBgEEAYI3TIN9AQEwQTA/BggrBgEF
# BQcCARYzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9z
# aXRvcnkuaHRtMAgGBmeBDAEEAjANBgkqhkiG9w0BAQwFAAOCAgEAbL2151p4JPix
# 4UcYsqBC15GI/LS3A22guo5TzSBZrOiLQvkMdAaFeJUMxUlv3O7UhTcnm6c3HBp3
# 2EDr/iN67+QeBkXPcQSzNzNPjzSfPDHr3Na1U+4If/9vuHWo1nSntgqlqZQO7VmM
# Fa5KaA+Er8aBUtcs7VNDqe2uNvPxswl/fkexQVa8JGts+lfiGE16lRsvSNTeXVgQ
# IeiV4OG2uepXm/6vP+VdDGEbJVKM+H41ODzRfCTw5//uxpie8x1bbzGh6VQshicW
# pPE+f7W8olfVCeUfMEFS1YpUM9T98wRFxTZQXTnZyGKfRMJBrI/xwAF3WNhggtAx
# q2JgnNIsAB02I8zH9yWmgPTDXd6CkwP0HdvHSrKu7PYxArfUpHhnCgoYt8LC65rL
# MHZoQNyndD5JUaCeBifxJpOOd5RkuiGH9aT0Dgs6RmEMFiMVDUGi1tNz0phRXTkl
# c1qF4xLBGIVC4J5mdO2rCE35SlM76VkbMGPE9hNc5tBitjq+wHiPOaDNXb5SQTon
# adzMk/ot2KMavY8o+lDdtUbx2mqc5pjxqEq1Ci6hN8k8cbbkGutfbCE9yHzFkFhJ
# afQ1iP/JkqN79yuoli9SgQAuGiZBu4FTn4W/hT9HzHMxQYmCh4ciHyf06g03YkS0
# w57KkjqhOsZVG0pi0fJmZvhrmBQzxNcxggPUMIID0AIBATB4MGExCzAJBgNVBAYT
# AlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1p
# Y3Jvc29mdCBQdWJsaWMgUlNBIFRpbWVzdGFtcGluZyBDQSAyMDIwAhMzAAAARd97
# 5+cMCRaeAAAAAABFMA0GCWCGSAFlAwQCAQUAoIIBLTAaBgkqhkiG9w0BCQMxDQYL
# KoZIhvcNAQkQAQQwLwYJKoZIhvcNAQkEMSIEIC2lK14stEM/CcrYEOmTUOrIl94w
# VGyZetjfjJl9ZGclMIHdBgsqhkiG9w0BCRACLzGBzTCByjCBxzCBoAQguARVOsjI
# ij9x4y/muE8czvSIz0XS68pBFQ5+Id/SbnEwfDBlpGMwYTELMAkGA1UEBhMCVVMx
# HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9z
# b2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENBIDIwMjACEzMAAABF33vn5wwJ
# Fp4AAAAAAEUwIgQgu1MkWWSmNQA/A51+d6pNV3h/NvdG9ZOgKQar15vABZAwDQYJ
# KoZIhvcNAQELBQAEggIAWCZOyESpcHXEjglVID4h1X6ko9U+JBkIwVM58OkAICFr
# V+QmiNnivANA8rrepafGI3egB4j+JlvEWZ367doBdzKl5msO+uJvr+HYg4nK0quu
# O/kaHeavzXGAf1+Qac8RYJnwi7qtcDbzGt2slIShAfCIlLRH2sAATMUQQ5ke3LoM
# y4Kzo92vA7cc4pskQXtuDoX0Fmi/8C1VBTK767qwgMa3GmnM1xXe1PWId2gVIV8O
# 4z9wKVJbpUotJmxltNGmC8yfXd5H3dUqU4KZpIP3fZLN8Qq99/n9mGeU/L5SetjA
# teQTEVaPSKT4BDqOKXkTV3T07DM6f7Q/E7DYCL/tGZ4IXeDJoxLsYkqktQejTfyB
# 3bsjIdWm5jpcHr+1Yeef00lR8iB7NPKnqKjQNEx/Ft/Q4MQdtVPvl3dQQYQv6x8Z
# ilamwBs3vLniN3mWoTQxCDoOfu3sW8iQcGygd1yR0ZD1K379LzWfTqTmOE9rblpb
# RWz/H/1OaI/FlCItkBbUiPKpPkPH9K6DYxkj/zN8PZzPi2VJVmem105gBMklA0mT
# pjBxloUSra+TCe26nAculv8gRydJn0T4pYmv2uL6HsTRXVrAKxiAooX33rov80CE
# YCZloQOyPmPVdThWJ8NxKeat7lynKTwb55VBAulNj8M47omhYpkI8ms2MdJSvzs=
# SIG # End signature block