custom/New-AzKustoDataConnection.ps1
# ---------------------------------------------------------------------------------- # # Copyright Microsoft Corporation # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # http://www.apache.org/licenses/LICENSE-2.0 # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ---------------------------------------------------------------------------------- <# .Synopsis Creates or updates a data connection. .Description Creates or updates a data connection. .Example PS C:\> $dataConnectionProperties = New-Object -Type Microsoft.Azure.PowerShell.Cmdlets.Kusto.Models.Api20200918.EventHubDataConnection -Property @{Location="East US"; Kind="EventHub"; EventHubResourceId="/subscriptions/$subscriptionId/resourcegroups/testrg/providers/Microsoft.EventHub/namespaces/myeventhubns/eventhubs/myeventhub"; DataFormat="JSON"; ConsumerGroup='$Default'; Compression= "None"; TableName = "Events"; MappingRuleName = "EventsMapping"} PS C:\> New-AzKustoDataConnection -ResourceGroupName "testrg" -ClusterName "testnewkustocluster" -DatabaseName "mykustodatabase" -DataConnectionName "mykustodataconnection" -Parameter $dataConnectionProperties Kind Location Name Type ---- -------- ---- ---- EventHub East US testnewkustocluster/mykustodatabase/mykustodataconnection Microsoft.Kusto/Clusters/Databases/DataConnections .Link https://docs.microsoft.com/en-us/powershell/module/az.kusto/new-azkustodataconnection #> function New-AzKustoDataConnection { [OutputType([Microsoft.Azure.PowerShell.Cmdlets.Kusto.Models.Api20200918.IDataConnection])] [CmdletBinding(DefaultParameterSetName = 'CreateExpandedEventHub', PositionalBinding = $false, SupportsShouldProcess, ConfirmImpact = 'Medium')] param( [Parameter(Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Path')] [System.String] # The name of the Kusto cluster. ${ClusterName}, [Parameter(Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Path')] [System.String] # The name of the database in the Kusto cluster. ${DatabaseName}, [Parameter(Mandatory)] [Alias('DataConnectionName')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Path')] [System.String] # The name of the data connection. ${Name}, [Parameter(Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Path')] [System.String] # The name of the resource group containing the Kusto cluster. ${ResourceGroupName}, [Parameter()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Path')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Runtime.DefaultInfo(Script = '(Get-AzContext).Subscription.Id')] [System.String] # Gets subscription credentials which uniquely identify Microsoft Azure subscription. # The subscription ID forms part of the URI for every service call. ${SubscriptionId}, [Parameter(Mandatory)] [ArgumentCompleter( { param ( $CommandName, $ParameterName, $WordToComplete, $CommandAst, $FakeBoundParameters ) return @('EventHub', 'EventGrid', 'IoTHub') })] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Support.Kind] # Kind of the endpoint for the data connection ${Kind}, [Parameter(ParameterSetName = 'CreateExpandedEventHub', Mandatory)] [Parameter(ParameterSetName = 'CreateExpandedEventGrid', Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The resource ID of the event hub to be used to create a data connection / event grid is configured to send events. ${EventHubResourceId}, [Parameter(Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The event/iot hub consumer group. ${ConsumerGroup}, [Parameter(ParameterSetName = 'UpdateExpandedEventGrid')] [Parameter(ParameterSetName = 'UpdateViaIdentityExpandedEventGrid')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Support.BlobStorageEventType] # The name of blob storage event type to process. ${BlobStorageEventType}, [Parameter(ParameterSetName = 'UpdateExpandedEventGrid')] [Parameter(ParameterSetName = 'UpdateViaIdentityExpandedEventGrid')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.Management.Automation.SwitchParameter] # If set to true, indicates that ingestion should ignore the first record of every file. ${IgnoreFirstRecord}, [Parameter()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Support.EventGridDataFormat] # The data format of the message. Optionally the data format can be added to each message. ${DataFormat}, [Parameter(ParameterSetName = 'CreateExpandedEventHub')] [Parameter(ParameterSetName = 'CreateExpandedIotHub')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String[]] # System properties of the event/iot hub. ${EventSystemProperty}, [Parameter()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message. ${MappingRuleName}, [Parameter()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The table where the data should be ingested. Optionally the table information can be added to each message. ${TableName}, [Parameter(ParameterSetName = 'CreateExpandedEventHub')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Support.Compression] # The event hub messages compression type. ${Compression}, [Parameter(ParameterSetName = 'CreateExpandedEventGrid', Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The resource ID of the storage account where the data resides. ${StorageAccountResourceId}, [Parameter(ParameterSetName = 'CreateExpandedIotHub', Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The resource ID of the Iot hub to be used to create a data connection. ${IotHubResourceId}, [Parameter(ParameterSetName = 'CreateExpandedIotHub', Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # The name of the share access policy. ${SharedAccessPolicyName}, [Parameter(Mandatory)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Body')] [System.String] # Resource location. ${Location}, [Parameter()] [Alias('AzureRMContext', 'AzureCredential')] [ValidateNotNull()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Azure')] [System.Management.Automation.PSObject] # The credentials, account, tenant, and subscription used for communication with Azure. ${DefaultProfile}, [Parameter()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Run the command as a job ${AsJob}, [Parameter(DontShow)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Wait for .NET debugger to attach ${Break}, [Parameter(DontShow)] [ValidateNotNull()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be appended to the front of the pipeline ${HttpPipelineAppend}, [Parameter(DontShow)] [ValidateNotNull()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Runtime.SendAsyncStep[]] # SendAsync Pipeline Steps to be prepended to the front of the pipeline ${HttpPipelinePrepend}, [Parameter()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Run the command asynchronously ${NoWait}, [Parameter(DontShow)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [System.Uri] # The URI for the proxy server to use ${Proxy}, [Parameter(DontShow)] [ValidateNotNull()] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [System.Management.Automation.PSCredential] # Credentials for a proxy server to use for the remote call ${ProxyCredential}, [Parameter(DontShow)] [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Category('Runtime')] [System.Management.Automation.SwitchParameter] # Use the default credentials for the proxy ${ProxyUseDefaultCredentials} ) process { try { if ($PSBoundParameters['Kind'] -eq 'EventHub') { $Parameter = [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Models.Api20200918.EventHubDataConnection]::new() $Parameter.EventHubResourceId = $PSBoundParameters['EventHubResourceId'] $null = $PSBoundParameters.Remove('EventHubResourceId') if ($PSBoundParameters.ContainsKey('EventSystemProperty')) { $Parameter.EventSystemProperty = $PSBoundParameters['EventSystemProperty'] $null = $PSBoundParameters.Remove('EventSystemProperty') } if ($PSBoundParameters.ContainsKey('Compression')) { $Parameter.Compression = $PSBoundParameters['Compression'] $null = $PSBoundParameters.Remove('Compression') } } elseif ($PSBoundParameters['Kind'] -eq 'EventGrid') { $Parameter = [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Models.Api20200918.EventGridDataConnection]::new() $Parameter.EventHubResourceId = $PSBoundParameters['EventHubResourceId'] $null = $PSBoundParameters.Remove('EventHubResourceId') $Parameter.StorageAccountResourceId = $PSBoundParameters['StorageAccountResourceId'] $null = $PSBoundParameters.Remove('StorageAccountResourceId') if ($PSBoundParameters.ContainsKey('BlobStorageEventType')) { $Parameter.BlobStorageEventType = $PSBoundParameters['BlobStorageEventType'] $null = $PSBoundParameters.Remove('BlobStorageEventType') } if ($PSBoundParameters.ContainsKey('IgnoreFirstRecord')) { $Parameter.IgnoreFirstRecord = $PSBoundParameters['IgnoreFirstRecord'] $null = $PSBoundParameters.Remove('IgnoreFirstRecord') } } else { $Parameter = [Microsoft.Azure.PowerShell.Cmdlets.Kusto.Models.Api20200918.IotHubDataConnection]::new() $Parameter.IotHubResourceId = $PSBoundParameters['IotHubResourceId'] $null = $PSBoundParameters.Remove('IotHubResourceId') $Parameter.SharedAccessPolicyName = $PSBoundParameters['SharedAccessPolicyName'] $null = $PSBoundParameters.Remove('SharedAccessPolicyName') if ($PSBoundParameters.ContainsKey('EventSystemProperty')) { $Parameter.EventSystemProperty = $PSBoundParameters['EventSystemProperty'] $null = $PSBoundParameters.Remove('EventSystemProperty') } } $Parameter.Kind = $PSBoundParameters['Kind'] $null = $PSBoundParameters.Remove('Kind') $Parameter.Location = $PSBoundParameters['Location'] $null = $PSBoundParameters.Remove('Location') $Parameter.ConsumerGroup = $PSBoundParameters['ConsumerGroup'] $null = $PSBoundParameters.Remove('ConsumerGroup') if ($PSBoundParameters.ContainsKey('DataFormat')) { $Parameter.DataFormat = $PSBoundParameters['DataFormat'] $null = $PSBoundParameters.Remove('DataFormat') } if ($PSBoundParameters.ContainsKey('MappingRuleName')) { $Parameter.MappingRuleName = $PSBoundParameters['MappingRuleName'] $null = $PSBoundParameters.Remove('MappingRuleName') } if ($PSBoundParameters.ContainsKey('TableName')) { $Parameter.TableName = $PSBoundParameters['TableName'] $null = $PSBoundParameters.Remove('TableName') } $null = $PSBoundParameters.Add('Parameter', $Parameter) Az.Kusto.internal\New-AzKustoDataConnection @PSBoundParameters } catch { throw } } } # SIG # Begin signature block # MIIjkQYJKoZIhvcNAQcCoIIjgjCCI34CAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDJe+Nk176eRr8r # 6Zg+/Sy4vD0iDZ28hoeKRJVVxb0ltqCCDYEwggX/MIID56ADAgECAhMzAAABh3IX # chVZQMcJAAAAAAGHMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD # VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p # bmcgUENBIDIwMTEwHhcNMjAwMzA0MTgzOTQ3WhcNMjEwMzAzMTgzOTQ3WjB0MQsw # CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u # ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB # AQDOt8kLc7P3T7MKIhouYHewMFmnq8Ayu7FOhZCQabVwBp2VS4WyB2Qe4TQBT8aB # znANDEPjHKNdPT8Xz5cNali6XHefS8i/WXtF0vSsP8NEv6mBHuA2p1fw2wB/F0dH # sJ3GfZ5c0sPJjklsiYqPw59xJ54kM91IOgiO2OUzjNAljPibjCWfH7UzQ1TPHc4d # weils8GEIrbBRb7IWwiObL12jWT4Yh71NQgvJ9Fn6+UhD9x2uk3dLj84vwt1NuFQ # itKJxIV0fVsRNR3abQVOLqpDugbr0SzNL6o8xzOHL5OXiGGwg6ekiXA1/2XXY7yV # Fc39tledDtZjSjNbex1zzwSXAgMBAAGjggF+MIIBejAfBgNVHSUEGDAWBgorBgEE # AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQUhov4ZyO96axkJdMjpzu2zVXOJcsw # UAYDVR0RBEkwR6RFMEMxKTAnBgNVBAsTIE1pY3Jvc29mdCBPcGVyYXRpb25zIFB1 # ZXJ0byBSaWNvMRYwFAYDVQQFEw0yMzAwMTIrNDU4Mzg1MB8GA1UdIwQYMBaAFEhu # ZOVQBdOCqhc3NyK1bajKdQKVMFQGA1UdHwRNMEswSaBHoEWGQ2h0dHA6Ly93d3cu # bWljcm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY0NvZFNpZ1BDQTIwMTFfMjAxMS0w # Ny0wOC5jcmwwYQYIKwYBBQUHAQEEVTBTMFEGCCsGAQUFBzAChkVodHRwOi8vd3d3 # Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY0NvZFNpZ1BDQTIwMTFfMjAx # MS0wNy0wOC5jcnQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAgEAixmy # S6E6vprWD9KFNIB9G5zyMuIjZAOuUJ1EK/Vlg6Fb3ZHXjjUwATKIcXbFuFC6Wr4K # NrU4DY/sBVqmab5AC/je3bpUpjtxpEyqUqtPc30wEg/rO9vmKmqKoLPT37svc2NV # BmGNl+85qO4fV/w7Cx7J0Bbqk19KcRNdjt6eKoTnTPHBHlVHQIHZpMxacbFOAkJr # qAVkYZdz7ikNXTxV+GRb36tC4ByMNxE2DF7vFdvaiZP0CVZ5ByJ2gAhXMdK9+usx # zVk913qKde1OAuWdv+rndqkAIm8fUlRnr4saSCg7cIbUwCCf116wUJ7EuJDg0vHe # yhnCeHnBbyH3RZkHEi2ofmfgnFISJZDdMAeVZGVOh20Jp50XBzqokpPzeZ6zc1/g # yILNyiVgE+RPkjnUQshd1f1PMgn3tns2Cz7bJiVUaqEO3n9qRFgy5JuLae6UweGf # AeOo3dgLZxikKzYs3hDMaEtJq8IP71cX7QXe6lnMmXU/Hdfz2p897Zd+kU+vZvKI # 3cwLfuVQgK2RZ2z+Kc3K3dRPz2rXycK5XCuRZmvGab/WbrZiC7wJQapgBodltMI5 # GMdFrBg9IeF7/rP4EqVQXeKtevTlZXjpuNhhjuR+2DMt/dWufjXpiW91bo3aH6Ea # jOALXmoxgltCp1K7hrS6gmsvj94cLRf50QQ4U8Qwggd6MIIFYqADAgECAgphDpDS # AAAAAAADMA0GCSqGSIb3DQEBCwUAMIGIMQswCQYDVQQGEwJVUzETMBEGA1UECBMK # V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0 # IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0 # ZSBBdXRob3JpdHkgMjAxMTAeFw0xMTA3MDgyMDU5MDlaFw0yNjA3MDgyMTA5MDla # MH4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS # ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMT # H01pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBIDIwMTEwggIiMA0GCSqGSIb3DQEB # AQUAA4ICDwAwggIKAoICAQCr8PpyEBwurdhuqoIQTTS68rZYIZ9CGypr6VpQqrgG # OBoESbp/wwwe3TdrxhLYC/A4wpkGsMg51QEUMULTiQ15ZId+lGAkbK+eSZzpaF7S # 35tTsgosw6/ZqSuuegmv15ZZymAaBelmdugyUiYSL+erCFDPs0S3XdjELgN1q2jz # y23zOlyhFvRGuuA4ZKxuZDV4pqBjDy3TQJP4494HDdVceaVJKecNvqATd76UPe/7 # 4ytaEB9NViiienLgEjq3SV7Y7e1DkYPZe7J7hhvZPrGMXeiJT4Qa8qEvWeSQOy2u # M1jFtz7+MtOzAz2xsq+SOH7SnYAs9U5WkSE1JcM5bmR/U7qcD60ZI4TL9LoDho33 # X/DQUr+MlIe8wCF0JV8YKLbMJyg4JZg5SjbPfLGSrhwjp6lm7GEfauEoSZ1fiOIl # XdMhSz5SxLVXPyQD8NF6Wy/VI+NwXQ9RRnez+ADhvKwCgl/bwBWzvRvUVUvnOaEP # 6SNJvBi4RHxF5MHDcnrgcuck379GmcXvwhxX24ON7E1JMKerjt/sW5+v/N2wZuLB # l4F77dbtS+dJKacTKKanfWeA5opieF+yL4TXV5xcv3coKPHtbcMojyyPQDdPweGF # RInECUzF1KVDL3SV9274eCBYLBNdYJWaPk8zhNqwiBfenk70lrC8RqBsmNLg1oiM # CwIDAQABo4IB7TCCAekwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFEhuZOVQ # BdOCqhc3NyK1bajKdQKVMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMAsGA1Ud # DwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFHItOgIxkEO5FAVO # 4eqnxzHRI4k0MFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwubWljcm9zb2Z0 # LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY1Jvb0NlckF1dDIwMTFfMjAxMV8wM18y # Mi5jcmwwXgYIKwYBBQUHAQEEUjBQME4GCCsGAQUFBzAChkJodHRwOi8vd3d3Lm1p # Y3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY1Jvb0NlckF1dDIwMTFfMjAxMV8wM18y # Mi5jcnQwgZ8GA1UdIASBlzCBlDCBkQYJKwYBBAGCNy4DMIGDMD8GCCsGAQUFBwIB # FjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2RvY3MvcHJpbWFyeWNw # cy5odG0wQAYIKwYBBQUHAgIwNB4yIB0ATABlAGcAYQBsAF8AcABvAGwAaQBjAHkA # XwBzAHQAYQB0AGUAbQBlAG4AdAAuIB0wDQYJKoZIhvcNAQELBQADggIBAGfyhqWY # 4FR5Gi7T2HRnIpsLlhHhY5KZQpZ90nkMkMFlXy4sPvjDctFtg/6+P+gKyju/R6mj # 82nbY78iNaWXXWWEkH2LRlBV2AySfNIaSxzzPEKLUtCw/WvjPgcuKZvmPRul1LUd # d5Q54ulkyUQ9eHoj8xN9ppB0g430yyYCRirCihC7pKkFDJvtaPpoLpWgKj8qa1hJ # Yx8JaW5amJbkg/TAj/NGK978O9C9Ne9uJa7lryft0N3zDq+ZKJeYTQ49C/IIidYf # wzIY4vDFLc5bnrRJOQrGCsLGra7lstnbFYhRRVg4MnEnGn+x9Cf43iw6IGmYslmJ # aG5vp7d0w0AFBqYBKig+gj8TTWYLwLNN9eGPfxxvFX1Fp3blQCplo8NdUmKGwx1j # NpeG39rz+PIWoZon4c2ll9DuXWNB41sHnIc+BncG0QaxdR8UvmFhtfDcxhsEvt9B # xw4o7t5lL+yX9qFcltgA1qFGvVnzl6UJS0gQmYAf0AApxbGbpT9Fdx41xtKiop96 # eiL6SJUfq/tHI4D1nvi/a7dLl+LrdXga7Oo3mXkYS//WsyNodeav+vyL6wuA6mk7 # r/ww7QRMjt/fdW1jkT3RnVZOT7+AVyKheBEyIXrvQQqxP/uozKRdwaGIm1dxVk5I # RcBCyZt2WwqASGv9eZ/BvW1taslScxMNelDNMYIVZjCCFWICAQEwgZUwfjELMAkG # A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx # HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEoMCYGA1UEAxMfTWljcm9z # b2Z0IENvZGUgU2lnbmluZyBQQ0EgMjAxMQITMwAAAYdyF3IVWUDHCQAAAAABhzAN # BglghkgBZQMEAgEFAKCBrjAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgor # BgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgYOAamx9h # 8dDj9JOvLlfmBkzz/0/tPGyy04NS5VWbB1kwQgYKKwYBBAGCNwIBDDE0MDKgFIAS # AE0AaQBjAHIAbwBzAG8AZgB0oRqAGGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbTAN # BgkqhkiG9w0BAQEFAASCAQBgVcOvU/IWR3rIAYwVyxedEyodxL9P7bTvT9/Cjybs # 8PCC2g13bJld1Utn7Ml2PYPEE8K/1nwT/d0rm4a/bc8NMZEsbUNSWNd/iLW4ih9e # SEEhr1+gc9Z5qoPrGujNVoSjRj/v3O0i++OyELeufxMredlNYijZGOWgOADUc5rK # fTR1YsSkLIO9KWgR6RGgYvhW/9iMsetpaYAofum52/DCZkKu2/x2WRVmM3fr8UB/ # wTL21mbtcr5nISzA6VJpyL+lZ6T8rs6xN7kTQRFTrWeG0tygPq4gCPu7+isE6dvQ # VWjkW4Ix18qEPXwuQhfF0UMrPWpYuMuBSqSxEBPrO5iOoYIS8DCCEuwGCisGAQQB # gjcDAwExghLcMIIS2AYJKoZIhvcNAQcCoIISyTCCEsUCAQMxDzANBglghkgBZQME # AgEFADCCAVQGCyqGSIb3DQEJEAEEoIIBQwSCAT8wggE7AgEBBgorBgEEAYRZCgMB # MDEwDQYJYIZIAWUDBAIBBQAEIBGU0b8AvTLD9gum5wsam64Q59KGrBziHgTRHjMI # H+0FAgZf25cm+6IYEjIwMjAxMjI0MDkzOTUzLjUxWjAEgAIB9KCB1KSB0TCBzjEL # MAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1v # bmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEpMCcGA1UECxMgTWlj # cm9zb2Z0IE9wZXJhdGlvbnMgUHVlcnRvIFJpY28xJjAkBgNVBAsTHVRoYWxlcyBU # U1MgRVNOOkY4N0EtRTM3NC1EN0I5MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1T # dGFtcCBTZXJ2aWNloIIORDCCBPUwggPdoAMCAQICEzMAAAEvsacXeVaUF4cAAAAA # AS8wDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp # bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw # b3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAw # HhcNMTkxMjE5MDExNTA2WhcNMjEwMzE3MDExNTA2WjCBzjELMAkGA1UEBhMCVVMx # EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT # FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEpMCcGA1UECxMgTWljcm9zb2Z0IE9wZXJh # dGlvbnMgUHVlcnRvIFJpY28xJjAkBgNVBAsTHVRoYWxlcyBUU1MgRVNOOkY4N0Et # RTM3NC1EN0I5MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNl # MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqHxWS9UjBcPyyfTNPacR # 3IRn1Q0djsAJs5kDihsAe8PWFq7D0rVnaVFYb6bwCuz2Xfkagxd0+CyEzeFkpBZ+ # GsucX38YNmiKWFzYuEyo09ezTqsAnxg4MHqLQKDUIUJifI5i/LBcpjfEYk3T0OA9 # dZ9zMSbY/9reuatcysrkQVzdqHGsLnVz5S4AwpX3EnLMlUtKE/A8EmX4KN0wM8l/ # bgNlchh5zeAI3bF5qfUMUIjSBqommsx4vg6bUpjYBkwiAE8SShjU3sAjl7vJuQgv # z4zPeKeKNvisNOReTzrO1TDLht1zUzIp7aPah1P5AgMDb4zxwxMgaUqfsTIPY01d # TwIDAQABo4IBGzCCARcwHQYDVR0OBBYEFKaX9VGkE0WQAwOKpyipaLzmP+qWMB8G # A1UdIwQYMBaAFNVjOlyKMZDzQ3t8RhvFM2hahW1VMFYGA1UdHwRPME0wS6BJoEeG # RWh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY1Rp # bVN0YVBDQV8yMDEwLTA3LTAxLmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUH # MAKGPmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljVGltU3Rh # UENBXzIwMTAtMDctMDEuY3J0MAwGA1UdEwEB/wQCMAAwEwYDVR0lBAwwCgYIKwYB # BQUHAwgwDQYJKoZIhvcNAQELBQADggEBAHirqKW/ZKUa8kP/t1t+ggpkE7aLpgDB # yTDntOkKu3b5IDHZ1wXsm9EwI+EsJKCqPI1wlGzjRwRc9st3NkwkfNy/vcAXsvqZ # ZleDZoGMbVJzmoziOMT+fAhf4Lr+h2bn9qxTgkiUUK5RmPOp2KvXweRFVC97YfBX # SUJcdCz5Xeb0PLID1votIiTcY4Vm7sXXVbLH/l1VeKw89M/CH0ld8wP1bXvczX5l # nJyY7TeVRzgbUWKWCnFY12Baf8M71mGhbnI3r4FR12cnhwJwKNyDywHmuS08/ylV # kBDtpSqQB6qj4W4KQBQB0lERIKlHnCBI+1W8U8yM40TfoNsq1/OR+IcwggZxMIIE # WaADAgECAgphCYEqAAAAAAACMA0GCSqGSIb3DQEBCwUAMIGIMQswCQYDVQQGEwJV # UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UE # ChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQgUm9v # dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgMjAxMDAeFw0xMDA3MDEyMTM2NTVaFw0y # NTA3MDEyMTQ2NTVaMHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9u # MRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRp # b24xJjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwMIIBIjAN # BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqR0NvHcRijog7PwTl/X6f2mUa3RU # ENWlCgCChfvtfGhLLF/Fw+Vhwna3PmYrW/AVUycEMR9BGxqVHc4JE458YTBZsTBE # D/FgiIRUQwzXTbg4CLNC3ZOs1nMwVyaCo0UN0Or1R4HNvyRgMlhgRvJYR4YyhB50 # YWeRX4FUsc+TTJLBxKZd0WETbijGGvmGgLvfYfxGwScdJGcSchohiq9LZIlQYrFd # /XcfPfBXday9ikJNQFHRD5wGPmd/9WbAA5ZEfu/QS/1u5ZrKsajyeioKMfDaTgaR # togINeh4HLDpmc085y9Euqf03GS9pAHBIAmTeM38vMDJRF1eFpwBBU8iTQIDAQAB # o4IB5jCCAeIwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFNVjOlyKMZDzQ3t8 # RhvFM2hahW1VMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMAsGA1UdDwQEAwIB # hjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNX2VsuP6KJcYmjRPZSQW9fO # mhjEMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9w # a2kvY3JsL3Byb2R1Y3RzL01pY1Jvb0NlckF1dF8yMDEwLTA2LTIzLmNybDBaBggr # BgEFBQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6Ly93d3cubWljcm9zb2Z0LmNv # bS9wa2kvY2VydHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYtMjMuY3J0MIGgBgNVHSAB # Af8EgZUwgZIwgY8GCSsGAQQBgjcuAzCBgTA9BggrBgEFBQcCARYxaHR0cDovL3d3 # dy5taWNyb3NvZnQuY29tL1BLSS9kb2NzL0NQUy9kZWZhdWx0Lmh0bTBABggrBgEF # BQcCAjA0HjIgHQBMAGUAZwBhAGwAXwBQAG8AbABpAGMAeQBfAFMAdABhAHQAZQBt # AGUAbgB0AC4gHTANBgkqhkiG9w0BAQsFAAOCAgEAB+aIUQ3ixuCYP4FxAz2do6Eh # b7Prpsz1Mb7PBeKp/vpXbRkws8LFZslq3/Xn8Hi9x6ieJeP5vO1rVFcIK1GCRBL7 # uVOMzPRgEop2zEBAQZvcXBf/XPleFzWYJFZLdO9CEMivv3/Gf/I3fVo/HPKZeUqR # UgCvOA8X9S95gWXZqbVr5MfO9sp6AG9LMEQkIjzP7QOllo9ZKby2/QThcJ8ySif9 # Va8v/rbljjO7Yl+a21dA6fHOmWaQjP9qYn/dxUoLkSbiOewZSnFjnXshbcOco6I8 # +n99lmqQeKZt0uGc+R38ONiU9MalCpaGpL2eGq4EQoO4tYCbIjggtSXlZOz39L9+ # Y1klD3ouOVd2onGqBooPiRa6YacRy5rYDkeagMXQzafQ732D8OE7cQnfXXSYIghh # 2rBQHm+98eEA3+cxB6STOvdlR3jo+KhIq/fecn5ha293qYHLpwmsObvsxsvYgrRy # zR30uIUBHoD7G4kqVDmyW9rIDVWZeodzOwjmmC3qjeAzLhIp9cAvVCch98isTtoo # uLGp25ayp0Kiyc8ZQU3ghvkqmqMRZjDTu3QyS99je/WZii8bxyGvWbWu3EQ8l1Bx # 16HSxVXjad5XwdHeMMD9zOZN+w2/XU/pnR4ZOC+8z1gFLu8NoFA12u8JJxzVs341 # Hgi62jbb01+P3nSISRKhggLSMIICOwIBATCB/KGB1KSB0TCBzjELMAkGA1UEBhMC # VVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNV # BAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEpMCcGA1UECxMgTWljcm9zb2Z0IE9w # ZXJhdGlvbnMgUHVlcnRvIFJpY28xJjAkBgNVBAsTHVRoYWxlcyBUU1MgRVNOOkY4 # N0EtRTM3NC1EN0I5MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2 # aWNloiMKAQEwBwYFKw4DAhoDFQAz8JkJSlyVD2p+v+vfL2iwgg9KZKCBgzCBgKR+ # MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS # ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNVBAMT # HU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwMA0GCSqGSIb3DQEBBQUAAgUA # 446nMDAiGA8yMDIwMTIyNDA5MzU0NFoYDzIwMjAxMjI1MDkzNTQ0WjB3MD0GCisG # AQQBhFkKBAExLzAtMAoCBQDjjqcwAgEAMAoCAQACAh/FAgH/MAcCAQACAhDhMAoC # BQDjj/iwAgEAMDYGCisGAQQBhFkKBAIxKDAmMAwGCisGAQQBhFkKAwKgCjAIAgEA # AgMHoSChCjAIAgEAAgMBhqAwDQYJKoZIhvcNAQEFBQADgYEAjZNmc9O4Cjg+R7Ms # DzD3STJCpAq6Bi+Z+SUVcoktm4F0xFSQjwjSKBu6b+Do363LSflD2pV/6dJjTULz # wBC2ZkyQQIl/W76vn4TISaV/lYFhq+3HoF6PXvbPWYvaMwRtFWqGB66sUkacnAng # reZUUA/z7GaAOmhUkWc8pp6rZ6ExggMNMIIDCQIBATCBkzB8MQswCQYDVQQGEwJV # UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UE # ChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQgVGlt # ZS1TdGFtcCBQQ0EgMjAxMAITMwAAAS+xpxd5VpQXhwAAAAABLzANBglghkgBZQME # AgEFAKCCAUowGgYJKoZIhvcNAQkDMQ0GCyqGSIb3DQEJEAEEMC8GCSqGSIb3DQEJ # BDEiBCC8xLm+e31BXFogMM9TfCbqWDbW98D7XI3Q4sdpW0C7/zCB+gYLKoZIhvcN # AQkQAi8xgeowgecwgeQwgb0EIELlF5wZm+6Ce9VeDzTOWsa/W5Xfks2T4f10GPcK # EU+9MIGYMIGApH4wfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24x # EDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv # bjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTACEzMAAAEv # sacXeVaUF4cAAAAAAS8wIgQg303kY9UyMiVcgtGy3pLYEoiq2VhOtmzESh+KL0rH # KoQwDQYJKoZIhvcNAQELBQAEggEAouIldV1Bn8Rk6k+UvLs0nSvV4FYKHCGmDVyz # Yat4X9bO98n8ABpnfAn0tfjSVqx2qvC5HQzVaumlIcobBRVT9uge/+yFlutZwzTN # j235mqbVVEZQ9xlQoJlSCmoz1CWlx2MqaPoFDE9UIygGovT8HuXr95UN4J/sIWPo # Wq/ylMLiVnaRKw5wgNfkPctOdoE00n8q6FhMF36Sw6rf1+x6JVYbGfgqWookBhaS # OajAE+XyHWFG2hOc4G679/PCaqouHmW3oPcosgS/dx3X5duLOEVl8EmquczGbs/1 # XyssmmOvu/+4Wq7yqZCRxs1T0vD3AWoVEiyXz5aZZQsBOlka7A== # SIG # End signature block |