Private/Utilities.ps1
|
function Get-OptionalProperty { param([object] $InputObject, [string] $Name) if ($null -ne $InputObject) { $property = $InputObject.PSObject.Properties[$Name] if ($null -ne $property) { if ($property.Value -is [array]) { return $property.Value } # Preserve enumerable metadata objects, such as HTTP headers. return ,$property.Value } } } function Get-QueryField { param([object] $Row, [string] $Name) foreach ($key in @("[$Name]", $Name)) { $property = $Row.PSObject.Properties[$key] if ($null -ne $property) { return $property.Value } } throw "Query result is missing '$Name'. The Metrics App schema or response is incompatible." } function ConvertTo-MetricNumber { param([object] $Value, [string] $Name) $number = [decimal] 0 $culture = [System.Globalization.CultureInfo]::InvariantCulture $text = [System.Convert]::ToString($Value, $culture) if ($null -eq $Value -or -not [decimal]::TryParse( $text, [System.Globalization.NumberStyles]::Float, $culture, [ref] $number ) -or $number -lt 0) { throw "Invalid or missing nonnegative numeric metric '$Name': '$text'. No cost was inferred." } return $number } function ConvertTo-ModelTime { param([object] $Value) $time = [datetime]::MinValue # REST clients can deserialize ISO strings. Preserve the app's clock, # including DateTimeOffset wall time, rather than the caller's timezone. if ($Value -is [datetime]) { $time = $Value } elseif ($Value -is [datetimeoffset]) { $time = $Value.DateTime } elseif (-not [datetime]::TryParseExact( [string] $Value, 'yyyy-MM-ddTHH:mm:ss', [System.Globalization.CultureInfo]::InvariantCulture, [System.Globalization.DateTimeStyles]::None, [ref] $time )) { throw "Invalid model timestamp '$Value'. Expected yyyy-MM-ddTHH:mm:ss in the app's clock." } return [datetime]::SpecifyKind($time, [System.DateTimeKind]::Unspecified) } function ConvertTo-DaxTime { param([datetime] $Time) return "DATE($($Time.Year),$($Time.Month),$($Time.Day)) + TIME($($Time.Hour),$($Time.Minute),$($Time.Second))" } function ConvertTo-RefreshUtcTime { param([object] $Value) if ($Value -is [datetimeoffset]) { return $Value.UtcDateTime } if ($Value -is [datetime]) { if ($Value.Kind -eq [System.DateTimeKind]::Unspecified) { return [datetime]::SpecifyKind($Value, [System.DateTimeKind]::Utc) } return $Value.ToUniversalTime() } $time = [datetimeoffset]::MinValue if ([string] $Value -notmatch '^\d{4}-\d{2}-\d{2}T' -or -not [datetimeoffset]::TryParse( [string] $Value, [System.Globalization.CultureInfo]::InvariantCulture, ([System.Globalization.DateTimeStyles]::AssumeUniversal -bor [System.Globalization.DateTimeStyles]::AdjustToUniversal), [ref] $time )) { throw "Invalid refresh-history UTC timestamp '$Value'. Refresh freshness was not inferred." } return $time.UtcDateTime } function Get-OverageUtcNow { return [datetime]::UtcNow } # SIG # Begin signature block # MII9LgYJKoZIhvcNAQcCoII9HzCCPRsCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCD2fh22T9oiCkS6 # IATJ/x9z0qXfhygJ36HHOJm/3puG8KCCIfAwggXMMIIDtKADAgECAhBUmNLR1FsZ # 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 # 03u4aUoqlmZpxJTG9F9urJh4iIAGXKKy7aIwggalMIIEjaADAgECAhMzAAdbGEDf # TgkXlXTxAAAAB1sYMA0GCSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYD # VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJ # RCBWZXJpZmllZCBDUyBFT0MgQ0EgMDQwHhcNMjYxMDAxMDI1MDE5WhcNMjYxMDA0 # MDI1MDE5WjBnMQswCQYDVQQGEwJVUzELMAkGA1UECBMCbmQxEzARBgNVBAcTCldl # c3QgRmFyZ28xGjAYBgNVBAoTEUNhbWVyb24gQmF0dGFnbGVyMRowGAYDVQQDExFD # YW1lcm9uIEJhdHRhZ2xlcjCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGB # ALVoOcv+l3IwxEApp8l09TPrsNALwfZgh9Fq2DPFwPAODX3D4adBG9TwaG+9WhUz # sKgj3ICTmmW5RMqkERpPqxbWgWpyH11k5wv1MtLM4DN28sq+GgdFOHiifMzEaZBe # szBknSx9GoX8KqsmLlr/ihXJ8EePbgGPTzpzc7Y/zUtwJxgo4J7FCPvKwp1hwm+b # 55pz/3EjdVOW8xH+L3yj0cRfEmXiVMPlz/v/3cObU1H/v3tHNDOFQTYb7oUYdvAD # vuwQv8uO75S+T9B9ZLKq6KCTGOBJL8RIm8lMgus2osbraofB10Ta60UZXGIuph3S # 5v/3YrXMLL4pZYTRzOg1QBwVxm0vIuOANpoTrSOz+cu46JbllR7ztp4MRokIDc1u # /1fT/fZ88Qby0gH9qZats619otwnZ1cCZVXqlNPjunYblf0NxpguejrRGfoL8hOE # g3g9QRZ4qPAl6ge4ektG5p1QhrrfwPzXG1FVXSpK3wz0GT9rU3b1DSCyX3LU8Aeh # 7wIDAQABo4IB1TCCAdEwDAYDVR0TAQH/BAIwADAOBgNVHQ8BAf8EBAMCB4AwPAYD # VR0lBDUwMwYKKwYBBAGCN2EBAAYIKwYBBQUHAwMGGysGAQQBgjdhgpCMjhjwj9wE # gfC73D+ByYzTEzAdBgNVHQ4EFgQUEB2TH85lgaBpjWqWpUWcJncgK08wHwYDVR0j # BBgwFoAUmvFUd3UMhxY3RqCs3nn59H/BeOkwZwYDVR0fBGAwXjBcoFqgWIZWaHR0 # cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIwSUQl # MjBWZXJpZmllZCUyMENTJTIwRU9DJTIwQ0ElMjAwNC5jcmwwdAYIKwYBBQUHAQEE # aDBmMGQGCCsGAQUFBzAChlhodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3Bz # L2NlcnRzL01pY3Jvc29mdCUyMElEJTIwVmVyaWZpZWQlMjBDUyUyMEVPQyUyMENB # JTIwMDQuY3J0MFQGA1UdIARNMEswSQYEVR0gADBBMD8GCCsGAQUFBwIBFjNodHRw # Oi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5odG0w # DQYJKoZIhvcNAQEMBQADggIBACw5WA5GTU/3h+1vi/q8rC97QBcMfueg0oqMiEg1 # E123nAksZOfJQTe6gWUqa/sWuHvno+hpV8OPTC2FhLlD6nc9OMNmt6IE/eYIDtFv # pzLIg5t11T8NRLpYMINhhezLFmy8ExtA0F4d0qMPzXqIZRnfON3skT6iwm1oZIbV # y0We+ScjAgVFjcCrCeUeZbmQCBG9qIhzmWazMQTt0KDDsCDF14bDmTLLhRsbkNKh # HOYToMRfndhof+Rn0ZrYMXt5eCqhkmaXrMK7NBwqXO2jT6n1/3I7tva+xME8Na6B # Vuu+PcdaQa35GpigYQvJJvqyuV+3Xq9rIXR+TPQyK1249VJL/npb7Pk8yYncLY5t # qTODKIQqCi7V8tuFr3uTmD3TYdsOlAAFodmLzcoYEc4HG7cHy36n3milM6pz8U3K # ZQ8f8Uk1CdSubDxd65JDLWeEcYdWU3agZJaUmIzJgljj0uO6TWThMPXnZ0pcwHwP # QcuQs6Xty4trf0dSaMGRRZS7pvL1mHYlBapOIitmDHiph4SuFnIigpX0EX69zDny # 4jS7H13t1aFvPBYx6+9aRnlmSAMUpZCKqiFopMrIQa8Rn0AyL6RPuJ1RRem7kkgU # v6YmvCYJAs46yoWVAlop/2f+lhG9Zd71QjuVI+sed6Hoe100E8QKwF6JW0KDX+fu # oxsrMIIGpTCCBI2gAwIBAgITMwAHWxhA304JF5V08QAAAAdbGDANBgkqhkiG9w0B # AQwFADBaMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0 # aW9uMSswKQYDVQQDEyJNaWNyb3NvZnQgSUQgVmVyaWZpZWQgQ1MgRU9DIENBIDA0 # MB4XDTI2MTAwMTAyNTAxOVoXDTI2MTAwNDAyNTAxOVowZzELMAkGA1UEBhMCVVMx # CzAJBgNVBAgTAm5kMRMwEQYDVQQHEwpXZXN0IEZhcmdvMRowGAYDVQQKExFDYW1l # cm9uIEJhdHRhZ2xlcjEaMBgGA1UEAxMRQ2FtZXJvbiBCYXR0YWdsZXIwggGiMA0G # CSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC1aDnL/pdyMMRAKafJdPUz67DQC8H2 # YIfRatgzxcDwDg19w+GnQRvU8GhvvVoVM7CoI9yAk5pluUTKpBEaT6sW1oFqch9d # ZOcL9TLSzOAzdvLKvhoHRTh4onzMxGmQXrMwZJ0sfRqF/CqrJi5a/4oVyfBHj24B # j086c3O2P81LcCcYKOCexQj7ysKdYcJvm+eac/9xI3VTlvMR/i98o9HEXxJl4lTD # 5c/7/93Dm1NR/797RzQzhUE2G+6FGHbwA77sEL/Lju+Uvk/QfWSyquigkxjgSS/E # SJvJTILrNqLG62qHwddE2utFGVxiLqYd0ub/92K1zCy+KWWE0czoNUAcFcZtLyLj # gDaaE60js/nLuOiW5ZUe87aeDEaJCA3Nbv9X0/32fPEG8tIB/amWrbOtfaLcJ2dX # AmVV6pTT47p2G5X9DcaYLno60Rn6C/IThIN4PUEWeKjwJeoHuHpLRuadUIa638D8 # 1xtRVV0qSt8M9Bk/a1N29Q0gsl9y1PAHoe8CAwEAAaOCAdUwggHRMAwGA1UdEwEB # /wQCMAAwDgYDVR0PAQH/BAQDAgeAMDwGA1UdJQQ1MDMGCisGAQQBgjdhAQAGCCsG # AQUFBwMDBhsrBgEEAYI3YYKQjI4Y8I/cBIHwu9w/gcmM0xMwHQYDVR0OBBYEFBAd # kx/OZYGgaY1qlqVFnCZ3ICtPMB8GA1UdIwQYMBaAFJrxVHd1DIcWN0agrN55+fR/ # wXjpMGcGA1UdHwRgMF4wXKBaoFiGVmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9w # a2lvcHMvY3JsL01pY3Jvc29mdCUyMElEJTIwVmVyaWZpZWQlMjBDUyUyMEVPQyUy # MENBJTIwMDQuY3JsMHQGCCsGAQUFBwEBBGgwZjBkBggrBgEFBQcwAoZYaHR0cDov # L3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jZXJ0cy9NaWNyb3NvZnQlMjBJRCUy # MFZlcmlmaWVkJTIwQ1MlMjBFT0MlMjBDQSUyMDA0LmNydDBUBgNVHSAETTBLMEkG # BFUdIAAwQTA/BggrBgEFBQcCARYzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3Br # aW9wcy9Eb2NzL1JlcG9zaXRvcnkuaHRtMA0GCSqGSIb3DQEBDAUAA4ICAQAsOVgO # Rk1P94ftb4v6vKwve0AXDH7noNKKjIhINRNdt5wJLGTnyUE3uoFlKmv7Frh756Po # aVfDj0wthYS5Q+p3PTjDZreiBP3mCA7Rb6cyyIObddU/DUS6WDCDYYXsyxZsvBMb # QNBeHdKjD816iGUZ3zjd7JE+osJtaGSG1ctFnvknIwIFRY3AqwnlHmW5kAgRvaiI # c5lmszEE7dCgw7AgxdeGw5kyy4UbG5DSoRzmE6DEX53YaH/kZ9Ga2DF7eXgqoZJm # l6zCuzQcKlzto0+p9f9yO7b2vsTBPDWugVbrvj3HWkGt+RqYoGELySb6srlft16v # ayF0fkz0MitduPVSS/56W+z5PMmJ3C2ObakzgyiEKgou1fLbha97k5g902HbDpQA # BaHZi83KGBHOBxu3B8t+p95opTOqc/FNymUPH/FJNQnUrmw8XeuSQy1nhHGHVlN2 # oGSWlJiMyYJY49Ljuk1k4TD152dKXMB8D0HLkLOl7cuLa39HUmjBkUWUu6by9Zh2 # JQWqTiIrZgx4qYeErhZyIoKV9BF+vcw58uI0ux9d7dWhbzwWMevvWkZ5ZkgDFKWQ # iqohaKTKyEGvEZ9AMi+kT7idUUXpu5JIFL+mJrwmCQLOOsqFlQJaKf9n/pYRvWXe # 9UI7lSPrHneh6HtdNBPECsBeiVtCg1/n7qMbKzCCBygwggUQoAMCAQICEzMAAAAX # J0UJC4uHr8YAAAAAABcwDQYJKoZIhvcNAQEMBQAwYzELMAkGA1UEBhMCVVMxHjAc # BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE0MDIGA1UEAxMrTWljcm9zb2Z0 # IElEIFZlcmlmaWVkIENvZGUgU2lnbmluZyBQQ0EgMjAyMTAeFw0yNjAzMjYxODEx # MzFaFw0zMTAzMjYxODExMzFaMFoxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJRCBWZXJpZmll # ZCBDUyBFT0MgQ0EgMDQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCC # x2T+Aw9mKgGVzJ+Tq0PMn49G3itIsYpbx7ClLSRHFe1RELdPcZ1sIqWOhsSfy6yy # qEapClGH9Je9FXA1cQgZvvpQbkg+QInVLr/0EPrVBCwrM96lbRI2PxNeCwXG9Lsy # W2hG6KQgintDmNCBo4zpDIr377plVdSliZm6UB7rHwmvBnR02QT6tnrqWq2ihzB6 # lRJVTEzuh0OafzIMeMnYM0+x+ve5EOLHdfiq+HXiMf9Jb7YLHtYgyHIiJA7bTWLq # FSLGaTh7ZlbxbsLXA91OOroEpv7OjzFuu3tkpC9FflA4Dp2Euq4+qPmxUqfGp+TX # 0gLRJp9NJOzzILjcTD3rkFFFbxUv1xyg6avivFDLtoKBhM2Td138umE1pNOacanu # SYtPHIeQHmB6haFi64avLBLwTTAm/Rbit860cFXR72wq+5Qh4hSmezHqKXERWPpV # Be+APrJ4Iqc+aPeMmIkoCWZQO22HnLNFUFSXjiwyIbgvlH/LIAJEqTafTzxDZgKh # lLU7zr6gwsq3WNpcYQI6NuxWnwh3VVDDyF7onQqKs5Ll7bleVN0Y8VvqgE45ppyB # bvwqN/Run5fMCCRz3aYMY0kZhKO92eP7t4zHqZ5bQMAgZ0tE2Pz/jb0wiykUF/Pc # oOqqk3vVLiRDYst6vd3GEMNzMpUUvQcvBG46+COIbwIDAQABo4IB3DCCAdgwDgYD # VR0PAQH/BAQDAgGGMBAGCSsGAQQBgjcVAQQDAgEAMB0GA1UdDgQWBBSa8VR3dQyH # FjdGoKzeefn0f8F46TBUBgNVHSAETTBLMEkGBFUdIAAwQTA/BggrBgEFBQcCARYz # aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnku # aHRtMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMBIGA1UdEwEB/wQIMAYBAf8C # AQAwHwYDVR0jBBgwFoAU2UEpsA8PY2zvadf1zSmepEhqMOYwcAYDVR0fBGkwZzBl # oGOgYYZfaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9z # b2Z0JTIwSUQlMjBWZXJpZmllZCUyMENvZGUlMjBTaWduaW5nJTIwUENBJTIwMjAy # MS5jcmwwfQYIKwYBBQUHAQEEcTBvMG0GCCsGAQUFBzAChmFodHRwOi8vd3d3Lm1p # Y3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMElEJTIwVmVyaWZp # ZWQlMjBDb2RlJTIwU2lnbmluZyUyMFBDQSUyMDIwMjEuY3J0MA0GCSqGSIb3DQEB # DAUAA4ICAQCQdVoZ/U0m38l2iKaZFlsxavptpoOLyaR1a9ZK2TSF1kOnFJhMDse6 # KkCgsveoiEjXTVc6Xt86IKHn76Nk5qZB0BXv2iMRQ2giAJmYvZcmstoZqfB2M3Kd # 5wnJhUJOtF/b6HsqSelY6nhrF06zor1lDmDQixBZcLB9zR1+RKQso1jekNxYuUk+ # HaN3k1S57qk0O//YbkwU0mELCW04N5vICMZx5T5c7Nq/7uLvbVhCdD7f2bZpA4U7 # vOkB1ooB4AaER3pjoJ0Mad5LFyi6Na9p9Zu/hrLeOjU5FItS5YxsqvlfXxAThJ17 # 6CmkYstKRmytSHZ7JhKRfV6e9Zftk/ODb/CK4pGVAVqsOf4337bQGrOHHCQ3IvN9 # gmnUuDh8JdvbheoWPHxIN1GB5sUiY584tXN7xdD8LCSsRqJvQ8e7a3gZWTgViugR # s1QWq+N0G9Nje6JHlN1CjJehge+H5PGktJja+juGEr0P+ukSkcL6qaZxFQTh3SDI # 71lvW++3bl/Ezd6SO8N9Udw+reoyvRHCyTiSsplZQSBTVJdPmo3qCpGuyHFtPo5C # Bn3/FPTiqJd3M9BHoqKd0G9Kmg6fGcAvFwnLNXA2kov727wRljL3ypfqL7iAT/Yn # pxul6RwHRlcOf9dDGg1RRvr92NP/CWVXIb68geR2rvU/NsfmtjF1wDCCB54wggWG # oAMCAQICEzMAAAAHh6M0o3uljhwAAAAAAAcwDQYJKoZIhvcNAQEMBQAwdzELMAkG # A1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjFIMEYGA1UE # AxM/TWljcm9zb2Z0IElkZW50aXR5IFZlcmlmaWNhdGlvbiBSb290IENlcnRpZmlj # YXRlIEF1dGhvcml0eSAyMDIwMB4XDTIxMDQwMTIwMDUyMFoXDTM2MDQwMTIwMTUy # MFowYzELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlv # bjE0MDIGA1UEAxMrTWljcm9zb2Z0IElEIFZlcmlmaWVkIENvZGUgU2lnbmluZyBQ # Q0EgMjAyMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALLwwK8ZiCji # 3VR6TElsaQhVCbRS/3pK+MHrJSj3Zxd3KU3rlfL3qrZilYKJNqztA9OQacr1AwoN # cHbKBLbsQAhBnIB34zxf52bDpIO3NJlfIaTE/xrweLoQ71lzCHkD7A4As1Bs076I # u+mA6cQzsYYH/Cbl1icwQ6C65rU4V9NQhNUwgrx9rGQ//h890Q8JdjLLw0nV+ayQ # 2Fbkd242o9kH82RZsH3HEyqjAB5a8+Ae2nPIPc8sZU6ZE7iRrRZywRmrKDp5+Tcm # JX9MRff241UaOBs4NmHOyke8oU1TYrkxh+YeHgfWo5tTgkoSMoayqoDpHOLJs+qG # 8Tvh8SnifW2Jj3+ii11TS8/FGngEaNAWrbyfNrC69oKpRQXY9bGH6jn9NEJv9weF # xhTwyvx9OJLXmRGbAUXN1U9nf4lXezky6Uh/cgjkVd6CGUAf0K+Jw+GE/5VpIVbc # Nr9rNE50Sbmy/4RTCEGvOq3GhjITbCa4crCzTTHgYYjHs1NbOc6brH+eKpWLtr+b # Gecy9CrwQyx7S/BfYJ+ozst7+yZtG2wR461uckFu0t+gCwLdN0A6cFtSRtR8bvxV # FyWwTtgMMFRuBa3vmUOTnfKLsLefRaQcVTgRnzeLzdpt32cdYKp+dhr2ogc+qM6K # 4CBI5/j4VFyC4QFeUP2YAidLtvpXRRo3AgMBAAGjggI1MIICMTAOBgNVHQ8BAf8E # BAMCAYYwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFNlBKbAPD2Ns72nX9c0p # nqRIajDmMFQGA1UdIARNMEswSQYEVR0gADBBMD8GCCsGAQUFBwIBFjNodHRwOi8v # d3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5odG0wGQYJ # KwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSME # GDAWgBTIftJqhSobyhmYBAcnz1AQT2ioojCBhAYDVR0fBH0wezB5oHegdYZzaHR0 # cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIwSWRl # bnRpdHklMjBWZXJpZmljYXRpb24lMjBSb290JTIwQ2VydGlmaWNhdGUlMjBBdXRo # b3JpdHklMjAyMDIwLmNybDCBwwYIKwYBBQUHAQEEgbYwgbMwgYEGCCsGAQUFBzAC # hnVodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29m # dCUyMElkZW50aXR5JTIwVmVyaWZpY2F0aW9uJTIwUm9vdCUyMENlcnRpZmljYXRl # JTIwQXV0aG9yaXR5JTIwMjAyMC5jcnQwLQYIKwYBBQUHMAGGIWh0dHA6Ly9vbmVv # Y3NwLm1pY3Jvc29mdC5jb20vb2NzcDANBgkqhkiG9w0BAQwFAAOCAgEAfyUqnv7U # q+rdZgrbVyNMul5skONbhls5fccPlmIbzi+OwVdPQ4H55v7VOInnmezQEeW4LqK0 # wja+fBznANbXLB0KrdMCbHQpbLvG6UA/Xv2pfpVIE1CRFfNF4XKO8XYEa3oW8oVH # +KZHgIQRIwAbyFKQ9iyj4aOWeAzwk+f9E5StNp5T8FG7/VEURIVWArbAzPt9ThVN # 3w1fAZkF7+YU9kbq1bCR2YD+MtunSQ1Rft6XG7b4e0ejRA7mB2IoX5hNh3UEauY0 # byxNRG+fT2MCEhQl9g2i2fs6VOG19CNep7SquKaBjhWmirYyANb0RJSLWjinMLXN # OAga10n8i9jqeprzSMU5ODmrMCJE12xS/NWShg/tuLjAsKP6SzYZ+1Ry358ZTFcx # 0FS/mx2vSoU8s8HRvy+rnXqyUJ9HBqS0DErVLjQwK8VtsBdekBmdTbQVoCgPCqr+ # PDPB3xajYnzevs7eidBsM71PINK2BoE2UfMwxCCX3mccFgx6UsQeRSdVVVNSyALQ # e6PT12418xon2iDGE81OGCreLzDcMAZnrUAx4XQLUz6ZTl65yPUiOh3k7Yww94lD # f+8oG2oZmDh5O1Qe38E+M3vhKwmzIeoB1dVLlz4i3IpaDcR+iuGjH2TdaC1ZOmBX # iCRKJLj4DT2uhJ04ji+tHD6n58vhavFIrmcxghqUMIIakAIBATBxMFoxCzAJBgNV # BAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMT # Ik1pY3Jvc29mdCBJRCBWZXJpZmllZCBDUyBFT0MgQ0EgMDQCEzMAB1sYQN9OCReV # dPEAAAAHWxgwDQYJYIZIAWUDBAIBBQCgXjAQBgorBgEEAYI3AgEMMQIwADAZBgkq # hkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAvBgkqhkiG9w0BCQQxIgQgohUX5TCGesjz # TqYFRKYTHAk6bbZ02X2A5mgUCV5uF+owDQYJKoZIhvcNAQEBBQAEggGAUrUkB9T5 # +6kmo9LoO99b5KadqfN035VYJh0Semo8H6QO1WBKZNJHn2O9xd/HizL5sis/g0wA # vX1msdfL9adzSgQPT/JqUn0ttgjqEnjJIW18cH6jupNArpr/dTI+yiQP1E7Qg2Ll # 5uq21cBPazH61oiLVphI4LG+ILfz1QlhG+brlqQVToo1HOIbHTSUfiFC8nQdfY/R # xLNT5LgXcqCMI05xPNY129pb9XQmbmSZ3WgfUlEGU2Fwl6NUymFvLpK5YagAFpw9 # sAvj0z852qte5KdruI5HHOXpnd7wuYF9W5lQ9q1shTKpQvCjaCQuNg5bZq9xFYfb # oZpdhhCeJNZ85d9WcgaexRv2A9omGx91xEHXssHVxdpOsE1NA3esIL0t7D+vT1cy # ZNTv5r2v2k4iKb5T+XepAGh9Kgn/gRsqp9rgdrSYbpQvup35Oa7arNuN+zAVum2a # 5oWySSECPAbRsd6beGgPcwA3rEsOR35HPNe0S1cbmcDwZWynJmnumdC2oYIYFDCC # GBAGCisGAQQBgjcDAwExghgAMIIX/AYJKoZIhvcNAQcCoIIX7TCCF+kCAQMxDzAN # BglghkgBZQMEAgEFADCCAWIGCyqGSIb3DQEJEAEEoIIBUQSCAU0wggFJAgEBBgor # BgEEAYRZCgMBMDEwDQYJYIZIAWUDBAIBBQAEIPUaCTplEto8z8zFjvy1WN5kf0v2 # vFJokfgx6zK6VhVOAgZqqYLTzbkYEzIwMjYxMDAyMTcwMzI5LjUyOFowBIACAfSg # geGkgd4wgdsxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYD # VQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJTAj # BgNVBAsTHE1pY3Jvc29mdCBBbWVyaWNhIE9wZXJhdGlvbnMxJzAlBgNVBAsTHm5T # aGllbGQgVFNTIEVTTjo3ODAwLTA1RTAtRDk0NzE1MDMGA1UEAxMsTWljcm9zb2Z0 # IFB1YmxpYyBSU0EgVGltZSBTdGFtcGluZyBBdXRob3JpdHmggg8hMIIHgjCCBWqg # AwIBAgITMwAAAAXlzw//Zi7JhwAAAAAABTANBgkqhkiG9w0BAQwFADB3MQswCQYD # VQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMUgwRgYDVQQD # Ez9NaWNyb3NvZnQgSWRlbnRpdHkgVmVyaWZpY2F0aW9uIFJvb3QgQ2VydGlmaWNh # dGUgQXV0aG9yaXR5IDIwMjAwHhcNMjAxMTE5MjAzMjMxWhcNMzUxMTE5MjA0MjMx # WjBhMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9u # MTIwMAYDVQQDEylNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0Eg # MjAyMDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJ5851Jj/eDFnwV9 # Y7UGIqMcHtfnlzPREwW9ZUZHd5HBXXBvf7KrQ5cMSqFSHGqg2/qJhYqOQxwuEQXG # 8kB41wsDJP5d0zmLYKAY8Zxv3lYkuLDsfMuIEqvGYOPURAH+Ybl4SJEESnt0MbPE # oKdNihwM5xGv0rGofJ1qOYSTNcc55EbBT7uq3wx3mXhtVmtcCEr5ZKTkKKE1CxZv # NPWdGWJUPC6e4uRfWHIhZcgCsJ+sozf5EeH5KrlFnxpjKKTavwfFP6XaGZGWUG8T # ZaiTogRoAlqcevbiqioUz1Yt4FRK53P6ovnUfANjIgM9JDdJ4e0qiDRm5sOTiEQt # BLGd9Vhd1MadxoGcHrRCsS5rO9yhv2fjJHrmlQ0EIXmp4DhDBieKUGR+eZ4CNE3c # tW4uvSDQVeSp9h1SaPV8UWEfyTxgGjOsRpeexIveR1MPTVf7gt8hY64XNPO6iyUG # sEgt8c2PxF87E+CO7A28TpjNq5eLiiunhKbq0XbjkNoU5JhtYUrlmAbpxRjb9tSr # eDdtACpm3rkpxp7AQndnI0Shu/fk1/rE3oWsDqMX3jjv40e8KN5YsJBnczyWB4Jy # eeFMW3JBfdeAKhzohFe8U5w9WuvcP1E8cIxLoKSDzCCBOu0hWdjzKNu8Y5SwB1lt # 5dQhABYyzR3dxEO/T1K/BVF3rV69AgMBAAGjggIbMIICFzAOBgNVHQ8BAf8EBAMC # AYYwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFGtpKDo1L0hjQM972K9J6T7Z # PdshMFQGA1UdIARNMEswSQYEVR0gADBBMD8GCCsGAQUFBwIBFjNodHRwOi8vd3d3 # Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5odG0wEwYDVR0l # BAwwCgYIKwYBBQUHAwgwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwDwYDVR0T # AQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTIftJqhSobyhmYBAcnz1AQT2ioojCBhAYD # VR0fBH0wezB5oHegdYZzaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9j # cmwvTWljcm9zb2Z0JTIwSWRlbnRpdHklMjBWZXJpZmljYXRpb24lMjBSb290JTIw # Q2VydGlmaWNhdGUlMjBBdXRob3JpdHklMjAyMDIwLmNybDCBlAYIKwYBBQUHAQEE # gYcwgYQwgYEGCCsGAQUFBzAChnVodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtp # b3BzL2NlcnRzL01pY3Jvc29mdCUyMElkZW50aXR5JTIwVmVyaWZpY2F0aW9uJTIw # Um9vdCUyMENlcnRpZmljYXRlJTIwQXV0aG9yaXR5JTIwMjAyMC5jcnQwDQYJKoZI # hvcNAQEMBQADggIBAF+Idsd+bbVaFXXnTHho+k7h2ESZJRWluLE0Oa/pO+4ge/XE # izXvhs0Y7+KVYyb4nHlugBesnFqBGEdC2IWmtKMyS1OWIviwpnK3aL5JedwzbeBF # 7POyg6IGG/XhhJ3UqWeWTO+Czb1c2NP5zyEh89F72u9UIw+IfvM9lzDmc2O2END7 # MPnrcjWdQnrLn1Ntday7JSyrDvBdmgbNnCKNZPmhzoa8PccOiQljjTW6GePe5sGF # uRHzdFt8y+bN2neF7Zu8hTO1I64XNGqst8S+w+RUdie8fXC1jKu3m9KGIqF4aldr # YBamyh3g4nJPj/LR2CBaLyD+2BuGZCVmoNR/dSpRCxlot0i79dKOChmoONqbMI8m # 04uLaEHAv4qwKHQ1vBzbV/nG89LDKbRSSvijmwJwxRxLLpMQ/u4xXxFfR4f/gksS # kbJp7oqLwliDm/h+w0aJ/U5ccnYhYb7vPKNMN+SZDWycU5ODIRfyoGl59BsXR/Hp # RGtiJquOYGmvA/pk5vC1lcnbeMrcWD/26ozePQ/TWfNXKBOmkFpvPE8CH+EeGGWz # qTCjdAsno2jzTeNSxlx3glDGJgcdz5D/AAxw9Sdgq/+rY7jjgs7X6fqPTXPmaCAJ # KVHAP19oEjJIBwD1LyHbaEgBxFCogYSOiUIr0Xqcr1nJfiWG2GwYe6ZoAF1bMIIH # lzCCBX+gAwIBAgITMwAAAFck05XgounJMQAAAAAAVzANBgkqhkiG9w0BAQwFADBh # MQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIw # MAYDVQQDEylNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0EgMjAy # MDAeFw0yNTEwMjMyMDQ2NTNaFw0yNjEwMjIyMDQ2NTNaMIHbMQswCQYDVQQGEwJV # UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UE # ChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSUwIwYDVQQLExxNaWNyb3NvZnQgQW1l # cmljYSBPcGVyYXRpb25zMScwJQYDVQQLEx5uU2hpZWxkIFRTUyBFU046NzgwMC0w # NUUwLUQ5NDcxNTAzBgNVBAMTLE1pY3Jvc29mdCBQdWJsaWMgUlNBIFRpbWUgU3Rh # bXBpbmcgQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA # sWylCpMIfbizJLY1kPXO2cmX2HRWvRbAmeKSZ5ex7/jCymdV7Eap+Ic2iqRtWDkK # Ke5gL6JV80wtn5C2qHJLPxUYFKNG3UkHkAI21MoCN+YWnhT8K/YuPib6+6970jdb # eFKIiZMWwd5hnpX9J3jeteuEdXbp/DfFBK15JuD3JOzWuF2suQCPgqYjQPk/gpq+ # 3KCKtXJRbXSCSJ9YtITU2IHwmfdE7l2PfZ154w041po+fDeTj0gJOzcV/Jv56Q0M # +w19jAKo/I5PEzrLV1IPQnmP4or1X4RbJXk8ONXyOOfXOxK2VLpNxgklK1yAezbF # P2uzqihaXkW1h9GQLGENKESnezwgdRaLNNaYtm8AT/pZHYJ35mZVqkZdMIckpQHJ # k/F1fSLyDKeKtH4TC4cc3ESKUMgItq07ZZm74JCsfhmrQ1ijVNDi1Sln+QBamgC7 # WviZbkQnceQRq9DY+6hANwOrasAZUiVr2kPuj1jHDOXzUG4O9QTK70P/oXSqZAN1 # oTv3UfF8JTGmAxg+l1ZPOz50MY96HBDw/3bI/wBGNvLk6fLVnrxGN5B5unF/lYvj # jWbIUdyBPVQnPOKXu08SRHbY19M1HoWX6PNZv+vzSeqVeWWHKdKjC3GjVjbbGpi+ # JLbiyaKRSwEqo49tJLvu69cQ7dWsbksai4TURnVj2mMCAwEAAaOCAcswggHHMB0G # A1UdDgQWBBSOg8leLTUOAglIZ+bjXpiD7RKSpzAfBgNVHSMEGDAWgBRraSg6NS9I # Y0DPe9ivSek+2T3bITBsBgNVHR8EZTBjMGGgX6BdhltodHRwOi8vd3d3Lm1pY3Jv # c29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQlMjBQdWJsaWMlMjBSU0ElMjBU # aW1lc3RhbXBpbmclMjBDQSUyMDIwMjAuY3JsMHkGCCsGAQUFBwEBBG0wazBpBggr # BgEFBQcwAoZdaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9jZXJ0cy9N # aWNyb3NvZnQlMjBQdWJsaWMlMjBSU0ElMjBUaW1lc3RhbXBpbmclMjBDQSUyMDIw # MjAuY3J0MAwGA1UdEwEB/wQCMAAwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwgwDgYD # VR0PAQH/BAQDAgeAMGYGA1UdIARfMF0wUQYMKwYBBAGCN0yDfQEBMEEwPwYIKwYB # BQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9jcy9SZXBv # c2l0b3J5Lmh0bTAIBgZngQwBBAIwDQYJKoZIhvcNAQEMBQADggIBAHJ1wHY86Zk5 # SUBDPY25d/u9YJVaaNa71uxjX4cyO/XJ4uPENCSOwkRTnNogPLxTD0Fg3z4TFf/2 # T/0IFSxdtWVtTjhzrn+WLInzeRawUhTCFVrPBJKEWVshm+Ig7/nB7JbJN88+ltIm # BbL5kT1StBLfG6UksAcDbNSQww90CUXhGueBxlnSvjkAX1ohiN16y1bB2s0rvQx8 # Csepl2CuBefTfDrMGzW/tzNx5YaK2D8OWweqTWZcGlJO4YjZNI83cTrQghfHl/8A # XOHj8cWL3wEFltQQs2xeRYAb3Kdnl7oIWKKXWaBYJY5P3QPsiC+DTMp7ejdYKTrb # 396f3gr+wL/Ms5/Z3vIWZPJJv18qNw40fUNveRnwzMQnx8dM2bGuXXQZ5y7P8aXT # 4HJMo349qZtn4XQwiUE/DDp++MUL0kgjvd/Deo7Xr371PFPPYb4TboZhjV1x9+wC # HDoOpNCBt+VuXU78ytJdKzQ1Jv2cEP1F9H9/wSLsMDUvWME7u9mGElOPDZPMVr8A # uBEuLdbTSEdaLwsZBplzxLBcgxhZ/Cs30yBhuE3QhqT1YDZ2pa56RexPA2SasPcT # oT6gJgJ6E06BmZ2zQTNvWOjs5XQqHbYuXcoeDcwe2UaC7EDOGD8GmLE9LiqtQsuQ # CM7v7I2xR+sPZT2Ax/85HjIkM+3MzTK1MYIHRjCCB0ICAQEweDBhMQswCQYDVQQG # EwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIwMAYDVQQDEylN # aWNyb3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0EgMjAyMAITMwAAAFck # 05XgounJMQAAAAAAVzANBglghkgBZQMEAgEFAKCCBJ8wEQYLKoZIhvcNAQkQAg8x # AgUAMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcN # MjYxMDAyMTcwMzI5WjAvBgkqhkiG9w0BCQQxIgQgf6g1EUb6mrRTUKPUr51+nI2R # AfjzpHOVaOI7vHaTRNkwgbkGCyqGSIb3DQEJEAIvMYGpMIGmMIGjMIGgBCD1PJ9k # tQVuTGWIbKLO4f1VUOlUU29ARCEpDZmFTHjbUjB8MGWkYzBhMQswCQYDVQQGEwJV # UzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNy # b3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0EgMjAyMAITMwAAAFck05Xg # ounJMQAAAAAAVzCCA2EGCyqGSIb3DQEJEAISMYIDUDCCA0yhggNIMIIDRDCCAiwC # AQEwggEJoYHhpIHeMIHbMQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3Rv # bjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0 # aW9uMSUwIwYDVQQLExxNaWNyb3NvZnQgQW1lcmljYSBPcGVyYXRpb25zMScwJQYD # VQQLEx5uU2hpZWxkIFRTUyBFU046NzgwMC0wNUUwLUQ5NDcxNTAzBgNVBAMTLE1p # Y3Jvc29mdCBQdWJsaWMgUlNBIFRpbWUgU3RhbXBpbmcgQXV0aG9yaXR5oiMKAQEw # BwYFKw4DAhoDFQD9LzE5nEJRAUE2Ss3xaKKPXHnLw6BnMGWkYzBhMQswCQYDVQQG # EwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTIwMAYDVQQDEylN # aWNyb3NvZnQgUHVibGljIFJTQSBUaW1lc3RhbXBpbmcgQ0EgMjAyMDANBgkqhkiG # 9w0BAQsFAAIFAO5pwe4wIhgPMjAyNjEwMDIwNTM4NTRaGA8yMDI2MTAwMzA1Mzg1 # NFowdzA9BgorBgEEAYRZCgQBMS8wLTAKAgUA7mnB7gIBADAKAgEAAgIRZgIB/zAH # AgEAAgISHzAKAgUA7msTbgIBADA2BgorBgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZ # CgMCoAowCAIBAAIDB6EgoQowCAIBAAIDAYagMA0GCSqGSIb3DQEBCwUAA4IBAQAE # 2RA8Racgtq6Dmvtvb2R1HauVToD/lf6V9jOGLU6luc2VNwzbnsK5iOwonxn/ObtW # evTW3RFseid7pUSSHT4EuwDc6RW8jIMW576Xga4E0RiaEw3SEU9OGamPJOv+5xmP # Nhq8+qHgr6b2d6weeVeyTmTjLbZ8r9oJYlZGallO+kmXKBAM1TA7ITRBnOzdd4qb # oiEzYiVGI+tQvLhozVr5JmXdAj3FsUTbHBddklfaj1XR3vgb/JhYZGY9uy5Sz8di # 6GR1q1ZZNOqOFKM2qqgF8dYqlAY6fPpbhr4Auu6Ry2NMn2ryYkeCQKEJEnvuoGTq # tV3+5oPHwMuIEffBr0ctMA0GCSqGSIb3DQEBAQUABIICABXWNodab88f0aGii8eX # 8hGhprdLMgtuPaQ+ySc9u4hqj/lDcCTZHT4dHq5tYcw4zopodZhJZc9Obd5BND7z # kG36x7NGa4OSAr7nxD7x/l4kYUAxfv5J5MS/K6m1a7LVIifadrR4T8ClLwvBIZA4 # zjVYOlftfV/NCgGfzfiOvtoVFs2cZFBzTJIZJy9ARvykY1uGI6pG1rLB04/Max1K # muhHDa+7Zs3hCOHjTRHFTLGXKQdei+EdRTB2X3rcrbhPy+uaRdnvyHCirvy8IXl+ # l3dh7FlfS3olO30o9PohCSuVRnkhYjodjK4dGPtha0VdCAG2P5T/bpS9/gxgtbKJ # i5Ch/ZUWMEEtsh9csvi9gFok+iJn9I9rodmHqI354opONEXNs53VdDem+oBfnnh+ # 0M0f9BPKGAWchxHI0TpxVD+1AvQtnNaRy8wVpbuiEw0W4iEGmdMSGQCZkAIbjwjL # i4gwxVe4A9MXVyWQ29VPuzN+Y6fbdDWyZmMGPyIhOSuMSsJMfxJfOJMsKraq3vvM # 9/YPFrHVT/aej/u5Irl/pBA7tgVHL0lr2MV0kGCbkJP0AweaqHXnPUtZPKGBr5AL # jtkUhVwdZxbX1MaERCNQBOxHDWW4WMGMTReuqESh5snymGvMWwb3eV077MtL2q5x # rHluODn8QV4lLnIwR1y7EDI+ # SIG # End signature block |