Outputs/output-cosmos.ps1
using module "..\ORCA.psm1" class cosmos : ORCAOutput { $Account=$null $Database=$null $Key=$null $Collection="ORCA" $CosmosDBContext=$null cosmos() { $this.Name="Cosmos" } RunOutput($Checks,$Collection,[ORCAConfigLevel]$AssessmentLevel) { # Make sure that we have CosmosDB module If(!$(Get-Module -ListAvailable "CosmosDB" -ErrorAction:SilentlyContinue)) { Throw "The Cosmos output requires the unofficial CosmosDB module to be installed. Run Install-Module CosmosDB." } # Check that the required params are set If($null -eq $this.Account -or $null -eq $this.Database -or $null -eq $this.key) { Throw "The Cosmos output requires the Account, Database, and Key options to be set. Review the documentation for more information." } # Check key type we got passed If($this.Key.GetType() -eq [String]) { $this.Key = $(ConvertTo-SecureString -String $this.Key -AsPlainText -Force) } ElseIf($this.Key.GetType() -ne [SecureString]) { Throw "The Cosmos option Key must either be a string or a secure string." } # Try set the Cosmos Database Context if($null -eq $this.CosmosDBContext) { try { $this.CosmosDBContext = New-CosmosDbContext -Account $this.Account -Database $this.Database -Key $this.Key } catch { Throw "Failed to set the Cosmos DB context. Ensure that the Account, Database, and Key are correct." } } $Tenant = $(($Collection["AcceptedDomains"] | Where-Object {$_.InitialDomain -eq $True}).DomainName -split '\.')[0] $ID = "$($tenant)-$(Get-Date -Format 'yyyyMMddHHmmss')" $Result = New-Object -TypeName PSObject -Property @{ id=$ID ResultDate=$(Get-Date -format s) Tenant=$Tenant Results=$Checks } $r = $null try { $JSON = $($Result | ConvertTo-Json -Depth 100) $r = New-CosmosDbDocument -Context $this.CosmosDBContext -CollectionId $this.Collection -DocumentBody $JSON -PartitionKey $ID $this.Completed = $True } catch { Throw "Failed to insert Cosmos DB document, check that all options are set correctly, there is a collection called $($this.Collection) with a partition key of id, and that you have connectivity to Cosmos" } $this.Result = $r } } # SIG # Begin signature block # MIImVwYJKoZIhvcNAQcCoIImSDCCJkQCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDBCnAV4QUsIZdg # C6UawcGFvCGXwYsx0RI8gzn/WTrZXKCCC6YwggULMIID86ADAgECAhMzAAAFwlgA # 087+f22BAAEAAAXCMA0GCSqGSIb3DQEBCwUAMHkxCzAJBgNVBAYTAlVTMRMwEQYD # VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xIzAhBgNVBAMTGk1pY3Jvc29mdCBUZXN0aW5nIFBD # QSAyMDEwMB4XDTIzMDkyMTE4MTE0M1oXDTI0MDkxODE4MTE0M1owfDELMAkGA1UE # BhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAc # BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdQ29kZSBTaWdu # IFRlc3QgKERPIE5PVCBUUlVTVCkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK # AoIBAQD5++3gGQURCZ5RFx3f6hxBcryv+l9JDcB/ue8Nf4lxtCZ3BYkCuFTxGzQs # lXh4SBgmfcoDr8X9mqmYlAhGlQn5WdhIlIjY7cyO+Jj9qH6ir7kKmqnxX5UMl2e8 # 1Xd78imtyJHeK3X/mReHaJItcbdObmRrJeq1cJm2qgiadjJK9aFPIGTd/2jgBIMc # G1LVd+lHU7fPU+wlvJshXoo7rj82PhSGoMqTN4s30oaUlIpKwhyn6eO7UIlD77Ez # NikN8J35LSlUGAWR7UW/qBrlVM9JURkIsAFfHUdZbsCu0wB3dHMBru+oDim+X/R9 # ko+B0F3Me40uod5i5D8m8HqIazstAgMBAAGjggGHMIIBgzAOBgNVHQ8BAf8EBAMC # B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwHQYDVR0OBBYEFJfRokzB8QH6nZ8MnJQI # ahPRxmYhMEUGA1UdEQQ+MDykOjA4MR4wHAYDVQQLExVNaWNyb3NvZnQgQ29ycG9y # YXRpb24xFjAUBgNVBAUTDTIzMDA3Mis1MDE1NjYwHwYDVR0jBBgwFoAUv2Wiq291 # o05FllcFzzmH9MAVHBwwXAYDVR0fBFUwUzBRoE+gTYZLaHR0cDovL3d3dy5taWNy # b3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIwVGVzdGluZyUyMFBDQSUy # MDIwMTAoMSkuY3JsMGkGCCsGAQUFBwEBBF0wWzBZBggrBgEFBQcwAoZNaHR0cDov # L3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBUZXN0 # aW5nJTIwUENBJTIwMjAxMCgxKS5jcnQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0B # AQsFAAOCAQEAMmCxC2x6fhzNJHnCk9zTlYQo0e/MzR5BHxJul6XfH7L2K+EOr+Wv # wiAvkkA47zgupON7XKs+NQFkTQAAw/tgzpZ95d2KyRUxbwfik44uLSqvgVNlSDSk # Ant8qiTj3+EhxYhcHQJwA4vz4Ow+rLIQOvPIHB0cOj1bJ/Z0olgCXfo/oORtXQe3 # 9M6dO7XvQ2i0SRvnfn95hodbpPWDmSvyHvZU5rHVLTBwyh9oTQ4v30P8eeAONxp6 # Sp6X7hLDy14Q0L4nfBeRFdf9M/DK6LjJ3bUWlYcqRpFwqMjAJQkW8RMtWuV8uSgD # PAR/tnqsaUFRAILpmfqPUwgXIVGT0/89iDCCBpMwggR7oAMCAQICEzMAAAAtNXpG # iMkHcdgAAAAAAC0wDQYJKoZIhvcNAQELBQAwgZAxCzAJBgNVBAYTAlVTMRMwEQYD # VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xOjA4BgNVBAMTMU1pY3Jvc29mdCBUZXN0aW5nIFJv # b3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTAwHhcNMjAxMjEwMjA0MzIwWhcN # MzUwNjE3MjEwNDExWjB5MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3Rv # bjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0 # aW9uMSMwIQYDVQQDExpNaWNyb3NvZnQgVGVzdGluZyBQQ0EgMjAxMDCCASIwDQYJ # KoZIhvcNAQEBBQADggEPADCCAQoCggEBAL88YIGrvuz/1xdj8qZC0RNinLAXzrpG # GnsiLlVzmlS5xtTRypj+d0cNjp3wXsz4VO/yzyrUYvGpNAoE18UFhvIQ9U3Tlghm # hdsCfRjc4nojp5opXa55GM8MY/Aa/4GpqUM/qQu5UfGzSDr8RC5fEcVWOv/KDs2I # CMH9x9X1Pu/qThtyiyO9RTeeH3DBp8m4IHPt82w9iyEFz3cS/qHcB+kNW3gJbDJV # EEfQN8jH9/pz/kY05FYWqDdkU9Y1+8OAto62hpGhENbBSvbjetQRCrLeLp4Ql+CB # rhJdiAFdzKTEKFKcYPAK5oivS+lXiuyjDzceKfZdIdPX2l0OyU7bjW0CAwEAAaOC # AfowggH2MA4GA1UdDwEB/wQEAwIBhjASBgkrBgEEAYI3FQEEBQIDAQABMCMGCSsG # AQQBgjcVAgQWBBTqn18zttBfnq3rLabBArtAOMvntTAdBgNVHQ4EFgQUv2Wiq291 # o05FllcFzzmH9MAVHBwwVAYDVR0gBE0wSzBJBgRVHSAAMEEwPwYIKwYBBQUHAgEW # M2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9SZXBvc2l0b3J5 # Lmh0bTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTAPBgNVHRMBAf8EBTADAQH/ # MB8GA1UdIwQYMBaAFKMBBH4wiDPruTGcyuuFdmf8ZbTRMFkGA1UdHwRSMFAwTqBM # oEqGSGh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01p # Y1Rlc1Jvb0NlckF1dF8yMDEwLTA2LTE3LmNybDCBjQYIKwYBBQUHAQEEgYAwfjBN # BggrBgEFBQcwAoZBaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9N # aWNUZXNSb29DZXJBdXRfMjAxMC0wNi0xNy5jcnQwLQYIKwYBBQUHMAGGIWh0dHA6 # Ly9vbmVvY3NwLm1pY3Jvc29mdC5jb20vb2NzcDANBgkqhkiG9w0BAQsFAAOCAgEA # J7TQhbKezA+kKlNz1W3a1zEAyPb/Y8j2ARG1GJLa3LT5rybo/Ep5vcFnsIgDeWXP # NTUFWI7igwaW9bp+EllQm+Dw1T2dCfO7Rs2HvXTid9BGBnoiGmkrZCy5izmADOqC # JyKiMFciJNkhP6tpRrfDr8HGXrzZj5FWI5Op8iYuRHb0unIj0ZlvW0VkU+KVlPG2 # SEC/d/CxOJRzkAIsawEIlnrOUs6dlPORNJy3Wg6+cPyNvCf2dfuM1tTWqNaa1Qjq # q6LJ6DVH1X9ZL7MH1txWNpdT4gGKfLBsjuexms7V3QaBDgXAy3nX3D62vfjS3RBd # +jZBNIPvXW6JBWOysYVCfFqTIgpjeMo/SyhS70G3LRjCSWPRMBxYn5tqYGommnyh # dRss/ja7icxBIKcrDKP3/QFQUP6gnT0EBhFqd0AyGnn+LbPUE8fkZgyggQzExS4B # ZpoW7VGNCVoy5Cp+7KM/yyHA1JXv6eU4hQ+FYX2ZwHL2EB137rJZ8qfsroVswEpw # EDZziDun3NSRSMJA5HDPpP07KXwGo8x6KEgMF5Kzlq40Q1esCNGMzFR6xMkNIWeT # ZyF2y95a05Dj439zQbtZ2kjRGsknbkrQ2xVY1d016BDRJ2YroCSmEsJoc6GBzNZ4 # IqTeazXaiYiubpKehPCw84t5ef+13LSUGN/mYBwyaLIxghoHMIIaAwIBATCBkDB5 # MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVk # bW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSMwIQYDVQQDExpN # aWNyb3NvZnQgVGVzdGluZyBQQ0EgMjAxMAITMwAABcJYANPO/n9tgQABAAAFwjAN # BglghkgBZQMEAgEFAKCBsDAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgor # BgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgvTK9bXzC # Z0jahkGtyVFK5COM8IUSxP4+TBP8AbpkcaQwRAYKKwYBBAGCNwIBDDE2MDSgFIAS # AE0AaQBjAHIAbwBzAG8AZgB0oRyAGmh0dHBzOi8vd3d3Lm1pY3Jvc29mdC5jb20g # MA0GCSqGSIb3DQEBAQUABIIBALJhVqBotCjtmSZgSgud/HH9CsXytUHOBx0LQiVO # hzBxdMLtPpZ8WGKO7WIbrckzHDhf0tO+mO29YQr+LJGzPzCZ6hY5FvZIig52CVrP # f+ml3x7L46jhbWAvDoDjCVrR6B3QxOtvZZjeKbwzJStxlZ6xPzzaMz9qAf1O2eRv # UCln4qTGazGu0fVPX9uUMh5UIDW39R6iVSee9I+ppgyi09bBSDF4BatRH+nGaojz # 80Bsqyv/4OfyMpvCf4TCYWJV3f90LATUfqyN4MKMO/aRtLB0MHQD3J8ZXwfabk6f # uF7nLGfOjsVD1HRG5qU0EKsm6GVdGoyaQCj5qX7b21fxPTShgheUMIIXkAYKKwYB # BAGCNwMDATGCF4Awghd8BgkqhkiG9w0BBwKgghdtMIIXaQIBAzEPMA0GCWCGSAFl # AwQCAQUAMIIBUgYLKoZIhvcNAQkQAQSgggFBBIIBPTCCATkCAQEGCisGAQQBhFkK # AwEwMTANBglghkgBZQMEAgEFAAQg1fo1PBVR9/aQCv7oCNJq4tSDYup8bYKlapY2 # ew8ue8cCBmUoeXeeGxgTMjAyMzExMTQyMjMwMjYuOTY4WjAEgAIB9KCB0aSBzjCB # yzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1Jl # ZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UECxMc # TWljcm9zb2Z0IEFtZXJpY2EgT3BlcmF0aW9uczEnMCUGA1UECxMeblNoaWVsZCBU # U1MgRVNOOjhEMDAtMDVFMC1EOTQ3MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1T # dGFtcCBTZXJ2aWNloIIR6jCCByAwggUIoAMCAQICEzMAAAHNVQcq58rBmR0AAQAA # Ac0wDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp # bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw # b3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAw # HhcNMjMwNTI1MTkxMjA1WhcNMjQwMjAxMTkxMjA1WjCByzELMAkGA1UEBhMCVVMx # EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT # FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UECxMcTWljcm9zb2Z0IEFtZXJp # Y2EgT3BlcmF0aW9uczEnMCUGA1UECxMeblNoaWVsZCBUU1MgRVNOOjhEMDAtMDVF # MC1EOTQ3MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNlMIIC # IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0zgi1Uto5hFjqsc8oFu7OmC5 # ptvaY7wPgoelS+x5Uy/MlLd2dCiM02tjvx76/2ic2tahFZJauzT4jq6QQCM+uey1 # ccBHOAcSYr+gevGvA0IhelgBRTWit1h4u038UZ6i6IYDc+72T8pWUF+/ea/DEL1+ # ersI4/0eIV50ezWuC5buJlrJpf8KelSagrsWZ7vY1+KmlMZ4HK3xU+/s75VwpcC2 # odp9Hhip2tXTozoMitNI2Kub7c6+TWfqlcamsPQ5hLI/b36mJH0Ga8tiTucJoF1+ # /TsezyzFH6k+PvMOSZHUjKF99m9Q+nAylkVL+ao4mIeKP2vXoRPygJFFpUj22w0f # 2hpzySwBj8tqgPe2AgXniCY0SlEYHT5YROTuOpDo7vJ2CZyL8W7gtkKdo8cHOqw/ # TOj73PLGSHENdGCmVWCrPeGD0pZIcF8LbW0WPo2Z0Ig5tmRYx/Ej3tSOhEXH3mF9 # cwmIxM3cFnJvnxWZpSQPR0Fu2SQJjhAjjbXytvBERBBOcs6vk90DFT4YhHxIYHGL # IdA3qFomBrA4ihLkvhRJTDMk+OevlNmUWtoW0UPe0HG72gHejlUC6d00KjRLtHrO # WatMINggA3/kCkEf2OvnxoJPaiTSVtzLu+9SrYbj5TXyrLNAdc4dMWtcjeKgt86B # PVKuk/K+xt/zrUhZrOMCAwEAAaOCAUkwggFFMB0GA1UdDgQWBBShk/mmNmmawQCV # SGYeZInKJHzVmjAfBgNVHSMEGDAWgBSfpxVdAF5iXYP05dJlpxtTNRnpcjBfBgNV # HR8EWDBWMFSgUqBQhk5odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2Ny # bC9NaWNyb3NvZnQlMjBUaW1lLVN0YW1wJTIwUENBJTIwMjAxMCgxKS5jcmwwbAYI # KwYBBQUHAQEEYDBeMFwGCCsGAQUFBzAChlBodHRwOi8vd3d3Lm1pY3Jvc29mdC5j # b20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMFRpbWUtU3RhbXAlMjBQQ0ElMjAy # MDEwKDEpLmNydDAMBgNVHRMBAf8EAjAAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMI # MA4GA1UdDwEB/wQEAwIHgDANBgkqhkiG9w0BAQsFAAOCAgEAUqht6aSiFPovxDMM # LaLaMZyn8NEl/909ehD248LACJljmeZywG2raKZfMxWPONYG+Xoi9Y/NYeA4hIl7 # fgSYByANiyISoUrHHe/aDG6+t9Q4hKn/V+S2Ud1dyiGLLVNyu3+Q5O7W6G7h7vun # 2DP4DseOLIEVO2EPmE2B77/JOJjJ7omoSUZVPxdr2r3B1OboV4tO/CuJ0kQD51sl # +4FYuolTAQVBePNt6Dxc5xHB7qe1TRkbRntcb55THdQrssXLTPHf6Ksk7McJSQDO # Rf5Q8ZxFqEswJGndZ1r5GgHjFe/t/SKV4bn/Rt8W33yosgZ493EHogOEsUsAnZ8d # NEQZV0uq/bRg2v6PUUtNRTgAcypD+QgQ6ZuMKSnSFO+CrQR9rBOUGGJ+5YmFma9n # /1PoIU5nThDj5FxHF/NR+HUSVNvE4/4FGXcC/NcWofCp/nAe7zPx7N/yfLRdd2Tz # /vDbV977uDa3IRwyWIIzovtSbkn/uI6Rf6RBD16fQLrIs5kppASuIlU+zcFbUZ0t # bbPKgBhxj4Nhz2uG9rvZnrnlKKjVbTIW7piNcvnfWZE4TVwV89miLU9gvfQzN096 # mKgFJrylK8lUqTC1abHuI3uVjelVZQgxSlhUR9tNmMRFVrGeW2jfQmqgmwktBGu7 # PThS2hDOXzZ/ZubOvZQ/3pHFtqkwggdxMIIFWaADAgECAhMzAAAAFcXna54Cm0mZ # AAAAAAAVMA0GCSqGSIb3DQEBCwUAMIGIMQswCQYDVQQGEwJVUzETMBEGA1UECBMK # V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0 # IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0 # ZSBBdXRob3JpdHkgMjAxMDAeFw0yMTA5MzAxODIyMjVaFw0zMDA5MzAxODMyMjVa # MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS # ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNVBAMT # HU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwMIICIjANBgkqhkiG9w0BAQEF # AAOCAg8AMIICCgKCAgEA5OGmTOe0ciELeaLL1yR5vQ7VgtP97pwHB9KpbE51yMo1 # V/YBf2xK4OK9uT4XYDP/XE/HZveVU3Fa4n5KWv64NmeFRiMMtY0Tz3cywBAY6GB9 # alKDRLemjkZrBxTzxXb1hlDcwUTIcVxRMTegCjhuje3XD9gmU3w5YQJ6xKr9cmmv # Haus9ja+NSZk2pg7uhp7M62AW36MEBydUv626GIl3GoPz130/o5Tz9bshVZN7928 # jaTjkY+yOSxRnOlwaQ3KNi1wjjHINSi947SHJMPgyY9+tVSP3PoFVZhtaDuaRr3t # pK56KTesy+uDRedGbsoy1cCGMFxPLOJiss254o2I5JasAUq7vnGpF1tnYN74kpEe # HT39IM9zfUGaRnXNxF803RKJ1v2lIH1+/NmeRd+2ci/bfV+AutuqfjbsNkz2K26o # ElHovwUDo9Fzpk03dJQcNIIP8BDyt0cY7afomXw/TNuvXsLz1dhzPUNOwTM5TI4C # vEJoLhDqhFFG4tG9ahhaYQFzymeiXtcodgLiMxhy16cg8ML6EgrXY28MyTZki1ug # poMhXV8wdJGUlNi5UPkLiWHzNgY1GIRH29wb0f2y1BzFa/ZcUlFdEtsluq9QBXps # xREdcu+N+VLEhReTwDwV2xo3xwgVGD94q0W29R6HXtqPnhZyacaue7e3PmriLq0C # AwEAAaOCAd0wggHZMBIGCSsGAQQBgjcVAQQFAgMBAAEwIwYJKwYBBAGCNxUCBBYE # FCqnUv5kxJq+gpE8RjUpzxD/LwTuMB0GA1UdDgQWBBSfpxVdAF5iXYP05dJlpxtT # NRnpcjBcBgNVHSAEVTBTMFEGDCsGAQQBgjdMg30BATBBMD8GCCsGAQUFBwIBFjNo # dHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5o # dG0wEwYDVR0lBAwwCgYIKwYBBQUHAwgwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBD # AEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU1fZW # y4/oolxiaNE9lJBb186aGMQwVgYDVR0fBE8wTTBLoEmgR4ZFaHR0cDovL2NybC5t # aWNyb3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljUm9vQ2VyQXV0XzIwMTAt # MDYtMjMuY3JsMFoGCCsGAQUFBwEBBE4wTDBKBggrBgEFBQcwAoY+aHR0cDovL3d3 # dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0y # My5jcnQwDQYJKoZIhvcNAQELBQADggIBAJ1VffwqreEsH2cBMSRb4Z5yS/ypb+pc # FLY+TkdkeLEGk5c9MTO1OdfCcTY/2mRsfNB1OW27DzHkwo/7bNGhlBgi7ulmZzpT # Td2YurYeeNg2LpypglYAA7AFvonoaeC6Ce5732pvvinLbtg/SHUB2RjebYIM9W0j # VOR4U3UkV7ndn/OOPcbzaN9l9qRWqveVtihVJ9AkvUCgvxm2EhIRXT0n4ECWOKz3 # +SmJw7wXsFSFQrP8DJ6LGYnn8AtqgcKBGUIZUnWKNsIdw2FzLixre24/LAl4FOmR # sqlb30mjdAy87JGA0j3mSj5mO0+7hvoyGtmW9I/2kQH2zsZ0/fZMcm8Qq3UwxTSw # ethQ/gpY3UA8x1RtnWN0SCyxTkctwRQEcb9k+SS+c23Kjgm9swFXSVRk2XPXfx5b # RAGOWhmRaw2fpCjcZxkoJLo4S5pu+yFUa2pFEUep8beuyOiJXk+d0tBMdrVXVAmx # aQFEfnyhYWxz/gq77EFmPWn9y8FBSX5+k77L+DvktxW/tM4+pTFRhLy/AsGConsX # HRWJjXD+57XQKBqJC4822rpM+Zv/Cuk0+CQ1ZyvgDbjmjJnW4SLq8CdCPSWU5nR0 # W2rRnj7tfqAxM328y+l7vzhwRNGQ8cirOoo6CGJ/2XBjU02N7oJtpQUQwXEGahC0 # HVUzWLOhcGbyoYIDTTCCAjUCAQEwgfmhgdGkgc4wgcsxCzAJBgNVBAYTAlVTMRMw # EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVN # aWNyb3NvZnQgQ29ycG9yYXRpb24xJTAjBgNVBAsTHE1pY3Jvc29mdCBBbWVyaWNh # IE9wZXJhdGlvbnMxJzAlBgNVBAsTHm5TaGllbGQgVFNTIEVTTjo4RDAwLTA1RTAt # RDk0NzElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2VydmljZaIjCgEB # MAcGBSsOAwIaAxUAaKn3ptiis7kWYyEmInxqJVTncgSggYMwgYCkfjB8MQswCQYD # VQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEe # MBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYDVQQDEx1NaWNyb3Nv # ZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDANBgkqhkiG9w0BAQsFAAIFAOj9zqcwIhgP # MjAyMzExMTQxMDQ3MDNaGA8yMDIzMTExNTEwNDcwM1owdDA6BgorBgEEAYRZCgQB # MSwwKjAKAgUA6P3OpwIBADAHAgEAAgIPfDAHAgEAAgIcOzAKAgUA6P8gJwIBADA2 # BgorBgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMCoAowCAIBAAIDB6EgoQowCAIB # AAIDAYagMA0GCSqGSIb3DQEBCwUAA4IBAQB1tz6/R5igjFinmRdECXao81pHpXKv # FaOLZ86ALdaL/Fwu4a+MBRwrpyrhDk9E+XKClP2ZLThIhBU8x30y67UgUGp/hndx # dXHKZUe/D45+VtmMMtt/qZXy8i8oKs+9HR02giANaMOn8S+PmszqlNpDwjs4uMT7 # 6r+NNXhcur8cZWWAPPLCQnt7VTLWsqEZ4HOumEyBZfKLb9XjwwuUgFj4dweok9uk # B26gXDb+kjrNu9DvpR96dWTdFOrlXgMAKcr5LQ1L6ywuY/GhjNuQnwn5tkTVA+L0 # dUCQZv//Zawf8AkxtrizgY1+f3ma+zVblOs219ZmtCvRGiQJo2L87g7GMYIEDTCC # BAkCAQEwgZMwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAO # BgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEm # MCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTACEzMAAAHNVQcq # 58rBmR0AAQAAAc0wDQYJYIZIAWUDBAIBBQCgggFKMBoGCSqGSIb3DQEJAzENBgsq # hkiG9w0BCRABBDAvBgkqhkiG9w0BCQQxIgQgQ5OMuIUJM79TM0xHixeAE6TBYUkT # dnNg2FQg0z4GJIEwgfoGCyqGSIb3DQEJEAIvMYHqMIHnMIHkMIG9BCDiZqX4rVa9 # T2RoL0xHU6UrVHOhjYeyza6EASsKVEaZCjCBmDCBgKR+MHwxCzAJBgNVBAYTAlVT # MRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQK # ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1l # LVN0YW1wIFBDQSAyMDEwAhMzAAABzVUHKufKwZkdAAEAAAHNMCIEIFtPHzsF4yIy # iPnaUkmwm60MWFNlRy/eAD9FD4HdsqcGMA0GCSqGSIb3DQEBCwUABIICAKnsY992 # cTuxDXSDQGU7SHFuPVJSDRlLeoWjTyRh2NPix7EeiyU7EcfOt/JMFbEofrZS46se # krYBuO9lkIQAcctu6/vecxKTQXmeNf4l2sx7LmuaOd0AgjFDNy3yhR3WZBDSckDq # zVUKOwTBropoKOllE+uOuzuYuYQ1l0GI64LaucPTlZCbZ/diGvXHs+ZvkXEtWNr7 # 9EIBUVr9wVXQDMWZ7yyGntJXY+ln+WlCI+VSGfD5UAIugUrNyPYGh4HgxkMe/sn3 # mUVFasQA6nGXoCDTpSDSoDhBxrR2FkUMKyhxYdA4/yyY52hwYtdH9b+OVMPKxHHk # CJ32TWhYnfdra1g72NmCmSc3Mi7FWVyiWF8n+N8WfZV1ktwYBf16yla0mNQdEFAr # EmIbGHDtDyw4+sAr7J6cNNqQn0/Nv4jZHtduNdFAP6/CGP077kkqUVHmgJHpoVXb # SqxnY3S19jhltCpj4mItQ2b1gywNMxPgtuCHpeKgMpvi6AeG1T2q0yYf/AR9NFr8 # 4N8ElwPxNqe9Ez1dmxOVRwyS5bM/Ox0/NGyppsaYky4kCLwbQQud1L8jxFeUsn8h # TI+c7owgQI9XiZmkZwtxYXrTtnBAQJ5SKbxmErE9GXQkdXMn5UZiACLzRENWMPim # O8SK3XNcGLtKd1kOxnpcnAyFftGcbujcbynh # SIG # End signature block |