posh-git-theme-bluelotus.psm1

# Windows PowerShell does not support the `e special character
# sequence for Escape, so we use a variable $e for this.
$e = [char]27

$reset          = "$e[0m"
$bold           = "$e[1m"

# Tango colors.
$bright_white   = "$e[38;2;238;238;236m"
$green          = "$e[38;2;078;154;006m"
$bright_magenta = "$e[38;2;173;127;168m"
$bright_black   = "$e[38;2;085;087;083m"

# Other colors.
$red            = "$e[38;2;220;020;060m"
$light_blue     = "$e[38;2;140;206;250m"
$linux_color    = "$e[38;2;175;095;000m"
$windows_color  = "$e[38;2;032;178;170m"
$mac_blue       = "$e[38;2;098;137;213m"
$mac_grey       = "$e[38;2;196;205;239m"

$path_color         = 0xC4A000
$suffix_color       = 0xDC143C
$branch_color       = 0x75507B
$bracket_color      = 0x06989A

$branch_sep_color   = "$e[0;97m"

function global:prompt_error_indicator() {
    if ($gitpromptvalues.dollarquestion) {
        "${green}{0}${reset}" -f 'v'
    }
    else {
        "${red}{0}${reset}"   -f 'x'
    }
}

$env_indicator = if ($islinux -or $iswindows) {
    "${bright_magenta}{0}{1}{2}{3}${reset}" `
    -f @('PWSH';
        ("${bright_black}{0}${reset}"            -f '{'),
        $(if ($islinux) {
            "${bold}${linux_color}{0}${reset}"   -f 'L'
        }
        else { # windows
            "${bold}${windows_color}{0}${reset}" -f 'W'
        }),
        ("${bright_black}{0}${reset}"            -f '}')
    )
}
elseif ($ismacos) {
    "${mac_grey}{0}{1}{2}{3}${reset}" `
        -f 'PWSH',
            ("${bright_black}{0}${reset}"    -f '{'),
            ("${bold}${mac_blue}{0}${reset}" -f 'M'),
            ("${bright_black}{0}${reset}"    -f '}')
}

if ($iswindows) {
    $username = $env:USERNAME
    $hostname = $env:COMPUTERNAME.tolower()
}
else {
    $username = whoami
    $hostname = (hostname) -replace '\..*',''
}

# Save original values to exported var in case the user wants to restore any of
# them.

$gitprompt_theme_bluelotus = $gitpromptsettings | %{ [ordered]@{
    OriginalDefaultPromptPrefixText              = $_.defaultpromptprefix.text
    OriginalDefaultPromptBeforeSuffixText        = $_.defaultpromptbeforesuffix.text
    OriginalWindowTitle                          = $_.windowtitle
    OriginalDefaultPromptAbbreviateHomeDirectory = $_.defaultpromptabbreviatehomedirectory
    OriginalDefaultPromptWriteStatusFirst        = $_.defaultpromptwritestatusfirst
    OriginalDefaultPromptPathForegroundColor     = $_.defaultpromptpath.foregroundcolor
    OriginalDefaultPromptSuffixForegroundColor   = $_.defaultpromptsuffix.foregroundcolor
    OriginalBeforeStatusForegroundColor          = $_.beforestatus.foregroundcolor
    OriginalAfterStatusForegroundColor           = $_.afterstatus.foregroundcolor
    OriginalBranchColorForegroundColor           = $_.branchcolor.foregroundcolor
    OriginalBranchIdenticalStatusSymbol          = $_.branchidenticalstatussymbol
    OriginalBranchGoneStatusSymbol               = $_.branchgonestatussymbol
    OriginalBranchAheadStatusSymbol              = $_.branchaheadstatussymbol
    OriginalBranchBehindStatusSymbol             = $_.branchbehindstatussymbol
    OriginalBranchBehindAndAheadStatusSymbol     = $_.branchbehindandaheadstatussymbol
}}

# Set the theme.

$gitpromptsettings.defaultpromptprefix.text = '{0} {1} ' `
    -f '$(prompt_error_indicator)',$env_indicator

$gitpromptsettings.defaultpromptbeforesuffix.text =
    ("`n${reset}${light_blue}{0}${reset}" `
    + "${bright_white}{1}${reset}" `
    + "${light_blue}{2}${reset} ") `
        -f $username,'@',$hostname

