Samples/Get-UcsCimcIpReport.ps1
[CmdletBinding()] Param( [Parameter(Mandatory=$true)] [Cisco.Ucs.UcsHandle[]] $Ucs ) Process { Foreach ($u in $Ucs) { $sp = @(Get-UcsServiceProfile -Ucs $u -Type instance) $spMap = @{ } Write-Verbose "Fetching service profile instances" $sp | % { $spMap[$_.Dn] = $_ } $pnMap = @{ } Write-Verbose "Fetching processing nodes" Get-UcsBlade -Ucs $u | % { $pnMap[$_.Dn] = $_ } Get-UcsRackUnit -Ucs $u | % { $pnMap[$_.Dn] = $_ } Write-Verbose "Fetching PN's management interfaces" $mgmtIf = $pnMap.values | Get-UcsMgmtController -Subject blade | Get-UcsMgmtIf -Subject blade -AdminState enable | ? { $_.ExtIp -ne "0.0.0.0" } $mgmtIfMap = @{ } Foreach ($mgmtIfDn in ($mgmtIf | select -ExpandProperty Dn | Get-Unique)) { $mgmtIfMap[$mgmtIfDn -replace "/mgmt/if-[^/]*$",""] = $mgmtIf | ? { $_.Dn -eq $mgmtIfDn } } $mgmtIfDn = $mgmtIfMap.keys Write-Verbose "Fetching SP's Static CIMC IPs" $spStaticIpMap = @{ } $sp | Get-UcsVnicIpV4StaticAddr -LimitScope | % { $spStaticIpMap[$_.Dn -replace "/ipv4-static-addr$",""] = $_ } $spStaticIpDn = $spStaticIpMap.keys Write-Verbose "Fetching SP's Pooled CIMC IPs" $spDynamicIpMap = @{ } $sp | Get-UcsVnicIpV4PooledAddr -LimitScope | ? { $_.Addr -ne "0.0.0.0" } | % { $spDynamicIpMap[$_.Dn -replace "/ipv4-pooled-addr$",""] = $_ } $spDynamicIpDn = $spDynamicIpMap.keys Foreach ($spDn in ($spMap.keys | sort)) { $ucsName = $u.Ucs $pnDn = $spMap[$spDn].PnDn $mgmtIfIp="" $spStaticIp = "" $spDynamicIp = "" if ($mgmtIfDn -contains $pnDn) { $mgmtIfIp = [string]::join(';', ($mgmtIfMap[$pnDn] | Select -ExpandProperty ExtIp)) } if ($pnDn -ne "") { $pnMap.remove($pnDn) } if ($spStaticIpDn -contains $spDn) { $spStaticIp = $spStaticIpMap[$spDn].Addr } if ($spDynamicIpDn -contains $spDn) { $spDynamicIp = $spDynamicIpMap[$spDn].Addr } New-Object PSObject -Property @{ "Ucs" = $ucsName "SpDn" = $spDn "PnDn" = $pnDn "SpCimcStaticIp" = $spStaticIp "SpCimcDynamicIp" = $spDynamicIp "PnCimcIp" = $mgmtIfIp } | Select-Object Ucs,SpDn,PnDn,SpCimcStaticIp,SpCimcDynamicIp,PnCimcIp } Foreach ($pnDn in ($pnMap.keys | sort)) { $ucsName = $u.Ucs $mgmtIfIp="" if ($mgmtIfDn -contains $pnDn) { $mgmtIfIp = [string]::join(';', ($mgmtIfMap[$pnDn] | Select -ExpandProperty ExtIp)) } New-Object PSObject -Property @{ "Ucs" = $ucsName "SpDn" = "" "PnDn" = $pnDn "SpCimcStaticIp" = "" "SpCimcDynamicIp" = "" "PnCimcIp" = $mgmtIfIp } | Select-Object Ucs,SpDn,PnDn,SpCimcStaticIp,SpCimcDynamicIp,PnCimcIp } } } # SIG # Begin signature block # MIIeQQYJKoZIhvcNAQcCoIIeMjCCHi4CAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAiAuMO4UHGFiez # SNqxldpHMvE0S8P7qF2d8gb1b7DYsaCCDIYwggXCMIIEqqADAgECAhAFsKypxaqA # 4gfxbvm70Ew5MA0GCSqGSIb3DQEBCwUAMGwxCzAJBgNVBAYTAlVTMRUwEwYDVQQK # EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xKzApBgNV # BAMTIkRpZ2lDZXJ0IEVWIENvZGUgU2lnbmluZyBDQSAoU0hBMikwHhcNMTkwMzA1 # MDAwMDAwWhcNMjEwMzE5MTIwMDAwWjCB1TETMBEGCysGAQQBgjc8AgEDEwJVUzEb # MBkGCysGAQQBgjc8AgECEwpDYWxpZm9ybmlhMR0wGwYDVQQPDBRQcml2YXRlIE9y # Z2FuaXphdGlvbjERMA8GA1UEBRMIQzExODM0NzcxCzAJBgNVBAYTAlVTMRMwEQYD # VQQIEwpDYWxpZm9ybmlhMREwDwYDVQQHEwhTYW4gSm9zZTEcMBoGA1UEChMTQ0lT # Q08gU1lTVEVNUywgSU5DLjEcMBoGA1UEAxMTQ0lTQ08gU1lTVEVNUywgSU5DLjCC # ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALVsxgp7cSBymDSAFTz4uPcU # dcp8ef7lqubpfbCvmiK5BaQOcF6pL2Ekl1o2BiiMOXQfKLO706Ji1lfdZVh/1eDz # zThFUTJ5LgQv5YrFnYu27TuAoXJ2Qs6pj/DJX+R7Mw+5fweicf0DSK9XiV6C9FCK # gT7Z7g0WSYH22qZpBzJf766j2sXo84qEzgR683xfCbTQMbg7I2MzuIvMGT4Qs447 # Uzb5lR1DVwMcAdXZD0lXS+0h1C4xl3B+MseIH2mtQTo1+pLhlqSK8xCwixEf1ERL # 3zmUTLw3G/gM4ccyvlWUaorNAiZw7JSAk3eqojmiAp9fuqRuuDhOHl13MzCxh1UC # AwEAAaOCAfQwggHwMB8GA1UdIwQYMBaAFI/ofvBtMmoABSPHcJdqOpD/a+rUMB0G # A1UdDgQWBBSqPgNg7Q9VW7yFRq0K9ceayo35uzAxBgNVHREEKjAooCYGCCsGAQUF # BwgDoBowGAwWVVMtQ0FMSUZPUk5JQS1DMTE4MzQ3NzAOBgNVHQ8BAf8EBAMCB4Aw # EwYDVR0lBAwwCgYIKwYBBQUHAwMwewYDVR0fBHQwcjA3oDWgM4YxaHR0cDovL2Ny # bDMuZGlnaWNlcnQuY29tL0VWQ29kZVNpZ25pbmdTSEEyLWcxLmNybDA3oDWgM4Yx # aHR0cDovL2NybDQuZGlnaWNlcnQuY29tL0VWQ29kZVNpZ25pbmdTSEEyLWcxLmNy # bDBLBgNVHSAERDBCMDcGCWCGSAGG/WwDAjAqMCgGCCsGAQUFBwIBFhxodHRwczov # L3d3dy5kaWdpY2VydC5jb20vQ1BTMAcGBWeBDAEDMH4GCCsGAQUFBwEBBHIwcDAk # BggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEgGCCsGAQUFBzAC # hjxodHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRFVkNvZGVTaWdu # aW5nQ0EtU0hBMi5jcnQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAQEA # MLeT7V16i8TpC3++bRSUEajW355sfKiuWEPnc1RIEGMSekaTJKSVDDgaGdPt22qE # wRrJztKYca2N6ZpOOE477yTiuYMCCVUIcwhaWezA/4Wgs9TpW0QBe53qIJj6t0uH # M+gZg7Bp0KM65Z+Kh5teHZ6kzs8evRGsH3cgKtfrwwRRdJCgqBz3KmkNhqRQ6/Hl # SS7GV+wRoGAeqnCGL6IOY7bLl2NC+ItUh1D6bP/9UR0MtVFU6nqY7Lj3Z5xmje8t # N6sZ1p+FTGaHDwSZX7DDtff766Bl5om/IixIfOPQtZoe12lxZqlAn33JMflIZgNt # 8ckoE13Gh8lJeoFIFBzgsjCCBrwwggWkoAMCAQICEAPxtOFfOoLxFJZ4s9fYR1ww # DQYJKoZIhvcNAQELBQAwbDELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0 # IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNl # cnQgSGlnaCBBc3N1cmFuY2UgRVYgUm9vdCBDQTAeFw0xMjA0MTgxMjAwMDBaFw0y # NzA0MTgxMjAwMDBaMGwxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJ # bmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xKzApBgNVBAMTIkRpZ2lDZXJ0 # IEVWIENvZGUgU2lnbmluZyBDQSAoU0hBMikwggEiMA0GCSqGSIb3DQEBAQUAA4IB # DwAwggEKAoIBAQCnU/oPsrUT8WTPhID8roA10bbXx6MsrBosrPGErDo1EjqSkbpX # 5MTJ8y+oSDy31m7clyK6UXlhr0MvDbebtEkxrkRYPqShlqeHTyN+w2xlJJBVPqHK # I3zFQunEemJFm33eY3TLnmMl+ISamq1FT659H8gTy3WbyeHhivgLDJj0yj7QRap6 # HqVYkzY0visuKzFYZrQyEJ+d8FKh7+g+03byQFrc+mo9G0utdrCMXO42uoPqMKhM # 3vELKlhBiK4AiasD0RaCICJ2615UOBJi4dJwJNvtH3DSZAmALeK2nc4f8rsh82zb # 2LMZe4pQn+/sNgpcmrdK0wigOXn93b89OgklAgMBAAGjggNYMIIDVDASBgNVHRMB # Af8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUEDDAKBggrBgEFBQcD # AzB/BggrBgEFBQcBAQRzMHEwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2lj # ZXJ0LmNvbTBJBggrBgEFBQcwAoY9aHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29t # L0RpZ2lDZXJ0SGlnaEFzc3VyYW5jZUVWUm9vdENBLmNydDCBjwYDVR0fBIGHMIGE # MECgPqA8hjpodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRIaWdoQXNz # dXJhbmNlRVZSb290Q0EuY3JsMECgPqA8hjpodHRwOi8vY3JsNC5kaWdpY2VydC5j # b20vRGlnaUNlcnRIaWdoQXNzdXJhbmNlRVZSb290Q0EuY3JsMIIBxAYDVR0gBIIB # uzCCAbcwggGzBglghkgBhv1sAwIwggGkMDoGCCsGAQUFBwIBFi5odHRwOi8vd3d3 # LmRpZ2ljZXJ0LmNvbS9zc2wtY3BzLXJlcG9zaXRvcnkuaHRtMIIBZAYIKwYBBQUH # AgIwggFWHoIBUgBBAG4AeQAgAHUAcwBlACAAbwBmACAAdABoAGkAcwAgAEMAZQBy # AHQAaQBmAGkAYwBhAHQAZQAgAGMAbwBuAHMAdABpAHQAdQB0AGUAcwAgAGEAYwBj # AGUAcAB0AGEAbgBjAGUAIABvAGYAIAB0AGgAZQAgAEQAaQBnAGkAQwBlAHIAdAAg # AEMAUAAvAEMAUABTACAAYQBuAGQAIAB0AGgAZQAgAFIAZQBsAHkAaQBuAGcAIABQ # AGEAcgB0AHkAIABBAGcAcgBlAGUAbQBlAG4AdAAgAHcAaABpAGMAaAAgAGwAaQBt # AGkAdAAgAGwAaQBhAGIAaQBsAGkAdAB5ACAAYQBuAGQAIABhAHIAZQAgAGkAbgBj # AG8AcgBwAG8AcgBhAHQAZQBkACAAaABlAHIAZQBpAG4AIABiAHkAIAByAGUAZgBl # AHIAZQBuAGMAZQAuMB0GA1UdDgQWBBSP6H7wbTJqAAUjx3CXajqQ/2vq1DAfBgNV # HSMEGDAWgBSxPsNpA/i/RwHUmCYaCALvY2QrwzANBgkqhkiG9w0BAQsFAAOCAQEA # GTNKDIEzN9utNsnkyTq7tRsueqLi9ENCF56/TqFN4bHb6YHdnwHy5IjV6f4J/SHB # 7F2A0vDWwUPC/ncr2/nXkTPObNWyGTvmLtbJk0+IQI7N4fV+8Q/GWVZy6OtqQb0c # 1UbVfEnKZjgVwb/gkXB3h9zJjTHJDCmiM+2N4ofNiY0/G//V4BqXi3zabfuoxrI6 # Zmt7AbPN2KY07BIBq5VYpcRTV6hg5ucCEqC5I2SiTbt8gSVkIb7P7kIYQ5e7pTcG # r03/JqVNYUvsRkG4Zc64eZ4IlguBjIo7j8eZjKMqbphtXmHGlreKuWEtk7jrDgRD # 1/X+pvBi1JlqpcHB8GSUgDGCEREwghENAgEBMIGAMGwxCzAJBgNVBAYTAlVTMRUw # EwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20x # KzApBgNVBAMTIkRpZ2lDZXJ0IEVWIENvZGUgU2lnbmluZyBDQSAoU0hBMikCEAWw # rKnFqoDiB/Fu+bvQTDkwDQYJYIZIAWUDBAIBBQCggZowGQYJKoZIhvcNAQkDMQwG # CisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwLgYKKwYB # BAGCNwIBDDEgMB6gHIAaAFMAQQBTAEQALQBQAGgAMwAtADEAMAAyADIwLwYJKoZI # hvcNAQkEMSIEIEfWY5dPxj26EBsfH6fJrj9bb3T8Elm0/v+3xCNNy62mMA0GCSqG # SIb3DQEBAQUABIIBAIiEEADYKyj8qoh3FJO0lBWMQ7TfWBdxI+jISQjD4ZJQy5gM # JEki74KNV8OuaPWN/mOK6U2MC8Y8od2AeyPkAKxtbt3QQP8ROCqPfwLqs9/Q/a5M # 1Gw52+q0k9rvd+S9hAjiVBwIgZ0doaDlQ5N8yxUljbSxB7i9z/iY6+29xVZXvs7s # 92xYq6LdixPUPyvXg2Q2IP/SH7fyBnfF7hEvkHEQMFYiAFU3TliZ5fE9/ox7aI0W # GWivdEtpzYkp0Fyen0xBi7d56SJjO0uvhRyr73jyjqswOumXDAPGJRxcI/kAF3Dh # +HS2g7SVZWIRvG3LHOmk6pFEQ5sXBCdQQCS/oDShgg7EMIIOwAYKKwYBBAGCNwMD # ATGCDrAwgg6sBgkqhkiG9w0BBwKggg6dMIIOmQIBAzEPMA0GCWCGSAFlAwQCAQUA # MIHyBgsqhkiG9w0BCRABBKCB4gSB3zCB3AIBAQYJYIZIhvpsCgMFMDEwDQYJYIZI # AWUDBAIBBQAEIEmcx6du/qWvPNBN4c+f8J0Sqak6XwzeTIob1KqolipDAgZdrm9A # EpMYEzIwMTkxMTA2MTkwNDUyLjQ3NFowBIACAfSgdqR0MHIxCzAJBgNVBAYTAkNB # MRAwDgYDVQQIEwdPbnRhcmlvMQ8wDQYDVQQHEwZPdHRhd2ExFjAUBgNVBAoTDUVu # dHJ1c3QsIEluYy4xKDAmBgNVBAMTH0VudHJ1c3QgVGltZSBTdGFtcGluZyBBdXRo # b3JpdHmgggokMIIFCTCCA/GgAwIBAgIRAKvdZ2XyWu9QAAAAAFWR6QwwDQYJKoZI # hvcNAQELBQAwgbIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMu # MSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0L2xlZ2FsLXRlcm1zMTkwNwYD # VQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhvcml6ZWQgdXNl # IG9ubHkxJjAkBgNVBAMTHUVudHJ1c3QgVGltZXN0YW1waW5nIENBIC0gVFMxMB4X # DTE4MTAwNTIwMzAyN1oXDTMwMDEwNTIxMDAyN1owcjELMAkGA1UEBhMCQ0ExEDAO # BgNVBAgTB09udGFyaW8xDzANBgNVBAcTBk90dGF3YTEWMBQGA1UEChMNRW50cnVz # dCwgSW5jLjEoMCYGA1UEAxMfRW50cnVzdCBUaW1lIFN0YW1waW5nIEF1dGhvcml0 # eTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKu9royPQsuVWVxiJ/lA # uP9VokBKZf/b7aehiG5AGi7Za9VK7QFZYlTEcxaj1oRu7oBC6lUImHAZPyaexNam # qOurqSQ9C1dYZPzw2hgy2bHXunMBSw6RMe+9SJqJw4LiCXjzohsujc0O74mzerry # HJgzpXD4e07sEgjss59PjEu+13yAZ1b+XD4H2oaiKUAbMMqPzRdJotTrzV5QchkZ # cEcrnQrggMMpBwElJFzN9gbUHRGGyjX2FKS/r25Bgylrkn9Eh4zbhFCgkbwJU3/0 # rL7DN4ejxEoLEDNttwGD8cVHaZ8Uw8/N/H0BKeNFzo+ZjmSpDTyLIOIDhstUREE3 # tekCAwEAAaOCAVcwggFTMA4GA1UdDwEB/wQEAwIHgDAWBgNVHSUBAf8EDDAKBggr # BgEFBQcDCDBBBgNVHSAEOjA4MDYGCmCGSAGG+mwKAwUwKDAmBggrBgEFBQcCARYa # aHR0cDovL3d3dy5lbnRydXN0Lm5ldC9ycGEwCQYDVR0TBAIwADBoBggrBgEFBQcB # AQRcMFowIwYIKwYBBQUHMAGGF2h0dHA6Ly9vY3NwLmVudHJ1c3QubmV0MDMGCCsG # AQUFBzAChidodHRwOi8vYWlhLmVudHJ1c3QubmV0L3RzMS1jaGFpbjI1Ni5jZXIw # MQYDVR0fBCowKDAmoCSgIoYgaHR0cDovL2NybC5lbnRydXN0Lm5ldC90czFjYS5j # cmwwHwYDVR0jBBgwFoAUw8Jx0nvXaAWuOzmbNCUMYgPHV2gwHQYDVR0OBBYEFCCQ # ed4myxXaB0L7ihUNcZ4ZaIgsMA0GCSqGSIb3DQEBCwUAA4IBAQDEsmLZssupqGDb # QabTQD1hvfrv95S1SM1uctWG5RipsUGJmK8EFat9q/UVAsRrwKlJKC1Y11MMWQc2 # zqoLeOllwMQjETTUwGqY+4HzrJhgtPc+AHRwhXIwtsJpMVs8Bm4E/0HkRZRecIpS # Ow7Kh2FsQEhWDx3BJ+ryXmAg/Ib6NFfEP+KlSou7BvNrHQkCUN34F0vSdCGs+Z9J # 9+xK2DpV+VXpxY9tIgRZSlM9HVOiqjN7bQEVvn6lup+yUd13cdixgupZfY2tPk1G # jP44Jaf8pN4Tvv4Q0vCWN+WPHKms09hqbqVW3CZa6V+B3ZBPmGmITc+ClKpi9Z8E # 5v2/ZprCMIIFEzCCA/ugAwIBAgIMWNoT/wAAAABRzg33MA0GCSqGSIb3DQEBCwUA # MIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3LmVudHJ1c3Qu # bmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMG # A1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50 # cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMB4XDTE1MDcy # MjE5MDI1NFoXDTI5MDYyMjE5MzI1NFowgbIxCzAJBgNVBAYTAlVTMRYwFAYDVQQK # Ew1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0L2xl # Z2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9y # IGF1dGhvcml6ZWQgdXNlIG9ubHkxJjAkBgNVBAMTHUVudHJ1c3QgVGltZXN0YW1w # aW5nIENBIC0gVFMxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2SPm # FKTofEuFcVj7+IHmcotdRsOIAB840Irh1m5WMOWv2mRQfcITOfu9ZrTahPuD0Cgf # y3boYFBpm/POTxPiwT7B3xLLMqP4XkQiDsw66Y1JuWB0yN5UPUFeQ18oRqmmt8oQ # KyK8W01bjBdlEob9LHfVxaCMysKD4EdXfOdwrmJFJzEYCtTApBhVUvdgxgRLs91o # Mm4QHzQRuBJ4ZPHuqeD347EijzRaZcuK9OFFUHTfk5emNObQTDufN0lSp1NOny5n # XO2W/KW/dFGI46qOvdmxL19QMBb0UWAia5nL/+FUO7n7RDilCDkjm2lH+jzE0Oeq # 30ay7PKKGawpsjiVdQIDAQABo4IBIzCCAR8wEgYDVR0TAQH/BAgwBgEB/wIBADAO # BgNVHQ8BAf8EBAMCAQYwOwYDVR0gBDQwMjAwBgRVHSAAMCgwJgYIKwYBBQUHAgEW # Gmh0dHA6Ly93d3cuZW50cnVzdC5uZXQvcnBhMDMGCCsGAQUFBwEBBCcwJTAjBggr # BgEFBQcwAYYXaHR0cDovL29jc3AuZW50cnVzdC5uZXQwMgYDVR0fBCswKTAnoCWg # I4YhaHR0cDovL2NybC5lbnRydXN0Lm5ldC8yMDQ4Y2EuY3JsMBMGA1UdJQQMMAoG # CCsGAQUFBwMIMB0GA1UdDgQWBBTDwnHSe9doBa47OZs0JQxiA8dXaDAfBgNVHSME # GDAWgBRV5IHREYC+2Im5CKMx+aEkCRa5cDANBgkqhkiG9w0BAQsFAAOCAQEAHSTn # mnRbqnD8sQ4xRdcsAH9mOiugmjSqrGNtifmf3w13/SQj/E+ct2+P8/QftsH91hzE # jIhmwWONuld307gaHshRrcxgNhqHaijqEWXezDwsjHS36FBD08wo6BVsESqfFJUp # yQVXtWc26Dypg+9BwSEW0373LRFHZnZgghJpjHZVcw/fL0td6Wwj+Af2tX3WaUWc # WH1hLvx4S0NOiZFGRCygU6hFofYWWLuRE/JLxd8LwOeuKXq9RbPncDDnNI7revbT # tdHeaxOZRrOL0k2TdbXxb7/cACjCJb+856NlNOw/DR2XjPqqiCKkGDXbBY524xDI # KY9j0K6sGNnaxJ9REjGCA2QwggNgAgEBMIHIMIGyMQswCQYDVQQGEwJVUzEWMBQG # A1UEChMNRW50cnVzdCwgSW5jLjEoMCYGA1UECxMfU2VlIHd3dy5lbnRydXN0Lm5l # dC9sZWdhbC10ZXJtczE5MDcGA1UECxMwKGMpIDIwMTUgRW50cnVzdCwgSW5jLiAt # IGZvciBhdXRob3JpemVkIHVzZSBvbmx5MSYwJAYDVQQDEx1FbnRydXN0IFRpbWVz # dGFtcGluZyBDQSAtIFRTMQIRAKvdZ2XyWu9QAAAAAFWR6QwwDQYJYIZIAWUDBAIB # BQCgggFsMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAvBgkqhkiG9w0BCQQx # IgQgb33hiqYwLpvFCdLTyEEHNqmXGWPSWyVdVIwqNWQqGtQwggEbBgsqhkiG9w0B # CRACDDGCAQowggEGMIIBAjCB5wQUwPWUF2Vp14CrDs/f2+Kpwa9kTt4wgc4wgbik # gbUwgbIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYD # VQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAo # YykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkx # JjAkBgNVBAMTHUVudHJ1c3QgVGltZXN0YW1waW5nIENBIC0gVFMxAhEAq91nZfJa # 71AAAAAAVZHpDDAWBBSXnp2n95YjPyEMju0Wbe82BAxGjjANBgkqhkiG9w0BAQsF # AASCAQAALls4Kdq8gsrrBgTt4tVsC5IP/zM0QGecp7dDuBkLt9VzuLDWlzklOEwM # /rGieJ6LvLSK3DT2dqyh5PaTumd3tZIBk5AUz3Cgi+OxO5kmOE1Kcg3CCZ9k5vf9 # JFocsmQmugR7vVjHaWrpHoLQaT/EdjialC+0JOoevzYaK7xYZn6TIS2i/k5hlaC3 # S5lQz5/3BZoGi9J3bICZILY1krI7aeJ0BR2AVtFU2jGb0lmPaEYrRdHvp1C3S8IZ # wUVWTyyM3kKk+5fJ4KP7iQkZgGEdIB+7rbvsPsHEWu9f+WVUn19BKIHhyiiU1vwW # dZC2L/w/dQed5RB1rIhDutSQifbi # SIG # End signature block |