Api/ClusterCompatibilityApi.ps1
# # NamespaceManagement Paths # The vcenter namespace_management package provides services for managing Namespaces. # Contact: powercli@vmware.com # Generated by OpenAPI Generator: https://openapi-generator.tech # <# .SYNOPSIS Returns Namespaces compatibility information for all vSphere clusters that match the #FilterSpecV2 and are associated with the vSphere Zones in the vCenter Server that match the #ZoneFilterSpec. The result contains only visible (subject to permission checks) clusters. .DESCRIPTION No description available. .PARAMETER Zones A list of vSphere Zone identifiers which will be used to filter vSphere Zones that correspond to this specific set of identifiers. If unset or empty, results will not be filtered for specific vSphere Zone identifiers. .PARAMETER Compatible Set this flag to true to only return vSphere clusters that are currently compatible with the Namespaces feature. If set to false, both compatible and incompatible vSphere clusters will be returned. If unset, both compatible and incompatible vSphere clusters will be listed. .PARAMETER NetworkProvider The network type that will be considered. A Supervisor can only be enabled with this network type if all hosts are compatible for this specific network type. If unset, this will default to NSXT. .PARAMETER WithHttpInfo A switch when turned on will return a hash table of Response, StatusCode and Headers instead of just the Response .OUTPUTS NamespaceManagementClusterCompatibilityZoneCompatibilityInfo .LINK Online Version: https://developer.vmware.com/docs/vsphere-automation/latest/vcenter/api/vcenter/namespace-management/cluster-compatibility/v2/get/ #> function Invoke-GetNamespaceManagementClusterCompatibilityV2 { [CmdletBinding( SupportsShouldProcess = $true, ConfirmImpact = 'None', HelpURI = "https://developer.vmware.com/docs/vsphere-automation/latest/vcenter/api/vcenter/namespace-management/cluster-compatibility/v2/get/" )] Param ( [Parameter(Mandatory = $false, ValueFromPipeline = $true)] [String[]] ${Zones}, [Parameter(Mandatory = $false)] [System.Nullable[Boolean]] ${Compatible}, [Parameter(Mandatory = $false)] [ValidateSet("NSXT", "VSPHERE")] ${NetworkProvider}, [Parameter()] [vSphereConnectionToServerConfigurationArgumentTransformationAttribute()] [PSTypeName('vSphereServerConfiguration')] $Server, [Switch] $WithHttpInfo ) Process { 'Calling method: Invoke-GetNamespaceManagementClusterCompatibilityV2' | Write-Debug $ServerConfigurations = Get-vSphereServerConfiguration if ($PSBoundParameters.ContainsKey('Server')) { $ServerConfigurations = $Server } if ($null -eq $ServerConfigurations) { throw "You are not currently connected to any servers. Please connect first using a Connect-VIServer cmdlet or add vSphere Server Configuration with New-vSphereServerConfiguration." } $LocalVarAccepts = @() $LocalVarContentTypes = @() $LocalVarQueryParameters = @{} $LocalVarHeaderParameters = @{} $LocalVarFormParameters = @{} $LocalVarPathParameters = @{} $LocalVarCookieParameters = @{} $LocalVarBodyParameter = $null $ServerFromInputParameters = $null $InputParametersFromServer = $PSBoundParameters.Values | Where-Object -FilterScript { $_.PSObject.TypeNames -Contains 'ServerObject' } foreach ($InputParameterFromServer in $InputParametersFromServer) { $InputParameterServer = $InputParameterFromServer.GetServer() if ( !$PSBoundParameters.ContainsKey('Server') -and $null -ne $ServerFromInputParameters -and !$ServerFromInputParameters.Equals($InputParameterServer) ) { $ErrorMessage = "{0} and {1} come from different servers. {0} from {2} and {1} from {3}. Please specify the -Server parameter of the cmdlet." throw ($ErrorMessage -f $ServerFromInputParameters.InputParameter, $InputParameterFromServer, $ServerFromInputParameters.Server, $InputParameterServer) } if ($null -eq $ServerFromInputParameters) { $ServerFromInputParameters = [PSCustomObject] @{ InputParameter = $InputParameterFromServer Server = $InputParameterServer } } } if ( $null -ne $ServerFromInputParameters -and $PSBoundParameters.ContainsKey('Server') -and !$ServerFromInputParameters.Server.Equals($Server) ) { $ErrorMessage = "{0} comes from server {1} but server {2} is explicitly specified." throw ($ErrorMessage -f $ServerFromInputParameters.InputParameter, $ServerFromInputParameters.Server, $Server) } # HTTP header 'Accept' (if needed) $LocalVarAccepts = @('application/json') $serversToProcess = $ServerConfigurations if (!$PSBoundParameters.ContainsKey('Server') -and $null -ne $ServerFromInputParameters) { $serversToProcess = $ServerFromInputParameters.Server } foreach ($serverConfiguration in $serversToProcess) { $shouldProcessActionMessage = "Performing the operation 'GetNamespaceManagementClusterCompatibilityV2' on target server '$($serverConfiguration.ToString())'." $shouldProcessActionCaption = 'Are you sure you want to perform this action?' if ($PSCmdlet.ShouldProcess( $shouldProcessActionMessage, $shouldProcessActionMessage, $shouldProcessActionCaption ) ) { $LocalVarUri = '/api/vcenter/namespace-management/cluster-compatibility/v2' $LocalVarMethod = 'GET' $useDeprecatedApis = ($null -ne $serverConfiguration.UseDeprecatedApis -and $serverConfiguration.UseDeprecatedApis) $translationSchema = $null $transformedOpertaionInput = New-InputTransformationStructure if ($useDeprecatedApis) { # Use Deprecated APIs $translationSchema = Get-OperationTranslationSchema ` -operationPath $LocalVarUri.Replace('__', '?') ` -operationVerb $LocalVarMethod if ($null -ne $translationSchema) { $LocalVarUri = $translationSchema.OldPath $LocalVarMethod = $translationSchema.OldVerb } } if ($useDeprecatedApis -and ($null -ne $translationSchema)) { $addTransformationInput = Format-PathParams -OperationTranslateSchema $translationSchema -PathParams $LocalVarPathParameters Join-InputTransformationStructure -Base ([ref]$transformedOpertaionInput) -Addition $addTransformationInput } if ($useDeprecatedApis -and ($null -ne $translationSchema)) { $addTransformationInput = Format-Headers -OperationTranslateSchema $translationSchema -Headers $LocalVarHeaderParameters Join-InputTransformationStructure -Base ([ref]$transformedOpertaionInput) -Addition $addTransformationInput } if ($null -ne $Zones) { $LocalVarQueryParameters['zones'] = $Zones } if ($null -ne $Compatible) { $LocalVarQueryParameters['compatible'] = $Compatible } if ($null -ne $NetworkProvider) { $LocalVarQueryParameters['network_provider'] = $NetworkProvider } if ( $useDeprecatedApis -and ($null -ne $translationSchema) -and ($LocalVarQueryParameters.Count -gt 0) ) { $inputQuerySctructure = [PSCustomObject]$LocalVarQueryParameters $translatedBody = Convert-InputStructure -OperationTranslateSchema $translationSchema -OperationInputObject $inputQuerySctructure -InputType Body $translatedQuery = Convert-InputStructure -OperationTranslateSchema $translationSchema -OperationInputObject $inputQuerySctructure -InputType Query if ($null -ne $translatedBody) { $LocalVarBodyParameter = $translatedBody | ConvertTo-Json -Depth 100 if ($LocalVarContentTypes.Count -eq 0) { $LocalVarContentTypes = @('application/json') } } $LocalVarQueryParameters = @{} $translatedQuery.PSObject.Properties | Foreach-Object { $LocalVarQueryParameters[$_.Name] = $_.Value } } if ($useDeprecatedApis -and ($null -ne $translationSchema)) { if ($null -ne $transformedOpertaionInput.Path) { foreach ($keyValue in $transformedOpertaionInput.Path.GetEnumerator()) { $LocalVarUri = $LocalVarUri.replace("{$($keyValue.Key)}", $keyValue.Value) } } if ($null -ne $transformedOpertaionInput.Query) { foreach ($keyValue in $transformedOpertaionInput.Query.GetEnumerator()) { $LocalVarQueryParameters[$($keyValue.Key)] = $keyValue.Value } } if ($null -ne $transformedOpertaionInput.Header) { foreach ($keyValue in $transformedOpertaionInput.Header.GetEnumerator()) { $LocalVarHeaderParameters[$($keyValue.Key)] = $keyValue.Value } } if ($null -ne $transformedOpertaionInput.Body) { $LocalVarBodyParameter = $transformedOpertaionInput.Body | ConvertTo-Json -Depth 100 } } $invokeParams = @{ 'Method' = $LocalVarMethod 'Uri' = $LocalVarUri 'Accepts' = $LocalVarAccepts 'ContentTypes' = $LocalVarContentTypes 'Body' = $LocalVarBodyParameter 'HeaderParameters' = $LocalVarHeaderParameters 'QueryParameters' = $LocalVarQueryParameters 'FormParameters' = $LocalVarFormParameters 'CookieParameters' = $LocalVarCookieParameters 'ReturnType' = "NamespaceManagementClusterCompatibilityZoneCompatibilityInfo" 'IsBodyNullable' = $false 'Server' = $serverConfiguration } if ($PSBoundParameters.ContainsKey('Debug')) { $invokeParams['Debug'] = $Debug } if ($PSBoundParameters.ContainsKey('Verbose')) { $invokeParams['Verbose'] = $Verbose } if ($PSBoundParameters.ContainsKey('WarningAction')) { $invokeParams['WarningAction'] = $PSBoundParameters.WarningAction } if ($PSBoundParameters.ContainsKey('ErrorAction')) { $invokeParams['ErrorAction'] = $PSBoundParameters.ErrorAction } $invokeParams['InvocationInfo'] = @{ 'ModuleName' = $MyInvocation.MyCommand.ModuleName 'CmdletName' = $MyInvocation.MyCommand.Name } $invokeResult = Invoke-vSphereApiClient @invokeParams $invokeResult | Foreach-Object { $SingleServerResult = $_ if ($SingleServerResult -is [hashtable]) { if ($useDeprecatedApis -and ($null -ne $translationSchema) -and ($null -ne $SingleServerResult["Response"])) { $ServerName = $SingleServerResult["Response"].PSObject.TypeNames | Where-Object -FilterScript { $_.StartsWith('Server:') } $SingleServerResult["Response"] = Convert-OutputBody ` -OperationTranslateSchema $translationSchema ` -OperationOutputObject $SingleServerResult["Response"] if (![string]::IsNullOrEmpty($ServerName)) { $SingleServerResult["Response"] | ForEach-Object -Process { $_.PSObject.TypeNames.Add($ServerName) $_ = $_ | Add-Member -MemberType ScriptMethod -Name GetServer -Value { $productServerString = ($this.PSObject.TypeNames | Where-Object -FilterScript { $_.StartsWith('Server:') }).Substring(7) $productSeparatorIndex = $productServerString.IndexOf(':') $product = $productServerString.Substring(0, $productSeparatorIndex) $server = $productServerString.Substring($productSeparatorIndex + 1, $productServerString.Length - $productSeparatorIndex - 1) Get-ServerConfiguration -Product $product | Where-Object -FilterScript { $_.ToString() -eq $server } } -Force -PassThru $_.PSObject.TypeNames.Add("ServerObject") } } } $SingleServerResult["Response"].PSObject.TypeNames.Insert(0, "NamespaceManagementClusterCompatibilityZoneCompatibilityInfo") if ($WithHttpInfo.IsPresent) { # result object $SingleServerResult } else { # result object $SingleServerResult["Response"] } } else { Write-Warning "An item from the Invoke-vSphereApiClient was expected to be a Hashtable but it is '$($SingleServerResult.GetType())'" } } } } } } <# .SYNOPSIS Returns Namespaces compatibility information for all vSphere clusters in the vCenter Server matching the ClusterCompatibility.FilterSpec. The result contains only visible (subject to permission checks) clusters. .DESCRIPTION No description available. .PARAMETER Compatible Set this flag to true to only list vSphere clusters that are currently compatible with the Namespaces feature. If set to false, both compatible and incompatible vSphere clusters will be listed. If unset, both compatible and incompatible vSphere clusters will be listed. .PARAMETER NetworkProvider The network provider whose networks will be considered. If unset, this will default to NSXT_CONTAINER_PLUGIN. .PARAMETER WithHttpInfo A switch when turned on will return a hash table of Response, StatusCode and Headers instead of just the Response .OUTPUTS NamespaceManagementClusterCompatibilitySummary[] .LINK Online Version: https://developer.vmware.com/docs/vsphere-automation/latest/vcenter/api/vcenter/namespace-management/cluster-compatibility/get/ #> function Invoke-ListNamespaceManagementClusterCompatibility { [CmdletBinding( SupportsShouldProcess = $true, ConfirmImpact = 'None', HelpURI = "https://developer.vmware.com/docs/vsphere-automation/latest/vcenter/api/vcenter/namespace-management/cluster-compatibility/get/" )] Param ( [Parameter(Mandatory = $false, ValueFromPipeline = $true)] [System.Nullable[Boolean]] ${Compatible}, [Parameter(Mandatory = $false)] [ValidateSet("NSXT_CONTAINER_PLUGIN", "VSPHERE_NETWORK")] ${NetworkProvider}, [Parameter()] [vSphereConnectionToServerConfigurationArgumentTransformationAttribute()] [PSTypeName('vSphereServerConfiguration')] $Server, [Switch] $WithHttpInfo ) Process { 'Calling method: Invoke-ListNamespaceManagementClusterCompatibility' | Write-Debug $ServerConfigurations = Get-vSphereServerConfiguration if ($PSBoundParameters.ContainsKey('Server')) { $ServerConfigurations = $Server } if ($null -eq $ServerConfigurations) { throw "You are not currently connected to any servers. Please connect first using a Connect-VIServer cmdlet or add vSphere Server Configuration with New-vSphereServerConfiguration." } $LocalVarAccepts = @() $LocalVarContentTypes = @() $LocalVarQueryParameters = @{} $LocalVarHeaderParameters = @{} $LocalVarFormParameters = @{} $LocalVarPathParameters = @{} $LocalVarCookieParameters = @{} $LocalVarBodyParameter = $null $ServerFromInputParameters = $null $InputParametersFromServer = $PSBoundParameters.Values | Where-Object -FilterScript { $_.PSObject.TypeNames -Contains 'ServerObject' } foreach ($InputParameterFromServer in $InputParametersFromServer) { $InputParameterServer = $InputParameterFromServer.GetServer() if ( !$PSBoundParameters.ContainsKey('Server') -and $null -ne $ServerFromInputParameters -and !$ServerFromInputParameters.Equals($InputParameterServer) ) { $ErrorMessage = "{0} and {1} come from different servers. {0} from {2} and {1} from {3}. Please specify the -Server parameter of the cmdlet." throw ($ErrorMessage -f $ServerFromInputParameters.InputParameter, $InputParameterFromServer, $ServerFromInputParameters.Server, $InputParameterServer) } if ($null -eq $ServerFromInputParameters) { $ServerFromInputParameters = [PSCustomObject] @{ InputParameter = $InputParameterFromServer Server = $InputParameterServer } } } if ( $null -ne $ServerFromInputParameters -and $PSBoundParameters.ContainsKey('Server') -and !$ServerFromInputParameters.Server.Equals($Server) ) { $ErrorMessage = "{0} comes from server {1} but server {2} is explicitly specified." throw ($ErrorMessage -f $ServerFromInputParameters.InputParameter, $ServerFromInputParameters.Server, $Server) } # HTTP header 'Accept' (if needed) $LocalVarAccepts = @('application/json') $serversToProcess = $ServerConfigurations if (!$PSBoundParameters.ContainsKey('Server') -and $null -ne $ServerFromInputParameters) { $serversToProcess = $ServerFromInputParameters.Server } foreach ($serverConfiguration in $serversToProcess) { $shouldProcessActionMessage = "Performing the operation 'ListNamespaceManagementClusterCompatibility' on target server '$($serverConfiguration.ToString())'." $shouldProcessActionCaption = 'Are you sure you want to perform this action?' if ($PSCmdlet.ShouldProcess( $shouldProcessActionMessage, $shouldProcessActionMessage, $shouldProcessActionCaption ) ) { $LocalVarUri = '/api/vcenter/namespace-management/cluster-compatibility' $LocalVarMethod = 'GET' $useDeprecatedApis = ($null -ne $serverConfiguration.UseDeprecatedApis -and $serverConfiguration.UseDeprecatedApis) $translationSchema = $null $transformedOpertaionInput = New-InputTransformationStructure if ($useDeprecatedApis) { # Use Deprecated APIs $translationSchema = Get-OperationTranslationSchema ` -operationPath $LocalVarUri.Replace('__', '?') ` -operationVerb $LocalVarMethod if ($null -ne $translationSchema) { $LocalVarUri = $translationSchema.OldPath $LocalVarMethod = $translationSchema.OldVerb } } if ($useDeprecatedApis -and ($null -ne $translationSchema)) { $addTransformationInput = Format-PathParams -OperationTranslateSchema $translationSchema -PathParams $LocalVarPathParameters Join-InputTransformationStructure -Base ([ref]$transformedOpertaionInput) -Addition $addTransformationInput } if ($useDeprecatedApis -and ($null -ne $translationSchema)) { $addTransformationInput = Format-Headers -OperationTranslateSchema $translationSchema -Headers $LocalVarHeaderParameters Join-InputTransformationStructure -Base ([ref]$transformedOpertaionInput) -Addition $addTransformationInput } if ($null -ne $Compatible) { $LocalVarQueryParameters['compatible'] = $Compatible } if ($null -ne $NetworkProvider) { $LocalVarQueryParameters['network_provider'] = $NetworkProvider } if ( $useDeprecatedApis -and ($null -ne $translationSchema) -and ($LocalVarQueryParameters.Count -gt 0) ) { $inputQuerySctructure = [PSCustomObject]$LocalVarQueryParameters $translatedBody = Convert-InputStructure -OperationTranslateSchema $translationSchema -OperationInputObject $inputQuerySctructure -InputType Body $translatedQuery = Convert-InputStructure -OperationTranslateSchema $translationSchema -OperationInputObject $inputQuerySctructure -InputType Query if ($null -ne $translatedBody) { $LocalVarBodyParameter = $translatedBody | ConvertTo-Json -Depth 100 if ($LocalVarContentTypes.Count -eq 0) { $LocalVarContentTypes = @('application/json') } } $LocalVarQueryParameters = @{} $translatedQuery.PSObject.Properties | Foreach-Object { $LocalVarQueryParameters[$_.Name] = $_.Value } } if ($useDeprecatedApis -and ($null -ne $translationSchema)) { if ($null -ne $transformedOpertaionInput.Path) { foreach ($keyValue in $transformedOpertaionInput.Path.GetEnumerator()) { $LocalVarUri = $LocalVarUri.replace("{$($keyValue.Key)}", $keyValue.Value) } } if ($null -ne $transformedOpertaionInput.Query) { foreach ($keyValue in $transformedOpertaionInput.Query.GetEnumerator()) { $LocalVarQueryParameters[$($keyValue.Key)] = $keyValue.Value } } if ($null -ne $transformedOpertaionInput.Header) { foreach ($keyValue in $transformedOpertaionInput.Header.GetEnumerator()) { $LocalVarHeaderParameters[$($keyValue.Key)] = $keyValue.Value } } if ($null -ne $transformedOpertaionInput.Body) { $LocalVarBodyParameter = $transformedOpertaionInput.Body | ConvertTo-Json -Depth 100 } } $invokeParams = @{ 'Method' = $LocalVarMethod 'Uri' = $LocalVarUri 'Accepts' = $LocalVarAccepts 'ContentTypes' = $LocalVarContentTypes 'Body' = $LocalVarBodyParameter 'HeaderParameters' = $LocalVarHeaderParameters 'QueryParameters' = $LocalVarQueryParameters 'FormParameters' = $LocalVarFormParameters 'CookieParameters' = $LocalVarCookieParameters 'ReturnType' = "NamespaceManagementClusterCompatibilitySummary[]" 'IsBodyNullable' = $false 'Server' = $serverConfiguration } if ($PSBoundParameters.ContainsKey('Debug')) { $invokeParams['Debug'] = $Debug } if ($PSBoundParameters.ContainsKey('Verbose')) { $invokeParams['Verbose'] = $Verbose } if ($PSBoundParameters.ContainsKey('WarningAction')) { $invokeParams['WarningAction'] = $PSBoundParameters.WarningAction } if ($PSBoundParameters.ContainsKey('ErrorAction')) { $invokeParams['ErrorAction'] = $PSBoundParameters.ErrorAction } $invokeParams['InvocationInfo'] = @{ 'ModuleName' = $MyInvocation.MyCommand.ModuleName 'CmdletName' = $MyInvocation.MyCommand.Name } $invokeResult = Invoke-vSphereApiClient @invokeParams $invokeResult | Foreach-Object { $SingleServerResult = $_ if ($SingleServerResult -is [hashtable]) { if ($useDeprecatedApis -and ($null -ne $translationSchema) -and ($null -ne $SingleServerResult["Response"])) { $ServerName = $SingleServerResult["Response"].PSObject.TypeNames | Where-Object -FilterScript { $_.StartsWith('Server:') } $SingleServerResult["Response"] = Convert-OutputBody ` -OperationTranslateSchema $translationSchema ` -OperationOutputObject $SingleServerResult["Response"] if (![string]::IsNullOrEmpty($ServerName)) { $SingleServerResult["Response"] | ForEach-Object -Process { $_.PSObject.TypeNames.Add($ServerName) $_ = $_ | Add-Member -MemberType ScriptMethod -Name GetServer -Value { $productServerString = ($this.PSObject.TypeNames | Where-Object -FilterScript { $_.StartsWith('Server:') }).Substring(7) $productSeparatorIndex = $productServerString.IndexOf(':') $product = $productServerString.Substring(0, $productSeparatorIndex) $server = $productServerString.Substring($productSeparatorIndex + 1, $productServerString.Length - $productSeparatorIndex - 1) Get-ServerConfiguration -Product $product | Where-Object -FilterScript { $_.ToString() -eq $server } } -Force -PassThru $_.PSObject.TypeNames.Add("ServerObject") } } } foreach ($element in $SingleServerResult["Response"]) { $element.PSObject.TypeNames.Insert(0, "NamespaceManagementClusterCompatibilitySummary") } if ($WithHttpInfo.IsPresent) { # result object $SingleServerResult } else { # result object $SingleServerResult["Response"] } } else { Write-Warning "An item from the Invoke-vSphereApiClient was expected to be a Hashtable but it is '$($SingleServerResult.GetType())'" } } } } } } # SIG # Begin signature block # MIIphwYJKoZIhvcNAQcCoIIpeDCCKXQCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCB187+sUxUPaLZw # bA6V5kt39hLerTg3LzTnTNRKZ8briqCCDnQwggawMIIEmKADAgECAhAIrUCyYNKc # TJ9ezam9k67ZMA0GCSqGSIb3DQEBDAUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQK # EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNV # BAMTGERpZ2lDZXJ0IFRydXN0ZWQgUm9vdCBHNDAeFw0yMTA0MjkwMDAwMDBaFw0z # NjA0MjgyMzU5NTlaMGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg # SW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcg # UlNBNDA5NiBTSEEzODQgMjAyMSBDQTEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw # ggIKAoICAQDVtC9C0CiteLdd1TlZG7GIQvUzjOs9gZdwxbvEhSYwn6SOaNhc9es0 # JAfhS0/TeEP0F9ce2vnS1WcaUk8OoVf8iJnBkcyBAz5NcCRks43iCH00fUyAVxJr # Q5qZ8sU7H/Lvy0daE6ZMswEgJfMQ04uy+wjwiuCdCcBlp/qYgEk1hz1RGeiQIXhF # LqGfLOEYwhrMxe6TSXBCMo/7xuoc82VokaJNTIIRSFJo3hC9FFdd6BgTZcV/sk+F # LEikVoQ11vkunKoAFdE3/hoGlMJ8yOobMubKwvSnowMOdKWvObarYBLj6Na59zHh # 3K3kGKDYwSNHR7OhD26jq22YBoMbt2pnLdK9RBqSEIGPsDsJ18ebMlrC/2pgVItJ # wZPt4bRc4G/rJvmM1bL5OBDm6s6R9b7T+2+TYTRcvJNFKIM2KmYoX7BzzosmJQay # g9Rc9hUZTO1i4F4z8ujo7AqnsAMrkbI2eb73rQgedaZlzLvjSFDzd5Ea/ttQokbI # YViY9XwCFjyDKK05huzUtw1T0PhH5nUwjewwk3YUpltLXXRhTT8SkXbev1jLchAp # QfDVxW0mdmgRQRNYmtwmKwH0iU1Z23jPgUo+QEdfyYFQc4UQIyFZYIpkVMHMIRro # OBl8ZhzNeDhFMJlP/2NPTLuqDQhTQXxYPUez+rbsjDIJAsxsPAxWEQIDAQABo4IB # WTCCAVUwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUaDfg67Y7+F8Rhvv+ # YXsIiGX0TkIwHwYDVR0jBBgwFoAU7NfjgtJxXWRM3y5nP+e6mK4cD08wDgYDVR0P # AQH/BAQDAgGGMBMGA1UdJQQMMAoGCCsGAQUFBwMDMHcGCCsGAQUFBwEBBGswaTAk # BggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEEGCCsGAQUFBzAC # hjVodHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9v # dEc0LmNydDBDBgNVHR8EPDA6MDigNqA0hjJodHRwOi8vY3JsMy5kaWdpY2VydC5j # b20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNybDAcBgNVHSAEFTATMAcGBWeBDAED # MAgGBmeBDAEEATANBgkqhkiG9w0BAQwFAAOCAgEAOiNEPY0Idu6PvDqZ01bgAhql # +Eg08yy25nRm95RysQDKr2wwJxMSnpBEn0v9nqN8JtU3vDpdSG2V1T9J9Ce7FoFF # UP2cvbaF4HZ+N3HLIvdaqpDP9ZNq4+sg0dVQeYiaiorBtr2hSBh+3NiAGhEZGM1h # mYFW9snjdufE5BtfQ/g+lP92OT2e1JnPSt0o618moZVYSNUa/tcnP/2Q0XaG3Ryw # YFzzDaju4ImhvTnhOE7abrs2nfvlIVNaw8rpavGiPttDuDPITzgUkpn13c5Ubdld # AhQfQDN8A+KVssIhdXNSy0bYxDQcoqVLjc1vdjcshT8azibpGL6QB7BDf5WIIIJw # 8MzK7/0pNVwfiThV9zeKiwmhywvpMRr/LhlcOXHhvpynCgbWJme3kuZOX956rEnP # LqR0kq3bPKSchh/jwVYbKyP/j7XqiHtwa+aguv06P0WmxOgWkVKLQcBIhEuWTatE # QOON8BUozu3xGFYHKi8QxAwIZDwzj64ojDzLj4gLDb879M4ee47vtevLt/B3E+bn # KD+sEq6lLyJsQfmCXBVmzGwOysWGw/YmMwwHS6DTBwJqakAwSEs0qFEgu60bhQji # WQ1tygVQK+pKHJ6l/aCnHwZ05/LWUpD9r4VIIflXO7ScA+2GRfS0YW6/aOImYIbq # yK+p/pQd52MbOoZWeE4wgge8MIIFpKADAgECAhAGQAJb/wxIlzKZ1GMgg8N7MA0G # CSqGSIb3DQEBCwUAMGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg # SW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcg # UlNBNDA5NiBTSEEzODQgMjAyMSBDQTEwHhcNMjQwMzI4MDAwMDAwWhcNMjcwMzMw # MjM1OTU5WjCBxDETMBEGCysGAQQBgjc8AgEDEwJVUzEZMBcGCysGAQQBgjc8AgEC # EwhEZWxhd2FyZTEdMBsGA1UEDwwUUHJpdmF0ZSBPcmdhbml6YXRpb24xEDAOBgNV # BAUTBzY2MTAxMTcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMREw # DwYDVQQHEwhTYW4gSm9zZTEVMBMGA1UEChMMQnJvYWRjb20gSW5jMRUwEwYDVQQD # EwxCcm9hZGNvbSBJbmMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6 # 8C+jJxKfxp9c1A6fghwSNjnvV+Y1my2XmTHEPmk7COFTWw1VRBZBtv/zUXrSStlW # 9Qqqp48wk+H+H5oM0qL9jsUQ6wAJpmjt33F3xvKqc8ehzVZLXUEACQBXTo30Hnbh # bcacKAyX9sGByGqKlR6cHHrEebSWMoxOO6TOgYg06xfeYzxpx8HqMQjOKgNEbh4c # m1Yx+ER/4BmWmYcvVHR9KtXwJWxmzUJCaS5OB9lp8JqO5+uAHvpGtQEAb39/h/vy # 290isCYw16/uaLOz5Epchv5fogTBTh4o6SXWHam03FfMNVbmbMVuciTzfPSDt0i5 # xQWYtVkwVU+NGE4XUutX4zbaing53QYKNAa+NW9FiWcaoEwE1qTvk7ilsucPzdqC # ikQpHyaaGCzHoDhveSLiJKgKRiDqee8KXfa/hkCoat9AtCihyd899kJ1kSlTO9fk # ci5/CdKwmwXQIKh6OPueKr+OJ69XPx0V+RaaMAkkVtFb7/VwecFmFgsXFkAK8ulP # aGYyIFOFqLMqH8ZuKiLVP5HkxDgSitJcWbaSf89TJuxNqh0vV1k4iwaQpcmQZhPK # 49pNlj5j0cyw8B+xTYNDwnKvyoWgqKAb2cfzc6pCLk2GJLBwakKZ5YKC50XdhPlS # yrqlLTb5otZRoYWFGKL1SqxxrBjRqg4qp1RvuxRcBQIDAQABo4ICAjCCAf4wHwYD # VR0jBBgwFoAUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHQYDVR0OBBYEFL9ZTMS/Phgv # GnXZm3XOrmDoJSIfMD0GA1UdIAQ2MDQwMgYFZ4EMAQMwKTAnBggrBgEFBQcCARYb # aHR0cDovL3d3dy5kaWdpY2VydC5jb20vQ1BTMA4GA1UdDwEB/wQEAwIHgDATBgNV # HSUEDDAKBggrBgEFBQcDAzCBtQYDVR0fBIGtMIGqMFOgUaBPhk1odHRwOi8vY3Js # My5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmluZ1JTQTQw # OTZTSEEzODQyMDIxQ0ExLmNybDBToFGgT4ZNaHR0cDovL2NybDQuZGlnaWNlcnQu # Y29tL0RpZ2lDZXJ0VHJ1c3RlZEc0Q29kZVNpZ25pbmdSU0E0MDk2U0hBMzg0MjAy # MUNBMS5jcmwwgZQGCCsGAQUFBwEBBIGHMIGEMCQGCCsGAQUFBzABhhhodHRwOi8v # b2NzcC5kaWdpY2VydC5jb20wXAYIKwYBBQUHMAKGUGh0dHA6Ly9jYWNlcnRzLmRp # Z2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNENvZGVTaWduaW5nUlNBNDA5NlNI # QTM4NDIwMjFDQTEuY3J0MAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggIBAMLk # M/5BZB1j2xjjR9IkyDYtLrqS9IztErzl4ogf2dXuAgBJP1EKm/EN4oOi/BHxLW0T # VuclGZ3aEa3/n3UlHxqmvKm+4elD5oh4sEOm7+J7ECV0HobeZhRiLmdyla1Mqbxw # xp56AVvhG/++nf+AVzw95c671a3kb+6VXMDzZK1qcUh6zyLklZ/vfjKipry9KgMR # sXd81I+PRr+99iRI+5pUsF7ixmS4vTldNh2r/VRFKLtXtTefZ20Q55Efu/8NefJf # fD/+LLmHszB3LRlguFYOUGon7q8eQKi20PMW6PQb8az4mn6MfA1Y2x+L7HFDiy// # VMOy5DqcKOHWqz/NZr7/VEPtywoLbHlUwNJyFY0wnQhzvPCg67YpDEYERDnggtpe # OchKlJoqLKQInq6xDLTtco+ynR6IHnWRcz+oYhm6TdvRcmP7giiqObKEFXQwLsjS # HsqRluk2FQ4DhG63+8gyD4rKQVoybP0obE7Gi2RYHOT0qwPos6GklZraht/capa7 # wos1gNKXJL7G6BaCXQWCyakT76ZOJOdHzHjJ2n+yBgKWWGBv186nrP5nfuRu0vJE # HG74cy5oRwe3vme6ztPQy9VSgSrP+g67bZ6yPe+z09T7NczW4aXrXbMUdTb02zKQ # sK8WEKfcvzBmZ115SwMuf3g34C5yRhOsWInfosmAMYIaaTCCGmUCAQEwfTBpMQsw # CQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMTOERp # Z2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5nIFJTQTQwOTYgU0hBMzg0IDIw # MjEgQ0ExAhAGQAJb/wxIlzKZ1GMgg8N7MA0GCWCGSAFlAwQCAQUAoHwwEAYKKwYB # BAGCNwIBDDECMAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGC # NwIBCzEOMAwGCisGAQQBgjcCARUwLwYJKoZIhvcNAQkEMSIEIMW5hRQxf1b/qr1C # ungBkXuVRrbhkV4+tHmWl+WS0o0rMA0GCSqGSIb3DQEBAQUABIICAHvgsFE33qzv # 6ISFNXCl1vQWHncWdijJxp/imw98/DV0+4Hl6LJE+GFnkkMFMUNWUNB5bUisDS6H # rbeP5/cdpvJ7KUzTvvU8lvHhRrbRlCoaQ5h+dL/aqTJcqQK6gj1qwc6gybzvsduk # 1TrlGTdD+afOwiRFhP8yyZfXbINNLzJKVwXFLi9INteTxh0KBdYmkIuJk/qc0Rkk # aMI7HFajgB+vJaIzYZvO2DKYHpu2Qllxjs+8+9NjfwOl4DQ0HqqCkSy/ZTEsmIhh # mH/0OAbCZQaLvG7hW8iU5x9BTD3PKVlDREgZeRCPEnT1WHI+TFyKmsKezcDoBEUe # LOKvIwlSXrWUzkuchH5F8cShwE29mXQk3nadnSxEUvtn96jEy32MD8L+FjtFH7u5 # XXn0Zkaty1IByMpdkq7LPPqq3xLBaQ474sjQRGRLwgFPExZhlam+9lZ72f6N5GJt # ixCpchrky3lP1AotjBWH5H4Y7z90UYBHA9TlnMegfZ2V0fyxor5DKyXiqoDqHVoK # WtbnufQ6U+ZTGq2asSTHWshF/SU9q7RBbOx8CRMeNZXL1Y2RZc+jStFoV9MsGUSk # ucBLdbb27r94Q/WkbAVWp30kI0ickhrTV+KL6IixDKwvnB39ef0jWuWSLez9+JUl # thAraeoXw3q3vU1hoOnkgIxhp0n6mjTgoYIXPzCCFzsGCisGAQQBgjcDAwExghcr # MIIXJwYJKoZIhvcNAQcCoIIXGDCCFxQCAQMxDzANBglghkgBZQMEAgEFADB3Bgsq # hkiG9w0BCRABBKBoBGYwZAIBAQYJYIZIAYb9bAcBMDEwDQYJYIZIAWUDBAIBBQAE # INnj+ZV3u4fwv4mo54hbHXnu0qUj6NJr2JFmB5gIqmozAhADuHyRl0T/40M8TaYi # wP2nGA8yMDI0MDcyNDE5NDIyMVqgghMJMIIGwjCCBKqgAwIBAgIQBUSv85SdCDmm # v9s/X+VhFjANBgkqhkiG9w0BAQsFADBjMQswCQYDVQQGEwJVUzEXMBUGA1UEChMO # RGlnaUNlcnQsIEluYy4xOzA5BgNVBAMTMkRpZ2lDZXJ0IFRydXN0ZWQgRzQgUlNB # NDA5NiBTSEEyNTYgVGltZVN0YW1waW5nIENBMB4XDTIzMDcxNDAwMDAwMFoXDTM0 # MTAxMzIzNTk1OVowSDELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJ # bmMuMSAwHgYDVQQDExdEaWdpQ2VydCBUaW1lc3RhbXAgMjAyMzCCAiIwDQYJKoZI # hvcNAQEBBQADggIPADCCAgoCggIBAKNTRYcdg45brD5UsyPgz5/X5dLnXaEOCdwv # SKOXejsqnGfcYhVYwamTEafNqrJq3RApih5iY2nTWJw1cb86l+uUUI8cIOrHmjsv # lmbjaedp/lvD1isgHMGXlLSlUIHyz8sHpjBoyoNC2vx/CSSUpIIa2mq62DvKXd4Z # GIX7ReoNYWyd/nFexAaaPPDFLnkPG2ZS48jWPl/aQ9OE9dDH9kgtXkV1lnX+3RCh # G4PBuOZSlbVH13gpOWvgeFmX40QrStWVzu8IF+qCZE3/I+PKhu60pCFkcOvV5aDa # Y7Mu6QXuqvYk9R28mxyyt1/f8O52fTGZZUdVnUokL6wrl76f5P17cz4y7lI0+9S7 # 69SgLDSb495uZBkHNwGRDxy1Uc2qTGaDiGhiu7xBG3gZbeTZD+BYQfvYsSzhUa+0 # rRUGFOpiCBPTaR58ZE2dD9/O0V6MqqtQFcmzyrzXxDtoRKOlO0L9c33u3Qr/eTQQ # fqZcClhMAD6FaXXHg2TWdc2PEnZWpST618RrIbroHzSYLzrqawGw9/sqhux7Ujip # mAmhcbJsca8+uG+W1eEQE/5hRwqM/vC2x9XH3mwk8L9CgsqgcT2ckpMEtGlwJw1P # t7U20clfCKRwo+wK8REuZODLIivK8SgTIUlRfgZm0zu++uuRONhRB8qUt+JQofM6 # 04qDy0B7AgMBAAGjggGLMIIBhzAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/BAIw # ADAWBgNVHSUBAf8EDDAKBggrBgEFBQcDCDAgBgNVHSAEGTAXMAgGBmeBDAEEAjAL # BglghkgBhv1sBwEwHwYDVR0jBBgwFoAUuhbZbU2FL3MpdpovdYxqII+eyG8wHQYD # VR0OBBYEFKW27xPn783QZKHVVqllMaPe1eNJMFoGA1UdHwRTMFEwT6BNoEuGSWh0 # dHA6Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNFJTQTQwOTZT # SEEyNTZUaW1lU3RhbXBpbmdDQS5jcmwwgZAGCCsGAQUFBwEBBIGDMIGAMCQGCCsG # AQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wWAYIKwYBBQUHMAKGTGh0 # dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNFJTQTQw # OTZTSEEyNTZUaW1lU3RhbXBpbmdDQS5jcnQwDQYJKoZIhvcNAQELBQADggIBAIEa # 1t6gqbWYF7xwjU+KPGic2CX/yyzkzepdIpLsjCICqbjPgKjZ5+PF7SaCinEvGN1O # tt5s1+FgnCvt7T1IjrhrunxdvcJhN2hJd6PrkKoS1yeF844ektrCQDifXcigLiV4 # JZ0qBXqEKZi2V3mP2yZWK7Dzp703DNiYdk9WuVLCtp04qYHnbUFcjGnRuSvExnvP # nPp44pMadqJpddNQ5EQSviANnqlE0PjlSXcIWiHFtM+YlRpUurm8wWkZus8W8oM3 # NG6wQSbd3lqXTzON1I13fXVFoaVYJmoDRd7ZULVQjK9WvUzF4UbFKNOt50MAcN7M # mJ4ZiQPq1JE3701S88lgIcRWR+3aEUuMMsOI5ljitts++V+wQtaP4xeR0arAVeOG # v6wnLEHQmjNKqDbUuXKWfpd5OEhfysLcPTLfddY2Z1qJ+Panx+VPNTwAvb6cKmx5 # AdzaROY63jg7B145WPR8czFVoIARyxQMfq68/qTreWWqaNYiyjvrmoI1VygWy2ny # Mpqy0tg6uLFGhmu6F/3Ed2wVbK6rr3M66ElGt9V/zLY4wNjsHPW2obhDLN9OTH0e # aHDAdwrUAuBcYLso/zjlUlrWrBciI0707NMX+1Br/wd3H3GXREHJuEbTbDJ8WC9n # R2XlG3O2mflrLAZG70Ee8PBf4NvZrZCARK+AEEGKMIIGrjCCBJagAwIBAgIQBzY3 # tyRUfNhHrP0oZipeWzANBgkqhkiG9w0BAQsFADBiMQswCQYDVQQGEwJVUzEVMBMG # A1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSEw # HwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwHhcNMjIwMzIzMDAwMDAw # WhcNMzcwMzIyMjM1OTU5WjBjMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNl # cnQsIEluYy4xOzA5BgNVBAMTMkRpZ2lDZXJ0IFRydXN0ZWQgRzQgUlNBNDA5NiBT # SEEyNTYgVGltZVN0YW1waW5nIENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC # CgKCAgEAxoY1BkmzwT1ySVFVxyUDxPKRN6mXUaHW0oPRnkyibaCwzIP5WvYRoUQV # Ql+kiPNo+n3znIkLf50fng8zH1ATCyZzlm34V6gCff1DtITaEfFzsbPuK4CEiiIY # 3+vaPcQXf6sZKz5C3GeO6lE98NZW1OcoLevTsbV15x8GZY2UKdPZ7Gnf2ZCHRgB7 # 20RBidx8ald68Dd5n12sy+iEZLRS8nZH92GDGd1ftFQLIWhuNyG7QKxfst5Kfc71 # ORJn7w6lY2zkpsUdzTYNXNXmG6jBZHRAp8ByxbpOH7G1WE15/tePc5OsLDnipUjW # 8LAxE6lXKZYnLvWHpo9OdhVVJnCYJn+gGkcgQ+NDY4B7dW4nJZCYOjgRs/b2nuY7 # W+yB3iIU2YIqx5K/oN7jPqJz+ucfWmyU8lKVEStYdEAoq3NDzt9KoRxrOMUp88qq # lnNCaJ+2RrOdOqPVA+C/8KI8ykLcGEh/FDTP0kyr75s9/g64ZCr6dSgkQe1CvwWc # ZklSUPRR8zZJTYsg0ixXNXkrqPNFYLwjjVj33GHek/45wPmyMKVM1+mYSlg+0wOI # /rOP015LdhJRk8mMDDtbiiKowSYI+RQQEgN9XyO7ZONj4KbhPvbCdLI/Hgl27Ktd # RnXiYKNYCQEoAA6EVO7O6V3IXjASvUaetdN2udIOa5kM0jO0zbECAwEAAaOCAV0w # ggFZMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFLoW2W1NhS9zKXaaL3WM # aiCPnshvMB8GA1UdIwQYMBaAFOzX44LScV1kTN8uZz/nupiuHA9PMA4GA1UdDwEB # /wQEAwIBhjATBgNVHSUEDDAKBggrBgEFBQcDCDB3BggrBgEFBQcBAQRrMGkwJAYI # KwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBBBggrBgEFBQcwAoY1 # aHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RH # NC5jcnQwQwYDVR0fBDwwOjA4oDagNIYyaHR0cDovL2NybDMuZGlnaWNlcnQuY29t # L0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5jcmwwIAYDVR0gBBkwFzAIBgZngQwBBAIw # CwYJYIZIAYb9bAcBMA0GCSqGSIb3DQEBCwUAA4ICAQB9WY7Ak7ZvmKlEIgF+ZtbY # IULhsBguEE0TzzBTzr8Y+8dQXeJLKftwig2qKWn8acHPHQfpPmDI2AvlXFvXbYf6 # hCAlNDFnzbYSlm/EUExiHQwIgqgWvalWzxVzjQEiJc6VaT9Hd/tydBTX/6tPiix6 # q4XNQ1/tYLaqT5Fmniye4Iqs5f2MvGQmh2ySvZ180HAKfO+ovHVPulr3qRCyXen/ # KFSJ8NWKcXZl2szwcqMj+sAngkSumScbqyQeJsG33irr9p6xeZmBo1aGqwpFyd/E # jaDnmPv7pp1yr8THwcFqcdnGE4AJxLafzYeHJLtPo0m5d2aR8XKc6UsCUqc3fpNT # rDsdCEkPlM05et3/JWOZJyw9P2un8WbDQc1PtkCbISFA0LcTJM3cHXg65J6t5TRx # ktcma+Q4c6umAU+9Pzt4rUyt+8SVe+0KXzM5h0F4ejjpnOHdI/0dKNPH+ejxmF/7 # K9h+8kaddSweJywm228Vex4Ziza4k9Tm8heZWcpw8De/mADfIBZPJ/tgZxahZrrd # VcA6KYawmKAr7ZVBtzrVFZgxtGIJDwq9gdkT/r+k0fNX2bwE+oLeMt8EifAAzV3C # +dAjfwAL5HYCJtnwZXZCpimHCUcr5n8apIUP/JiW9lVUKx+A+sDyDivl1vupL0QV # SucTDh3bNzgaoSv27dZ8/DCCBY0wggR1oAMCAQICEA6bGI750C3n79tQ4ghAGFow # DQYJKoZIhvcNAQEMBQAwZTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0 # IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTEkMCIGA1UEAxMbRGlnaUNl # cnQgQXNzdXJlZCBJRCBSb290IENBMB4XDTIyMDgwMTAwMDAwMFoXDTMxMTEwOTIz # NTk1OVowYjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcG # A1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTEhMB8GA1UEAxMYRGlnaUNlcnQgVHJ1c3Rl # ZCBSb290IEc0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAv+aQc2je # u+RdSjwwIjBpM+zCpyUuySE98orYWcLhKac9WKt2ms2uexuEDcQwH/MbpDgW61bG # l20dq7J58soR0uRf1gU8Ug9SH8aeFaV+vp+pVxZZVXKvaJNwwrK6dZlqczKU0RBE # EC7fgvMHhOZ0O21x4i0MG+4g1ckgHWMpLc7sXk7Ik/ghYZs06wXGXuxbGrzryc/N # rDRAX7F6Zu53yEioZldXn1RYjgwrt0+nMNlW7sp7XeOtyU9e5TXnMcvak17cjo+A # 2raRmECQecN4x7axxLVqGDgDEI3Y1DekLgV9iPWCPhCRcKtVgkEy19sEcypukQF8 # IUzUvK4bA3VdeGbZOjFEmjNAvwjXWkmkwuapoGfdpCe8oU85tRFYF/ckXEaPZPfB # aYh2mHY9WV1CdoeJl2l6SPDgohIbZpp0yt5LHucOY67m1O+SkjqePdwA5EUlibaa # RBkrfsCUtNJhbesz2cXfSwQAzH0clcOP9yGyshG3u3/y1YxwLEFgqrFjGESVGnZi # fvaAsPvoZKYz0YkH4b235kOkGLimdwHhD5QMIR2yVCkliWzlDlJRR3S+Jqy2QXXe # eqxfjT/JvNNBERJb5RBQ6zHFynIWIgnffEx1P2PsIV/EIFFrb7GrhotPwtZFX50g # /KEexcCPorF+CiaZ9eRpL5gdLfXZqbId5RsCAwEAAaOCATowggE2MA8GA1UdEwEB # /wQFMAMBAf8wHQYDVR0OBBYEFOzX44LScV1kTN8uZz/nupiuHA9PMB8GA1UdIwQY # MBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgPMA4GA1UdDwEB/wQEAwIBhjB5BggrBgEF # BQcBAQRtMGswJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBD # BggrBgEFBQcwAoY3aHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0 # QXNzdXJlZElEUm9vdENBLmNydDBFBgNVHR8EPjA8MDqgOKA2hjRodHRwOi8vY3Js # My5kaWdpY2VydC5jb20vRGlnaUNlcnRBc3N1cmVkSURSb290Q0EuY3JsMBEGA1Ud # IAQKMAgwBgYEVR0gADANBgkqhkiG9w0BAQwFAAOCAQEAcKC/Q1xV5zhfoKN0Gz22 # Ftf3v1cHvZqsoYcs7IVeqRq7IviHGmlUIu2kiHdtvRoU9BNKei8ttzjv9P+Aufih # 9/Jy3iS8UgPITtAq3votVs/59PesMHqai7Je1M/RQ0SbQyHrlnKhSLSZy51PpwYD # E3cnRNTnf+hZqPC/Lwum6fI0POz3A8eHqNJMQBk1RmppVLC4oVaO7KTVPeix3P0c # 2PR3WlxUjG/voVA9/HYJaISfb8rbII01YBwCA8sgsKxYoA5AY8WYIsGyWfVVa88n # q2x2zm8jLfR+cWojayL/ErhULSd+2DrZ8LaHlv1b0VysGMNNn3O3AamfV6peKOK5 # lDGCA3YwggNyAgEBMHcwYzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0 # LCBJbmMuMTswOQYDVQQDEzJEaWdpQ2VydCBUcnVzdGVkIEc0IFJTQTQwOTYgU0hB # MjU2IFRpbWVTdGFtcGluZyBDQQIQBUSv85SdCDmmv9s/X+VhFjANBglghkgBZQME # AgEFAKCB0TAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkF # MQ8XDTI0MDcyNDE5NDIyMVowKwYLKoZIhvcNAQkQAgwxHDAaMBgwFgQUZvArMsLC # yQ+CXc6qisnGTxmcz0AwLwYJKoZIhvcNAQkEMSIEIJ2w1LVFL0414hIEbz8YU4ba # 6y7aHlmATXYgWovyH8+1MDcGCyqGSIb3DQEJEAIvMSgwJjAkMCIEINL25G3tdCLM # 0dRAV2hBNm+CitpVmq4zFq9NGprUDHgoMA0GCSqGSIb3DQEBAQUABIICAD9v0kRX # BajBFc3xY+bmSdYo9poJXePJhfr0fdd0ytwVLJzWI//katgcZZA6fUnKCDbMllr1 # hO6BDIToywN6DGKk+uqkMjA2UvKudYT7VzbicwHGkpBsswQA/s5ivBIkG/Vr9UY6 # sneQZy/LjxjJd0QqTlJDvOpVXFZJN6sJyrH/Z12sGyx+XOiVDXF8bxqb0NXNl2bc # Ik+G6J8NA7vq9MldUxvE6+Gr1A8MtGSjUC68PmQr8cEhAqjt1P5qOqVn825GFDmq # yEiAHByCnTbQoZPI2+vcCirCKwpeDbJGWTKUJLTWB0S1OjFWtBpdZFYo9MKsKGLi # 7fEysW+BKIL6NFJ0fQ7j1vbdbKSa9LGfEFTukqM6O++Fvgk/kTZIX7YL5SkcNbhk # NbEpEY1MjWg/uMThwl7nTssR9V2O7nAMJ8cCMk1GZIFGy/VmFuTovvYg319mKXXX # M+Md32Aj/7Tp1CzAZbdJ22Aa6HAHAcKRFJq7yESbkhn7ElsuarWDUvgqNERwEBkc # GJaIv24xMMvsg0EjIKIhyTeshKQyY3ChT8P0OZq3KwO8wKWhM1QoWOvvIGxEYRRm # c8IrYveCmgpECMgw1O4S79qAUlqtj3NoIjglet9AiLq706c2C7hvBPh/rlKbJrqu # LJhG5BUp/bsS9Y5KYAeIlkRTZMI/6mDIw8b3 # SIG # End signature block |