custom/Update-ZNAssetMfaIdentityPolicy.ps1

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

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

function Update-ZNAssetMfaIdentityPolicy {
    [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]
        # Asset Id
        ${AssetId},
        
        [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()
            $assetId = $PSBoundParameters['AssetId'].ToString()
            $policy = ZeroNetworks\Get-ZNAssetMfaIdentityPolicy -AssetId $assetId -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-ZNAssetMfaIdentityPolicy @PSBoundParameters
        }
        catch {
            throw
        }
    }
}
# SIG # Begin signature block
# MII97AYJKoZIhvcNAQcCoII93TCCPdkCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCBQLEhb6QNH2HLH
# vsQ8MQlIFyWxSorQJWnEsQ4ObyvRRqCCIrIwggXMMIIDtKADAgECAhBUmNLR1FsZ
# 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
# 03u4aUoqlmZpxJTG9F9urJh4iIAGXKKy7aIwggbtMIIE1aADAgECAhMzAAPX2Qh3
# cP5DS3rjAAAAA9fZMA0GCSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYD
# VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJ
# RCBWZXJpZmllZCBDUyBFT0MgQ0EgMDIwHhcNMjUwODA0MDMyODA3WhcNMjUwODA3
# MDMyODA3WjBrMQswCQYDVQQGEwJJTDERMA8GA1UECBMIVGVsIEF2aXYxETAPBgNV
# BAcTCFRlbCBBdml2MRowGAYDVQQKExFaZXJvIE5ldHdvcmtzIEx0ZDEaMBgGA1UE
# AxMRWmVybyBOZXR3b3JrcyBMdGQwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGK
# AoIBgQCNNX6IHKueRYXRZ9Foah9tSZbaABVwGmRcLsMNXKfroHVgfOQoqTioHNdq
# BMA8uPUiXkrOSRSa5/VWEMDgG+0F63iAyrc0wKEBiYfLXiCqSr8dgTg5ygAMCpmN
# 3R/MhzmRWmfgQ/jPy2arkUVpzOaJFn0EdHQSkShLeL6d977RIhhteg7TPcYH2Pou
# GcJJjAu1bJJyIcjr+N73EQqcIbsGeobN1LLSZoIJZ8AVU50auqxldXCF4zFNJvjP
# rbLM0ZzYDPNWQ03pS14MZsccYDLt+CHJperZhkyHwXkyQ9aKGoFY56sk5TkhAbfg
# 6Z/b0vJmcWzUe33pYUt18vcwkrYn6/mSZXXYA+2C+z6jfpa9xSsvWl3UEZdkaCyf
# fLQi2ASJJXxlPmyZmSYJ2Z7muvvjsrM3rMp1JtdAbNqwdItzqeLOt6g4T9RWEK54
# LHk9f6qwgRs4jWVJDe2Kh77tza8Q267qzLZ7ITAi19XYB2vHE1pMMKDW9jnfLr3h
# yRovNTMCAwEAAaOCAhkwggIVMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeA
# MDwGA1UdJQQ1MDMGCisGAQQBgjdhAQAGCCsGAQUFBwMDBhsrBgEEAYI3YYGwosY4
# g9jRjh+BtaSjBsGi+2swHQYDVR0OBBYEFHuhZ3Dm8FpkoROSFvSPeyem7hadMB8G
# A1UdIwQYMBaAFGWfUc6FaH8vikWIqt2nMbseDQBeMGcGA1UdHwRgMF4wXKBaoFiG
# Vmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUy
# MElEJTIwVmVyaWZpZWQlMjBDUyUyMEVPQyUyMENBJTIwMDIuY3JsMIGlBggrBgEF
# BQcBAQSBmDCBlTBkBggrBgEFBQcwAoZYaHR0cDovL3d3dy5taWNyb3NvZnQuY29t
# L3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBF
# T0MlMjBDQSUyMDAyLmNydDAtBggrBgEFBQcwAYYhaHR0cDovL29uZW9jc3AubWlj
# cm9zb2Z0LmNvbS9vY3NwMGYGA1UdIARfMF0wUQYMKwYBBAGCN0yDfQEBMEEwPwYI
# KwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9S
# ZXBvc2l0b3J5Lmh0bTAIBgZngQwBBAEwDQYJKoZIhvcNAQEMBQADggIBAIRKlBxZ
# J7myaDnUL1O0KP2y2XyWCTdV0V81CMRWs431GfXrL6Ez4/gaj6t5BN2CZgAyBfXl
# HwJzXZ2ticEZsWyClI6jyFvr/hoola2c/WdtoNzE1dXiQVYwB7jTLXG+SdTJ0qlH
# 8HPBwmjUDrofA1alTCbwA8KBTMbaQ2hXhEDZdTAYXPzXQcDG4Bvs/WXEHmsgsvXn
# Xnep/4uRueJrHezqeb2zBea61vMp9SfSDME0cIJzE/r6pu3/nM3wtN3Au9zN4Bry
# 62hoBduuG/zFy+AiZaJAgPe9LfBVMQGzD3rrpW6unvu6CIGhsW+33RZSs0pi4Xn1
# 0Tmzyj+NsSHdgU4Y5RvSxfsYtndM1UdhCx1+FoNUPyv4s4E1LxIzWeDzoxrzm2xn
# 0lILIaVpoESnghM13NYEB0N5gc1aDF7Np9X1je34fH7zw6dLJYxAj0ZFWd7lTY6d
# 61AFcPifTh4i118EpmyogiM1+PlsBKxvVOMhm3hZYuUVsraeSKmHqrDu/maWKxph
# n4+P4dTgLXe98A1G/By/xktuR4/MvF8nkBmIQOoe5ux36+MuEpC7vOj7k4YlPH+L
# C/BHfiJknBivX6ObCGkPk5fkg6G2pFYoalT1iOVfNvVUbjwPtiSEQpca0fb7XnAF
# Dss8fBqTykTcCQj9dTzvFzrnfI88sArLAOJiMIIG7TCCBNWgAwIBAgITMwAD19kI
# d3D+Q0t64wAAAAPX2TANBgkqhkiG9w0BAQwFADBaMQswCQYDVQQGEwJVUzEeMBwG
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSswKQYDVQQDEyJNaWNyb3NvZnQg
# SUQgVmVyaWZpZWQgQ1MgRU9DIENBIDAyMB4XDTI1MDgwNDAzMjgwN1oXDTI1MDgw
# NzAzMjgwN1owazELMAkGA1UEBhMCSUwxETAPBgNVBAgTCFRlbCBBdml2MREwDwYD
# VQQHEwhUZWwgQXZpdjEaMBgGA1UEChMRWmVybyBOZXR3b3JrcyBMdGQxGjAYBgNV
# BAMTEVplcm8gTmV0d29ya3MgTHRkMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIB
# igKCAYEAjTV+iByrnkWF0WfRaGofbUmW2gAVcBpkXC7DDVyn66B1YHzkKKk4qBzX
# agTAPLj1Il5KzkkUmuf1VhDA4BvtBet4gMq3NMChAYmHy14gqkq/HYE4OcoADAqZ
# jd0fzIc5kVpn4EP4z8tmq5FFaczmiRZ9BHR0EpEoS3i+nfe+0SIYbXoO0z3GB9j6
# LhnCSYwLtWySciHI6/je9xEKnCG7BnqGzdSy0maCCWfAFVOdGrqsZXVwheMxTSb4
# z62yzNGc2AzzVkNN6UteDGbHHGAy7fghyaXq2YZMh8F5MkPWihqBWOerJOU5IQG3
# 4Omf29LyZnFs1Ht96WFLdfL3MJK2J+v5kmV12APtgvs+o36WvcUrL1pd1BGXZGgs
# n3y0ItgEiSV8ZT5smZkmCdme5rr747KzN6zKdSbXQGzasHSLc6nizreoOE/UVhCu
# eCx5PX+qsIEbOI1lSQ3tioe+7c2vENuu6sy2eyEwItfV2AdrxxNaTDCg1vY53y69
# 4ckaLzUzAgMBAAGjggIZMIICFTAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIH
# gDA8BgNVHSUENTAzBgorBgEEAYI3YQEABggrBgEFBQcDAwYbKwYBBAGCN2GBsKLG
# OIPY0Y4fgbWkowbBovtrMB0GA1UdDgQWBBR7oWdw5vBaZKETkhb0j3snpu4WnTAf
# BgNVHSMEGDAWgBRln1HOhWh/L4pFiKrdpzG7Hg0AXjBnBgNVHR8EYDBeMFygWqBY
# hlZodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQl
# MjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBFT0MlMjBDQSUyMDAyLmNybDCBpQYIKwYB
# BQUHAQEEgZgwgZUwZAYIKwYBBQUHMAKGWGh0dHA6Ly93d3cubWljcm9zb2Z0LmNv
# bS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwSUQlMjBWZXJpZmllZCUyMENTJTIw
# RU9DJTIwQ0ElMjAwMi5jcnQwLQYIKwYBBQUHMAGGIWh0dHA6Ly9vbmVvY3NwLm1p
# Y3Jvc29mdC5jb20vb2NzcDBmBgNVHSAEXzBdMFEGDCsGAQQBgjdMg30BATBBMD8G
# CCsGAQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3Mv
# UmVwb3NpdG9yeS5odG0wCAYGZ4EMAQQBMA0GCSqGSIb3DQEBDAUAA4ICAQCESpQc
# WSe5smg51C9TtCj9stl8lgk3VdFfNQjEVrON9Rn16y+hM+P4Go+reQTdgmYAMgX1
# 5R8Cc12drYnBGbFsgpSOo8hb6/4aKJWtnP1nbaDcxNXV4kFWMAe40y1xvknUydKp
# R/BzwcJo1A66HwNWpUwm8APCgUzG2kNoV4RA2XUwGFz810HAxuAb7P1lxB5rILL1
# 5153qf+Lkbniax3s6nm9swXmutbzKfUn0gzBNHCCcxP6+qbt/5zN8LTdwLvczeAa
# 8utoaAXbrhv8xcvgImWiQID3vS3wVTEBsw9666Vurp77ugiBobFvt90WUrNKYuF5
# 9dE5s8o/jbEh3YFOGOUb0sX7GLZ3TNVHYQsdfhaDVD8r+LOBNS8SM1ng86Ma85ts
# Z9JSCyGlaaBEp4ITNdzWBAdDeYHNWgxezafV9Y3t+Hx+88OnSyWMQI9GRVne5U2O
# netQBXD4n04eItdfBKZsqIIjNfj5bASsb1TjIZt4WWLlFbK2nkiph6qw7v5mlisa
# YZ+Pj+HU4C13vfANRvwcv8ZLbkePzLxfJ5AZiEDqHubsd+vjLhKQu7zo+5OGJTx/
# iwvwR34iZJwYr1+jmwhpD5OX5IOhtqRWKGpU9YjlXzb1VG48D7YkhEKXGtH2+15w
# BQ7LPHwak8pE3AkI/XU87xc653yPPLAKywDiYjCCB1owggVCoAMCAQICEzMAAAAF
# +3pcMhNh310AAAAAAAUwDQYJKoZIhvcNAQEMBQAwYzELMAkGA1UEBhMCVVMxHjAc
# BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE0MDIGA1UEAxMrTWljcm9zb2Z0
# IElEIFZlcmlmaWVkIENvZGUgU2lnbmluZyBQQ0EgMjAyMTAeFw0yMTA0MTMxNzMx
# NTNaFw0yNjA0MTMxNzMxNTNaMFoxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJRCBWZXJpZmll
# ZCBDUyBFT0MgQ0EgMDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDS
# Gpl8PzKQpMDoINta+yGYGkOgF/su/XfZFW5KpXBA7doAsuS5GedMihGYwajR8gxC
# u3BHpQcHTrF2o6QB+oHp7G5tdMe7jj524dQJ0TieCMQsFDKW4y5I6cdoR294hu3f
# U6EwRf/idCSmHj4CHR5HgfaxNGtUqYquU6hCWGJrvdCDZ0eiK1xfW5PW9bcqem30
# y3voftkdss2ykxkuRYFpsoyXoF1pZldik8Z1L6pjzSANo0K8WrR3XRQy7vEd6wip
# elMNPdDcB47FLKVJNz/vg/eiD2Pc656YQVq4XMvnm3Uy+lp0SFCYPy4UzEW/+Jk6
# PC9x1jXOFqdUsvKmXPXf83NKhTdCOE92oAaFEjCH9gPOjeMJ1UmBZBGtbzc/epYU
# WTE2IwTaI7gi5iCPtHCx4bC/sj1zE7JoeKEox1P016hKOlI3NWcooZxgy050y0oW
# qhXsKKbabzgaYhhlMGitH8+j2LCVqxNgoWkZmp1YrJick7YVXygyZaQgrWJqAsuA
# S3plpHSuT/WNRiyzJOJGpavzhCzdcv9XkpQES1QRB9D/hG2cjT24UVQgYllX2YP/
# E5SSxah0asJBJ6bofLbrXEwkAepOoy4MqDCLzGT+Z+WvvKFc8vvdI5Qua7UCq7gj
# sal7pDA1bZO1AHEze+1JOZ09bqsrnLSAQPnVGOzIrQIDAQABo4ICDjCCAgowDgYD
# VR0PAQH/BAQDAgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBRln1HOhWh/
# L4pFiKrdpzG7Hg0AXjBUBgNVHSAETTBLMEkGBFUdIAAwQTA/BggrBgEFBQcCARYz
# aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnku
# aHRtMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMBIGA1UdEwEB/wQIMAYBAf8C
# AQAwHwYDVR0jBBgwFoAU2UEpsA8PY2zvadf1zSmepEhqMOYwcAYDVR0fBGkwZzBl
# oGOgYYZfaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9z
# b2Z0JTIwSUQlMjBWZXJpZmllZCUyMENvZGUlMjBTaWduaW5nJTIwUENBJTIwMjAy
# MS5jcmwwga4GCCsGAQUFBwEBBIGhMIGeMG0GCCsGAQUFBzAChmFodHRwOi8vd3d3
# Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMElEJTIwVmVy
# aWZpZWQlMjBDb2RlJTIwU2lnbmluZyUyMFBDQSUyMDIwMjEuY3J0MC0GCCsGAQUF
# BzABhiFodHRwOi8vb25lb2NzcC5taWNyb3NvZnQuY29tL29jc3AwDQYJKoZIhvcN
# AQEMBQADggIBAEVJYNR3TxfiDkfO9V+sHVKJXymTpc8dP2M+QKa9T+68HOZlECNi
# TaAphHelehK1Elon+WGMLkOr/ZHs/VhFkcINjIrTO9JEx0TphC2AaOax2HMPScJL
# qFVVyB+Y1Cxw8nVYfFu8bkRCBhDRkQPUU3Qw49DNZ7XNsflVrR1LG2eh0FVGOfIN
# gSbuw0Ry8kdMbd5fMDJ3TQTkoMKwSXjPk7Sa9erBofY9LTbTQTo/haovCCz82ZS7
# n4BrwvD/YSfZWQhbs+SKvhSfWMbr62P96G6qAXJQ88KHqRue+TjxuKyL/M+MBWSP
# uoSuvt9JggILMnizhhQ1VUeB2gWfbFtbtl8FPdAD3N+Gr27gTFdutUPmvFdJMURS
# DaDNCr0kfGx0fIx9wIosVA5c4NLNxh4ukJ36voZygMFOjI90pxyMLqYCrr7+GIwO
# em8pQgenJgTNZR5q23Ipe0x/5Csl5D6fLmMEv7Gp0448TPd2Duqfz+imtStRsYsG
# /19abXx9Zd0C/U8K0sv9pwwu0ejJ5JUwpBioMdvdCbS5D41DRgTiRTFJBr5b9wLN
# gAjfa43Sdv0zgyvWmPhslmJ02QzgnJip7OiEgvFiSAdtuglAhKtBaublFh3KEoGm
# m0n0kmfRnrcuN2fOU5TGOWwBtCKvZabP84kTvTcFseZBlHDM/HW+7tLnMIIHnjCC
# 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+Fq8UiuZzGCGpAwghqMAgEBMHEwWjELMAkG
# A1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjErMCkGA1UE
# AxMiTWljcm9zb2Z0IElEIFZlcmlmaWVkIENTIEVPQyBDQSAwMgITMwAD19kId3D+
# Q0t64wAAAAPX2TANBglghkgBZQMEAgEFAKBeMBAGCisGAQQBgjcCAQwxAjAAMBkG
# CSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMC8GCSqGSIb3DQEJBDEiBCDwbVdGl5CL
# cf31pYz5OhXlixdM3pz1nb39iDbGI6xJkTANBgkqhkiG9w0BAQEFAASCAYAG6jCd
# trzxpSJYOdkiIf36Xd6Ig0cF3bRqpUxNJCtwBfuWnztOJ0hBcuFk13xc96HOhYp8
# UQLxKp2DtDVnACeAq1LKKZuX15krYyZzFpzNXs5rDTZaqeNe+CBVTL0UgW1QsLXj
# nuDznqSKSMj8TbmMpPFXeMZLkFA1njV55sAq5K+sXAmZH/9Q2f0PhD5xrESvU/U5
# /GbU/jBC7srWS8dqctDR1SbDVS3yMy7K4bLJkcKhWPY8qu6uxdo2XB9JlQ33tRW5
# uKSkP4D2UwFzDq06rTdaNoSJFpv4BTzx7i8lLYSZz2H0Hos6VJsImH2xPljjANR5
# TIB6ZAPzInDOhGB5yjUdc5UtdDYxFZQrnHoOyC7s1I+kMiAgpIT1tqpPN4z4iIqf
# 8jM15TxbN9z4Nqf8qMIgHqJXnrvruiYfmMUDD15dChenu/0ZnFTY4+b3MYcwT8xc
# SMdvovhS1PLY/+Uxt+rYH9kOA8ehTxLYVL243c0cJUEg+gTSqfg+Dqx0+FyhghgQ
# MIIYDAYKKwYBBAGCNwMDATGCF/wwghf4BgkqhkiG9w0BBwKgghfpMIIX5QIBAzEP
# MA0GCWCGSAFlAwQCAQUAMIIBYQYLKoZIhvcNAQkQAQSgggFQBIIBTDCCAUgCAQEG
# CisGAQQBhFkKAwEwMTANBglghkgBZQMEAgEFAAQg8X6Gs6iRhrU55ba36rFjXzYi
# 2ZTEQ2tewqTHzvG0//cCBmhidsd29hgSMjAyNTA4MDQwODIyNTUuODdaMASAAgH0
# oIHhpIHeMIHbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G
# A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSUw
# IwYDVQQLExxNaWNyb3NvZnQgQW1lcmljYSBPcGVyYXRpb25zMScwJQYDVQQLEx5u
# U2hpZWxkIFRTUyBFU046N0EwMC0wNUUwLUQ5NDcxNTAzBgNVBAMTLE1pY3Jvc29m
# dCBQdWJsaWMgUlNBIFRpbWUgU3RhbXBpbmcgQXV0aG9yaXR5oIIPITCCB4IwggVq
# oAMCAQICEzMAAAAF5c8P/2YuyYcAAAAAAAUwDQYJKoZIhvcNAQEMBQAwdzELMAkG
# A1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjFIMEYGA1UE
# AxM/TWljcm9zb2Z0IElkZW50aXR5IFZlcmlmaWNhdGlvbiBSb290IENlcnRpZmlj
# YXRlIEF1dGhvcml0eSAyMDIwMB4XDTIwMTExOTIwMzIzMVoXDTM1MTExOTIwNDIz
# MVowYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv
# bjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENB
# IDIwMjAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCefOdSY/3gxZ8F
# fWO1BiKjHB7X55cz0RMFvWVGR3eRwV1wb3+yq0OXDEqhUhxqoNv6iYWKjkMcLhEF
# xvJAeNcLAyT+XdM5i2CgGPGcb95WJLiw7HzLiBKrxmDj1EQB/mG5eEiRBEp7dDGz
# xKCnTYocDOcRr9KxqHydajmEkzXHOeRGwU+7qt8Md5l4bVZrXAhK+WSk5CihNQsW
# bzT1nRliVDwunuLkX1hyIWXIArCfrKM3+RHh+Sq5RZ8aYyik2r8HxT+l2hmRllBv
# E2Wok6IEaAJanHr24qoqFM9WLeBUSudz+qL51HwDYyIDPSQ3SeHtKog0ZubDk4hE
# LQSxnfVYXdTGncaBnB60QrEuazvcob9n4yR65pUNBCF5qeA4QwYnilBkfnmeAjRN
# 3LVuLr0g0FXkqfYdUmj1fFFhH8k8YBozrEaXnsSL3kdTD01X+4LfIWOuFzTzuosl
# BrBILfHNj8RfOxPgjuwNvE6YzauXi4orp4Sm6tF245DaFOSYbWFK5ZgG6cUY2/bU
# q3g3bQAqZt65KcaewEJ3ZyNEobv35Nf6xN6FrA6jF9447+NHvCjeWLCQZ3M8lgeC
# cnnhTFtyQX3XgCoc6IRXvFOcPVrr3D9RPHCMS6Ckg8wggTrtIVnY8yjbvGOUsAdZ
# beXUIQAWMs0d3cRDv09SvwVRd61evQIDAQABo4ICGzCCAhcwDgYDVR0PAQH/BAQD
# AgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBRraSg6NS9IY0DPe9ivSek+
# 2T3bITBUBgNVHSAETTBLMEkGBFUdIAAwQTA/BggrBgEFBQcCARYzaHR0cDovL3d3
# dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnkuaHRtMBMGA1Ud
# JQQMMAoGCCsGAQUFBwMIMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMA8GA1Ud
# EwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUyH7SaoUqG8oZmAQHJ89QEE9oqKIwgYQG
# A1UdHwR9MHsweaB3oHWGc2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMv
# Y3JsL01pY3Jvc29mdCUyMElkZW50aXR5JTIwVmVyaWZpY2F0aW9uJTIwUm9vdCUy
# MENlcnRpZmljYXRlJTIwQXV0aG9yaXR5JTIwMjAyMC5jcmwwgZQGCCsGAQUFBwEB
# BIGHMIGEMIGBBggrBgEFBQcwAoZ1aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3Br
# aW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBJZGVudGl0eSUyMFZlcmlmaWNhdGlvbiUy
# MFJvb3QlMjBDZXJ0aWZpY2F0ZSUyMEF1dGhvcml0eSUyMDIwMjAuY3J0MA0GCSqG
# SIb3DQEBDAUAA4ICAQBfiHbHfm21WhV150x4aPpO4dhEmSUVpbixNDmv6TvuIHv1
# xIs174bNGO/ilWMm+Jx5boAXrJxagRhHQtiFprSjMktTliL4sKZyt2i+SXncM23g
# RezzsoOiBhv14YSd1Klnlkzvgs29XNjT+c8hIfPRe9rvVCMPiH7zPZcw5nNjthDQ
# +zD563I1nUJ6y59TbXWsuyUsqw7wXZoGzZwijWT5oc6GvD3HDokJY401uhnj3ubB
# hbkR83RbfMvmzdp3he2bvIUztSOuFzRqrLfEvsPkVHYnvH1wtYyrt5vShiKheGpX
# a2AWpsod4OJyT4/y0dggWi8g/tgbhmQlZqDUf3UqUQsZaLdIu/XSjgoZqDjamzCP
# JtOLi2hBwL+KsCh0Nbwc21f5xvPSwym0Ukr4o5sCcMUcSy6TEP7uMV8RX0eH/4JL
# EpGyae6Ki8JYg5v4fsNGif1OXHJ2IWG+7zyjTDfkmQ1snFOTgyEX8qBpefQbF0fx
# 6URrYiarjmBprwP6ZObwtZXJ23jK3Fg/9uqM3j0P01nzVygTppBabzxPAh/hHhhl
# s6kwo3QLJ6No803jUsZcd4JQxiYHHc+Q/wAMcPUnYKv/q2O444LO1+n6j01z5mgg
# CSlRwD9faBIySAcA9S8h22hIAcRQqIGEjolCK9F6nK9ZyX4lhthsGHumaABdWzCC
# B5cwggV/oAMCAQICEzMAAABH45ULN6Fg3ccAAAAAAEcwDQYJKoZIhvcNAQEMBQAw
# YTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEy
# MDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENBIDIw
# MjAwHhcNMjQxMTI2MTg0ODUwWhcNMjUxMTE5MTg0ODUwWjCB2zELMAkGA1UEBhMC
# VVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNV
# BAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UECxMcTWljcm9zb2Z0IEFt
# ZXJpY2EgT3BlcmF0aW9uczEnMCUGA1UECxMeblNoaWVsZCBUU1MgRVNOOjdBMDAt
# MDVFMC1EOTQ3MTUwMwYDVQQDEyxNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lIFN0
# YW1waW5nIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
# AOhwum733P/414hmZHfYYmDZVP+N33qlguy82eB4fipfArWpWYVpdeSRVvFvV85A
# ky6RiRtrdYRzr1b9ngGzMC7GC5OENWVj2yThliQYyDGirVnmKdQ++PhCHzFW+WGI
# BLo5/+4vAOxuwqWDZ8ama/O2I9I4v0/XmTTQjhuyXW+WZFK63a03AlDmxemhPsYj
# /ZPYDQadZsUQIpELIZb2uyfL2jQs0hSXg1gB3hrAZKzo4jMo+kgrUl8r3TBce9pf
# AYlw30/xA9Ekgcq4WhUbMhQb8LSNALitDrbJMa9zaxngDFNDB+V9UEFqIeryCf9g
# MelmKV4aQHYhBrNkSIRzk6vld6v2ZQNT7YUR7rrDx7ZaQtdqerFoPn5lyj4T5B3B
# xNgajvyMXE8O82tpOvlACAhNzh1j88ELdxgXNyAPJTHbE5UIG+BpuonGPuteuPgG
# F3ZL9lNg5UeGLxwNYFp58zwmCI7wYIghG+U1aeDwUoW3T1l83GaxJ0ImVbDes0DC
# wFjXGnymaa/2vYz2s0hGRn6yHTF3ca4BJazZs6uoGLRpPOBj1vcLFj7+b5FT5ROK
# bkmSakkz8Ag/rz9L7U3AWpcrnLFMkEgieGgSB0QeL5rYlHZKVXcCSklrT8Hqxlqg
# Rr7OCyEh8VrrpcGaeezJ1Xi4btbUg2ho1XDEEoN2ao1HAgMBAAGjggHLMIIBxzAd
# BgNVHQ4EFgQU5FR2WCA6Pu9PubZe8WFIRbyG3WgwHwYDVR0jBBgwFoAUa2koOjUv
# SGNAz3vYr0npPtk92yEwbAYDVR0fBGUwYzBhoF+gXYZbaHR0cDovL3d3dy5taWNy
# b3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIwUHVibGljJTIwUlNBJTIw
# VGltZXN0YW1waW5nJTIwQ0ElMjAyMDIwLmNybDB5BggrBgEFBQcBAQRtMGswaQYI
# KwYBBQUHMAKGXWh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMv
# TWljcm9zb2Z0JTIwUHVibGljJTIwUlNBJTIwVGltZXN0YW1waW5nJTIwQ0ElMjAy
# MDIwLmNydDAMBgNVHRMBAf8EAjAAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMA4G
# A1UdDwEB/wQEAwIHgDBmBgNVHSAEXzBdMFEGDCsGAQQBgjdMg30BATBBMD8GCCsG
# AQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVw
# b3NpdG9yeS5odG0wCAYGZ4EMAQQCMA0GCSqGSIb3DQEBDAUAA4ICAQANIlRD1dqY
# OHSCQLVe+uFXPoAzAZUq4okD62SUnMFrhRVg/dj2vVEtTTxFgkiM8SSnCLANaK0r
# nyCxnHA2Hg1zh8WJCtlQln0Eid+eh2/xY47zfNjxhB0kxymAHN5hVeI0J526aoUp
# ePSYwy5ZoHKe/vDCfsWccnDMuu7iO3hUt55/4HJydjA+gxrvksX/3Fmj/RMnfvWq
# 0Fh1uxx4qY2FBRMPa8i+8+QdM8f80DYiQuxDUCbnWfOHnZYQPNEKhd6V3r78oKWd
# +wQHX+99Hqlg/HBlO9Nnu6HvLwPqDiEOkRyMix6zvnhbZpGnFM+u7qf7PYTOS8cX
# vQH+DmgCh2ZVNQFv6nGm7vtQebROtpWh2N9ckk2z6HVGOcK70yKS7YqE+akGuxKd
# 7fXLeBey2bm9y2nW0WjH1qZNa+EhXzyXUQgLfJf4E31wYq0vrlESX/LzKprY8hba
# LXwkxEivhPuWId9fQDqx0+yXsa50vIRUcBaxbw0VXO3+93JGHMxSmzGE8vWoZCAP
# jlD7duBOV6XkxaVaBgb5v4stRdHm6LJtsizCc5FNT+MPJw0DHy7hzn7Xix6fn9+a
# pytBrfXqXtapxDqs5yjEMXKbuTZFW4SFk1Dhc1cIojuRvw8ytG0xuhtXSavJ3RSV
# tBRs+wm432dQTYAOaCc7dtAbIRG+ml50ITGCB0Mwggc/AgEBMHgwYTELMAkGA1UE
# BhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMp
# TWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENBIDIwMjACEzMAAABH
# 45ULN6Fg3ccAAAAAAEcwDQYJYIZIAWUDBAIBBQCgggScMBEGCyqGSIb3DQEJEAIP
# MQIFADAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8X
# DTI1MDgwNDA4MjI1NVowLwYJKoZIhvcNAQkEMSIEIJA9B9tPlw7QqluMIkc1tUyP
# GmqJWy9cpch/mJA6d3gtMIG5BgsqhkiG9w0BCRACLzGBqTCBpjCBozCBoAQgk2bz
# lnKFAAYZ71A+F3f7G+YwoK9+MeF/y2XqZEgKzKcwfDBlpGMwYTELMAkGA1UEBhMC
# VVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWlj
# cm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENBIDIwMjACEzMAAABH45UL
# N6Fg3ccAAAAAAEcwggNeBgsqhkiG9w0BCRACEjGCA00wggNJoYIDRTCCA0EwggIp
# AgEBMIIBCaGB4aSB3jCB2zELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0
# b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh
# dGlvbjElMCMGA1UECxMcTWljcm9zb2Z0IEFtZXJpY2EgT3BlcmF0aW9uczEnMCUG
# A1UECxMeblNoaWVsZCBUU1MgRVNOOjdBMDAtMDVFMC1EOTQ3MTUwMwYDVQQDEyxN
# aWNyb3NvZnQgUHVibGljIFJTQSBUaW1lIFN0YW1waW5nIEF1dGhvcml0eaIjCgEB
# MAcGBSsOAwIaAxUAIAXT2b4gvIw3J1lPs/eU4s1UXN2gZzBlpGMwYTELMAkGA1UE
# BhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMp
# TWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENBIDIwMjAwDQYJKoZI
# hvcNAQELBQACBQDsOnBzMCIYDzIwMjUwODAzMjMzNDExWhgPMjAyNTA4MDQyMzM0
# MTFaMHQwOgYKKwYBBAGEWQoEATEsMCowCgIFAOw6cHMCAQAwBwIBAAICO58wBwIB
# AAICEyYwCgIFAOw7wfMCAQAwNgYKKwYBBAGEWQoEAjEoMCYwDAYKKwYBBAGEWQoD
# AqAKMAgCAQACAwehIKEKMAgCAQACAwGGoDANBgkqhkiG9w0BAQsFAAOCAQEAFnHH
# FQ7n9EeazoHb5A7Ga0Q1zk5x4CE7+Wnxlfo0th9GIjrgpfLbbsvkbvbHfhIX8/6D
# jcqqYWkB4Wd9QzUMIxJepGDEGw8m68TvMG/vgxl9WnKEYIYJ0gsKRPigt+fkmjL8
# 6LTNzIJw9Dbix+7BufkJVQ+RaXJIwtR2Zoq/JhPVOuV6Y6QvOpnuztCVP0CVOu0R
# ZsyBC0TKNrCv0kOZU1t/wpYpRlF2G/qP8mV8hnyE9P+OYTQqrh1HwmG4P1JB4l2A
# ilgipCHgAdk16e8RaFKCoUPiwDDv20SjWHLhZ96R/sABFc5S1+BuYVT+02SaftpY
# qYeCNn52x/NT8BvIjzANBgkqhkiG9w0BAQEFAASCAgBINqKIz9/PFxgLSfiAwLI0
# mnbVB31K+6pxGdMLZgHD3o5Oqg1hx6f7F1SC3I/JiL0NxmBsRc8nFy6yATns3+4N
# plwRrkpvRUhCdEbGZIJqUU3HWNPpSNMbea4ucjQAzXxuexS41fowdAh/tIYuIc6O
# 1MMZqznF5hIQ6A8kR5j1YYwguMRDje//0gTAiUJuFOJE7jk37LFgPD9ca8gtOXaA
# 7fOnkOfR8Yn3SouZbDgXpqCQY6T30beX2iT/BAB02o8SnBnVTn8sw836yfZK/iB4
# XWaRSd9ajT+EAzwz7qoqE1isRI30PVOJ+9JOve9Nnwvqmkf0Za7txifta7aQWrTn
# DwT+PhlehliZ414TNWbmxNPleRl/SCGFE9trIQoVtP+POQBJ/+Qse9gXKzBG3rh6
# 1BvJwntfPukpV69G0/iIEcXUFnIMciW1mCg51Y9Mu//QdT8a2UCADYBuwSpOk6h4
# bmWjpJcsNrzxtiW9xjeBmhT9mqgsXBuicMajAPIvdBvVJSnx2gxpeUefVxGclPEW
# OqJInOGWM+EmhsBdxaW/Wel0eXc9Cb4WFF6IUuSFNM+vRYGtN1HkZenlSmkcOZz1
# IoGBQAQNDYiVvgTIg+1VmA1/rzPyRErNwzqNxFQqKCdlM4PTmxqhakvEhp3aWLUT
# AY2qFwy+PfE+X9sBYJHnsA==
# SIG # End signature block