Public/Get-GkServicePrincipalReport.ps1
|
function Get-GkServicePrincipalReport { <# .SYNOPSIS Report service principals (enterprise apps) with type, state, and optionally their tenant-wide OAuth2 consent grants. .DESCRIPTION Lists GET /servicePrincipals with the properties that matter for an app-security review: type, whether the app is enabled, whether app-role assignment is required, and tags. With -IncludeConsentGrants it also pulls GET /oauth2PermissionGrants (one tenant-wide call) and annotates each service principal with the number of delegated grants and whether any is consented for ALL users (consentType=AllPrincipals) — the over-privilege signal to flag. Requires Application.Read.All (and Directory.Read.All for the consent grants). .PARAMETER IncludeConsentGrants Annotate each service principal with DelegatedGrantCount and HasTenantWideConsent from /oauth2PermissionGrants. .PARAMETER Type Filter by servicePrincipalType (e.g. Application, ManagedIdentity, Legacy). Default all. .PARAMETER AsReport Flatten Tags to a '; '-joined string and add ReportGeneratedUtc. .EXAMPLE Get-GkServicePrincipalReport -IncludeConsentGrants | Where-Object HasTenantWideConsent Enterprise apps with a tenant-wide (all-users) delegated consent. .EXAMPLE Get-GkServicePrincipalReport -Type ManagedIdentity List managed identity service principals. .EXAMPLE Get-GkServicePrincipalReport -AsReport | Export-Csv .\service-principals.csv -NoTypeInformation .OUTPUTS PSGraphKit.ServicePrincipal #> [CmdletBinding()] [OutputType('PSGraphKit.ServicePrincipal')] param( [switch] $IncludeConsentGrants, [string] $Type, [switch] $AsReport ) begin { Test-GkConnection -FunctionName 'Get-GkServicePrincipalReport' -Caller $PSCmdlet | Out-Null $now = [datetime]::UtcNow } process { # Build a clientId -> grants map once, if requested. $grantsByClient = @{} if ($IncludeConsentGrants) { foreach ($g in (Invoke-GkGraphRequest -Uri '/oauth2PermissionGrants' -CallerFunction 'Get-GkServicePrincipalReport')) { $client = [string](Get-GkDictValue $g 'clientId') if (-not $client) { continue } if (-not $grantsByClient.ContainsKey($client)) { $grantsByClient[$client] = [System.Collections.Generic.List[object]]::new() } $grantsByClient[$client].Add($g) } } $select = 'id,appId,displayName,accountEnabled,servicePrincipalType,appRoleAssignmentRequired,tags,signInAudience' # servicePrincipalType filters server-side, so -Type doesn't page the whole servicePrincipals # collection just to discard the non-matching ones. $spFilter = if ($Type) { "&`$filter=servicePrincipalType eq '$Type'" } else { '' } $sps = Invoke-GkGraphRequest -Uri "/servicePrincipals?`$select=$select$spFilter&`$top=999" -CallerFunction 'Get-GkServicePrincipalReport' foreach ($sp in $sps) { $spType = [string](Get-GkDictValue $sp 'servicePrincipalType') if ($Type -and $spType -ne $Type) { continue } $tags = @(Get-GkDictValue $sp 'tags') $id = [string](Get-GkDictValue $sp 'id') $obj = [ordered]@{ PSTypeName = 'PSGraphKit.ServicePrincipal' DisplayName = [string](Get-GkDictValue $sp 'displayName') AppId = [string](Get-GkDictValue $sp 'appId') ServicePrincipalType = $spType AccountEnabled = [bool](Get-GkDictValue $sp 'accountEnabled') AppRoleAssignmentRequired = [bool](Get-GkDictValue $sp 'appRoleAssignmentRequired') SignInAudience = [string](Get-GkDictValue $sp 'signInAudience') Tags = if ($AsReport) { $tags -join '; ' } else { , $tags } Id = $id } if ($IncludeConsentGrants) { $grants = @() if ($grantsByClient.ContainsKey($id)) { $grants = @($grantsByClient[$id]) } $obj['DelegatedGrantCount'] = $grants.Count $obj['HasTenantWideConsent'] = [bool](@($grants | Where-Object { [string](Get-GkDictValue $_ 'consentType') -eq 'AllPrincipals' }).Count) } if ($AsReport) { $obj['ReportGeneratedUtc'] = $now } [pscustomobject]$obj } } } # SIG # Begin signature block # MII9PgYJKoZIhvcNAQcCoII9LzCCPSsCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDpHoGGhpHqHXyZ # hetmoWySokspawwievtS9/jkVbunoKCCIgAwggXMMIIDtKADAgECAhBUmNLR1FsZ # lUgTecgRwIeZMA0GCSqGSIb3DQEBDAUAMHcxCzAJBgNVBAYTAlVTMR4wHAYDVQQK # ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xSDBGBgNVBAMTP01pY3Jvc29mdCBJZGVu # dGl0eSBWZXJpZmljYXRpb24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgMjAy # MDAeFw0yMDA0MTYxODM2MTZaFw00NTA0MTYxODQ0NDBaMHcxCzAJBgNVBAYTAlVT # MR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xSDBGBgNVBAMTP01pY3Jv # c29mdCBJZGVudGl0eSBWZXJpZmljYXRpb24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRo # b3JpdHkgMjAyMDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALORKgeD # Bmf9np3gx8C3pOZCBH8Ppttf+9Va10Wg+3cL8IDzpm1aTXlT2KCGhFdFIMeiVPvH # or+Kx24186IVxC9O40qFlkkN/76Z2BT2vCcH7kKbK/ULkgbk/WkTZaiRcvKYhOuD # PQ7k13ESSCHLDe32R0m3m/nJxxe2hE//uKya13NnSYXjhr03QNAlhtTetcJtYmrV # qXi8LW9J+eVsFBT9FMfTZRY33stuvF4pjf1imxUs1gXmuYkyM6Nix9fWUmcIxC70 # ViueC4fM7Ke0pqrrBc0ZV6U6CwQnHJFnni1iLS8evtrAIMsEGcoz+4m+mOJyoHI1 # vnnhnINv5G0Xb5DzPQCGdTiO0OBJmrvb0/gwytVXiGhNctO/bX9x2P29Da6SZEi3 # W295JrXNm5UhhNHvDzI9e1eM80UHTHzgXhgONXaLbZ7LNnSrBfjgc10yVpRnlyUK # xjU9lJfnwUSLgP3B+PR0GeUw9gb7IVc+BhyLaxWGJ0l7gpPKWeh1R+g/OPTHU3mg # trTiXFHvvV84wRPmeAyVWi7FQFkozA8kwOy6CXcjmTimthzax7ogttc32H83rwjj # O3HbbnMbfZlysOSGM1l0tRYAe1BtxoYT2v3EOYI9JACaYNq6lMAFUSw0rFCZE4e7 # swWAsk0wAly4JoNdtGNz764jlU9gKL431VulAgMBAAGjVDBSMA4GA1UdDwEB/wQE # AwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTIftJqhSobyhmYBAcnz1AQ # T2ioojAQBgkrBgEEAYI3FQEEAwIBADANBgkqhkiG9w0BAQwFAAOCAgEAr2rd5hnn # LZRDGU7L6VCVZKUDkQKL4jaAOxWiUsIWGbZqWl10QzD0m/9gdAmxIR6QFm3FJI9c # Zohj9E/MffISTEAQiwGf2qnIrvKVG8+dBetJPnSgaFvlVixlHIJ+U9pW2UYXeZJF # xBA2CFIpF8svpvJ+1Gkkih6PsHMNzBxKq7Kq7aeRYwFkIqgyuH4yKLNncy2RtNwx # AQv3Rwqm8ddK7VZgxCwIo3tAsLx0J1KH1r6I3TeKiW5niB31yV2g/rarOoDXGpc8 # FzYiQR6sTdWD5jw4vU8w6VSp07YEwzJ2YbuwGMUrGLPAgNW3lbBeUU0i/OxYqujY # lLSlLu2S3ucYfCFX3VVj979tzR/SpncocMfiWzpbCNJbTsgAlrPhgzavhgplXHT2 # 6ux6anSg8Evu75SjrFDyh+3XOjCDyft9V77l4/hByuVkrrOj7FjshZrM77nq81YY # uVxzmq/FdxeDWds3GhhyVKVB0rYjdaNDmuV3fJZ5t0GNv+zcgKCf0Xd1WF81E+Al # GmcLfc4l+gcK5GEh2NQc5QfGNpn0ltDGFf5Ozdeui53bFv0ExpK91IjmqaOqu/dk # ODtfzAzQNb50GQOmxapMomE2gj4d8yu8l13bS3g7LfU772Aj6PXsCyM2la+YZr9T # 03u4aUoqlmZpxJTG9F9urJh4iIAGXKKy7aIwggatMIIElaADAgECAhMzAAY/ql7c # GpaWP1cwAAAABj+qMA0GCSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYD # VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJ # RCBWZXJpZmllZCBDUyBBT0MgQ0EgMDQwHhcNMjYwOTEwMDgxMDQzWhcNMjYwOTEz # MDgxMDQzWjBuMQswCQYDVQQGEwJTRTEZMBcGA1UEBx4QAEEAbABpAG4AZwBzAOUA # czEhMB8GA1UECh4YAE0AYQByAHQAaQBuACAAVwBlAGwA6QBuMSEwHwYDVQQDHhgA # TQBhAHIAdABpAG4AIABXAGUAbADpAG4wggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAw # ggGKAoIBgQCOf2X4mAwZCDDs9ldzN6GHtTfpErreyX8iUp2TtpnjEzwsWqaWlDzW # jaVdvquiVDo4SgAr2FcVbf4spBTiYdVW3iiBVNOe8TqSsyVihb1qkHyrezT2j4Xf # qj21VgRgZftb92vbiL6lioo0xdbAtBq4EXACuBwgeVzbdlepMQXTAlXNTR2fe6FS # gNcpFWg6ShKcyglNSwdrxGO7//CwwTDTq5bFoC5GAqwRlofG4WAh7nRmMmGQvg/E # H//hR28kZVm1rZkRUzW/CGj5cH+hiE7dCnR/S+Teym+CPJow2rxNgfItcJPJXW1t # 8xqJYafDkFXop7yzcvknjebKAtty/qIcjbycytF6JCDFE2GEuS3wBRmuLfdgM70D # 9Heuirp9KvCjz3uyXG5lRwr41WvDHDHFV06LePV1PYQCq/RZVSx2JSjuaWYRkSTs # 7i/D6uwQ6V2+sNwayTLtfm4rox0Ewo3K0bnOZWYA69xKl/zmU0udERgApUCTsE7Y # pkuRIJeWstECAwEAAaOCAdYwggHSMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQD # AgeAMD0GA1UdJQQ2MDQGCisGAQQBgjdhAQAGCCsGAQUFBwMDBhwrBgEEAYI3YYGe # +ocMgpSG9A6C9avbSIKgs+syMB0GA1UdDgQWBBR7k8EuOHb3b58Yqt5KxLk+fFqI # njAfBgNVHSMEGDAWgBRrJUHe+2t8/RiACi1/j3ZdqnM9uDBnBgNVHR8EYDBeMFyg # WqBYhlZodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3Nv # ZnQlMjBJRCUyMFZlcmlmaWVkJTIwQ1MlMjBBT0MlMjBDQSUyMDA0LmNybDB0Bggr # BgEFBQcBAQRoMGYwZAYIKwYBBQUHMAKGWGh0dHA6Ly93d3cubWljcm9zb2Z0LmNv # bS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwSUQlMjBWZXJpZmllZCUyMENTJTIw # QU9DJTIwQ0ElMjAwNC5jcnQwVAYDVR0gBE0wSzBJBgRVHSAAMEEwPwYIKwYBBQUH # AgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9SZXBvc2l0 # b3J5Lmh0bTANBgkqhkiG9w0BAQwFAAOCAgEAUToEOZwImtilHCGbITBoG7Hf0PfC # RAmbuNIWmRq/XfIbCZTE+OY4m5fe7lp6cqIGOtR9yd7n7RSlxO6viN6xxD1pvBqA # RvHPOvcH66QD44bGxzIT81WLu/K2iMpFXIFrm3eJili5DvhiuPSnxWG0h4js/yIa # LymXMQ1VglbX8Zln4fcpPXtJlBDHhQa5zTa2vhJmicMrE9fHgySA8oDKFSP9Mqs4 # Z5OcoGjpw4/8FUIXHFQVnAOKUOvjTgJohqEsx0q56l+nX7BTlS6NXW3hazN6cmOE # vNNS8Yu6dI5O6EZ7OgSWMrtlAcus6tUvpIf3Nj2KD2OjN7gUIuRjl9UKNI81XxZS # Yn0dW6VXRF37KK0/+LPtdPWPHDVsY5IoOYo0KQDZ0zHduJugANreNV8ZYxJ0oaxg # gDvnhtfV2KvwsuUurO85fRWJ+8+3w2toUzc3ysCNH7epF3NbU/4rpVc4yZzxpCjL # +KkTgSFrdnb6+RcWNymyp2tI+skPs3FWv0kkswPkfBOSFBHpXgToeAMJ2zmvq0Zu # uCL6KVgdeCHGJGcS1g60KeaSteuDigV3jJ58jZWxW46c50RNJ10bgZPApUFNM1tD # Ou3CHHDPn5VRSo94APOj+W9llPFW+hxbYB+vSJDait5W4R4dGYMjTS0ArFqzE9hB # JYlfJRd7OAqvgOMwggatMIIElaADAgECAhMzAAY/ql7cGpaWP1cwAAAABj+qMA0G # CSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQg # Q29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJRCBWZXJpZmllZCBDUyBB # T0MgQ0EgMDQwHhcNMjYwOTEwMDgxMDQzWhcNMjYwOTEzMDgxMDQzWjBuMQswCQYD # VQQGEwJTRTEZMBcGA1UEBx4QAEEAbABpAG4AZwBzAOUAczEhMB8GA1UECh4YAE0A # YQByAHQAaQBuACAAVwBlAGwA6QBuMSEwHwYDVQQDHhgATQBhAHIAdABpAG4AIABX # AGUAbADpAG4wggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCOf2X4mAwZ # CDDs9ldzN6GHtTfpErreyX8iUp2TtpnjEzwsWqaWlDzWjaVdvquiVDo4SgAr2FcV # bf4spBTiYdVW3iiBVNOe8TqSsyVihb1qkHyrezT2j4Xfqj21VgRgZftb92vbiL6l # ioo0xdbAtBq4EXACuBwgeVzbdlepMQXTAlXNTR2fe6FSgNcpFWg6ShKcyglNSwdr # xGO7//CwwTDTq5bFoC5GAqwRlofG4WAh7nRmMmGQvg/EH//hR28kZVm1rZkRUzW/ # CGj5cH+hiE7dCnR/S+Teym+CPJow2rxNgfItcJPJXW1t8xqJYafDkFXop7yzcvkn # jebKAtty/qIcjbycytF6JCDFE2GEuS3wBRmuLfdgM70D9Heuirp9KvCjz3uyXG5l # Rwr41WvDHDHFV06LePV1PYQCq/RZVSx2JSjuaWYRkSTs7i/D6uwQ6V2+sNwayTLt # fm4rox0Ewo3K0bnOZWYA69xKl/zmU0udERgApUCTsE7YpkuRIJeWstECAwEAAaOC # AdYwggHSMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeAMD0GA1UdJQQ2MDQG # CisGAQQBgjdhAQAGCCsGAQUFBwMDBhwrBgEEAYI3YYGe+ocMgpSG9A6C9avbSIKg # s+syMB0GA1UdDgQWBBR7k8EuOHb3b58Yqt5KxLk+fFqInjAfBgNVHSMEGDAWgBRr # JUHe+2t8/RiACi1/j3ZdqnM9uDBnBgNVHR8EYDBeMFygWqBYhlZodHRwOi8vd3d3 # Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQlMjBJRCUyMFZlcmlm # aWVkJTIwQ1MlMjBBT0MlMjBDQSUyMDA0LmNybDB0BggrBgEFBQcBAQRoMGYwZAYI # KwYBBQUHMAKGWGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMv # TWljcm9zb2Z0JTIwSUQlMjBWZXJpZmllZCUyMENTJTIwQU9DJTIwQ0ElMjAwNC5j # cnQwVAYDVR0gBE0wSzBJBgRVHSAAMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly93d3cu # bWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9SZXBvc2l0b3J5Lmh0bTANBgkqhkiG # 9w0BAQwFAAOCAgEAUToEOZwImtilHCGbITBoG7Hf0PfCRAmbuNIWmRq/XfIbCZTE # +OY4m5fe7lp6cqIGOtR9yd7n7RSlxO6viN6xxD1pvBqARvHPOvcH66QD44bGxzIT # 81WLu/K2iMpFXIFrm3eJili5DvhiuPSnxWG0h4js/yIaLymXMQ1VglbX8Zln4fcp # PXtJlBDHhQa5zTa2vhJmicMrE9fHgySA8oDKFSP9Mqs4Z5OcoGjpw4/8FUIXHFQV # nAOKUOvjTgJohqEsx0q56l+nX7BTlS6NXW3hazN6cmOEvNNS8Yu6dI5O6EZ7OgSW # MrtlAcus6tUvpIf3Nj2KD2OjN7gUIuRjl9UKNI81XxZSYn0dW6VXRF37KK0/+LPt # dPWPHDVsY5IoOYo0KQDZ0zHduJugANreNV8ZYxJ0oaxggDvnhtfV2KvwsuUurO85 # fRWJ+8+3w2toUzc3ysCNH7epF3NbU/4rpVc4yZzxpCjL+KkTgSFrdnb6+RcWNymy # p2tI+skPs3FWv0kkswPkfBOSFBHpXgToeAMJ2zmvq0ZuuCL6KVgdeCHGJGcS1g60 # KeaSteuDigV3jJ58jZWxW46c50RNJ10bgZPApUFNM1tDOu3CHHDPn5VRSo94APOj # +W9llPFW+hxbYB+vSJDait5W4R4dGYMjTS0ArFqzE9hBJYlfJRd7OAqvgOMwggco # MIIFEKADAgECAhMzAAAAFjGSjZICZXuaAAAAAAAWMA0GCSqGSIb3DQEBDAUAMGMx # CzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xNDAy # BgNVBAMTK01pY3Jvc29mdCBJRCBWZXJpZmllZCBDb2RlIFNpZ25pbmcgUENBIDIw # MjEwHhcNMjYwMzI2MTgxMTI5WhcNMzEwMzI2MTgxMTI5WjBaMQswCQYDVQQGEwJV # UzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSswKQYDVQQDEyJNaWNy # b3NvZnQgSUQgVmVyaWZpZWQgQ1MgQU9DIENBIDA0MIICIjANBgkqhkiG9w0BAQEF # AAOCAg8AMIICCgKCAgEAylX6yNvoCTDP9G0OTlSjXbzgEsy21FDL17n/lZe2BrqH # z2mR1aN4DBxeYp0/hjEqSHHyGfarV1NVBuvK8vLzW0LTi+DZt9In16aiNfgcogFi # ztWE9Fp8xu1zzrqE3nlrDWb+RZo8QrEXgWb8s8swsl2W7tREHycVkx+Hm1MLQIlv # a6jH/Xg4/8GIYhHzbXiVd2RXomw9s7Qh6/SYRXXfe125wh4EKEyKnNNl+cZUSrVB # gWvvjrRwQY4if7sAZ805KruBY6WY0Hiba5nWvrq9Qk9o35ViAf8qZ+7u1fbb1vcC # WyWLfx9hLSdBjjVsSWe0xLvI1j4p3Tjt5czz+1Lc0v5lQ1feB7nFmpbZrK2us0hv # AaBCfOyDPEEm+735vzuNRYWJFL/PViI+REtjuJMcojEn3veQjIrwrmK0T9oSr8e3 # oDzK1oAwwZMTC4KymTvYUTVDJvL5N8OW/UqIBzsiVYcchZvGhV3yMYKgxeEtIOG4 # W4Z85Y5kpQi5bpjGXFxRg46RdrTaALt1RhRmLR7U0jVSr2aYAd2+Mp2qA5Gz3/lo # OOdt47eFZ3mrAYGYQtbK2SNjQpwgQX4Iy6tOKahCgFhKIcltitvSkpJB77eVWhNW # nN2LfqMojszEue7V8EAySxry4PzlxTtFTb3Mw53XyH12BMQf2m9j7jEsHeVSATsC # AwEAAaOCAdwwggHYMA4GA1UdDwEB/wQEAwIBhjAQBgkrBgEEAYI3FQEEAwIBADAd # BgNVHQ4EFgQUayVB3vtrfP0YgAotf492XapzPbgwVAYDVR0gBE0wSzBJBgRVHSAA # MEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMv # RG9jcy9SZXBvc2l0b3J5Lmh0bTAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTAS # BgNVHRMBAf8ECDAGAQH/AgEAMB8GA1UdIwQYMBaAFNlBKbAPD2Ns72nX9c0pnqRI # ajDmMHAGA1UdHwRpMGcwZaBjoGGGX2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9w # a2lvcHMvY3JsL01pY3Jvc29mdCUyMElEJTIwVmVyaWZpZWQlMjBDb2RlJTIwU2ln # bmluZyUyMFBDQSUyMDIwMjEuY3JsMH0GCCsGAQUFBwEBBHEwbzBtBggrBgEFBQcw # AoZhaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jZXJ0cy9NaWNyb3Nv # ZnQlMjBJRCUyMFZlcmlmaWVkJTIwQ29kZSUyMFNpZ25pbmclMjBQQ0ElMjAyMDIx # LmNydDANBgkqhkiG9w0BAQwFAAOCAgEABtVQXlR01UQZY5XGQ9yIjMcD8jI0MizW # hJ1buZjg5toUQSXx/BrASwE5qxwHPBeO45pOQp6VD4iILgm8OmfylY+A7KIqttvD # UizC3sBXxjK4u7sDRiyEguXHKfL1HQAwxCLEtnRPkCPTsJA6b917lA+3foQIHC1X # DDpdQLHxGbbGXp4Rr0mFK5vxbi6tAahBi/RlzOXPh6PavKPlZ/0vhlkDdsvoJETt # ebNJCNOZ1Kav3Tg+K4va4FbOrYqRHdGGahoA/gmTYmmVqw0zkGzT53HdhfajrFGt # tJomK7qE+T8CQGiPkEIkxNmSXjCTpDqc4U1IKlTGcGYnRFGSgqrnWnkANPFsJ5ED # Hysh82lPI+PFC3FOIVMLzLL+30rqznvRgHUUAj7xfFnEiuaAx3vFVSTOLb+iigpv # dR6i8fSWpgYESOkdkn2N57tuhBs57tKwoP++vc/MVpuD1XAtmWi+lZSlahadTbDf # GKjMn+bfm2xlW9PZ6BSnCRv1MMhpcUZkAZX3gVEMef8rZc2c7BJ4ayRfX0wH43vI # 9znV+ZRJ3j0xUC0Zb82RQalF5yHkCr93x0IwvZtn6P2dNQyCP6qd3fC4RlVFtAQh # tOH0cByTR/Iqqghv6qHzL/pMptgMQQ5x8zYEYy+tCThYgYIrq7y4WEDYQfeSlqIx # QOrIUJ4IJDEwggeeMIIFhqADAgECAhMzAAAAB4ejNKN7pY4cAAAAAAAHMA0GCSqG # SIb3DQEBDAUAMHcxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29y # cG9yYXRpb24xSDBGBgNVBAMTP01pY3Jvc29mdCBJZGVudGl0eSBWZXJpZmljYXRp # b24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgMjAyMDAeFw0yMTA0MDEyMDA1 # MjBaFw0zNjA0MDEyMDE1MjBaMGMxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xNDAyBgNVBAMTK01pY3Jvc29mdCBJRCBWZXJpZmll # ZCBDb2RlIFNpZ25pbmcgUENBIDIwMjEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw # ggIKAoICAQCy8MCvGYgo4t1UekxJbGkIVQm0Uv96SvjB6yUo92cXdylN65Xy96q2 # YpWCiTas7QPTkGnK9QMKDXB2ygS27EAIQZyAd+M8X+dmw6SDtzSZXyGkxP8a8Hi6 # EO9Zcwh5A+wOALNQbNO+iLvpgOnEM7GGB/wm5dYnMEOguua1OFfTUITVMIK8faxk # P/4fPdEPCXYyy8NJ1fmskNhW5HduNqPZB/NkWbB9xxMqowAeWvPgHtpzyD3PLGVO # mRO4ka0WcsEZqyg6efk3JiV/TEX39uNVGjgbODZhzspHvKFNU2K5MYfmHh4H1qOb # U4JKEjKGsqqA6RziybPqhvE74fEp4n1tiY9/ootdU0vPxRp4BGjQFq28nzawuvaC # qUUF2PWxh+o5/TRCb/cHhcYU8Mr8fTiS15kRmwFFzdVPZ3+JV3s5MulIf3II5FXe # ghlAH9CvicPhhP+VaSFW3Da/azROdEm5sv+EUwhBrzqtxoYyE2wmuHKws00x4GGI # x7NTWznOm6x/niqVi7a/mxnnMvQq8EMse0vwX2CfqM7Le/smbRtsEeOtbnJBbtLf # oAsC3TdAOnBbUkbUfG78VRclsE7YDDBUbgWt75lDk53yi7C3n0WkHFU4EZ83i83a # bd9nHWCqfnYa9qIHPqjOiuAgSOf4+FRcguEBXlD9mAInS7b6V0UaNwIDAQABo4IC # NTCCAjEwDgYDVR0PAQH/BAQDAgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQW # BBTZQSmwDw9jbO9p1/XNKZ6kSGow5jBUBgNVHSAETTBLMEkGBFUdIAAwQTA/Bggr # BgEFBQcCARYzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1Jl # cG9zaXRvcnkuaHRtMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMA8GA1UdEwEB # /wQFMAMBAf8wHwYDVR0jBBgwFoAUyH7SaoUqG8oZmAQHJ89QEE9oqKIwgYQGA1Ud # HwR9MHsweaB3oHWGc2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY3Js # L01pY3Jvc29mdCUyMElkZW50aXR5JTIwVmVyaWZpY2F0aW9uJTIwUm9vdCUyMENl # cnRpZmljYXRlJTIwQXV0aG9yaXR5JTIwMjAyMC5jcmwwgcMGCCsGAQUFBwEBBIG2 # MIGzMIGBBggrBgEFBQcwAoZ1aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9w # cy9jZXJ0cy9NaWNyb3NvZnQlMjBJZGVudGl0eSUyMFZlcmlmaWNhdGlvbiUyMFJv # b3QlMjBDZXJ0aWZpY2F0ZSUyMEF1dGhvcml0eSUyMDIwMjAuY3J0MC0GCCsGAQUF # BzABhiFodHRwOi8vb25lb2NzcC5taWNyb3NvZnQuY29tL29jc3AwDQYJKoZIhvcN # AQEMBQADggIBAH8lKp7+1Kvq3WYK21cjTLpebJDjW4ZbOX3HD5ZiG84vjsFXT0OB # +eb+1TiJ55ns0BHluC6itMI2vnwc5wDW1ywdCq3TAmx0KWy7xulAP179qX6VSBNQ # kRXzReFyjvF2BGt6FvKFR/imR4CEESMAG8hSkPYso+GjlngM8JPn/ROUrTaeU/BR # u/1RFESFVgK2wMz7fU4VTd8NXwGZBe/mFPZG6tWwkdmA/jLbp0kNUX7elxu2+HtH # o0QO5gdiKF+YTYd1BGrmNG8sTURvn09jAhIUJfYNotn7OlThtfQjXqe0qrimgY4V # poq2MgDW9ESUi1o4pzC1zTgIGtdJ/IvY6nqa80jFOTg5qzAiRNdsUvzVkoYP7bi4 # wLCj+ks2GftUct+fGUxXMdBUv5sdr0qFPLPB0b8vq516slCfRwaktAxK1S40MCvF # bbAXXpAZnU20FaAoDwqq/jwzwd8Wo2J83r7O3onQbDO9TyDStgaBNlHzMMQgl95n # HBYMelLEHkUnVVVTUsgC0Huj09duNfMaJ9ogxhPNThgq3i8w3DAGZ61AMeF0C1M+ # mU5eucj1Ijod5O2MMPeJQ3/vKBtqGZg4eTtUHt/BPjN74SsJsyHqAdXVS5c+ItyK # Wg3Eforhox9k3WgtWTpgV4gkSiS4+A09roSdOI4vrRw+p+fL4WrxSK5nMYIalDCC # GpACAQEwcTBaMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv # cmF0aW9uMSswKQYDVQQDEyJNaWNyb3NvZnQgSUQgVmVyaWZpZWQgQ1MgQU9DIENB # IDA0AhMzAAY/ql7cGpaWP1cwAAAABj+qMA0GCWCGSAFlAwQCAQUAoF4wEAYKKwYB # BAGCNwIBDDECMAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwLwYJKoZIhvcN # AQkEMSIEIFPrnBrtioN9DYsIuSZC3YqiWj+coLOvDGAJ41lQyqSKMA0GCSqGSIb3 # DQEBAQUABIIBgHMCFmfeP2NIFoXHacrSV4L7R1hIpZwOfDQsalD1TqnMxuPiJYUQ # VYFoADFtY0ERwJOWW9wNisNAuVfkqU52vy0WRpuFB/OQ5sp66RhmhzJaORCdCzUA # k/2+jdU0h56FaLqh+5ElJIxXRLw91MgCKvpQpA67NDvs0YPLYKEN3+wCtd/xaMSQ # m3QYMoI4/rlHSsdr2NTGCTHevEznIMGQUOREmsZmfbkuHgLGZ222j2GEvPkSb+BI # +kVpFXwVuqHNVVtT7TKgLYGzEilpm1iYbJvHmRtc175jSPiSNIlD2p40K0VeX6S/ # KW/KlgYK/d+pYkhiq+ZuHe8iA789stXJNa/BNk47EHFV6sKXk44nwbDEjb0O9joJ # +I63t465UIGKoz/fmNveBVMZo50JxCjoMQ2etGyOBtS8qqRkKkeIbNZnth4r4/DB # 7o40pW8Y2Wb9R5PYWaAPDx9Kk7ebd2b6TIddVfulgpbwHYPxHfAyal61mA/DRD1C # 0WDmihdbw+aCgaGCGBQwghgQBgorBgEEAYI3AwMBMYIYADCCF/wGCSqGSIb3DQEH # AqCCF+0wghfpAgEDMQ8wDQYJYIZIAWUDBAIBBQAwggFiBgsqhkiG9w0BCRABBKCC # AVEEggFNMIIBSQIBAQYKKwYBBAGEWQoDATAxMA0GCWCGSAFlAwQCAQUABCBLkZWx # 8LaT+gDVbKIa3rgs1k3N5pYK9IQ8ohsP7QfvWQIGaoSNQB1yGBMyMDI2MDkxMDE0 # NTkyMC45MzlaMASAAgH0oIHhpIHeMIHbMQswCQYDVQQGEwJVUzETMBEGA1UECBMK # V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0 # IENvcnBvcmF0aW9uMSUwIwYDVQQLExxNaWNyb3NvZnQgQW1lcmljYSBPcGVyYXRp # b25zMScwJQYDVQQLEx5uU2hpZWxkIFRTUyBFU046NzgwMC0wNUUwLUQ5NDcxNTAz # BgNVBAMTLE1pY3Jvc29mdCBQdWJsaWMgUlNBIFRpbWUgU3RhbXBpbmcgQXV0aG9y # aXR5oIIPITCCB4IwggVqoAMCAQICEzMAAAAF5c8P/2YuyYcAAAAAAAUwDQYJKoZI # hvcNAQEMBQAwdzELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw # b3JhdGlvbjFIMEYGA1UEAxM/TWljcm9zb2Z0IElkZW50aXR5IFZlcmlmaWNhdGlv # biBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAyMDIwMB4XDTIwMTExOTIwMzIz # MVoXDTM1MTExOTIwNDIzMVowYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jv # c29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0Eg # VGltZXN0YW1waW5nIENBIDIwMjAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK # AoICAQCefOdSY/3gxZ8FfWO1BiKjHB7X55cz0RMFvWVGR3eRwV1wb3+yq0OXDEqh # UhxqoNv6iYWKjkMcLhEFxvJAeNcLAyT+XdM5i2CgGPGcb95WJLiw7HzLiBKrxmDj # 1EQB/mG5eEiRBEp7dDGzxKCnTYocDOcRr9KxqHydajmEkzXHOeRGwU+7qt8Md5l4 # bVZrXAhK+WSk5CihNQsWbzT1nRliVDwunuLkX1hyIWXIArCfrKM3+RHh+Sq5RZ8a # Yyik2r8HxT+l2hmRllBvE2Wok6IEaAJanHr24qoqFM9WLeBUSudz+qL51HwDYyID # PSQ3SeHtKog0ZubDk4hELQSxnfVYXdTGncaBnB60QrEuazvcob9n4yR65pUNBCF5 # qeA4QwYnilBkfnmeAjRN3LVuLr0g0FXkqfYdUmj1fFFhH8k8YBozrEaXnsSL3kdT # D01X+4LfIWOuFzTzuoslBrBILfHNj8RfOxPgjuwNvE6YzauXi4orp4Sm6tF245Da # FOSYbWFK5ZgG6cUY2/bUq3g3bQAqZt65KcaewEJ3ZyNEobv35Nf6xN6FrA6jF944 # 7+NHvCjeWLCQZ3M8lgeCcnnhTFtyQX3XgCoc6IRXvFOcPVrr3D9RPHCMS6Ckg8wg # gTrtIVnY8yjbvGOUsAdZbeXUIQAWMs0d3cRDv09SvwVRd61evQIDAQABo4ICGzCC # AhcwDgYDVR0PAQH/BAQDAgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBRr # aSg6NS9IY0DPe9ivSek+2T3bITBUBgNVHSAETTBLMEkGBFUdIAAwQTA/BggrBgEF # BQcCARYzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9z # aXRvcnkuaHRtMBMGA1UdJQQMMAoGCCsGAQUFBwMIMBkGCSsGAQQBgjcUAgQMHgoA # UwB1AGIAQwBBMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUyH7SaoUqG8oZ # mAQHJ89QEE9oqKIwgYQGA1UdHwR9MHsweaB3oHWGc2h0dHA6Ly93d3cubWljcm9z # b2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUyMElkZW50aXR5JTIwVmVyaWZp # Y2F0aW9uJTIwUm9vdCUyMENlcnRpZmljYXRlJTIwQXV0aG9yaXR5JTIwMjAyMC5j # cmwwgZQGCCsGAQUFBwEBBIGHMIGEMIGBBggrBgEFBQcwAoZ1aHR0cDovL3d3dy5t # aWNyb3NvZnQuY29tL3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBJZGVudGl0eSUy # MFZlcmlmaWNhdGlvbiUyMFJvb3QlMjBDZXJ0aWZpY2F0ZSUyMEF1dGhvcml0eSUy # MDIwMjAuY3J0MA0GCSqGSIb3DQEBDAUAA4ICAQBfiHbHfm21WhV150x4aPpO4dhE # mSUVpbixNDmv6TvuIHv1xIs174bNGO/ilWMm+Jx5boAXrJxagRhHQtiFprSjMktT # liL4sKZyt2i+SXncM23gRezzsoOiBhv14YSd1Klnlkzvgs29XNjT+c8hIfPRe9rv # VCMPiH7zPZcw5nNjthDQ+zD563I1nUJ6y59TbXWsuyUsqw7wXZoGzZwijWT5oc6G # vD3HDokJY401uhnj3ubBhbkR83RbfMvmzdp3he2bvIUztSOuFzRqrLfEvsPkVHYn # vH1wtYyrt5vShiKheGpXa2AWpsod4OJyT4/y0dggWi8g/tgbhmQlZqDUf3UqUQsZ # aLdIu/XSjgoZqDjamzCPJtOLi2hBwL+KsCh0Nbwc21f5xvPSwym0Ukr4o5sCcMUc # Sy6TEP7uMV8RX0eH/4JLEpGyae6Ki8JYg5v4fsNGif1OXHJ2IWG+7zyjTDfkmQ1s # nFOTgyEX8qBpefQbF0fx6URrYiarjmBprwP6ZObwtZXJ23jK3Fg/9uqM3j0P01nz # VygTppBabzxPAh/hHhhls6kwo3QLJ6No803jUsZcd4JQxiYHHc+Q/wAMcPUnYKv/ # q2O444LO1+n6j01z5mggCSlRwD9faBIySAcA9S8h22hIAcRQqIGEjolCK9F6nK9Z # yX4lhthsGHumaABdWzCCB5cwggV/oAMCAQICEzMAAABXJNOV4KLpyTEAAAAAAFcw # DQYJKoZIhvcNAQEMBQAwYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29m # dCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGlt # ZXN0YW1waW5nIENBIDIwMjAwHhcNMjUxMDIzMjA0NjUzWhcNMjYxMDIyMjA0NjUz # WjCB2zELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT # B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UE # CxMcTWljcm9zb2Z0IEFtZXJpY2EgT3BlcmF0aW9uczEnMCUGA1UECxMeblNoaWVs # ZCBUU1MgRVNOOjc4MDAtMDVFMC1EOTQ3MTUwMwYDVQQDEyxNaWNyb3NvZnQgUHVi # bGljIFJTQSBUaW1lIFN0YW1waW5nIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEB # BQADggIPADCCAgoCggIBALFspQqTCH24syS2NZD1ztnJl9h0Vr0WwJnikmeXse/4 # wspnVexGqfiHNoqkbVg5CinuYC+iVfNMLZ+QtqhySz8VGBSjRt1JB5ACNtTKAjfm # Fp4U/Cv2Lj4m+vuve9I3W3hSiImTFsHeYZ6V/Sd43rXrhHV26fw3xQSteSbg9yTs # 1rhdrLkAj4KmI0D5P4KavtygirVyUW10gkifWLSE1NiB8Jn3RO5dj32deeMNONaa # Pnw3k49ICTs3Ffyb+ekNDPsNfYwCqPyOTxM6y1dSD0J5j+KK9V+EWyV5PDjV8jjn # 1zsStlS6TcYJJStcgHs2xT9rs6ooWl5FtYfRkCxhDShEp3s8IHUWizTWmLZvAE/6 # WR2Cd+ZmVapGXTCHJKUByZPxdX0i8gynirR+EwuHHNxEilDICLatO2WZu+CQrH4Z # q0NYo1TQ4tUpZ/kAWpoAu1r4mW5EJ3HkEavQ2PuoQDcDq2rAGVIla9pD7o9Yxwzl # 81BuDvUEyu9D/6F0qmQDdaE791HxfCUxpgMYPpdWTzs+dDGPehwQ8P92yP8ARjby # 5Ony1Z68RjeQebpxf5WL441myFHcgT1UJzzil7tPEkR22NfTNR6Fl+jzWb/r80nq # lXllhynSowtxo1Y22xqYviS24smikUsBKqOPbSS77uvXEO3VrG5LGouE1EZ1Y9pj # AgMBAAGjggHLMIIBxzAdBgNVHQ4EFgQUjoPJXi01DgIJSGfm416Yg+0SkqcwHwYD # VR0jBBgwFoAUa2koOjUvSGNAz3vYr0npPtk92yEwbAYDVR0fBGUwYzBhoF+gXYZb # aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIw # UHVibGljJTIwUlNBJTIwVGltZXN0YW1waW5nJTIwQ0ElMjAyMDIwLmNybDB5Bggr # BgEFBQcBAQRtMGswaQYIKwYBBQUHMAKGXWh0dHA6Ly93d3cubWljcm9zb2Z0LmNv # bS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwUHVibGljJTIwUlNBJTIwVGltZXN0 # YW1waW5nJTIwQ0ElMjAyMDIwLmNydDAMBgNVHRMBAf8EAjAAMBYGA1UdJQEB/wQM # MAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIHgDBmBgNVHSAEXzBdMFEGDCsGAQQB # gjdMg30BATBBMD8GCCsGAQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20v # cGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5odG0wCAYGZ4EMAQQCMA0GCSqGSIb3DQEB # DAUAA4ICAQBydcB2POmZOUlAQz2NuXf7vWCVWmjWu9bsY1+HMjv1yeLjxDQkjsJE # U5zaIDy8Uw9BYN8+ExX/9k/9CBUsXbVlbU44c65/liyJ83kWsFIUwhVazwSShFlb # IZviIO/5weyWyTfPPpbSJgWy+ZE9UrQS3xulJLAHA2zUkMMPdAlF4RrngcZZ0r45 # AF9aIYjdestWwdrNK70MfArHqZdgrgXn03w6zBs1v7czceWGitg/DlsHqk1mXBpS # TuGI2TSPN3E60IIXx5f/AFzh4/HFi98BBZbUELNsXkWAG9ynZ5e6CFiil1mgWCWO # T90D7Igvg0zKe3o3WCk629/en94K/sC/zLOf2d7yFmTySb9fKjcONH1Db3kZ8MzE # J8fHTNmxrl10Gecuz/Gl0+ByTKN+PambZ+F0MIlBPww6fvjFC9JII73fw3qO169+ # 9TxTz2G+E26GYY1dcffsAhw6DqTQgbflbl1O/MrSXSs0NSb9nBD9RfR/f8Ei7DA1 # L1jBO7vZhhJTjw2TzFa/ALgRLi3W00hHWi8LGQaZc8SwXIMYWfwrN9MgYbhN0Iak # 9WA2dqWuekXsTwNkmrD3E6E+oCYCehNOgZmds0Ezb1jo7OV0Kh22Ll3KHg3MHtlG # guxAzhg/BpixPS4qrULLkAjO7+yNsUfrD2U9gMf/OR4yJDPtzM0ytTGCB0YwggdC # AgEBMHgwYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh # dGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5n # IENBIDIwMjACEzMAAABXJNOV4KLpyTEAAAAAAFcwDQYJYIZIAWUDBAIBBQCgggSf # MBEGCyqGSIb3DQEJEAIPMQIFADAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQw # HAYJKoZIhvcNAQkFMQ8XDTI2MDkxMDE0NTkyMFowLwYJKoZIhvcNAQkEMSIEIHDa # 0uDuHonnPl/AnEHlBpCcrliOytuV3edqrK4+D2ArMIG5BgsqhkiG9w0BCRACLzGB # qTCBpjCBozCBoAQg9TyfZLUFbkxliGyizuH9VVDpVFNvQEQhKQ2ZhUx421IwfDBl # pGMwYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv # bjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5nIENB # IDIwMjACEzMAAABXJNOV4KLpyTEAAAAAAFcwggNhBgsqhkiG9w0BCRACEjGCA1Aw # ggNMoYIDSDCCA0QwggIsAgEBMIIBCaGB4aSB3jCB2zELMAkGA1UEBhMCVVMxEzAR # BgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1p # Y3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UECxMcTWljcm9zb2Z0IEFtZXJpY2Eg # T3BlcmF0aW9uczEnMCUGA1UECxMeblNoaWVsZCBUU1MgRVNOOjc4MDAtMDVFMC1E # OTQ3MTUwMwYDVQQDEyxNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lIFN0YW1waW5n # IEF1dGhvcml0eaIjCgEBMAcGBSsOAwIaAxUA/S8xOZxCUQFBNkrN8Wiij1x5y8Og # ZzBlpGMwYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh # dGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBSU0EgVGltZXN0YW1waW5n # IENBIDIwMjAwDQYJKoZIhvcNAQELBQACBQDuTLVTMCIYDzIwMjYwOTEwMDQ0OTIz # WhgPMjAyNjA5MTEwNDQ5MjNaMHcwPQYKKwYBBAGEWQoEATEvMC0wCgIFAO5MtVMC # AQAwCgIBAAICCTQCAf8wBwIBAAICEzswCgIFAO5OBtMCAQAwNgYKKwYBBAGEWQoE # AjEoMCYwDAYKKwYBBAGEWQoDAqAKMAgCAQACAwehIKEKMAgCAQACAwGGoDANBgkq # hkiG9w0BAQsFAAOCAQEAElwv8ij8wHFHNVJlXnm0SnxcHQDVaJR31VycLOU4nc32 # tl7FGcTUWyYoeVl8w9e0zg43AmjstQVX6qcFYJItLazbMxfif7z48WSZ6Uxf6tWi # 6Re4pGmmdoB0uXld/nUjDITE4MdHoI8Lv0qeCEM4B9ew8Erjb36Kgyri23EQqG+6 # lv4MvfjDVNW3lr8/xR+qdkyRh4FmX3syzOhyhyz2b23tt0d9Qh1mOzSBZmdL7TuO # zOCMPEufzubzQNo+DuMiro83HrTlYiDcu7VSvivDZ2YmwqC//qSh/6IfX+7UkLKm # o00FJ/7U0clL5mWmIRbUxYlSKWKtPs75JbUKyqigWjANBgkqhkiG9w0BAQEFAASC # AgCcBU1eOSFPkiFQ+oS/AXgBnwl4pbsLHBS34dImN3T0pthyoGqhHBExaWBigiix # eeym2Z4ImhYlp39yLEUNCaRx3ptFqd5pEHUn/KkliwJEtd1apaeWAdUnkmmvFv0g # sGruMV5xNAwYofeik1p8l4jDfXUYwo/Lx+I56m0sxgfT7WYhrjwR/LL+lIOFSfp5 # oMLJiuMyObyjqNxqnlVAfb8/iAnDEC21FHWi0P96CYEPwEOD0psWmxCGHCY3u3mm # dzLlsdBDpxFCShiUm0rlsMmCqurzKFvKUZPcwjtmjfyDoPCq+3B8q2d5NsvKTch9 # xPUqmEtsaUoCxTAaWF7DIvZwXk4Gauf+qvpn9I1NiWjOAZLVomhckWtc8gKvN+2J # hGDJhAlEeRotLIrWM0fgU4AMev3kNbR5mNzUjCXicNSX+onw+ALyGBVahcBrsGHo # uc+oNzQZD8qFNcn9XTKE+nMv1UkVa4r2LNhZaT5QTcgQwcm4pEH9JoF/Qv2OA+NJ # fYU3nUbgNhB1Cy1paIAOyh5WONdfNldCVRPf9+vV+7XEFPiHyKnoMnsew0TVP5By # Jq4B6wa0ioiRYG8t0TIl+RE34mO7oKpWMyw9Heda6UOjFFo/eZSHhRqx7mIsxeUc # wEfhiW7ZjWiFs+kP++S8s6PzXxeBiuKE7vnxWiIV+WwRAA== # SIG # End signature block |