eDosStation/SyncToSqlsrv7.ps1
2026-10-22 16:13:39 +02:00

299 lines
18 KiB
PowerShell

$DestPath = "\\sqlsrv7\c$\soft\eDos2026"
$SourcePath="D:\l\src\cs2025\eDosStation"
$SourcePathTools="D:\l\src\cs2025\LSWTools"
$DistributePath="D:\Soft\Distribute"
$TWN4DevPackPath="D:\Soft\TWN4DevPack480"
if ($env:COMPUTERNAME -eq "T16LUC") {
$SourcePath = "C:\l\src\eDosStation"
$TWN4DevPackPath="C:\l\TWN4\TWN4DevPack520"
$SourcePathTools="C:\l\src\LSWTools"
$DestPath = "C:\l\Edos2026"
$DistributePath="c:\L\Distribute"
}
$ScriptPath="$SourcePath\scripts"
$cert = get-childitem -path cert:\CurrentUser\My\857150b64ef7d3e679c8cbde425d2a0b5e58ffaa
Export-Certificate -Force -FilePath "$DestPath\signertrust.cer" -Cert $cert
Set-AuthenticodeSignature -FilePath "$ScriptPath\Upgrader.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com" | Select-Object Path, StatusMessage
Set-AuthenticodeSignature -FilePath "$ScriptPath\Downgrader.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com" | Select-Object Path, StatusMessage
Set-AuthenticodeSignature -FilePath "$ScriptPath\installatie.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com"| Select-Object Path, StatusMessage
Set-AuthenticodeSignature -FilePath "$ScriptPath\installatie2.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com"| Select-Object Path, StatusMessage
Set-AuthenticodeSignature -FilePath "$ScriptPath\UpdateSql.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com" | Select-Object Path, StatusMessage
$exe = "$SourcePath\eDosStation\bin\Release\eDosStation.exe"
$version=(Get-Item $exe).VersionInfo.FileVersion.replace(".","-")
$zip= "eDosSync$($version).zip"
$fullzip= join-path -path $DestPath -ChildPath $zip
compress-archive -force -Path "$SourcePath\eDosStation\bin\Release\*.*" -DestinationPath $fullzip
$exes = "$SourcePath\syncEdosLocal\bin\Release\syncEdosLocal.exe"
$versions=(Get-Item $exes).VersionInfo.FileVersion.replace(".","-")
$zips= "syncEdosLocal$($versions).zip"
$fullzips= join-path -path $DestPath -ChildPath $zips
compress-archive -force -Path "$SourcePath\syncEdosLocal\bin\Release\*.*" -DestinationPath $fullzips
if (Test-Path "$SourcePathTools\LogFolderClean\bin\Release") {
Compress-Archive -Force -Path "$SourcePathTools\LogFolderClean\bin\Release\*.*" -DestinationPath "$DestPath\LogFolderClean.zip"
}
$ScriptContent = @"
return [PSCustomObject]@{
EdosStationZip = "$zip"
SyncEdosLocalZip = "$zips"
}
"@
Set-Content -Path "$DestPath\Get-EdosZipNames.ps1" -Value $ScriptContent
Set-AuthenticodeSignature -FilePath "$DestPath\Get-EdosZipNames.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com" | Select-Object Path, StatusMessage
#Set-Content -Path "$DestPath\GetEdosStationZip.ps1" -Value "return [string]""$zip"""
#Set-AuthenticodeSignature -FilePath "$DestPath\GetEdosStationZip.ps1" -Certificate $cert -TimestampServer "http://timestamp.digicert.com" | Select-Object Path, StatusMessage
Copy-Item -Path "$ScriptPath\*.cmd" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\ConfigurationFile.ini" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\eDosStation.pub" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\authorized_keys" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\Upgrader.ps1" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\Downgrader.ps1" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\installatie.ps1" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\installatie2.ps1" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\UpdateSql.ps1" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\UpdateSql.cmd" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\eDosSync.xml" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\*.cer" -Destination "$DestPath"
Copy-Item -Path "$ScriptPath\sqlreg.reg" -Destination "$DestPath"
#nodig ?
Copy-Item -Path "$SourcePath\eDosLocal\SqlUpdates\*.sql" -Destination "$DestPath\SqlUpdates"
#updates
Copy-Item -Path "$SourcePath\eDosLocal\UpdateLocal.sql" -Destination "$DestPath\UpdateLocal.sql"
Copy-Item -Path "$SourcePath\eDosLocal\Updates.sql" -Destination "$DestPath\Updates.sql"
Copy-Item -Path "$DistributePath\OpenSSH\OpenSSH10p2Signed.zip" -Destination $DestPath
Copy-Item -Path "$TWN4DevPackPath\Tools\flash.exe" -Destination $DestPath
Copy-Item -Path "$DistributePath\Elatec\TWN4_xCx480_EDOS100_Edos_Badge_Reader.bix" -Destination $DestPath
write-host "Files are copied to $DestPath"
write-host "Source files from $SourcePath\syncEdosLocal\bin\Release are zipped to $DestPath\eDosSync.zip"
write-host "Source files from $SourcePath\eDosStation\bin\Release are zipped to $fullzip"
Sleep 10
exit
# SIG # Begin signature block
# MIIlWAYJKoZIhvcNAQcCoIIlSTCCJUUCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCD2eWHQX1EfEMj0
# H2NVib1oKbCKCh9PJ1ksDdMypij5XqCCH3AwggWNMIIEdaADAgECAhAOmxiO+dAt
# 5+/bUOIIQBhaMA0GCSqGSIb3DQEBDAUAMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQK
# EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xJDAiBgNV
# BAMTG0RpZ2lDZXJ0IEFzc3VyZWQgSUQgUm9vdCBDQTAeFw0yMjA4MDEwMDAwMDBa
# Fw0zMTExMDkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2Vy
# dCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lD
# ZXJ0IFRydXN0ZWQgUm9vdCBHNDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC
# ggIBAL/mkHNo3rvkXUo8MCIwaTPswqclLskhPfKK2FnC4SmnPVirdprNrnsbhA3E
# MB/zG6Q4FutWxpdtHauyefLKEdLkX9YFPFIPUh/GnhWlfr6fqVcWWVVyr2iTcMKy
# unWZanMylNEQRBAu34LzB4TmdDttceItDBvuINXJIB1jKS3O7F5OyJP4IWGbNOsF
# xl7sWxq868nPzaw0QF+xembud8hIqGZXV59UWI4MK7dPpzDZVu7Ke13jrclPXuU1
# 5zHL2pNe3I6PgNq2kZhAkHnDeMe2scS1ahg4AxCN2NQ3pC4FfYj1gj4QkXCrVYJB
# MtfbBHMqbpEBfCFM1LyuGwN1XXhm2ToxRJozQL8I11pJpMLmqaBn3aQnvKFPObUR
# WBf3JFxGj2T3wWmIdph2PVldQnaHiZdpekjw4KISG2aadMreSx7nDmOu5tTvkpI6
# nj3cAORFJYm2mkQZK37AlLTSYW3rM9nF30sEAMx9HJXDj/chsrIRt7t/8tWMcCxB
# YKqxYxhElRp2Yn72gLD76GSmM9GJB+G9t+ZDpBi4pncB4Q+UDCEdslQpJYls5Q5S
# UUd0viastkF13nqsX40/ybzTQRESW+UQUOsxxcpyFiIJ33xMdT9j7CFfxCBRa2+x
# q4aLT8LWRV+dIPyhHsXAj6KxfgommfXkaS+YHS312amyHeUbAgMBAAGjggE6MIIB
# NjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTs1+OC0nFdZEzfLmc/57qYrhwP
# TzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzAOBgNVHQ8BAf8EBAMC
# AYYweQYIKwYBBQUHAQEEbTBrMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdp
# Y2VydC5jb20wQwYIKwYBBQUHMAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNv
# bS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcnQwRQYDVR0fBD4wPDA6oDigNoY0
# aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENB
# LmNybDARBgNVHSAECjAIMAYGBFUdIAAwDQYJKoZIhvcNAQEMBQADggEBAHCgv0Nc
# Vec4X6CjdBs9thbX979XB72arKGHLOyFXqkauyL4hxppVCLtpIh3bb0aFPQTSnov
# Lbc47/T/gLn4offyct4kvFIDyE7QKt76LVbP+fT3rDB6mouyXtTP0UNEm0Mh65Zy
# oUi0mcudT6cGAxN3J0TU53/oWajwvy8LpunyNDzs9wPHh6jSTEAZNUZqaVSwuKFW
# juyk1T3osdz9HNj0d1pcVIxv76FQPfx2CWiEn2/K2yCNNWAcAgPLILCsWKAOQGPF
# mCLBsln1VWvPJ6tsds5vIy30fnFqI2si/xK4VC0nftg62fC2h5b9W9FcrBjDTZ9z
# twGpn1eqXijiuZQwggW8MIIDpKADAgECAgEfMA0GCSqGSIb3DQEBCwUAMGYxCzAJ
# BgNVBAYTAkJFMRIwEAYDVQQIEwlBbnR3ZXJwZW4xDDAKBgNVBAcTA01vbDEPMA0G
# A1UEChMGU0NLQ0VOMQwwCgYDVQQLEwNJQ1QxFjAUBgNVBAMTDVNDS0NFTiBJQ1Qg
# Q0EwHhcNMTgwNTI0MDYxMTAwWhcNMzAwNjAxMTIwMDAwWjBPMSEwHwYDVQQDExhW
# YW5kZW5icm91Y2tlIEx1YyBDUzIwMjExKjAoBgkqhkiG9w0BCQEWG2x1Yy52YW5k
# ZW5icm91Y2tlQHNja2Nlbi5iZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
# ggEBAPRbMPSAdMsURs6M9TChuXZWe1LSQlVXYVHPGRlnQeF719tgHS1Ern70aW0P
# uvCECkzUTbGHw3o+bF+vj1UZWw82oOEZGannAoTyG1CIxdOMc85Mdmy+Kb++9Ivx
# a6i4ahfpNDHE0F58TomaNyDY0dtRUDEMZw/A0AMkFmdg9BOnqrYeeLB0O/86ZkzU
# klRifi/Wa3ti1LV4U7fR6S4bMm7dZBh46IU2G3/oBdlNYAtC3DNol+bnrcBvF+cc
# GwG5kVxEZg8TtpEMj00hnI+rNPjI4Ar6mE83XKak1X5/xddZppx9ldJaiVujyOqy
# 0cONhiN/vsWPdZU37LQbG1OydGUCAwEAAaOCAYowggGGMAkGA1UdEwQCMAAwHQYD
# VR0OBBYEFN+1bIhLi6eWlLbzynleh97QuIFlMB8GA1UdIwQYMBaAFPApFPVqIRSS
# VlQTpD3VrfAhOsV4MAsGA1UdDwQEAwIHgDAfBgNVHSUEGDAWBggrBgEFBQcDAwYK
# KwYBBAGCNwIBFTA6BgNVHREEMzAxgRtsdWMudmFuZGVuYnJvdWNrZUBzY2tjZW4u
# YmWBEmx2YW5kZW5iQHNja2Nlbi5iZTA1BgNVHRIELjAshipodHRwOi8vY3JsLnNj
# a2Nlbi5iZS9TQ0tDRU4lMjBJQ1QlMjBDQS5jcnQwOwYDVR0fBDQwMjAwoC6gLIYq
# aHR0cDovL2NybC5zY2tjZW4uYmUvU0NLQ0VOJTIwSUNUJTIwQ0EuY3JsMD4GCSsG
# AQQBgjcVBwQxMC8GJysGAQQBgjcVCISMvCGCyP13gqGTIoSXlEaExpIugQGC1IQh
# gfrIaQIBZAIBCDAbBgkrBgEEAYI3FQoEDjAMMAoGCCsGAQUFBwMDMA0GCSqGSIb3
# DQEBCwUAA4ICAQBGH87fu9sNbcCPVQCdJ9jP4jT59WTZm6s5BquO10UL9i7UAEmd
# d0yfCHW3myNUigR6O+Oc6Wa74HbUhAk+nEimHxzP5KcNnKE6lwqsIOf49J5G+2HR
# mTgW9tewsr39ZiB3NE5s04fHEA0I45zs8wsgyp4Mlr5v3AfzYB7gxh0Hxdm+ion7
# PXvbKhAyI3F7pQTYauilmLAkHnoXD6T+Osp04wR9m1+HNGqLMKYyVOSdu0UnmGuq
# HBxpMD7hAJ8LCi5yR6t6s4BNCczwhzUpo6ZgrtLmKCacDmZ6SJMqsGFwan/GxnLS
# vw5QpVXUVJidDfTflMeJrfWhDOEt7jx9oQWQ249uzxlqJMVfBt1YZDq4gr76yjK6
# VY7F6540ECog4auPte4NoiT5UPdE3QHSD/82/cdLoVuhELR4p4bfJ7PONT7x8iZz
# I8BoASh9SKJBh06mcmyJosOkc77Wv3ykqal7R+/LQi9geJwku6Ti0XIy9UFGBbUD
# 4m18e5cKdqDzyIHwAne0JR0ZEILPzITWviFuSXKqGP0bkSbGgpl+LuaCHcKAv+1F
# QBc2oWW0yPdxCUYpwo9QfTTh0qYXABQAbibOw7VKTnRLsS92m9pb6wn9tYyNfMu6
# r7EXCuxJNDbYpKbxeadfY0arCzlOT6mpC6lzBqfgKyN+VWoy9rmdzhjEjjCCBnIw
# ggRaoAMCAQICEzgAAAACbukOrXYB5dcAAAAAAAIwDQYJKoZIhvcNAQELBQAwZzEL
# MAkGA1UEBhMCQkUxEjAQBgNVBAgTCUFudHdlcnBlbjEMMAoGA1UEBxMDTW9sMQ8w
# DQYDVQQKEwZTQ0tDRU4xDDAKBgNVBAsTA0lDVDEXMBUGA1UEAxMOU0NLQ0VOIFJv
# b3QgQ0EwHhcNMTcwNjIzMTEzOTM0WhcNMzIwNjIzMTE0OTM0WjBmMQswCQYDVQQG
# EwJCRTESMBAGA1UECBMJQW50d2VycGVuMQwwCgYDVQQHEwNNb2wxDzANBgNVBAoT
# BlNDS0NFTjEMMAoGA1UECxMDSUNUMRYwFAYDVQQDEw1TQ0tDRU4gSUNUIENBMIIC
# IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsW1uJ8gCKQwjdhAhr6eJJNXw
# +wffi5p2RB48uzTaQh2Y89P+75NFhk7qeOW0tVwacxYkubMvgNqasA9RslymREsx
# LfloMCidRPSQj8o0KE2cfLYojYre1TChFxc0PZobibZ7BTsU2v75GQjnsEEMmxzw
# JLAjSU2mFVKJKjrKs4Xt/q6j3w0fdrRz0ba8zSMbTHO2K8Cd1Rq3GQDLPythJyDx
# zo6YRE7TFOFcXGrIpFXvmy1XPc/ItiHwTocOmQ1msF+46W0gfWtbFLt8bC/CnuE2
# ZQPnAmpq3lOUu8cOq/2eqhihAeAli5McYepaK+qr1JtLNfgTSkkFFw27c5cPXwFC
# CE0ryJdN+qN4Xdk3J2iz0hayEJ4sGaimdJTXv/OTmSxxKGMnPYV+BTvk/PDJnGjW
# QqOryf0PWgmwVQ1KAowaPjBAXJOEotzNnzW0/FKtvgJYLk3xFs3sJJ6EG6D02wB2
# RNszNGM66tyqqx/Z3651xwzgkYYR1ETdmddcqL6/3a+HifS5K99N+q7rX/Rp31AU
# lNsb53xhh43NWUAg5Tzrb9J54mBR6Z/MafmTVHcK2nK6RRYaUfxs/WuE2+OzX7Md
# G/URi1lVuOu7hp7AKnSjcLnOcBG7lkSK1Q1pCuACYMkvCl+7keio376akUfumX3H
# qEVgK8ttZiRgiVHR7Q0CAwEAAaOCARYwggESMBAGCSsGAQQBgjcVAQQDAgEAMB0G
# A1UdDgQWBBTwKRT1aiEUklZUE6Q91a3wITrFeDAZBgkrBgEEAYI3FAIEDB4KAFMA
# dQBiAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAW
# gBRSvxsquCggUTGvI6e+I5TG0fkUMDA8BgNVHR8ENTAzMDGgL6AthitodHRwOi8v
# Y3JsLnNja2Nlbi5iZS9TQ0tDRU4lMjBSb290JTIwQ0EuY3JsMEcGCCsGAQUFBwEB
# BDswOTA3BggrBgEFBQcwAoYraHR0cDovL2NybC5zY2tjZW4uYmUvU0NLQ0VOJTIw
# Um9vdCUyMENBLmNydDANBgkqhkiG9w0BAQsFAAOCAgEAhsQ1eNAeFzKKGY9KW0VM
# GrLUbtccjHoeKlGdVn+yhS9xhSaIFgm00IPVO5zh9jKtgCA3o81TqY0w1WoRK1U8
# t89On5RZYVy39pDyu+oBlHgul9KOuJbIKLgh0VgEPvY3vM0h0bLdxIrnlIxchVxg
# s5y/h/wLKmXLjsg+AuYzsJ4+9GAD5SsdFGp2jiKPf9aw6zG67an2yTqtvPfeoRpk
# MWO+Mx39CWWwfU3MaQySlAx0/JzZcqWzk6QFgN1h89wSBHD0mMFdnahEth5y9QhP
# kLydPniibF5VZ59gbUVlpFFz8VddmBtx9xfe5aIYEjkj35HmEW/FN7qwnJP3dClj
# zFiqSueKqiFIN3punjHbMUoAxJnibx11Xz4pFm5mdk8v95r+sncH8SFK/P5nUjjE
# YIBRInZiovl7C8KfI1RD9lXJDPdw5yVfkCpkCr/rYNNMBHfDYZ+G1NEu9WzE2Nrk
# nC4H4qoNJLmMjVPTswcIT780iOvFZRf1ql+0e2TKUHCOkZ+plXtl3H6MimrNk6B/
# ZQAy4mETNH6ceaoudV7X5Y7HzbTwSXCSw6GCiQMdYXgsFp+lioorEmFZhVc2PTs+
# oUXbMi8IUaCyKEm6tMZHJ+PGU1YBE8Szyj5nI1SUhb+aHunRGlhgXPb4bnEdZVaM
# ruxFM0UbriGwmkOEv9cPVpAwgga0MIIEnKADAgECAhANx6xXBf8hmS5AQyIMOkmG
# MA0GCSqGSIb3DQEBCwUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2Vy
# dCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lD
# ZXJ0IFRydXN0ZWQgUm9vdCBHNDAeFw0yNTA1MDcwMDAwMDBaFw0zODAxMTQyMzU5
# NTlaMGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8G
# A1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBUaW1lU3RhbXBpbmcgUlNBNDA5NiBT
# SEEyNTYgMjAyNSBDQTEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC0
# eDHTCphBcr48RsAcrHXbo0ZodLRRF51NrY0NlLWZloMsVO1DahGPNRcybEKq+Ruw
# OnPhof6pvF4uGjwjqNjfEvUi6wuim5bap+0lgloM2zX4kftn5B1IpYzTqpyFQ/4B
# t0mAxAHeHYNnQxqXmRinvuNgxVBdJkf77S2uPoCj7GH8BLuxBG5AvftBdsOECS1U
# kxBvMgEdgkFiDNYiOTx4OtiFcMSkqTtF2hfQz3zQSku2Ws3IfDReb6e3mmdglTca
# arps0wjUjsZvkgFkriK9tUKJm/s80FiocSk1VYLZlDwFt+cVFBURJg6zMUjZa/zb
# CclF83bRVFLeGkuAhHiGPMvSGmhgaTzVyhYn4p0+8y9oHRaQT/aofEnS5xLrfxnG
# pTXiUOeSLsJygoLPp66bkDX1ZlAeSpQl92QOMeRxykvq6gbylsXQskBBBnGy3tW/
# AMOMCZIVNSaz7BX8VtYGqLt9MmeOreGPRdtBx3yGOP+rx3rKWDEJlIqLXvJWnY0v
# 5ydPpOjL6s36czwzsucuoKs7Yk/ehb//Wx+5kMqIMRvUBDx6z1ev+7psNOdgJMoi
# wOrUG2ZdSoQbU2rMkpLiQ6bGRinZbI4OLu9BMIFm1UUl9VnePs6BaaeEWvjJSjNm
# 2qA+sdFUeEY0qVjPKOWug/G6X5uAiynM7Bu2ayBjUwIDAQABo4IBXTCCAVkwEgYD
# VR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU729TSunkBnx6yuKQVvYv1Ensy04w
# HwYDVR0jBBgwFoAU7NfjgtJxXWRM3y5nP+e6mK4cD08wDgYDVR0PAQH/BAQDAgGG
# MBMGA1UdJQQMMAoGCCsGAQUFBwMIMHcGCCsGAQUFBwEBBGswaTAkBggrBgEFBQcw
# AYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEEGCCsGAQUFBzAChjVodHRwOi8v
# Y2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNydDBD
# BgNVHR8EPDA6MDigNqA0hjJodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNl
# cnRUcnVzdGVkUm9vdEc0LmNybDAgBgNVHSAEGTAXMAgGBmeBDAEEAjALBglghkgB
# hv1sBwEwDQYJKoZIhvcNAQELBQADggIBABfO+xaAHP4HPRF2cTC9vgvItTSmf83Q
# h8WIGjB/T8ObXAZz8OjuhUxjaaFdleMM0lBryPTQM2qEJPe36zwbSI/mS83afsl3
# YTj+IQhQE7jU/kXjjytJgnn0hvrV6hqWGd3rLAUt6vJy9lMDPjTLxLgXf9r5nWMQ
# wr8Myb9rEVKChHyfpzee5kH0F8HABBgr0UdqirZ7bowe9Vj2AIMD8liyrukZ2iA/
# wdG2th9y1IsA0QF8dTXqvcnTmpfeQh35k5zOCPmSNq1UH410ANVko43+Cdmu4y81
# hjajV/gxdEkMx1NKU4uHQcKfZxAvBAKqMVuqte69M9J6A47OvgRaPs+2ykgcGV00
# TYr2Lr3ty9qIijanrUR3anzEwlvzZiiyfTPjLbnFRsjsYg39OlV8cipDoq7+qNNj
# qFzeGxcytL5TTLL4ZaoBdqbhOhZ3ZRDUphPvSRmMThi0vw9vODRzW6AxnJll38F0
# cuJG7uEBYTptMSbhdhGQDpOXgpIUsWTjd6xpR6oaQf/DJbg3s6KCLPAlZ66RzIg9
# sC+NJpud/v4+7RWsWCiKi9EOLLHfMR2ZyJ/+xhCx9yHbxtl5TPau1j/1MIDpMPx0
# LckTetiSuEtQvLsNz3Qbp7wGWqbIiOWCnb5WqxL3/BAPvIXKUjPSxyZsq8WhbaM2
# tszWkPZPubdcMIIG7TCCBNWgAwIBAgIQCE/cM09+RU7bww+P+ZIYNTANBgkqhkiG
# 9w0BAQsFADBpMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4x
# QTA/BgNVBAMTOERpZ2lDZXJ0IFRydXN0ZWQgRzQgVGltZVN0YW1waW5nIFJTQTQw
# OTYgU0hBMjU2IDIwMjUgQ0ExMB4XDTI2MDgwNTAwMDAwMFoXDTM3MTEwNDIzNTk1
# OVowYzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMTswOQYD
# VQQDEzJEaWdpQ2VydCBTSEEyNTYgUlNBNDA5NiBUaW1lc3RhbXAgUmVzcG9uZGVy
# IDIwMjYgMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALZ7pvLJ/s1K
# +NSbTGWz/TjGMPh8CQ6RucZCLv5anHzWJjF/NWJrFIhy24fcpKXlgRiky4WAawDf
# U3YP0BMxt9l3Dm5oCG5Z69AqEN1kgHg2epx+l+lZBcmJCcN0ASURML5uFIS80sZs
# DwO3BSkUxDjLJhBI+qiZP3aixAC/qEGLjsBNlLol9VZ7pfGEXiMlneJIC5/YKuiz
# VzNFKZZEeoy/0B8Zm+nzKBgSWG52lCO1w+nCg6XpCtklTJXeIg283hw7TmmsZXR+
# SMbjbrEOvZ3fP2VxIgeR28Y90ZStd3F9VuA5RVynb/whITPAo9b75Zr4Ta6Mj3UR
# m26QZYMn/FnbuTegcoRcFEZ9FOqM5T6MTdtr/n74lIT/ug0eeOzmZ6QTFg33otX+
# bFRsIolvykE1jive4PuESaT8zzVeFWDAMDtozNgLctkGD1ZjkEyZtJrLl5ya0m5d
# oH/ScpaZCZVl6pNUOCybMc/kxC6EAmSJY24L0yYKD1Nkddsnb/ItVKi/2nXpQNMu
# 1PT5prW83vV8d67WowuUs0HdY4H8AMLGvdL/WHEj3ZnqMqAQQP9u3Ai9t+5eQ02G
# Dwy0ODjdzi0xlp70W+ow63/0++YDEX1M0iwgUHwbrJvfpklkZQvw3+kv3vUPItdw
# roczk9icflf55W1zOEKAcJVAIXpcMCU9AgMBAAGjggGVMIIBkTAMBgNVHRMBAf8E
# AjAAMB0GA1UdDgQWBBQUyWOKMC7USvtulPPm40B+9ezN4jAfBgNVHSMEGDAWgBTv
# b1NK6eQGfHrK4pBW9i/USezLTjAOBgNVHQ8BAf8EBAMCB4AwFgYDVR0lAQH/BAww
# CgYIKwYBBQUHAwgwgZUGCCsGAQUFBwEBBIGIMIGFMCQGCCsGAQUFBzABhhhodHRw
# Oi8vb2NzcC5kaWdpY2VydC5jb20wXQYIKwYBBQUHMAKGUWh0dHA6Ly9jYWNlcnRz
# LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNFRpbWVTdGFtcGluZ1JTQTQw
# OTZTSEEyNTYyMDI1Q0ExLmNydDBfBgNVHR8EWDBWMFSgUqBQhk5odHRwOi8vY3Js
# My5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkRzRUaW1lU3RhbXBpbmdSU0E0
# MDk2U0hBMjU2MjAyNUNBMS5jcmwwIAYDVR0gBBkwFzAIBgZngQwBBAIwCwYJYIZI
# AYb9bAcBMA0GCSqGSIb3DQEBCwUAA4ICAQCNxTphHp1SCt+ZrAmAfn0oQLFr0mLy
# wSLaDXQIENoyKqxrFbJblzCVP/pkXmwXOdrOpWygLzlT12os5ipDCy35RBCg2UMe
# ApEtrfGhz45F4Wt4WGdNdIbRWt3YTYJmpR+b7lr4d7Uwn+H600u4D7RnOGf8Wj4U
# NgAdZkfHhHv1mx9EVh71SJelcEN/oORSjXzdjfw1iZH9d8Nh/thn6hH23d+VsPAr
# 6GAYyzSA02nXD1nYLI7Ijmiv+xLCiYC41DSFYL3GhTiy0PxpawPtGRyaBVGzq+Ui
# TfM8pD7KVyF5aQyWP4KhVGUUTnmm/RlYJoW3TiXA/+t0YcT2oRVBm3JETjajHug2
# AL+v5jhtKVnd3D0rbHXEu27o+Q8p4sEWPMqKDB+qbceb6T/6WcwTwXmQ9lOCLLYc
# sQeSWmvKqzpAec9etE14jOQAzLKWdE3w/TCaKtLRaRT7LCkRYVnhA2D73FLje1O5
# b3HR5eHs0NzU/+xX7NbEdcofy0W3Wdwd1XOqtlpg/JgwtKfZM5dqO94lbUveOiJB
# I+xZEbGRsMNbXmMREUTgu+Oca7Y73MPWcslIx2VhkSKSXjDbD6rgg39H5Mh7Qfie
# AIjWagkJNt68Yfim6cjEzVSiLSeZfdkr5dtFPTW6jATlWJdYeeDRGCyatf8R1hSj
# zSvdN8yWQPT9gzGCBT4wggU6AgEBMGswZjELMAkGA1UEBhMCQkUxEjAQBgNVBAgT
# CUFudHdlcnBlbjEMMAoGA1UEBxMDTW9sMQ8wDQYDVQQKEwZTQ0tDRU4xDDAKBgNV
# BAsTA0lDVDEWMBQGA1UEAxMNU0NLQ0VOIElDVCBDQQIBHzANBglghkgBZQMEAgEF
# AKB8MBAGCisGAQQBgjcCAQwxAjAAMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEE
# MBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCAS
# 2aBPknYkCzLtqtSRNYtUNO87gBemGBN/U+qeR5HMNjANBgkqhkiG9w0BAQEFAASC
# AQAKOuZxO/8K7aWdaSV6kYCudKLI6yhtaOIJqieqG/s6d+dSUeQRrdRD18W0Uvcg
# zX2rkJTbj/RYnYhCfPoV+D81TlPDT/VUHectgpG1C+S2Z3BfH2gMhGBRF3riE8RW
# UAkaQOIw4pN2gKtaV5ynIe03n/saH0SsVcocAegBszmPFaiOZghqAlfZGc97DmXx
# 9k154v84c8YXhZyAi1NcTaBDbd25o+3cAbh10UjUKoytdMGNDcpA+WK7bsTi1lZ1
# 4+GskimCL6ORk2JSGqaBKgEP/CFs4jUGcC5y5JTTa3URHJn4mjGTDsxg8h2fB/Ip
# vbb2q1JJw78JyYTXTMYrG/qEoYIDJjCCAyIGCSqGSIb3DQEJBjGCAxMwggMPAgEB
# MH0waTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMUEwPwYD
# VQQDEzhEaWdpQ2VydCBUcnVzdGVkIEc0IFRpbWVTdGFtcGluZyBSU0E0MDk2IFNI
# QTI1NiAyMDI1IENBMQIQCE/cM09+RU7bww+P+ZIYNTANBglghkgBZQMEAgEFAKBp
# MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTI2MTAx
# NTEyMzcxNVowLwYJKoZIhvcNAQkEMSIEILV8Ml0NLuyCBXSTz/kYUWrJUV1fM0AK
# l0ZIWUS8D6jbMA0GCSqGSIb3DQEBAQUABIICAGkfgX1oTaBKvTDjugpibbR4PyNF
# XBqM8UGF5wVKXIUZxLAa1WsOW73hwh9swlEwj2CaACFHGqN2IDu7hpmD15CS5PMl
# KNy5a6USvERWSNWhvG13eiupO+FMQ6zQyhPVznjWmwG58EbgTbStXaPCjB8rW2qI
# Ok6aC6wqRIe+e0PxONNptmyqTLH+ZH0q+y1fYq1+giPIr59yQxDlIqS1F6eTAeYk
# sY+VTaimL3gvsKMB9JKqwpJiKmvg1jogOWR7I5xW6TgzTVnyGUnGEm58Hm/oX88v
# hHFkfgIgJEN3PM5Rs0nzBAfNOrCYDek1RlsT6RXbqYdvyDa783jVeU2jmFl/nfsu
# I2Bbk5aXzUR15j956extyn3KN4DJDTdgVDEQvTUNOPjiphRjD8wGOOFd6QvGOIEU
# ztuUF1MUYp8XRO4M4AYwO+WFraCR07Tn+YIFZHTjW4gSCugkD2l7ceDbEZuAYP4N
# XfUugFeguoOl71jCKqit3X0cFAcGIhDkVwMj0Lz7EJFSmyHHGyE2U9BlKKjQAb3Z
# g7Izig69Pu7sqLDbXu/VjlL5ReJkzO0AlrtpJOIHDFa71eyhfqPt0ZxT+h5V23Ld
# IVHd8wTMqm5uG/PAiQu4ttCje7sELYO9O6aMvD5CbfD8VJ3J8hRBT68zq6IYK1k0
# IfTEJ6eeaVtjpKH+
# SIG # End signature block