$gitpromptsettings.defaultpromptabbreviatehomedirectory = $true
$gitpromptsettings.defaultpromptwritestatusfirst        = $false

$gitpromptsettings.defaultpromptpath.foregroundcolor    = $path_color
$gitpromptsettings.defaultpromptsuffix.foregroundcolor  = $suffix_color

$gitpromptsettings.beforestatus.foregroundcolor         = $bracket_color
$gitpromptsettings.afterstatus.foregroundcolor          = $bracket_color

$gitpromptsettings.branchcolor.foregroundcolor                      = $branch_color
$gitpromptsettings.branchidenticalstatussymbol.foregroundcolor      = $branch_color
$gitpromptsettings.branchgonestatussymbol.foregroundcolor           = $branch_color
$gitpromptsettings.branchaheadstatussymbol.foregroundcolor          = $branch_color
$gitpromptsettings.branchbehindstatussymbol.foregroundcolor         = $branch_color
$gitpromptsettings.branchbehindandaheadstatussymbol.foregroundcolor = $branch_color

$gitpromptsettings.branchidenticalstatussymbol.text                 = "${branch_sep_color}|${green}v"
$gitpromptsettings.branchgonestatussymbol.text                      = "${branch_sep_color}|${red}×"
$gitpromptsettings.branchaheadstatussymbol.text                     = "${branch_sep_color}|${red}↑"
$gitpromptsettings.branchbehindstatussymbol.text                    = "${branch_sep_color}|${red}↓"
$gitpromptsettings.branchbehindandaheadstatussymbol.text            = "${branch_sep_color}|${red}↕"

$gitpromptsettings.windowtitle = $null

$host.ui.rawui.windowtitle = $hostname

# Exports.

export-modulemember -var 'gitprompt_theme_bluelotus'

