custom/Update-ZNUserMfaIdentityPolicy.ps1

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

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

function Update-ZNUserMfaIdentityPolicy {
    [OutputType([ZeroNetworks.PowerShell.Cmdlets.Api.Models.IdentityReactivePolicy])]
    [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]
        # User
        ${UserId},

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

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

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # fallback to logged on user enable/disable.
        ${FallbackToSingleLoggedOnUser},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int[]]
        # MFA methods.
        ${IdentityProtectionCategoryList},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int[]]
        # MFA methods.
        ${MfaMethodsList},
        
        [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]
        # the rule expiration.
        ${RuleDuration},

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

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

        [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(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [String[]]
        #excluded destinations
        ${ExcludedDstAssetIdsList},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [String[]]
        #excluded sources
        ${ExcludedSrcAssetIdsList},

        [Parameter(ParameterSetName = 'UpdateExpanded')]
        [ZeroNetworks.PowerShell.Cmdlets.Api.Category('Body')]
        [int[]]
        #extra logon types to allow
        ${ExtraIdentityProtectionCategoryList},

        [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()
            $userId = $PSBoundParameters['UserId'].ToString()
            $policy = ZeroNetworks\Get-ZNUserMfaIdentityPolicy -UserId $userId -ReactivePolicyId $policyId

            $updatedPolicy = [ZeroNetworks.PowerShell.Cmdlets.Api.Models.IdentityReactivePolicyBody]::new()
            
            $updatedPolicy.DstAssetId = $policy.ItemDstAssetId
        
            if($PSBoundParameters['FallbackToSingleLoggedOnUser']){
                $updatedPolicy.FallbackToSingleLoggedOnUser = $PSBoundParameters['FallbackToSingleLoggedOnUser']
                $null = $PSBoundParameters.Remove('FallbackToSingleLoggedOnUser')
            }
            else{
                $updatedPolicy.FallbackToSingleLoggedOnUser = $policy.ItemFallbackToSingleLoggedOnUser
                $null = $PSBoundParameters.Remove('FallbackToSingleLoggedOnUser')
            }

            if($PSBoundParameters['IdentityProtectionCategoryList']){
                $updatedPolicy.IdentityProtectionCategoryList = $PSBoundParameters['IdentityProtectionCategoryList']
                $null = $PSBoundParameters.Remove('IdentityProtectionCategoryList')
            }
            else{
                $updatedPolicy.IdentityProtectionCategoryList = $policy.ItemIdentityProtectionCategoryList
                $null = $PSBoundParameters.Remove('IdentityProtectionCategoryList')
            }
            
            if($PSBoundParameters['MfaMethodsList']){
                $updatedPolicy.MfaMethodsList = $PSBoundParameters['MfaMethodsList']
                $null = $PSBoundParameters.Remove('MfaMethodsList')
            }
            else{
                $updatedPolicy.MfaMethodsList = $policy.ItemMfaMethodsList
                $null = $PSBoundParameters.Remove('MfaMethodsList')
            } 

            if($PSBoundParameters['OverrideBuiltins']){
                $updatedPolicy.OverrideBuiltins = $PSBoundParameters['OverrideBuiltins']
                $null = $PSBoundParameters.Remove('OverrideBuiltins')
            }
            else{
                $updatedPolicy.OverrideBuiltins = $policy.ItemOverrideBuiltins
                $null = $PSBoundParameters.Remove('OverrideBuiltins')
            }

            if($PSBoundParameters['RuleDuration']){
                $updatedPolicy.RuleDuration = $PSBoundParameters['RuleDuration']
                $null = $PSBoundParameters.Remove('RuleDuration')
            }
            else{
                $updatedPolicy.RuleDuration = $policy.ItemRuleDuration
                $null = $PSBoundParameters.Remove('RuleDuration')
            }

            if($PSBoundParameters['SrcAssetIdsList']){
                $updatedPolicy.SrcAssetIdsList = $PSBoundParameters['SrcAssetIdsList']
                $null = $PSBoundParameters.Remove('SrcAssetIdsList')
            }
            else{
                $updatedPolicy.SrcAssetIdsList = $policy.ItemSrcAssetIdsList
                $null = $PSBoundParameters.Remove('SrcAssetIdsList')
            }
            
            if($PSBoundParameters['SrcUserIdsList']){
                $updatedPolicy.SrcUserIdsList = $PSBoundParameters['SrcUserIdsList']
                $null = $PSBoundParameters.Remove('SrcUserIdsList')
            }
            else{
                $updatedPolicy.SrcUserIdsList = $policy.ItemSrcUserIdsList
                $null = $PSBoundParameters.Remove('SrcUserIdsList')
            }
            
            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')
            }

            if($PSBoundParameters['ExcludedDstAssetIdsList']){
                $updatedPolicy.ExcludedDstAssetIdsList = $PSBoundParameters['ExcludedDstAssetIdsList']
                $null = $PSBoundParameters.Remove('ExcludedDstAssetIdsList')
            }
            else{
                $updatedPolicy.ExcludedDstAssetIdsList = $policy.ItemExcludedDstAssetIdsList
                $null = $PSBoundParameters.Remove('ExcludedDstAssetIdsList')
            }
            
            if($PSBoundParameters['ExcludedSrcAssetIdsList']){
                $updatedPolicy.ExcludedSrcAssetIdsList = $PSBoundParameters['ExcludedSrcAssetIdsList']
                $null = $PSBoundParameters.Remove('ExcludedSrcAssetIdsList')
            }
            else{
                $updatedPolicy.ExcludedSrcAssetIdsList = $policy.ExcludedSrcAssetIdsList
                $null = $PSBoundParameters.Remove('ExcludedSrcAssetIdsList')
            }
            
            if($PSBoundParameters['ExtraIdentityProtectionCategoryList']){
                $updatedPolicy.ExtraIdentityProtectionCategoryList = $PSBoundParameters['ExtraIdentityProtectionCategoryList']
                $null = $PSBoundParameters.Remove('ExtraIdentityProtectionCategoryList')
            }
            else{
                $updatedPolicy.ExtraIdentityProtectionCategoryList = $policy.ExtraIdentityProtectionCategoryList
                $null = $PSBoundParameters.Remove('ExtraIdentityProtectionCategoryList')
            }

            #Write-Debug $updatedPolicy | Out-String
            $null = $PSBoundParameters.Add('Body', $updatedPolicy)
            ZeroNetworks.internal\Update-ZNUserMfaIdentityPolicy @PSBoundParameters
        }
        catch {
            throw
        }
    }
}
# SIG # Begin signature block
# MII98AYJKoZIhvcNAQcCoII94TCCPd0CAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAGpdgiYvFd+LrW
# QUzq3DESOYCa0yntCMZCHxU+r1lzuaCCIrIwggXMMIIDtKADAgECAhBUmNLR1FsZ
# 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
# 03u4aUoqlmZpxJTG9F9urJh4iIAGXKKy7aIwggbtMIIE1aADAgECAhMzAASXcv1a
# tLo/pNiGAAAABJdyMA0GCSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYD
# VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJ
# RCBWZXJpZmllZCBDUyBFT0MgQ0EgMDEwHhcNMjUxMDAyMDAwOTU2WhcNMjUxMDA1
# MDAwOTU2WjBrMQswCQYDVQQGEwJJTDERMA8GA1UECBMIVGVsIEF2aXYxETAPBgNV
# BAcTCFRlbCBBdml2MRowGAYDVQQKExFaZXJvIE5ldHdvcmtzIEx0ZDEaMBgGA1UE
# AxMRWmVybyBOZXR3b3JrcyBMdGQwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGK
# AoIBgQCkv/4v5OjEH1zhSAsFHmFyDrN4voqjySFtxLI66m/Lot+aWLuEODlfckRZ
# WB91alOZtI3qr0rlxZBW9UVamDEfnkSRZ+h0MCW8U90OM7HCIkMbpvPIJAliOv77
# z5D6JFisNoEUp/AvZwUGn2RDWk9GhljsDGA28B6jhyQCTCriv6WOs+zjzB8Q1u5F
# 9vFtKdLyfjhx9Qf9Mz8hueujSBdgM7Ey3LGddWvQETIh2g5I+BefaUYComBoVp6j
# Nhs4x+xxj2Mm3M9AeBb33UOqKPUSHLE2/PVSfjnaRnUAIjRGvNzOYoA0/o71MA9k
# 50GzLBDmoEj41Q00845grUDzUxessLfdD1AK8qgbKNnELdxJVu9eQx/1WK2yApX9
# X6Hzb2iFt1Y7Brp8ww/YghkWlwv5aabmRYSnyqKYTEvbNAqvZzIAk9YtnPzNxJm/
# FNoOqVCDwxuRDicziwG2V8fzU21uX1LTgh7H09iTX+YOjSaBr58EEq+izMsgiLqz
# 5p/+W6cCAwEAAaOCAhkwggIVMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeA
# MDwGA1UdJQQ1MDMGCisGAQQBgjdhAQAGCCsGAQUFBwMDBhsrBgEEAYI3YYGwosY4
# g9jRjh+BtaSjBsGi+2swHQYDVR0OBBYEFCcT8kT4IkmWX27eNNNzB4qvWi9CMB8G
# A1UdIwQYMBaAFHacNnQT0ZB9YV+zAuuA9JlLpT6FMGcGA1UdHwRgMF4wXKBaoFiG
# Vmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUy
# MElEJTIwVmVyaWZpZWQlMjBDUyUyMEVPQyUyMENBJTIwMDEuY3JsMIGlBggrBgEF
# BQcBAQSBmDCBlTBkBggrBgEFBQcwAoZYaHR0cDovL3d3dy5taWNyb3NvZnQuY29t
# L3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBF
# T0MlMjBDQSUyMDAxLmNydDAtBggrBgEFBQcwAYYhaHR0cDovL29uZW9jc3AubWlj
# cm9zb2Z0LmNvbS9vY3NwMGYGA1UdIARfMF0wUQYMKwYBBAGCN0yDfQEBMEEwPwYI
# KwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9S
# ZXBvc2l0b3J5Lmh0bTAIBgZngQwBBAEwDQYJKoZIhvcNAQEMBQADggIBAFD1buk2
# 3LYSxz4sz6214o8eDYqn5iyrUJSCnPyMCaxwOVdwqhsrgQGR1pJpQGqpzE9PSm7H
# 4/1X21sfqePEMsTO/ZECo2hCaNOIEllnFBeOnGn3YQyhx5HhOYMA/bX6XGuy9XF3
# kiwq8GFP5Qa4bTun/s/h916NLqUwxRtzwFcAmB+lJF5mGjtP5fI6DdjqkwMMhWD2
# 2rQergPRvt8bdscnJhLVYbS1smrce8imjq9HoNnyCZhNd4ThCnWMsxE+6XLGBxCA
# xZQDbS3TxDIkq7GIboCErmkI/lSmWzbgGCO2pEbP35TxgWfHy8Isn6SY3+4ufhES
# CJeUOxGpAH9qh8iSM7V2VSDXsLjhBJbsy17lFfCAzX53xSxnuU66YfyRrEqaoK2x
# 5do6pAHMJxn1JC7/7aTqQeN1dY52h9d3egnx1BeHTIo3l5ynNGu6rx+HbOitvnIG
# 3SXVwNh30UnpI9z4n3Lzh/gsJE49ej1ejtvzcMtaDH58uiHbvKptxUVEYPMVJZXJ
# t9Q+czhn4cLJKXWO1/I5WNzKlOhRJhgxXHvnspIJcPQPh017VXl3q2vyTJUj/ffh
# NMdmDOw5bopUlI8L4kyeyTEcZ9j6A2cNJBiTzjVHA3bbQ0yN8zuyZGhnc1XQZ+yn
# no8JFQXFh74eHv9gsU1iq8fCJCwGgCdeoWDgMIIG7TCCBNWgAwIBAgITMwAEl3L9
# WrS6P6TYhgAAAASXcjANBgkqhkiG9w0BAQwFADBaMQswCQYDVQQGEwJVUzEeMBwG
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSswKQYDVQQDEyJNaWNyb3NvZnQg
# SUQgVmVyaWZpZWQgQ1MgRU9DIENBIDAxMB4XDTI1MTAwMjAwMDk1NloXDTI1MTAw
# NTAwMDk1NlowazELMAkGA1UEBhMCSUwxETAPBgNVBAgTCFRlbCBBdml2MREwDwYD
# VQQHEwhUZWwgQXZpdjEaMBgGA1UEChMRWmVybyBOZXR3b3JrcyBMdGQxGjAYBgNV
# BAMTEVplcm8gTmV0d29ya3MgTHRkMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIB
# igKCAYEApL/+L+ToxB9c4UgLBR5hcg6zeL6Ko8khbcSyOupvy6Lfmli7hDg5X3JE
# WVgfdWpTmbSN6q9K5cWQVvVFWpgxH55EkWfodDAlvFPdDjOxwiJDG6bzyCQJYjr+
# +8+Q+iRYrDaBFKfwL2cFBp9kQ1pPRoZY7AxgNvAeo4ckAkwq4r+ljrPs48wfENbu
# RfbxbSnS8n44cfUH/TM/Ibnro0gXYDOxMtyxnXVr0BEyIdoOSPgXn2lGAqJgaFae
# ozYbOMfscY9jJtzPQHgW991Dqij1EhyxNvz1Un452kZ1ACI0RrzczmKANP6O9TAP
# ZOdBsywQ5qBI+NUNNPOOYK1A81MXrLC33Q9QCvKoGyjZxC3cSVbvXkMf9VitsgKV
# /V+h829ohbdWOwa6fMMP2IIZFpcL+Wmm5kWEp8qimExL2zQKr2cyAJPWLZz8zcSZ
# vxTaDqlQg8MbkQ4nM4sBtlfH81Ntbl9S04Iex9PYk1/mDo0mga+fBBKvoszLIIi6
# s+af/lunAgMBAAGjggIZMIICFTAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIH
# gDA8BgNVHSUENTAzBgorBgEEAYI3YQEABggrBgEFBQcDAwYbKwYBBAGCN2GBsKLG
# OIPY0Y4fgbWkowbBovtrMB0GA1UdDgQWBBQnE/JE+CJJll9u3jTTcweKr1ovQjAf
# BgNVHSMEGDAWgBR2nDZ0E9GQfWFfswLrgPSZS6U+hTBnBgNVHR8EYDBeMFygWqBY
# hlZodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQl
# MjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBFT0MlMjBDQSUyMDAxLmNybDCBpQYIKwYB
# BQUHAQEEgZgwgZUwZAYIKwYBBQUHMAKGWGh0dHA6Ly93d3cubWljcm9zb2Z0LmNv
# bS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwSUQlMjBWZXJpZmllZCUyMENTJTIw
# RU9DJTIwQ0ElMjAwMS5jcnQwLQYIKwYBBQUHMAGGIWh0dHA6Ly9vbmVvY3NwLm1p
# Y3Jvc29mdC5jb20vb2NzcDBmBgNVHSAEXzBdMFEGDCsGAQQBgjdMg30BATBBMD8G
# CCsGAQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3Mv
# UmVwb3NpdG9yeS5odG0wCAYGZ4EMAQQBMA0GCSqGSIb3DQEBDAUAA4ICAQBQ9W7p
# Nty2Esc+LM+tteKPHg2Kp+Ysq1CUgpz8jAmscDlXcKobK4EBkdaSaUBqqcxPT0pu
# x+P9V9tbH6njxDLEzv2RAqNoQmjTiBJZZxQXjpxp92EMoceR4TmDAP21+lxrsvVx
# d5IsKvBhT+UGuG07p/7P4fdejS6lMMUbc8BXAJgfpSReZho7T+XyOg3Y6pMDDIVg
# 9tq0Hq4D0b7fG3bHJyYS1WG0tbJq3HvIpo6vR6DZ8gmYTXeE4Qp1jLMRPulyxgcQ
# gMWUA20t08QyJKuxiG6AhK5pCP5Upls24BgjtqRGz9+U8YFnx8vCLJ+kmN/uLn4R
# EgiXlDsRqQB/aofIkjO1dlUg17C44QSW7Mte5RXwgM1+d8UsZ7lOumH8kaxKmqCt
# seXaOqQBzCcZ9SQu/+2k6kHjdXWOdofXd3oJ8dQXh0yKN5ecpzRruq8fh2zorb5y
# Bt0l1cDYd9FJ6SPc+J9y84f4LCROPXo9Xo7b83DLWgx+fLoh27yqbcVFRGDzFSWV
# ybfUPnM4Z+HCySl1jtfyOVjcypToUSYYMVx757KSCXD0D4dNe1V5d6tr8kyVI/33
# 4TTHZgzsOW6KVJSPC+JMnskxHGfY+gNnDSQYk841RwN220NMjfM7smRoZ3NV0Gfs
# p56PCRUFxYe+Hh7/YLFNYqvHwiQsBoAnXqFg4DCCB1owggVCoAMCAQICEzMAAAAG
# Shr6zwVhanQAAAAAAAYwDQYJKoZIhvcNAQEMBQAwYzELMAkGA1UEBhMCVVMxHjAc
# BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE0MDIGA1UEAxMrTWljcm9zb2Z0
# IElEIFZlcmlmaWVkIENvZGUgU2lnbmluZyBQQ0EgMjAyMTAeFw0yMTA0MTMxNzMx
# NTRaFw0yNjA0MTMxNzMxNTRaMFoxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJRCBWZXJpZmll
# ZCBDUyBFT0MgQ0EgMDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDH
# 48g/9CHdxhnAu8XLq64nh9OneWfsaqzuzyVNXJ+A4lY/VoAHCTb+jF1WN9IdSrgx
# M9eKUvnuqL98ftid0Qrgqd3e7lx50XCvZodJOnq+X88vV0Av2x+gO82l0bQ39Hzg
# CFg2kFBOGk7j8GrGYKCXeIhF+GHagVU66JOINVa9cGDvptyOcecQS1fO8BbAm7Rs
# FTuhFGpB53hVcm0gJW35mgpRKOpjnBSWEB3AeH7fUGekE8LMW0pWIunrMS1HI7FF
# 6BqAVT7IuBe++Z3TsgM3RLZMti6JmNPD6Rxg62g2AqvuTQLoT1Z/cfiMdq+TYzGo
# Wm2B8vSAv7NtJv5UE0qJVPSarNckgmZaarDQr4Pcwp+YJ6vd7cJus/4XlG0JvRdo
# TS5Fwk9kmNbByIMHEEhuQ0XgYvXaGXm/J2AUybNBw26h0rJf//eUsnWrbaugdVLV
# yC2wuCmNZhmUGWEJNxcl5nfG5om9dkH2twsJfXk6BcvbW1RTAkIsTbtXkAZnGQ7e
# LniaBIKzC06ZZTgAp38H97cq1e/pcFREq4C157PUSmCWhpnBB6P2Xl031SHxbX0F
# mD0iUuX7EdFfi8OIxYBR//sA17gyhL3wXjmvvogYnSELTYQy4xnEASvBmPSWfRov
# ncTOUxrkkKJE5tvRSgsd8ZJ00mwyDS6PcMBAN1VZMQIDAQABo4ICDjCCAgowDgYD
# VR0PAQH/BAQDAgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBR2nDZ0E9GQ
# fWFfswLrgPSZS6U+hTBUBgNVHSAETTBLMEkGBFUdIAAwQTA/BggrBgEFBQcCARYz
# aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnku
# aHRtMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMBIGA1UdEwEB/wQIMAYBAf8C
# AQAwHwYDVR0jBBgwFoAU2UEpsA8PY2zvadf1zSmepEhqMOYwcAYDVR0fBGkwZzBl
# oGOgYYZfaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9z
# b2Z0JTIwSUQlMjBWZXJpZmllZCUyMENvZGUlMjBTaWduaW5nJTIwUENBJTIwMjAy
# MS5jcmwwga4GCCsGAQUFBwEBBIGhMIGeMG0GCCsGAQUFBzAChmFodHRwOi8vd3d3
# Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMElEJTIwVmVy
# aWZpZWQlMjBDb2RlJTIwU2lnbmluZyUyMFBDQSUyMDIwMjEuY3J0MC0GCCsGAQUF
# BzABhiFodHRwOi8vb25lb2NzcC5taWNyb3NvZnQuY29tL29jc3AwDQYJKoZIhvcN
# AQEMBQADggIBAGovCZ/YsHVCNSBrQbvMWRsZ3w0FAsc/Qo4UFY0kVmJO0p+k7Rtn
# ZZ+zq/m+ogqMTfZDozz0bhmRVy9a4QAD52+MtOFLLz1jT/+b9ZNIrBi2JHUTCfvH
# WTD8WD3fBCmzYLVZSP7TT/q42sX53gxUnFXUegEgP73lkhbQqSpmimc4DjDm8/hP
# lwGmtlACU/+8wbIHQf36kc2jSNP1DyB8ok3MdL2LUOAGaa58Z1b1MHK6ejwYCLMU
# yEuUizTxvmWKUiQTnPcUwBQCv5eAgjUU1mdvjc4jpB3bM6KNuNh+6uxdQI0cL5FL
# AkablQvM/KZiCCcn6SEk6ruhKWo8aluvvSEYF4/D8nv+aZKqnuFOC3SY+KRLWLhq
# nzH4/fJ6ZhKGcWuBXXvnZMj4Czr0t+Au2GQhO9/tsUcHy+YiFp1kI5LS9MLHcH78
# 5VwQws07ZsnQ72KRzUmpHQW+rHucDAxFKHcVWqiyDMFtadWRAmruhYXAxV8Uhifo
# s9Fky3jy7qIxQIUFI912w8D/qTzmYS/7TxTlYJDvJ2PUpVXZMet7/yYseJ6b3B/8
# LOiGpGe3EzYT/H40fLpMEydI9BGqGE1+46BQMBYRiaUz9kcZo8hvvE699XItD/uX
# ph+iBPd6m3CngY4ZGMfnP6Ab2SkEjHxCtGXo6KWeXFETGiSYx+UvuXXZMIIHnjCC
# 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+Fq8UiuZzGCGpQwghqQAgEBMHEwWjELMAkG
# A1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjErMCkGA1UE
# AxMiTWljcm9zb2Z0IElEIFZlcmlmaWVkIENTIEVPQyBDQSAwMQITMwAEl3L9WrS6
# P6TYhgAAAASXcjANBglghkgBZQMEAgEFAKBeMBAGCisGAQQBgjcCAQwxAjAAMBkG
# CSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMC8GCSqGSIb3DQEJBDEiBCA6lTIe3kVA
# Q1Z46pKu7qg/Iqj4i74TKxRWvJbES5SGPTANBgkqhkiG9w0BAQEFAASCAYAB+Izt
# meaIejzfofB/XqjQ2oTtBTR+mpJ2exjztiAmWQDCvXpemEZM6ZjFULdCwH8nxdFn
# OYUzee0GILLipM3qBJotU0wXoLhiAROUK3K2R2BM3XZvWhUrmU9/4OMG4qJY3CtN
# Mvd9tmOzkRFZh18T6gJnGi7qfZ/bcH+ABrDskshGG5+GRlc9rI8f8PpJN3hQz9AQ
# QxGP2lFariCBMbkQcdNUwhvhqRPmLXw4BdEq2cLU14NHs4HLaEUrZ+s85iWu0tYF
# 7BNW9PHD5JUCJjLsUBCNxDmbMJVpA7bxKvA1BcS/31iZDZrcKiq8tdCm0Fj/qGr5
# P9CMy1WB3jJhKDKkWhNRfjtG47cb9TH9u2aoa3jjU22Q4zSx2KCJt2oWW9tDSGUu
# MIwizjLaVJCz5R1FK2b+PtuHKjNh1gN2yaAcXgmH9zNRCcN6gIKeQeA+hGKBGIWP
# nOEOCzt8u6rnqsnJ7T+ErQDhsdyDMysIuT5ELc0w3h+rutr9xHkq6MlPpuehghgU
# MIIYEAYKKwYBBAGCNwMDATGCGAAwghf8BgkqhkiG9w0BBwKgghftMIIX6QIBAzEP
# MA0GCWCGSAFlAwQCAQUAMIIBYgYLKoZIhvcNAQkQAQSgggFRBIIBTTCCAUkCAQEG
# CisGAQQBhFkKAwEwMTANBglghkgBZQMEAgEFAAQg3HRKuAgvFAXIRrxwO5xZEj5O
# SP2ONIFilN3MjvOt/5sCBmjCAaJLrRgTMjAyNTEwMDIxNDE4MzQuMTIxWjAEgAIB
# 9KCB4aSB3jCB2zELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAO
# BgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEl
# MCMGA1UECxMcTWljcm9zb2Z0IEFtZXJpY2EgT3BlcmF0aW9uczEnMCUGA1UECxMe
# blNoaWVsZCBUU1MgRVNOOjdEMDAtMDVFMC1EOTQ3MTUwMwYDVQQDEyxNaWNyb3Nv
# ZnQgUHVibGljIFJTQSBUaW1lIFN0YW1waW5nIEF1dGhvcml0eaCCDyEwggeCMIIF
# aqADAgECAhMzAAAABeXPD/9mLsmHAAAAAAAFMA0GCSqGSIb3DQEBDAUAMHcxCzAJ
# BgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xSDBGBgNV
# BAMTP01pY3Jvc29mdCBJZGVudGl0eSBWZXJpZmljYXRpb24gUm9vdCBDZXJ0aWZp
# Y2F0ZSBBdXRob3JpdHkgMjAyMDAeFw0yMDExMTkyMDMyMzFaFw0zNTExMTkyMDQy
# MzFaMGExCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRp
# b24xMjAwBgNVBAMTKU1pY3Jvc29mdCBQdWJsaWMgUlNBIFRpbWVzdGFtcGluZyBD
# QSAyMDIwMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnnznUmP94MWf
# BX1jtQYioxwe1+eXM9ETBb1lRkd3kcFdcG9/sqtDlwxKoVIcaqDb+omFio5DHC4R
# BcbyQHjXCwMk/l3TOYtgoBjxnG/eViS4sOx8y4gSq8Zg49REAf5huXhIkQRKe3Qx
# s8Sgp02KHAznEa/Ssah8nWo5hJM1xznkRsFPu6rfDHeZeG1Wa1wISvlkpOQooTUL
# Fm809Z0ZYlQ8Lp7i5F9YciFlyAKwn6yjN/kR4fkquUWfGmMopNq/B8U/pdoZkZZQ
# bxNlqJOiBGgCWpx69uKqKhTPVi3gVErnc/qi+dR8A2MiAz0kN0nh7SqINGbmw5OI
# RC0EsZ31WF3Uxp3GgZwetEKxLms73KG/Z+MkeuaVDQQheangOEMGJ4pQZH55ngI0
# Tdy1bi69INBV5Kn2HVJo9XxRYR/JPGAaM6xGl57Ei95HUw9NV/uC3yFjrhc087qL
# JQawSC3xzY/EXzsT4I7sDbxOmM2rl4uKK6eEpurRduOQ2hTkmG1hSuWYBunFGNv2
# 1Kt4N20AKmbeuSnGnsBCd2cjRKG79+TX+sTehawOoxfeOO/jR7wo3liwkGdzPJYH
# gnJ54UxbckF914AqHOiEV7xTnD1a69w/UTxwjEugpIPMIIE67SFZ2PMo27xjlLAH
# WW3l1CEAFjLNHd3EQ79PUr8FUXetXr0CAwEAAaOCAhswggIXMA4GA1UdDwEB/wQE
# AwIBhjAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQUa2koOjUvSGNAz3vYr0np
# Ptk92yEwVAYDVR0gBE0wSzBJBgRVHSAAMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly93
# d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9SZXBvc2l0b3J5Lmh0bTATBgNV
# HSUEDDAKBggrBgEFBQcDCDAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTAPBgNV
# HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFMh+0mqFKhvKGZgEByfPUBBPaKiiMIGE
# BgNVHR8EfTB7MHmgd6B1hnNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3Bz
# L2NybC9NaWNyb3NvZnQlMjBJZGVudGl0eSUyMFZlcmlmaWNhdGlvbiUyMFJvb3Ql
# MjBDZXJ0aWZpY2F0ZSUyMEF1dGhvcml0eSUyMDIwMjAuY3JsMIGUBggrBgEFBQcB
# AQSBhzCBhDCBgQYIKwYBBQUHMAKGdWh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9w
# a2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwSWRlbnRpdHklMjBWZXJpZmljYXRpb24l
# MjBSb290JTIwQ2VydGlmaWNhdGUlMjBBdXRob3JpdHklMjAyMDIwLmNydDANBgkq
# hkiG9w0BAQwFAAOCAgEAX4h2x35ttVoVdedMeGj6TuHYRJklFaW4sTQ5r+k77iB7
# 9cSLNe+GzRjv4pVjJviceW6AF6ycWoEYR0LYhaa0ozJLU5Yi+LCmcrdovkl53DNt
# 4EXs87KDogYb9eGEndSpZ5ZM74LNvVzY0/nPISHz0Xva71QjD4h+8z2XMOZzY7YQ
# 0Psw+etyNZ1CesufU211rLslLKsO8F2aBs2cIo1k+aHOhrw9xw6JCWONNboZ497m
# wYW5EfN0W3zL5s3ad4Xtm7yFM7Ujrhc0aqy3xL7D5FR2J7x9cLWMq7eb0oYioXhq
# V2tgFqbKHeDick+P8tHYIFovIP7YG4ZkJWag1H91KlELGWi3SLv10o4KGag42psw
# jybTi4toQcC/irAodDW8HNtX+cbz0sMptFJK+KObAnDFHEsukxD+7jFfEV9Hh/+C
# SxKRsmnuiovCWIOb+H7DRon9TlxydiFhvu88o0w35JkNbJxTk4MhF/KgaXn0GxdH
# 8elEa2Imq45gaa8D+mTm8LWVydt4ytxYP/bqjN49D9NZ81coE6aQWm88TwIf4R4Y
# ZbOpMKN0CyejaPNN41LGXHeCUMYmBx3PkP8ADHD1J2Cr/6tjuOOCztfp+o9Nc+Zo
# IAkpUcA/X2gSMkgHAPUvIdtoSAHEUKiBhI6JQivRepyvWcl+JYbYbBh7pmgAXVsw
# ggeXMIIFf6ADAgECAhMzAAAAS6GxreFZ/Oc0AAAAAABLMA0GCSqGSIb3DQEBDAUA
# MGExCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24x
# MjAwBgNVBAMTKU1pY3Jvc29mdCBQdWJsaWMgUlNBIFRpbWVzdGFtcGluZyBDQSAy
# MDIwMB4XDTI0MTEyNjE4NDg1N1oXDTI1MTExOTE4NDg1N1owgdsxCzAJBgNVBAYT
# AlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYD
# VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJTAjBgNVBAsTHE1pY3Jvc29mdCBB
# bWVyaWNhIE9wZXJhdGlvbnMxJzAlBgNVBAsTHm5TaGllbGQgVFNTIEVTTjo3RDAw
# LTA1RTAtRDk0NzE1MDMGA1UEAxMsTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZSBT
# dGFtcGluZyBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC
# AQCdnYqzfzSDLZ8t/IcnBhZ/VS77fz7MIUKa1I9mDjnJRNPdVWovmgU5UbARCbLC
# IIzZj8J0/YDeyJBDYFTySXAgaHlDw06rUBcryq2eaxoWfShTHSdlOnyzhDUw8GXG
# YJT1x/q+nGm6k1oruwW2wrYNR86/Q5sr1XYCJlM8yteWaJFvZJGE6vCOPQxni/lE
# N2qoTrq2ejmpVVMPngkX9IMCyrlxav40gC15WTU7dZ3o19bQs7u+drzbzON0MtKs
# qa1vDFsHuqvH2q1S21zETmed/llmTK5QaRLLhk5WCd9w1n/Do5gHarg6Jv861uSC
# qAdMdNnI34fnTsIRnaEtCGWGu7W1Zd7blHSligBaGALIC61vJzWj1Mb8JxhhmhfP
# X20d6nB1Jpmm4qIP/FW02uCxJSq9Fe8ziedvlg4m1aCqjWX0Q566/i7VieVsOA3r
# x1xRXeIbADmsxnw36YlZohsqREsZUMjQZ4e6cCfKAlaO02ca7GizIRn7mNvzHNYc
# 47gQCFEC+YgX2SLvw4b6R5Taq43XJ0hfhDwPSPiT60dySjLUIcmDcs2vI878t3Wx
# El2an9HJCaYPKvV/UZ1Ay9HjkSJc3ZqIXvgGlh1VI7kCpPTBayY7RC0IzJl5a7+D
# M7FcBhei9h1eJ8AdZszVcUGk+LkF+uqU3GAnjYadJC/x2QIDAQABo4IByzCCAccw
# HQYDVR0OBBYEFCCZGsUvRVF/zToRWkE3JYWmuHQmMB8GA1UdIwQYMBaAFGtpKDo1
# L0hjQM972K9J6T7ZPdshMGwGA1UdHwRlMGMwYaBfoF2GW2h0dHA6Ly93d3cubWlj
# cm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUyMFB1YmxpYyUyMFJTQSUy
# MFRpbWVzdGFtcGluZyUyMENBJTIwMjAyMC5jcmwweQYIKwYBBQUHAQEEbTBrMGkG
# CCsGAQUFBzAChl1odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRz
# L01pY3Jvc29mdCUyMFB1YmxpYyUyMFJTQSUyMFRpbWVzdGFtcGluZyUyMENBJTIw
# MjAyMC5jcnQwDAYDVR0TAQH/BAIwADAWBgNVHSUBAf8EDDAKBggrBgEFBQcDCDAO
# BgNVHQ8BAf8EBAMCB4AwZgYDVR0gBF8wXTBRBgwrBgEEAYI3TIN9AQEwQTA/Bggr
# BgEFBQcCARYzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1Jl
# cG9zaXRvcnkuaHRtMAgGBmeBDAEEAjANBgkqhkiG9w0BAQwFAAOCAgEAMb3YbNgy
# OUIdvrmh8yK25QWzU4kVUvlJmCygDGdnUKokh4ZAMzZu+c7cTlw+hcCH8vbx7zMR
# bKbLzp1XOXP+/BvnUKynTgEGBkXPEbKwEezCtNwGZm7fAHHh7fAC8GN0R4dEneZB
# uyvUwjv/RMa3bRCN0IuMTsIpjzwOVivH6lDU8o6dxkE6w+1EhKgImb3iCnGXS1gn
# otzJ6oa0x3lYMuirYOpLFlc54xJR1RncJBKqVqC+2vu31GRaVmBiwVU/bFuYN0o6
# LVnAPTcu1fMDcn6ts5EbW5chgEMFIoUM3tSDMNXoMIQkMQvN3beZpjnLDb4V8OAN
# Ld5oXz+bd+p5zW21v6odGTBUX/qhjSxBhTbwTPqlV1/Dx95x/6/52PrETq6bQb6t
# 6TAFq4fpXTmRo8uBVj1pkGVljJPDxvi6DyaBZECqlHQws8wM4qDWTk9hTIZrKlK/
# mvD6J3hR782HLG6WJiEuuVSxv+8zsI86ibPK6ywwjlBloH6/+YEtQtS4gIx4D/1x
# nP7qVfK7FcPtRO4AHEw2g+Nm37R+6B+RDime4WvUvxR8FweNjEry0QGtQVvZcEIf
# lDXryIp2UdQIIgW+zmUO2b05TulkFPIsiVsgcAYPZjeBuyJkdlhZpYdP0JpYPQiU
# ZTY3hjkum3n/7FnEaVhOV+ZdS+0XXVa3A7kxggdGMIIHQgIBATB4MGExCzAJBgNV
# BAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMT
# KU1pY3Jvc29mdCBQdWJsaWMgUlNBIFRpbWVzdGFtcGluZyBDQSAyMDIwAhMzAAAA
# S6GxreFZ/Oc0AAAAAABLMA0GCWCGSAFlAwQCAQUAoIIEnzARBgsqhkiG9w0BCRAC
# DzECBQAwGgYJKoZIhvcNAQkDMQ0GCyqGSIb3DQEJEAEEMBwGCSqGSIb3DQEJBTEP
# Fw0yNTEwMDIxNDE4MzRaMC8GCSqGSIb3DQEJBDEiBCA60rwGuPxitA+THSbTqzpf
# S+yiPpwQO7pKW7O/lcvm5jCBuQYLKoZIhvcNAQkQAi8xgakwgaYwgaMwgaAEINuJ
# KJ0rsvRcScm4woZmCKowMSTh9DWm0OSNAeUABkSnMHwwZaRjMGExCzAJBgNVBAYT
# AlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1p
# Y3Jvc29mdCBQdWJsaWMgUlNBIFRpbWVzdGFtcGluZyBDQSAyMDIwAhMzAAAAS6Gx
# reFZ/Oc0AAAAAABLMIIDYQYLKoZIhvcNAQkQAhIxggNQMIIDTKGCA0gwggNEMIIC
# LAIBATCCAQmhgeGkgd4wgdsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5n
# dG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9y
# YXRpb24xJTAjBgNVBAsTHE1pY3Jvc29mdCBBbWVyaWNhIE9wZXJhdGlvbnMxJzAl
# BgNVBAsTHm5TaGllbGQgVFNTIEVTTjo3RDAwLTA1RTAtRDk0NzE1MDMGA1UEAxMs
# TWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZSBTdGFtcGluZyBBdXRob3JpdHmiIwoB
# ATAHBgUrDgMCGgMVAPV6ws6b5FNHUOmEILADVgzql5kzoGcwZaRjMGExCzAJBgNV
# BAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMT
# KU1pY3Jvc29mdCBQdWJsaWMgUlNBIFRpbWVzdGFtcGluZyBDQSAyMDIwMA0GCSqG
# SIb3DQEBCwUAAgUA7IjYTjAiGA8yMDI1MTAwMjEwNTQwNloYDzIwMjUxMDAzMTA1
# NDA2WjB3MD0GCisGAQQBhFkKBAExLzAtMAoCBQDsiNhOAgEAMAoCAQACAg4TAgH/
# MAcCAQACAhNrMAoCBQDsiinOAgEAMDYGCisGAQQBhFkKBAIxKDAmMAwGCisGAQQB
# hFkKAwKgCjAIAgEAAgMHoSChCjAIAgEAAgMBhqAwDQYJKoZIhvcNAQELBQADggEB
# AL0tuTeHZvFUgTlGGVuY/wsk8pRk6IAonAgYEcxaQgqu4Bf7qLyaFq8NjtFLjzX9
# EdO3sKJTfAFJ/ko767IukUatnfEwj6RuQOV2uZjMMLW+Sl/KXhAs/3E1nMd/r8L/
# TYXAAGRzz6arohli0xX4usTRTg/1nOmK6cb83/SkyIQolwPO/0VYbV+g7/rjL6AB
# GG+NyVb++4IpFtTblfp1tWaNzlfI6EYz6FpfbufLSmfu/jSs4HnmEaeG+yV615+f
# MhVXC+j/7pGARBlCyWZJQOAuTujxEDDI6zatX8NMsiNyW0XvQNTGosmQejw/2cFN
# HZdI+eTJqtDHvOzWfYd9si0wDQYJKoZIhvcNAQEBBQAEggIAQQf6ax2fCKTYaApf
# +jIMsAeWmruRtIEjupjNX7X4UhK9q+rFWm2ph53cgk/azk4cC2kUtnNyNeyxvVev
# Iab/S8dLVV4IRDRwU7CDV5f0gp9VM07//hYyATLYc1yuhWfRVZhMfaHBFh9KgxbK
# TSaNWtc1bx5DWAFf+G0ovDiIXgg3LiTUdatHogKFfZUX3Iw9noodbeQyKdQkoD8G
# T2/H/cb19l/6aDDjtVol3ExbiXxuplerfDcGYlYQW4en0L1qiFjOpuUX7JCqWjv/
# B4tBgsndP904Dp1yXL8Jh/azQhbxeuUwhGyPA96Xd9+MxrQ260O/BMHOjBvKltUx
# Ff8C3mOKM+IS6YVn/+whYb4xcxvEUPlyr3ZVHQk4tx2W1/qTJLiqXY7KjHoSEAMe
# FwAyQrdAo9M74w+DHAn0iZjAccmWrs4Hc1IUzctGQaZPvDdMzdDG2SUl0zKs4ifO
# 5J0QmEJKQFAP7rImFFLd2HxFMH5iSjfUy0UV/OHodLo0bti6YNqSFEY+V219uVOY
# S68yoyV+qFGI+WWZTdEsJiTayiCuzV9yp0GGtslmlcOHYk9lWeW/3eiaEfx9DIJu
# VZoKbKi9jERkEpcosUZrGvXdaWuy/4Ga2l1KPsNsfdu0Zvq95zEZoL3wNa/fZBtB
# Ju/hbnOEAvbtlady2KmpIj0iCvI=
# SIG # End signature block