private/scripts/dbatools-maintenance.ps1
|
foreach ($item in (Get-ChildItem "$script:PSModuleRoot\private\maintenance" -File)) { if ($script:serialimport) { . $item.FullName } else { Import-Command -Path $item.FullName } } $scriptBlock = { $script:___ScriptName = 'dbatools-maintenance' # Import module in a way where internals are available $script:disablerunspacetepp = $true Import-Module "$([Dataplat.Dbatools.dbaSystem.SystemHost]::ModuleBase)\dbatools.psm1" try { #region Main Execution while ($true) { # This portion is critical to gracefully closing the script if ([Dataplat.Dbatools.Runspace.RunspaceHost]::Runspaces[$___ScriptName.ToLowerInvariant()].State -notlike "Running") { break } $task = $null $tasksDone = @() while ($task = [Dataplat.Dbatools.Maintenance.MaintenanceHost]::GetNextTask($tasksDone)) { try { ([ScriptBlock]::Create($task.ScriptBlock.ToString())).Invoke() } catch { Write-Message -EnableException $false -Level Verbose -Message "[Maintenance] Task '$($task.Name)' failed to execute: $_" -ErrorRecord $_ -FunctionName "task:Maintenance" -Target $task } $task.LastExecution = Get-Date $tasksDone += $task.Name } Start-Sleep -Seconds 5 } #endregion Main Execution } catch { $null = 1 } finally { [Dataplat.Dbatools.Runspace.RunspaceHost]::Runspaces[$___ScriptName.ToLowerInvariant()].SignalStopped() } } Register-DbaRunspace -ScriptBlock $scriptBlock -Name "dbatools-maintenance" Start-DbaRunspace -Name "dbatools-maintenance" # SIG # Begin signature block # MIIt2wYJKoZIhvcNAQcCoIItzDCCLcgCAQMxDTALBglghkgBZQMEAgEwewYKKwYB # BAGCNwIBBKBtBGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCBAmCFXKXzUjI9T # cs1NQhgevQZWU9lXRwye+NAbxCG3SaCCFdswggbXMIIEv6ADAgECAhMzAAZzExEM # yohgyGzZAAAABnMTMA0GCSqGSIb3DQEBDAUAMFoxCzAJBgNVBAYTAlVTMR4wHAYD # VQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJ # RCBWZXJpZmllZCBDUyBBT0MgQ0EgMDEwHhcNMjUxMTI3MDY0NTUyWhcNMjUxMTMw # MDY0NTUyWjBXMQswCQYDVQQGEwJVUzERMA8GA1UECBMIVmlyZ2luaWExDzANBgNV # BAcTBlZpZW5uYTERMA8GA1UEChMIZGJhdG9vbHMxETAPBgNVBAMTCGRiYXRvb2xz # MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAoRDaJj0ZiYSIxTjWYEga # THXLkH+FXsjsVUl15ibXyCWjsv1i2pVy0DRROg0scheFsOpeIRbgGptxMXou/pgR # BuFj+piKTgX8o6xirqhXs4KZHrIoPs+/VOXjX+2L6NCGgsag4ugMc93v+PrNNUB1 # k9GeyW/vVcoGzizHW1SoiZz+kX1SWgkvZ21qj2L2sXxNwCp5uReOw+2iBcJWQIrW # Cb5aYtqavfusFFMFV2Y5jiiJS8Xd3Q+0KTRfx20NCsvRDyfxEerNdkUrZUuxg9Uj # osw4eivnxm0JnJzvNv3fHLIjgE4dUn8YMrWqyMZ0nyHmZ8eorwCOg7je0MZn38L6 # CE4+nnFDEbbzx7/0GV5HTvXvB4JeYoRaVnE3GXY1W/Fy5wEl4hz50hVcC1YuPAsH # A7Ml4na5vT1pMmyLGXO8hVyr75QSp9oE/uLeWnuzdMXOJGRqUUlg0KbJIrPAZzZt # GQbWjFMTnuiSdSkPgcssNLPv1zYOJ9scJVzDZ1VPZjiTAgMBAAGjggIXMIICEzAM # BgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDA6BgNVHSUEMzAxBgorBgEEAYI3 # YQEABggrBgEFBQcDAwYZKwYBBAGCN2H5+cEspPS4DoOuxLIcm56wGDAdBgNVHQ4E # FgQUSrIStSOWdriIgg+hF7McRRemRq8wHwYDVR0jBBgwFoAU6IPEM9fcnwycdpoK # ptTfh6ZeWO4wZwYDVR0fBGAwXjBcoFqgWIZWaHR0cDovL3d3dy5taWNyb3NvZnQu # Y29tL3BraW9wcy9jcmwvTWljcm9zb2Z0JTIwSUQlMjBWZXJpZmllZCUyMENTJTIw # QU9DJTIwQ0ElMjAwMS5jcmwwgaUGCCsGAQUFBwEBBIGYMIGVMGQGCCsGAQUFBzAC # hlhodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29m # dCUyMElEJTIwVmVyaWZpZWQlMjBDUyUyMEFPQyUyMENBJTIwMDEuY3J0MC0GCCsG # AQUFBzABhiFodHRwOi8vb25lb2NzcC5taWNyb3NvZnQuY29tL29jc3AwZgYDVR0g # BF8wXTBRBgwrBgEEAYI3TIN9AQEwQTA/BggrBgEFBQcCARYzaHR0cDovL3d3dy5t # aWNyb3NvZnQuY29tL3BraW9wcy9Eb2NzL1JlcG9zaXRvcnkuaHRtMAgGBmeBDAEE # ATANBgkqhkiG9w0BAQwFAAOCAgEAOupvkq9O2sFjHxK/vZ1/ABAzAZTsfbhJRCDK # 86l5pTbK/UmUQSmzfuoMbc7vhM+mJQjL9NTC7OPWxkd98FhwsrotyVKXRwStP7Cv # eMoNr6ia+tLgDdBhONwVDiLZOKT0zVhZydG04MCLT+wz2bbLgcTqNyexlX4+WFY6 # 5VVVLJhfG7cUpuoIkWOVrOOv+GNoyBtifzck4gTpwx4fHECv7LYVWsN05OHMQaV3 # Ri90GZtyymGOYe1U1RVTs65I/U6jeQ0IQJ7L/fbVccAfBIEX7YX70DYWtgvQwXL2 # 3VrcCKao8Jz3AAm53gyfm64KcG9oSPR13p5qPbGxpjB6BWXvUHDO5amGcZ4j43fS # xQTVWyMKqieHVpsBaM6zndMH7fGZ2GOY302tWss/OsHfXCMUUgU3yy4gxfZn9yLy # i9q/Z/jjImJwro0vx5spBUYDGsXQb1099Mkj0C8a1KgJsW84ssnUCb3YUVVeDLS1 # UBK5XSFn5iiexgQ8QV+YshCx0O58eVBnzhiDN/4SHzWEswDqavwo+9J8pcieIh+K # E3s/AChUyrWcaFGANOmKeV6iPO+IKD1442f5rNzqeM41tU/JjUNG5Qm7kWtr0MMu # tGRBWB5ztOLJvzZyn19uRd8ErwQjmdgQFei+8DX/XsBgSZQu4WthdYANQHJKewSH # ikTiV+IwggdaMIIFQqADAgECAhMzAAAABzeMW6HZW4zUAAAAAAAHMA0GCSqGSIb3 # DQEBDAUAMGMxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9y # YXRpb24xNDAyBgNVBAMTK01pY3Jvc29mdCBJRCBWZXJpZmllZCBDb2RlIFNpZ25p # bmcgUENBIDIwMjEwHhcNMjEwNDEzMTczMTU0WhcNMjYwNDEzMTczMTU0WjBaMQsw # CQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSswKQYD # VQQDEyJNaWNyb3NvZnQgSUQgVmVyaWZpZWQgQ1MgQU9DIENBIDAxMIICIjANBgkq # hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAt/fAAygHxbo+jxA04hNI8bz+EqbWvSu9 # dRgAawjCZau1Y54IQal5ArpJWi8cIj0WA+mpwix8iTRguq9JELZvTMo2Z1U6AtE1 # Tn3mvq3mywZ9SexVd+rPOTr+uda6GVgwLA80LhRf82AvrSwxmZpCH/laT08dn7+G # t0cXYVNKJORm1hSrAjjDQiZ1Jiq/SqiDoHN6PGmT5hXKs22E79MeFWYB4y0UlNqW # 0Z2LPNua8k0rbERdiNS+nTP/xsESZUnrbmyXZaHvcyEKYK85WBz3Sr6Et8Vlbdid # /pjBpcHI+HytoaUAGE6rSWqmh7/aEZeDDUkz9uMKOGasIgYnenUk5E0b2U//bQqD # v3qdhj9UJYWADNYC/3i3ixcW1VELaU+wTqXTxLAFelCi/lRHSjaWipDeE/TbBb0z # TCiLnc9nmOjZPKlutMNho91wxo4itcJoIk2bPot9t+AV+UwNaDRIbcEaQaBycl9p # cYwWmf0bJ4IFn/CmYMVG1ekCBxByyRNkFkHmuMXLX6PMXcveE46jMr9syC3M8JHR # ddR4zVjd/FxBnS5HOro3pg6StuEPshrp7I/Kk1cTG8yOWl8aqf6OJeAVyG4lyJ9V # +ZxClYmaU5yvtKYKk1FLBnEBfDWw+UAzQV0vcLp6AVx2Fc8n0vpoyudr3SwZmckJ # uz7R+S79BzMCAwEAAaOCAg4wggIKMA4GA1UdDwEB/wQEAwIBhjAQBgkrBgEEAYI3 # FQEEAwIBADAdBgNVHQ4EFgQU6IPEM9fcnwycdpoKptTfh6ZeWO4wVAYDVR0gBE0w # SzBJBgRVHSAAMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNv # bS9wa2lvcHMvRG9jcy9SZXBvc2l0b3J5Lmh0bTAZBgkrBgEEAYI3FAIEDB4KAFMA # dQBiAEMAQTASBgNVHRMBAf8ECDAGAQH/AgEAMB8GA1UdIwQYMBaAFNlBKbAPD2Ns # 72nX9c0pnqRIajDmMHAGA1UdHwRpMGcwZaBjoGGGX2h0dHA6Ly93d3cubWljcm9z # b2Z0LmNvbS9wa2lvcHMvY3JsL01pY3Jvc29mdCUyMElEJTIwVmVyaWZpZWQlMjBD # b2RlJTIwU2lnbmluZyUyMFBDQSUyMDIwMjEuY3JsMIGuBggrBgEFBQcBAQSBoTCB # njBtBggrBgEFBQcwAoZhaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9j # ZXJ0cy9NaWNyb3NvZnQlMjBJRCUyMFZlcmlmaWVkJTIwQ29kZSUyMFNpZ25pbmcl # MjBQQ0ElMjAyMDIxLmNydDAtBggrBgEFBQcwAYYhaHR0cDovL29uZW9jc3AubWlj # cm9zb2Z0LmNvbS9vY3NwMA0GCSqGSIb3DQEBDAUAA4ICAQB3/utLItkwLTp4Nfh9 # 9vrbpSsL8NwPIj2+TBnZGL3C8etTGYs+HZUxNG+rNeZa+Rzu9oEcAZJDiGjEWytz # MavD6Bih3nEWFsIW4aGh4gB4n/pRPeeVrK4i1LG7jJ3kPLRhNOHZiLUQtmrF4V6I # xtUFjvBnijaZ9oIxsSSQP8iHMjP92pjQrHBFWHGDbkmx+yO6Ian3QN3YmbdfewzS # vnQmKbkiTibJgcJ1L0TZ7BwmsDvm+0XRsPOfFgnzhLVqZdEyWww10bflOeBKqkb3 # SaCNQTz8nshaUZhrxVU5qNgYjaaDQQm+P2SEpBF7RolEC3lllfuL4AOGCtoNdPOW # rx9vBZTXAVdTE2r0IDk8+5y1kLGTLKzmNFn6kVCc5BddM7xoDWQ4aUoCRXcsBeRh # sclk7kVXP+zJGPOXwjUJbnz2Kt9iF/8B6FDO4blGuGrogMpyXkuwCC2Z4XcfyMjP # DhqZYAPGGTUINMtFbau5RtGG1DOWE9edCahtuPMDgByfPixvhy3sn7zUHgIC/YsO # TMxVuMQi/bgamemo/VNKZrsZaS0nzmOxKpg9qDefj5fJ9gIHXcp2F0OHcVwe3KnE # Xa8kqzMDfrRl/wwKrNSFn3p7g0b44Ad1ONDmWt61MLQvF54LG62i6ffhTCeoFT9Z # 9pbUo2gxlyTFg7Bm0fgOlnRfGDCCB54wggWGoAMCAQICEzMAAAAHh6M0o3uljhwA # AAAAAAcwDQYJKoZIhvcNAQEMBQAwdzELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1p # Y3Jvc29mdCBDb3Jwb3JhdGlvbjFIMEYGA1UEAxM/TWljcm9zb2Z0IElkZW50aXR5 # IFZlcmlmaWNhdGlvbiBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAyMDIwMB4X # DTIxMDQwMTIwMDUyMFoXDTM2MDQwMTIwMTUyMFowYzELMAkGA1UEBhMCVVMxHjAc # BgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE0MDIGA1UEAxMrTWljcm9zb2Z0 # IElEIFZlcmlmaWVkIENvZGUgU2lnbmluZyBQQ0EgMjAyMTCCAiIwDQYJKoZIhvcN # AQEBBQADggIPADCCAgoCggIBALLwwK8ZiCji3VR6TElsaQhVCbRS/3pK+MHrJSj3 # Zxd3KU3rlfL3qrZilYKJNqztA9OQacr1AwoNcHbKBLbsQAhBnIB34zxf52bDpIO3 # NJlfIaTE/xrweLoQ71lzCHkD7A4As1Bs076Iu+mA6cQzsYYH/Cbl1icwQ6C65rU4 # V9NQhNUwgrx9rGQ//h890Q8JdjLLw0nV+ayQ2Fbkd242o9kH82RZsH3HEyqjAB5a # 8+Ae2nPIPc8sZU6ZE7iRrRZywRmrKDp5+TcmJX9MRff241UaOBs4NmHOyke8oU1T # Yrkxh+YeHgfWo5tTgkoSMoayqoDpHOLJs+qG8Tvh8SnifW2Jj3+ii11TS8/FGngE # aNAWrbyfNrC69oKpRQXY9bGH6jn9NEJv9weFxhTwyvx9OJLXmRGbAUXN1U9nf4lX # ezky6Uh/cgjkVd6CGUAf0K+Jw+GE/5VpIVbcNr9rNE50Sbmy/4RTCEGvOq3GhjIT # bCa4crCzTTHgYYjHs1NbOc6brH+eKpWLtr+bGecy9CrwQyx7S/BfYJ+ozst7+yZt # G2wR461uckFu0t+gCwLdN0A6cFtSRtR8bvxVFyWwTtgMMFRuBa3vmUOTnfKLsLef # RaQcVTgRnzeLzdpt32cdYKp+dhr2ogc+qM6K4CBI5/j4VFyC4QFeUP2YAidLtvpX # RRo3AgMBAAGjggI1MIICMTAOBgNVHQ8BAf8EBAMCAYYwEAYJKwYBBAGCNxUBBAMC # AQAwHQYDVR0OBBYEFNlBKbAPD2Ns72nX9c0pnqRIajDmMFQGA1UdIARNMEswSQYE # VR0gADBBMD8GCCsGAQUFBwIBFjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtp # b3BzL0RvY3MvUmVwb3NpdG9yeS5odG0wGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBD # AEEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTIftJqhSobyhmYBAcnz1AQ # T2ioojCBhAYDVR0fBH0wezB5oHegdYZzaHR0cDovL3d3dy5taWNyb3NvZnQuY29t # L3BraW9wcy9jcmwvTWljcm9zb2Z0JTIwSWRlbnRpdHklMjBWZXJpZmljYXRpb24l # MjBSb290JTIwQ2VydGlmaWNhdGUlMjBBdXRob3JpdHklMjAyMDIwLmNybDCBwwYI # KwYBBQUHAQEEgbYwgbMwgYEGCCsGAQUFBzAChnVodHRwOi8vd3d3Lm1pY3Jvc29m # dC5jb20vcGtpb3BzL2NlcnRzL01pY3Jvc29mdCUyMElkZW50aXR5JTIwVmVyaWZp # Y2F0aW9uJTIwUm9vdCUyMENlcnRpZmljYXRlJTIwQXV0aG9yaXR5JTIwMjAyMC5j # cnQwLQYIKwYBBQUHMAGGIWh0dHA6Ly9vbmVvY3NwLm1pY3Jvc29mdC5jb20vb2Nz # cDANBgkqhkiG9w0BAQwFAAOCAgEAfyUqnv7Uq+rdZgrbVyNMul5skONbhls5fccP # lmIbzi+OwVdPQ4H55v7VOInnmezQEeW4LqK0wja+fBznANbXLB0KrdMCbHQpbLvG # 6UA/Xv2pfpVIE1CRFfNF4XKO8XYEa3oW8oVH+KZHgIQRIwAbyFKQ9iyj4aOWeAzw # k+f9E5StNp5T8FG7/VEURIVWArbAzPt9ThVN3w1fAZkF7+YU9kbq1bCR2YD+Mtun # SQ1Rft6XG7b4e0ejRA7mB2IoX5hNh3UEauY0byxNRG+fT2MCEhQl9g2i2fs6VOG1 # 9CNep7SquKaBjhWmirYyANb0RJSLWjinMLXNOAga10n8i9jqeprzSMU5ODmrMCJE # 12xS/NWShg/tuLjAsKP6SzYZ+1Ry358ZTFcx0FS/mx2vSoU8s8HRvy+rnXqyUJ9H # BqS0DErVLjQwK8VtsBdekBmdTbQVoCgPCqr+PDPB3xajYnzevs7eidBsM71PINK2 # BoE2UfMwxCCX3mccFgx6UsQeRSdVVVNSyALQe6PT12418xon2iDGE81OGCreLzDc # MAZnrUAx4XQLUz6ZTl65yPUiOh3k7Yww94lDf+8oG2oZmDh5O1Qe38E+M3vhKwmz # IeoB1dVLlz4i3IpaDcR+iuGjH2TdaC1ZOmBXiCRKJLj4DT2uhJ04ji+tHD6n58vh # avFIrmcxghdWMIIXUgIBATBxMFoxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNy # b3NvZnQgQ29ycG9yYXRpb24xKzApBgNVBAMTIk1pY3Jvc29mdCBJRCBWZXJpZmll # ZCBDUyBBT0MgQ0EgMDECEzMABnMTEQzKiGDIbNkAAAAGcxMwCwYJYIZIAWUDBAIB # oHwwEAYKKwYBBAGCNwIBDDECMAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQw # HAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwLwYJKoZIhvcNAQkEMSIEIIS4 # SzRuim9+Pm6wSDwoDwlT7FUyRrws13r/SN0sSchgMAsGCSqGSIb3DQEBAQSCAYCb # kVlonznqNY9y0hUmc3mc8leJaNNFhu2J3MHn1HskR0jL5UewuII7/2n/g7xRSmQH # 6tn7TXIFM/oV3x0a3spGfrScGIblS+vlRL1FJfT893mr0jtkQpNG+s19u0UksijH # SR+Lqehg7tl6h90Yzzs1JxYVQvwvSoRFuAmrbhbj4wTtEfwRgBnuBjxYVeOfepI3 # 95bjIf3W7vflllWFq1QeAWPkxB1eCcLTVq3xVZ3KN8XssOUsAw8dsEC3Zv6YmQy2 # yWzKXkTOxoEIvL5+yyRSiKOXVU78Ut8luDm3zue9NWKWJgysqYbkjevVs1WCDIF5 # mIickQUTEhv5vsRQM0KyOT92t7NOfocZtl7lrxUeXmkL46bLwSkt/GiTX8DldQf0 # eT51X+GWfIwxTttEx/RiqCD4bXbAz6jKHxa3H8b4W5JhPlIfUzQFlj9u7IDlsPVv # RYhcxbq0MIGttGBb33Ds63snCznLbUduOokxTCY+bkvklLbygz9/XMK23d6dHbGh # ghS8MIIUuAYKKwYBBAGCNwMDATGCFKgwghSkBgkqhkiG9w0BBwKgghSVMIIUkQIB # AzEPMA0GCWCGSAFlAwQCAQUAMIIBdAYLKoZIhvcNAQkQAQSgggFjBIIBXzCCAVsC # AQEGCisGAQQBhFkKAwEwMTANBglghkgBZQMEAgEFAAQgWVcZF6jJAU7Lr+M87JOU # U7peVKc7CIWUmqMdj6Lh7dkCBmkffmbyUBgTMjAyNTExMjcxMjI0MzkuOTkxWjAE # gAIB9AIITgU4yl9FdWKggemkgeYwgeMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpX # YXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQg # Q29ycG9yYXRpb24xLTArBgNVBAsTJE1pY3Jvc29mdCBJcmVsYW5kIE9wZXJhdGlv # bnMgTGltaXRlZDEnMCUGA1UECxMeblNoaWVsZCBUU1MgRVNOOjdBMUEtMDVFMC1E # OTQ3MTUwMwYDVQQDEyxNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lIFN0YW1waW5n # IEF1dGhvcml0eaCCDykwggeCMIIFaqADAgECAhMzAAAABeXPD/9mLsmHAAAAAAAF # MA0GCSqGSIb3DQEBDAUAMHcxCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVNaWNyb3Nv # ZnQgQ29ycG9yYXRpb24xSDBGBgNVBAMTP01pY3Jvc29mdCBJZGVudGl0eSBWZXJp # ZmljYXRpb24gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgMjAyMDAeFw0yMDEx # MTkyMDMyMzFaFw0zNTExMTkyMDQyMzFaMGExCzAJBgNVBAYTAlVTMR4wHAYDVQQK # ExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBQdWJs # aWMgUlNBIFRpbWVzdGFtcGluZyBDQSAyMDIwMIICIjANBgkqhkiG9w0BAQEFAAOC # Ag8AMIICCgKCAgEAnnznUmP94MWfBX1jtQYioxwe1+eXM9ETBb1lRkd3kcFdcG9/ # sqtDlwxKoVIcaqDb+omFio5DHC4RBcbyQHjXCwMk/l3TOYtgoBjxnG/eViS4sOx8 # y4gSq8Zg49REAf5huXhIkQRKe3Qxs8Sgp02KHAznEa/Ssah8nWo5hJM1xznkRsFP # u6rfDHeZeG1Wa1wISvlkpOQooTULFm809Z0ZYlQ8Lp7i5F9YciFlyAKwn6yjN/kR # 4fkquUWfGmMopNq/B8U/pdoZkZZQbxNlqJOiBGgCWpx69uKqKhTPVi3gVErnc/qi # +dR8A2MiAz0kN0nh7SqINGbmw5OIRC0EsZ31WF3Uxp3GgZwetEKxLms73KG/Z+Mk # euaVDQQheangOEMGJ4pQZH55ngI0Tdy1bi69INBV5Kn2HVJo9XxRYR/JPGAaM6xG # l57Ei95HUw9NV/uC3yFjrhc087qLJQawSC3xzY/EXzsT4I7sDbxOmM2rl4uKK6eE # purRduOQ2hTkmG1hSuWYBunFGNv21Kt4N20AKmbeuSnGnsBCd2cjRKG79+TX+sTe # hawOoxfeOO/jR7wo3liwkGdzPJYHgnJ54UxbckF914AqHOiEV7xTnD1a69w/UTxw # jEugpIPMIIE67SFZ2PMo27xjlLAHWW3l1CEAFjLNHd3EQ79PUr8FUXetXr0CAwEA # AaOCAhswggIXMA4GA1UdDwEB/wQEAwIBhjAQBgkrBgEEAYI3FQEEAwIBADAdBgNV # HQ4EFgQUa2koOjUvSGNAz3vYr0npPtk92yEwVAYDVR0gBE0wSzBJBgRVHSAAMEEw # PwYIKwYBBQUHAgEWM2h0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvRG9j # cy9SZXBvc2l0b3J5Lmh0bTATBgNVHSUEDDAKBggrBgEFBQcDCDAZBgkrBgEEAYI3 # FAIEDB4KAFMAdQBiAEMAQTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFMh+ # 0mqFKhvKGZgEByfPUBBPaKiiMIGEBgNVHR8EfTB7MHmgd6B1hnNodHRwOi8vd3d3 # Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NybC9NaWNyb3NvZnQlMjBJZGVudGl0eSUy # MFZlcmlmaWNhdGlvbiUyMFJvb3QlMjBDZXJ0aWZpY2F0ZSUyMEF1dGhvcml0eSUy # MDIwMjAuY3JsMIGUBggrBgEFBQcBAQSBhzCBhDCBgQYIKwYBBQUHMAKGdWh0dHA6 # Ly93d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwSWRl # bnRpdHklMjBWZXJpZmljYXRpb24lMjBSb290JTIwQ2VydGlmaWNhdGUlMjBBdXRo # b3JpdHklMjAyMDIwLmNydDANBgkqhkiG9w0BAQwFAAOCAgEAX4h2x35ttVoVdedM # eGj6TuHYRJklFaW4sTQ5r+k77iB79cSLNe+GzRjv4pVjJviceW6AF6ycWoEYR0LY # haa0ozJLU5Yi+LCmcrdovkl53DNt4EXs87KDogYb9eGEndSpZ5ZM74LNvVzY0/nP # ISHz0Xva71QjD4h+8z2XMOZzY7YQ0Psw+etyNZ1CesufU211rLslLKsO8F2aBs2c # Io1k+aHOhrw9xw6JCWONNboZ497mwYW5EfN0W3zL5s3ad4Xtm7yFM7Ujrhc0aqy3 # xL7D5FR2J7x9cLWMq7eb0oYioXhqV2tgFqbKHeDick+P8tHYIFovIP7YG4ZkJWag # 1H91KlELGWi3SLv10o4KGag42pswjybTi4toQcC/irAodDW8HNtX+cbz0sMptFJK # +KObAnDFHEsukxD+7jFfEV9Hh/+CSxKRsmnuiovCWIOb+H7DRon9TlxydiFhvu88 # o0w35JkNbJxTk4MhF/KgaXn0GxdH8elEa2Imq45gaa8D+mTm8LWVydt4ytxYP/bq # jN49D9NZ81coE6aQWm88TwIf4R4YZbOpMKN0CyejaPNN41LGXHeCUMYmBx3PkP8A # DHD1J2Cr/6tjuOOCztfp+o9Nc+ZoIAkpUcA/X2gSMkgHAPUvIdtoSAHEUKiBhI6J # QivRepyvWcl+JYbYbBh7pmgAXVswggefMIIFh6ADAgECAhMzAAAAU1LCA4vlmvhO # AAAAAABTMA0GCSqGSIb3DQEBDAUAMGExCzAJBgNVBAYTAlVTMR4wHAYDVQQKExVN # aWNyb3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBQdWJsaWMg # UlNBIFRpbWVzdGFtcGluZyBDQSAyMDIwMB4XDTI1MDIyNzE5NDAyNloXDTI2MDIy # NjE5NDAyNlowgeMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAw # DgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24x # LTArBgNVBAsTJE1pY3Jvc29mdCBJcmVsYW5kIE9wZXJhdGlvbnMgTGltaXRlZDEn # MCUGA1UECxMeblNoaWVsZCBUU1MgRVNOOjdBMUEtMDVFMC1EOTQ3MTUwMwYDVQQD # EyxNaWNyb3NvZnQgUHVibGljIFJTQSBUaW1lIFN0YW1waW5nIEF1dGhvcml0eTCC # AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJc5Kfov8wrtUOd6TMY2zReq # ocHRzPEgqmdkAjU/7fFjMod6kZxF2D068zAvNzvcX+nInP7jN3FK2K9R6dp23eNP # YXDO/Sxidfo3dKx9YOJu4BmLmB0cSiJxe1OhnFuCYf5cwswZZtA2NrHrr0/xScFR # eD9VuzjNVftfEGvBbwdpcW4frOYiRwU0aMxGNKfQNET5Nu4KMIjANTjXqARzxXnZ # Ph/wdUXbwRCI8RGUdF7eTUNzL/9rPmzfPSJre3rQ+QzB9T2yZLH6tf9cSOkJboq+ # KUgS8tXojhCTldxp90gYg8FPNhgqDkBA2j29peGpqQhZhbMPoHvjVo2LwyLwj515 # rxO/WxPa2bKLCxjIIHZGEomkOURdxwUU9Wpc7WWChFhiylnc+LSi2eLw5k3ttXQ5 # taDXaqOaoRDYAZ+4xq/m8qKv8eYsTRLyKMkGwQi+Vqw0u6DqD+O9QuVqQI0qhtcE # CyIxP9dYMcKFedmi7KHGJIouwm6/uatwnbE7lN24EaQzqV1OreDyP1tEDKhJerg/ # sQlRKNDVcmTRIUZVTVomMlZQA9NG+LJke4hgFst9eHf0ex/eWg08MitclMvr4Ii2 # Qe1Z2usrnE4G7oq9rUjZH6Swz9b7qFX9wvVFPEBN8SpwX9sKcf40bDEzivAPgeyt # qTmSMiNh1QPiMpQh3s5BAgMBAAGjggHLMIIBxzAdBgNVHQ4EFgQUbmREqyNjGh8F # s0I9Idb0ZP/2j2owHwYDVR0jBBgwFoAUa2koOjUvSGNAz3vYr0npPtk92yEwbAYD # VR0fBGUwYzBhoF+gXYZbaHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraW9wcy9j # cmwvTWljcm9zb2Z0JTIwUHVibGljJTIwUlNBJTIwVGltZXN0YW1waW5nJTIwQ0El # MjAyMDIwLmNybDB5BggrBgEFBQcBAQRtMGswaQYIKwYBBQUHMAKGXWh0dHA6Ly93 # d3cubWljcm9zb2Z0LmNvbS9wa2lvcHMvY2VydHMvTWljcm9zb2Z0JTIwUHVibGlj # JTIwUlNBJTIwVGltZXN0YW1waW5nJTIwQ0ElMjAyMDIwLmNydDAMBgNVHRMBAf8E # AjAAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIHgDBmBgNV # HSAEXzBdMFEGDCsGAQQBgjdMg30BATBBMD8GCCsGAQUFBwIBFjNodHRwOi8vd3d3 # Lm1pY3Jvc29mdC5jb20vcGtpb3BzL0RvY3MvUmVwb3NpdG9yeS5odG0wCAYGZ4EM # AQQCMA0GCSqGSIb3DQEBDAUAA4ICAQCIc/9lTzJS0hp0xJqffakNxhlJ8YW6wDGz # 39WK9mz6Musd5cad4t2Ejje17TAKJmwQwOEgLMT8fGNhvCIveXObms4sDuG0CwG5 # RibIdftJWYc6AEMcziOTD6bKtxd7fvAh4eiVGpPLtzCbHFT2DSv5D0ACdPx3XZPj # fwFRKAViIyMtL/2bbZjrXu5WLMhXT5ri++Bbi5EO2ygegFkAB+ARoDg0rG5PduDV # 6dYmVNoHVdAMmXC2KHyrIrHw1J2bPGwC7cFIBz1hblfpYub521FApmdHmuU85+0J # +Vx4ylXg8y0/pwQcehjD0VGhE3yFgvPDlwMeY4jFeI57NihxYzMOPdVJHIo971O+ # TOsbaojXme3vEdJ56apdvizcq75mAlYz9MpvkJUGbMryyijoj9/UGysSu2PJeZcR # icMRdjdgphILWGVWqQSo9DinlxgxL+JAP3SRgTpUjigrnCB515QwRSDsDFTK0Rao # a2uCQSsPmCUyLHOBWrkoCXOPrXJGjuuKpIx1VitZy6/cV5laGGsvuY6jrutyOuGm # hdUeLkwpVubgpoLGEJ+c+MtrgIDSpgZuFIBimNQ98bACqziLHyEaHUTSJjjBbqDX # 0Y1aciM6v09asFsWq72gRVyFZw2De12wKFxi8MnX+4pNOmgkCwXILcwv80Od446m # vi1BOajojTGCA9QwggPQAgEBMHgwYTELMAkGA1UEBhMCVVMxHjAcBgNVBAoTFU1p # Y3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9zb2Z0IFB1YmxpYyBS # U0EgVGltZXN0YW1waW5nIENBIDIwMjACEzMAAABTUsIDi+Wa+E4AAAAAAFMwDQYJ # YIZIAWUDBAIBBQCgggEtMBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAvBgkq # hkiG9w0BCQQxIgQgG4FWSxR4qpDDsyI+9NM05acX9FfcTzn9BEsyeZwYTGgwgd0G # CyqGSIb3DQEJEAIvMYHNMIHKMIHHMIGgBCBAfx8EYoyrlP74wFOwXRwaf7R0X60T # D5DXo5XRn9odIzB8MGWkYzBhMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9z # b2Z0IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQgUHVibGljIFJTQSBU # aW1lc3RhbXBpbmcgQ0EgMjAyMAITMwAAAFNSwgOL5Zr4TgAAAAAAUzAiBCD1giQ3 # 3jEZUi+51QxIsXQtWGjgChQMBdzf0oIgbY6dhDANBgkqhkiG9w0BAQsFAASCAgCM # Ml9xpWDuIf/lkbiX0h1/eWTapRTTrdrZCRWMKY2f5LfgL5oNcjrUVa4//9g+OWyr # fteeoh5fm7yp55TLYA2qf3JF7nsZlvacAldH3taqJb7O7Z40A481qVZ31NCsKtlB # zQGpt4GX9or7c8QRsG32FnVmQKHYAGVQbNL4d4Y0PhAlS3EJFntV4aR6CPy9v+71 # mZ9yZieE3Z3qUaaG5BcDmJwzH4SMMlvhELej40tHWHk78W+a8N8kV8oGDke+Id8A # kTEbwNJR5nMvwQT8VihUo+QGiB+pNXb58aoDyzA0TQH3/O7c4zl48mrcJc7JzeSZ # I30vgRCagPN5VB20oFYAPqpvfFu/hpl2UHfcyLd1VcqQt4tAc5e6TJ5sJaj0NIqH # Np0dSj4VHp9msaEgS2A1x+7QO63joxOF9cMyRUvpvJveg+7+n8PYLYPrTEusxwwe # QGxyWGXrLjlKQgH6hSGf4zXoiVOyQKRJCICeJjtfzpGCr473GuuqMdauM+Wmbm3g # UDYBjNV/98r9AJtOAauEeANU1hwjJx1dxYKRmDe6v/VZ6wkEiBsiPs6asufrDFhO # ELA4alGmsTlTnAYFJzxximnYJYxcvtPgwsA4kdsrBFk/XdsOJoKDeyAlHhdIHeI/ # mXFck+qOtAB495qHawBpBxMoIFG5NSOCLma0ZNNHOg== # SIG # End signature block |