291 строка
15 KiB
PowerShell
291 строка
15 KiB
PowerShell
<#
|
|
.SYNOPSIS
|
|
This is a Powershell script to bootstrap a Fake build.
|
|
.DESCRIPTION
|
|
This Powershell script will download NuGet if missing, restore NuGet tools (including Fake)
|
|
and execute your Fake build script with the parameters you provide.
|
|
.PARAMETER Target
|
|
The build script target to run.
|
|
.PARAMETER Configuration
|
|
The build configuration to use.
|
|
.PARAMETER Verbosity
|
|
Specifies the amount of information to be displayed.
|
|
.PARAMETER WhatIf
|
|
Performs a dry run of the build script.
|
|
No tasks will be executed.
|
|
.PARAMETER ScriptArgs
|
|
Remaining arguments are added here.
|
|
#>
|
|
|
|
[CmdletBinding()]
|
|
Param(
|
|
[string]$Target = "Default",
|
|
[ValidateSet("Release", "Debug")]
|
|
[string]$Configuration = "Release",
|
|
[ValidateSet("Quiet", "Minimal", "Normal", "Verbose", "Diagnostic")]
|
|
[string]$Verbosity = "Verbose",
|
|
[switch]$WhatIf,
|
|
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
|
|
[string[]]$ScriptArgs
|
|
)
|
|
|
|
$FakeVersion = "4.61.2"
|
|
$NugetVersion = "4.1.0";
|
|
$NugetUrl = "https://dist.nuget.org/win-x86-commandline/v$NugetVersion/nuget.exe"
|
|
$ProtobufVersion = "3.4.0"
|
|
$DocfxVersion = "2.49.0"
|
|
|
|
# Make sure tools folder exists
|
|
$PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
|
|
$ToolPath = Join-Path $PSScriptRoot "tools"
|
|
if (!(Test-Path $ToolPath)) {
|
|
Write-Verbose "Creating tools directory..."
|
|
New-Item -Path $ToolPath -Type directory | out-null
|
|
}
|
|
|
|
###########################################################################
|
|
# INSTALL NUGET
|
|
###########################################################################
|
|
|
|
# Make sure nuget.exe exists.
|
|
$NugetPath = Join-Path $ToolPath "nuget.exe"
|
|
if (!(Test-Path $NugetPath)) {
|
|
Write-Host "Downloading NuGet.exe..."
|
|
(New-Object System.Net.WebClient).DownloadFile($NugetUrl, $NugetPath);
|
|
}
|
|
|
|
###########################################################################
|
|
# INSTALL FAKE
|
|
###########################################################################
|
|
# Make sure Fake has been installed.
|
|
|
|
$FakeExePath = Join-Path $ToolPath "FAKE/tools/FAKE.exe"
|
|
if (!(Test-Path $FakeExePath)) {
|
|
Write-Host "Installing Fake..."
|
|
Invoke-Expression "&`"$NugetPath`" install Fake -ExcludeVersion -Version $FakeVersion -OutputDirectory `"$ToolPath`"" | Out-Null;
|
|
if ($LASTEXITCODE -ne 0) {
|
|
Throw "An error occured while restoring Fake from NuGet."
|
|
}
|
|
}
|
|
|
|
###########################################################################
|
|
# Docfx
|
|
###########################################################################
|
|
|
|
# Make sure Docfx has been installed.
|
|
$DocfxExePath = Join-Path $ToolPath "docfx.console/tools/docfx.exe"
|
|
if (!(Test-Path $DocfxExePath)) {
|
|
Write-Host "Installing Docfx..."
|
|
Invoke-Expression "&`"$NugetPath`" install docfx.console -ExcludeVersion -Version $DocfxVersion -OutputDirectory `"$ToolPath`"" | Out-Null;
|
|
if ($LASTEXITCODE -ne 0) {
|
|
Throw "An error occured while restoring docfx.console from NuGet."
|
|
}
|
|
}
|
|
|
|
###########################################################################
|
|
# SignTool
|
|
###########################################################################
|
|
|
|
# Make sure the SignClient has been installed
|
|
if (Get-Command signclient -ErrorAction SilentlyContinue) {
|
|
Write-Host "Found SignClient. Skipping install."
|
|
}
|
|
else{
|
|
$SignClientFolder = Join-Path $ToolPath "signclient"
|
|
Write-Host "SignClient not found. Installing to ... $SignClientFolder"
|
|
dotnet tool install SignClient --version 1.0.82 --tool-path "$SignClientFolder"
|
|
}
|
|
|
|
###########################################################################
|
|
# RUN BUILD SCRIPT
|
|
###########################################################################
|
|
|
|
# Build the argument list.
|
|
$Arguments = @{
|
|
target=$Target;
|
|
configuration=$Configuration;
|
|
verbosity=$Verbosity;
|
|
dryrun=$WhatIf;
|
|
}.GetEnumerator() | %{"--{0}=`"{1}`"" -f $_.key, $_.value };
|
|
|
|
# Start Fake
|
|
Write-Host "Running build script..."
|
|
Invoke-Expression "$FakeExePath `"build.fsx`" $ScriptArgs $Arguments"
|
|
|
|
exit $LASTEXITCODE
|
|
# SIG # Begin signature block
|
|
# MIIgTwYJKoZIhvcNAQcCoIIgQDCCIDwCAQExDzANBglghkgBZQMEAgEFADB5Bgor
|
|
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
|
|
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDy+m5x/ontiIGy
|
|
# a2+Kn4J7jbsGsFWkLaQLK39iFQNsb6CCDiIwggO3MIICn6ADAgECAhAM5+DlF9hG
|
|
# /o/lYPwb8DA5MA0GCSqGSIb3DQEBBQUAMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQK
|
|
# EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xJDAiBgNV
|
|
# BAMTG0RpZ2lDZXJ0IEFzc3VyZWQgSUQgUm9vdCBDQTAeFw0wNjExMTAwMDAwMDBa
|
|
# Fw0zMTExMTAwMDAwMDBaMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2Vy
|
|
# dCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xJDAiBgNVBAMTG0RpZ2lD
|
|
# ZXJ0IEFzc3VyZWQgSUQgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
|
# AQoCggEBAK0OFc7kQ4BcsYfzt2D5cRKlrtwmlIiq9M71IDkoWGAM+IDaqRWVMmE8
|
|
# tbEohIqK3J8KDIMXeo+QrIrneVNcMYQq9g+YMjZ2zN7dPKii72r7IfJSYd+fINcf
|
|
# 4rHZ/hhk0hJbX/lYGDW8R82hNvlrf9SwOD7BG8OMM9nYLxj+KA+zp4PWw25EwGE1
|
|
# lhb+WZyLdm3X8aJLDSv/C3LanmDQjpA1xnhVhyChz+VtCshJfDGYM2wi6YfQMlqi
|
|
# uhOCEe05F52ZOnKh5vqk2dUXMXWuhX0irj8BRob2KHnIsdrkVxfEfhwOsLSSplaz
|
|
# vbKX7aqn8LfFqD+VFtD/oZbrCF8Yd08CAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGG
|
|
# MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEXroq/0ksuCMS1Ri6enIZ3zbcgP
|
|
# MB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgPMA0GCSqGSIb3DQEBBQUA
|
|
# A4IBAQCiDrzf4u3w43JzemSUv/dyZtgy5EJ1Yq6H6/LV2d5Ws5/MzhQouQ2XYFwS
|
|
# TFjk0z2DSUVYlzVpGqhH6lbGeasS2GeBhN9/CTyU5rgmLCC9PbMoifdf/yLil4Qf
|
|
# 6WXvh+DfwWdJs13rsgkq6ybteL59PyvztyY1bV+JAbZJW58BBZurPSXBzLZ/wvFv
|
|
# hsb6ZGjrgS2U60K3+owe3WLxvlBnt2y98/Efaww2BxZ/N3ypW2168RJGYIPXJwS+
|
|
# S86XvsNnKmgR34DnDDNmvxMNFG7zfx9jEB76jRslbWyPpbdhAbHSoyahEHGdreLD
|
|
# +cOZUbcrBwjOLuZQsqf6CkUvovDyMIIFLzCCBBegAwIBAgIQDGOJqewvySRbpPsq
|
|
# IflH5DANBgkqhkiG9w0BAQsFADByMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGln
|
|
# aUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhE
|
|
# aWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBTaWduaW5nIENBMB4XDTE3MDEw
|
|
# NjAwMDAwMFoXDTIwMDExNTEyMDAwMFowbDELMAkGA1UEBhMCVVMxEzARBgNVBAgT
|
|
# CkNhbGlmb3JuaWExFDASBgNVBAcTC0xvcyBBbmdlbGVzMRgwFgYDVQQKEw9QZXRh
|
|
# YnJpZGdlLCBMTEMxGDAWBgNVBAMTD1BldGFicmlkZ2UsIExMQzCCASIwDQYJKoZI
|
|
# hvcNAQEBBQADggEPADCCAQoCggEBAJriBjrKlrcxMnq3l2fLb5lQjuc6+J5r8cm6
|
|
# J1IlK+BLcf0WnLxOJRBRhHXzdNkiCUJsLw2qE8Adfq0XpfxgQjTSk9Mbn4w7U7wk
|
|
# 9/GMsripQZ8qIiQw479XuhQkKqa7A4W4gPSNpanDP93VXQ1rq2QJbYVSG3QG2xhT
|
|
# YJQrtYICZUTAX5545iktupiwJcKalr3QK7qrqNlX+D9Io83gapXTTxJcnLQQ49+P
|
|
# zg4k84dBsx3ZKRwlQfyay42+vPZzoBqAl3GB5PFhjN1nGYJDOny3OeEbl2Jtlhf/
|
|
# 7AG5/iEpD/H1pmMTMbfNXWYcydqsUJpx+ZP41dEoZtHFdpjAMTsCAwEAAaOCAcUw
|
|
# ggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZldQ5YMB0GA1UdDgQWBBS+
|
|
# T6RUtpfdoqSY120tEgyk++hNkjAOBgNVHQ8BAf8EBAMCB4AwEwYDVR0lBAwwCgYI
|
|
# KwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDovL2NybDMuZGlnaWNlcnQu
|
|
# Y29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGGL2h0dHA6Ly9jcmw0LmRp
|
|
# Z2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3JsMEwGA1UdIARFMEMwNwYJ
|
|
# YIZIAYb9bAMBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LmRpZ2ljZXJ0LmNv
|
|
# bS9DUFMwCAYGZ4EMAQQBMIGEBggrBgEFBQcBAQR4MHYwJAYIKwYBBQUHMAGGGGh0
|
|
# dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcwAoZCaHR0cDovL2NhY2Vy
|
|
# dHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3VyZWRJRENvZGVTaWduaW5n
|
|
# Q0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQELBQADggEBAHq4G8r7TMcb
|
|
# o2NNnWedUctYyfwoqTCxbssff5aU9b0FwkmuP56VlqAlNVojMze7LhvIvIf0WabY
|
|
# 3NxBnUlCble3MXYMa9btcn1HbLpdKBHoDJ9DbhNeWeBh9DuYtxTnXJoi6mOPgull
|
|
# syuMzN7A5V8RFtmJQpMwjJ8+8Pw1KBmE2b/Nr1DvbOAGYQ8pnL+wgaCAOU+7ZlyL
|
|
# 7ffmloyIE0mh63ReveR8t8IwOy3tF4Zyp9u+rcEMct0Wo42b1hiXlLKMs0YupoaC
|
|
# /H7tTfvnGBs9jZRaAJ1BcLrF4xRMSfTxtPlFRxunZ1ZzVKoiyctXLmET3MOuTyXn
|
|
# aI2JwwH+zUYwggUwMIIEGKADAgECAhAECRgbX9W7ZnVTQ7VvlVAIMA0GCSqGSIb3
|
|
# DQEBCwUAMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAX
|
|
# BgNVBAsTEHd3dy5kaWdpY2VydC5jb20xJDAiBgNVBAMTG0RpZ2lDZXJ0IEFzc3Vy
|
|
# ZWQgSUQgUm9vdCBDQTAeFw0xMzEwMjIxMjAwMDBaFw0yODEwMjIxMjAwMDBaMHIx
|
|
# CzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3
|
|
# dy5kaWdpY2VydC5jb20xMTAvBgNVBAMTKERpZ2lDZXJ0IFNIQTIgQXNzdXJlZCBJ
|
|
# RCBDb2RlIFNpZ25pbmcgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
|
|
# AQD407Mcfw4Rr2d3B9MLMUkZz9D7RZmxOttE9X/lqJ3bMtdx6nadBS63j/qSQ8Cl
|
|
# +YnUNxnXtqrwnIal2CWsDnkoOn7p0WfTxvspJ8fTeyOU5JEjlpB3gvmhhCNmElQz
|
|
# UHSxKCa7JGnCwlLyFGeKiUXULaGj6YgsIJWuHEqHCN8M9eJNYBi+qsSyrnAxZjNx
|
|
# PqxwoqvOf+l8y5Kh5TsxHM/q8grkV7tKtel05iv+bMt+dDk2DZDv5LVOpKnqagqr
|
|
# hPOsZ061xPeM0SAlI+sIZD5SlsHyDxL0xY4PwaLoLFH3c7y9hbFig3NBggfkOItq
|
|
# cyDQD2RzPJ6fpjOp/RnfJZPRAgMBAAGjggHNMIIByTASBgNVHRMBAf8ECDAGAQH/
|
|
# AgEAMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUEDDAKBggrBgEFBQcDAzB5BggrBgEF
|
|
# BQcBAQRtMGswJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBD
|
|
# BggrBgEFBQcwAoY3aHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0
|
|
# QXNzdXJlZElEUm9vdENBLmNydDCBgQYDVR0fBHoweDA6oDigNoY0aHR0cDovL2Ny
|
|
# bDQuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNybDA6oDig
|
|
# NoY0aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9v
|
|
# dENBLmNybDBPBgNVHSAESDBGMDgGCmCGSAGG/WwAAgQwKjAoBggrBgEFBQcCARYc
|
|
# aHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAKBghghkgBhv1sAzAdBgNVHQ4E
|
|
# FgQUWsS5eyoKo6XqcQPAYPkt9mV1DlgwHwYDVR0jBBgwFoAUReuir/SSy4IxLVGL
|
|
# p6chnfNtyA8wDQYJKoZIhvcNAQELBQADggEBAD7sDVoks/Mi0RXILHwlKXaoHV0c
|
|
# LToaxO8wYdd+C2D9wz0PxK+L/e8q3yBVN7Dh9tGSdQ9RtG6ljlriXiSBThCk7j9x
|
|
# jmMOE0ut119EefM2FAaK95xGTlz/kLEbBw6RFfu6r7VRwo0kriTGxycqoSkoGjpx
|
|
# KAI8LpGjwCUR4pwUR6F6aGivm6dcIFzZcbEMj7uo+MUSaJ/PQMtARKUT8OZkDCUI
|
|
# QjKyNookAv4vcn4c10lFluhZHen6dGRrsutmQ9qzsIzV6Q3d9gEgzpkxYz0IGhiz
|
|
# gZtPxpMQBvwHgfqL2vmCSfdibqFT+hKUGIUukpHqaGxEMrJmoecYpJpkUe8xghGD
|
|
# MIIRfwIBATCBhjByMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5j
|
|
# MRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBT
|
|
# SEEyIEFzc3VyZWQgSUQgQ29kZSBTaWduaW5nIENBAhAMY4mp7C/JJFuk+yoh+Ufk
|
|
# MA0GCWCGSAFlAwQCAQUAoIIBATAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAc
|
|
# BgorBgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgJuHi
|
|
# vbFHMNp3nUjNSOgj/F89M0Ct8VgVgwOelqhnzlAwgZQGCisGAQQBgjcCAQwxgYUw
|
|
# gYKgSIBGAFAAZQB0AGEAYgByAGkAZABnAGUAIABTAHQAYQBuAGQAYQByAGQAIABC
|
|
# AHUAaQBsAGQAIABUAGUAbQBwAGwAYQB0AGUAc6E2gDRodHRwczovL2dpdGh1Yi5j
|
|
# b20vcGV0YWJyaWRnZS9wZXRhYnJpZGdlLWRvdG5ldC1uZXcgMA0GCSqGSIb3DQEB
|
|
# AQUABIIBAIJgaaYF7d0eCozYo6KiZYYKU3Qptr33/FYVlEKc6kgh+9D/ZAQ1lqsF
|
|
# k9mZVCB4IbJs92KSNuHhkZpeZjV30YiWJ6Ixd+tF5sAcKfNTSjH3QfqJAdXUG8gL
|
|
# mUbk0H64wz/lTsWLz5l6SrSSnHvABVjn/PqLMRqbrwRvhFFt9yoRlmDzG7/UAPWB
|
|
# +ftkGkPOUUUEIbF/RCdPiXIb82W4cXuBk8Kqkou6X4Dbv07GzKkeCun5DbgD4mL3
|
|
# 2h91fyUsUkh5USpZVcScsLSsIqFavZ3GPExWhkGvo8EQ756+ZT+EdyleQd70eI6V
|
|
# +jrFfrNWxRlmVcfE+ZBH8bLJinzYGNChgg7IMIIOxAYKKwYBBAGCNwMDATGCDrQw
|
|
# gg6wBgkqhkiG9w0BBwKggg6hMIIOnQIBAzEPMA0GCWCGSAFlAwQCAQUAMHcGCyqG
|
|
# SIb3DQEJEAEEoGgEZjBkAgEBBglghkgBhv1sBwEwMTANBglghkgBZQMEAgEFAAQg
|
|
# yVw1M/glzmvyYENKoVDAlG2PPFDPhYSmm6N4s9jIPD0CEGcCUCnVFW/SW5WYFvGQ
|
|
# UdEYDzIwMTkwMzE1MTYwMDU3WqCCC7swggaCMIIFaqADAgECAhAJwPxGyARCE7VZ
|
|
# i68oT05BMA0GCSqGSIb3DQEBCwUAMHIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxE
|
|
# aWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xMTAvBgNVBAMT
|
|
# KERpZ2lDZXJ0IFNIQTIgQXNzdXJlZCBJRCBUaW1lc3RhbXBpbmcgQ0EwHhcNMTcw
|
|
# MTA0MDAwMDAwWhcNMjgwMTE4MDAwMDAwWjBMMQswCQYDVQQGEwJVUzERMA8GA1UE
|
|
# ChMIRGlnaUNlcnQxKjAoBgNVBAMTIURpZ2lDZXJ0IFNIQTIgVGltZXN0YW1wIFJl
|
|
# c3BvbmRlcjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ6VmGo0O3Mb
|
|
# qH78x74paYnHaCZGXz2NYnOHgaOhnPC3WyQ3WpLU9FnXdonk3NUn8NVmvArutCsx
|
|
# Z6xYxUqRWStFHgkB1mSzWe6NZk37I17MEA0LimfvUq6gCJDCUvf1qLVumyx7nee1
|
|
# Pvt4zTJQGL9AtUyMu1f0oE8RRWxCQrnlr9bf9Kd8CmiWD9JfKVfO+x0y//QRoRMi
|
|
# +xLL79dT0uuXy6KsGx2dWCFRgsLC3uorPywihNBD7Ds7P0fE9lbcRTeYtGt0tVmv
|
|
# eFdpyA8JAnjd2FPBmdtgxJ3qrq/gfoZKXKlYYahedIoBKGhyTqeGnbUCUodwZkjT
|
|
# ju+BJMzc2GUCAwEAAaOCAzgwggM0MA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8E
|
|
# AjAAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMIIBvwYDVR0gBIIBtjCCAbIwggGh
|
|
# BglghkgBhv1sBwEwggGSMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5kaWdpY2Vy
|
|
# dC5jb20vQ1BTMIIBZAYIKwYBBQUHAgIwggFWHoIBUgBBAG4AeQAgAHUAcwBlACAA
|
|
# bwBmACAAdABoAGkAcwAgAEMAZQByAHQAaQBmAGkAYwBhAHQAZQAgAGMAbwBuAHMA
|
|
# dABpAHQAdQB0AGUAcwAgAGEAYwBjAGUAcAB0AGEAbgBjAGUAIABvAGYAIAB0AGgA
|
|
# ZQAgAEQAaQBnAGkAQwBlAHIAdAAgAEMAUAAvAEMAUABTACAAYQBuAGQAIAB0AGgA
|
|
# ZQAgAFIAZQBsAHkAaQBuAGcAIABQAGEAcgB0AHkAIABBAGcAcgBlAGUAbQBlAG4A
|
|
# dAAgAHcAaABpAGMAaAAgAGwAaQBtAGkAdAAgAGwAaQBhAGIAaQBsAGkAdAB5ACAA
|
|
# YQBuAGQAIABhAHIAZQAgAGkAbgBjAG8AcgBwAG8AcgBhAHQAZQBkACAAaABlAHIA
|
|
# ZQBpAG4AIABiAHkAIAByAGUAZgBlAHIAZQBuAGMAZQAuMAsGCWCGSAGG/WwDFTAf
|
|
# BgNVHSMEGDAWgBT0tuEgHf4prtLkYaWyoiWyyBc1bjAdBgNVHQ4EFgQU4acySu4B
|
|
# ISh9VNXyB5JutAcPPYcwcQYDVR0fBGowaDAyoDCgLoYsaHR0cDovL2NybDMuZGln
|
|
# aWNlcnQuY29tL3NoYTItYXNzdXJlZC10cy5jcmwwMqAwoC6GLGh0dHA6Ly9jcmw0
|
|
# LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtdHMuY3JsMIGFBggrBgEFBQcBAQR5
|
|
# MHcwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBPBggrBgEF
|
|
# BQcwAoZDaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFz
|
|
# c3VyZWRJRFRpbWVzdGFtcGluZ0NBLmNydDANBgkqhkiG9w0BAQsFAAOCAQEAHvBB
|
|
# gjKu7fG0NRPcUMLVl64iIp0ODq8z00z9fL9vARGnlGUiXMYiociJUmuajHNc2V4/
|
|
# Mt4WYEyLNv0xmQq9wYS3jR3viSYTBVbzR81HW62EsjivaiO1ReMeiDJGgNK3ppki
|
|
# /cF4z/WL2AyMBQnuROaA1W1wzJ9THifdKkje2pNlrW5lo5mnwkAOc8xYT49FKOW8
|
|
# nIjmKM5gXS0lXYtzLqUNW1Hamk7/UAWJKNryeLvSWHiNRKesOgCReGmJZATTXZbf
|
|
# Kr/5pUwsk//mit2CrPHSs6KGmsFViVZqRz/61jOVQzWJBXhaOmnaIrgEQ9NvaDU2
|
|
# ehQ+RemYZIYPEwwmSjCCBTEwggQZoAMCAQICEAqhJdbWMht+QeQF2jaXwhUwDQYJ
|
|
# KoZIhvcNAQELBQAwZTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IElu
|
|
# YzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTEkMCIGA1UEAxMbRGlnaUNlcnQg
|
|
# QXNzdXJlZCBJRCBSb290IENBMB4XDTE2MDEwNzEyMDAwMFoXDTMxMDEwNzEyMDAw
|
|
# MFowcjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UE
|
|
# CxMQd3d3LmRpZ2ljZXJ0LmNvbTExMC8GA1UEAxMoRGlnaUNlcnQgU0hBMiBBc3N1
|
|
# cmVkIElEIFRpbWVzdGFtcGluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
|
# AQoCggEBAL3QMu5LzY9/3am6gpnFOVQoV7YjSsQOB0UzURB90Pl9TWh+57ag9I2z
|
|
# iOSXv2MhkJi/E7xX08PhfgjWahQAOPcuHjvuzKb2Mln+X2U/4Jvr40ZHBhpVfgsn
|
|
# fsCi9aDg3iI/Dv9+lfvzo7oiPhisEeTwmQNtO4V8CdPuXciaC1TjqAlxa+DPIhAP
|
|
# dc9xck4Krd9AOly3UeGheRTGTSQjMF287DxgaqwvB8z98OpH2YhQXv1mblZhJymJ
|
|
# hFHmgudGUP2UKiyn5HU+upgPhH+fMRTWrdXyZMt7HgXQhBlyF/EXBu89zdZN7wZC
|
|
# /aJTKk+FHcQdPK/P2qwQ9d2srOlW/5MCAwEAAaOCAc4wggHKMB0GA1UdDgQWBBT0
|
|
# tuEgHf4prtLkYaWyoiWyyBc1bjAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYunpyGd
|
|
# 823IDzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUE
|
|
# DDAKBggrBgEFBQcDCDB5BggrBgEFBQcBAQRtMGswJAYIKwYBBQUHMAGGGGh0dHA6
|
|
# Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBDBggrBgEFBQcwAoY3aHR0cDovL2NhY2VydHMu
|
|
# ZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNydDCBgQYDVR0f
|
|
# BHoweDA6oDigNoY0aHR0cDovL2NybDQuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNz
|
|
# dXJlZElEUm9vdENBLmNybDA6oDigNoY0aHR0cDovL2NybDMuZGlnaWNlcnQuY29t
|
|
# L0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNybDBQBgNVHSAESTBHMDgGCmCGSAGG
|
|
# /WwAAgQwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQ
|
|
# UzALBglghkgBhv1sBwEwDQYJKoZIhvcNAQELBQADggEBAHGVEulRh1Zpze/d2nyq
|
|
# Y3qzeM8GN0CE70uEv8rPAwL9xafDDiBCLK938ysfDCFaKrcFNB1qrpn4J6Jmvwmq
|
|
# YN92pDqTD/iy0dh8GWLoXoIlHsS6HHssIeLWWywUNUMEaLLbdQLgcseY1jxk5R9I
|
|
# EBhfiThhTWJGJIdjjJFSLK8pieV4H9YLFKWA1xJHcLN11ZOFk362kmf7U2GJqPVr
|
|
# lsD0WGkNfMgBsbkodbeZY4UijGHKeZR+WfyMD+NvtQEmtmyl7odRIeRYYJu6DC0r
|
|
# baLEfrvEJStHAgh8Sa4TtuF8QkIoxhhWz0E0tmZdtnR79VYzIi8iNrJLokqV2PWm
|
|
# jlIxggJNMIICSQIBATCBhjByMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNl
|
|
# cnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdp
|
|
# Q2VydCBTSEEyIEFzc3VyZWQgSUQgVGltZXN0YW1waW5nIENBAhAJwPxGyARCE7VZ
|
|
# i68oT05BMA0GCWCGSAFlAwQCAQUAoIGYMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0B
|
|
# CRABBDAcBgkqhkiG9w0BCQUxDxcNMTkwMzE1MTYwMDU3WjArBgsqhkiG9w0BCRAC
|
|
# DDEcMBowGDAWBBRAAZFHXJiJHeuhBK9HCRtettTLyzAvBgkqhkiG9w0BCQQxIgQg
|
|
# jLu5eXUI0j43Sq/ZJ76+UJmWF/2Amb+YAcVtGZhRJKowDQYJKoZIhvcNAQEBBQAE
|
|
# ggEAQBQNwdmatbURcWuntIUvk18FZGGLRA3bT0kNXN0pwwwopQlr4G6WbL8C8oSw
|
|
# 0KUbWa3VonUYHemc6ZYgSOaa07X9dMoEWdgf9Jy7LDFZQCYBkI7034x0ujyTAZ6U
|
|
# KtqQupuRPdLAsCb67KB6DR6lIuP1hj1yolPb9uyqEsH1JJqusTiirZvO1UvNVtHU
|
|
# ljscye8j2SiO8UNLhYHL1me43S4NmqgLkaDvIE8lVx8GtyFyGRdFZYTzAufXTR9H
|
|
# HK8lsD0ekQiOpaAIw/MfhEgTej1Z3L686Z0xwBVyH988UA9lVbXdDZWS3odGd2CT
|
|
# /JdEUFIMzW5J8N+QntZ/Fjua/A==
|
|
# SIG # End signature block
|