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 # MIImaQYJKoZIhvcNAQcCoIImWjCCJlYCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDBCnAV4QUsIZdg # C6UawcGFvCGXwYsx0RI8gzn/WTrZXKCCC7UwggUaMIIEAqADAgECAhMzAAAFwWtu # fQG/Bj+tAAEAAAXBMA0GCSqGSIb3DQEBCwUAMHkxCzAJBgNVBAYTAlVTMRMwEQYD # VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xIzAhBgNVBAMTGk1pY3Jvc29mdCBUZXN0aW5nIFBD # QSAyMDEwMB4XDTIzMDkyMTE4MTE0MloXDTI0MDkxODE4MTE0MlowfDELMAkGA1UE # BhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAc # BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdQ29kZSBTaWdu # IFRlc3QgKERPIE5PVCBUUlVTVCkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK # AoIBAQCjZPhOmWqhsCZshcxkJdnaUWYvbT72V/l1hgVjHnd6h5WrFUenJ0EswFmi # f0kY9NnUq0R/WB1mo0kIjRgqxnVUdCbaHEl7Dl2yq2Qa086tf/zbRBXo5kitssgq # zzQr/pvNTM93zH5SVcWsRCOFyLyEgR2foSzdC83bUpaSNT9YskbkiWUD5S4nyLBi # HRMP2fshdykl6q0XP2RM0020vv93miIrnc69ZmQak1KmZlwWgWtK9uSc/3m3T1sk # 9piA5LP2csBfgi37qtGuuyh+2D3e9Ds25JutIvlOSFVrWVrQlYhvvyztwzbrAlbG # ZGivyw6zO4S59daxxsRUWFDWPKtFAgMBAAGjggGWMIIBkjAOBgNVHQ8BAf8EBAMC # B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwHQYDVR0OBBYEFGByvk1Je5Cl5oP8kQWu # IV7lpwtVMFQGA1UdEQRNMEukSTBHMS0wKwYDVQQLEyRNaWNyb3NvZnQgSXJlbGFu # ZCBPcGVyYXRpb25zIExpbWl0ZWQxFjAUBgNVBAUTDTIzMDA3Mis1MDE1NjcwHwYD # VR0jBBgwFoAUv2Wiq291o05FllcFzzmH9MAVHBwwXAYDVR0fBFUwUzBRoE+gTYZL # aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIw # VGVzdGluZyUyMFBDQSUyMDIwMTAoMSkuY3JsMGkGCCsGAQUFBwEBBF0wWzBZBggr # BgEFBQcwAoZNaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jZXJ0cy9N # aWNyb3NvZnQlMjBUZXN0aW5nJTIwUENBJTIwMjAxMCgxKS5jcnQwDAYDVR0TAQH/ # BAIwADANBgkqhkiG9w0BAQsFAAOCAQEAntepJCM1sNEpjz+qB6VNV+W3+m4tLLA/ # 3S+8iay6i7OOndw7+QZ18l0aYaVzBTUXkCFARqYCCoXNOWdQ5QODJpUgdcOjDCK6 # X+/EPOx4jh0nLMTnJrwg0LGWpBEOv+rG+kR5Aoy3NG1NAbNaGcGl10wlpuMDjOFO # GVDTYqBM8XsgtmnekyUzmWxfzdAN532ABD+NwOy35LdrBJbsjIARh8ydZA8qeuBV # IKVngA/JGGx55N9QsbilyKVipuL+kxZJb1qYXusnqNufi8MEU3vgwfQFjVtj3k13 # R4H5vbHaHc0arlodPjhRrBcAAl0di6Lo+SI8J96X48GZUeC8iud24TCCBpMwggR7 # oAMCAQICEzMAAAAtNXpGiMkHcdgAAAAAAC0wDQYJKoZIhvcNAQELBQAwgZAxCzAJ # BgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25k # MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xOjA4BgNVBAMTMU1pY3Jv # c29mdCBUZXN0aW5nIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTAwHhcN # MjAxMjEwMjA0MzIwWhcNMzUwNjE3MjEwNDExWjB5MQswCQYDVQQGEwJVUzETMBEG # A1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWlj # cm9zb2Z0IENvcnBvcmF0aW9uMSMwIQYDVQQDExpNaWNyb3NvZnQgVGVzdGluZyBQ # Q0EgMjAxMDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL88YIGrvuz/ # 1xdj8qZC0RNinLAXzrpGGnsiLlVzmlS5xtTRypj+d0cNjp3wXsz4VO/yzyrUYvGp # NAoE18UFhvIQ9U3TlghmhdsCfRjc4nojp5opXa55GM8MY/Aa/4GpqUM/qQu5UfGz # SDr8RC5fEcVWOv/KDs2ICMH9x9X1Pu/qThtyiyO9RTeeH3DBp8m4IHPt82w9iyEF # z3cS/qHcB+kNW3gJbDJVEEfQN8jH9/pz/kY05FYWqDdkU9Y1+8OAto62hpGhENbB # SvbjetQRCrLeLp4Ql+CBrhJdiAFdzKTEKFKcYPAK5oivS+lXiuyjDzceKfZdIdPX # 2l0OyU7bjW0CAwEAAaOCAfowggH2MA4GA1UdDwEB/wQEAwIBhjASBgkrBgEEAYI3 # FQEEBQIDAQABMCMGCSsGAQQBgjcVAgQWBBTqn18zttBfnq3rLabBArtAOMvntTAd # BgNVHQ4EFgQUv2Wiq291o05FllcFzzmH9MAVHBwwVAYDVR0gBE0wSzBJBgRVHSAA # MEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMv # RG9jcy9SZXBvc2l0b3J5Lmh0bTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTAP # BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKMBBH4wiDPruTGcyuuFdmf8ZbTR # MFkGA1UdHwRSMFAwTqBMoEqGSGh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kv # Y3JsL3Byb2R1Y3RzL01pY1Rlc1Jvb0NlckF1dF8yMDEwLTA2LTE3LmNybDCBjQYI # KwYBBQUHAQEEgYAwfjBNBggrBgEFBQcwAoZBaHR0cDovL3d3dy5taWNyb3NvZnQu # Y29tL3BraS9jZXJ0cy9NaWNUZXNSb29DZXJBdXRfMjAxMC0wNi0xNy5jcnQwLQYI # KwYBBQUHMAGGIWh0dHA6Ly9vbmVvY3NwLm1pY3Jvc29mdC5jb20vb2NzcDANBgkq # hkiG9w0BAQsFAAOCAgEAJ7TQhbKezA+kKlNz1W3a1zEAyPb/Y8j2ARG1GJLa3LT5 # rybo/Ep5vcFnsIgDeWXPNTUFWI7igwaW9bp+EllQm+Dw1T2dCfO7Rs2HvXTid9BG # BnoiGmkrZCy5izmADOqCJyKiMFciJNkhP6tpRrfDr8HGXrzZj5FWI5Op8iYuRHb0 # unIj0ZlvW0VkU+KVlPG2SEC/d/CxOJRzkAIsawEIlnrOUs6dlPORNJy3Wg6+cPyN # vCf2dfuM1tTWqNaa1Qjqq6LJ6DVH1X9ZL7MH1txWNpdT4gGKfLBsjuexms7V3QaB # DgXAy3nX3D62vfjS3RBd+jZBNIPvXW6JBWOysYVCfFqTIgpjeMo/SyhS70G3LRjC # SWPRMBxYn5tqYGommnyhdRss/ja7icxBIKcrDKP3/QFQUP6gnT0EBhFqd0AyGnn+ # LbPUE8fkZgyggQzExS4BZpoW7VGNCVoy5Cp+7KM/yyHA1JXv6eU4hQ+FYX2ZwHL2 # EB137rJZ8qfsroVswEpwEDZziDun3NSRSMJA5HDPpP07KXwGo8x6KEgMF5Kzlq40 # Q1esCNGMzFR6xMkNIWeTZyF2y95a05Dj439zQbtZ2kjRGsknbkrQ2xVY1d016BDR # J2YroCSmEsJoc6GBzNZ4IqTeazXaiYiubpKehPCw84t5ef+13LSUGN/mYBwyaLIx # ghoKMIIaBgIBATCBkDB5MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3Rv # bjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0 # aW9uMSMwIQYDVQQDExpNaWNyb3NvZnQgVGVzdGluZyBQQ0EgMjAxMAITMwAABcFr # bn0BvwY/rQABAAAFwTANBglghkgBZQMEAgEFAKCBsDAZBgkqhkiG9w0BCQMxDAYK # KwYBBAGCNwIBBDAcBgorBgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG # 9w0BCQQxIgQgvTK9bXzCZ0jahkGtyVFK5COM8IUSxP4+TBP8AbpkcaQwRAYKKwYB # BAGCNwIBDDE2MDSgFIASAE0AaQBjAHIAbwBzAG8AZgB0oRyAGmh0dHBzOi8vd3d3 # Lm1pY3Jvc29mdC5jb20gMA0GCSqGSIb3DQEBAQUABIIBACdM7N1Qrlq5t0u6t5Ss # qvk1y6E+JG02Wfj9E/PypFRVu83xLAvYrtp5oJYW+tSP6Dtho525O0Q2Neir1PDa # qxkzyGQIFxlv0jU/Irq/R4TiuUG1V9gvgHqUl0Dx68yGtKQFrnubc/Djr3OLzbZA # hDFtRPIVRh/rW7mvBYamH1fUdVqNYbSiuyqFzUBgyFpSFu7A6JKW1pgnCpbA1z62 # 19H1NRaJVhobXFCl8xB20oUsJ7eqJCbrANmHF/hym//BB/GBDrV8JgTHZzcS0u8c # JMlz8me6St83/TLxZxL7GwsCF/63bXl+rmEdHL3qmShWvdnLqiVB85FLI2MLZpXL # evOhgheXMIIXkwYKKwYBBAGCNwMDATGCF4Mwghd/BgkqhkiG9w0BBwKgghdwMIIX # bAIBAzEPMA0GCWCGSAFlAwQCAQUAMIIBUgYLKoZIhvcNAQkQAQSgggFBBIIBPTCC # ATkCAQEGCisGAQQBhFkKAwEwMTANBglghkgBZQMEAgEFAAQgV5AoKFYB7Y1nl975 # t6T0biS7I3Pgs4I6Wh1430LVZ2cCBmVWwtS4fBgTMjAyMzEyMDcyMDA2MjQuNzQ4 # WjAEgAIB9KCB0aSBzjCByzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0 # b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh # dGlvbjElMCMGA1UECxMcTWljcm9zb2Z0IEFtZXJpY2EgT3BlcmF0aW9uczEnMCUG # A1UECxMeblNoaWVsZCBUU1MgRVNOOkE0MDAtMDVFMC1EOTQ3MSUwIwYDVQQDExxN # aWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNloIIR7TCCByAwggUIoAMCAQICEzMA # AAHWJ2n/ci1WyK4AAQAAAdYwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMx # EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT # FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUt # U3RhbXAgUENBIDIwMTAwHhcNMjMwNTI1MTkxMjM0WhcNMjQwMjAxMTkxMjM0WjCB # yzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1Jl # ZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UECxMc # TWljcm9zb2Z0IEFtZXJpY2EgT3BlcmF0aW9uczEnMCUGA1UECxMeblNoaWVsZCBU # U1MgRVNOOkE0MDAtMDVFMC1EOTQ3MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1T # dGFtcCBTZXJ2aWNlMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAzyzN # jpvK+bt33GwxDl8nSbW5FuVN+ChWn7QvvEMjaqZTCM0kwtU6BNM3MHkArzyH6WLc # jwd47enz0aa74cApLFMPadDn5mc1jw75LeNAVErbvNd0Ja5aEXaZS89saZNvYyDm # ePqwWymmZAT2eEeC10IZJB53tGP2IfOWajDEWjFpATOp1MFeWg4sF6nRPScpdItW # lmGwqs8AUXTewk5QCcayeO6L97n/5RYPYZ1UHKkGIEa0RaQzRTDj9IMM+TY+mtuB # mZ3BRBkZisCJi/uSlj51YL2nSUkaemaq2FdxZmwZmbbBdIUpVYy0DvJ8XpRle076 # iCEiLL9m0DIFAVRM/MBxclN/Ot4B4/AQmxKSc5u+XyybC9z+upSVDUTewkbHzRGx # 3V/3eo6KVThcBe6Jpk0I6VN+wP+2EdMCQ07embF1Po/8GJaPW9trdalLYao0bN9q # Bn9k0UwqEFi4SXt3ACGEZZWv4BCpW7gw7Bt/dusuBDBxcU47I63GRGw1sIwd8K6d # dQ8oNUCnA8i1LNmpwaJb0MCUzdJjDrlzvLQc9tJ4P/l8PuMPlvTzJL1tX2mIuN+V # YykWbB38SD4yM2dMH+BYm5lTyR2fmk8RrFST8cnQob7xgn+H3vF32GPT+ZW5/UnC # nOGnU3eOBgqwZSfyTrKAODrzR2Olvl3ClXCCBlsCAwEAAaOCAUkwggFFMB0GA1Ud # DgQWBBRhmlQ2O00AYjAioNvo/80U3GLGTjAfBgNVHSMEGDAWgBSfpxVdAF5iXYP0 # 5dJlpxtTNRnpcjBfBgNVHR8EWDBWMFSgUqBQhk5odHRwOi8vd3d3Lm1pY3Jvc29m # dC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQlMjBUaW1lLVN0YW1wJTIwUENBJTIw # MjAxMCgxKS5jcmwwbAYIKwYBBQUHAQEEYDBeMFwGCCsGAQUFBzAChlBodHRwOi8v # d3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMFRpbWUt # U3RhbXAlMjBQQ0ElMjAyMDEwKDEpLmNydDAMBgNVHRMBAf8EAjAAMBYGA1UdJQEB # /wQMMAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIHgDANBgkqhkiG9w0BAQsFAAOC # AgEA1L/kYzYncCcUmzJNSL0vC38TTPFWlYacUdUpFvhUWOgCpJ9rNzp9vZxhFZWr # W5SL9alUypK1MS2DGdM/kQOppn17ntmO/2AW8zOZFHlIFNstTJm4p+sWnU/Q8xAn # hOxOPt5Ng5mcblfhixWELKpA23vKMu/twUolNvasmQGE/b0QwCz1AuWcMqD5DXym # 6o5d1YBU6iLmxEK+ejNGHTFpagqqtMlZZ/Zj24Rx81xzo2kLLq6IRwn+1U/HLe/a # aN+BXfF3LKpsoXSgctY3cpJ64pPhd7xJf/dKmqJ+TfCk2aBrThZWiRT52dg6kLW9 # llpH7gKBlqxkgONzMpe/j2G1LK4vzazLwHfWfifRZarDMF0BcQAe7oyYuIT/AR/I # +qpJsuLrpVOUkkGul5BJXGikGEqSXEo5I8kwyDqX+i2QU2hcennqKg2dJVEYYkaj # vtcqPLlzvPXupIAXgvLdVjeSE6l546HGIA78haabbFA4J0VIiNTP0JfztvfVZLTJ # CC+9oukHeAQbK492foixJyj/XqVMKLD9Ztzdr/coV0NR4rrCZetyH1yMnwSWlr0A # 4FNyZOHiGUq/9iiI+KbV7ePegkYh04tNdZHMA6XY0CwEIgr6I9absoX8FX9huWcA # abSF4rzUW2t+CpA+aKphKBdckRUPOIg7H/4Isp/1yE+2GP8wggdxMIIFWaADAgEC # AhMzAAAAFcXna54Cm0mZAAAAAAAVMA0GCSqGSIb3DQEBCwUAMIGIMQswCQYDVQQG # EwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwG # A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQg # Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgMjAxMDAeFw0yMTA5MzAxODIyMjVa # Fw0zMDA5MzAxODMyMjVaMHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5n # dG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9y # YXRpb24xJjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwMIIC # IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA5OGmTOe0ciELeaLL1yR5vQ7V # gtP97pwHB9KpbE51yMo1V/YBf2xK4OK9uT4XYDP/XE/HZveVU3Fa4n5KWv64NmeF # RiMMtY0Tz3cywBAY6GB9alKDRLemjkZrBxTzxXb1hlDcwUTIcVxRMTegCjhuje3X # D9gmU3w5YQJ6xKr9cmmvHaus9ja+NSZk2pg7uhp7M62AW36MEBydUv626GIl3GoP # z130/o5Tz9bshVZN7928jaTjkY+yOSxRnOlwaQ3KNi1wjjHINSi947SHJMPgyY9+ # tVSP3PoFVZhtaDuaRr3tpK56KTesy+uDRedGbsoy1cCGMFxPLOJiss254o2I5Jas # AUq7vnGpF1tnYN74kpEeHT39IM9zfUGaRnXNxF803RKJ1v2lIH1+/NmeRd+2ci/b # fV+AutuqfjbsNkz2K26oElHovwUDo9Fzpk03dJQcNIIP8BDyt0cY7afomXw/TNuv # XsLz1dhzPUNOwTM5TI4CvEJoLhDqhFFG4tG9ahhaYQFzymeiXtcodgLiMxhy16cg # 8ML6EgrXY28MyTZki1ugpoMhXV8wdJGUlNi5UPkLiWHzNgY1GIRH29wb0f2y1BzF # a/ZcUlFdEtsluq9QBXpsxREdcu+N+VLEhReTwDwV2xo3xwgVGD94q0W29R6HXtqP # nhZyacaue7e3PmriLq0CAwEAAaOCAd0wggHZMBIGCSsGAQQBgjcVAQQFAgMBAAEw # IwYJKwYBBAGCNxUCBBYEFCqnUv5kxJq+gpE8RjUpzxD/LwTuMB0GA1UdDgQWBBSf # pxVdAF5iXYP05dJlpxtTNRnpcjBcBgNVHSAEVTBTMFEGDCsGAQQBgjdMg30BATBB # MD8GCCsGAQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0Rv # Y3MvUmVwb3NpdG9yeS5odG0wEwYDVR0lBAwwCgYIKwYBBQUHAwgwGQYJKwYBBAGC # NxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8w # HwYDVR0jBBgwFoAU1fZWy4/oolxiaNE9lJBb186aGMQwVgYDVR0fBE8wTTBLoEmg # R4ZFaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWlj # Um9vQ2VyQXV0XzIwMTAtMDYtMjMuY3JsMFoGCCsGAQUFBwEBBE4wTDBKBggrBgEF # BQcwAoY+aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNSb29D # ZXJBdXRfMjAxMC0wNi0yMy5jcnQwDQYJKoZIhvcNAQELBQADggIBAJ1VffwqreEs # H2cBMSRb4Z5yS/ypb+pcFLY+TkdkeLEGk5c9MTO1OdfCcTY/2mRsfNB1OW27DzHk # wo/7bNGhlBgi7ulmZzpTTd2YurYeeNg2LpypglYAA7AFvonoaeC6Ce5732pvvinL # btg/SHUB2RjebYIM9W0jVOR4U3UkV7ndn/OOPcbzaN9l9qRWqveVtihVJ9AkvUCg # vxm2EhIRXT0n4ECWOKz3+SmJw7wXsFSFQrP8DJ6LGYnn8AtqgcKBGUIZUnWKNsId # w2FzLixre24/LAl4FOmRsqlb30mjdAy87JGA0j3mSj5mO0+7hvoyGtmW9I/2kQH2 # zsZ0/fZMcm8Qq3UwxTSwethQ/gpY3UA8x1RtnWN0SCyxTkctwRQEcb9k+SS+c23K # jgm9swFXSVRk2XPXfx5bRAGOWhmRaw2fpCjcZxkoJLo4S5pu+yFUa2pFEUep8beu # yOiJXk+d0tBMdrVXVAmxaQFEfnyhYWxz/gq77EFmPWn9y8FBSX5+k77L+DvktxW/ # tM4+pTFRhLy/AsGConsXHRWJjXD+57XQKBqJC4822rpM+Zv/Cuk0+CQ1ZyvgDbjm # jJnW4SLq8CdCPSWU5nR0W2rRnj7tfqAxM328y+l7vzhwRNGQ8cirOoo6CGJ/2XBj # U02N7oJtpQUQwXEGahC0HVUzWLOhcGbyoYIDUDCCAjgCAQEwgfmhgdGkgc4wgcsx # CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRt # b25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJTAjBgNVBAsTHE1p # Y3Jvc29mdCBBbWVyaWNhIE9wZXJhdGlvbnMxJzAlBgNVBAsTHm5TaGllbGQgVFNT # IEVTTjpBNDAwLTA1RTAtRDk0NzElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3Rh # bXAgU2VydmljZaIjCgEBMAcGBSsOAwIaAxUA+a9w1UaQBkKPbEy1B3gQvOzaSvqg # gYMwgYCkfjB8MQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4G # A1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYw # JAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0EgMjAxMDANBgkqhkiG9w0B # AQsFAAIFAOkcRg0wIhgPMjAyMzEyMDcxMzI0MjlaGA8yMDIzMTIwODEzMjQyOVow # dzA9BgorBgEEAYRZCgQBMS8wLTAKAgUA6RxGDQIBADAKAgEAAgIM/gIB/zAHAgEA # AgITfzAKAgUA6R2XjQIBADA2BgorBgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMC # oAowCAIBAAIDB6EgoQowCAIBAAIDAYagMA0GCSqGSIb3DQEBCwUAA4IBAQBxPhLO # 198pLrdiQpGAAsyEp7nh3h2uKJJ3xO+xt90vJK1z6xoUN/SwcyKxDrqF629EDBJ2 # i7/Z3LSNLsWMi/I2L5mD2gY5mvipDmAQMpZuncgGh4ItcyFT46W+kujtLq1ChLNE # xQRfWUDyjTQTAz8MBao6GKuEm2ToB1R36owI+Puy0BzYhMTGga/vGp6hzvCe1l+Z # HoGleKfd+4qRZiTe6awDNCk5myBd2LWE/UKq+VeXkksY26KP0avzpECkg7dgXTBX # KyW8XVb44IRrE4pFQDyvY6A1Au3RaVuAKAor7qDIPRWvEE6PV299fIhlHSJIY0Qv # SAspbvvK+Qe8TnSdMYIEDTCCBAkCAQEwgZMwfDELMAkGA1UEBhMCVVMxEzARBgNV # BAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jv # c29mdCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAg # UENBIDIwMTACEzMAAAHWJ2n/ci1WyK4AAQAAAdYwDQYJYIZIAWUDBAIBBQCgggFK # MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAvBgkqhkiG9w0BCQQxIgQgLZbB # kDiqi+TB8H4KE8ZjDzj4lBflhGFDHmPh3IErDz4wgfoGCyqGSIb3DQEJEAIvMYHq # MIHnMIHkMIG9BCDWy00NV3jTPhAYpzhCTI2XdIzDQ7q/gCvjvD9do+Uk/DCBmDCB # gKR+MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQH # EwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNV # BAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwAhMzAAAB1idp/3ItVsiu # AAEAAAHWMCIEIKcMmJv2V67XJyAERUK75D/p2TcPWdTLl+t7bxlye+YxMA0GCSqG # SIb3DQEBCwUABIICAIb3kX6aZjRpCFTffktN3kpsnZtra4ccvdyQjAk0SJCWZY27 # zigHwyMjtTG7m+rLH5M0wQ5/WrhVpDWdqYu3ezwE50SGEQO1bLq9Os2zEMTJ0qrW # c/mAKw2u2Hoxdrbxk7ePvTkh1PaiaYhZR/HBYczDL4SYkkQ0Mgl/wvbzfRs6pV4l # rJV6HOVf9ptI8Lt5U15ibY0zmDPqjepaRsiI4eQuETxtJ82+VmtwwuEjoqK8uT1k # lJCLr8B1lwn6ny5bMUwXZm1WB30KTy2UIp7flkLij/peiOLcvcRyzqE8Qe6ukXXv # TGWWSr2B4S9aYyuZ6NyQpK9i3taJEXNK4lPZfnDd8669BL/JjHDZgJtQcJHtQNKP # CjgSd1oMw+Rql5rfMyEA+KiQRjtjsn7dia8DCwOTfjvDAUydGRnOyvtu/2smyVeN # afNh6zM579OSbDt+tiFoVZ9yYE8QjwFn0gfRIxMFLNv9PqXsq6e7nVtb9dFkHSML # FdVAM1rz6HmChQHiL2brRZoH7vIf49bYOxaniQ6ybife58NdWKsZ9278rWWxrrnY # 03tkSqFFbYiFRrddya6Gf2njR4rKuoZEu9HOlXkqpp0daztTExx0xH6h3fZzAraa # BKU94CAOicJtD2U+8H+dzbyFWPZxIn7pveJSTtmlfNpNTziPFpK7lIFejIXs # SIG # End signature block |