# SIG # Begin signature block
# MIIlSwYJKoZIhvcNAQcCoIIlPDCCJTgCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDq4W7Nlq9E1J6l
# 33IpQ6GfMBlyoA9R1ZzfZNUQGjDzy6CCHw0wggVEMIIELKADAgECAhEAjO3YLLeA
# PQtWXHRjFPdXMzANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJHQjEbMBkGA1UE
# CBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQK
# Ew9TZWN0aWdvIExpbWl0ZWQxJDAiBgNVBAMTG1NlY3RpZ28gUlNBIENvZGUgU2ln
# bmluZyBDQTAeFw0xOTA5MTgwMDAwMDBaFw0yMjA5MTcyMzU5NTlaMIGVMQswCQYD
# VQQGEwJVUzEOMAwGA1UEEQwFOTQxMjcxEzARBgNVBAgMCkNhbGlmb3JuaWExFjAU
# BgNVBAcMDVNhbiBGcmFuY2lzY28xFzAVBgNVBAkMDjk0NSBEYXJpZW4gV2F5MRcw
# FQYDVQQKDA5SYWZhZWwgS2l0b3ZlcjEXMBUGA1UEAwwOUmFmYWVsIEtpdG92ZXIw
# ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDDOxGmw1dKSX7wcHPblFoq
# lEvxeg7Lm3RyLbtCTr4qXn92aaAZ8+7yIl7xP7dVsmLsyYHW6vLn/dYCain/MTeg
# QQhaRh1YrdDGtqGFMG4S0k/Ai2BDzoQqtsNGFDjs/pmqekggYozYilvpdnD53ZO9
# J2L011cHCQs/Qg0HrHQBL03W6QpzJ60EssJ+9yO1bhGh5TrL+JLYBb7Ppawj3Huc
# 5LG2uqCQ3lfNLioSXG+5XwdpQsmKWLe+B1tl0NJIxFl576WLNNQG4X78oQQeI8QU
# fCthZJJZo8z6uVkTmeQKlWhMp0nPm6+3WF4bpO26npsqhRqbaIWiZOQQBnmiY36t
# AgMBAAGjggGlMIIBoTAfBgNVHSMEGDAWgBQO4TqoUzox1Yq+wbutZxoDha00DjAd
# BgNVHQ4EFgQUbpgm+XD+3Nzrkzx+A+i+M8mpXz0wDgYDVR0PAQH/BAQDAgeAMAwG
# A1UdEwEB/wQCMAAwEwYDVR0lBAwwCgYIKwYBBQUHAwMwEQYJYIZIAYb4QgEBBAQD
# AgQQMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQMCMCUwIwYIKwYBBQUHAgEWF2h0
# dHBzOi8vc2VjdGlnby5jb20vQ1BTMEMGA1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly9j
# cmwuc2VjdGlnby5jb20vU2VjdGlnb1JTQUNvZGVTaWduaW5nQ0EuY3JsMHMGCCsG
# AQUFBwEBBGcwZTA+BggrBgEFBQcwAoYyaHR0cDovL2NydC5zZWN0aWdvLmNvbS9T
# ZWN0aWdvUlNBQ29kZVNpZ25pbmdDQS5jcnQwIwYIKwYBBQUHMAGGF2h0dHA6Ly9v
# Y3NwLnNlY3RpZ28uY29tMB0GA1UdEQQWMBSBEnJraXRvdmVyQGdtYWlsLmNvbTAN
# BgkqhkiG9w0BAQsFAAOCAQEAVpBzwgYFry38M5+h4T6+AD+tK7zlRDc6NTm8Lxrw
# 0l2Qv02mvHmhsTC4Y0vSCDtAuKVImOnsgSVoG9y4jyBcP4XMEoKiLJmi1n9/+X5j
# I4yL9IT2S4DzefMGfgEaXnZoCrnp/R9zCAJr4z0UunJp7zNStd8nP4gkvJgrZs1/
# RO+UHNYlBzsu6nByHSTZDDjesfp8nKLo8YuIF/kY78ciZcfofKXFus6A9ycv5S37
# aZvjwQuy2V7m47JhVOhumdpfYtInvFpuGv+RIULv9a06U7BLMiXk7j/PBvmyp8T5
# YOJ0PRq095IjD5fOu+1HV/fnCntd7R3661A+s5Z7Nk77IjCCBd4wggPGoAMCAQIC
# EAH9bTD8o8pRqBu8ZA41Ay0wDQYJKoZIhvcNAQEMBQAwgYgxCzAJBgNVBAYTAlVT
# MRMwEQYDVQQIEwpOZXcgSmVyc2V5MRQwEgYDVQQHEwtKZXJzZXkgQ2l0eTEeMBwG
# A1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMS4wLAYDVQQDEyVVU0VSVHJ1c3Qg
# UlNBIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTEwMDIwMTAwMDAwMFoXDTM4
# MDExODIzNTk1OVowgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpOZXcgSmVyc2V5
# MRQwEgYDVQQHEwtKZXJzZXkgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBO
# ZXR3b3JrMS4wLAYDVQQDEyVVU0VSVHJ1c3QgUlNBIENlcnRpZmljYXRpb24gQXV0
# aG9yaXR5MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAgBJlFzYOw9sI
# s9CsVw127c0n00ytUINh4qogTQktZAnczomfzD2p7PbPwdzx07HWezcoEStH2jnG
# vDoZtF+mvX2do2NCtnbyqTsrkfjib9DsFiCQCT7i6HTJGLSR1GJk23+jBvGIGGqQ
# Ijy8/hPwhxR79uQfjtTkUcYRZ0YIUcuGFFQ/vDP+fmyc/xadGL1RjjWmp2bIcmfb
# IWax1Jt4A8BQOujM8Ny8nkz+rwWWNR9XWrf/zvk9tyy29lTdyOcSOk2uTIq3XJq0
# tyA9yn8iNK5+O2hmAUTnAU5GU5szYPeUvlM3kHND8zLDU+/bqv50TmnHa4xgk97E
# xwzf4TKuzJM7UXiVZ4vuPVb+DNBpDxsP8yUmazNt925H+nND5X4OpWaxKXwyhGNV
# icQNwZNUMBkTrNN9N6frXTpsNVzbQdcS2qlJC9/YgIoJk2KOtWbPJYjNhLixP6Q5
# D9kCnusSTJV882sFqV4Wg8y4Z+LoE53MW4LTTLPtW//e5XOsIzstAL81VXQJSdhJ
# WBp/kjbmUZIO8yZ9HE0XvMnsQybQv0FfQKlERPSZ51eHnlAfV1SoPv10Yy+xUGUJ
# 5lhCLkMaTLTwJUdZ+gQek9QmRkpQgbLevni3/GcV4clXhB4PY9bpYrrWX1Uu6lzG
# KAgEJTm4Diup8kyXHAc/DVL17e8vgg8CAwEAAaNCMEAwHQYDVR0OBBYEFFN5v1qq
# K0rPVIDh2JvAnfKyA2bLMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/
# MA0GCSqGSIb3DQEBDAUAA4ICAQBc1HwNz/cBfUGZZQxzxVKfy/jPmQZ/G9pDFZ+e
# AlVXlhTxUjwnh5Qo7R86ATeidvxTUMCEm8ZrTrqMIU+ijlVikfNpFdi8iOPEqgv9
# 76jpS1UqBiBtVXgpGe5fMFxLJBFV/ySabl4qK+4LTZ9/9wE4lBSVQwcJ+2Cp7hyr
# Eoygml6nmGpZbYs/CPvI0UWvGBVkkBIPcyguxeIkTvxY7PD0Rf4is+svjtLZRWEF
# wZdvqHZyj4uMNq+/DQXOcY3mpm8fbKZxYsXY0INyDPFnEYkMnBNMcjTfvNVx36px
# 3eG5bIw8El1l2r1XErZDa//l3k1mEVHPma7sF7bocZGM3kn+3TVxohUnlBzPYeMm
# u2+jZyUhXebdHQsuaBs7gq/sg2eF1JhRdLG5mYCJ/394GVx5SmAukkCuTDcqLMnH
# YsgOXfc2W8rgJSUBtN0aB5x3AD/Q3NXsPdT6uz/MhdZvf6kt37kC9/WXmrU12sNn
# sIdKqSieI47/XCdr4bBP8wfuAC7UWYfLUkGV6vRH1+5kQVV8jVkCld1incK57loo
# dISlm7eQxwwH3/WJNnQy1ijBsLAL4JxMwxzW/ONptUdGgS+igqvTY0RwxI3/LTO6
# rY97tXCIrj4Zz0Ao2PzIkLtdmSL1UuZYxR+IMUPuiB3Xxo48Q2odpxjefT0W8WL5
# ypCo/TCCBfUwggPdoAMCAQICEB2iSDBvmyYY0ILgln0z02owDQYJKoZIhvcNAQEM
# BQAwgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpOZXcgSmVyc2V5MRQwEgYDVQQH
# EwtKZXJzZXkgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMS4w
# LAYDVQQDEyVVU0VSVHJ1c3QgUlNBIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4X
# DTE4MTEwMjAwMDAwMFoXDTMwMTIzMTIzNTk1OVowfDELMAkGA1UEBhMCR0IxGzAZ
# BgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYG
# A1UEChMPU2VjdGlnbyBMaW1pdGVkMSQwIgYDVQQDExtTZWN0aWdvIFJTQSBDb2Rl
# IFNpZ25pbmcgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCGIo0y
# hXoYn0nwli9jCB4t3HyfFM/jJrYlZilAhlRGdDFixRDtsocnppnLlTDAVvWkdcap
# DlBipVGREGrgS2Ku/fD4GKyn/+4uMyD6DBmJqGx7rQDDYaHcaWVtH24nlteXUYam
# 9CflfGqLlR5bYNV+1xaSnAAvaPeX7Wpyvjg7Y96Pv25MQV0SIAhZ6DnNj9LWzwa0
# VwW2TqE+V2sfmLzEYtYbC43HZhtKn52BxHJAteJf7wtF/6POF6YtVbC3sLxUap28
# jVZTxvC6eVBJLPcDuf4vZTXyIuosB69G2flGHNyMfHEo8/6nxhTdVZFuihEN3wYk
# lX0Pp6F8OtqGNWHTAgMBAAGjggFkMIIBYDAfBgNVHSMEGDAWgBRTeb9aqitKz1SA
# 4dibwJ3ysgNmyzAdBgNVHQ4EFgQUDuE6qFM6MdWKvsG7rWcaA4WtNA4wDgYDVR0P
# AQH/BAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0lBBYwFAYIKwYBBQUH
# AwMGCCsGAQUFBwMIMBEGA1UdIAQKMAgwBgYEVR0gADBQBgNVHR8ESTBHMEWgQ6BB
# hj9odHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVNFUlRydXN0UlNBQ2VydGlmaWNh
# dGlvbkF1dGhvcml0eS5jcmwwdgYIKwYBBQUHAQEEajBoMD8GCCsGAQUFBzAChjNo
# dHRwOi8vY3J0LnVzZXJ0cnVzdC5jb20vVVNFUlRydXN0UlNBQWRkVHJ1c3RDQS5j
# cnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLnVzZXJ0cnVzdC5jb20wDQYJKoZI
# hvcNAQEMBQADggIBAE1jUO1HNEphpNveaiqMm/EAAB4dYns61zLC9rPgY7P7YQCI
# mhttEAcET7646ol4IusPRuzzRl5ARokS9At3WpwqQTr81vTr5/cVlTPDoYMot94v
# 5JT3hTODLUpASL+awk9KsY8k9LOBN9O3ZLCmI2pZaFJCX/8E6+F0ZXkI9amT3mtx
# QJmWunjxucjiwwgWsatjWsgVgG10Xkp1fqW4w2y1z99KeYdcx0BNYzX2MNPPtQoO
# CwR/oEuuu6Ol0IQAkz5TXTSlADVpbL6fICUQDRn7UJBhvjmPeo5N9p8OHv4HURJm
# gyYZSJXOSsnBf/M6BZv5b9+If8AjntIeQ3pFMcGcTanwWbJZGehqjSkEAnd8S0vN
# cL46slVaeD68u28DECV3FTSK+TbMQ5Lkuk/xYpMoJVcp+1EZx6ElQGqEV8aynbG8
# HArafGd+fS7pKEwYfsR7MUFxmksp7As9V1DSyt39ngVR5UR43QHesXWYDVQk/fBO
# 4+L4g71yuss9Ou7wXheSaG3IYfmm8SoKC6W59J7umDIFhZ7r+YMp08Ysfb06dy6L
# N0KgaoLtO0qqlBCk4Q34F8W2WnkzGJLjtXX4oemOCiUe5B7xn1qHI/+fpFGe+zmA
# Ec3btcSnqIBv5VPU4OOiwtJbGvoyJi1qV3AcPKRYLqPzW0sH3DJZ84enGm1YMIIG
# 7DCCBNSgAwIBAgIQMA9vrN1mmHR8qUY2p3gtuTANBgkqhkiG9w0BAQwFADCBiDEL
# MAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNl
# eSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMT
# JVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTkwNTAy
# MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjB9MQswCQYDVQQGEwJHQjEbMBkGA1UECBMS
# R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9T
# ZWN0aWdvIExpbWl0ZWQxJTAjBgNVBAMTHFNlY3RpZ28gUlNBIFRpbWUgU3RhbXBp
# bmcgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDIGwGv2Sx+iJl9
# AZg/IJC9nIAhVJO5z6A+U++zWsB21hoEpc5Hg7XrxMxJNMvzRWW5+adkFiYJ+9Uy
# UnkuyWPCE5u2hj8BBZJmbyGr1XEQeYf0RirNxFrJ29ddSU1yVg/cyeNTmDoqHvzO
# WEnTv/M5u7mkI0Ks0BXDf56iXNc48RaycNOjxN+zxXKsLgp3/A2UUrf8H5VzJD0B
# KLwPDU+zkQGObp0ndVXRFzs0IXuXAZSvf4DP0REKV4TJf1bgvUacgr6Unb+0ILBg
# frhN9Q0/29DqhYyKVnHRLZRMyIw80xSinL0m/9NTIMdgaZtYClT0Bef9Maz5yIUX
# x7gpGaQpL0bj3duRX58/Nj4OMGcrRrc1r5a+2kxgzKi7nw0U1BjEMJh0giHPYla1
# IXMSHv2qyghYh3ekFesZVf/QOVQtJu5FGjpvzdeE8NfwKMVPZIMC1Pvi3vG8Aij0
# bdonigbSlofe6GsO8Ft96XZpkyAcSpcsdxkrk5WYnJee647BeFbGRCXfBhKaBi2f
# A179g6JTZ8qx+o2hZMmIklnLqEbAyfKm/31X2xJ2+opBJNQb/HKlFKLUrUMcpEmL
# QTkUAx4p+hulIq6lw02C0I3aa7fb9xhAV3PwcaP7Sn1FNsH3jYL6uckNU4B9+rY5
# WDLvbxhQiddPnTO9GrWdod6VQXqngwIDAQABo4IBWjCCAVYwHwYDVR0jBBgwFoAU
# U3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFBqh+GEZIA/DQXdFKI7RNV8G
# EgRVMA4GA1UdDwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMBMGA1UdJQQM
# MAoGCCsGAQUFBwMIMBEGA1UdIAQKMAgwBgYEVR0gADBQBgNVHR8ESTBHMEWgQ6BB
# hj9odHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVNFUlRydXN0UlNBQ2VydGlmaWNh
# dGlvbkF1dGhvcml0eS5jcmwwdgYIKwYBBQUHAQEEajBoMD8GCCsGAQUFBzAChjNo
# dHRwOi8vY3J0LnVzZXJ0cnVzdC5jb20vVVNFUlRydXN0UlNBQWRkVHJ1c3RDQS5j
# cnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLnVzZXJ0cnVzdC5jb20wDQYJKoZI
# hvcNAQEMBQADggIBAG1UgaUzXRbhtVOBkXXfA3oyCy0lhBGysNsqfSoF9bw7J/Ra
# oLlJWZApbGHLtVDb4n35nwDvQMOt0+LkVvlYQc/xQuUQff+wdB+PxlwJ+TNe6qAc
# Jlhc87QRD9XVw+K81Vh4v0h24URnbY+wQxAPjeT5OGK/EwHFhaNMxcyyUzCVpNb0
# llYIuM1cfwGWvnJSajtCN3wWeDmTk5SbsdyybUFtZ83Jb5A9f0VywRsj1sJVhGbk
# s8VmBvbz1kteraMrQoohkv6ob1olcGKBc2NeoLvY3NdK0z2vgwY4Eh0khy3k/ALW
# PncEvAQ2ted3y5wujSMYuaPCRx3wXdahc1cFaJqnyTdlHb7qvNhCg0MFpYumCf/R
# oZSmTqo9CfUFbLfSZFrYKiLCS53xOV5M3kg9mzSWmglfjv33sVKRzj+J9hyhtal1
# H3G/W0NdZT1QgW6r8NDT/LKzH7aZlib0PHmLXGTMze4nmuWgwAxyh8FuTVrTHurw
# ROYybxzrF06Uw3hlIDsPQaof6aFBnf6xuKBlKjTg3qj5PObBMLvAoGMs/FwWAKjQ
# xH/qEZ0eBsambTJdtDgJK0kHqv3sMNrxpy/Pt/360KOE2See+wFmd7lWEOEgbsau
# sfm2usg1XTN2jvF8IAwqd661ogKGuinutFoAsYyr4/kKyVRd1LlqdJ69SK6YMIIG
# 9jCCBN6gAwIBAgIRAJA5f5rSSjoT8r2RXwg4qUMwDQYJKoZIhvcNAQEMBQAwfTEL
# MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE
# BxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMSUwIwYDVQQDExxT
# ZWN0aWdvIFJTQSBUaW1lIFN0YW1waW5nIENBMB4XDTIyMDUxMTAwMDAwMFoXDTMz
# MDgxMDIzNTk1OVowajELMAkGA1UEBhMCR0IxEzARBgNVBAgTCk1hbmNoZXN0ZXIx
# GDAWBgNVBAoTD1NlY3RpZ28gTGltaXRlZDEsMCoGA1UEAwwjU2VjdGlnbyBSU0Eg
# VGltZSBTdGFtcGluZyBTaWduZXIgIzMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
# ggIKAoICAQCQsnE/eeHUuYoXzMOXwpCUcu1aOm8BQ39zWiifJHygNUAG+pSvCqGD
# thPkSxUGXmqKIDRxe7slrT9bCqQfL2x9LmFR0IxZNz6mXfEeXYC22B9g480Saogf
# xv4Yy5NDVnrHzgPWAGQoViKxSxnS8JbJRB85XZywlu1aSY1+cuRDa3/JoD9sSq3V
# AE+9CriDxb2YLAd2AXBF3sPwQmnq/ybMA0QfFijhanS2nEX6tjrOlNEfvYxlqv38
# wzzoDZw4ZtX8fR6bWYyRWkJXVVAWDUt0cu6gKjH8JgI0+WQbWf3jOtTouEEpdAE/
# DeATdysRPPs9zdDn4ZdbVfcqA23VzWLazpwe/OpwfeZ9S2jOWilh06BcJbOlJ2ij
# WP31LWvKX2THaygM2qx4Qd6S7w/F7KvfLW8aVFFsM7ONWWDn3+gXIqN5QWLP/Hvz
# ktqu4DxPD1rMbt8fvCKvtzgQmjSnC//+HV6k8+4WOCs/rHaUQZ1kHfqA/QDh/vg6
# 1MNeu2lNcpnl8TItUfphrU3qJo5t/KlImD7yRg1psbdu9AXbQQXGGMBQ5Pit/qxj
# YUeRvEa1RlNsxfThhieThDlsdeAdDHpZiy7L9GQsQkf0VFiFN+XHaafSJYuWv8at
# 4L2xN/cf30J7qusc6es9Wt340pDVSZo6HYMaV38cAcLOHH3M+5YVxQIDAQABo4IB
# gjCCAX4wHwYDVR0jBBgwFoAUGqH4YRkgD8NBd0UojtE1XwYSBFUwHQYDVR0OBBYE
# FCUuaDxrmiskFKkfot8mOs8UpvHgMA4GA1UdDwEB/wQEAwIGwDAMBgNVHRMBAf8E
# AjAAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMEoGA1UdIARDMEEwNQYMKwYBBAGy
# MQECAQMIMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMAgG
# BmeBDAEEAjBEBgNVHR8EPTA7MDmgN6A1hjNodHRwOi8vY3JsLnNlY3RpZ28uY29t
# L1NlY3RpZ29SU0FUaW1lU3RhbXBpbmdDQS5jcmwwdAYIKwYBBQUHAQEEaDBmMD8G
# CCsGAQUFBzAChjNodHRwOi8vY3J0LnNlY3RpZ28uY29tL1NlY3RpZ29SU0FUaW1l
# U3RhbXBpbmdDQS5jcnQwIwYIKwYBBQUHMAGGF2h0dHA6Ly9vY3NwLnNlY3RpZ28u
# Y29tMA0GCSqGSIb3DQEBDAUAA4ICAQBz2u1ocsvCuUChMbu0A6MtFHsk57RbFX2o
# 6f2t0ZINfD02oGnZ85ow2qxp1nRXJD9+DzzZ9cN5JWwm6I1ok87xd4k5f6gEBdo0
# wxTqnwhUq//EfpZsK9OU67Rs4EVNLLL3OztatcH714l1bZhycvb3Byjz07LQ6xm+
# FSx4781FoADk+AR2u1fFkL53VJB0ngtPTcSqE4+XrwE1K8ubEXjp8vmJBDxO44IS
# Yuu0RAx1QcIPNLiIncgi8RNq2xgvbnitxAW06IQIkwf5fYP+aJg05Hflsc6MlGzb
# A20oBUd+my7wZPvbpAMxEHwa+zwZgNELcLlVX0e+OWTOt9ojVDLjRrIy2NIphskV
# XYCVrwL7tNEunTh8NeAPHO0bR0icImpVgtnyughlA+XxKfNIigkBTKZ58qK2GpmU
# 65co4b59G6F87VaApvQiM5DkhFP8KvrAp5eo6rWNes7k4EuhM6sLdqDVaRa3jma/
# X/ofxKh/p6FIFJENgvy9TZntyeZsNv53Q5m4aS18YS/to7BJ/lu+aSSR/5P8V2mS
# S9kFP22GctOi0MBk0jpCwRoD+9DtmiG4P6+mslFU1UzFyh8SjVfGOe1c/+yfJnat
# ZGZn6Kow4NKtt32xakEnbgOKo3TgigmCbr/j9re8ngspGGiBoZw/bhZZSxQJCZrm
# rr9gFd2G9TGCBZQwggWQAgEBMIGRMHwxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJH
# cmVhdGVyIE1hbmNoZXN0ZXIxEDAOBgNVBAcTB1NhbGZvcmQxGDAWBgNVBAoTD1Nl
# Y3RpZ28gTGltaXRlZDEkMCIGA1UEAxMbU2VjdGlnbyBSU0EgQ29kZSBTaWduaW5n
# IENBAhEAjO3YLLeAPQtWXHRjFPdXMzANBglghkgBZQMEAgEFAKCBhDAYBgorBgEE
# AYI3AgEMMQowCKACgAChAoAAMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwG
# CisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCDjNCM6
# 6w7CbS/HQa7es2XRvHEf38IQWCgV9zVUtkmphjANBgkqhkiG9w0BAQEFAASCAQAH
# g1Ynkb5caCcei1IO9zEqWBQ5iXHPXSRbJkkuMDn75Nn+LF9VPoq2Mk5rbroEiODx
# Wh09/r8T5+OgwP9Z/OUo1FSep9hL0bPPsWGjk4eKcLFQTGkaaHq068G+meKeuJ1c
# x7A7Np18N+r6SPmSvytlTlR4v9ePgOfGuY1u3gUXutjNgiX9C97t/fRqV4zhNlwC
# CDFPojpiQc6/J34DazIiuSSlkc4mb38SGdgY/4kKMAfJOZxmRYMg0Y8sUq2fI9U7
# FEhXG50y94kdTJRcLkcokcHUyt2FXh9J5Fdu9NfNrlccz0wB6IW45gPZoYlbQXkQ
# A7VKj2X9MvzWbpnoT8RToYIDTDCCA0gGCSqGSIb3DQEJBjGCAzkwggM1AgEBMIGS
# MH0xCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO
# BgNVBAcTB1NhbGZvcmQxGDAWBgNVBAoTD1NlY3RpZ28gTGltaXRlZDElMCMGA1UE
# AxMcU2VjdGlnbyBSU0EgVGltZSBTdGFtcGluZyBDQQIRAJA5f5rSSjoT8r2RXwg4
# qUMwDQYJYIZIAWUDBAICBQCgeTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG
# CSqGSIb3DQEJBTEPFw0yMjA4MjYwMjI0NTZaMD8GCSqGSIb3DQEJBDEyBDDBwNkU
# jA03DaHyoInQZroUPaC7DO2OmfUb8zXUu10Srs8jHh8JGPgForS9DaKEMuwwDQYJ
# KoZIhvcNAQEBBQAEggIAW6vLWJreMCUrT8g9nwfboB/P4P+UpOS2n8X1S7XX8EnD
# 2OLlzfUF4P9+lL+2T/Jm9hhDGhfZKpDB6QNKFfIpq0/5W6D1qbp8t2CbCmeY1Qoj
# fGsvSvNhJsi3/n56i/mHiVAsA+yhGbcavdoPDgWSaPwI51UC/B8cUTzbIH320Zdc
# UJNv/UviEJ8ITYHqISw97lQl1vfklEQYEBLqg1ApKS5LZQ87Xy3vwRILKOSWi0dt
# CbYLBmAFh//R9eZ6ZUZ4Pxr41Y1keMYfg8/sBakht8AuQrXa+9nS3iAmudgKuUna
# qelZGKd8GFhY56FQR/+jjvBAuMXXftBmCeOqaLF0F8zEZTIMZKCf/uD1W03p/CrS
# ckSFwK9BS07FACrBx8M7vNppInX2JPfmZttQoC+/PXF1XCXx89uK2vfiMLVdQ2U+
# EB/1hxX1WR82wrgOOaJTUqwUSEeebU1jDNEU9OspajHBGkCPoByEURmESGHiLfCz
# nNfC0VgcQCwOVh2qHS1GYxFHaHrBrDQIzYh8t5z/U+7jhof+Mtj2pqvkegYUYNZc
# 6ng9FU00eaPGZZxaQKBf4RCZu5thmuQifq9/+xG7eVuhyfvU5SE86C5eOWzrlNjx
# WGUOYFssbTCWPJr+ubX3XTWzxVAq1k1+zbttzCykX7jtUkz7cAllZC9LMgf57G8=
# SIG # End signature block