From 52df97f7b29917fe08ed1ec3b9c0bd972a399bc0 Mon Sep 17 00:00:00 2001 From: Sophia Date: Fri, 2 Dec 2022 12:37:23 -0800 Subject: [PATCH] Updated styles, added some missing includes --- .gitignore | 5 + css/cal.css | 14 - css/infos.css | 116 - css/share.css | 64 - css/style.css | 337 - frontend/dist/styles.css | 6676 +++++++++-------- images/admin-dashboard.gif | Bin 0 -> 36541 bytes images/default-monochrome-white.svg | 14 + images/logo-black.png | Bin 0 -> 44462 bytes images/stats-anim.gif | Bin 0 -> 85762 bytes {css => includes/Config}/index.php | 4 +- includes/Database/index.php | 3 + includes/Exceptions/index.php | 3 + includes/geo/flags/index.php | 3 + includes/geo/index.php | 3 + .../composer/ca-bundle/phpstan.neon.dist | 5 + includes/vendor/index.php | 3 + includes/vendor/ozh/phpass/README.md | 55 + .../phpass/src/Ozh/Phpass/PasswordHash.php | 333 + .../requests/certificates/etag-cert.txt | 1 + .../rmccue/requests/certificates/etag-sha.txt | 1 + .../rmccue/requests/library/Requests/Auth.php | 33 + .../requests/library/Requests/Auth/Basic.php | 88 + .../requests/library/Requests/Cookie.php | 500 ++ .../requests/library/Requests/Cookie/Jar.php | 175 + .../requests/library/Requests/Exception.php | 62 + .../library/Requests/Exception/HTTP.php | 71 + .../library/Requests/Exception/HTTP/304.php | 27 + .../library/Requests/Exception/HTTP/305.php | 27 + .../library/Requests/Exception/HTTP/306.php | 27 + .../library/Requests/Exception/HTTP/400.php | 27 + .../library/Requests/Exception/HTTP/401.php | 27 + .../library/Requests/Exception/HTTP/402.php | 27 + .../library/Requests/Exception/HTTP/403.php | 27 + .../library/Requests/Exception/HTTP/404.php | 27 + .../library/Requests/Exception/HTTP/405.php | 27 + .../library/Requests/Exception/HTTP/406.php | 27 + .../library/Requests/Exception/HTTP/407.php | 27 + .../library/Requests/Exception/HTTP/408.php | 27 + .../library/Requests/Exception/HTTP/409.php | 27 + .../library/Requests/Exception/HTTP/410.php | 27 + .../library/Requests/Exception/HTTP/411.php | 27 + .../library/Requests/Exception/HTTP/412.php | 27 + .../library/Requests/Exception/HTTP/413.php | 27 + .../library/Requests/Exception/HTTP/414.php | 27 + .../library/Requests/Exception/HTTP/415.php | 27 + .../library/Requests/Exception/HTTP/416.php | 27 + .../library/Requests/Exception/HTTP/417.php | 27 + .../library/Requests/Exception/HTTP/418.php | 29 + .../library/Requests/Exception/HTTP/428.php | 29 + .../library/Requests/Exception/HTTP/429.php | 29 + .../library/Requests/Exception/HTTP/431.php | 29 + .../library/Requests/Exception/HTTP/500.php | 27 + .../library/Requests/Exception/HTTP/501.php | 27 + .../library/Requests/Exception/HTTP/502.php | 27 + .../library/Requests/Exception/HTTP/503.php | 27 + .../library/Requests/Exception/HTTP/504.php | 27 + .../library/Requests/Exception/HTTP/505.php | 27 + .../library/Requests/Exception/HTTP/511.php | 29 + .../Requests/Exception/HTTP/Unknown.php | 44 + .../library/Requests/Exception/Transport.php | 5 + .../Requests/Exception/Transport/cURL.php | 56 + .../requests/library/Requests/Hooker.php | 33 + .../requests/library/Requests/Hooks.php | 68 + .../requests/library/Requests/IDNAEncoder.php | 388 + .../rmccue/requests/library/Requests/IPv6.php | 190 + .../rmccue/requests/library/Requests/IRI.php | 1084 +++ .../requests/library/Requests/Proxy.php | 35 + .../requests/library/Requests/Proxy/HTTP.php | 151 + .../requests/library/Requests/Response.php | 121 + .../library/Requests/Response/Headers.php | 98 + .../rmccue/requests/library/Requests/SSL.php | 152 + .../requests/library/Requests/Session.php | 266 + .../requests/library/Requests/Transport.php | 41 + .../library/Requests/Transport/cURL.php | 542 ++ .../library/Requests/Transport/cacert.pem | 3554 +++++++++ .../library/Requests/Transport/fsockopen.php | 444 ++ .../Utility/CaseInsensitiveDictionary.php | 103 + .../Requests/Utility/FilteredIterator.php | 45 + 79 files changed, 13355 insertions(+), 3508 deletions(-) create mode 100644 .gitignore delete mode 100644 css/cal.css delete mode 100644 css/infos.css delete mode 100644 css/share.css delete mode 100644 css/style.css create mode 100644 images/admin-dashboard.gif create mode 100644 images/default-monochrome-white.svg create mode 100644 images/logo-black.png create mode 100644 images/stats-anim.gif rename {css => includes/Config}/index.php (90%) create mode 100644 includes/Database/index.php create mode 100644 includes/Exceptions/index.php create mode 100644 includes/geo/flags/index.php create mode 100644 includes/geo/index.php create mode 100644 includes/vendor/composer/ca-bundle/phpstan.neon.dist create mode 100644 includes/vendor/index.php create mode 100644 includes/vendor/ozh/phpass/README.md create mode 100644 includes/vendor/ozh/phpass/src/Ozh/Phpass/PasswordHash.php create mode 100644 includes/vendor/rmccue/requests/certificates/etag-cert.txt create mode 100644 includes/vendor/rmccue/requests/certificates/etag-sha.txt create mode 100644 includes/vendor/rmccue/requests/library/Requests/Auth.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Auth/Basic.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Cookie.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Cookie/Jar.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/304.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/305.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/306.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/400.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/401.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/402.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/403.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/404.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/405.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/406.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/407.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/408.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/409.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/410.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/411.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/412.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/413.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/414.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/415.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/416.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/417.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/418.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/428.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/429.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/431.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/500.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/501.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/502.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/503.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/504.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/505.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/511.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/Unknown.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/Transport.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Exception/Transport/cURL.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Hooker.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Hooks.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/IDNAEncoder.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/IPv6.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/IRI.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Proxy.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Proxy/HTTP.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Response.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Response/Headers.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/SSL.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Session.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Transport.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Transport/cURL.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Transport/cacert.pem create mode 100644 includes/vendor/rmccue/requests/library/Requests/Transport/fsockopen.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Utility/CaseInsensitiveDictionary.php create mode 100644 includes/vendor/rmccue/requests/library/Requests/Utility/FilteredIterator.php diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..66bf961 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.well-known +sitemap.xml +.user.ini +tmp +css \ No newline at end of file diff --git a/css/cal.css b/css/cal.css deleted file mode 100644 index c77dfc6..0000000 --- a/css/cal.css +++ /dev/null @@ -1,14 +0,0 @@ -/* Calendar */ -.datepicker { border-collapse: collapse; border: 2px solid #999; position: absolute; width: 215px } -.datepicker tr.controls th { height: 22px; font-size: 11px; } -.datepicker select { font-size: 11px; } -.datepicker tr.days th { height: 18px; } -.datepicker tfoot td { height: 18px; text-align: center; text-transform: capitalize; } -.datepicker th, .datepicker tfoot td { background: #eee; font: 10px/18px Verdana, Arial, Helvetica, sans-serif; } -.datepicker th span, .datepicker tfoot td span { font-weight: bold; } -.datepicker tbody td { width: 24px; height: 24px; border: 1px solid #ccc; font: 11px/22px Arial, Helvetica, sans-serif; text-align: center; background: #fff; } -.datepicker tbody td.date { cursor: pointer; } -.datepicker tbody td.date.over { background-color: #99ffff; } -.datepicker tbody td.date.chosen { font-weight: bold; background-color: #ccffcc; } -/* Form defaults */ -#date_and, #date_second {display:none} \ No newline at end of file diff --git a/css/infos.css b/css/infos.css deleted file mode 100644 index a7f1092..0000000 --- a/css/infos.css +++ /dev/null @@ -1,116 +0,0 @@ -h3 span.label { - width:100px; - display:inline-block; -} - -ul.toggle_display { - display:none; - list-style-type:none; - margin-left:0; - margin-right:23px; - padding:12px 5px 3px; - border-bottom:1px solid #C7E7FF; -} -ul.toggle_display li { - padding:0; -} -#tabs ul#headers li, #tabs ul#headers li h2, #stats_lines li{ - display: inline; - margin-right: 10px; -} -#tabs ul#headers { - border-bottom:1px solid #E3F3FF; - padding:12px 5px 3px 5px; - float:left; -} -.wrap_unfloat { - overflow:hidden; -} - -#tabs ul#headers li a { - color:#595441; - border:1px solid #C7E7FF; - -moz-border-radius:10px 10px 0 0; - -webkit-border-radius:10px 10px 0 0; - border-radius:10px 10px 0 0; - padding:10px 5px 5px 15px; - background:#E3F3FF; -} - -#tabs ul#headers li a:hover { - text-decoration:none; - background:#88C0EB; -} - -#tabs ul#headers li a.selected { - border-bottom:2px solid #fff; - background:#fff; -} - -#tabs ul#headers li a.selected:hover { - background:#fff; -} - -#stats_lines li a { - -moz-border-radius:10px 10px 0 0; - -webkit-border-radius:10px 10px 0 0; - border-radius:10px 10px 0 0; - padding:3px 10px; - background:#E3F3FF; - border:1px solid #C7E7FF; -} -#stats_lines li a:hover { - text-decoration:none; - background:#C7E7FF; -} -#stats_lines li a.selected { - background:#fff; - border:1px solid #C7E7FF; - border-bottom:1px solid white; -} -#stats_lines li a.selected:hover { - background:#fff; -} -.tab { - padding:10px; -} -li#sites_various { padding-left:22px; padding-top:4px;} - -li.sites_list img, #longurl img {width:16px; height: 16px; display:inline-block;} - -#referrer_cell { min-width: 300px;} - -#details_clicks li.bestday, #details_clicks li span.best_month, #details_clicks li span.best_year { - font-weight:bold; -} - -ul.no_bullet { - list-style-type: none; - margin-left:0; - padding:0; -} -ul.no_bullet li { - margin-bottom:5px; -} -#historical_clicks { - float:left; - margin:0; -} -#historical_clicks li { - padding:2px 10px; - margin:0; -} -#historical_clicks li:hover { - background:#C7E7FF !important; -} -#historical_clicks span.historical_link { - min-width:130px; - display:inline-block; -} -#historical_clicks span.historical_count { - min-width:100px; - display:inline-block; -} -h2#informations{ - word-break: break-all; -} diff --git a/css/share.css b/css/share.css deleted file mode 100644 index 200f493..0000000 --- a/css/share.css +++ /dev/null @@ -1,64 +0,0 @@ -#shareboxes, #tweet { - overflow:hidden; -} - -#shareboxes{ - margin-top:15px; -} - -div.share { - -moz-border-radius:5px; - -webkit-border-radius:5px; - border-radius:5px; - border:2px solid #88c0eb; - background:#fff; - margin-right:1em; - padding:0 1em; - float:left; - height:140px; -} -#origlink{ - display:inline-block; - white-space:pre; - width:183px; - overflow:hidden; - vertical-align:-2px; -} -#copybox { - width:250px; -} -#sharebox { - width:500px; -} -#tweet_body { - float:left; - width:450px; - height:4em; - font-size:12px; -} -#charcount { - padding-left:5px; - color:#88c0eb; -} -#charcount.negative { - color:red; -} -#share_links a { - padding:0 12px 0 18px; - font-weight:bold -} -#share_links a:hover { - background-position:2px center; -} -#share_tw {background:transparent url(../images/twitter.svg) left center no-repeat;} -#share_fb {background:transparent url(../images/facebook.svg) left center no-repeat;} - -#copylink{ - cursor:pointer; - background:transparent url(../images/copy.svg) 130% center no-repeat; -} - -#copylink:hover, #copylink.hover { - background-position:100% 50%; -} - diff --git a/css/style.css b/css/style.css deleted file mode 100644 index e898c3f..0000000 --- a/css/style.css +++ /dev/null @@ -1,337 +0,0 @@ -body { - font-family: Verdana, Arial; - font-size: 12px; - color: #595441; - background:#93989b; - text-align:center; - margin-top:0px; - padding-top:10px; -} -#wrap { - max-width:950px; - min-height:150px; - margin:0 auto; - background:white; - text-align:left; - padding:5px 20px 10px 20px; - border-left:3px solid #2a85b3; - border-right:3px solid #2a85b3; - border-bottom:3px solid #2a85b3; - border-top:3px solid #2a85b3; - -moz-border-radius:20px; - -webkit-border-radius:20px; - border-radius:20px; -} -.hide-if-no-js {display: none;} -div, p, td { - font-family: Verdana, Arial; - font-size: 12px; -} -a, a:link, a:active, a:visited { - color: #2a85b3; - text-decoration: none; -} -a:hover { - text-decoration: underline; -} -h1 {height:50px;margin:0;float:right;max-width:500px;} -h1 a {text-align:right;font-size:20px;float:right;} -h1 a, h1 a:link, h1 a:active, h1 a:visited {color:#2a85b3} -h1 a:hover{text-decoration:none;} -h1 a:hover span{text-decoration:underline;color:#88c0eb} -#yourls-logo { - border:0px; - width:300px; -} -ul#admin_menu { - min-height:100px; - list-style-type:none; - padding:0; - font-size:105%; -} -ul#admin_menu li { - color:#aaa; - padding:1px 0; -} -ul#admin_menu li:hover { - list-style-type:square; - color:#000; -} - -code { - background:#eaeaef; - padding:0 2px; -} -tt { - background:#ffc; - padding:0 2px; -} - -input, textarea { - -moz-border-radius:3px; - -webkit-border-radius:3px; - border-radius:3px; -} -Input.text, select, textarea { - font-family: Verdana, Arial; - font-size: 10px; - color: #595441; - background-color: #FFFFFF; - border: 1px solid #88c0eb; - margin:1px; -} -input.button { - font-family: Verdana, Arial; - font-size: 10px; - color: #595441; - font-weight: bold; - background-color: #FFFFFF; - border: 1px solid #88c0eb; - cursor:pointer; -} -input.primary { - border:2px solid #2A85B3; - background:#fafafe; -} -input.text:focus, textarea:focus { - border:2px solid #2A85B3; - margin:0px; -} -tr.edit-row td { - background:#e3f3ff !important; -} -#new_url { - text-align:center; - padding:1px; - border:1px solid #CDCDCD; - background:#fff; - clear:both; -} -#new_url div { - background:#C7E7FF; - padding:4px; -} -#new_url_form { - padding:4px; -} -#new_url #feedback { - background:#ff8; - color:#88c0eb; - width:50%; - margin:0px 25%; - padding:2px; - border:1px solid #ff8; -} -#new_url #feedback .fail { - color:#f55; -} -#add-url {width:400px} -td.url small a{ - color:#bbc; -} -body.desktop td.actions input,body.desktop td.actions a { - visibility:hidden; -} -td.timestamp span.timestamp { - display:none; -} -td.actions input.disabled, td.actions input.loading { - visibility:visible; -} -tr:hover td.actions input, tr:hover td.actions a { - visibility:visible; -} -td.actions .button { - font-family: Verdana, Arial; - font-size: 10px; - color: #595441; - font-weight: bold; - background-color: #FFFFFF; - border: 1px solid #88c0eb; - -moz-border-radius:3px; - -webkit-border-radius:3px; - border-radius:3px; - cursor:pointer; - height:22px; - width:22px; - margin-top:0px; - margin-right:5px; - display:block; - float:left; - text-indent:-9999px; - outline:0px; -} -td.actions .button:active { - border:1px solid #000; -} -td.actions .button:hover { - text-decoration:none; -} -td.actions .button.disabled, #add-button.disabled { - border:1px solid #333; - background:#ccc; -} -td.actions .button.loading, #add-button.loading { - background:#cc7 url(../images/loading.gif) center center no-repeat; - color:#cc7; -} -td.actions .button_share { - background:transparent url(../images/share.svg) center no-repeat; -} -td.actions .button_edit { - background:transparent url(../images/pencil.svg) center no-repeat; -} -td.actions .button_delete { - background:transparent url(../images/delete.svg) center no-repeat; -} -td.actions .button_stats { - background:transparent url(../images/chart_bar.svg) center no-repeat; -} -#main_table tfoot th, #main_table tfoot th div { - font-size:10px; -} -.error { - color: red; - background:#fee; -} -.warning { - color: orange; - background:#ffe9bf; -} -.success { - color: green; - background:#efe; -} -#login { - width: 300px; - margin: 200px auto 0px auto; -} -#login p{ - font-weight: bold; -} -#login .text { - width: 100%; -} -#login ul { - padding-left:0px; - list-style-type:none; - text-indent:0; -} -#login ul li { - padding:0 0 5px 20px; -} -#login ul.error li { - background:transparent url(../images/cancel.svg) top left no-repeat; -} -#login ul.warning li { - background:transparent url(../images/error.svg) top left no-repeat; -} -#login ul.success li { - background:transparent url(../images/accept.svg) top left no-repeat; -} -.sub_wrap { - max-width:580px; - padding-bottom:30px; - text-align:justify; -} -.sub_wrap span { - background:#ffa; - padding:0 2px; -} -a.bookmarklet { - border:2px solid #2a85b3; - -moz-border-radius:3px; - -webkit-border-radius:3px; - border-radius:3px; - padding:5px 5px 5px 20px; - background:#eef url(/user/plugins/backend/assets/img/favicon.ico) 2px center no-repeat; - padding-left:30px; - margin:3px; - display:inline-block; -} -a.bookmarklet:hover { - text-decoration:none; - background-position:3px center; -} -#footer { - text-align:center; - margin-top:20px; -} -#footer p { - padding:10px; - background:white; - margin:0 auto; - max-width:950px; - -moz-border-radius:10px; - -webkit-border-radius:10px; - border-radius:10px; - border:2px solid #2a85b3; - -moz-border-radius-bottomleft:30px; - -moz-border-radius-bottomright:30px; - -webkit-border-bottom-left-radius:25px; - -webkit-border-bottom-right-radius:25px; - border-bottom-left-radius:25px; - border-bottom-right-radius:25px; -} -#footer p a { - background:#fff url(../images/favicon.svg) 2px center no-repeat; - padding-left:30px; -} - -.notice { - border:1px solid #2a85b3; - background: #F3FAFD; - -moz-border-radius:6px; - -webkit-border-radius:6px; - border-radius:6px; - width:70%; - margin-left:15%; - padding-left:10px; - margin-bottom:5px; -} - - -.jquery-notify-bar { - width:100%; - position:fixed; - top:0; - left:0; - z-index:32768; - background-color:#efefef; - font-size:18px; - color:#000; - text-align:center; - font-family: Arial, Verdana, sans-serif; - padding:20px 0px; - border-bottom:1px solid #bbb; - filter:alpha(opacity=95); - -moz-opacity:0.95; - -khtml-opacity:0.95; - opacity:0.95; - -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.5); - -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.5); - text-shadow: 0 1px 1px rgba(0,0,0,0.1); -} -.jquery-notify-bar.error ,.jquery-notify-bar.fail { - color:#f00; - background-color:#fdd; -} -.jquery-notify-bar.error span,.jquery-notify-bar.fail span{ - background:transparent url("../images/error.svg") no-repeat left center; - padding-left:20px; -}.jquery-notify-bar.success span{ - background:transparent url("../images/accept.svg") no-repeat left center; - padding-left:20px; -} -.jquery-notify-bar.success { - color:#060; - background-color:#aea; -} -.notify-bar-close { - position:absolute; - left:95%; - font-size:11px; -} -tr.plugin.active a{ font-weight:bolder;} -body.desktop tr.plugin td.plugin_desc small{ visibility:hidden;} -tr:hover.plugin td.plugin_desc small{ visibility:visible;} diff --git a/frontend/dist/styles.css b/frontend/dist/styles.css index fd28327..4620016 100644 --- a/frontend/dist/styles.css +++ b/frontend/dist/styles.css @@ -1,14 +1,9 @@ @charset "UTF-8"; -@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Open+Sans&display=swap"); -/*! - * Bootstrap v5.0.2 (https://getbootstrap.com/) - * Copyright 2011-2021 The Bootstrap Authors - * Copyright 2011-2021 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */ - -:root { +@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Open+Sans&display=swap";/*!* Bootstrap v5.0.2 (https://getbootstrap.com/) +* Copyright 2011-2021 The Bootstrap Authors +* Copyright 2011-2021 Twitter, Inc. +* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)*/:root { --bs-blue: #0d6efd; --bs-indigo: #6610f2; --bs-purple: #6f42c1; @@ -35,14 +30,12 @@ --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); } -*, -*::before, -*::after { +*,*::before,*::after { box-sizing: border-box; } -@media (prefers-reduced-motion: no-preference) { - :root { +@media(prefers-reduced-motion:no-preference) { + :root { scroll-behavior: smooth; } } @@ -54,9 +47,9 @@ body { font-weight: 400; line-height: 1.5; color: #212529; - background-color: #fff; + background-color: #2E323E; -webkit-text-size-adjust: 100%; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -webkit-tap-highlight-color: transparent; } hr { @@ -64,88 +57,67 @@ hr { color: inherit; background-color: currentColor; border: 0; - opacity: 0.25; + opacity: .25; } hr:not([size]) { height: 1px; } -h6, -.h6, -h5, -.h5, -h4, -.h4, -h3, -.h3, -h2, -.h2, -h1, -.h1 { +h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1 { margin-top: 0; - margin-bottom: 0.5rem; - font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + margin-bottom: .5rem; + font-family: montserrat,system-ui,-apple-system,segoe ui,Roboto,helvetica neue,Arial,noto sans,liberation sans,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol,noto color emoji; font-weight: 500; line-height: 1.2; - color:#fff; + color: #fff; } -h1, -.h1 { +h1,.h1 { font-size: calc(1.375rem + 1.5vw); } -@media (min-width: 1200px) { - h1, - .h1 { +@media(min-width:1200px) { + h1,.h1 { font-size: 2.5rem; } } -h2, -.h2 { +h2,.h2 { font-size: calc(1.325rem + 0.9vw); } -@media (min-width: 1200px) { - h2, - .h2 { +@media(min-width:1200px) { + h2,.h2 { font-size: 2rem; } } -h3, -.h3 { +h3,.h3 { font-size: calc(1.3rem + 0.6vw); } -@media (min-width: 1200px) { - h3, - .h3 { +@media(min-width:1200px) { + h3,.h3 { font-size: 1.75rem; } } -h4, -.h4 { +h4,.h4 { font-size: calc(1.275rem + 0.3vw); } -@media (min-width: 1200px) { - h4, - .h4 { +@media(min-width:1200px) { + h4,.h4 { font-size: 1.5rem; } } -h5, -.h5 { +h5,.h5 { font-size: 1.25rem; } -h6, -.h6 { +h6,.h6 { font-size: 1rem; } @@ -155,8 +127,7 @@ p { color: #fff; } -abbr[title], -abbr[data-bs-original-title] { +abbr[title],abbr[data-bs-original-title] { text-decoration: underline dotted; cursor: help; text-decoration-skip-ink: none; @@ -168,22 +139,16 @@ address { line-height: inherit; } -ol, -ul { +ol,ul { padding-left: 2rem; } -ol, -ul, -dl { +ol,ul,dl { margin-top: 0; margin-bottom: 1rem; } -ol ol, -ul ul, -ol ul, -ul ol { +ol ol,ul ul,ol ul,ul ol { margin-bottom: 0; } @@ -192,7 +157,7 @@ dt { } dd { - margin-bottom: 0.5rem; + margin-bottom: .5rem; margin-left: 0; } @@ -200,61 +165,52 @@ blockquote { margin: 0 0 1rem; } -b, -strong { +b,strong { font-weight: bolder; } -small, -.small { - font-size: 0.875em; +small,.small { + font-size: .875em; } -mark, -.mark { - padding: 0.2em; +mark,.mark { + padding: .2em; background-color: #fcf8e3; } -sub, -sup { +sub,sup { position: relative; - font-size: 0.75em; + font-size: .75em; line-height: 0; vertical-align: baseline; } sub { - bottom: -0.25em; + bottom: -.25em; } sup { - top: -0.5em; + top: -.5em; } a { - color: #7289DA; + color: #7289da; text-decoration: underline; } a:hover { - color: #4E5D94; + color: #4e5d94; } -a:not([href]):not([class]), -a:not([href]):not([class]):hover { +a:not([href]):not([class]),a:not([href]):not([class]):hover { color: inherit; text-decoration: none; } -pre, -code, -kbd, -samp { +pre,code,kbd,samp { font-family: var(--bs-font-monospace); font-size: 1em; - direction: ltr/* rtl:ignore */ - ; + direction: ltr; unicode-bidi: bidi-override; } @@ -263,7 +219,7 @@ pre { margin-top: 0; margin-bottom: 1rem; overflow: auto; - font-size: 0.875em; + font-size: .875em; } pre code { @@ -273,7 +229,7 @@ pre code { } code { - font-size: 0.875em; + font-size: .875em; color: #d63384; word-wrap: break-word; } @@ -283,11 +239,11 @@ a>code { } kbd { - padding: 0.2rem 0.4rem; - font-size: 0.875em; + padding: .2rem .4rem; + font-size: .875em; color: #fff; background-color: #212529; - border-radius: 0.2rem; + border-radius: .2rem; } kbd kbd { @@ -300,8 +256,7 @@ figure { margin: 0 0 1rem; } -img, -svg { +img,svg { vertical-align: middle; } @@ -311,8 +266,8 @@ table { } caption { - padding-top: 0.5rem; - padding-bottom: 0.5rem; + padding-top: .5rem; + padding-bottom: .5rem; color: #6c757d; text-align: left; } @@ -322,12 +277,7 @@ th { text-align: -webkit-match-parent; } -thead, -tbody, -tfoot, -tr, -td, -th { +thead,tbody,tfoot,tr,td,th { border-color: inherit; border-style: solid; border-width: 0; @@ -345,21 +295,16 @@ button:focus:not(:focus-visible) { outline: 0; } -input, -button, -select, -optgroup, -textarea { +input,button,select,optgroup,textarea { margin: 0; font-family: inherit; font-size: inherit; line-height: inherit; - background-color: #2A2A2A; + background-color: #2E323E; color: #a6acb1; } -button, -select { +button,select { text-transform: none; } @@ -379,17 +324,11 @@ select:disabled { display: none; } -button, -[type=button], -[type=reset], -[type=submit] { +button,[type=button],[type=reset],[type=submit] { -webkit-appearance: button; } -button:not(:disabled), -[type=button]:not(:disabled), -[type=reset]:not(:disabled), -[type=submit]:not(:disabled) { +button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled) { cursor: pointer; } @@ -413,12 +352,12 @@ legend { float: left; width: 100%; padding: 0; - margin-bottom: 0.5rem; + margin-bottom: .5rem; font-size: calc(1.275rem + 0.3vw); line-height: inherit; } -@media (min-width: 1200px) { +@media(min-width:1200px) { legend { font-size: 1.5rem; } @@ -428,13 +367,7 @@ legend+* { clear: left; } -::-webkit-datetime-edit-fields-wrapper, -::-webkit-datetime-edit-text, -::-webkit-datetime-edit-minute, -::-webkit-datetime-edit-hour-field, -::-webkit-datetime-edit-day-field, -::-webkit-datetime-edit-month-field, -::-webkit-datetime-edit-year-field { +::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field { padding: 0; } @@ -447,16 +380,6 @@ legend+* { -webkit-appearance: textfield; } - -/* rtl:raw: -[type="tel"], -[type="url"], -[type="email"], -[type="number"] { - direction: ltr; -} -*/ - ::-webkit-search-decoration { -webkit-appearance: none; } @@ -492,7 +415,7 @@ progress { } [hidden] { - display: none !important; + display: none!important; } .lead { @@ -506,7 +429,7 @@ progress { line-height: 1.2; } -@media (min-width: 1200px) { +@media(min-width:1200px) { .display-1 { font-size: 5rem; } @@ -518,7 +441,7 @@ progress { line-height: 1.2; } -@media (min-width: 1200px) { +@media(min-width:1200px) { .display-2 { font-size: 4.5rem; } @@ -530,7 +453,7 @@ progress { line-height: 1.2; } -@media (min-width: 1200px) { +@media(min-width:1200px) { .display-3 { font-size: 4rem; } @@ -542,7 +465,7 @@ progress { line-height: 1.2; } -@media (min-width: 1200px) { +@media(min-width:1200px) { .display-4 { font-size: 3.5rem; } @@ -554,7 +477,7 @@ progress { line-height: 1.2; } -@media (min-width: 1200px) { +@media(min-width:1200px) { .display-5 { font-size: 3rem; } @@ -566,7 +489,7 @@ progress { line-height: 1.2; } -@media (min-width: 1200px) { +@media(min-width:1200px) { .display-6 { font-size: 2.5rem; } @@ -587,11 +510,11 @@ progress { } .list-inline-item:not(:last-child) { - margin-right: 0.5rem; + margin-right: .5rem; } .initialism { - font-size: 0.875em; + font-size: .875em; text-transform: uppercase; } @@ -600,14 +523,14 @@ progress { font-size: 1.25rem; } -.blockquote> :last-child { +.blockquote>:last-child { margin-bottom: 0; } .blockquote-footer { margin-top: -1rem; margin-bottom: 1rem; - font-size: 0.875em; + font-size: .875em; color: #6c757d; } @@ -621,7 +544,7 @@ progress { } .img-thumbnail { - padding: 0.25rem; + padding: .25rem; background-color: #fff; border: 1px solid #dee2e6; border-radius: 6px; @@ -634,70 +557,49 @@ progress { } .figure-img { - margin-bottom: 0.5rem; + margin-bottom: .5rem; line-height: 1; } .figure-caption { - font-size: 0.875em; + font-size: .875em; color: #6c757d; } -.container, -.container-fluid, -.container-xxl, -.container-xl, -.container-lg, -.container-md, -.container-sm { +.container,.container-fluid,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm { width: 100%; - padding-right: var(--bs-gutter-x, 0.75rem); - padding-left: var(--bs-gutter-x, 0.75rem); + padding-right: var(--bs-gutter-x,0.75rem); + padding-left: var(--bs-gutter-x,0.75rem); margin-right: auto; margin-left: auto; } -@media (min-width: 576px) { - .container-sm, - .container { +@media(min-width:576px) { + .container-sm,.container { max-width: 540px; } } -@media (min-width: 768px) { - .container-md, - .container-sm, - .container { +@media(min-width:768px) { + .container-md,.container-sm,.container { max-width: 720px; } } -@media (min-width: 992px) { - .container-lg, - .container-md, - .container-sm, - .container { +@media(min-width:992px) { + .container-lg,.container-md,.container-sm,.container { max-width: 960px; } } -@media (min-width: 1200px) { - .container-xl, - .container-lg, - .container-md, - .container-sm, - .container { +@media(min-width:1200px) { + .container-xl,.container-lg,.container-md,.container-sm,.container { max-width: 1140px; } } -@media (min-width: 1400px) { - .container-xxl, - .container-xl, - .container-lg, - .container-md, - .container-sm, - .container { +@media(min-width:1400px) { + .container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container { max-width: 1320px; } } @@ -760,170 +662,205 @@ progress { width: 16.6666666667%; } -@media (min-width: 576px) { +@media(min-width:576px) { .col-sm { flex: 1 0 0%; } + .row-cols-sm-auto>* { flex: 0 0 auto; width: auto; } + .row-cols-sm-1>* { flex: 0 0 auto; width: 100%; } + .row-cols-sm-2>* { flex: 0 0 auto; width: 50%; } + .row-cols-sm-3>* { flex: 0 0 auto; width: 33.3333333333%; } + .row-cols-sm-4>* { flex: 0 0 auto; width: 25%; } + .row-cols-sm-5>* { flex: 0 0 auto; width: 20%; } + .row-cols-sm-6>* { flex: 0 0 auto; width: 16.6666666667%; } } -@media (min-width: 768px) { +@media(min-width:768px) { .col-md { flex: 1 0 0%; } + .row-cols-md-auto>* { flex: 0 0 auto; width: auto; } + .row-cols-md-1>* { flex: 0 0 auto; width: 100%; } + .row-cols-md-2>* { flex: 0 0 auto; width: 50%; } + .row-cols-md-3>* { flex: 0 0 auto; width: 33.3333333333%; } + .row-cols-md-4>* { flex: 0 0 auto; width: 25%; } + .row-cols-md-5>* { flex: 0 0 auto; width: 20%; } + .row-cols-md-6>* { flex: 0 0 auto; width: 16.6666666667%; } } -@media (min-width: 992px) { +@media(min-width:992px) { .col-lg { flex: 1 0 0%; } + .row-cols-lg-auto>* { flex: 0 0 auto; width: auto; } + .row-cols-lg-1>* { flex: 0 0 auto; width: 100%; } + .row-cols-lg-2>* { flex: 0 0 auto; width: 50%; } + .row-cols-lg-3>* { flex: 0 0 auto; width: 33.3333333333%; } + .row-cols-lg-4>* { flex: 0 0 auto; width: 25%; } + .row-cols-lg-5>* { flex: 0 0 auto; width: 20%; } + .row-cols-lg-6>* { flex: 0 0 auto; width: 16.6666666667%; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .col-xl { flex: 1 0 0%; } + .row-cols-xl-auto>* { flex: 0 0 auto; width: auto; } + .row-cols-xl-1>* { flex: 0 0 auto; width: 100%; } + .row-cols-xl-2>* { flex: 0 0 auto; width: 50%; } + .row-cols-xl-3>* { flex: 0 0 auto; width: 33.3333333333%; } + .row-cols-xl-4>* { flex: 0 0 auto; width: 25%; } + .row-cols-xl-5>* { flex: 0 0 auto; width: 20%; } + .row-cols-xl-6>* { flex: 0 0 auto; width: 16.6666666667%; } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .col-xxl { flex: 1 0 0%; } + .row-cols-xxl-auto>* { flex: 0 0 auto; width: auto; } + .row-cols-xxl-1>* { flex: 0 0 auto; width: 100%; } + .row-cols-xxl-2>* { flex: 0 0 auto; width: 50%; } + .row-cols-xxl-3>* { flex: 0 0 auto; width: 33.3333333333%; } + .row-cols-xxl-4>* { flex: 0 0 auto; width: 25%; } + .row-cols-xxl-5>* { flex: 0 0 auto; width: 20%; } + .row-cols-xxl-6>* { flex: 0 0 auto; width: 16.6666666667%; @@ -1039,757 +976,865 @@ progress { margin-left: 91.66666667%; } -.g-0, -.gx-0 { +.g-0,.gx-0 { --bs-gutter-x: 0; } -.g-0, -.gy-0 { +.g-0,.gy-0 { --bs-gutter-y: 0; } -.g-1, -.gx-1 { +.g-1,.gx-1 { --bs-gutter-x: 0.25rem; } -.g-1, -.gy-1 { +.g-1,.gy-1 { --bs-gutter-y: 0.25rem; } -.g-2, -.gx-2 { +.g-2,.gx-2 { --bs-gutter-x: 0.5rem; } -.g-2, -.gy-2 { +.g-2,.gy-2 { --bs-gutter-y: 0.5rem; } -.g-3, -.gx-3 { +.g-3,.gx-3 { --bs-gutter-x: 1rem; } -.g-3, -.gy-3 { +.g-3,.gy-3 { --bs-gutter-y: 1rem; } -.g-4, -.gx-4 { +.g-4,.gx-4 { --bs-gutter-x: 1.5rem; } -.g-4, -.gy-4 { +.g-4,.gy-4 { --bs-gutter-y: 1.5rem; } -.g-5, -.gx-5 { +.g-5,.gx-5 { --bs-gutter-x: 3rem; } -.g-5, -.gy-5 { +.g-5,.gy-5 { --bs-gutter-y: 3rem; } -@media (min-width: 576px) { +@media(min-width:576px) { .col-sm-auto { flex: 0 0 auto; width: auto; } + .col-sm-1 { flex: 0 0 auto; width: 8.33333333%; } + .col-sm-2 { flex: 0 0 auto; width: 16.66666667%; } + .col-sm-3 { flex: 0 0 auto; width: 25%; } + .col-sm-4 { flex: 0 0 auto; width: 33.33333333%; } + .col-sm-5 { flex: 0 0 auto; width: 41.66666667%; } + .col-sm-6 { flex: 0 0 auto; width: 50%; } + .col-sm-7 { flex: 0 0 auto; width: 58.33333333%; } + .col-sm-8 { flex: 0 0 auto; width: 66.66666667%; } + .col-sm-9 { flex: 0 0 auto; width: 75%; } + .col-sm-10 { flex: 0 0 auto; width: 83.33333333%; } + .col-sm-11 { flex: 0 0 auto; width: 91.66666667%; } + .col-sm-12 { flex: 0 0 auto; width: 100%; } + .offset-sm-0 { margin-left: 0; } + .offset-sm-1 { margin-left: 8.33333333%; } + .offset-sm-2 { margin-left: 16.66666667%; } + .offset-sm-3 { margin-left: 25%; } + .offset-sm-4 { margin-left: 33.33333333%; } + .offset-sm-5 { margin-left: 41.66666667%; } + .offset-sm-6 { margin-left: 50%; } + .offset-sm-7 { margin-left: 58.33333333%; } + .offset-sm-8 { margin-left: 66.66666667%; } + .offset-sm-9 { margin-left: 75%; } + .offset-sm-10 { margin-left: 83.33333333%; } + .offset-sm-11 { margin-left: 91.66666667%; } - .g-sm-0, - .gx-sm-0 { + + .g-sm-0,.gx-sm-0 { --bs-gutter-x: 0; } - .g-sm-0, - .gy-sm-0 { + + .g-sm-0,.gy-sm-0 { --bs-gutter-y: 0; } - .g-sm-1, - .gx-sm-1 { + + .g-sm-1,.gx-sm-1 { --bs-gutter-x: 0.25rem; } - .g-sm-1, - .gy-sm-1 { + + .g-sm-1,.gy-sm-1 { --bs-gutter-y: 0.25rem; } - .g-sm-2, - .gx-sm-2 { + + .g-sm-2,.gx-sm-2 { --bs-gutter-x: 0.5rem; } - .g-sm-2, - .gy-sm-2 { + + .g-sm-2,.gy-sm-2 { --bs-gutter-y: 0.5rem; } - .g-sm-3, - .gx-sm-3 { + + .g-sm-3,.gx-sm-3 { --bs-gutter-x: 1rem; } - .g-sm-3, - .gy-sm-3 { + + .g-sm-3,.gy-sm-3 { --bs-gutter-y: 1rem; } - .g-sm-4, - .gx-sm-4 { + + .g-sm-4,.gx-sm-4 { --bs-gutter-x: 1.5rem; } - .g-sm-4, - .gy-sm-4 { + + .g-sm-4,.gy-sm-4 { --bs-gutter-y: 1.5rem; } - .g-sm-5, - .gx-sm-5 { + + .g-sm-5,.gx-sm-5 { --bs-gutter-x: 3rem; } - .g-sm-5, - .gy-sm-5 { + + .g-sm-5,.gy-sm-5 { --bs-gutter-y: 3rem; } } -@media (min-width: 768px) { +@media(min-width:768px) { .col-md-auto { flex: 0 0 auto; width: auto; } + .col-md-1 { flex: 0 0 auto; width: 8.33333333%; } + .col-md-2 { flex: 0 0 auto; width: 16.66666667%; } + .col-md-3 { flex: 0 0 auto; width: 25%; } + .col-md-4 { flex: 0 0 auto; width: 33.33333333%; } + .col-md-5 { flex: 0 0 auto; width: 41.66666667%; } + .col-md-6 { flex: 0 0 auto; width: 50%; } + .col-md-7 { flex: 0 0 auto; width: 58.33333333%; } + .col-md-8 { flex: 0 0 auto; width: 66.66666667%; } + .col-md-9 { flex: 0 0 auto; width: 75%; } + .col-md-10 { flex: 0 0 auto; width: 83.33333333%; } + .col-md-11 { flex: 0 0 auto; width: 91.66666667%; } + .col-md-12 { flex: 0 0 auto; width: 100%; } + .offset-md-0 { margin-left: 0; } + .offset-md-1 { margin-left: 8.33333333%; } + .offset-md-2 { margin-left: 16.66666667%; } + .offset-md-3 { margin-left: 25%; } + .offset-md-4 { margin-left: 33.33333333%; } + .offset-md-5 { margin-left: 41.66666667%; } + .offset-md-6 { margin-left: 50%; } + .offset-md-7 { margin-left: 58.33333333%; } + .offset-md-8 { margin-left: 66.66666667%; } + .offset-md-9 { margin-left: 75%; } + .offset-md-10 { margin-left: 83.33333333%; } + .offset-md-11 { margin-left: 91.66666667%; } - .g-md-0, - .gx-md-0 { + + .g-md-0,.gx-md-0 { --bs-gutter-x: 0; } - .g-md-0, - .gy-md-0 { + + .g-md-0,.gy-md-0 { --bs-gutter-y: 0; } - .g-md-1, - .gx-md-1 { + + .g-md-1,.gx-md-1 { --bs-gutter-x: 0.25rem; } - .g-md-1, - .gy-md-1 { + + .g-md-1,.gy-md-1 { --bs-gutter-y: 0.25rem; } - .g-md-2, - .gx-md-2 { + + .g-md-2,.gx-md-2 { --bs-gutter-x: 0.5rem; } - .g-md-2, - .gy-md-2 { + + .g-md-2,.gy-md-2 { --bs-gutter-y: 0.5rem; } - .g-md-3, - .gx-md-3 { + + .g-md-3,.gx-md-3 { --bs-gutter-x: 1rem; } - .g-md-3, - .gy-md-3 { + + .g-md-3,.gy-md-3 { --bs-gutter-y: 1rem; } - .g-md-4, - .gx-md-4 { + + .g-md-4,.gx-md-4 { --bs-gutter-x: 1.5rem; } - .g-md-4, - .gy-md-4 { + + .g-md-4,.gy-md-4 { --bs-gutter-y: 1.5rem; } - .g-md-5, - .gx-md-5 { + + .g-md-5,.gx-md-5 { --bs-gutter-x: 3rem; } - .g-md-5, - .gy-md-5 { + + .g-md-5,.gy-md-5 { --bs-gutter-y: 3rem; } } -@media (min-width: 992px) { +@media(min-width:992px) { .col-lg-auto { flex: 0 0 auto; width: auto; } + .col-lg-1 { flex: 0 0 auto; width: 8.33333333%; } + .col-lg-2 { flex: 0 0 auto; width: 16.66666667%; } + .col-lg-3 { flex: 0 0 auto; width: 25%; } + .col-lg-4 { flex: 0 0 auto; width: 33.33333333%; } + .col-lg-5 { flex: 0 0 auto; width: 41.66666667%; } + .col-lg-6 { flex: 0 0 auto; width: 50%; } + .col-lg-7 { flex: 0 0 auto; width: 58.33333333%; } + .col-lg-8 { flex: 0 0 auto; width: 66.66666667%; } + .col-lg-9 { flex: 0 0 auto; width: 75%; } + .col-lg-10 { flex: 0 0 auto; width: 83.33333333%; } + .col-lg-11 { flex: 0 0 auto; width: 91.66666667%; } + .col-lg-12 { flex: 0 0 auto; width: 100%; } + .offset-lg-0 { margin-left: 0; } + .offset-lg-1 { margin-left: 8.33333333%; } + .offset-lg-2 { margin-left: 16.66666667%; } + .offset-lg-3 { margin-left: 25%; } + .offset-lg-4 { margin-left: 33.33333333%; } + .offset-lg-5 { margin-left: 41.66666667%; } + .offset-lg-6 { margin-left: 50%; } + .offset-lg-7 { margin-left: 58.33333333%; } + .offset-lg-8 { margin-left: 66.66666667%; } + .offset-lg-9 { margin-left: 75%; } + .offset-lg-10 { margin-left: 83.33333333%; } + .offset-lg-11 { margin-left: 91.66666667%; } - .g-lg-0, - .gx-lg-0 { + + .g-lg-0,.gx-lg-0 { --bs-gutter-x: 0; } - .g-lg-0, - .gy-lg-0 { + + .g-lg-0,.gy-lg-0 { --bs-gutter-y: 0; } - .g-lg-1, - .gx-lg-1 { + + .g-lg-1,.gx-lg-1 { --bs-gutter-x: 0.25rem; } - .g-lg-1, - .gy-lg-1 { + + .g-lg-1,.gy-lg-1 { --bs-gutter-y: 0.25rem; } - .g-lg-2, - .gx-lg-2 { + + .g-lg-2,.gx-lg-2 { --bs-gutter-x: 0.5rem; } - .g-lg-2, - .gy-lg-2 { + + .g-lg-2,.gy-lg-2 { --bs-gutter-y: 0.5rem; } - .g-lg-3, - .gx-lg-3 { + + .g-lg-3,.gx-lg-3 { --bs-gutter-x: 1rem; } - .g-lg-3, - .gy-lg-3 { + + .g-lg-3,.gy-lg-3 { --bs-gutter-y: 1rem; } - .g-lg-4, - .gx-lg-4 { + + .g-lg-4,.gx-lg-4 { --bs-gutter-x: 1.5rem; } - .g-lg-4, - .gy-lg-4 { + + .g-lg-4,.gy-lg-4 { --bs-gutter-y: 1.5rem; } - .g-lg-5, - .gx-lg-5 { + + .g-lg-5,.gx-lg-5 { --bs-gutter-x: 3rem; } - .g-lg-5, - .gy-lg-5 { + + .g-lg-5,.gy-lg-5 { --bs-gutter-y: 3rem; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .col-xl-auto { flex: 0 0 auto; width: auto; } + .col-xl-1 { flex: 0 0 auto; width: 8.33333333%; } + .col-xl-2 { flex: 0 0 auto; width: 16.66666667%; } + .col-xl-3 { flex: 0 0 auto; width: 25%; } + .col-xl-4 { flex: 0 0 auto; width: 33.33333333%; } + .col-xl-5 { flex: 0 0 auto; width: 41.66666667%; } + .col-xl-6 { flex: 0 0 auto; width: 50%; } + .col-xl-7 { flex: 0 0 auto; width: 58.33333333%; } + .col-xl-8 { flex: 0 0 auto; width: 66.66666667%; } + .col-xl-9 { flex: 0 0 auto; width: 75%; } + .col-xl-10 { flex: 0 0 auto; width: 83.33333333%; } + .col-xl-11 { flex: 0 0 auto; width: 91.66666667%; } + .col-xl-12 { flex: 0 0 auto; width: 100%; } + .offset-xl-0 { margin-left: 0; } + .offset-xl-1 { margin-left: 8.33333333%; } + .offset-xl-2 { margin-left: 16.66666667%; } + .offset-xl-3 { margin-left: 25%; } + .offset-xl-4 { margin-left: 33.33333333%; } + .offset-xl-5 { margin-left: 41.66666667%; } + .offset-xl-6 { margin-left: 50%; } + .offset-xl-7 { margin-left: 58.33333333%; } + .offset-xl-8 { margin-left: 66.66666667%; } + .offset-xl-9 { margin-left: 75%; } + .offset-xl-10 { margin-left: 83.33333333%; } + .offset-xl-11 { margin-left: 91.66666667%; } - .g-xl-0, - .gx-xl-0 { + + .g-xl-0,.gx-xl-0 { --bs-gutter-x: 0; } - .g-xl-0, - .gy-xl-0 { + + .g-xl-0,.gy-xl-0 { --bs-gutter-y: 0; } - .g-xl-1, - .gx-xl-1 { + + .g-xl-1,.gx-xl-1 { --bs-gutter-x: 0.25rem; } - .g-xl-1, - .gy-xl-1 { + + .g-xl-1,.gy-xl-1 { --bs-gutter-y: 0.25rem; } - .g-xl-2, - .gx-xl-2 { + + .g-xl-2,.gx-xl-2 { --bs-gutter-x: 0.5rem; } - .g-xl-2, - .gy-xl-2 { + + .g-xl-2,.gy-xl-2 { --bs-gutter-y: 0.5rem; } - .g-xl-3, - .gx-xl-3 { + + .g-xl-3,.gx-xl-3 { --bs-gutter-x: 1rem; } - .g-xl-3, - .gy-xl-3 { + + .g-xl-3,.gy-xl-3 { --bs-gutter-y: 1rem; } - .g-xl-4, - .gx-xl-4 { + + .g-xl-4,.gx-xl-4 { --bs-gutter-x: 1.5rem; } - .g-xl-4, - .gy-xl-4 { + + .g-xl-4,.gy-xl-4 { --bs-gutter-y: 1.5rem; } - .g-xl-5, - .gx-xl-5 { + + .g-xl-5,.gx-xl-5 { --bs-gutter-x: 3rem; } - .g-xl-5, - .gy-xl-5 { + + .g-xl-5,.gy-xl-5 { --bs-gutter-y: 3rem; } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .col-xxl-auto { flex: 0 0 auto; width: auto; } + .col-xxl-1 { flex: 0 0 auto; width: 8.33333333%; } + .col-xxl-2 { flex: 0 0 auto; width: 16.66666667%; } + .col-xxl-3 { flex: 0 0 auto; width: 25%; } + .col-xxl-4 { flex: 0 0 auto; width: 33.33333333%; } + .col-xxl-5 { flex: 0 0 auto; width: 41.66666667%; } + .col-xxl-6 { flex: 0 0 auto; width: 50%; } + .col-xxl-7 { flex: 0 0 auto; width: 58.33333333%; } + .col-xxl-8 { flex: 0 0 auto; width: 66.66666667%; } + .col-xxl-9 { flex: 0 0 auto; width: 75%; } + .col-xxl-10 { flex: 0 0 auto; width: 83.33333333%; } + .col-xxl-11 { flex: 0 0 auto; width: 91.66666667%; } + .col-xxl-12 { flex: 0 0 auto; width: 100%; } + .offset-xxl-0 { margin-left: 0; } + .offset-xxl-1 { margin-left: 8.33333333%; } + .offset-xxl-2 { margin-left: 16.66666667%; } + .offset-xxl-3 { margin-left: 25%; } + .offset-xxl-4 { margin-left: 33.33333333%; } + .offset-xxl-5 { margin-left: 41.66666667%; } + .offset-xxl-6 { margin-left: 50%; } + .offset-xxl-7 { margin-left: 58.33333333%; } + .offset-xxl-8 { margin-left: 66.66666667%; } + .offset-xxl-9 { margin-left: 75%; } + .offset-xxl-10 { margin-left: 83.33333333%; } + .offset-xxl-11 { margin-left: 91.66666667%; } - .g-xxl-0, - .gx-xxl-0 { + + .g-xxl-0,.gx-xxl-0 { --bs-gutter-x: 0; } - .g-xxl-0, - .gy-xxl-0 { + + .g-xxl-0,.gy-xxl-0 { --bs-gutter-y: 0; } - .g-xxl-1, - .gx-xxl-1 { + + .g-xxl-1,.gx-xxl-1 { --bs-gutter-x: 0.25rem; } - .g-xxl-1, - .gy-xxl-1 { + + .g-xxl-1,.gy-xxl-1 { --bs-gutter-y: 0.25rem; } - .g-xxl-2, - .gx-xxl-2 { + + .g-xxl-2,.gx-xxl-2 { --bs-gutter-x: 0.5rem; } - .g-xxl-2, - .gy-xxl-2 { + + .g-xxl-2,.gy-xxl-2 { --bs-gutter-y: 0.5rem; } - .g-xxl-3, - .gx-xxl-3 { + + .g-xxl-3,.gx-xxl-3 { --bs-gutter-x: 1rem; } - .g-xxl-3, - .gy-xxl-3 { + + .g-xxl-3,.gy-xxl-3 { --bs-gutter-y: 1rem; } - .g-xxl-4, - .gx-xxl-4 { + + .g-xxl-4,.gx-xxl-4 { --bs-gutter-x: 1.5rem; } - .g-xxl-4, - .gy-xxl-4 { + + .g-xxl-4,.gy-xxl-4 { --bs-gutter-y: 1.5rem; } - .g-xxl-5, - .gx-xxl-5 { + + .g-xxl-5,.gx-xxl-5 { --bs-gutter-x: 3rem; } - .g-xxl-5, - .gy-xxl-5 { + + .g-xxl-5,.gy-xxl-5 { --bs-gutter-y: 3rem; } } @@ -1810,8 +1855,8 @@ progress { border-color: #dee2e6; } -.table> :not(caption)>*>* { - padding: 0.5rem 0.5rem; +.table>:not(caption)>*>* { + padding: .5rem; background-color: var(--bs-table-bg); border-bottom-width: 1px; box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); @@ -1825,7 +1870,7 @@ progress { vertical-align: bottom; } -.table> :not(:last-child)> :last-child>* { +.table>:not(:last-child)>:last-child>* { border-bottom-color: currentColor; } @@ -1833,19 +1878,19 @@ progress { caption-side: top; } -.table-sm> :not(caption)>*>* { - padding: 0.25rem 0.25rem; +.table-sm>:not(caption)>*>* { + padding: .25rem; } -.table-bordered> :not(caption)>* { +.table-bordered>:not(caption)>* { border-width: 1px 0; } -.table-bordered> :not(caption)>*>* { +.table-bordered>:not(caption)>*>* { border-width: 0 1px; } -.table-borderless> :not(caption)>*>* { +.table-borderless>:not(caption)>*>* { border-bottom-width: 0; } @@ -1965,35 +2010,35 @@ progress { -webkit-overflow-scrolling: touch; } -@media (max-width: 575.98px) { +@media(max-width:575.98px) { .table-responsive-sm { overflow-x: auto; -webkit-overflow-scrolling: touch; } } -@media (max-width: 767.98px) { +@media(max-width:767.98px) { .table-responsive-md { overflow-x: auto; -webkit-overflow-scrolling: touch; } } -@media (max-width: 991.98px) { +@media(max-width:991.98px) { .table-responsive-lg { overflow-x: auto; -webkit-overflow-scrolling: touch; } } -@media (max-width: 1199.98px) { +@media(max-width:1199.98px) { .table-responsive-xl { overflow-x: auto; -webkit-overflow-scrolling: touch; } } -@media (max-width: 1399.98px) { +@media(max-width:1399.98px) { .table-responsive-xxl { overflow-x: auto; -webkit-overflow-scrolling: touch; @@ -2001,53 +2046,53 @@ progress { } .form-label { - margin-bottom: 0.5rem; + margin-bottom: .5rem; } .col-form-label { - padding-top: 0.375rem; - padding-bottom: 0.375rem; + padding-top: .375rem; + padding-bottom: .375rem; margin-bottom: 0; font-size: inherit; line-height: 1.5; } .col-form-label-lg { - padding-top: 0.5rem; - padding-bottom: 0.5rem; + padding-top: .5rem; + padding-bottom: .5rem; font-size: 1.25rem; } .col-form-label-sm { - padding-top: 0.25rem; - padding-bottom: 0.25rem; - font-size: 0.875rem; + padding-top: .25rem; + padding-bottom: .25rem; + font-size: .875rem; } .form-text { - margin-top: 0.25rem; - font-size: 0.875em; + margin-top: .25rem; + font-size: .875em; color: #a6acb1; } .form-control { display: block; width: 100%; - padding: 0.375rem 0.75rem; - font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + padding: .375rem .75rem; + font-family: montserrat,system-ui,-apple-system,segoe ui,Roboto,helvetica neue,Arial,noto sans,liberation sans,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol,noto color emoji; font-size: 1rem; font-weight: 700; line-height: 1.5; color: #a6acb1; - background-color: #2A2A2A; + background-color: #2E323E; background-clip: padding-box; border: 0 solid #ced4da; appearance: none; border-radius: 6px; - transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-control { transition: none; } @@ -2063,10 +2108,10 @@ progress { .form-control:focus { color: #a6acb1; - background-color: #2A2A2A; + background-color: #2E323E; border-color: #86b7fe; outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); } .form-control::-webkit-date-and-time-value { @@ -2078,16 +2123,15 @@ progress { opacity: 1; } -.form-control:disabled, -.form-control[readonly] { +.form-control:disabled,.form-control[readonly] { background-color: #e9ecef; opacity: 1; } .form-control::file-selector-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - margin-inline-end: 0.75rem; + padding: .375rem .75rem; + margin: -.375rem -.75rem; + margin-inline-end: .75rem; color: #212529; background-color: #e9ecef; pointer-events: none; @@ -2096,10 +2140,10 @@ progress { border-width: 0; border-inline-end-width: 0; border-radius: 0; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-control::file-selector-button { transition: none; } @@ -2110,9 +2154,9 @@ progress { } .form-control::-webkit-file-upload-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - margin-inline-end: 0.75rem; + padding: .375rem .75rem; + margin: -.375rem -.75rem; + margin-inline-end: .75rem; color: #212529; background-color: #e9ecef; pointer-events: none; @@ -2121,10 +2165,10 @@ progress { border-width: 0; border-inline-end-width: 0; border-radius: 0; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-control::-webkit-file-upload-button { transition: none; } @@ -2137,56 +2181,55 @@ progress { .form-control-plaintext { display: block; width: 100%; - padding: 0.375rem 0; + padding: .375rem 0; margin-bottom: 0; line-height: 1.5; color: #212529; background-color: transparent; border: solid transparent; - border-width: 0 0; + border-width: 0; } -.form-control-plaintext.form-control-sm, -.form-control-plaintext.form-control-lg { +.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg { padding-right: 0; padding-left: 0; } .form-control-sm { min-height: calc(1.5em + 0.5rem); - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; + padding: .25rem .5rem; + font-size: .875rem; + border-radius: .2rem; } .form-control-sm::file-selector-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - margin-inline-end: 0.5rem; + padding: .25rem .5rem; + margin: -.25rem -.5rem; + margin-inline-end: .5rem; } .form-control-sm::-webkit-file-upload-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - margin-inline-end: 0.5rem; + padding: .25rem .5rem; + margin: -.25rem -.5rem; + margin-inline-end: .5rem; } .form-control-lg { min-height: calc(1.5em + 1rem); - padding: 0.5rem 1rem; + padding: .5rem 1rem; font-size: 1.25rem; - border-radius: 0.3rem; + border-radius: .3rem; } .form-control-lg::file-selector-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; + padding: .5rem 1rem; + margin: -.5rem -1rem; margin-inline-end: 1rem; } .form-control-lg::-webkit-file-upload-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; + padding: .5rem 1rem; + margin: -.5rem -1rem; margin-inline-end: 1rem; } @@ -2205,7 +2248,7 @@ textarea.form-control-lg { .form-control-color { max-width: 3rem; height: auto; - padding: 0.375rem; + padding: .375rem; } .form-control-color:not(:disabled):not([readonly]) { @@ -2225,25 +2268,25 @@ textarea.form-control-lg { .form-select { display: block; width: 100%; - padding: 0.375rem 2.25rem 0.375rem 0.75rem; + padding: .375rem 2.25rem .375rem .75rem; -moz-padding-start: calc(0.75rem - 3px); - font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-family: montserrat,system-ui,-apple-system,segoe ui,Roboto,helvetica neue,Arial,noto sans,liberation sans,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol,noto color emoji; font-size: 1rem; font-weight: 700; line-height: 1.5; color: #212529; background-color: #ebebeb; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+); background-repeat: no-repeat; - background-position: right 0.75rem center; + background-position: right .75rem center; background-size: 16px 12px; border: 0 solid #ced4da; border-radius: 6px; - transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; appearance: none; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-select { transition: none; } @@ -2252,12 +2295,11 @@ textarea.form-control-lg { .form-select:focus { border-color: #86b7fe; outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); } -.form-select[multiple], -.form-select[size]:not([size="1"]) { - padding-right: 0.75rem; +.form-select[multiple],.form-select[size]:not([size="1"]) { + padding-right: .75rem; background-image: none; } @@ -2271,15 +2313,15 @@ textarea.form-control-lg { } .form-select-sm { - padding-top: 0.25rem; - padding-bottom: 0.25rem; - padding-left: 0.5rem; - font-size: 0.875rem; + padding-top: .25rem; + padding-bottom: .25rem; + padding-left: .5rem; + font-size: .875rem; } .form-select-lg { - padding-top: 0.5rem; - padding-bottom: 0.5rem; + padding-top: .5rem; + padding-bottom: .5rem; padding-left: 1rem; font-size: 1.25rem; } @@ -2288,7 +2330,7 @@ textarea.form-control-lg { display: block; min-height: 1.5rem; padding-left: 1.5em; - margin-bottom: 0.125rem; + margin-bottom: .125rem; } .form-check .form-check-input { @@ -2299,19 +2341,19 @@ textarea.form-control-lg { .form-check-input { width: 1em; height: 1em; - margin-top: 0.25em; + margin-top: .25em; vertical-align: top; background-color: #ebebeb; background-repeat: no-repeat; background-position: center; background-size: contain; - border: 1px solid rgba(0, 0, 0, 0.25); + border: 1px solid rgba(0,0,0,.25); appearance: none; color-adjust: exact; } .form-check-input[type=checkbox] { - border-radius: 0.25em; + border-radius: .25em; } .form-check-input[type=radio] { @@ -2325,7 +2367,7 @@ textarea.form-control-lg { .form-check-input:focus { border-color: #86b7fe; outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); } .form-check-input:checked { @@ -2334,28 +2376,27 @@ textarea.form-control-lg { } .form-check-input:checked[type=checkbox] { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvPjwvc3ZnPg==); } .form-check-input:checked[type=radio] { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjZmZmJy8+PC9zdmc+); } .form-check-input[type=checkbox]:indeterminate { background-color: #0d6efd; border-color: #0d6efd; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvPjwvc3ZnPg==); } .form-check-input:disabled { pointer-events: none; filter: none; - opacity: 0.5; + opacity: .5; } -.form-check-input[disabled]~.form-check-label, -.form-check-input:disabled~.form-check-label { - opacity: 0.5; +.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label { + opacity: .5; } .form-switch { @@ -2365,25 +2406,25 @@ textarea.form-control-lg { .form-switch .form-check-input { width: 2em; margin-left: -2.5em; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPSdyZ2JhKDAsIDAsIDAsIDAuMjUpJy8+PC9zdmc+); background-position: left center; border-radius: 2em; - transition: background-position 0.15s ease-in-out; + transition: background-position .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-switch .form-check-input { transition: none; } } .form-switch .form-check-input:focus { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjODZiN2ZlJy8+PC9zdmc+); } .form-switch .form-check-input:checked { background-position: right center; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjZmZmJy8+PC9zdmc+); } .form-check-inline { @@ -2393,15 +2434,14 @@ textarea.form-control-lg { .btn-check { position: absolute; - clip: rect(0, 0, 0, 0); + clip: rect(0,0,0,0); pointer-events: none; } -.btn-check[disabled]+.btn, -.btn-check:disabled+.btn { +.btn-check[disabled]+.btn,.btn-check:disabled+.btn { pointer-events: none; filter: none; - opacity: 0.65; + opacity: .65; } .form-range { @@ -2417,11 +2457,11 @@ textarea.form-control-lg { } .form-range:focus::-webkit-slider-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25); } .form-range:focus::-moz-range-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25); } .form-range::-moz-focus-outer { @@ -2431,15 +2471,15 @@ textarea.form-control-lg { .form-range::-webkit-slider-thumb { width: 1rem; height: 1rem; - margin-top: -0.25rem; + margin-top: -.25rem; background-color: #0d6efd; border: 0; border-radius: 1rem; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; appearance: none; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-range::-webkit-slider-thumb { transition: none; } @@ -2451,7 +2491,7 @@ textarea.form-control-lg { .form-range::-webkit-slider-runnable-track { width: 100%; - height: 0.5rem; + height: .5rem; color: transparent; cursor: pointer; background-color: #dee2e6; @@ -2465,11 +2505,11 @@ textarea.form-control-lg { background-color: #0d6efd; border: 0; border-radius: 1rem; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; appearance: none; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-range::-moz-range-thumb { transition: none; } @@ -2481,7 +2521,7 @@ textarea.form-control-lg { .form-range::-moz-range-track { width: 100%; - height: 0.5rem; + height: .5rem; color: transparent; cursor: pointer; background-color: #dee2e6; @@ -2505,8 +2545,7 @@ textarea.form-control-lg { position: relative; } -.form-floating>.form-control, -.form-floating>.form-select { +.form-floating>.form-control,.form-floating>.form-select { height: 3.5rem; line-height: 1.25; } @@ -2516,53 +2555,50 @@ textarea.form-control-lg { top: 0; left: 0; height: 100%; - padding: 1rem 0.75rem; + padding: 1rem .75rem; pointer-events: none; border: 0 solid transparent; transform-origin: 0 0; - transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; + transition: opacity .1s ease-in-out,transform .1s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .form-floating>label { transition: none; } } .form-floating>.form-control { - padding: 1rem 0.75rem; + padding: 1rem .75rem; } .form-floating>.form-control::placeholder { color: transparent; } -.form-floating>.form-control:focus, -.form-floating>.form-control:not(:placeholder-shown) { +.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown) { padding-top: 1.625rem; - padding-bottom: 0.625rem; + padding-bottom: .625rem; } .form-floating>.form-control:-webkit-autofill { padding-top: 1.625rem; - padding-bottom: 0.625rem; + padding-bottom: .625rem; } .form-floating>.form-select { padding-top: 1.625rem; - padding-bottom: 0.625rem; + padding-bottom: .625rem; } -.form-floating>.form-control:focus~label, -.form-floating>.form-control:not(:placeholder-shown)~label, -.form-floating>.form-select~label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label { + opacity: .65; + transform: scale(.85) translateY(-0.5rem) translateX(0.15rem); } .form-floating>.form-control:-webkit-autofill~label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); + opacity: .65; + transform: scale(.85) translateY(-0.5rem) translateX(0.15rem); } .input-group { @@ -2573,16 +2609,14 @@ textarea.form-control-lg { width: 100%; } -.input-group>.form-control, -.input-group>.form-select { +.input-group>.form-control,.input-group>.form-select { position: relative; flex: 1 1 auto; width: 1%; min-width: 0; } -.input-group>.form-control:focus, -.input-group>.form-select:focus { +.input-group>.form-control:focus,.input-group>.form-select:focus { z-index: 3; } @@ -2598,7 +2632,7 @@ textarea.form-control-lg { .input-group-text { display: flex; align-items: center; - padding: 0.375rem 0.75rem; + padding: .375rem .75rem; font-size: 1rem; font-weight: 700; line-height: 1.5; @@ -2610,42 +2644,33 @@ textarea.form-control-lg { border-radius: 6px; } -.input-group-lg>.form-control, -.input-group-lg>.form-select, -.input-group-lg>.input-group-text, -.input-group-lg>.btn { - padding: 0.5rem 1rem; +.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn { + padding: .5rem 1rem; font-size: 1.25rem; - border-radius: 0.3rem; + border-radius: .3rem; } -.input-group-sm>.form-control, -.input-group-sm>.form-select, -.input-group-sm>.input-group-text, -.input-group-sm>.btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; +.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn { + padding: .25rem .5rem; + font-size: .875rem; + border-radius: .2rem; } -.input-group-lg>.form-select, -.input-group-sm>.form-select { +.input-group-lg>.form-select,.input-group-sm>.form-select { padding-right: 3rem; } -.input-group:not(.has-validation)> :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), -.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3) { +.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3) { border-top-right-radius: 0; border-bottom-right-radius: 0; } -.input-group.has-validation> :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), -.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4) { +.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4) { border-top-right-radius: 0; border-bottom-right-radius: 0; } -.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { +.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { margin-left: 0; border-top-left-radius: 0; border-bottom-left-radius: 0; @@ -2654,8 +2679,8 @@ textarea.form-control-lg { .valid-feedback { display: none; width: 100%; - margin-top: 0.25rem; - font-size: 0.875em; + margin-top: .25rem; + font-size: .875em; color: #198754; } @@ -2665,107 +2690,86 @@ textarea.form-control-lg { z-index: 5; display: none; max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; + padding: .25rem .5rem; + margin-top: .1rem; + font-size: .875rem; color: #fff; - background-color: rgba(25, 135, 84, 0.9); + background-color: rgba(25,135,84,.9); border-radius: 6px; } -.was-validated :valid~.valid-feedback, -.was-validated :valid~.valid-tooltip, -.is-valid~.valid-feedback, -.is-valid~.valid-tooltip { +.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip { display: block; } -.was-validated .form-control:valid, -.form-control.is-valid { +.was-validated .form-control:valid,.form-control.is-valid { border-color: #198754; padding-right: calc(1.5em + 0.75rem); - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz4=); background-repeat: no-repeat; background-position: right calc(0.375em + 0.1875rem) center; background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); } -.was-validated .form-control:valid:focus, -.form-control.is-valid:focus { +.was-validated .form-control:valid:focus,.form-control.is-valid:focus { border-color: #198754; - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); + box-shadow: 0 0 0 .25rem rgba(25,135,84,.25); } -.was-validated textarea.form-control:valid, -textarea.form-control.is-valid { +.was-validated textarea.form-control:valid,textarea.form-control.is-valid { padding-right: calc(1.5em + 0.75rem); background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); } -.was-validated .form-select:valid, -.form-select.is-valid { +.was-validated .form-select:valid,.form-select.is-valid { border-color: #198754; } -.was-validated .form-select:valid:not([multiple]):not([size]), -.was-validated .form-select:valid:not([multiple])[size="1"], -.form-select.is-valid:not([multiple]):not([size]), -.form-select.is-valid:not([multiple])[size="1"] { +.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"] { padding-right: 4.125rem; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); - background-position: right 0.75rem center, center right 2.25rem; - background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz4=); + background-position: right .75rem center,center right 2.25rem; + background-size: 16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); } -.was-validated .form-select:valid:focus, -.form-select.is-valid:focus { +.was-validated .form-select:valid:focus,.form-select.is-valid:focus { border-color: #198754; - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); + box-shadow: 0 0 0 .25rem rgba(25,135,84,.25); } -.was-validated .form-check-input:valid, -.form-check-input.is-valid { +.was-validated .form-check-input:valid,.form-check-input.is-valid { border-color: #198754; } -.was-validated .form-check-input:valid:checked, -.form-check-input.is-valid:checked { +.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked { background-color: #198754; } -.was-validated .form-check-input:valid:focus, -.form-check-input.is-valid:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus { + box-shadow: 0 0 0 .25rem rgba(25,135,84,.25); } -.was-validated .form-check-input:valid~.form-check-label, -.form-check-input.is-valid~.form-check-label { +.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label { color: #198754; } .form-check-inline .form-check-input~.valid-feedback { - margin-left: 0.5em; + margin-left: .5em; } -.was-validated .input-group .form-control:valid, -.input-group .form-control.is-valid, -.was-validated .input-group .form-select:valid, -.input-group .form-select.is-valid { +.was-validated .input-group .form-control:valid,.input-group .form-control.is-valid,.was-validated .input-group .form-select:valid,.input-group .form-select.is-valid { z-index: 1; } -.was-validated .input-group .form-control:valid:focus, -.input-group .form-control.is-valid:focus, -.was-validated .input-group .form-select:valid:focus, -.input-group .form-select.is-valid:focus { +.was-validated .input-group .form-control:valid:focus,.input-group .form-control.is-valid:focus,.was-validated .input-group .form-select:valid:focus,.input-group .form-select.is-valid:focus { z-index: 3; } .invalid-feedback { display: none; width: 100%; - margin-top: 0.25rem; - font-size: 0.875em; + margin-top: .25rem; + font-size: .875em; color: #dc3545; } @@ -2775,105 +2779,84 @@ textarea.form-control.is-valid { z-index: 5; display: none; max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; + padding: .25rem .5rem; + margin-top: .1rem; + font-size: .875rem; color: #fff; - background-color: rgba(220, 53, 69, 0.9); + background-color: rgba(220,53,69,.9); border-radius: 6px; } -.was-validated :invalid~.invalid-feedback, -.was-validated :invalid~.invalid-tooltip, -.is-invalid~.invalid-feedback, -.is-invalid~.invalid-tooltip { +.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip { display: block; } -.was-validated .form-control:invalid, -.form-control.is-invalid { +.was-validated .form-control:invalid,.form-control.is-invalid { border-color: #dc3545; padding-right: calc(1.5em + 0.75rem); - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyNkYzM1NDUnPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI2RjMzU0NScgc3Ryb2tlPSdub25lJy8+PC9zdmc+); background-repeat: no-repeat; background-position: right calc(0.375em + 0.1875rem) center; background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); } -.was-validated .form-control:invalid:focus, -.form-control.is-invalid:focus { +.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus { border-color: #dc3545; - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); + box-shadow: 0 0 0 .25rem rgba(220,53,69,.25); } -.was-validated textarea.form-control:invalid, -textarea.form-control.is-invalid { +.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid { padding-right: calc(1.5em + 0.75rem); background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); } -.was-validated .form-select:invalid, -.form-select.is-invalid { +.was-validated .form-select:invalid,.form-select.is-invalid { border-color: #dc3545; } -.was-validated .form-select:invalid:not([multiple]):not([size]), -.was-validated .form-select:invalid:not([multiple])[size="1"], -.form-select.is-invalid:not([multiple]):not([size]), -.form-select.is-invalid:not([multiple])[size="1"] { +.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"] { padding-right: 4.125rem; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e"); - background-position: right 0.75rem center, center right 2.25rem; - background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+),url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyNkYzM1NDUnPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI2RjMzU0NScgc3Ryb2tlPSdub25lJy8+PC9zdmc+); + background-position: right .75rem center,center right 2.25rem; + background-size: 16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); } -.was-validated .form-select:invalid:focus, -.form-select.is-invalid:focus { +.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus { border-color: #dc3545; - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); + box-shadow: 0 0 0 .25rem rgba(220,53,69,.25); } -.was-validated .form-check-input:invalid, -.form-check-input.is-invalid { +.was-validated .form-check-input:invalid,.form-check-input.is-invalid { border-color: #dc3545; } -.was-validated .form-check-input:invalid:checked, -.form-check-input.is-invalid:checked { +.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked { background-color: #dc3545; } -.was-validated .form-check-input:invalid:focus, -.form-check-input.is-invalid:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus { + box-shadow: 0 0 0 .25rem rgba(220,53,69,.25); } -.was-validated .form-check-input:invalid~.form-check-label, -.form-check-input.is-invalid~.form-check-label { +.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label { color: #dc3545; } .form-check-inline .form-check-input~.invalid-feedback { - margin-left: 0.5em; + margin-left: .5em; } -.was-validated .input-group .form-control:invalid, -.input-group .form-control.is-invalid, -.was-validated .input-group .form-select:invalid, -.input-group .form-select.is-invalid { +.was-validated .input-group .form-control:invalid,.input-group .form-control.is-invalid,.was-validated .input-group .form-select:invalid,.input-group .form-select.is-invalid { z-index: 2; } -.was-validated .input-group .form-control:invalid:focus, -.input-group .form-control.is-invalid:focus, -.was-validated .input-group .form-select:invalid:focus, -.input-group .form-select.is-invalid:focus { +.was-validated .input-group .form-control:invalid:focus,.input-group .form-control.is-invalid:focus,.was-validated .input-group .form-select:invalid:focus,.input-group .form-select.is-invalid:focus { z-index: 3; } .btn { display: inline-block; - font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-family: montserrat,system-ui,-apple-system,segoe ui,Roboto,helvetica neue,Arial,noto sans,liberation sans,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol,noto color emoji; font-weight: 700; line-height: 1.5; color: #212529; @@ -2884,13 +2867,13 @@ textarea.form-control.is-invalid { user-select: none; background-color: transparent; border: 1px solid transparent; - padding: 0.375rem 0.75rem; + padding: .375rem .75rem; font-size: 1rem; border-radius: 6px; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .btn { transition: none; } @@ -2900,17 +2883,14 @@ textarea.form-control.is-invalid { color: #212529; } -.btn-check:focus+.btn, -.btn:focus { +.btn-check:focus+.btn,.btn:focus { outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); } -.btn:disabled, -.btn.disabled, -fieldset:disabled .btn { +.btn:disabled,.btn.disabled,fieldset:disabled .btn { pointer-events: none; - opacity: 0.65; + opacity: .65; } .btn-primary { @@ -2925,34 +2905,24 @@ fieldset:disabled .btn { border-color: #0a58ca; } -.btn-check:focus+.btn-primary, -.btn-primary:focus { +.btn-check:focus+.btn-primary,.btn-primary:focus { color: #fff; background-color: #0b5ed7; border-color: #0a58ca; - box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); + box-shadow: 0 0 0 .25rem rgba(49,132,253,.5); } -.btn-check:checked+.btn-primary, -.btn-check:active+.btn-primary, -.btn-primary:active, -.btn-primary.active, -.show>.btn-primary.dropdown-toggle { +.btn-check:checked+.btn-primary,.btn-check:active+.btn-primary,.btn-primary:active,.btn-primary.active,.show>.btn-primary.dropdown-toggle { color: #fff; background-color: #0a58ca; border-color: #0a53be; } -.btn-check:checked+.btn-primary:focus, -.btn-check:active+.btn-primary:focus, -.btn-primary:active:focus, -.btn-primary.active:focus, -.show>.btn-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); +.btn-check:checked+.btn-primary:focus,.btn-check:active+.btn-primary:focus,.btn-primary:active:focus,.btn-primary.active:focus,.show>.btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(49,132,253,.5); } -.btn-primary:disabled, -.btn-primary.disabled { +.btn-primary:disabled,.btn-primary.disabled { color: #fff; background-color: #0d6efd; border-color: #0d6efd; @@ -2970,34 +2940,24 @@ fieldset:disabled .btn { border-color: #565e64; } -.btn-check:focus+.btn-secondary, -.btn-secondary:focus { +.btn-check:focus+.btn-secondary,.btn-secondary:focus { color: #fff; background-color: #5c636a; border-color: #565e64; - box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); + box-shadow: 0 0 0 .25rem rgba(130,138,145,.5); } -.btn-check:checked+.btn-secondary, -.btn-check:active+.btn-secondary, -.btn-secondary:active, -.btn-secondary.active, -.show>.btn-secondary.dropdown-toggle { +.btn-check:checked+.btn-secondary,.btn-check:active+.btn-secondary,.btn-secondary:active,.btn-secondary.active,.show>.btn-secondary.dropdown-toggle { color: #fff; background-color: #565e64; border-color: #51585e; } -.btn-check:checked+.btn-secondary:focus, -.btn-check:active+.btn-secondary:focus, -.btn-secondary:active:focus, -.btn-secondary.active:focus, -.show>.btn-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +.btn-check:checked+.btn-secondary:focus,.btn-check:active+.btn-secondary:focus,.btn-secondary:active:focus,.btn-secondary.active:focus,.show>.btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(130,138,145,.5); } -.btn-secondary:disabled, -.btn-secondary.disabled { +.btn-secondary:disabled,.btn-secondary.disabled { color: #fff; background-color: #6c757d; border-color: #6c757d; @@ -3015,34 +2975,24 @@ fieldset:disabled .btn { border-color: #146c43; } -.btn-check:focus+.btn-success, -.btn-success:focus { +.btn-check:focus+.btn-success,.btn-success:focus { color: #fff; background-color: #157347; border-color: #146c43; - box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); + box-shadow: 0 0 0 .25rem rgba(60,153,110,.5); } -.btn-check:checked+.btn-success, -.btn-check:active+.btn-success, -.btn-success:active, -.btn-success.active, -.show>.btn-success.dropdown-toggle { +.btn-check:checked+.btn-success,.btn-check:active+.btn-success,.btn-success:active,.btn-success.active,.show>.btn-success.dropdown-toggle { color: #fff; background-color: #146c43; border-color: #13653f; } -.btn-check:checked+.btn-success:focus, -.btn-check:active+.btn-success:focus, -.btn-success:active:focus, -.btn-success.active:focus, -.show>.btn-success.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5); +.btn-check:checked+.btn-success:focus,.btn-check:active+.btn-success:focus,.btn-success:active:focus,.btn-success.active:focus,.show>.btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(60,153,110,.5); } -.btn-success:disabled, -.btn-success.disabled { +.btn-success:disabled,.btn-success.disabled { color: #fff; background-color: #198754; border-color: #198754; @@ -3060,34 +3010,24 @@ fieldset:disabled .btn { border-color: #25cff2; } -.btn-check:focus+.btn-info, -.btn-info:focus { +.btn-check:focus+.btn-info,.btn-info:focus { color: #fff; background-color: #31d2f2; border-color: #25cff2; - box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); + box-shadow: 0 0 0 .25rem rgba(11,172,204,.5); } -.btn-check:checked+.btn-info, -.btn-check:active+.btn-info, -.btn-info:active, -.btn-info.active, -.show>.btn-info.dropdown-toggle { +.btn-check:checked+.btn-info,.btn-check:active+.btn-info,.btn-info:active,.btn-info.active,.show>.btn-info.dropdown-toggle { color: #000; background-color: #3dd5f3; border-color: #25cff2; } -.btn-check:checked+.btn-info:focus, -.btn-check:active+.btn-info:focus, -.btn-info:active:focus, -.btn-info.active:focus, -.show>.btn-info.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +.btn-check:checked+.btn-info:focus,.btn-check:active+.btn-info:focus,.btn-info:active:focus,.btn-info.active:focus,.show>.btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(11,172,204,.5); } -.btn-info:disabled, -.btn-info.disabled { +.btn-info:disabled,.btn-info.disabled { color: #000; background-color: #0dcaf0; border-color: #0dcaf0; @@ -3105,34 +3045,24 @@ fieldset:disabled .btn { border-color: #ffc720; } -.btn-check:focus+.btn-warning, -.btn-warning:focus { +.btn-check:focus+.btn-warning,.btn-warning:focus { color: #000; background-color: #ffca2c; border-color: #ffc720; - box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); + box-shadow: 0 0 0 .25rem rgba(217,164,6,.5); } -.btn-check:checked+.btn-warning, -.btn-check:active+.btn-warning, -.btn-warning:active, -.btn-warning.active, -.show>.btn-warning.dropdown-toggle { +.btn-check:checked+.btn-warning,.btn-check:active+.btn-warning,.btn-warning:active,.btn-warning.active,.show>.btn-warning.dropdown-toggle { color: #000; background-color: #ffcd39; border-color: #ffc720; } -.btn-check:checked+.btn-warning:focus, -.btn-check:active+.btn-warning:focus, -.btn-warning:active:focus, -.btn-warning.active:focus, -.show>.btn-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +.btn-check:checked+.btn-warning:focus,.btn-check:active+.btn-warning:focus,.btn-warning:active:focus,.btn-warning.active:focus,.show>.btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(217,164,6,.5); } -.btn-warning:disabled, -.btn-warning.disabled { +.btn-warning:disabled,.btn-warning.disabled { color: #000; background-color: #ffc107; border-color: #ffc107; @@ -3150,34 +3080,24 @@ fieldset:disabled .btn { border-color: #b02a37; } -.btn-check:focus+.btn-danger, -.btn-danger:focus { +.btn-check:focus+.btn-danger,.btn-danger:focus { color: #fff; background-color: #bb2d3b; border-color: #b02a37; - box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); + box-shadow: 0 0 0 .25rem rgba(225,83,97,.5); } -.btn-check:checked+.btn-danger, -.btn-check:active+.btn-danger, -.btn-danger:active, -.btn-danger.active, -.show>.btn-danger.dropdown-toggle { +.btn-check:checked+.btn-danger,.btn-check:active+.btn-danger,.btn-danger:active,.btn-danger.active,.show>.btn-danger.dropdown-toggle { color: #fff; background-color: #b02a37; border-color: #a52834; } -.btn-check:checked+.btn-danger:focus, -.btn-check:active+.btn-danger:focus, -.btn-danger:active:focus, -.btn-danger.active:focus, -.show>.btn-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5); +.btn-check:checked+.btn-danger:focus,.btn-check:active+.btn-danger:focus,.btn-danger:active:focus,.btn-danger.active:focus,.show>.btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(225,83,97,.5); } -.btn-danger:disabled, -.btn-danger.disabled { +.btn-danger:disabled,.btn-danger.disabled { color: #fff; background-color: #dc3545; border-color: #dc3545; @@ -3195,34 +3115,24 @@ fieldset:disabled .btn { border-color: #f9fafb; } -.btn-check:focus+.btn-light, -.btn-light:focus { +.btn-check:focus+.btn-light,.btn-light:focus { color: #000; background-color: #f9fafb; border-color: #f9fafb; - box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); + box-shadow: 0 0 0 .25rem rgba(211,212,213,.5); } -.btn-check:checked+.btn-light, -.btn-check:active+.btn-light, -.btn-light:active, -.btn-light.active, -.show>.btn-light.dropdown-toggle { +.btn-check:checked+.btn-light,.btn-check:active+.btn-light,.btn-light:active,.btn-light.active,.show>.btn-light.dropdown-toggle { color: #000; background-color: #f9fafb; border-color: #f9fafb; } -.btn-check:checked+.btn-light:focus, -.btn-check:active+.btn-light:focus, -.btn-light:active:focus, -.btn-light.active:focus, -.show>.btn-light.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +.btn-check:checked+.btn-light:focus,.btn-check:active+.btn-light:focus,.btn-light:active:focus,.btn-light.active:focus,.show>.btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(211,212,213,.5); } -.btn-light:disabled, -.btn-light.disabled { +.btn-light:disabled,.btn-light.disabled { color: #000; background-color: #f8f9fa; border-color: #f8f9fa; @@ -3240,34 +3150,24 @@ fieldset:disabled .btn { border-color: #1a1e21; } -.btn-check:focus+.btn-dark, -.btn-dark:focus { +.btn-check:focus+.btn-dark,.btn-dark:focus { color: #fff; background-color: #1c1f23; border-color: #1a1e21; - box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); + box-shadow: 0 0 0 .25rem rgba(66,70,73,.5); } -.btn-check:checked+.btn-dark, -.btn-check:active+.btn-dark, -.btn-dark:active, -.btn-dark.active, -.show>.btn-dark.dropdown-toggle { +.btn-check:checked+.btn-dark,.btn-check:active+.btn-dark,.btn-dark:active,.btn-dark.active,.show>.btn-dark.dropdown-toggle { color: #fff; background-color: #1a1e21; border-color: #191c1f; } -.btn-check:checked+.btn-dark:focus, -.btn-check:active+.btn-dark:focus, -.btn-dark:active:focus, -.btn-dark.active:focus, -.show>.btn-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +.btn-check:checked+.btn-dark:focus,.btn-check:active+.btn-dark:focus,.btn-dark:active:focus,.btn-dark.active:focus,.show>.btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 .25rem rgba(66,70,73,.5); } -.btn-dark:disabled, -.btn-dark.disabled { +.btn-dark:disabled,.btn-dark.disabled { color: #fff; background-color: #212529; border-color: #212529; @@ -3284,31 +3184,21 @@ fieldset:disabled .btn { border-color: #0d6efd; } -.btn-check:focus+.btn-outline-primary, -.btn-outline-primary:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus { + box-shadow: 0 0 0 .25rem rgba(13,110,253,.5); } -.btn-check:checked+.btn-outline-primary, -.btn-check:active+.btn-outline-primary, -.btn-outline-primary:active, -.btn-outline-primary.active, -.btn-outline-primary.dropdown-toggle.show { +.btn-check:checked+.btn-outline-primary,.btn-check:active+.btn-outline-primary,.btn-outline-primary:active,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show { color: #fff; background-color: #0d6efd; border-color: #0d6efd; } -.btn-check:checked+.btn-outline-primary:focus, -.btn-check:active+.btn-outline-primary:focus, -.btn-outline-primary:active:focus, -.btn-outline-primary.active:focus, -.btn-outline-primary.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); +.btn-check:checked+.btn-outline-primary:focus,.btn-check:active+.btn-outline-primary:focus,.btn-outline-primary:active:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(13,110,253,.5); } -.btn-outline-primary:disabled, -.btn-outline-primary.disabled { +.btn-outline-primary:disabled,.btn-outline-primary.disabled { color: #0d6efd; background-color: transparent; } @@ -3324,31 +3214,21 @@ fieldset:disabled .btn { border-color: #6c757d; } -.btn-check:focus+.btn-outline-secondary, -.btn-outline-secondary:focus { - box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus { + box-shadow: 0 0 0 .25rem rgba(108,117,125,.5); } -.btn-check:checked+.btn-outline-secondary, -.btn-check:active+.btn-outline-secondary, -.btn-outline-secondary:active, -.btn-outline-secondary.active, -.btn-outline-secondary.dropdown-toggle.show { +.btn-check:checked+.btn-outline-secondary,.btn-check:active+.btn-outline-secondary,.btn-outline-secondary:active,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show { color: #fff; background-color: #6c757d; border-color: #6c757d; } -.btn-check:checked+.btn-outline-secondary:focus, -.btn-check:active+.btn-outline-secondary:focus, -.btn-outline-secondary:active:focus, -.btn-outline-secondary.active:focus, -.btn-outline-secondary.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +.btn-check:checked+.btn-outline-secondary:focus,.btn-check:active+.btn-outline-secondary:focus,.btn-outline-secondary:active:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(108,117,125,.5); } -.btn-outline-secondary:disabled, -.btn-outline-secondary.disabled { +.btn-outline-secondary:disabled,.btn-outline-secondary.disabled { color: #6c757d; background-color: transparent; } @@ -3364,31 +3244,21 @@ fieldset:disabled .btn { border-color: #198754; } -.btn-check:focus+.btn-outline-success, -.btn-outline-success:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +.btn-check:focus+.btn-outline-success,.btn-outline-success:focus { + box-shadow: 0 0 0 .25rem rgba(25,135,84,.5); } -.btn-check:checked+.btn-outline-success, -.btn-check:active+.btn-outline-success, -.btn-outline-success:active, -.btn-outline-success.active, -.btn-outline-success.dropdown-toggle.show { +.btn-check:checked+.btn-outline-success,.btn-check:active+.btn-outline-success,.btn-outline-success:active,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show { color: #fff; background-color: #198754; border-color: #198754; } -.btn-check:checked+.btn-outline-success:focus, -.btn-check:active+.btn-outline-success:focus, -.btn-outline-success:active:focus, -.btn-outline-success.active:focus, -.btn-outline-success.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); +.btn-check:checked+.btn-outline-success:focus,.btn-check:active+.btn-outline-success:focus,.btn-outline-success:active:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(25,135,84,.5); } -.btn-outline-success:disabled, -.btn-outline-success.disabled { +.btn-outline-success:disabled,.btn-outline-success.disabled { color: #198754; background-color: transparent; } @@ -3404,31 +3274,21 @@ fieldset:disabled .btn { border-color: #0dcaf0; } -.btn-check:focus+.btn-outline-info, -.btn-outline-info:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +.btn-check:focus+.btn-outline-info,.btn-outline-info:focus { + box-shadow: 0 0 0 .25rem rgba(13,202,240,.5); } -.btn-check:checked+.btn-outline-info, -.btn-check:active+.btn-outline-info, -.btn-outline-info:active, -.btn-outline-info.active, -.btn-outline-info.dropdown-toggle.show { +.btn-check:checked+.btn-outline-info,.btn-check:active+.btn-outline-info,.btn-outline-info:active,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show { color: #000; background-color: #0dcaf0; border-color: #0dcaf0; } -.btn-check:checked+.btn-outline-info:focus, -.btn-check:active+.btn-outline-info:focus, -.btn-outline-info:active:focus, -.btn-outline-info.active:focus, -.btn-outline-info.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5); +.btn-check:checked+.btn-outline-info:focus,.btn-check:active+.btn-outline-info:focus,.btn-outline-info:active:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(13,202,240,.5); } -.btn-outline-info:disabled, -.btn-outline-info.disabled { +.btn-outline-info:disabled,.btn-outline-info.disabled { color: #0dcaf0; background-color: transparent; } @@ -3444,31 +3304,21 @@ fieldset:disabled .btn { border-color: #ffc107; } -.btn-check:focus+.btn-outline-warning, -.btn-outline-warning:focus { - box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus { + box-shadow: 0 0 0 .25rem rgba(255,193,7,.5); } -.btn-check:checked+.btn-outline-warning, -.btn-check:active+.btn-outline-warning, -.btn-outline-warning:active, -.btn-outline-warning.active, -.btn-outline-warning.dropdown-toggle.show { +.btn-check:checked+.btn-outline-warning,.btn-check:active+.btn-outline-warning,.btn-outline-warning:active,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show { color: #000; background-color: #ffc107; border-color: #ffc107; } -.btn-check:checked+.btn-outline-warning:focus, -.btn-check:active+.btn-outline-warning:focus, -.btn-outline-warning:active:focus, -.btn-outline-warning.active:focus, -.btn-outline-warning.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5); +.btn-check:checked+.btn-outline-warning:focus,.btn-check:active+.btn-outline-warning:focus,.btn-outline-warning:active:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(255,193,7,.5); } -.btn-outline-warning:disabled, -.btn-outline-warning.disabled { +.btn-outline-warning:disabled,.btn-outline-warning.disabled { color: #ffc107; background-color: transparent; } @@ -3484,31 +3334,21 @@ fieldset:disabled .btn { border-color: #dc3545; } -.btn-check:focus+.btn-outline-danger, -.btn-outline-danger:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus { + box-shadow: 0 0 0 .25rem rgba(220,53,69,.5); } -.btn-check:checked+.btn-outline-danger, -.btn-check:active+.btn-outline-danger, -.btn-outline-danger:active, -.btn-outline-danger.active, -.btn-outline-danger.dropdown-toggle.show { +.btn-check:checked+.btn-outline-danger,.btn-check:active+.btn-outline-danger,.btn-outline-danger:active,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show { color: #fff; background-color: #dc3545; border-color: #dc3545; } -.btn-check:checked+.btn-outline-danger:focus, -.btn-check:active+.btn-outline-danger:focus, -.btn-outline-danger:active:focus, -.btn-outline-danger.active:focus, -.btn-outline-danger.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5); +.btn-check:checked+.btn-outline-danger:focus,.btn-check:active+.btn-outline-danger:focus,.btn-outline-danger:active:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(220,53,69,.5); } -.btn-outline-danger:disabled, -.btn-outline-danger.disabled { +.btn-outline-danger:disabled,.btn-outline-danger.disabled { color: #dc3545; background-color: transparent; } @@ -3524,31 +3364,21 @@ fieldset:disabled .btn { border-color: #f8f9fa; } -.btn-check:focus+.btn-outline-light, -.btn-outline-light:focus { - box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +.btn-check:focus+.btn-outline-light,.btn-outline-light:focus { + box-shadow: 0 0 0 .25rem rgba(248,249,250,.5); } -.btn-check:checked+.btn-outline-light, -.btn-check:active+.btn-outline-light, -.btn-outline-light:active, -.btn-outline-light.active, -.btn-outline-light.dropdown-toggle.show { +.btn-check:checked+.btn-outline-light,.btn-check:active+.btn-outline-light,.btn-outline-light:active,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show { color: #000; background-color: #f8f9fa; border-color: #f8f9fa; } -.btn-check:checked+.btn-outline-light:focus, -.btn-check:active+.btn-outline-light:focus, -.btn-outline-light:active:focus, -.btn-outline-light.active:focus, -.btn-outline-light.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +.btn-check:checked+.btn-outline-light:focus,.btn-check:active+.btn-outline-light:focus,.btn-outline-light:active:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(248,249,250,.5); } -.btn-outline-light:disabled, -.btn-outline-light.disabled { +.btn-outline-light:disabled,.btn-outline-light.disabled { color: #f8f9fa; background-color: transparent; } @@ -3564,31 +3394,21 @@ fieldset:disabled .btn { border-color: #212529; } -.btn-check:focus+.btn-outline-dark, -.btn-outline-dark:focus { - box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus { + box-shadow: 0 0 0 .25rem rgba(33,37,41,.5); } -.btn-check:checked+.btn-outline-dark, -.btn-check:active+.btn-outline-dark, -.btn-outline-dark:active, -.btn-outline-dark.active, -.btn-outline-dark.dropdown-toggle.show { +.btn-check:checked+.btn-outline-dark,.btn-check:active+.btn-outline-dark,.btn-outline-dark:active,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show { color: #fff; background-color: #212529; border-color: #212529; } -.btn-check:checked+.btn-outline-dark:focus, -.btn-check:active+.btn-outline-dark:focus, -.btn-outline-dark:active:focus, -.btn-outline-dark.active:focus, -.btn-outline-dark.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +.btn-check:checked+.btn-outline-dark:focus,.btn-check:active+.btn-outline-dark:focus,.btn-outline-dark:active:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus { + box-shadow: 0 0 0 .25rem rgba(33,37,41,.5); } -.btn-outline-dark:disabled, -.btn-outline-dark.disabled { +.btn-outline-dark:disabled,.btn-outline-dark.disabled { color: #212529; background-color: transparent; } @@ -3603,43 +3423,38 @@ fieldset:disabled .btn { color: #0a58ca; } -.btn-link:disabled, -.btn-link.disabled { +.btn-link:disabled,.btn-link.disabled { color: #6c757d; } -.btn-lg, -.btn-group-lg>.btn { - padding: 0.5rem 1rem; +.btn-lg,.btn-group-lg>.btn { + padding: .5rem 1rem; font-size: 1.25rem; - border-radius: 0.3rem; + border-radius: .3rem; } -.btn-sm, -.btn-group-sm>.btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; +.btn-sm,.btn-group-sm>.btn { + padding: .25rem .5rem; + font-size: .875rem; + border-radius: .2rem; color: #fff; } .btn-primary { - background-color: #7289DA; - border-color: #7289DA; + background-color: #7289da; + border-color: #7289da; } -.btn-primary:hover, -.btn-primary:focus, -.btn-primary:active { - background-color: #4E5D94; - border-color: #4E5D94; +.btn-primary:hover,.btn-primary:focus,.btn-primary:active { + background-color: #4e5d94; + border-color: #4e5d94; } .fade { - transition: opacity 0.15s linear; + transition: opacity .15s linear; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .fade { transition: none; } @@ -3656,19 +3471,16 @@ fieldset:disabled .btn { .collapsing { height: 0; overflow: hidden; - transition: height 0.35s ease; + transition: height .35s ease; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .collapsing { transition: none; } } -.dropup, -.dropend, -.dropdown, -.dropstart { +.dropup,.dropend,.dropdown,.dropstart { position: relative; } @@ -3678,13 +3490,13 @@ fieldset:disabled .btn { .dropdown-toggle::after { display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; + margin-left: .255em; + vertical-align: .255em; content: ""; - border-top: 0.3em solid; - border-right: 0.3em solid transparent; + border-top: .3em solid; + border-right: .3em solid transparent; border-bottom: 0; - border-left: 0.3em solid transparent; + border-left: .3em solid transparent; } .dropdown-toggle:empty::after { @@ -3696,7 +3508,7 @@ fieldset:disabled .btn { z-index: 1000; display: none; min-width: 10rem; - padding: 0.5rem 0; + padding: .5rem 0; margin: 0; font-size: 1rem; color: #212529; @@ -3704,14 +3516,14 @@ fieldset:disabled .btn { list-style: none; background-color: #fff; background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.15); + border: 1px solid rgba(0,0,0,.15); border-radius: 6px; } .dropdown-menu[data-bs-popper] { top: 100%; left: 0; - margin-top: 0.125rem; + margin-top: .125rem; } .dropdown-menu-start { @@ -3732,85 +3544,100 @@ fieldset:disabled .btn { left: auto; } -@media (min-width: 576px) { +@media(min-width:576px) { .dropdown-menu-sm-start { --bs-position: start; } + .dropdown-menu-sm-start[data-bs-popper] { right: auto; left: 0; } + .dropdown-menu-sm-end { --bs-position: end; } + .dropdown-menu-sm-end[data-bs-popper] { right: 0; left: auto; } } -@media (min-width: 768px) { +@media(min-width:768px) { .dropdown-menu-md-start { --bs-position: start; } + .dropdown-menu-md-start[data-bs-popper] { right: auto; left: 0; } + .dropdown-menu-md-end { --bs-position: end; } + .dropdown-menu-md-end[data-bs-popper] { right: 0; left: auto; } } -@media (min-width: 992px) { +@media(min-width:992px) { .dropdown-menu-lg-start { --bs-position: start; } + .dropdown-menu-lg-start[data-bs-popper] { right: auto; left: 0; } + .dropdown-menu-lg-end { --bs-position: end; } + .dropdown-menu-lg-end[data-bs-popper] { right: 0; left: auto; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .dropdown-menu-xl-start { --bs-position: start; } + .dropdown-menu-xl-start[data-bs-popper] { right: auto; left: 0; } + .dropdown-menu-xl-end { --bs-position: end; } + .dropdown-menu-xl-end[data-bs-popper] { right: 0; left: auto; } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .dropdown-menu-xxl-start { --bs-position: start; } + .dropdown-menu-xxl-start[data-bs-popper] { right: auto; left: 0; } + .dropdown-menu-xxl-end { --bs-position: end; } + .dropdown-menu-xxl-end[data-bs-popper] { right: 0; left: auto; @@ -3821,18 +3648,18 @@ fieldset:disabled .btn { top: auto; bottom: 100%; margin-top: 0; - margin-bottom: 0.125rem; + margin-bottom: .125rem; } .dropup .dropdown-toggle::after { display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; + margin-left: .255em; + vertical-align: .255em; content: ""; border-top: 0; - border-right: 0.3em solid transparent; - border-bottom: 0.3em solid; - border-left: 0.3em solid transparent; + border-right: .3em solid transparent; + border-bottom: .3em solid; + border-left: .3em solid transparent; } .dropup .dropdown-toggle:empty::after { @@ -3844,18 +3671,18 @@ fieldset:disabled .btn { right: auto; left: 100%; margin-top: 0; - margin-left: 0.125rem; + margin-left: .125rem; } .dropend .dropdown-toggle::after { display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; + margin-left: .255em; + vertical-align: .255em; content: ""; - border-top: 0.3em solid transparent; + border-top: .3em solid transparent; border-right: 0; - border-bottom: 0.3em solid transparent; - border-left: 0.3em solid; + border-bottom: .3em solid transparent; + border-left: .3em solid; } .dropend .dropdown-toggle:empty::after { @@ -3871,13 +3698,13 @@ fieldset:disabled .btn { right: 100%; left: auto; margin-top: 0; - margin-right: 0.125rem; + margin-right: .125rem; } .dropstart .dropdown-toggle::after { display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; + margin-left: .255em; + vertical-align: .255em; content: ""; } @@ -3887,12 +3714,12 @@ fieldset:disabled .btn { .dropstart .dropdown-toggle::before { display: inline-block; - margin-right: 0.255em; - vertical-align: 0.255em; + margin-right: .255em; + vertical-align: .255em; content: ""; - border-top: 0.3em solid transparent; - border-right: 0.3em solid; - border-bottom: 0.3em solid transparent; + border-top: .3em solid transparent; + border-right: .3em solid; + border-bottom: .3em solid transparent; } .dropstart .dropdown-toggle:empty::after { @@ -3905,15 +3732,15 @@ fieldset:disabled .btn { .dropdown-divider { height: 0; - margin: 0.5rem 0; + margin: .5rem 0; overflow: hidden; - border-top: 1px solid rgba(0, 0, 0, 0.15); + border-top: 1px solid rgba(0,0,0,.15); } .dropdown-item { display: block; width: 100%; - padding: 0.25rem 1rem; + padding: .25rem 1rem; clear: both; font-weight: 400; color: #212529; @@ -3924,21 +3751,18 @@ fieldset:disabled .btn { border: 0; } -.dropdown-item:hover, -.dropdown-item:focus { +.dropdown-item:hover,.dropdown-item:focus { color: #1e2125; background-color: #e9ecef; } -.dropdown-item.active, -.dropdown-item:active { +.dropdown-item.active,.dropdown-item:active { color: #fff; text-decoration: none; background-color: #0d6efd; } -.dropdown-item.disabled, -.dropdown-item:disabled { +.dropdown-item.disabled,.dropdown-item:disabled { color: #adb5bd; pointer-events: none; background-color: transparent; @@ -3950,48 +3774,45 @@ fieldset:disabled .btn { .dropdown-header { display: block; - padding: 0.5rem 1rem; + padding: .5rem 1rem; margin-bottom: 0; - font-size: 0.875rem; + font-size: .875rem; color: #6c757d; white-space: nowrap; } .dropdown-item-text { display: block; - padding: 0.25rem 1rem; + padding: .25rem 1rem; color: #212529; } .dropdown-menu-dark { color: #dee2e6; background-color: #343a40; - border-color: rgba(0, 0, 0, 0.15); + border-color: rgba(0,0,0,.15); } .dropdown-menu-dark .dropdown-item { color: #dee2e6; } -.dropdown-menu-dark .dropdown-item:hover, -.dropdown-menu-dark .dropdown-item:focus { +.dropdown-menu-dark .dropdown-item:hover,.dropdown-menu-dark .dropdown-item:focus { color: #fff; - background-color: rgba(255, 255, 255, 0.15); + background-color: rgba(255,255,255,.15); } -.dropdown-menu-dark .dropdown-item.active, -.dropdown-menu-dark .dropdown-item:active { +.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active { color: #fff; background-color: #0d6efd; } -.dropdown-menu-dark .dropdown-item.disabled, -.dropdown-menu-dark .dropdown-item:disabled { +.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled { color: #adb5bd; } .dropdown-menu-dark .dropdown-divider { - border-color: rgba(0, 0, 0, 0.15); + border-color: rgba(0,0,0,.15); } .dropdown-menu-dark .dropdown-item-text { @@ -4002,31 +3823,18 @@ fieldset:disabled .btn { color: #adb5bd; } -.btn-group, -.btn-group-vertical { +.btn-group,.btn-group-vertical { position: relative; display: inline-flex; vertical-align: middle; } -.btn-group>.btn, -.btn-group-vertical>.btn { +.btn-group>.btn,.btn-group-vertical>.btn { position: relative; flex: 1 1 auto; } -.btn-group>.btn-check:checked+.btn, -.btn-group>.btn-check:focus+.btn, -.btn-group>.btn:hover, -.btn-group>.btn:focus, -.btn-group>.btn:active, -.btn-group>.btn.active, -.btn-group-vertical>.btn-check:checked+.btn, -.btn-group-vertical>.btn-check:focus+.btn, -.btn-group-vertical>.btn:hover, -.btn-group-vertical>.btn:focus, -.btn-group-vertical>.btn:active, -.btn-group-vertical>.btn.active { +.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active { z-index: 1; } @@ -4040,32 +3848,26 @@ fieldset:disabled .btn { width: auto; } -.btn-group>.btn:not(:first-child), -.btn-group>.btn-group:not(:first-child) { +.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child) { margin-left: -1px; } -.btn-group>.btn:not(:last-child):not(.dropdown-toggle), -.btn-group>.btn-group:not(:last-child)>.btn { +.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn-group:not(:last-child)>.btn { border-top-right-radius: 0; border-bottom-right-radius: 0; } -.btn-group>.btn:nth-child(n+3), -.btn-group> :not(.btn-check)+.btn, -.btn-group>.btn-group:not(:first-child)>.btn { +.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn { border-top-left-radius: 0; border-bottom-left-radius: 0; } .dropdown-toggle-split { - padding-right: 0.5625rem; - padding-left: 0.5625rem; + padding-right: .5625rem; + padding-left: .5625rem; } -.dropdown-toggle-split::after, -.dropup .dropdown-toggle-split::after, -.dropend .dropdown-toggle-split::after { +.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after { margin-left: 0; } @@ -4073,16 +3875,14 @@ fieldset:disabled .btn { margin-right: 0; } -.btn-sm+.dropdown-toggle-split, -.btn-group-sm>.btn+.dropdown-toggle-split { - padding-right: 0.375rem; - padding-left: 0.375rem; +.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split { + padding-right: .375rem; + padding-left: .375rem; } -.btn-lg+.dropdown-toggle-split, -.btn-group-lg>.btn+.dropdown-toggle-split { - padding-right: 0.75rem; - padding-left: 0.75rem; +.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split { + padding-right: .75rem; + padding-left: .75rem; } .btn-group-vertical { @@ -4091,24 +3891,20 @@ fieldset:disabled .btn { justify-content: center; } -.btn-group-vertical>.btn, -.btn-group-vertical>.btn-group { +.btn-group-vertical>.btn,.btn-group-vertical>.btn-group { width: 100%; } -.btn-group-vertical>.btn:not(:first-child), -.btn-group-vertical>.btn-group:not(:first-child) { +.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child) { margin-top: -1px; } -.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle), -.btn-group-vertical>.btn-group:not(:last-child)>.btn { +.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn { border-bottom-right-radius: 0; border-bottom-left-radius: 0; } -.btn-group-vertical>.btn~.btn, -.btn-group-vertical>.btn-group:not(:first-child)>.btn { +.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn { border-top-left-radius: 0; border-top-right-radius: 0; } @@ -4123,20 +3919,19 @@ fieldset:disabled .btn { .nav-link { display: block; - padding: 0.5rem 1rem; + padding: .5rem 1rem; color: #0d6efd; text-decoration: none; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; + transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .nav-link { transition: none; } } -.nav-link:hover, -.nav-link:focus { +.nav-link:hover,.nav-link:focus { color: #0a58ca; } @@ -4152,14 +3947,13 @@ fieldset:disabled .btn { .nav-tabs .nav-link { margin-bottom: -1px; - background: none; + background: 0 0; border: 1px solid transparent; border-top-left-radius: 6px; border-top-right-radius: 6px; } -.nav-tabs .nav-link:hover, -.nav-tabs .nav-link:focus { +.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus { border-color: #e9ecef #e9ecef #dee2e6; isolation: isolate; } @@ -4170,8 +3964,7 @@ fieldset:disabled .btn { border-color: transparent; } -.nav-tabs .nav-link.active, -.nav-tabs .nav-item.show .nav-link { +.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link { color: #495057; background-color: #fff; border-color: #dee2e6 #dee2e6 #fff; @@ -4184,32 +3977,28 @@ fieldset:disabled .btn { } .nav-pills .nav-link { - background: none; + background: 0 0; border: 0; border-radius: 6px; } -.nav-pills .nav-link.active, -.nav-pills .show>.nav-link { +.nav-pills .nav-link.active,.nav-pills .show>.nav-link { color: #fff; background-color: #0d6efd; } -.nav-fill>.nav-link, -.nav-fill .nav-item { +.nav-fill>.nav-link,.nav-fill .nav-item { flex: 1 1 auto; text-align: center; } -.nav-justified>.nav-link, -.nav-justified .nav-item { +.nav-justified>.nav-link,.nav-justified .nav-item { flex-basis: 0; flex-grow: 1; text-align: center; } -.nav-fill .nav-item .nav-link, -.nav-justified .nav-item .nav-link { +.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link { width: 100%; } @@ -4227,17 +4016,11 @@ fieldset:disabled .btn { flex-wrap: wrap; align-items: center; justify-content: space-between; - padding-top: 0.5rem; - padding-bottom: 0.5rem; + padding-top: .5rem; + padding-bottom: .5rem; } -.navbar>.container, -.navbar>.container-fluid, -.navbar>.container-sm, -.navbar>.container-md, -.navbar>.container-lg, -.navbar>.container-xl, -.navbar>.container-xxl { +.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl { display: flex; flex-wrap: inherit; align-items: center; @@ -4245,8 +4028,8 @@ fieldset:disabled .btn { } .navbar-brand { - padding-top: 0.3125rem; - padding-bottom: 0.3125rem; + padding-top: .3125rem; + padding-bottom: .3125rem; margin-right: 1rem; font-size: 1.25rem; text-decoration: none; @@ -4271,8 +4054,8 @@ fieldset:disabled .btn { } .navbar-text { - padding-top: 0.5rem; - padding-bottom: 0.5rem; + padding-top: .5rem; + padding-bottom: .5rem; } .navbar-collapse { @@ -4282,16 +4065,16 @@ fieldset:disabled .btn { } .navbar-toggler { - padding: 0.25rem 0.75rem; + padding: .25rem .75rem; font-size: 1.25rem; line-height: 1; background-color: transparent; border: 1px solid transparent; border-radius: 6px; - transition: box-shadow 0.15s ease-in-out; + transition: box-shadow .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .navbar-toggler { transition: none; } @@ -4304,7 +4087,7 @@ fieldset:disabled .btn { .navbar-toggler:focus { text-decoration: none; outline: 0; - box-shadow: 0 0 0 0.25rem; + box-shadow: 0 0 0 .25rem; } .navbar-toggler-icon { @@ -4318,140 +4101,170 @@ fieldset:disabled .btn { } .navbar-nav-scroll { - max-height: var(--bs-scroll-height, 75vh); + max-height: var(--bs-scroll-height,75vh); overflow-y: auto; } -@media (min-width: 576px) { +@media(min-width:576px) { .navbar-expand-sm { flex-wrap: nowrap; justify-content: flex-start; } + .navbar-expand-sm .navbar-nav { flex-direction: row; } + .navbar-expand-sm .navbar-nav .dropdown-menu { position: absolute; } + .navbar-expand-sm .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + padding-right: .5rem; + padding-left: .5rem; } + .navbar-expand-sm .navbar-nav-scroll { overflow: visible; } + .navbar-expand-sm .navbar-collapse { - display: flex !important; + display: flex!important; flex-basis: auto; } + .navbar-expand-sm .navbar-toggler { display: none; } } -@media (min-width: 768px) { +@media(min-width:768px) { .navbar-expand-md { flex-wrap: nowrap; justify-content: flex-start; } + .navbar-expand-md .navbar-nav { flex-direction: row; } + .navbar-expand-md .navbar-nav .dropdown-menu { position: absolute; } + .navbar-expand-md .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + padding-right: .5rem; + padding-left: .5rem; } + .navbar-expand-md .navbar-nav-scroll { overflow: visible; } + .navbar-expand-md .navbar-collapse { - display: flex !important; + display: flex!important; flex-basis: auto; } + .navbar-expand-md .navbar-toggler { display: none; } } -@media (min-width: 992px) { +@media(min-width:992px) { .navbar-expand-lg { flex-wrap: nowrap; justify-content: flex-start; } + .navbar-expand-lg .navbar-nav { flex-direction: row; } + .navbar-expand-lg .navbar-nav .dropdown-menu { position: absolute; } + .navbar-expand-lg .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + padding-right: .5rem; + padding-left: .5rem; } + .navbar-expand-lg .navbar-nav-scroll { overflow: visible; } + .navbar-expand-lg .navbar-collapse { - display: flex !important; + display: flex!important; flex-basis: auto; } + .navbar-expand-lg .navbar-toggler { display: none; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .navbar-expand-xl { flex-wrap: nowrap; justify-content: flex-start; } + .navbar-expand-xl .navbar-nav { flex-direction: row; } + .navbar-expand-xl .navbar-nav .dropdown-menu { position: absolute; } + .navbar-expand-xl .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + padding-right: .5rem; + padding-left: .5rem; } + .navbar-expand-xl .navbar-nav-scroll { overflow: visible; } + .navbar-expand-xl .navbar-collapse { - display: flex !important; + display: flex!important; flex-basis: auto; } + .navbar-expand-xl .navbar-toggler { display: none; } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .navbar-expand-xxl { flex-wrap: nowrap; justify-content: flex-start; } + .navbar-expand-xxl .navbar-nav { flex-direction: row; } + .navbar-expand-xxl .navbar-nav .dropdown-menu { position: absolute; } + .navbar-expand-xxl .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + padding-right: .5rem; + padding-left: .5rem; } + .navbar-expand-xxl .navbar-nav-scroll { overflow: visible; } + .navbar-expand-xxl .navbar-collapse { - display: flex !important; + display: flex!important; flex-basis: auto; } + .navbar-expand-xxl .navbar-toggler { display: none; } @@ -4471,8 +4284,8 @@ fieldset:disabled .btn { } .navbar-expand .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + padding-right: .5rem; + padding-left: .5rem; } .navbar-expand .navbar-nav-scroll { @@ -4480,7 +4293,7 @@ fieldset:disabled .btn { } .navbar-expand .navbar-collapse { - display: flex !important; + display: flex!important; flex-basis: auto; } @@ -4489,94 +4302,84 @@ fieldset:disabled .btn { } .navbar-light .navbar-brand { - color: rgba(0, 0, 0, 0.9); + color: rgba(0,0,0,.9); } -.navbar-light .navbar-brand:hover, -.navbar-light .navbar-brand:focus { - color: rgba(0, 0, 0, 0.9); +.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus { + color: rgba(0,0,0,.9); } .navbar-light .navbar-nav .nav-link { - color: rgba(0, 0, 0, 0.55); + color: rgba(0,0,0,.55); } -.navbar-light .navbar-nav .nav-link:hover, -.navbar-light .navbar-nav .nav-link:focus { - color: rgba(0, 0, 0, 0.7); +.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus { + color: rgba(0,0,0,.7); } .navbar-light .navbar-nav .nav-link.disabled { - color: rgba(0, 0, 0, 0.3); + color: rgba(0,0,0,.3); } -.navbar-light .navbar-nav .show>.nav-link, -.navbar-light .navbar-nav .nav-link.active { - color: rgba(0, 0, 0, 0.9); +.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .nav-link.active { + color: rgba(0,0,0,.9); } .navbar-light .navbar-toggler { - color: rgba(0, 0, 0, 0.55); - border-color: rgba(0, 0, 0, 0.1); + color: rgba(0,0,0,.55); + border-color: rgba(0,0,0,.1); } .navbar-light .navbar-toggler-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPSdyZ2JhKDAsIDAsIDAsIDAuNTUpJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPg==); } .navbar-light .navbar-text { - color: rgba(0, 0, 0, 0.55); + color: rgba(0,0,0,.55); } -.navbar-light .navbar-text a, -.navbar-light .navbar-text a:hover, -.navbar-light .navbar-text a:focus { - color: rgba(0, 0, 0, 0.9); +.navbar-light .navbar-text a,.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus { + color: rgba(0,0,0,.9); } .navbar-dark .navbar-brand { color: #fff; } -.navbar-dark .navbar-brand:hover, -.navbar-dark .navbar-brand:focus { +.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus { color: #fff; } .navbar-dark .navbar-nav .nav-link { - color: rgba(255, 255, 255, 0.55); + color: rgba(255,255,255,.55); } -.navbar-dark .navbar-nav .nav-link:hover, -.navbar-dark .navbar-nav .nav-link:focus { - color: rgba(255, 255, 255, 0.75); +.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255,255,255,.75); } .navbar-dark .navbar-nav .nav-link.disabled { - color: rgba(255, 255, 255, 0.25); + color: rgba(255,255,255,.25); } -.navbar-dark .navbar-nav .show>.nav-link, -.navbar-dark .navbar-nav .nav-link.active { +.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .nav-link.active { color: #fff; } .navbar-dark .navbar-toggler { - color: rgba(255, 255, 255, 0.55); - border-color: rgba(255, 255, 255, 0.1); + color: rgba(255,255,255,.55); + border-color: rgba(255,255,255,.1); } .navbar-dark .navbar-toggler-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPSdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPg==); } .navbar-dark .navbar-text { - color: rgba(255, 255, 255, 0.55); + color: rgba(255,255,255,.55); } -.navbar-dark .navbar-text a, -.navbar-dark .navbar-text a:hover, -.navbar-dark .navbar-text a:focus { +.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus { color: #fff; } @@ -4588,7 +4391,7 @@ fieldset:disabled .btn { word-wrap: break-word; background-color: #fff; background-clip: border-box; - border: 1px solid rgba(0, 0, 0, 0.125); + border: 1px solid rgba(0,0,0,.125); border-radius: 6px; } @@ -4614,23 +4417,22 @@ fieldset:disabled .btn { border-bottom-left-radius: 5px; } -.card>.card-header+.list-group, -.card>.list-group+.card-footer { +.card>.card-header+.list-group,.card>.list-group+.card-footer { border-top: 0; } .card-body { flex: 1 1 auto; - padding: 1rem 1rem; - background-color: #121212; + padding: 1rem; + background-color: #383C4A; } .card-title { - margin-bottom: 0.5rem; + margin-bottom: .5rem; } .card-subtitle { - margin-top: -0.25rem; + margin-top: -.25rem; margin-bottom: 0; } @@ -4647,10 +4449,10 @@ fieldset:disabled .btn { } .card-header { - padding: 0.5rem 1rem; + padding: .5rem 1rem; margin-bottom: 0; - background-color: rgba(0, 0, 0, 0.03); - border-bottom: 1px solid rgba(0, 0, 0, 0.125); + background-color: rgba(0,0,0,.03); + border-bottom: 1px solid rgba(0,0,0,.125); } .card-header:first-child { @@ -4658,9 +4460,9 @@ fieldset:disabled .btn { } .card-footer { - padding: 0.5rem 1rem; - background-color: rgba(0, 0, 0, 0.03); - border-top: 1px solid rgba(0, 0, 0, 0.125); + padding: .5rem 1rem; + background-color: rgba(0,0,0,.03); + border-top: 1px solid rgba(0,0,0,.125); } .card-footer:last-child { @@ -4668,15 +4470,15 @@ fieldset:disabled .btn { } .card-header-tabs { - margin-right: -0.5rem; - margin-bottom: -0.5rem; - margin-left: -0.5rem; + margin-right: -.5rem; + margin-bottom: -.5rem; + margin-left: -.5rem; border-bottom: 0; } .card-header-pills { - margin-right: -0.5rem; - margin-left: -0.5rem; + margin-right: -.5rem; + margin-left: -.5rem; } .card-img-overlay { @@ -4689,63 +4491,63 @@ fieldset:disabled .btn { border-radius: 5px; } -.card-img, -.card-img-top, -.card-img-bottom { +.card-img,.card-img-top,.card-img-bottom { width: 100%; } -.card-img, -.card-img-top { +.card-img,.card-img-top { border-top-left-radius: 5px; border-top-right-radius: 5px; } -.card-img, -.card-img-bottom { +.card-img,.card-img-bottom { border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; } .card-group>.card { - margin-bottom: 0.75rem; + margin-bottom: .75rem; } -@media (min-width: 576px) { +@media(min-width:576px) { .card-group { display: flex; flex-flow: row wrap; } + .card-group>.card { flex: 1 0 0%; margin-bottom: 0; } + .card-group>.card+.card { margin-left: 0; border-left: 0; } + .card-group>.card:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; } - .card-group>.card:not(:last-child) .card-img-top, - .card-group>.card:not(:last-child) .card-header { + + .card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header { border-top-right-radius: 0; } - .card-group>.card:not(:last-child) .card-img-bottom, - .card-group>.card:not(:last-child) .card-footer { + + .card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer { border-bottom-right-radius: 0; } + .card-group>.card:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; } - .card-group>.card:not(:first-child) .card-img-top, - .card-group>.card:not(:first-child) .card-header { + + .card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header { border-top-left-radius: 0; } - .card-group>.card:not(:first-child) .card-img-bottom, - .card-group>.card:not(:first-child) .card-footer { + + .card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer { border-bottom-left-radius: 0; } } @@ -4763,10 +4565,10 @@ fieldset:disabled .btn { border: 0; border-radius: 0; overflow-anchor: none; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; + transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .accordion-button { transition: none; } @@ -4775,11 +4577,11 @@ fieldset:disabled .btn { .accordion-button:not(.collapsed) { color: #0c63e4; background-color: #e7f1ff; - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125); + box-shadow: inset 0 -1px 0 rgba(0,0,0,.125); } .accordion-button:not(.collapsed)::after { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nIzBjNjNlNCc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+); transform: rotate(-180deg); } @@ -4789,13 +4591,13 @@ fieldset:disabled .btn { height: 1.25rem; margin-left: auto; content: ""; - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nIzIxMjUyOSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+); background-repeat: no-repeat; background-size: 1.25rem; - transition: transform 0.2s ease-in-out; + transition: transform .2s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .accordion-button::after { transition: none; } @@ -4809,7 +4611,7 @@ fieldset:disabled .btn { z-index: 3; border-color: #86b7fe; outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); } .accordion-header { @@ -4818,7 +4620,7 @@ fieldset:disabled .btn { .accordion-item { background-color: #fff; - border: 1px solid rgba(0, 0, 0, 0.125); + border: 1px solid rgba(0,0,0,.125); } .accordion-item:first-of-type { @@ -4879,21 +4681,20 @@ fieldset:disabled .btn { .breadcrumb { display: flex; flex-wrap: wrap; - padding: 0 0; + padding: 0; margin-bottom: 1rem; list-style: none; } .breadcrumb-item+.breadcrumb-item { - padding-left: 0.5rem; + padding-left: .5rem; } .breadcrumb-item+.breadcrumb-item::before { float: left; - padding-right: 0.5rem; + padding-right: .5rem; color: #6c757d; - content: var(--bs-breadcrumb-divider, "/")/* rtl: var(--bs-breadcrumb-divider, "/") */ - ; + content: var(--bs-breadcrumb-divider,"/"); } .breadcrumb-item.active { @@ -4913,10 +4714,10 @@ fieldset:disabled .btn { text-decoration: none; background-color: #fff; border: 1px solid #dee2e6; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .page-link { transition: none; } @@ -4934,7 +4735,7 @@ fieldset:disabled .btn { color: #0a58ca; background-color: #e9ecef; outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); } .page-item:not(:first-child) .page-link { @@ -4956,7 +4757,7 @@ fieldset:disabled .btn { } .page-link { - padding: 0.375rem 0.75rem; + padding: .375rem .75rem; } .page-item:first-child .page-link { @@ -4970,39 +4771,39 @@ fieldset:disabled .btn { } .pagination-lg .page-link { - padding: 0.75rem 1.5rem; + padding: .75rem 1.5rem; font-size: 1.25rem; } .pagination-lg .page-item:first-child .page-link { - border-top-left-radius: 0.3rem; - border-bottom-left-radius: 0.3rem; + border-top-left-radius: .3rem; + border-bottom-left-radius: .3rem; } .pagination-lg .page-item:last-child .page-link { - border-top-right-radius: 0.3rem; - border-bottom-right-radius: 0.3rem; + border-top-right-radius: .3rem; + border-bottom-right-radius: .3rem; } .pagination-sm .page-link { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; + padding: .25rem .5rem; + font-size: .875rem; } .pagination-sm .page-item:first-child .page-link { - border-top-left-radius: 0.2rem; - border-bottom-left-radius: 0.2rem; + border-top-left-radius: .2rem; + border-bottom-left-radius: .2rem; } .pagination-sm .page-item:last-child .page-link { - border-top-right-radius: 0.2rem; - border-bottom-right-radius: 0.2rem; + border-top-right-radius: .2rem; + border-bottom-right-radius: .2rem; } .badge { display: inline-block; - padding: 0.35em 0.65em; - font-size: 0.75em; + padding: .35em .65em; + font-size: .75em; font-weight: 700; line-height: 1; color: #fff; @@ -5023,7 +4824,7 @@ fieldset:disabled .btn { .alert { position: relative; - padding: 1rem 1rem; + padding: 1rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: 6px; @@ -5101,8 +4902,8 @@ fieldset:disabled .btn { .alert-danger { color: #842029; - background-color: #9B0B16; - border-color: #9B0B16; + background-color: #9b0b16; + border-color: #9b0b16; } .alert-danger .alert-link { @@ -5139,7 +4940,7 @@ fieldset:disabled .btn { display: flex; height: 1rem; overflow: hidden; - font-size: 0.75rem; + font-size: .75rem; background-color: #e9ecef; border-radius: 6px; } @@ -5153,17 +4954,17 @@ fieldset:disabled .btn { text-align: center; white-space: nowrap; background-color: #0d6efd; - transition: width 0.6s ease; + transition: width .6s ease; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .progress-bar { transition: none; } } .progress-bar-striped { - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent); background-size: 1rem 1rem; } @@ -5171,7 +4972,7 @@ fieldset:disabled .btn { animation: 1s linear infinite progress-bar-stripes; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .progress-bar-animated { animation: none; } @@ -5191,7 +4992,7 @@ fieldset:disabled .btn { } .list-group-numbered>li::before { - content: counters(section, ".") ". "; + content: counters(section,".") ". "; counter-increment: section; } @@ -5201,8 +5002,7 @@ fieldset:disabled .btn { text-align: inherit; } -.list-group-item-action:hover, -.list-group-item-action:focus { +.list-group-item-action:hover,.list-group-item-action:focus { z-index: 1; color: #495057; text-decoration: none; @@ -5217,11 +5017,11 @@ fieldset:disabled .btn { .list-group-item { position: relative; display: block; - padding: 0.5rem 1rem; + padding: .5rem 1rem; color: #212529; text-decoration: none; background-color: #fff; - border: 1px solid rgba(0, 0, 0, 0.125); + border: 1px solid rgba(0,0,0,.125); } .list-group-item:first-child { @@ -5234,8 +5034,7 @@ fieldset:disabled .btn { border-bottom-left-radius: inherit; } -.list-group-item.disabled, -.list-group-item:disabled { +.list-group-item.disabled,.list-group-item:disabled { color: #6c757d; pointer-events: none; background-color: #fff; @@ -5285,125 +5084,150 @@ fieldset:disabled .btn { border-left-width: 1px; } -@media (min-width: 576px) { +@media(min-width:576px) { .list-group-horizontal-sm { flex-direction: row; } + .list-group-horizontal-sm>.list-group-item:first-child { border-bottom-left-radius: 6px; border-top-right-radius: 0; } + .list-group-horizontal-sm>.list-group-item:last-child { border-top-right-radius: 6px; border-bottom-left-radius: 0; } + .list-group-horizontal-sm>.list-group-item.active { margin-top: 0; } + .list-group-horizontal-sm>.list-group-item+.list-group-item { border-top-width: 1px; border-left-width: 0; } + .list-group-horizontal-sm>.list-group-item+.list-group-item.active { margin-left: -1px; border-left-width: 1px; } } -@media (min-width: 768px) { +@media(min-width:768px) { .list-group-horizontal-md { flex-direction: row; } + .list-group-horizontal-md>.list-group-item:first-child { border-bottom-left-radius: 6px; border-top-right-radius: 0; } + .list-group-horizontal-md>.list-group-item:last-child { border-top-right-radius: 6px; border-bottom-left-radius: 0; } + .list-group-horizontal-md>.list-group-item.active { margin-top: 0; } + .list-group-horizontal-md>.list-group-item+.list-group-item { border-top-width: 1px; border-left-width: 0; } + .list-group-horizontal-md>.list-group-item+.list-group-item.active { margin-left: -1px; border-left-width: 1px; } } -@media (min-width: 992px) { +@media(min-width:992px) { .list-group-horizontal-lg { flex-direction: row; } + .list-group-horizontal-lg>.list-group-item:first-child { border-bottom-left-radius: 6px; border-top-right-radius: 0; } + .list-group-horizontal-lg>.list-group-item:last-child { border-top-right-radius: 6px; border-bottom-left-radius: 0; } + .list-group-horizontal-lg>.list-group-item.active { margin-top: 0; } + .list-group-horizontal-lg>.list-group-item+.list-group-item { border-top-width: 1px; border-left-width: 0; } + .list-group-horizontal-lg>.list-group-item+.list-group-item.active { margin-left: -1px; border-left-width: 1px; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .list-group-horizontal-xl { flex-direction: row; } + .list-group-horizontal-xl>.list-group-item:first-child { border-bottom-left-radius: 6px; border-top-right-radius: 0; } + .list-group-horizontal-xl>.list-group-item:last-child { border-top-right-radius: 6px; border-bottom-left-radius: 0; } + .list-group-horizontal-xl>.list-group-item.active { margin-top: 0; } + .list-group-horizontal-xl>.list-group-item+.list-group-item { border-top-width: 1px; border-left-width: 0; } + .list-group-horizontal-xl>.list-group-item+.list-group-item.active { margin-left: -1px; border-left-width: 1px; } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .list-group-horizontal-xxl { flex-direction: row; } + .list-group-horizontal-xxl>.list-group-item:first-child { border-bottom-left-radius: 6px; border-top-right-radius: 0; } + .list-group-horizontal-xxl>.list-group-item:last-child { border-top-right-radius: 6px; border-bottom-left-radius: 0; } + .list-group-horizontal-xxl>.list-group-item.active { margin-top: 0; } + .list-group-horizontal-xxl>.list-group-item+.list-group-item { border-top-width: 1px; border-left-width: 0; } + .list-group-horizontal-xxl>.list-group-item+.list-group-item.active { margin-left: -1px; border-left-width: 1px; @@ -5427,8 +5251,7 @@ fieldset:disabled .btn { background-color: #cfe2ff; } -.list-group-item-primary.list-group-item-action:hover, -.list-group-item-primary.list-group-item-action:focus { +.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus { color: #084298; background-color: #bacbe6; } @@ -5444,8 +5267,7 @@ fieldset:disabled .btn { background-color: #e2e3e5; } -.list-group-item-secondary.list-group-item-action:hover, -.list-group-item-secondary.list-group-item-action:focus { +.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus { color: #41464b; background-color: #cbccce; } @@ -5461,8 +5283,7 @@ fieldset:disabled .btn { background-color: #d1e7dd; } -.list-group-item-success.list-group-item-action:hover, -.list-group-item-success.list-group-item-action:focus { +.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus { color: #0f5132; background-color: #bcd0c7; } @@ -5478,8 +5299,7 @@ fieldset:disabled .btn { background-color: #cff4fc; } -.list-group-item-info.list-group-item-action:hover, -.list-group-item-info.list-group-item-action:focus { +.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus { color: #055160; background-color: #badce3; } @@ -5495,8 +5315,7 @@ fieldset:disabled .btn { background-color: #fff3cd; } -.list-group-item-warning.list-group-item-action:hover, -.list-group-item-warning.list-group-item-action:focus { +.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus { color: #664d03; background-color: #e6dbb9; } @@ -5512,8 +5331,7 @@ fieldset:disabled .btn { background-color: #f8d7da; } -.list-group-item-danger.list-group-item-action:hover, -.list-group-item-danger.list-group-item-action:focus { +.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus { color: #842029; background-color: #dfc2c4; } @@ -5529,8 +5347,7 @@ fieldset:disabled .btn { background-color: #fefefe; } -.list-group-item-light.list-group-item-action:hover, -.list-group-item-light.list-group-item-action:focus { +.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus { color: #636464; background-color: #e5e5e5; } @@ -5546,8 +5363,7 @@ fieldset:disabled .btn { background-color: #d3d3d4; } -.list-group-item-dark.list-group-item-action:hover, -.list-group-item-dark.list-group-item-action:focus { +.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus { color: #141619; background-color: #bebebf; } @@ -5562,31 +5378,30 @@ fieldset:disabled .btn { box-sizing: content-box; width: 1em; height: 1em; - padding: 0.25em 0.25em; + padding: .25em; color: #000; background: transparent url("https://sop.wtf/frontend/assets/svg/x.svg") center/1em auto no-repeat; border: 0; border-radius: 6px; - opacity: 1.0; + opacity: 1; } .btn-close:hover { color: #000; text-decoration: none; - opacity: 0.75; + opacity: .75; } .btn-close:focus { outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); opacity: 1; } -.btn-close:disabled, -.btn-close.disabled { +.btn-close:disabled,.btn-close.disabled { pointer-events: none; user-select: none; - opacity: 0.25; + opacity: .25; } .btn-close-white { @@ -5596,12 +5411,12 @@ fieldset:disabled .btn { .toast { width: 350px; max-width: 100%; - font-size: 0.875rem; + font-size: .875rem; pointer-events: auto; - background-color: rgba(255, 255, 255, 0.85); + background-color: rgba(255,255,255,.85); background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.1); - box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + border: 1px solid rgba(0,0,0,.1); + box-shadow: 0 .5rem 1rem rgba(0,0,0,.15); border-radius: 6px; } @@ -5619,29 +5434,29 @@ fieldset:disabled .btn { pointer-events: none; } -.toast-container> :not(:last-child) { - margin-bottom: 0.75rem; +.toast-container>:not(:last-child) { + margin-bottom: .75rem; } .toast-header { display: flex; align-items: center; - padding: 0.5rem 0.75rem; + padding: .5rem .75rem; color: #6c757d; - background-color: rgba(255, 255, 255, 0.85); + background-color: rgba(255,255,255,.85); background-clip: padding-box; - border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-bottom: 1px solid rgba(0,0,0,.05); border-top-left-radius: 5px; border-top-right-radius: 5px; } .toast-header .btn-close { - margin-right: -0.375rem; - margin-left: 0.75rem; + margin-right: -.375rem; + margin-left: .75rem; } .toast-body { - padding: 0.75rem; + padding: .75rem; word-wrap: break-word; } @@ -5661,16 +5476,16 @@ fieldset:disabled .btn { .modal-dialog { position: relative; width: auto; - margin: 0.5rem; + margin: .5rem; pointer-events: none; } .modal.fade .modal-dialog { - transition: transform 0.3s ease-out; - transform: translate(0, -50px); + transition: transform .3s ease-out; + transform: translate(0,-50px); } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .modal.fade .modal-dialog { transition: none; } @@ -5711,8 +5526,8 @@ fieldset:disabled .btn { pointer-events: auto; background-color: #fff; background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0.3rem; + border: 1px solid rgba(0,0,0,.2); + border-radius: .3rem; outline: 0; } @@ -5731,7 +5546,7 @@ fieldset:disabled .btn { } .modal-backdrop.show { - opacity: 0.5; + opacity: .5; } .modal-header { @@ -5739,15 +5554,15 @@ fieldset:disabled .btn { flex-shrink: 0; align-items: center; justify-content: space-between; - padding: 1rem 1rem; + padding: 1rem; border-bottom: 1px solid #dee2e6; border-top-left-radius: calc(0.3rem - 1px); border-top-right-radius: calc(0.3rem - 1px); } .modal-header .btn-close { - padding: 0.5rem 0.5rem; - margin: -0.5rem -0.5rem -0.5rem auto; + padding: .5rem; + margin: -.5rem -.5rem -.5rem auto; } .modal-title { @@ -5767,40 +5582,42 @@ fieldset:disabled .btn { flex-shrink: 0; align-items: center; justify-content: flex-end; - padding: 0.75rem; + padding: .75rem; border-top: 1px solid #dee2e6; border-bottom-right-radius: calc(0.3rem - 1px); border-bottom-left-radius: calc(0.3rem - 1px); } .modal-footer>* { - margin: 0.25rem; + margin: .25rem; } -@media (min-width: 576px) { +@media(min-width:576px) { .modal-dialog { max-width: 500px; margin: 1.75rem auto; } + .modal-dialog-scrollable { height: calc(100% - 3.5rem); } + .modal-dialog-centered { min-height: calc(100% - 3.5rem); } + .modal-sm { max-width: 300px; } } -@media (min-width: 992px) { - .modal-lg, - .modal-xl { +@media(min-width:992px) { + .modal-lg,.modal-xl { max-width: 800px; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .modal-xl { max-width: 1140px; } @@ -5831,116 +5648,136 @@ fieldset:disabled .btn { border-radius: 0; } -@media (max-width: 575.98px) { +@media(max-width:575.98px) { .modal-fullscreen-sm-down { width: 100vw; max-width: none; height: 100%; margin: 0; } + .modal-fullscreen-sm-down .modal-content { height: 100%; border: 0; border-radius: 0; } + .modal-fullscreen-sm-down .modal-header { border-radius: 0; } + .modal-fullscreen-sm-down .modal-body { overflow-y: auto; } + .modal-fullscreen-sm-down .modal-footer { border-radius: 0; } } -@media (max-width: 767.98px) { +@media(max-width:767.98px) { .modal-fullscreen-md-down { width: 100vw; max-width: none; height: 100%; margin: 0; } + .modal-fullscreen-md-down .modal-content { height: 100%; border: 0; border-radius: 0; } + .modal-fullscreen-md-down .modal-header { border-radius: 0; } + .modal-fullscreen-md-down .modal-body { overflow-y: auto; } + .modal-fullscreen-md-down .modal-footer { border-radius: 0; } } -@media (max-width: 991.98px) { +@media(max-width:991.98px) { .modal-fullscreen-lg-down { width: 100vw; max-width: none; height: 100%; margin: 0; } + .modal-fullscreen-lg-down .modal-content { height: 100%; border: 0; border-radius: 0; } + .modal-fullscreen-lg-down .modal-header { border-radius: 0; } + .modal-fullscreen-lg-down .modal-body { overflow-y: auto; } + .modal-fullscreen-lg-down .modal-footer { border-radius: 0; } } -@media (max-width: 1199.98px) { +@media(max-width:1199.98px) { .modal-fullscreen-xl-down { width: 100vw; max-width: none; height: 100%; margin: 0; } + .modal-fullscreen-xl-down .modal-content { height: 100%; border: 0; border-radius: 0; } + .modal-fullscreen-xl-down .modal-header { border-radius: 0; } + .modal-fullscreen-xl-down .modal-body { overflow-y: auto; } + .modal-fullscreen-xl-down .modal-footer { border-radius: 0; } } -@media (max-width: 1399.98px) { +@media(max-width:1399.98px) { .modal-fullscreen-xxl-down { width: 100vw; max-width: none; height: 100%; margin: 0; } + .modal-fullscreen-xxl-down .modal-content { height: 100%; border: 0; border-radius: 0; } + .modal-fullscreen-xxl-down .modal-header { border-radius: 0; } + .modal-fullscreen-xxl-down .modal-body { overflow-y: auto; } + .modal-fullscreen-xxl-down .modal-footer { border-radius: 0; } @@ -5965,20 +5802,20 @@ fieldset:disabled .btn { word-spacing: normal; white-space: normal; line-break: auto; - font-size: 0.875rem; + font-size: .875rem; word-wrap: break-word; opacity: 0; } .tooltip.show { - opacity: 0.9; + opacity: .9; } .tooltip .tooltip-arrow { position: absolute; display: block; - width: 0.8rem; - height: 0.4rem; + width: .8rem; + height: .4rem; } .tooltip .tooltip-arrow::before { @@ -5988,81 +5825,69 @@ fieldset:disabled .btn { border-style: solid; } -.bs-tooltip-top, -.bs-tooltip-auto[data-popper-placement^=top] { - padding: 0.4rem 0; +.bs-tooltip-top,.bs-tooltip-auto[data-popper-placement^=top] { + padding: .4rem 0; } -.bs-tooltip-top .tooltip-arrow, -.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { +.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { bottom: 0; } -.bs-tooltip-top .tooltip-arrow::before, -.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { +.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { top: -1px; - border-width: 0.4rem 0.4rem 0; + border-width: .4rem .4rem 0; border-top-color: #000; } -.bs-tooltip-end, -.bs-tooltip-auto[data-popper-placement^=right] { - padding: 0 0.4rem; +.bs-tooltip-end,.bs-tooltip-auto[data-popper-placement^=right] { + padding: 0 .4rem; } -.bs-tooltip-end .tooltip-arrow, -.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { +.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { left: 0; - width: 0.4rem; - height: 0.8rem; + width: .4rem; + height: .8rem; } -.bs-tooltip-end .tooltip-arrow::before, -.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { +.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { right: -1px; - border-width: 0.4rem 0.4rem 0.4rem 0; + border-width: .4rem .4rem .4rem 0; border-right-color: #000; } -.bs-tooltip-bottom, -.bs-tooltip-auto[data-popper-placement^=bottom] { - padding: 0.4rem 0; +.bs-tooltip-bottom,.bs-tooltip-auto[data-popper-placement^=bottom] { + padding: .4rem 0; } -.bs-tooltip-bottom .tooltip-arrow, -.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { +.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { top: 0; } -.bs-tooltip-bottom .tooltip-arrow::before, -.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { +.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { bottom: -1px; - border-width: 0 0.4rem 0.4rem; + border-width: 0 .4rem .4rem; border-bottom-color: #000; } -.bs-tooltip-start, -.bs-tooltip-auto[data-popper-placement^=left] { - padding: 0 0.4rem; +.bs-tooltip-start,.bs-tooltip-auto[data-popper-placement^=left] { + padding: 0 .4rem; } -.bs-tooltip-start .tooltip-arrow, -.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { +.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { right: 0; - width: 0.4rem; - height: 0.8rem; + width: .4rem; + height: .8rem; } -.bs-tooltip-start .tooltip-arrow::before, -.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { +.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { left: -1px; - border-width: 0.4rem 0 0.4rem 0.4rem; + border-width: .4rem 0 .4rem .4rem; border-left-color: #000; } .tooltip-inner { max-width: 200px; - padding: 0.25rem 0.5rem; + padding: .25rem .5rem; color: #fff; text-align: center; background-color: #000; @@ -6072,8 +5897,7 @@ fieldset:disabled .btn { .popover { position: absolute; top: 0; - left: 0/* rtl:ignore */ - ; + left: 0; z-index: 1070; display: block; max-width: 276px; @@ -6091,23 +5915,22 @@ fieldset:disabled .btn { word-spacing: normal; white-space: normal; line-break: auto; - font-size: 0.875rem; + font-size: .875rem; word-wrap: break-word; background-color: #fff; background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0.3rem; + border: 1px solid rgba(0,0,0,.2); + border-radius: .3rem; } .popover .popover-arrow { position: absolute; display: block; width: 1rem; - height: 0.5rem; + height: .5rem; } -.popover .popover-arrow::before, -.popover .popover-arrow::after { +.popover .popover-arrow::before,.popover .popover-arrow::after { position: absolute; display: block; content: ""; @@ -6115,104 +5938,91 @@ fieldset:disabled .btn { border-style: solid; } -.bs-popover-top>.popover-arrow, -.bs-popover-auto[data-popper-placement^=top]>.popover-arrow { +.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow { bottom: calc(-0.5rem - 1px); } -.bs-popover-top>.popover-arrow::before, -.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before { +.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before { bottom: 0; - border-width: 0.5rem 0.5rem 0; - border-top-color: rgba(0, 0, 0, 0.25); + border-width: .5rem .5rem 0; + border-top-color: rgba(0,0,0,.25); } -.bs-popover-top>.popover-arrow::after, -.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after { +.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after { bottom: 1px; - border-width: 0.5rem 0.5rem 0; + border-width: .5rem .5rem 0; border-top-color: #fff; } -.bs-popover-end>.popover-arrow, -.bs-popover-auto[data-popper-placement^=right]>.popover-arrow { +.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow { left: calc(-0.5rem - 1px); - width: 0.5rem; + width: .5rem; height: 1rem; } -.bs-popover-end>.popover-arrow::before, -.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before { +.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before { left: 0; - border-width: 0.5rem 0.5rem 0.5rem 0; - border-right-color: rgba(0, 0, 0, 0.25); + border-width: .5rem .5rem .5rem 0; + border-right-color: rgba(0,0,0,.25); } -.bs-popover-end>.popover-arrow::after, -.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after { +.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after { left: 1px; - border-width: 0.5rem 0.5rem 0.5rem 0; + border-width: .5rem .5rem .5rem 0; border-right-color: #fff; } -.bs-popover-bottom>.popover-arrow, -.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow { +.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow { top: calc(-0.5rem - 1px); } -.bs-popover-bottom>.popover-arrow::before, -.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before { +.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before { top: 0; - border-width: 0 0.5rem 0.5rem 0.5rem; - border-bottom-color: rgba(0, 0, 0, 0.25); + border-width: 0 .5rem .5rem; + border-bottom-color: rgba(0,0,0,.25); } -.bs-popover-bottom>.popover-arrow::after, -.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after { +.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after { top: 1px; - border-width: 0 0.5rem 0.5rem 0.5rem; + border-width: 0 .5rem .5rem; border-bottom-color: #fff; } -.bs-popover-bottom .popover-header::before, -.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { +.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { position: absolute; top: 0; left: 50%; display: block; width: 1rem; - margin-left: -0.5rem; + margin-left: -.5rem; content: ""; border-bottom: 1px solid #f0f0f0; } -.bs-popover-start>.popover-arrow, -.bs-popover-auto[data-popper-placement^=left]>.popover-arrow { +.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow { right: calc(-0.5rem - 1px); - width: 0.5rem; + width: .5rem; height: 1rem; } -.bs-popover-start>.popover-arrow::before, -.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before { +.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before { right: 0; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: rgba(0, 0, 0, 0.25); + border-width: .5rem 0 .5rem .5rem; + border-left-color: rgba(0,0,0,.25); } -.bs-popover-start>.popover-arrow::after, -.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after { +.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after { right: 1px; - border-width: 0.5rem 0 0.5rem 0.5rem; + border-width: .5rem 0 .5rem .5rem; border-left-color: #fff; } .popover-header { - padding: 0.5rem 1rem; + padding: .5rem 1rem; margin-bottom: 0; font-size: 1rem; background-color: #f0f0f0; - border-bottom: 1px solid rgba(0, 0, 0, 0.2); + border-bottom: 1px solid rgba(0,0,0,.2); border-top-left-radius: calc(0.3rem - 1px); border-top-right-radius: calc(0.3rem - 1px); } @@ -6222,7 +6032,7 @@ fieldset:disabled .btn { } .popover-body { - padding: 1rem 1rem; + padding: 1rem; color: #212529; } @@ -6253,66 +6063,51 @@ fieldset:disabled .btn { width: 100%; margin-right: -100%; backface-visibility: hidden; - transition: transform 0.6s ease-in-out; + transition: transform .6s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .carousel-item { transition: none; } } -.carousel-item.active, -.carousel-item-next, -.carousel-item-prev { +.carousel-item.active,.carousel-item-next,.carousel-item-prev { display: block; } - -/* rtl:begin:ignore */ - -.carousel-item-next:not(.carousel-item-start), -.active.carousel-item-end { +.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end { transform: translateX(100%); } -.carousel-item-prev:not(.carousel-item-end), -.active.carousel-item-start { +.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start { transform: translateX(-100%); } - -/* rtl:end:ignore */ - .carousel-fade .carousel-item { opacity: 0; transition-property: opacity; transform: none; } -.carousel-fade .carousel-item.active, -.carousel-fade .carousel-item-next.carousel-item-start, -.carousel-fade .carousel-item-prev.carousel-item-end { +.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end { z-index: 1; opacity: 1; } -.carousel-fade .active.carousel-item-start, -.carousel-fade .active.carousel-item-end { +.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end { z-index: 0; opacity: 0; - transition: opacity 0s 0.6s; + transition: opacity 0s .6s; } -@media (prefers-reduced-motion: reduce) { - .carousel-fade .active.carousel-item-start, - .carousel-fade .active.carousel-item-end { +@media(prefers-reduced-motion:reduce) { + .carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end { transition: none; } } -.carousel-control-prev, -.carousel-control-next { +.carousel-control-prev,.carousel-control-next { position: absolute; top: 0; bottom: 0; @@ -6324,27 +6119,23 @@ fieldset:disabled .btn { padding: 0; color: #fff; text-align: center; - background: none; + background: 0 0; border: 0; - opacity: 0.5; - transition: opacity 0.15s ease; + opacity: .5; + transition: opacity .15s ease; } -@media (prefers-reduced-motion: reduce) { - .carousel-control-prev, - .carousel-control-next { +@media(prefers-reduced-motion:reduce) { + .carousel-control-prev,.carousel-control-next { transition: none; } } -.carousel-control-prev:hover, -.carousel-control-prev:focus, -.carousel-control-next:hover, -.carousel-control-next:focus { +.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus { color: #fff; text-decoration: none; outline: 0; - opacity: 0.9; + opacity: .9; } .carousel-control-prev { @@ -6355,8 +6146,7 @@ fieldset:disabled .btn { right: 0; } -.carousel-control-prev-icon, -.carousel-control-next-icon { +.carousel-control-prev-icon,.carousel-control-next-icon { display: inline-block; width: 2rem; height: 2rem; @@ -6365,22 +6155,12 @@ fieldset:disabled .btn { background-size: 100% 100%; } - -/* rtl:options: { - "autoRename": true, - "stringMap":[ { - "name" : "prev-next", - "search" : "prev", - "replace" : "next" - } ] -} */ - .carousel-control-prev-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI2ZmZic+PHBhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8+PC9zdmc+); } .carousel-control-next-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI2ZmZic+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPg==); } .carousel-indicators { @@ -6413,11 +6193,11 @@ fieldset:disabled .btn { border: 0; border-top: 10px solid transparent; border-bottom: 10px solid transparent; - opacity: 0.5; - transition: opacity 0.6s ease; + opacity: .5; + transition: opacity .6s ease; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .carousel-indicators [data-bs-target] { transition: none; } @@ -6438,8 +6218,7 @@ fieldset:disabled .btn { text-align: center; } -.carousel-dark .carousel-control-prev-icon, -.carousel-dark .carousel-control-next-icon { +.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon { filter: invert(1) grayscale(100); } @@ -6453,8 +6232,7 @@ fieldset:disabled .btn { @keyframes spinner-border { to { - transform: rotate(360deg)/* rtl:ignore */ - ; + transform: rotate(360deg); } } @@ -6462,23 +6240,24 @@ fieldset:disabled .btn { display: inline-block; width: 2rem; height: 2rem; - vertical-align: -0.125em; - border: 0.25em solid currentColor; + vertical-align: -.125em; + border: .25em solid currentColor; border-right-color: transparent; border-radius: 50%; - animation: 0.75s linear infinite spinner-border; + animation: .75s linear infinite spinner-border; } .spinner-border-sm { width: 1rem; height: 1rem; - border-width: 0.2em; + border-width: .2em; } @keyframes spinner-grow { 0% { transform: scale(0); } + 50% { opacity: 1; transform: none; @@ -6489,11 +6268,11 @@ fieldset:disabled .btn { display: inline-block; width: 2rem; height: 2rem; - vertical-align: -0.125em; + vertical-align: -.125em; background-color: currentColor; border-radius: 50%; opacity: 0; - animation: 0.75s linear infinite spinner-grow; + animation: .75s linear infinite spinner-grow; } .spinner-grow-sm { @@ -6501,9 +6280,8 @@ fieldset:disabled .btn { height: 1rem; } -@media (prefers-reduced-motion: reduce) { - .spinner-border, - .spinner-grow { +@media(prefers-reduced-motion:reduce) { + .spinner-border,.spinner-grow { animation-duration: 1.5s; } } @@ -6519,10 +6297,10 @@ fieldset:disabled .btn { background-color: #fff; background-clip: padding-box; outline: 0; - transition: transform 0.3s ease-in-out; + transition: transform .3s ease-in-out; } -@media (prefers-reduced-motion: reduce) { +@media(prefers-reduced-motion:reduce) { .offcanvas { transition: none; } @@ -6532,14 +6310,14 @@ fieldset:disabled .btn { display: flex; align-items: center; justify-content: space-between; - padding: 1rem 1rem; + padding: 1rem; } .offcanvas-header .btn-close { - padding: 0.5rem 0.5rem; - margin-top: -0.5rem; - margin-right: -0.5rem; - margin-bottom: -0.5rem; + padding: .5rem; + margin-top: -.5rem; + margin-right: -.5rem; + margin-bottom: -.5rem; } .offcanvas-title { @@ -6549,7 +6327,7 @@ fieldset:disabled .btn { .offcanvas-body { flex-grow: 1; - padding: 1rem 1rem; + padding: 1rem; overflow-y: auto; } @@ -6557,7 +6335,7 @@ fieldset:disabled .btn { top: 0; left: 0; width: 400px; - border-right: 1px solid rgba(0, 0, 0, 0.2); + border-right: 1px solid rgba(0,0,0,.2); transform: translateX(-100%); } @@ -6565,7 +6343,7 @@ fieldset:disabled .btn { top: 0; right: 0; width: 400px; - border-left: 1px solid rgba(0, 0, 0, 0.2); + border-left: 1px solid rgba(0,0,0,.2); transform: translateX(100%); } @@ -6575,7 +6353,7 @@ fieldset:disabled .btn { left: 0; height: 30vh; max-height: 100%; - border-bottom: 1px solid rgba(0, 0, 0, 0.2); + border-bottom: 1px solid rgba(0,0,0,.2); transform: translateY(-100%); } @@ -6584,7 +6362,7 @@ fieldset:disabled .btn { left: 0; height: 30vh; max-height: 100%; - border-top: 1px solid rgba(0, 0, 0, 0.2); + border-top: 1px solid rgba(0,0,0,.2); transform: translateY(100%); } @@ -6602,8 +6380,7 @@ fieldset:disabled .btn { color: #0d6efd; } -.link-primary:hover, -.link-primary:focus { +.link-primary:hover,.link-primary:focus { color: #0a58ca; } @@ -6611,8 +6388,7 @@ fieldset:disabled .btn { color: #6c757d; } -.link-secondary:hover, -.link-secondary:focus { +.link-secondary:hover,.link-secondary:focus { color: #565e64; } @@ -6620,8 +6396,7 @@ fieldset:disabled .btn { color: #198754; } -.link-success:hover, -.link-success:focus { +.link-success:hover,.link-success:focus { color: #146c43; } @@ -6629,8 +6404,7 @@ fieldset:disabled .btn { color: #0dcaf0; } -.link-info:hover, -.link-info:focus { +.link-info:hover,.link-info:focus { color: #3dd5f3; } @@ -6638,8 +6412,7 @@ fieldset:disabled .btn { color: #ffc107; } -.link-warning:hover, -.link-warning:focus { +.link-warning:hover,.link-warning:focus { color: #ffcd39; } @@ -6647,8 +6420,7 @@ fieldset:disabled .btn { color: #dc3545; } -.link-danger:hover, -.link-danger:focus { +.link-danger:hover,.link-danger:focus { color: #b02a37; } @@ -6656,8 +6428,7 @@ fieldset:disabled .btn { color: #f8f9fa; } -.link-light:hover, -.link-light:focus { +.link-light:hover,.link-light:focus { color: #f9fafb; } @@ -6665,8 +6436,7 @@ fieldset:disabled .btn { color: #212529; } -.link-dark:hover, -.link-dark:focus { +.link-dark:hover,.link-dark:focus { color: #1a1e21; } @@ -6727,7 +6497,7 @@ fieldset:disabled .btn { z-index: 1020; } -@media (min-width: 576px) { +@media(min-width:576px) { .sticky-sm-top { position: sticky; top: 0; @@ -6735,7 +6505,7 @@ fieldset:disabled .btn { } } -@media (min-width: 768px) { +@media(min-width:768px) { .sticky-md-top { position: sticky; top: 0; @@ -6743,7 +6513,7 @@ fieldset:disabled .btn { } } -@media (min-width: 992px) { +@media(min-width:992px) { .sticky-lg-top { position: sticky; top: 0; @@ -6751,7 +6521,7 @@ fieldset:disabled .btn { } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .sticky-xl-top { position: sticky; top: 0; @@ -6759,7 +6529,7 @@ fieldset:disabled .btn { } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .sticky-xxl-top { position: sticky; top: 0; @@ -6767,17 +6537,16 @@ fieldset:disabled .btn { } } -.visually-hidden, -.visually-hidden-focusable:not(:focus):not(:focus-within) { - position: absolute !important; - width: 1px !important; - height: 1px !important; - padding: 0 !important; - margin: -1px !important; - overflow: hidden !important; - clip: rect(0, 0, 0, 0) !important; - white-space: nowrap !important; - border: 0 !important; +.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within) { + position: absolute!important; + width: 1px!important; + height: 1px!important; + padding: 0!important; + margin: -1px!important; + overflow: hidden!important; + clip: rect(0,0,0,0)!important; + white-space: nowrap!important; + border: 0!important; } .stretched-link::after { @@ -6797,4538 +6566,5495 @@ fieldset:disabled .btn { } .align-baseline { - vertical-align: baseline !important; + vertical-align: baseline!important; } .align-top { - vertical-align: top !important; + vertical-align: top!important; } .align-middle { - vertical-align: middle !important; + vertical-align: middle!important; } .align-bottom { - vertical-align: bottom !important; + vertical-align: bottom!important; } .align-text-bottom { - vertical-align: text-bottom !important; + vertical-align: text-bottom!important; } .align-text-top { - vertical-align: text-top !important; + vertical-align: text-top!important; } .float-start { - float: left !important; + float: left!important; } .float-end { - float: right !important; + float: right!important; } .float-none { - float: none !important; + float: none!important; } .overflow-auto { - overflow: auto !important; + overflow: auto!important; } .overflow-hidden { - overflow: hidden !important; + overflow: hidden!important; } .overflow-visible { - overflow: visible !important; + overflow: visible!important; } .overflow-scroll { - overflow: scroll !important; + overflow: scroll!important; } .d-inline { - display: inline !important; + display: inline!important; } .d-inline-block { - display: inline-block !important; + display: inline-block!important; } .d-block { - display: block !important; + display: block!important; } .d-grid { - display: grid !important; + display: grid!important; } .d-table { - display: table !important; + display: table!important; } .d-table-row { - display: table-row !important; + display: table-row!important; } .d-table-cell { - display: table-cell !important; + display: table-cell!important; } .d-flex { - display: flex !important; + display: flex!important; } .d-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } .d-none { - display: none !important; + display: none!important; } .shadow { - box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; + box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important; } .shadow-sm { - box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; + box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important; } .shadow-lg { - box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; + box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important; } .shadow-none { - box-shadow: none !important; + box-shadow: none!important; } .position-static { - position: static !important; + position: static!important; } .position-relative { - position: relative !important; + position: relative!important; } .position-absolute { - position: absolute !important; + position: absolute!important; } .position-fixed { - position: fixed !important; + position: fixed!important; } .position-sticky { - position: sticky !important; + position: sticky!important; } .top-0 { - top: 0 !important; + top: 0!important; } .top-50 { - top: 50% !important; + top: 50%!important; } .top-100 { - top: 100% !important; + top: 100%!important; } .bottom-0 { - bottom: 0 !important; + bottom: 0!important; } .bottom-50 { - bottom: 50% !important; + bottom: 50%!important; } .bottom-100 { - bottom: 100% !important; + bottom: 100%!important; } .start-0 { - left: 0 !important; + left: 0!important; } .start-50 { - left: 50% !important; + left: 50%!important; } .start-100 { - left: 100% !important; + left: 100%!important; } .end-0 { - right: 0 !important; + right: 0!important; } .end-50 { - right: 50% !important; + right: 50%!important; } .end-100 { - right: 100% !important; + right: 100%!important; } .translate-middle { - transform: translate(-50%, -50%) !important; + transform: translate(-50%,-50%)!important; } .translate-middle-x { - transform: translateX(-50%) !important; + transform: translateX(-50%)!important; } .translate-middle-y { - transform: translateY(-50%) !important; + transform: translateY(-50%)!important; } .border { - border: 1px solid #dee2e6 !important; + border: 1px solid #dee2e6!important; } .border-0 { - border: 0 !important; - background-color: #121212; + border: 0!important; + background-color: #383C4A; } .border-top { - border-top: 1px solid #dee2e6 !important; + border-top: 1px solid #dee2e6!important; } .border-top-0 { - border-top: 0 !important; + border-top: 0!important; } .border-end { - border-right: 1px solid #dee2e6 !important; + border-right: 1px solid #dee2e6!important; } .border-end-0 { - border-right: 0 !important; + border-right: 0!important; } .border-bottom { - border-bottom: 1px solid #dee2e6 !important; + border-bottom: 1px solid #dee2e6!important; } .border-bottom-0 { - border-bottom: 0 !important; + border-bottom: 0!important; } .border-start { - border-left: 1px solid #dee2e6 !important; + border-left: 1px solid #dee2e6!important; } .border-start-0 { - border-left: 0 !important; + border-left: 0!important; } .border-primary { - border-color: #0d6efd !important; + border-color: #0d6efd!important; } .border-secondary { - border-color: #6c757d !important; + border-color: #6c757d!important; } .border-success { - border-color: #198754 !important; + border-color: #198754!important; } .border-info { - border-color: #0dcaf0 !important; + border-color: #0dcaf0!important; } .border-warning { - border-color: #ffc107 !important; + border-color: #ffc107!important; } .border-danger { - border-color: #dc3545 !important; + border-color: #dc3545!important; } .border-light { - border-color: #f8f9fa !important; + border-color: #f8f9fa!important; } .border-dark { - border-color: #212529 !important; + border-color: #212529!important; } .border-white { - border-color: #fff !important; + border-color: #fff!important; } .border-1 { - border-width: 1px !important; + border-width: 1px!important; } .border-2 { - border-width: 2px !important; + border-width: 2px!important; } .border-3 { - border-width: 3px !important; + border-width: 3px!important; } .border-4 { - border-width: 4px !important; + border-width: 4px!important; } .border-5 { - border-width: 5px !important; + border-width: 5px!important; } .w-25 { - width: 25% !important; + width: 25%!important; } .w-50 { - width: 50% !important; + width: 50%!important; } .w-75 { - width: 75% !important; + width: 75%!important; } .w-100 { - width: 100% !important; + width: 100%!important; } .w-auto { - width: auto !important; + width: auto!important; } .mw-100 { - max-width: 100% !important; + max-width: 100%!important; } .vw-100 { - width: 100vw !important; + width: 100vw!important; } .min-vw-100 { - min-width: 100vw !important; + min-width: 100vw!important; } .h-25 { - height: 25% !important; + height: 25%!important; } .h-50 { - height: 50% !important; + height: 50%!important; } .h-75 { - height: 75% !important; + height: 75%!important; } .h-100 { - height: 100% !important; + height: 100%!important; } .h-auto { - height: auto !important; + height: auto!important; } .mh-100 { - max-height: 100% !important; + max-height: 100%!important; } .vh-100 { - height: 100vh !important; + height: 100vh!important; } .min-vh-100 { - min-height: 100vh !important; + min-height: 100vh!important; } .flex-fill { - flex: 1 1 auto !important; + flex: 1 1 auto!important; } .flex-row { - flex-direction: row !important; + flex-direction: row!important; } .flex-column { - flex-direction: column !important; + flex-direction: column!important; } .flex-row-reverse { - flex-direction: row-reverse !important; + flex-direction: row-reverse!important; } .flex-column-reverse { - flex-direction: column-reverse !important; + flex-direction: column-reverse!important; } .flex-grow-0 { - flex-grow: 0 !important; + flex-grow: 0!important; } .flex-grow-1 { - flex-grow: 1 !important; + flex-grow: 1!important; } .flex-shrink-0 { - flex-shrink: 0 !important; + flex-shrink: 0!important; } .flex-shrink-1 { - flex-shrink: 1 !important; + flex-shrink: 1!important; } .flex-wrap { - flex-wrap: wrap !important; + flex-wrap: wrap!important; } .flex-nowrap { - flex-wrap: nowrap !important; + flex-wrap: nowrap!important; } .flex-wrap-reverse { - flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse!important; } .gap-0 { - gap: 0 !important; + gap: 0!important; } .gap-1 { - gap: 0.25rem !important; + gap: .25rem!important; } .gap-2 { - gap: 0.5rem !important; + gap: .5rem!important; } .gap-3 { - gap: 1rem !important; + gap: 1rem!important; } .gap-4 { - gap: 1.5rem !important; + gap: 1.5rem!important; } .gap-5 { - gap: 3rem !important; + gap: 3rem!important; } .justify-content-start { - justify-content: flex-start !important; + justify-content: flex-start!important; } .justify-content-end { - justify-content: flex-end !important; + justify-content: flex-end!important; } .justify-content-center { - justify-content: center !important; + justify-content: center!important; } .justify-content-between { - justify-content: space-between !important; + justify-content: space-between!important; } .justify-content-around { - justify-content: space-around !important; + justify-content: space-around!important; } .justify-content-evenly { - justify-content: space-evenly !important; + justify-content: space-evenly!important; } .align-items-start { - align-items: flex-start !important; + align-items: flex-start!important; } .align-items-end { - align-items: flex-end !important; + align-items: flex-end!important; } .align-items-center { - align-items: center !important; + align-items: center!important; } .align-items-baseline { - align-items: baseline !important; + align-items: baseline!important; } .align-items-stretch { - align-items: stretch !important; + align-items: stretch!important; } .align-content-start { - align-content: flex-start !important; + align-content: flex-start!important; } .align-content-end { - align-content: flex-end !important; + align-content: flex-end!important; } .align-content-center { - align-content: center !important; + align-content: center!important; } .align-content-between { - align-content: space-between !important; + align-content: space-between!important; } .align-content-around { - align-content: space-around !important; + align-content: space-around!important; } .align-content-stretch { - align-content: stretch !important; + align-content: stretch!important; } .align-self-auto { - align-self: auto !important; + align-self: auto!important; } .align-self-start { - align-self: flex-start !important; + align-self: flex-start!important; } .align-self-end { - align-self: flex-end !important; + align-self: flex-end!important; } .align-self-center { - align-self: center !important; + align-self: center!important; } .align-self-baseline { - align-self: baseline !important; + align-self: baseline!important; } .align-self-stretch { - align-self: stretch !important; + align-self: stretch!important; } .order-first { - order: -1 !important; + order: -1!important; } .order-0 { - order: 0 !important; + order: 0!important; } .order-1 { - order: 1 !important; + order: 1!important; } .order-2 { - order: 2 !important; + order: 2!important; } .order-3 { - order: 3 !important; + order: 3!important; } .order-4 { - order: 4 !important; + order: 4!important; } .order-5 { - order: 5 !important; + order: 5!important; } .order-last { - order: 6 !important; + order: 6!important; } .m-0 { - margin: 0 !important; + margin: 0!important; } .m-1 { - margin: 0.25rem !important; + margin: .25rem!important; } .m-2 { - margin: 0.5rem !important; + margin: .5rem!important; } .m-3 { - margin: 1rem !important; + margin: 1rem!important; } .m-4 { - margin: 1.5rem !important; + margin: 1.5rem!important; } .m-5 { - margin: 3rem !important; + margin: 3rem!important; } .m-auto { - margin: auto !important; + margin: auto!important; } .mx-0 { - margin-right: 0 !important; - margin-left: 0 !important; + margin-right: 0!important; + margin-left: 0!important; } .mx-1 { - margin-right: 0.25rem !important; - margin-left: 0.25rem !important; + margin-right: .25rem!important; + margin-left: .25rem!important; } .mx-2 { - margin-right: 0.5rem !important; - margin-left: 0.5rem !important; + margin-right: .5rem!important; + margin-left: .5rem!important; } .mx-3 { - margin-right: 1rem !important; - margin-left: 1rem !important; + margin-right: 1rem!important; + margin-left: 1rem!important; } .mx-4 { - margin-right: 1.5rem !important; - margin-left: 1.5rem !important; + margin-right: 1.5rem!important; + margin-left: 1.5rem!important; } .mx-5 { - margin-right: 3rem !important; - margin-left: 3rem !important; + margin-right: 3rem!important; + margin-left: 3rem!important; } .mx-auto { - margin-right: auto !important; - margin-left: auto !important; + margin-right: auto!important; + margin-left: auto!important; } .my-0 { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0!important; + margin-bottom: 0!important; } .my-1 { - margin-top: 0.25rem !important; - margin-bottom: 0.25rem !important; + margin-top: .25rem!important; + margin-bottom: .25rem!important; } .my-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.5rem !important; + margin-top: .5rem!important; + margin-bottom: .5rem!important; } .my-3 { - margin-top: 1rem !important; - margin-bottom: 1rem !important; + margin-top: 1rem!important; + margin-bottom: 1rem!important; } .my-4 { - margin-top: 1.5rem !important; - margin-bottom: 1.5rem !important; + margin-top: 1.5rem!important; + margin-bottom: 1.5rem!important; } .my-5 { - margin-top: 3rem !important; - margin-bottom: 3rem !important; + margin-top: 3rem!important; + margin-bottom: 3rem!important; } .my-auto { - margin-top: auto !important; - margin-bottom: auto !important; + margin-top: auto!important; + margin-bottom: auto!important; } .mt-0 { - margin-top: 0 !important; + margin-top: 0!important; } .mt-1 { - margin-top: 0.25rem !important; + margin-top: .25rem!important; } .mt-2 { - margin-top: 0.5rem !important; + margin-top: .5rem!important; } .mt-3 { - margin-top: 1rem !important; + margin-top: 1rem!important; } .mt-4 { - margin-top: 1.5rem !important; + margin-top: 1.5rem!important; } .mt-5 { - margin-top: 3rem !important; + margin-top: 3rem!important; } .mt-auto { - margin-top: auto !important; + margin-top: auto!important; } .me-0 { - margin-right: 0 !important; + margin-right: 0!important; } .me-1 { - margin-right: 0.25rem !important; + margin-right: .25rem!important; } .me-2 { - margin-right: 0.5rem !important; + margin-right: .5rem!important; color: #fff; } .me-3 { - margin-right: 1rem !important; + margin-right: 1rem!important; } .me-4 { - margin-right: 1.5rem !important; + margin-right: 1.5rem!important; } .me-5 { - margin-right: 3rem !important; + margin-right: 3rem!important; } .me-auto { - margin-right: auto !important; + margin-right: auto!important; } .mb-0 { - margin-bottom: 0 !important; + margin-bottom: 0!important; } .mb-1 { - margin-bottom: 0.25rem !important; + margin-bottom: .25rem!important; } .mb-2 { - margin-bottom: 0.5rem !important; + margin-bottom: .5rem!important; } .mb-3 { - margin-bottom: 1rem !important; + margin-bottom: 1rem!important; } .mb-4 { - margin-bottom: 1.5rem !important; + margin-bottom: 1.5rem!important; } .mb-5 { - margin-bottom: 3rem !important; + margin-bottom: 3rem!important; } .mb-auto { - margin-bottom: auto !important; + margin-bottom: auto!important; } .ms-0 { - margin-left: 0 !important; + margin-left: 0!important; } .ms-1 { - margin-left: 0.25rem !important; + margin-left: .25rem!important; } .ms-2 { - margin-left: 0.5rem !important; + margin-left: .5rem!important; } .ms-3 { - margin-left: 1rem !important; + margin-left: 1rem!important; } .ms-4 { - margin-left: 1.5rem !important; + margin-left: 1.5rem!important; } .ms-5 { - margin-left: 3rem !important; + margin-left: 3rem!important; } .ms-auto { - margin-left: auto !important; + margin-left: auto!important; } .m-n1 { - margin: -0.25rem !important; + margin: -.25rem!important; } .m-n2 { - margin: -0.5rem !important; + margin: -.5rem!important; } .m-n3 { - margin: -1rem !important; + margin: -1rem!important; } .m-n4 { - margin: -1.5rem !important; + margin: -1.5rem!important; } .m-n5 { - margin: -3rem !important; + margin: -3rem!important; } .mx-n1 { - margin-right: -0.25rem !important; - margin-left: -0.25rem !important; + margin-right: -.25rem!important; + margin-left: -.25rem!important; } .mx-n2 { - margin-right: -0.5rem !important; - margin-left: -0.5rem !important; + margin-right: -.5rem!important; + margin-left: -.5rem!important; } .mx-n3 { - margin-right: -1rem !important; - margin-left: -1rem !important; + margin-right: -1rem!important; + margin-left: -1rem!important; } .mx-n4 { - margin-right: -1.5rem !important; - margin-left: -1.5rem !important; + margin-right: -1.5rem!important; + margin-left: -1.5rem!important; } .mx-n5 { - margin-right: -3rem !important; - margin-left: -3rem !important; + margin-right: -3rem!important; + margin-left: -3rem!important; } .my-n1 { - margin-top: -0.25rem !important; - margin-bottom: -0.25rem !important; + margin-top: -.25rem!important; + margin-bottom: -.25rem!important; } .my-n2 { - margin-top: -0.5rem !important; - margin-bottom: -0.5rem !important; + margin-top: -.5rem!important; + margin-bottom: -.5rem!important; } .my-n3 { - margin-top: -1rem !important; - margin-bottom: -1rem !important; + margin-top: -1rem!important; + margin-bottom: -1rem!important; } .my-n4 { - margin-top: -1.5rem !important; - margin-bottom: -1.5rem !important; + margin-top: -1.5rem!important; + margin-bottom: -1.5rem!important; } .my-n5 { - margin-top: -3rem !important; - margin-bottom: -3rem !important; + margin-top: -3rem!important; + margin-bottom: -3rem!important; } .mt-n1 { - margin-top: -0.25rem !important; + margin-top: -.25rem!important; } .mt-n2 { - margin-top: -0.5rem !important; + margin-top: -.5rem!important; } .mt-n3 { - margin-top: -1rem !important; + margin-top: -1rem!important; } .mt-n4 { - margin-top: -1.5rem !important; + margin-top: -1.5rem!important; } .mt-n5 { - margin-top: -3rem !important; + margin-top: -3rem!important; } .me-n1 { - margin-right: -0.25rem !important; + margin-right: -.25rem!important; } .me-n2 { - margin-right: -0.5rem !important; + margin-right: -.5rem!important; } .me-n3 { - margin-right: -1rem !important; + margin-right: -1rem!important; } .me-n4 { - margin-right: -1.5rem !important; + margin-right: -1.5rem!important; } .me-n5 { - margin-right: -3rem !important; + margin-right: -3rem!important; } .mb-n1 { - margin-bottom: -0.25rem !important; + margin-bottom: -.25rem!important; } .mb-n2 { - margin-bottom: -0.5rem !important; + margin-bottom: -.5rem!important; } .mb-n3 { - margin-bottom: -1rem !important; + margin-bottom: -1rem!important; } .mb-n4 { - margin-bottom: -1.5rem !important; + margin-bottom: -1.5rem!important; } .mb-n5 { - margin-bottom: -3rem !important; + margin-bottom: -3rem!important; } .ms-n1 { - margin-left: -0.25rem !important; + margin-left: -.25rem!important; } .ms-n2 { - margin-left: -0.5rem !important; + margin-left: -.5rem!important; } .ms-n3 { - margin-left: -1rem !important; + margin-left: -1rem!important; } .ms-n4 { - margin-left: -1.5rem !important; + margin-left: -1.5rem!important; } .ms-n5 { - margin-left: -3rem !important; + margin-left: -3rem!important; } .p-0 { - padding: 0 !important; + padding: 0!important; } .p-1 { - padding: 0.25rem !important; + padding: .25rem!important; } .p-2 { - padding: 0.5rem !important; + padding: .5rem!important; } .p-3 { - padding: 1rem !important; + padding: 1rem!important; } .p-4 { - padding: 1.5rem !important; + padding: 1.5rem!important; } .p-5 { - padding: 3rem !important; + padding: 3rem!important; } .px-0 { - padding-right: 0 !important; - padding-left: 0 !important; + padding-right: 0!important; + padding-left: 0!important; } .px-1 { - padding-right: 0.25rem !important; - padding-left: 0.25rem !important; + padding-right: .25rem!important; + padding-left: .25rem!important; } .px-2 { - padding-right: 0.5rem !important; - padding-left: 0.5rem !important; + padding-right: .5rem!important; + padding-left: .5rem!important; } .px-3 { - padding-right: 1rem !important; - padding-left: 1rem !important; + padding-right: 1rem!important; + padding-left: 1rem!important; } .px-4 { - padding-right: 1.5rem !important; - padding-left: 1.5rem !important; + padding-right: 1.5rem!important; + padding-left: 1.5rem!important; } .px-5 { - padding-right: 3rem !important; - padding-left: 3rem !important; + padding-right: 3rem!important; + padding-left: 3rem!important; } .py-0 { - padding-top: 0 !important; - padding-bottom: 0 !important; + padding-top: 0!important; + padding-bottom: 0!important; } .py-1 { - padding-top: 0.25rem !important; - padding-bottom: 0.25rem !important; + padding-top: .25rem!important; + padding-bottom: .25rem!important; } .py-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.5rem !important; + padding-top: .5rem!important; + padding-bottom: .5rem!important; } .py-3 { - padding-top: 1rem !important; - padding-bottom: 1rem !important; + padding-top: 1rem!important; + padding-bottom: 1rem!important; } .py-4 { - padding-top: 1.5rem !important; - padding-bottom: 1.5rem !important; + padding-top: 1.5rem!important; + padding-bottom: 1.5rem!important; } .py-5 { - padding-top: 3rem !important; - padding-bottom: 3rem !important; + padding-top: 3rem!important; + padding-bottom: 3rem!important; } .pt-0 { - padding-top: 0 !important; + padding-top: 0!important; } .pt-1 { - padding-top: 0.25rem !important; + padding-top: .25rem!important; } .pt-2 { - padding-top: 0.5rem !important; + padding-top: .5rem!important; } .pt-3 { - padding-top: 1rem !important; + padding-top: 1rem!important; } .pt-4 { - padding-top: 1.5rem !important; + padding-top: 1.5rem!important; } .pt-5 { - padding-top: 3rem !important; + padding-top: 3rem!important; } .pe-0 { - padding-right: 0 !important; + padding-right: 0!important; } .pe-1 { - padding-right: 0.25rem !important; + padding-right: .25rem!important; } .pe-2 { - padding-right: 0.5rem !important; + padding-right: .5rem!important; } .pe-3 { - padding-right: 1rem !important; + padding-right: 1rem!important; } .pe-4 { - padding-right: 1.5rem !important; + padding-right: 1.5rem!important; } .pe-5 { - padding-right: 3rem !important; + padding-right: 3rem!important; } .pb-0 { - padding-bottom: 0 !important; + padding-bottom: 0!important; } .pb-1 { - padding-bottom: 0.25rem !important; + padding-bottom: .25rem!important; } .pb-2 { - padding-bottom: 0.5rem !important; + padding-bottom: .5rem!important; } .pb-3 { - padding-bottom: 1rem !important; + padding-bottom: 1rem!important; } .pb-4 { - padding-bottom: 1.5rem !important; + padding-bottom: 1.5rem!important; } .pb-5 { - padding-bottom: 3rem !important; + padding-bottom: 3rem!important; } .ps-0 { - padding-left: 0 !important; + padding-left: 0!important; } .ps-1 { - padding-left: 0.25rem !important; + padding-left: .25rem!important; } .ps-2 { - padding-left: 0.5rem !important; + padding-left: .5rem!important; } .ps-3 { - padding-left: 1rem !important; + padding-left: 1rem!important; } .ps-4 { - padding-left: 1.5rem !important; + padding-left: 1.5rem!important; } .ps-5 { - padding-left: 3rem !important; + padding-left: 3rem!important; } .font-monospace { - font-family: var(--bs-font-monospace) !important; + font-family: var(--bs-font-monospace)!important; } .fs-1 { - font-size: calc(1.375rem + 1.5vw) !important; + font-size: calc(1.375rem + 1.5vw)!important; } .fs-2 { - font-size: calc(1.325rem + 0.9vw) !important; + font-size: calc(1.325rem + 0.9vw)!important; } .fs-3 { - font-size: calc(1.3rem + 0.6vw) !important; + font-size: calc(1.3rem + 0.6vw)!important; } .fs-4 { - font-size: calc(1.275rem + 0.3vw) !important; + font-size: calc(1.275rem + 0.3vw)!important; } .fs-5 { - font-size: 1.25rem !important; + font-size: 1.25rem!important; } .fs-6 { - font-size: 1rem !important; + font-size: 1rem!important; } .fst-italic { - font-style: italic !important; + font-style: italic!important; } .fst-normal { - font-style: normal !important; + font-style: normal!important; } .fw-light { - font-weight: 300 !important; + font-weight: 300!important; } .fw-lighter { - font-weight: lighter !important; + font-weight: lighter!important; } .fw-normal { - font-weight: 400 !important; + font-weight: 400!important; } .fw-bold { - font-weight: 700 !important; + font-weight: 700!important; } .fw-bolder { - font-weight: bolder !important; + font-weight: bolder!important; } .lh-1 { - line-height: 1 !important; + line-height: 1!important; } .lh-sm { - line-height: 1.25 !important; + line-height: 1.25!important; } .lh-base { - line-height: 1.5 !important; + line-height: 1.5!important; } .lh-lg { - line-height: 2 !important; + line-height: 2!important; } .text-start { - text-align: left !important; + text-align: left!important; } .text-end { - text-align: right !important; + text-align: right!important; } .text-center { - text-align: center !important; + text-align: center!important; } .text-decoration-none { - text-decoration: none !important; + text-decoration: none!important; } .text-decoration-underline { - text-decoration: underline !important; + text-decoration: underline!important; } .text-decoration-line-through { - text-decoration: line-through !important; + text-decoration: line-through!important; } .text-lowercase { - text-transform: lowercase !important; + text-transform: lowercase!important; } .text-uppercase { - text-transform: uppercase !important; + text-transform: uppercase!important; color: #fff; } .text-capitalize { - text-transform: capitalize !important; + text-transform: capitalize!important; } .text-wrap { - white-space: normal !important; + white-space: normal!important; } .text-nowrap { - white-space: nowrap !important; + white-space: nowrap!important; } - -/* rtl:begin:remove */ - .text-break { - word-wrap: break-word !important; - word-break: break-word !important; + word-wrap: break-word!important; + word-break: break-word!important; } - -/* rtl:end:remove */ - .text-primary { - color: #0d6efd !important; + color: #0d6efd!important; } .text-secondary { - color: #6c757d !important; + color: #6c757d!important; } .text-success { - color: #198754 !important; + color: #198754!important; } .text-info { - color: #0dcaf0 !important; + color: #0dcaf0!important; } .text-warning { - color: #ffc107 !important; + color: #ffc107!important; } .text-danger { - color: #dc3545 !important; + color: #dc3545!important; } .text-light { - color: #f8f9fa !important; + color: #f8f9fa!important; } .text-dark { - color: #212529 !important; + color: #212529!important; } .text-white { - color: #fff !important; + color: #fff!important; } .text-body { - color: #212529 !important; + color: #212529!important; } .text-muted { - color: #6c757d !important; + color: #6c757d!important; } .text-black-50 { - color: rgba(0, 0, 0, 0.5) !important; + color: rgba(0,0,0,.5)!important; } .text-white-50 { color: #fff; - background-color: #7289DA; + background-color: #7289da; } .text-white-50:hover { color: #fff; - background-color: #4E5D94; + background-color: #4e5d94; } .text-reset { - color: inherit !important; + color: inherit!important; } .bg-primary { - background-color: #0d6efd !important; + background-color: #0d6efd!important; } .bg-secondary { - background-color: #6c757d !important; + background-color: #6c757d!important; } .bg-success { - background-color: #198754 !important; + background-color: #198754!important; } .bg-info { - background-color: #0dcaf0 !important; + background-color: #0dcaf0!important; } .bg-warning { - background-color: #ffc107 !important; + background-color: #ffc107!important; } .bg-danger { - background-color: #dc3545 !important; + background-color: #dc3545!important; } .bg-light { - background-color: #f8f9fa !important; + background-color: #f8f9fa!important; } .bg-dark { - background-color: #212529 !important; + background-color: #212529!important; } .bg-body { - background-color: #fff !important; + background-color: #fff!important; } .bg-white { - background-color: #fff !important; + background-color: #fff!important; } .bg-transparent { - background-color: transparent !important; + background-color: transparent!important; } .bg-gradient { - background-image: var(--bs-gradient) !important; + background-image: var(--bs-gradient)!important; } .user-select-all { - user-select: all !important; + user-select: all!important; } .user-select-auto { - user-select: auto !important; + user-select: auto!important; } .user-select-none { - user-select: none !important; + user-select: none!important; } .pe-none { - pointer-events: none !important; + pointer-events: none!important; } .pe-auto { - pointer-events: auto !important; + pointer-events: auto!important; } .rounded { - border-radius: 6px !important; + border-radius: 6px!important; } .rounded-0 { - border-radius: 0 !important; + border-radius: 0!important; } .rounded-1 { - border-radius: 0.2rem !important; + border-radius: .2rem!important; } .rounded-2 { - border-radius: 6px !important; + border-radius: 6px!important; } .rounded-3 { - border-radius: 0.3rem !important; + border-radius: .3rem!important; } .rounded-circle { - border-radius: 50% !important; + border-radius: 50%!important; } .rounded-pill { - border-radius: 50rem !important; + border-radius: 50rem!important; } .rounded-top { - border-top-left-radius: 6px !important; - border-top-right-radius: 6px !important; + border-top-left-radius: 6px!important; + border-top-right-radius: 6px!important; } .rounded-end { - border-top-right-radius: 6px !important; - border-bottom-right-radius: 6px !important; + border-top-right-radius: 6px!important; + border-bottom-right-radius: 6px!important; } .rounded-bottom { - border-bottom-right-radius: 6px !important; - border-bottom-left-radius: 6px !important; + border-bottom-right-radius: 6px!important; + border-bottom-left-radius: 6px!important; } .rounded-start { - border-bottom-left-radius: 6px !important; - border-top-left-radius: 6px !important; + border-bottom-left-radius: 6px!important; + border-top-left-radius: 6px!important; } .visible { - visibility: visible !important; + visibility: visible!important; } .invisible { - visibility: hidden !important; + visibility: hidden!important; } -@media (min-width: 576px) { +@media(min-width:576px) { .float-sm-start { - float: left !important; + float: left!important; } + .float-sm-end { - float: right !important; + float: right!important; } + .float-sm-none { - float: none !important; + float: none!important; } + .d-sm-inline { - display: inline !important; + display: inline!important; } + .d-sm-inline-block { - display: inline-block !important; + display: inline-block!important; } + .d-sm-block { - display: block !important; + display: block!important; } + .d-sm-grid { - display: grid !important; + display: grid!important; } + .d-sm-table { - display: table !important; + display: table!important; } + .d-sm-table-row { - display: table-row !important; + display: table-row!important; } + .d-sm-table-cell { - display: table-cell !important; + display: table-cell!important; } + .d-sm-flex { - display: flex !important; + display: flex!important; } + .d-sm-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } + .d-sm-none { - display: none !important; + display: none!important; } + .flex-sm-fill { - flex: 1 1 auto !important; + flex: 1 1 auto!important; } + .flex-sm-row { - flex-direction: row !important; + flex-direction: row!important; } + .flex-sm-column { - flex-direction: column !important; + flex-direction: column!important; } + .flex-sm-row-reverse { - flex-direction: row-reverse !important; + flex-direction: row-reverse!important; } + .flex-sm-column-reverse { - flex-direction: column-reverse !important; + flex-direction: column-reverse!important; } + .flex-sm-grow-0 { - flex-grow: 0 !important; + flex-grow: 0!important; } + .flex-sm-grow-1 { - flex-grow: 1 !important; + flex-grow: 1!important; } + .flex-sm-shrink-0 { - flex-shrink: 0 !important; + flex-shrink: 0!important; } + .flex-sm-shrink-1 { - flex-shrink: 1 !important; + flex-shrink: 1!important; } + .flex-sm-wrap { - flex-wrap: wrap !important; + flex-wrap: wrap!important; } + .flex-sm-nowrap { - flex-wrap: nowrap !important; + flex-wrap: nowrap!important; } + .flex-sm-wrap-reverse { - flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse!important; } + .gap-sm-0 { - gap: 0 !important; + gap: 0!important; } + .gap-sm-1 { - gap: 0.25rem !important; + gap: .25rem!important; } + .gap-sm-2 { - gap: 0.5rem !important; + gap: .5rem!important; } + .gap-sm-3 { - gap: 1rem !important; + gap: 1rem!important; } + .gap-sm-4 { - gap: 1.5rem !important; + gap: 1.5rem!important; } + .gap-sm-5 { - gap: 3rem !important; + gap: 3rem!important; } + .justify-content-sm-start { - justify-content: flex-start !important; + justify-content: flex-start!important; } + .justify-content-sm-end { - justify-content: flex-end !important; + justify-content: flex-end!important; } + .justify-content-sm-center { - justify-content: center !important; + justify-content: center!important; } + .justify-content-sm-between { - justify-content: space-between !important; + justify-content: space-between!important; } + .justify-content-sm-around { - justify-content: space-around !important; + justify-content: space-around!important; } + .justify-content-sm-evenly { - justify-content: space-evenly !important; + justify-content: space-evenly!important; } + .align-items-sm-start { - align-items: flex-start !important; + align-items: flex-start!important; } + .align-items-sm-end { - align-items: flex-end !important; + align-items: flex-end!important; } + .align-items-sm-center { - align-items: center !important; + align-items: center!important; } + .align-items-sm-baseline { - align-items: baseline !important; + align-items: baseline!important; } + .align-items-sm-stretch { - align-items: stretch !important; + align-items: stretch!important; } + .align-content-sm-start { - align-content: flex-start !important; + align-content: flex-start!important; } + .align-content-sm-end { - align-content: flex-end !important; + align-content: flex-end!important; } + .align-content-sm-center { - align-content: center !important; + align-content: center!important; } + .align-content-sm-between { - align-content: space-between !important; + align-content: space-between!important; } + .align-content-sm-around { - align-content: space-around !important; + align-content: space-around!important; } + .align-content-sm-stretch { - align-content: stretch !important; + align-content: stretch!important; } + .align-self-sm-auto { - align-self: auto !important; + align-self: auto!important; } + .align-self-sm-start { - align-self: flex-start !important; + align-self: flex-start!important; } + .align-self-sm-end { - align-self: flex-end !important; + align-self: flex-end!important; } + .align-self-sm-center { - align-self: center !important; + align-self: center!important; } + .align-self-sm-baseline { - align-self: baseline !important; + align-self: baseline!important; } + .align-self-sm-stretch { - align-self: stretch !important; + align-self: stretch!important; } + .order-sm-first { - order: -1 !important; + order: -1!important; } + .order-sm-0 { - order: 0 !important; + order: 0!important; } + .order-sm-1 { - order: 1 !important; + order: 1!important; } + .order-sm-2 { - order: 2 !important; + order: 2!important; } + .order-sm-3 { - order: 3 !important; + order: 3!important; } + .order-sm-4 { - order: 4 !important; + order: 4!important; } + .order-sm-5 { - order: 5 !important; + order: 5!important; } + .order-sm-last { - order: 6 !important; + order: 6!important; } + .m-sm-0 { - margin: 0 !important; + margin: 0!important; } + .m-sm-1 { - margin: 0.25rem !important; + margin: .25rem!important; } + .m-sm-2 { - margin: 0.5rem !important; + margin: .5rem!important; } + .m-sm-3 { - margin: 1rem !important; + margin: 1rem!important; } + .m-sm-4 { - margin: 1.5rem !important; + margin: 1.5rem!important; } + .m-sm-5 { - margin: 3rem !important; + margin: 3rem!important; } + .m-sm-auto { - margin: auto !important; + margin: auto!important; } + .mx-sm-0 { - margin-right: 0 !important; - margin-left: 0 !important; + margin-right: 0!important; + margin-left: 0!important; } + .mx-sm-1 { - margin-right: 0.25rem !important; - margin-left: 0.25rem !important; + margin-right: .25rem!important; + margin-left: .25rem!important; } + .mx-sm-2 { - margin-right: 0.5rem !important; - margin-left: 0.5rem !important; + margin-right: .5rem!important; + margin-left: .5rem!important; } + .mx-sm-3 { - margin-right: 1rem !important; - margin-left: 1rem !important; + margin-right: 1rem!important; + margin-left: 1rem!important; } + .mx-sm-4 { - margin-right: 1.5rem !important; - margin-left: 1.5rem !important; + margin-right: 1.5rem!important; + margin-left: 1.5rem!important; } + .mx-sm-5 { - margin-right: 3rem !important; - margin-left: 3rem !important; + margin-right: 3rem!important; + margin-left: 3rem!important; } + .mx-sm-auto { - margin-right: auto !important; - margin-left: auto !important; + margin-right: auto!important; + margin-left: auto!important; } + .my-sm-0 { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0!important; + margin-bottom: 0!important; } + .my-sm-1 { - margin-top: 0.25rem !important; - margin-bottom: 0.25rem !important; + margin-top: .25rem!important; + margin-bottom: .25rem!important; } + .my-sm-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.5rem !important; + margin-top: .5rem!important; + margin-bottom: .5rem!important; } + .my-sm-3 { - margin-top: 1rem !important; - margin-bottom: 1rem !important; + margin-top: 1rem!important; + margin-bottom: 1rem!important; } + .my-sm-4 { - margin-top: 1.5rem !important; - margin-bottom: 1.5rem !important; + margin-top: 1.5rem!important; + margin-bottom: 1.5rem!important; } + .my-sm-5 { - margin-top: 3rem !important; - margin-bottom: 3rem !important; + margin-top: 3rem!important; + margin-bottom: 3rem!important; } + .my-sm-auto { - margin-top: auto !important; - margin-bottom: auto !important; + margin-top: auto!important; + margin-bottom: auto!important; } + .mt-sm-0 { - margin-top: 0 !important; + margin-top: 0!important; } + .mt-sm-1 { - margin-top: 0.25rem !important; + margin-top: .25rem!important; } + .mt-sm-2 { - margin-top: 0.5rem !important; + margin-top: .5rem!important; } + .mt-sm-3 { - margin-top: 1rem !important; + margin-top: 1rem!important; } + .mt-sm-4 { - margin-top: 1.5rem !important; + margin-top: 1.5rem!important; } + .mt-sm-5 { - margin-top: 3rem !important; + margin-top: 3rem!important; } + .mt-sm-auto { - margin-top: auto !important; + margin-top: auto!important; } + .me-sm-0 { - margin-right: 0 !important; + margin-right: 0!important; } + .me-sm-1 { - margin-right: 0.25rem !important; + margin-right: .25rem!important; } + .me-sm-2 { - margin-right: 0.5rem !important; + margin-right: .5rem!important; } + .me-sm-3 { - margin-right: 1rem !important; + margin-right: 1rem!important; } + .me-sm-4 { - margin-right: 1.5rem !important; + margin-right: 1.5rem!important; } + .me-sm-5 { - margin-right: 3rem !important; + margin-right: 3rem!important; } + .me-sm-auto { - margin-right: auto !important; + margin-right: auto!important; } + .mb-sm-0 { - margin-bottom: 0 !important; + margin-bottom: 0!important; } + .mb-sm-1 { - margin-bottom: 0.25rem !important; + margin-bottom: .25rem!important; } + .mb-sm-2 { - margin-bottom: 0.5rem !important; + margin-bottom: .5rem!important; } + .mb-sm-3 { - margin-bottom: 1rem !important; + margin-bottom: 1rem!important; } + .mb-sm-4 { - margin-bottom: 1.5rem !important; + margin-bottom: 1.5rem!important; } + .mb-sm-5 { - margin-bottom: 3rem !important; + margin-bottom: 3rem!important; } + .mb-sm-auto { - margin-bottom: auto !important; + margin-bottom: auto!important; } + .ms-sm-0 { - margin-left: 0 !important; + margin-left: 0!important; } + .ms-sm-1 { - margin-left: 0.25rem !important; + margin-left: .25rem!important; } + .ms-sm-2 { - margin-left: 0.5rem !important; + margin-left: .5rem!important; } + .ms-sm-3 { - margin-left: 1rem !important; + margin-left: 1rem!important; } + .ms-sm-4 { - margin-left: 1.5rem !important; + margin-left: 1.5rem!important; } + .ms-sm-5 { - margin-left: 3rem !important; + margin-left: 3rem!important; } + .ms-sm-auto { - margin-left: auto !important; + margin-left: auto!important; } + .m-sm-n1 { - margin: -0.25rem !important; + margin: -.25rem!important; } + .m-sm-n2 { - margin: -0.5rem !important; + margin: -.5rem!important; } + .m-sm-n3 { - margin: -1rem !important; + margin: -1rem!important; } + .m-sm-n4 { - margin: -1.5rem !important; + margin: -1.5rem!important; } + .m-sm-n5 { - margin: -3rem !important; + margin: -3rem!important; } + .mx-sm-n1 { - margin-right: -0.25rem !important; - margin-left: -0.25rem !important; + margin-right: -.25rem!important; + margin-left: -.25rem!important; } + .mx-sm-n2 { - margin-right: -0.5rem !important; - margin-left: -0.5rem !important; + margin-right: -.5rem!important; + margin-left: -.5rem!important; } + .mx-sm-n3 { - margin-right: -1rem !important; - margin-left: -1rem !important; + margin-right: -1rem!important; + margin-left: -1rem!important; } + .mx-sm-n4 { - margin-right: -1.5rem !important; - margin-left: -1.5rem !important; + margin-right: -1.5rem!important; + margin-left: -1.5rem!important; } + .mx-sm-n5 { - margin-right: -3rem !important; - margin-left: -3rem !important; + margin-right: -3rem!important; + margin-left: -3rem!important; } + .my-sm-n1 { - margin-top: -0.25rem !important; - margin-bottom: -0.25rem !important; + margin-top: -.25rem!important; + margin-bottom: -.25rem!important; } + .my-sm-n2 { - margin-top: -0.5rem !important; - margin-bottom: -0.5rem !important; + margin-top: -.5rem!important; + margin-bottom: -.5rem!important; } + .my-sm-n3 { - margin-top: -1rem !important; - margin-bottom: -1rem !important; + margin-top: -1rem!important; + margin-bottom: -1rem!important; } + .my-sm-n4 { - margin-top: -1.5rem !important; - margin-bottom: -1.5rem !important; + margin-top: -1.5rem!important; + margin-bottom: -1.5rem!important; } + .my-sm-n5 { - margin-top: -3rem !important; - margin-bottom: -3rem !important; + margin-top: -3rem!important; + margin-bottom: -3rem!important; } + .mt-sm-n1 { - margin-top: -0.25rem !important; + margin-top: -.25rem!important; } + .mt-sm-n2 { - margin-top: -0.5rem !important; + margin-top: -.5rem!important; } + .mt-sm-n3 { - margin-top: -1rem !important; + margin-top: -1rem!important; } + .mt-sm-n4 { - margin-top: -1.5rem !important; + margin-top: -1.5rem!important; } + .mt-sm-n5 { - margin-top: -3rem !important; + margin-top: -3rem!important; } + .me-sm-n1 { - margin-right: -0.25rem !important; + margin-right: -.25rem!important; } + .me-sm-n2 { - margin-right: -0.5rem !important; + margin-right: -.5rem!important; } + .me-sm-n3 { - margin-right: -1rem !important; + margin-right: -1rem!important; } + .me-sm-n4 { - margin-right: -1.5rem !important; + margin-right: -1.5rem!important; } + .me-sm-n5 { - margin-right: -3rem !important; + margin-right: -3rem!important; } + .mb-sm-n1 { - margin-bottom: -0.25rem !important; + margin-bottom: -.25rem!important; } + .mb-sm-n2 { - margin-bottom: -0.5rem !important; + margin-bottom: -.5rem!important; } + .mb-sm-n3 { - margin-bottom: -1rem !important; + margin-bottom: -1rem!important; } + .mb-sm-n4 { - margin-bottom: -1.5rem !important; + margin-bottom: -1.5rem!important; } + .mb-sm-n5 { - margin-bottom: -3rem !important; + margin-bottom: -3rem!important; } + .ms-sm-n1 { - margin-left: -0.25rem !important; + margin-left: -.25rem!important; } + .ms-sm-n2 { - margin-left: -0.5rem !important; + margin-left: -.5rem!important; } + .ms-sm-n3 { - margin-left: -1rem !important; + margin-left: -1rem!important; } + .ms-sm-n4 { - margin-left: -1.5rem !important; + margin-left: -1.5rem!important; } + .ms-sm-n5 { - margin-left: -3rem !important; + margin-left: -3rem!important; } + .p-sm-0 { - padding: 0 !important; + padding: 0!important; } + .p-sm-1 { - padding: 0.25rem !important; + padding: .25rem!important; } + .p-sm-2 { - padding: 0.5rem !important; + padding: .5rem!important; } + .p-sm-3 { - padding: 1rem !important; + padding: 1rem!important; } + .p-sm-4 { - padding: 1.5rem !important; + padding: 1.5rem!important; } + .p-sm-5 { - padding: 3rem !important; + padding: 3rem!important; } + .px-sm-0 { - padding-right: 0 !important; - padding-left: 0 !important; + padding-right: 0!important; + padding-left: 0!important; } + .px-sm-1 { - padding-right: 0.25rem !important; - padding-left: 0.25rem !important; + padding-right: .25rem!important; + padding-left: .25rem!important; } + .px-sm-2 { - padding-right: 0.5rem !important; - padding-left: 0.5rem !important; + padding-right: .5rem!important; + padding-left: .5rem!important; } + .px-sm-3 { - padding-right: 1rem !important; - padding-left: 1rem !important; + padding-right: 1rem!important; + padding-left: 1rem!important; } + .px-sm-4 { - padding-right: 1.5rem !important; - padding-left: 1.5rem !important; + padding-right: 1.5rem!important; + padding-left: 1.5rem!important; } + .px-sm-5 { - padding-right: 3rem !important; - padding-left: 3rem !important; + padding-right: 3rem!important; + padding-left: 3rem!important; } + .py-sm-0 { - padding-top: 0 !important; - padding-bottom: 0 !important; + padding-top: 0!important; + padding-bottom: 0!important; } + .py-sm-1 { - padding-top: 0.25rem !important; - padding-bottom: 0.25rem !important; + padding-top: .25rem!important; + padding-bottom: .25rem!important; } + .py-sm-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.5rem !important; + padding-top: .5rem!important; + padding-bottom: .5rem!important; } + .py-sm-3 { - padding-top: 1rem !important; - padding-bottom: 1rem !important; + padding-top: 1rem!important; + padding-bottom: 1rem!important; } + .py-sm-4 { - padding-top: 1.5rem !important; - padding-bottom: 1.5rem !important; + padding-top: 1.5rem!important; + padding-bottom: 1.5rem!important; } + .py-sm-5 { - padding-top: 3rem !important; - padding-bottom: 3rem !important; + padding-top: 3rem!important; + padding-bottom: 3rem!important; } + .pt-sm-0 { - padding-top: 0 !important; + padding-top: 0!important; } + .pt-sm-1 { - padding-top: 0.25rem !important; + padding-top: .25rem!important; } + .pt-sm-2 { - padding-top: 0.5rem !important; + padding-top: .5rem!important; } + .pt-sm-3 { - padding-top: 1rem !important; + padding-top: 1rem!important; } + .pt-sm-4 { - padding-top: 1.5rem !important; + padding-top: 1.5rem!important; } + .pt-sm-5 { - padding-top: 3rem !important; + padding-top: 3rem!important; } + .pe-sm-0 { - padding-right: 0 !important; + padding-right: 0!important; } + .pe-sm-1 { - padding-right: 0.25rem !important; + padding-right: .25rem!important; } + .pe-sm-2 { - padding-right: 0.5rem !important; + padding-right: .5rem!important; } + .pe-sm-3 { - padding-right: 1rem !important; + padding-right: 1rem!important; } + .pe-sm-4 { - padding-right: 1.5rem !important; + padding-right: 1.5rem!important; } + .pe-sm-5 { - padding-right: 3rem !important; + padding-right: 3rem!important; } + .pb-sm-0 { - padding-bottom: 0 !important; + padding-bottom: 0!important; } + .pb-sm-1 { - padding-bottom: 0.25rem !important; + padding-bottom: .25rem!important; } + .pb-sm-2 { - padding-bottom: 0.5rem !important; + padding-bottom: .5rem!important; } + .pb-sm-3 { - padding-bottom: 1rem !important; + padding-bottom: 1rem!important; } + .pb-sm-4 { - padding-bottom: 1.5rem !important; + padding-bottom: 1.5rem!important; } + .pb-sm-5 { - padding-bottom: 3rem !important; + padding-bottom: 3rem!important; } + .ps-sm-0 { - padding-left: 0 !important; + padding-left: 0!important; } + .ps-sm-1 { - padding-left: 0.25rem !important; + padding-left: .25rem!important; } + .ps-sm-2 { - padding-left: 0.5rem !important; + padding-left: .5rem!important; } + .ps-sm-3 { - padding-left: 1rem !important; + padding-left: 1rem!important; } + .ps-sm-4 { - padding-left: 1.5rem !important; + padding-left: 1.5rem!important; } + .ps-sm-5 { - padding-left: 3rem !important; + padding-left: 3rem!important; } + .text-sm-start { - text-align: left !important; + text-align: left!important; } + .text-sm-end { - text-align: right !important; + text-align: right!important; } + .text-sm-center { - text-align: center !important; + text-align: center!important; } } -@media (min-width: 768px) { +@media(min-width:768px) { .float-md-start { - float: left !important; + float: left!important; } + .float-md-end { - float: right !important; + float: right!important; } + .float-md-none { - float: none !important; + float: none!important; } + .d-md-inline { - display: inline !important; + display: inline!important; } + .d-md-inline-block { - display: inline-block !important; + display: inline-block!important; } + .d-md-block { - display: block !important; + display: block!important; } + .d-md-grid { - display: grid !important; + display: grid!important; } + .d-md-table { - display: table !important; + display: table!important; } + .d-md-table-row { - display: table-row !important; + display: table-row!important; } + .d-md-table-cell { - display: table-cell !important; + display: table-cell!important; } + .d-md-flex { - display: flex !important; + display: flex!important; } + .d-md-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } + .d-md-none { - display: none !important; + display: none!important; } + .flex-md-fill { - flex: 1 1 auto !important; + flex: 1 1 auto!important; } + .flex-md-row { - flex-direction: row !important; + flex-direction: row!important; } + .flex-md-column { - flex-direction: column !important; + flex-direction: column!important; } + .flex-md-row-reverse { - flex-direction: row-reverse !important; + flex-direction: row-reverse!important; } + .flex-md-column-reverse { - flex-direction: column-reverse !important; + flex-direction: column-reverse!important; } + .flex-md-grow-0 { - flex-grow: 0 !important; + flex-grow: 0!important; } + .flex-md-grow-1 { - flex-grow: 1 !important; + flex-grow: 1!important; } + .flex-md-shrink-0 { - flex-shrink: 0 !important; + flex-shrink: 0!important; } + .flex-md-shrink-1 { - flex-shrink: 1 !important; + flex-shrink: 1!important; } + .flex-md-wrap { - flex-wrap: wrap !important; + flex-wrap: wrap!important; } + .flex-md-nowrap { - flex-wrap: nowrap !important; + flex-wrap: nowrap!important; } + .flex-md-wrap-reverse { - flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse!important; } + .gap-md-0 { - gap: 0 !important; + gap: 0!important; } + .gap-md-1 { - gap: 0.25rem !important; + gap: .25rem!important; } + .gap-md-2 { - gap: 0.5rem !important; + gap: .5rem!important; } + .gap-md-3 { - gap: 1rem !important; + gap: 1rem!important; } + .gap-md-4 { - gap: 1.5rem !important; + gap: 1.5rem!important; } + .gap-md-5 { - gap: 3rem !important; + gap: 3rem!important; } + .justify-content-md-start { - justify-content: flex-start !important; + justify-content: flex-start!important; } + .justify-content-md-end { - justify-content: flex-end !important; + justify-content: flex-end!important; } + .justify-content-md-center { - justify-content: center !important; + justify-content: center!important; } + .justify-content-md-between { - justify-content: space-between !important; + justify-content: space-between!important; } + .justify-content-md-around { - justify-content: space-around !important; + justify-content: space-around!important; } + .justify-content-md-evenly { - justify-content: space-evenly !important; + justify-content: space-evenly!important; } + .align-items-md-start { - align-items: flex-start !important; + align-items: flex-start!important; } + .align-items-md-end { - align-items: flex-end !important; + align-items: flex-end!important; } + .align-items-md-center { - align-items: center !important; + align-items: center!important; } + .align-items-md-baseline { - align-items: baseline !important; + align-items: baseline!important; } + .align-items-md-stretch { - align-items: stretch !important; + align-items: stretch!important; } + .align-content-md-start { - align-content: flex-start !important; + align-content: flex-start!important; } + .align-content-md-end { - align-content: flex-end !important; + align-content: flex-end!important; } + .align-content-md-center { - align-content: center !important; + align-content: center!important; } + .align-content-md-between { - align-content: space-between !important; + align-content: space-between!important; } + .align-content-md-around { - align-content: space-around !important; + align-content: space-around!important; } + .align-content-md-stretch { - align-content: stretch !important; + align-content: stretch!important; } + .align-self-md-auto { - align-self: auto !important; + align-self: auto!important; } + .align-self-md-start { - align-self: flex-start !important; + align-self: flex-start!important; } + .align-self-md-end { - align-self: flex-end !important; + align-self: flex-end!important; } + .align-self-md-center { - align-self: center !important; + align-self: center!important; } + .align-self-md-baseline { - align-self: baseline !important; + align-self: baseline!important; } + .align-self-md-stretch { - align-self: stretch !important; + align-self: stretch!important; } + .order-md-first { - order: -1 !important; + order: -1!important; } + .order-md-0 { - order: 0 !important; + order: 0!important; } + .order-md-1 { - order: 1 !important; + order: 1!important; } + .order-md-2 { - order: 2 !important; + order: 2!important; } + .order-md-3 { - order: 3 !important; + order: 3!important; } + .order-md-4 { - order: 4 !important; + order: 4!important; } + .order-md-5 { - order: 5 !important; + order: 5!important; } + .order-md-last { - order: 6 !important; + order: 6!important; } + .m-md-0 { - margin: 0 !important; + margin: 0!important; } + .m-md-1 { - margin: 0.25rem !important; + margin: .25rem!important; } + .m-md-2 { - margin: 0.5rem !important; + margin: .5rem!important; } + .m-md-3 { - margin: 1rem !important; + margin: 1rem!important; } + .m-md-4 { - margin: 1.5rem !important; + margin: 1.5rem!important; } + .m-md-5 { - margin: 3rem !important; + margin: 3rem!important; } + .m-md-auto { - margin: auto !important; + margin: auto!important; } + .mx-md-0 { - margin-right: 0 !important; - margin-left: 0 !important; + margin-right: 0!important; + margin-left: 0!important; } + .mx-md-1 { - margin-right: 0.25rem !important; - margin-left: 0.25rem !important; + margin-right: .25rem!important; + margin-left: .25rem!important; } + .mx-md-2 { - margin-right: 0.5rem !important; - margin-left: 0.5rem !important; + margin-right: .5rem!important; + margin-left: .5rem!important; } + .mx-md-3 { - margin-right: 1rem !important; - margin-left: 1rem !important; + margin-right: 1rem!important; + margin-left: 1rem!important; } + .mx-md-4 { - margin-right: 1.5rem !important; - margin-left: 1.5rem !important; + margin-right: 1.5rem!important; + margin-left: 1.5rem!important; } + .mx-md-5 { - margin-right: 3rem !important; - margin-left: 3rem !important; + margin-right: 3rem!important; + margin-left: 3rem!important; } + .mx-md-auto { - margin-right: auto !important; - margin-left: auto !important; + margin-right: auto!important; + margin-left: auto!important; } + .my-md-0 { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0!important; + margin-bottom: 0!important; } + .my-md-1 { - margin-top: 0.25rem !important; - margin-bottom: 0.25rem !important; + margin-top: .25rem!important; + margin-bottom: .25rem!important; } + .my-md-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.5rem !important; + margin-top: .5rem!important; + margin-bottom: .5rem!important; } + .my-md-3 { - margin-top: 1rem !important; - margin-bottom: 1rem !important; + margin-top: 1rem!important; + margin-bottom: 1rem!important; } + .my-md-4 { - margin-top: 1.5rem !important; - margin-bottom: 1.5rem !important; + margin-top: 1.5rem!important; + margin-bottom: 1.5rem!important; } + .my-md-5 { - margin-top: 3rem !important; - margin-bottom: 3rem !important; + margin-top: 3rem!important; + margin-bottom: 3rem!important; } + .my-md-auto { - margin-top: auto !important; - margin-bottom: auto !important; + margin-top: auto!important; + margin-bottom: auto!important; } + .mt-md-0 { - margin-top: 0 !important; + margin-top: 0!important; } + .mt-md-1 { - margin-top: 0.25rem !important; + margin-top: .25rem!important; } + .mt-md-2 { - margin-top: 0.5rem !important; + margin-top: .5rem!important; } + .mt-md-3 { - margin-top: 1rem !important; + margin-top: 1rem!important; } + .mt-md-4 { - margin-top: 1.5rem !important; + margin-top: 1.5rem!important; } + .mt-md-5 { - margin-top: 3rem !important; + margin-top: 3rem!important; } + .mt-md-auto { - margin-top: auto !important; + margin-top: auto!important; } + .me-md-0 { - margin-right: 0 !important; + margin-right: 0!important; } + .me-md-1 { - margin-right: 0.25rem !important; + margin-right: .25rem!important; } + .me-md-2 { - margin-right: 0.5rem !important; + margin-right: .5rem!important; } + .me-md-3 { - margin-right: 1rem !important; + margin-right: 1rem!important; } + .me-md-4 { - margin-right: 1.5rem !important; + margin-right: 1.5rem!important; } + .me-md-5 { - margin-right: 3rem !important; + margin-right: 3rem!important; } + .me-md-auto { - margin-right: auto !important; + margin-right: auto!important; } + .mb-md-0 { - margin-bottom: 0 !important; + margin-bottom: 0!important; } + .mb-md-1 { - margin-bottom: 0.25rem !important; + margin-bottom: .25rem!important; } + .mb-md-2 { - margin-bottom: 0.5rem !important; + margin-bottom: .5rem!important; } + .mb-md-3 { - margin-bottom: 1rem !important; + margin-bottom: 1rem!important; } + .mb-md-4 { - margin-bottom: 1.5rem !important; + margin-bottom: 1.5rem!important; } + .mb-md-5 { - margin-bottom: 3rem !important; + margin-bottom: 3rem!important; } + .mb-md-auto { - margin-bottom: auto !important; + margin-bottom: auto!important; } + .ms-md-0 { - margin-left: 0 !important; + margin-left: 0!important; } + .ms-md-1 { - margin-left: 0.25rem !important; + margin-left: .25rem!important; } + .ms-md-2 { - margin-left: 0.5rem !important; + margin-left: .5rem!important; } + .ms-md-3 { - margin-left: 1rem !important; + margin-left: 1rem!important; } + .ms-md-4 { - margin-left: 1.5rem !important; + margin-left: 1.5rem!important; } + .ms-md-5 { - margin-left: 3rem !important; + margin-left: 3rem!important; } + .ms-md-auto { - margin-left: auto !important; + margin-left: auto!important; } + .m-md-n1 { - margin: -0.25rem !important; + margin: -.25rem!important; } + .m-md-n2 { - margin: -0.5rem !important; + margin: -.5rem!important; } + .m-md-n3 { - margin: -1rem !important; + margin: -1rem!important; } + .m-md-n4 { - margin: -1.5rem !important; + margin: -1.5rem!important; } + .m-md-n5 { - margin: -3rem !important; + margin: -3rem!important; } + .mx-md-n1 { - margin-right: -0.25rem !important; - margin-left: -0.25rem !important; + margin-right: -.25rem!important; + margin-left: -.25rem!important; } + .mx-md-n2 { - margin-right: -0.5rem !important; - margin-left: -0.5rem !important; + margin-right: -.5rem!important; + margin-left: -.5rem!important; } + .mx-md-n3 { - margin-right: -1rem !important; - margin-left: -1rem !important; + margin-right: -1rem!important; + margin-left: -1rem!important; } + .mx-md-n4 { - margin-right: -1.5rem !important; - margin-left: -1.5rem !important; + margin-right: -1.5rem!important; + margin-left: -1.5rem!important; } + .mx-md-n5 { - margin-right: -3rem !important; - margin-left: -3rem !important; + margin-right: -3rem!important; + margin-left: -3rem!important; } + .my-md-n1 { - margin-top: -0.25rem !important; - margin-bottom: -0.25rem !important; + margin-top: -.25rem!important; + margin-bottom: -.25rem!important; } + .my-md-n2 { - margin-top: -0.5rem !important; - margin-bottom: -0.5rem !important; + margin-top: -.5rem!important; + margin-bottom: -.5rem!important; } + .my-md-n3 { - margin-top: -1rem !important; - margin-bottom: -1rem !important; + margin-top: -1rem!important; + margin-bottom: -1rem!important; } + .my-md-n4 { - margin-top: -1.5rem !important; - margin-bottom: -1.5rem !important; + margin-top: -1.5rem!important; + margin-bottom: -1.5rem!important; } + .my-md-n5 { - margin-top: -3rem !important; - margin-bottom: -3rem !important; + margin-top: -3rem!important; + margin-bottom: -3rem!important; } + .mt-md-n1 { - margin-top: -0.25rem !important; + margin-top: -.25rem!important; } + .mt-md-n2 { - margin-top: -0.5rem !important; + margin-top: -.5rem!important; } + .mt-md-n3 { - margin-top: -1rem !important; + margin-top: -1rem!important; } + .mt-md-n4 { - margin-top: -1.5rem !important; + margin-top: -1.5rem!important; } + .mt-md-n5 { - margin-top: -3rem !important; + margin-top: -3rem!important; } + .me-md-n1 { - margin-right: -0.25rem !important; + margin-right: -.25rem!important; } + .me-md-n2 { - margin-right: -0.5rem !important; + margin-right: -.5rem!important; } + .me-md-n3 { - margin-right: -1rem !important; + margin-right: -1rem!important; } + .me-md-n4 { - margin-right: -1.5rem !important; + margin-right: -1.5rem!important; } + .me-md-n5 { - margin-right: -3rem !important; + margin-right: -3rem!important; } + .mb-md-n1 { - margin-bottom: -0.25rem !important; + margin-bottom: -.25rem!important; } + .mb-md-n2 { - margin-bottom: -0.5rem !important; + margin-bottom: -.5rem!important; } + .mb-md-n3 { - margin-bottom: -1rem !important; + margin-bottom: -1rem!important; } + .mb-md-n4 { - margin-bottom: -1.5rem !important; + margin-bottom: -1.5rem!important; } + .mb-md-n5 { - margin-bottom: -3rem !important; + margin-bottom: -3rem!important; } + .ms-md-n1 { - margin-left: -0.25rem !important; + margin-left: -.25rem!important; } + .ms-md-n2 { - margin-left: -0.5rem !important; + margin-left: -.5rem!important; } + .ms-md-n3 { - margin-left: -1rem !important; + margin-left: -1rem!important; } + .ms-md-n4 { - margin-left: -1.5rem !important; + margin-left: -1.5rem!important; } + .ms-md-n5 { - margin-left: -3rem !important; + margin-left: -3rem!important; } + .p-md-0 { - padding: 0 !important; + padding: 0!important; } + .p-md-1 { - padding: 0.25rem !important; + padding: .25rem!important; } + .p-md-2 { - padding: 0.5rem !important; + padding: .5rem!important; } + .p-md-3 { - padding: 1rem !important; + padding: 1rem!important; } + .p-md-4 { - padding: 1.5rem !important; + padding: 1.5rem!important; } + .p-md-5 { - padding: 3rem !important; + padding: 3rem!important; } + .px-md-0 { - padding-right: 0 !important; - padding-left: 0 !important; + padding-right: 0!important; + padding-left: 0!important; } + .px-md-1 { - padding-right: 0.25rem !important; - padding-left: 0.25rem !important; + padding-right: .25rem!important; + padding-left: .25rem!important; } + .px-md-2 { - padding-right: 0.5rem !important; - padding-left: 0.5rem !important; + padding-right: .5rem!important; + padding-left: .5rem!important; } + .px-md-3 { - padding-right: 1rem !important; - padding-left: 1rem !important; + padding-right: 1rem!important; + padding-left: 1rem!important; } + .px-md-4 { - padding-right: 1.5rem !important; - padding-left: 1.5rem !important; + padding-right: 1.5rem!important; + padding-left: 1.5rem!important; } + .px-md-5 { - padding-right: 3rem !important; - padding-left: 3rem !important; + padding-right: 3rem!important; + padding-left: 3rem!important; } + .py-md-0 { - padding-top: 0 !important; - padding-bottom: 0 !important; + padding-top: 0!important; + padding-bottom: 0!important; } + .py-md-1 { - padding-top: 0.25rem !important; - padding-bottom: 0.25rem !important; + padding-top: .25rem!important; + padding-bottom: .25rem!important; } + .py-md-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.5rem !important; + padding-top: .5rem!important; + padding-bottom: .5rem!important; } + .py-md-3 { - padding-top: 1rem !important; - padding-bottom: 1rem !important; + padding-top: 1rem!important; + padding-bottom: 1rem!important; } + .py-md-4 { - padding-top: 1.5rem !important; - padding-bottom: 1.5rem !important; + padding-top: 1.5rem!important; + padding-bottom: 1.5rem!important; } + .py-md-5 { - padding-top: 3rem !important; - padding-bottom: 3rem !important; + padding-top: 3rem!important; + padding-bottom: 3rem!important; } + .pt-md-0 { - padding-top: 0 !important; + padding-top: 0!important; } + .pt-md-1 { - padding-top: 0.25rem !important; + padding-top: .25rem!important; } + .pt-md-2 { - padding-top: 0.5rem !important; + padding-top: .5rem!important; } + .pt-md-3 { - padding-top: 1rem !important; + padding-top: 1rem!important; } + .pt-md-4 { - padding-top: 1.5rem !important; + padding-top: 1.5rem!important; } + .pt-md-5 { - padding-top: 3rem !important; + padding-top: 3rem!important; } + .pe-md-0 { - padding-right: 0 !important; + padding-right: 0!important; } + .pe-md-1 { - padding-right: 0.25rem !important; + padding-right: .25rem!important; } + .pe-md-2 { - padding-right: 0.5rem !important; + padding-right: .5rem!important; } + .pe-md-3 { - padding-right: 1rem !important; + padding-right: 1rem!important; } + .pe-md-4 { - padding-right: 1.5rem !important; + padding-right: 1.5rem!important; } + .pe-md-5 { - padding-right: 3rem !important; + padding-right: 3rem!important; } + .pb-md-0 { - padding-bottom: 0 !important; + padding-bottom: 0!important; } + .pb-md-1 { - padding-bottom: 0.25rem !important; + padding-bottom: .25rem!important; } + .pb-md-2 { - padding-bottom: 0.5rem !important; + padding-bottom: .5rem!important; } + .pb-md-3 { - padding-bottom: 1rem !important; + padding-bottom: 1rem!important; } + .pb-md-4 { - padding-bottom: 1.5rem !important; + padding-bottom: 1.5rem!important; } + .pb-md-5 { - padding-bottom: 3rem !important; + padding-bottom: 3rem!important; } + .ps-md-0 { - padding-left: 0 !important; + padding-left: 0!important; } + .ps-md-1 { - padding-left: 0.25rem !important; + padding-left: .25rem!important; } + .ps-md-2 { - padding-left: 0.5rem !important; + padding-left: .5rem!important; } + .ps-md-3 { - padding-left: 1rem !important; + padding-left: 1rem!important; } + .ps-md-4 { - padding-left: 1.5rem !important; + padding-left: 1.5rem!important; } + .ps-md-5 { - padding-left: 3rem !important; + padding-left: 3rem!important; } + .text-md-start { - text-align: left !important; + text-align: left!important; } + .text-md-end { - text-align: right !important; + text-align: right!important; } + .text-md-center { - text-align: center !important; + text-align: center!important; } } -@media (min-width: 992px) { +@media(min-width:992px) { .float-lg-start { - float: left !important; + float: left!important; } + .float-lg-end { - float: right !important; + float: right!important; } + .float-lg-none { - float: none !important; + float: none!important; } + .d-lg-inline { - display: inline !important; + display: inline!important; } + .d-lg-inline-block { - display: inline-block !important; + display: inline-block!important; } + .d-lg-block { - display: block !important; + display: block!important; } + .d-lg-grid { - display: grid !important; + display: grid!important; } + .d-lg-table { - display: table !important; + display: table!important; } + .d-lg-table-row { - display: table-row !important; + display: table-row!important; } + .d-lg-table-cell { - display: table-cell !important; + display: table-cell!important; } + .d-lg-flex { - display: flex !important; + display: flex!important; } + .d-lg-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } + .d-lg-none { - display: none !important; + display: none!important; } + .flex-lg-fill { - flex: 1 1 auto !important; + flex: 1 1 auto!important; } + .flex-lg-row { - flex-direction: row !important; + flex-direction: row!important; } + .flex-lg-column { - flex-direction: column !important; + flex-direction: column!important; } + .flex-lg-row-reverse { - flex-direction: row-reverse !important; + flex-direction: row-reverse!important; } + .flex-lg-column-reverse { - flex-direction: column-reverse !important; + flex-direction: column-reverse!important; } + .flex-lg-grow-0 { - flex-grow: 0 !important; + flex-grow: 0!important; } + .flex-lg-grow-1 { - flex-grow: 1 !important; + flex-grow: 1!important; } + .flex-lg-shrink-0 { - flex-shrink: 0 !important; + flex-shrink: 0!important; } + .flex-lg-shrink-1 { - flex-shrink: 1 !important; + flex-shrink: 1!important; } + .flex-lg-wrap { - flex-wrap: wrap !important; + flex-wrap: wrap!important; } + .flex-lg-nowrap { - flex-wrap: nowrap !important; + flex-wrap: nowrap!important; } + .flex-lg-wrap-reverse { - flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse!important; } + .gap-lg-0 { - gap: 0 !important; + gap: 0!important; } + .gap-lg-1 { - gap: 0.25rem !important; + gap: .25rem!important; } + .gap-lg-2 { - gap: 0.5rem !important; + gap: .5rem!important; } + .gap-lg-3 { - gap: 1rem !important; + gap: 1rem!important; } + .gap-lg-4 { - gap: 1.5rem !important; + gap: 1.5rem!important; } + .gap-lg-5 { - gap: 3rem !important; + gap: 3rem!important; } + .justify-content-lg-start { - justify-content: flex-start !important; + justify-content: flex-start!important; } + .justify-content-lg-end { - justify-content: flex-end !important; + justify-content: flex-end!important; } + .justify-content-lg-center { - justify-content: center !important; + justify-content: center!important; } + .justify-content-lg-between { - justify-content: space-between !important; + justify-content: space-between!important; } + .justify-content-lg-around { - justify-content: space-around !important; + justify-content: space-around!important; } + .justify-content-lg-evenly { - justify-content: space-evenly !important; + justify-content: space-evenly!important; } + .align-items-lg-start { - align-items: flex-start !important; + align-items: flex-start!important; } + .align-items-lg-end { - align-items: flex-end !important; + align-items: flex-end!important; } + .align-items-lg-center { - align-items: center !important; + align-items: center!important; } + .align-items-lg-baseline { - align-items: baseline !important; + align-items: baseline!important; } + .align-items-lg-stretch { - align-items: stretch !important; + align-items: stretch!important; } + .align-content-lg-start { - align-content: flex-start !important; + align-content: flex-start!important; } + .align-content-lg-end { - align-content: flex-end !important; + align-content: flex-end!important; } + .align-content-lg-center { - align-content: center !important; + align-content: center!important; } + .align-content-lg-between { - align-content: space-between !important; + align-content: space-between!important; } + .align-content-lg-around { - align-content: space-around !important; + align-content: space-around!important; } + .align-content-lg-stretch { - align-content: stretch !important; + align-content: stretch!important; } + .align-self-lg-auto { - align-self: auto !important; + align-self: auto!important; } + .align-self-lg-start { - align-self: flex-start !important; + align-self: flex-start!important; } + .align-self-lg-end { - align-self: flex-end !important; + align-self: flex-end!important; } + .align-self-lg-center { - align-self: center !important; + align-self: center!important; } + .align-self-lg-baseline { - align-self: baseline !important; + align-self: baseline!important; } + .align-self-lg-stretch { - align-self: stretch !important; + align-self: stretch!important; } + .order-lg-first { - order: -1 !important; + order: -1!important; } + .order-lg-0 { - order: 0 !important; + order: 0!important; } + .order-lg-1 { - order: 1 !important; + order: 1!important; } + .order-lg-2 { - order: 2 !important; + order: 2!important; } + .order-lg-3 { - order: 3 !important; + order: 3!important; } + .order-lg-4 { - order: 4 !important; + order: 4!important; } + .order-lg-5 { - order: 5 !important; + order: 5!important; } + .order-lg-last { - order: 6 !important; + order: 6!important; } + .m-lg-0 { - margin: 0 !important; + margin: 0!important; } + .m-lg-1 { - margin: 0.25rem !important; + margin: .25rem!important; } + .m-lg-2 { - margin: 0.5rem !important; + margin: .5rem!important; } + .m-lg-3 { - margin: 1rem !important; + margin: 1rem!important; } + .m-lg-4 { - margin: 1.5rem !important; + margin: 1.5rem!important; } + .m-lg-5 { - margin: 3rem !important; + margin: 3rem!important; } + .m-lg-auto { - margin: auto !important; + margin: auto!important; } + .mx-lg-0 { - margin-right: 0 !important; - margin-left: 0 !important; + margin-right: 0!important; + margin-left: 0!important; } + .mx-lg-1 { - margin-right: 0.25rem !important; - margin-left: 0.25rem !important; + margin-right: .25rem!important; + margin-left: .25rem!important; } + .mx-lg-2 { - margin-right: 0.5rem !important; - margin-left: 0.5rem !important; + margin-right: .5rem!important; + margin-left: .5rem!important; } + .mx-lg-3 { - margin-right: 1rem !important; - margin-left: 1rem !important; + margin-right: 1rem!important; + margin-left: 1rem!important; } + .mx-lg-4 { - margin-right: 1.5rem !important; - margin-left: 1.5rem !important; + margin-right: 1.5rem!important; + margin-left: 1.5rem!important; } + .mx-lg-5 { - margin-right: 3rem !important; - margin-left: 3rem !important; + margin-right: 3rem!important; + margin-left: 3rem!important; } + .mx-lg-auto { - margin-right: auto !important; - margin-left: auto !important; + margin-right: auto!important; + margin-left: auto!important; } + .my-lg-0 { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0!important; + margin-bottom: 0!important; } + .my-lg-1 { - margin-top: 0.25rem !important; - margin-bottom: 0.25rem !important; + margin-top: .25rem!important; + margin-bottom: .25rem!important; } + .my-lg-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.5rem !important; + margin-top: .5rem!important; + margin-bottom: .5rem!important; } + .my-lg-3 { - margin-top: 1rem !important; - margin-bottom: 1rem !important; + margin-top: 1rem!important; + margin-bottom: 1rem!important; } + .my-lg-4 { - margin-top: 1.5rem !important; - margin-bottom: 1.5rem !important; + margin-top: 1.5rem!important; + margin-bottom: 1.5rem!important; } + .my-lg-5 { - margin-top: 3rem !important; - margin-bottom: 3rem !important; + margin-top: 3rem!important; + margin-bottom: 3rem!important; } + .my-lg-auto { - margin-top: auto !important; - margin-bottom: auto !important; + margin-top: auto!important; + margin-bottom: auto!important; } + .mt-lg-0 { - margin-top: 0 !important; + margin-top: 0!important; } + .mt-lg-1 { - margin-top: 0.25rem !important; + margin-top: .25rem!important; } + .mt-lg-2 { - margin-top: 0.5rem !important; + margin-top: .5rem!important; } + .mt-lg-3 { - margin-top: 1rem !important; + margin-top: 1rem!important; } + .mt-lg-4 { - margin-top: 1.5rem !important; + margin-top: 1.5rem!important; } + .mt-lg-5 { - margin-top: 3rem !important; + margin-top: 3rem!important; } + .mt-lg-auto { - margin-top: auto !important; + margin-top: auto!important; } + .me-lg-0 { - margin-right: 0 !important; + margin-right: 0!important; } + .me-lg-1 { - margin-right: 0.25rem !important; + margin-right: .25rem!important; } + .me-lg-2 { - margin-right: 0.5rem !important; + margin-right: .5rem!important; } + .me-lg-3 { - margin-right: 1rem !important; + margin-right: 1rem!important; } + .me-lg-4 { - margin-right: 1.5rem !important; + margin-right: 1.5rem!important; } + .me-lg-5 { - margin-right: 3rem !important; + margin-right: 3rem!important; } + .me-lg-auto { - margin-right: auto !important; + margin-right: auto!important; } + .mb-lg-0 { - margin-bottom: 0 !important; + margin-bottom: 0!important; } + .mb-lg-1 { - margin-bottom: 0.25rem !important; + margin-bottom: .25rem!important; } + .mb-lg-2 { - margin-bottom: 0.5rem !important; + margin-bottom: .5rem!important; } + .mb-lg-3 { - margin-bottom: 1rem !important; + margin-bottom: 1rem!important; } + .mb-lg-4 { - margin-bottom: 1.5rem !important; + margin-bottom: 1.5rem!important; } + .mb-lg-5 { - margin-bottom: 3rem !important; + margin-bottom: 3rem!important; } + .mb-lg-auto { - margin-bottom: auto !important; + margin-bottom: auto!important; } + .ms-lg-0 { - margin-left: 0 !important; + margin-left: 0!important; } + .ms-lg-1 { - margin-left: 0.25rem !important; + margin-left: .25rem!important; } + .ms-lg-2 { - margin-left: 0.5rem !important; + margin-left: .5rem!important; } + .ms-lg-3 { - margin-left: 1rem !important; + margin-left: 1rem!important; } + .ms-lg-4 { - margin-left: 1.5rem !important; + margin-left: 1.5rem!important; } + .ms-lg-5 { - margin-left: 3rem !important; + margin-left: 3rem!important; } + .ms-lg-auto { - margin-left: auto !important; + margin-left: auto!important; } + .m-lg-n1 { - margin: -0.25rem !important; + margin: -.25rem!important; } + .m-lg-n2 { - margin: -0.5rem !important; + margin: -.5rem!important; } + .m-lg-n3 { - margin: -1rem !important; + margin: -1rem!important; } + .m-lg-n4 { - margin: -1.5rem !important; + margin: -1.5rem!important; } + .m-lg-n5 { - margin: -3rem !important; + margin: -3rem!important; } + .mx-lg-n1 { - margin-right: -0.25rem !important; - margin-left: -0.25rem !important; + margin-right: -.25rem!important; + margin-left: -.25rem!important; } + .mx-lg-n2 { - margin-right: -0.5rem !important; - margin-left: -0.5rem !important; + margin-right: -.5rem!important; + margin-left: -.5rem!important; } + .mx-lg-n3 { - margin-right: -1rem !important; - margin-left: -1rem !important; + margin-right: -1rem!important; + margin-left: -1rem!important; } + .mx-lg-n4 { - margin-right: -1.5rem !important; - margin-left: -1.5rem !important; + margin-right: -1.5rem!important; + margin-left: -1.5rem!important; } + .mx-lg-n5 { - margin-right: -3rem !important; - margin-left: -3rem !important; + margin-right: -3rem!important; + margin-left: -3rem!important; } + .my-lg-n1 { - margin-top: -0.25rem !important; - margin-bottom: -0.25rem !important; + margin-top: -.25rem!important; + margin-bottom: -.25rem!important; } + .my-lg-n2 { - margin-top: -0.5rem !important; - margin-bottom: -0.5rem !important; + margin-top: -.5rem!important; + margin-bottom: -.5rem!important; } + .my-lg-n3 { - margin-top: -1rem !important; - margin-bottom: -1rem !important; + margin-top: -1rem!important; + margin-bottom: -1rem!important; } + .my-lg-n4 { - margin-top: -1.5rem !important; - margin-bottom: -1.5rem !important; + margin-top: -1.5rem!important; + margin-bottom: -1.5rem!important; } + .my-lg-n5 { - margin-top: -3rem !important; - margin-bottom: -3rem !important; + margin-top: -3rem!important; + margin-bottom: -3rem!important; } + .mt-lg-n1 { - margin-top: -0.25rem !important; + margin-top: -.25rem!important; } + .mt-lg-n2 { - margin-top: -0.5rem !important; + margin-top: -.5rem!important; } + .mt-lg-n3 { - margin-top: -1rem !important; + margin-top: -1rem!important; } + .mt-lg-n4 { - margin-top: -1.5rem !important; + margin-top: -1.5rem!important; } + .mt-lg-n5 { - margin-top: -3rem !important; + margin-top: -3rem!important; } + .me-lg-n1 { - margin-right: -0.25rem !important; + margin-right: -.25rem!important; } + .me-lg-n2 { - margin-right: -0.5rem !important; + margin-right: -.5rem!important; } + .me-lg-n3 { - margin-right: -1rem !important; + margin-right: -1rem!important; } + .me-lg-n4 { - margin-right: -1.5rem !important; + margin-right: -1.5rem!important; } + .me-lg-n5 { - margin-right: -3rem !important; + margin-right: -3rem!important; } + .mb-lg-n1 { - margin-bottom: -0.25rem !important; + margin-bottom: -.25rem!important; } + .mb-lg-n2 { - margin-bottom: -0.5rem !important; + margin-bottom: -.5rem!important; } + .mb-lg-n3 { - margin-bottom: -1rem !important; + margin-bottom: -1rem!important; } + .mb-lg-n4 { - margin-bottom: -1.5rem !important; + margin-bottom: -1.5rem!important; } + .mb-lg-n5 { - margin-bottom: -3rem !important; + margin-bottom: -3rem!important; } + .ms-lg-n1 { - margin-left: -0.25rem !important; + margin-left: -.25rem!important; } + .ms-lg-n2 { - margin-left: -0.5rem !important; + margin-left: -.5rem!important; } + .ms-lg-n3 { - margin-left: -1rem !important; + margin-left: -1rem!important; } + .ms-lg-n4 { - margin-left: -1.5rem !important; + margin-left: -1.5rem!important; } + .ms-lg-n5 { - margin-left: -3rem !important; + margin-left: -3rem!important; } + .p-lg-0 { - padding: 0 !important; + padding: 0!important; } + .p-lg-1 { - padding: 0.25rem !important; + padding: .25rem!important; } + .p-lg-2 { - padding: 0.5rem !important; + padding: .5rem!important; } + .p-lg-3 { - padding: 1rem !important; + padding: 1rem!important; } + .p-lg-4 { - padding: 1.5rem !important; + padding: 1.5rem!important; } + .p-lg-5 { - padding: 3rem !important; + padding: 3rem!important; } + .px-lg-0 { - padding-right: 0 !important; - padding-left: 0 !important; + padding-right: 0!important; + padding-left: 0!important; } + .px-lg-1 { - padding-right: 0.25rem !important; - padding-left: 0.25rem !important; + padding-right: .25rem!important; + padding-left: .25rem!important; } + .px-lg-2 { - padding-right: 0.5rem !important; - padding-left: 0.5rem !important; + padding-right: .5rem!important; + padding-left: .5rem!important; } + .px-lg-3 { - padding-right: 1rem !important; - padding-left: 1rem !important; + padding-right: 1rem!important; + padding-left: 1rem!important; } + .px-lg-4 { - padding-right: 1.5rem !important; - padding-left: 1.5rem !important; + padding-right: 1.5rem!important; + padding-left: 1.5rem!important; } + .px-lg-5 { - padding-right: 3rem !important; - padding-left: 3rem !important; + padding-right: 3rem!important; + padding-left: 3rem!important; } + .py-lg-0 { - padding-top: 0 !important; - padding-bottom: 0 !important; + padding-top: 0!important; + padding-bottom: 0!important; } + .py-lg-1 { - padding-top: 0.25rem !important; - padding-bottom: 0.25rem !important; + padding-top: .25rem!important; + padding-bottom: .25rem!important; } + .py-lg-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.5rem !important; + padding-top: .5rem!important; + padding-bottom: .5rem!important; } + .py-lg-3 { - padding-top: 1rem !important; - padding-bottom: 1rem !important; + padding-top: 1rem!important; + padding-bottom: 1rem!important; } + .py-lg-4 { - padding-top: 1.5rem !important; - padding-bottom: 1.5rem !important; + padding-top: 1.5rem!important; + padding-bottom: 1.5rem!important; } + .py-lg-5 { - padding-top: 3rem !important; - padding-bottom: 3rem !important; + padding-top: 3rem!important; + padding-bottom: 3rem!important; } + .pt-lg-0 { - padding-top: 0 !important; + padding-top: 0!important; } + .pt-lg-1 { - padding-top: 0.25rem !important; + padding-top: .25rem!important; } + .pt-lg-2 { - padding-top: 0.5rem !important; + padding-top: .5rem!important; } + .pt-lg-3 { - padding-top: 1rem !important; + padding-top: 1rem!important; } + .pt-lg-4 { - padding-top: 1.5rem !important; + padding-top: 1.5rem!important; } + .pt-lg-5 { - padding-top: 3rem !important; + padding-top: 3rem!important; } + .pe-lg-0 { - padding-right: 0 !important; + padding-right: 0!important; } + .pe-lg-1 { - padding-right: 0.25rem !important; + padding-right: .25rem!important; } + .pe-lg-2 { - padding-right: 0.5rem !important; + padding-right: .5rem!important; } + .pe-lg-3 { - padding-right: 1rem !important; + padding-right: 1rem!important; } + .pe-lg-4 { - padding-right: 1.5rem !important; + padding-right: 1.5rem!important; } + .pe-lg-5 { - padding-right: 3rem !important; + padding-right: 3rem!important; } + .pb-lg-0 { - padding-bottom: 0 !important; + padding-bottom: 0!important; } + .pb-lg-1 { - padding-bottom: 0.25rem !important; + padding-bottom: .25rem!important; } + .pb-lg-2 { - padding-bottom: 0.5rem !important; + padding-bottom: .5rem!important; } + .pb-lg-3 { - padding-bottom: 1rem !important; + padding-bottom: 1rem!important; } + .pb-lg-4 { - padding-bottom: 1.5rem !important; + padding-bottom: 1.5rem!important; } + .pb-lg-5 { - padding-bottom: 3rem !important; + padding-bottom: 3rem!important; } + .ps-lg-0 { - padding-left: 0 !important; + padding-left: 0!important; } + .ps-lg-1 { - padding-left: 0.25rem !important; + padding-left: .25rem!important; } + .ps-lg-2 { - padding-left: 0.5rem !important; + padding-left: .5rem!important; } + .ps-lg-3 { - padding-left: 1rem !important; + padding-left: 1rem!important; } + .ps-lg-4 { - padding-left: 1.5rem !important; + padding-left: 1.5rem!important; } + .ps-lg-5 { - padding-left: 3rem !important; + padding-left: 3rem!important; } + .text-lg-start { - text-align: left !important; + text-align: left!important; } + .text-lg-end { - text-align: right !important; + text-align: right!important; } + .text-lg-center { - text-align: center !important; + text-align: center!important; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .float-xl-start { - float: left !important; + float: left!important; } + .float-xl-end { - float: right !important; + float: right!important; } + .float-xl-none { - float: none !important; + float: none!important; } + .d-xl-inline { - display: inline !important; + display: inline!important; } + .d-xl-inline-block { - display: inline-block !important; + display: inline-block!important; } + .d-xl-block { - display: block !important; + display: block!important; } + .d-xl-grid { - display: grid !important; + display: grid!important; } + .d-xl-table { - display: table !important; + display: table!important; } + .d-xl-table-row { - display: table-row !important; + display: table-row!important; } + .d-xl-table-cell { - display: table-cell !important; + display: table-cell!important; } + .d-xl-flex { - display: flex !important; + display: flex!important; } + .d-xl-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } + .d-xl-none { - display: none !important; + display: none!important; } + .flex-xl-fill { - flex: 1 1 auto !important; + flex: 1 1 auto!important; } + .flex-xl-row { - flex-direction: row !important; + flex-direction: row!important; } + .flex-xl-column { - flex-direction: column !important; + flex-direction: column!important; } + .flex-xl-row-reverse { - flex-direction: row-reverse !important; + flex-direction: row-reverse!important; } + .flex-xl-column-reverse { - flex-direction: column-reverse !important; + flex-direction: column-reverse!important; } + .flex-xl-grow-0 { - flex-grow: 0 !important; + flex-grow: 0!important; } + .flex-xl-grow-1 { - flex-grow: 1 !important; + flex-grow: 1!important; } + .flex-xl-shrink-0 { - flex-shrink: 0 !important; + flex-shrink: 0!important; } + .flex-xl-shrink-1 { - flex-shrink: 1 !important; + flex-shrink: 1!important; } + .flex-xl-wrap { - flex-wrap: wrap !important; + flex-wrap: wrap!important; } + .flex-xl-nowrap { - flex-wrap: nowrap !important; + flex-wrap: nowrap!important; } + .flex-xl-wrap-reverse { - flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse!important; } + .gap-xl-0 { - gap: 0 !important; + gap: 0!important; } + .gap-xl-1 { - gap: 0.25rem !important; + gap: .25rem!important; } + .gap-xl-2 { - gap: 0.5rem !important; + gap: .5rem!important; } + .gap-xl-3 { - gap: 1rem !important; + gap: 1rem!important; } + .gap-xl-4 { - gap: 1.5rem !important; + gap: 1.5rem!important; } + .gap-xl-5 { - gap: 3rem !important; + gap: 3rem!important; } + .justify-content-xl-start { - justify-content: flex-start !important; + justify-content: flex-start!important; } + .justify-content-xl-end { - justify-content: flex-end !important; + justify-content: flex-end!important; } + .justify-content-xl-center { - justify-content: center !important; + justify-content: center!important; } + .justify-content-xl-between { - justify-content: space-between !important; + justify-content: space-between!important; } + .justify-content-xl-around { - justify-content: space-around !important; + justify-content: space-around!important; } + .justify-content-xl-evenly { - justify-content: space-evenly !important; + justify-content: space-evenly!important; } + .align-items-xl-start { - align-items: flex-start !important; + align-items: flex-start!important; } + .align-items-xl-end { - align-items: flex-end !important; + align-items: flex-end!important; } + .align-items-xl-center { - align-items: center !important; + align-items: center!important; } + .align-items-xl-baseline { - align-items: baseline !important; + align-items: baseline!important; } + .align-items-xl-stretch { - align-items: stretch !important; + align-items: stretch!important; } + .align-content-xl-start { - align-content: flex-start !important; + align-content: flex-start!important; } + .align-content-xl-end { - align-content: flex-end !important; + align-content: flex-end!important; } + .align-content-xl-center { - align-content: center !important; + align-content: center!important; } + .align-content-xl-between { - align-content: space-between !important; + align-content: space-between!important; } + .align-content-xl-around { - align-content: space-around !important; + align-content: space-around!important; } + .align-content-xl-stretch { - align-content: stretch !important; + align-content: stretch!important; } + .align-self-xl-auto { - align-self: auto !important; + align-self: auto!important; } + .align-self-xl-start { - align-self: flex-start !important; + align-self: flex-start!important; } + .align-self-xl-end { - align-self: flex-end !important; + align-self: flex-end!important; } + .align-self-xl-center { - align-self: center !important; + align-self: center!important; } + .align-self-xl-baseline { - align-self: baseline !important; + align-self: baseline!important; } + .align-self-xl-stretch { - align-self: stretch !important; + align-self: stretch!important; } + .order-xl-first { - order: -1 !important; + order: -1!important; } + .order-xl-0 { - order: 0 !important; + order: 0!important; } + .order-xl-1 { - order: 1 !important; + order: 1!important; } + .order-xl-2 { - order: 2 !important; + order: 2!important; } + .order-xl-3 { - order: 3 !important; + order: 3!important; } + .order-xl-4 { - order: 4 !important; + order: 4!important; } + .order-xl-5 { - order: 5 !important; + order: 5!important; } + .order-xl-last { - order: 6 !important; + order: 6!important; } + .m-xl-0 { - margin: 0 !important; + margin: 0!important; } + .m-xl-1 { - margin: 0.25rem !important; + margin: .25rem!important; } + .m-xl-2 { - margin: 0.5rem !important; + margin: .5rem!important; } + .m-xl-3 { - margin: 1rem !important; + margin: 1rem!important; } + .m-xl-4 { - margin: 1.5rem !important; + margin: 1.5rem!important; } + .m-xl-5 { - margin: 3rem !important; + margin: 3rem!important; } + .m-xl-auto { - margin: auto !important; + margin: auto!important; } + .mx-xl-0 { - margin-right: 0 !important; - margin-left: 0 !important; + margin-right: 0!important; + margin-left: 0!important; } + .mx-xl-1 { - margin-right: 0.25rem !important; - margin-left: 0.25rem !important; + margin-right: .25rem!important; + margin-left: .25rem!important; } + .mx-xl-2 { - margin-right: 0.5rem !important; - margin-left: 0.5rem !important; + margin-right: .5rem!important; + margin-left: .5rem!important; } + .mx-xl-3 { - margin-right: 1rem !important; - margin-left: 1rem !important; + margin-right: 1rem!important; + margin-left: 1rem!important; } + .mx-xl-4 { - margin-right: 1.5rem !important; - margin-left: 1.5rem !important; + margin-right: 1.5rem!important; + margin-left: 1.5rem!important; } + .mx-xl-5 { - margin-right: 3rem !important; - margin-left: 3rem !important; + margin-right: 3rem!important; + margin-left: 3rem!important; } + .mx-xl-auto { - margin-right: auto !important; - margin-left: auto !important; + margin-right: auto!important; + margin-left: auto!important; } + .my-xl-0 { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0!important; + margin-bottom: 0!important; } + .my-xl-1 { - margin-top: 0.25rem !important; - margin-bottom: 0.25rem !important; + margin-top: .25rem!important; + margin-bottom: .25rem!important; } + .my-xl-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.5rem !important; + margin-top: .5rem!important; + margin-bottom: .5rem!important; } + .my-xl-3 { - margin-top: 1rem !important; - margin-bottom: 1rem !important; + margin-top: 1rem!important; + margin-bottom: 1rem!important; } + .my-xl-4 { - margin-top: 1.5rem !important; - margin-bottom: 1.5rem !important; + margin-top: 1.5rem!important; + margin-bottom: 1.5rem!important; } + .my-xl-5 { - margin-top: 3rem !important; - margin-bottom: 3rem !important; + margin-top: 3rem!important; + margin-bottom: 3rem!important; } + .my-xl-auto { - margin-top: auto !important; - margin-bottom: auto !important; + margin-top: auto!important; + margin-bottom: auto!important; } + .mt-xl-0 { - margin-top: 0 !important; + margin-top: 0!important; } + .mt-xl-1 { - margin-top: 0.25rem !important; + margin-top: .25rem!important; } + .mt-xl-2 { - margin-top: 0.5rem !important; + margin-top: .5rem!important; } + .mt-xl-3 { - margin-top: 1rem !important; + margin-top: 1rem!important; } + .mt-xl-4 { - margin-top: 1.5rem !important; + margin-top: 1.5rem!important; } + .mt-xl-5 { - margin-top: 3rem !important; + margin-top: 3rem!important; } + .mt-xl-auto { - margin-top: auto !important; + margin-top: auto!important; } + .me-xl-0 { - margin-right: 0 !important; + margin-right: 0!important; } + .me-xl-1 { - margin-right: 0.25rem !important; + margin-right: .25rem!important; } + .me-xl-2 { - margin-right: 0.5rem !important; + margin-right: .5rem!important; } + .me-xl-3 { - margin-right: 1rem !important; + margin-right: 1rem!important; } + .me-xl-4 { - margin-right: 1.5rem !important; + margin-right: 1.5rem!important; } + .me-xl-5 { - margin-right: 3rem !important; + margin-right: 3rem!important; } + .me-xl-auto { - margin-right: auto !important; + margin-right: auto!important; } + .mb-xl-0 { - margin-bottom: 0 !important; + margin-bottom: 0!important; } + .mb-xl-1 { - margin-bottom: 0.25rem !important; + margin-bottom: .25rem!important; } + .mb-xl-2 { - margin-bottom: 0.5rem !important; + margin-bottom: .5rem!important; } + .mb-xl-3 { - margin-bottom: 1rem !important; + margin-bottom: 1rem!important; } + .mb-xl-4 { - margin-bottom: 1.5rem !important; + margin-bottom: 1.5rem!important; } + .mb-xl-5 { - margin-bottom: 3rem !important; + margin-bottom: 3rem!important; } + .mb-xl-auto { - margin-bottom: auto !important; + margin-bottom: auto!important; } + .ms-xl-0 { - margin-left: 0 !important; + margin-left: 0!important; } + .ms-xl-1 { - margin-left: 0.25rem !important; + margin-left: .25rem!important; } + .ms-xl-2 { - margin-left: 0.5rem !important; + margin-left: .5rem!important; } + .ms-xl-3 { - margin-left: 1rem !important; + margin-left: 1rem!important; } + .ms-xl-4 { - margin-left: 1.5rem !important; + margin-left: 1.5rem!important; } + .ms-xl-5 { - margin-left: 3rem !important; + margin-left: 3rem!important; } + .ms-xl-auto { - margin-left: auto !important; + margin-left: auto!important; } + .m-xl-n1 { - margin: -0.25rem !important; + margin: -.25rem!important; } + .m-xl-n2 { - margin: -0.5rem !important; + margin: -.5rem!important; } + .m-xl-n3 { - margin: -1rem !important; + margin: -1rem!important; } + .m-xl-n4 { - margin: -1.5rem !important; + margin: -1.5rem!important; } + .m-xl-n5 { - margin: -3rem !important; + margin: -3rem!important; } + .mx-xl-n1 { - margin-right: -0.25rem !important; - margin-left: -0.25rem !important; + margin-right: -.25rem!important; + margin-left: -.25rem!important; } + .mx-xl-n2 { - margin-right: -0.5rem !important; - margin-left: -0.5rem !important; + margin-right: -.5rem!important; + margin-left: -.5rem!important; } + .mx-xl-n3 { - margin-right: -1rem !important; - margin-left: -1rem !important; + margin-right: -1rem!important; + margin-left: -1rem!important; } + .mx-xl-n4 { - margin-right: -1.5rem !important; - margin-left: -1.5rem !important; + margin-right: -1.5rem!important; + margin-left: -1.5rem!important; } + .mx-xl-n5 { - margin-right: -3rem !important; - margin-left: -3rem !important; + margin-right: -3rem!important; + margin-left: -3rem!important; } + .my-xl-n1 { - margin-top: -0.25rem !important; - margin-bottom: -0.25rem !important; + margin-top: -.25rem!important; + margin-bottom: -.25rem!important; } + .my-xl-n2 { - margin-top: -0.5rem !important; - margin-bottom: -0.5rem !important; + margin-top: -.5rem!important; + margin-bottom: -.5rem!important; } + .my-xl-n3 { - margin-top: -1rem !important; - margin-bottom: -1rem !important; + margin-top: -1rem!important; + margin-bottom: -1rem!important; } + .my-xl-n4 { - margin-top: -1.5rem !important; - margin-bottom: -1.5rem !important; + margin-top: -1.5rem!important; + margin-bottom: -1.5rem!important; } + .my-xl-n5 { - margin-top: -3rem !important; - margin-bottom: -3rem !important; + margin-top: -3rem!important; + margin-bottom: -3rem!important; } + .mt-xl-n1 { - margin-top: -0.25rem !important; + margin-top: -.25rem!important; } + .mt-xl-n2 { - margin-top: -0.5rem !important; + margin-top: -.5rem!important; } + .mt-xl-n3 { - margin-top: -1rem !important; + margin-top: -1rem!important; } + .mt-xl-n4 { - margin-top: -1.5rem !important; + margin-top: -1.5rem!important; } + .mt-xl-n5 { - margin-top: -3rem !important; + margin-top: -3rem!important; } + .me-xl-n1 { - margin-right: -0.25rem !important; + margin-right: -.25rem!important; } + .me-xl-n2 { - margin-right: -0.5rem !important; + margin-right: -.5rem!important; } + .me-xl-n3 { - margin-right: -1rem !important; + margin-right: -1rem!important; } + .me-xl-n4 { - margin-right: -1.5rem !important; + margin-right: -1.5rem!important; } + .me-xl-n5 { - margin-right: -3rem !important; + margin-right: -3rem!important; } + .mb-xl-n1 { - margin-bottom: -0.25rem !important; + margin-bottom: -.25rem!important; } + .mb-xl-n2 { - margin-bottom: -0.5rem !important; + margin-bottom: -.5rem!important; } + .mb-xl-n3 { - margin-bottom: -1rem !important; + margin-bottom: -1rem!important; } + .mb-xl-n4 { - margin-bottom: -1.5rem !important; + margin-bottom: -1.5rem!important; } + .mb-xl-n5 { - margin-bottom: -3rem !important; + margin-bottom: -3rem!important; } + .ms-xl-n1 { - margin-left: -0.25rem !important; + margin-left: -.25rem!important; } + .ms-xl-n2 { - margin-left: -0.5rem !important; + margin-left: -.5rem!important; } + .ms-xl-n3 { - margin-left: -1rem !important; + margin-left: -1rem!important; } + .ms-xl-n4 { - margin-left: -1.5rem !important; + margin-left: -1.5rem!important; } + .ms-xl-n5 { - margin-left: -3rem !important; + margin-left: -3rem!important; } + .p-xl-0 { - padding: 0 !important; + padding: 0!important; } + .p-xl-1 { - padding: 0.25rem !important; + padding: .25rem!important; } + .p-xl-2 { - padding: 0.5rem !important; + padding: .5rem!important; } + .p-xl-3 { - padding: 1rem !important; + padding: 1rem!important; } + .p-xl-4 { - padding: 1.5rem !important; + padding: 1.5rem!important; } + .p-xl-5 { - padding: 3rem !important; + padding: 3rem!important; } + .px-xl-0 { - padding-right: 0 !important; - padding-left: 0 !important; + padding-right: 0!important; + padding-left: 0!important; } + .px-xl-1 { - padding-right: 0.25rem !important; - padding-left: 0.25rem !important; + padding-right: .25rem!important; + padding-left: .25rem!important; } + .px-xl-2 { - padding-right: 0.5rem !important; - padding-left: 0.5rem !important; + padding-right: .5rem!important; + padding-left: .5rem!important; } + .px-xl-3 { - padding-right: 1rem !important; - padding-left: 1rem !important; + padding-right: 1rem!important; + padding-left: 1rem!important; } + .px-xl-4 { - padding-right: 1.5rem !important; - padding-left: 1.5rem !important; + padding-right: 1.5rem!important; + padding-left: 1.5rem!important; } + .px-xl-5 { - padding-right: 3rem !important; - padding-left: 3rem !important; + padding-right: 3rem!important; + padding-left: 3rem!important; } + .py-xl-0 { - padding-top: 0 !important; - padding-bottom: 0 !important; + padding-top: 0!important; + padding-bottom: 0!important; } + .py-xl-1 { - padding-top: 0.25rem !important; - padding-bottom: 0.25rem !important; + padding-top: .25rem!important; + padding-bottom: .25rem!important; } + .py-xl-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.5rem !important; + padding-top: .5rem!important; + padding-bottom: .5rem!important; } + .py-xl-3 { - padding-top: 1rem !important; - padding-bottom: 1rem !important; + padding-top: 1rem!important; + padding-bottom: 1rem!important; } + .py-xl-4 { - padding-top: 1.5rem !important; - padding-bottom: 1.5rem !important; + padding-top: 1.5rem!important; + padding-bottom: 1.5rem!important; } + .py-xl-5 { - padding-top: 3rem !important; - padding-bottom: 3rem !important; + padding-top: 3rem!important; + padding-bottom: 3rem!important; } + .pt-xl-0 { - padding-top: 0 !important; + padding-top: 0!important; } + .pt-xl-1 { - padding-top: 0.25rem !important; + padding-top: .25rem!important; } + .pt-xl-2 { - padding-top: 0.5rem !important; + padding-top: .5rem!important; } + .pt-xl-3 { - padding-top: 1rem !important; + padding-top: 1rem!important; } + .pt-xl-4 { - padding-top: 1.5rem !important; + padding-top: 1.5rem!important; } + .pt-xl-5 { - padding-top: 3rem !important; + padding-top: 3rem!important; } + .pe-xl-0 { - padding-right: 0 !important; + padding-right: 0!important; } + .pe-xl-1 { - padding-right: 0.25rem !important; + padding-right: .25rem!important; } + .pe-xl-2 { - padding-right: 0.5rem !important; + padding-right: .5rem!important; } + .pe-xl-3 { - padding-right: 1rem !important; + padding-right: 1rem!important; } + .pe-xl-4 { - padding-right: 1.5rem !important; + padding-right: 1.5rem!important; } + .pe-xl-5 { - padding-right: 3rem !important; + padding-right: 3rem!important; } + .pb-xl-0 { - padding-bottom: 0 !important; + padding-bottom: 0!important; } + .pb-xl-1 { - padding-bottom: 0.25rem !important; + padding-bottom: .25rem!important; } + .pb-xl-2 { - padding-bottom: 0.5rem !important; + padding-bottom: .5rem!important; } + .pb-xl-3 { - padding-bottom: 1rem !important; + padding-bottom: 1rem!important; } + .pb-xl-4 { - padding-bottom: 1.5rem !important; + padding-bottom: 1.5rem!important; } + .pb-xl-5 { - padding-bottom: 3rem !important; + padding-bottom: 3rem!important; } + .ps-xl-0 { - padding-left: 0 !important; + padding-left: 0!important; } + .ps-xl-1 { - padding-left: 0.25rem !important; + padding-left: .25rem!important; } + .ps-xl-2 { - padding-left: 0.5rem !important; + padding-left: .5rem!important; } + .ps-xl-3 { - padding-left: 1rem !important; + padding-left: 1rem!important; } + .ps-xl-4 { - padding-left: 1.5rem !important; + padding-left: 1.5rem!important; } + .ps-xl-5 { - padding-left: 3rem !important; + padding-left: 3rem!important; } + .text-xl-start { - text-align: left !important; + text-align: left!important; } + .text-xl-end { - text-align: right !important; + text-align: right!important; } + .text-xl-center { - text-align: center !important; + text-align: center!important; } } -@media (min-width: 1400px) { +@media(min-width:1400px) { .float-xxl-start { - float: left !important; + float: left!important; } + .float-xxl-end { - float: right !important; + float: right!important; } + .float-xxl-none { - float: none !important; + float: none!important; } + .d-xxl-inline { - display: inline !important; + display: inline!important; } + .d-xxl-inline-block { - display: inline-block !important; + display: inline-block!important; } + .d-xxl-block { - display: block !important; + display: block!important; } + .d-xxl-grid { - display: grid !important; + display: grid!important; } + .d-xxl-table { - display: table !important; + display: table!important; } + .d-xxl-table-row { - display: table-row !important; + display: table-row!important; } + .d-xxl-table-cell { - display: table-cell !important; + display: table-cell!important; } + .d-xxl-flex { - display: flex !important; + display: flex!important; } + .d-xxl-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } + .d-xxl-none { - display: none !important; + display: none!important; } + .flex-xxl-fill { - flex: 1 1 auto !important; + flex: 1 1 auto!important; } + .flex-xxl-row { - flex-direction: row !important; + flex-direction: row!important; } + .flex-xxl-column { - flex-direction: column !important; + flex-direction: column!important; } + .flex-xxl-row-reverse { - flex-direction: row-reverse !important; + flex-direction: row-reverse!important; } + .flex-xxl-column-reverse { - flex-direction: column-reverse !important; + flex-direction: column-reverse!important; } + .flex-xxl-grow-0 { - flex-grow: 0 !important; + flex-grow: 0!important; } + .flex-xxl-grow-1 { - flex-grow: 1 !important; + flex-grow: 1!important; } + .flex-xxl-shrink-0 { - flex-shrink: 0 !important; + flex-shrink: 0!important; } + .flex-xxl-shrink-1 { - flex-shrink: 1 !important; + flex-shrink: 1!important; } + .flex-xxl-wrap { - flex-wrap: wrap !important; + flex-wrap: wrap!important; } + .flex-xxl-nowrap { - flex-wrap: nowrap !important; + flex-wrap: nowrap!important; } + .flex-xxl-wrap-reverse { - flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse!important; } + .gap-xxl-0 { - gap: 0 !important; + gap: 0!important; } + .gap-xxl-1 { - gap: 0.25rem !important; + gap: .25rem!important; } + .gap-xxl-2 { - gap: 0.5rem !important; + gap: .5rem!important; } + .gap-xxl-3 { - gap: 1rem !important; + gap: 1rem!important; } + .gap-xxl-4 { - gap: 1.5rem !important; + gap: 1.5rem!important; } + .gap-xxl-5 { - gap: 3rem !important; + gap: 3rem!important; } + .justify-content-xxl-start { - justify-content: flex-start !important; + justify-content: flex-start!important; } + .justify-content-xxl-end { - justify-content: flex-end !important; + justify-content: flex-end!important; } + .justify-content-xxl-center { - justify-content: center !important; + justify-content: center!important; } + .justify-content-xxl-between { - justify-content: space-between !important; + justify-content: space-between!important; } + .justify-content-xxl-around { - justify-content: space-around !important; + justify-content: space-around!important; } + .justify-content-xxl-evenly { - justify-content: space-evenly !important; + justify-content: space-evenly!important; } + .align-items-xxl-start { - align-items: flex-start !important; + align-items: flex-start!important; } + .align-items-xxl-end { - align-items: flex-end !important; + align-items: flex-end!important; } + .align-items-xxl-center { - align-items: center !important; + align-items: center!important; } + .align-items-xxl-baseline { - align-items: baseline !important; + align-items: baseline!important; } + .align-items-xxl-stretch { - align-items: stretch !important; + align-items: stretch!important; } + .align-content-xxl-start { - align-content: flex-start !important; + align-content: flex-start!important; } + .align-content-xxl-end { - align-content: flex-end !important; + align-content: flex-end!important; } + .align-content-xxl-center { - align-content: center !important; + align-content: center!important; } + .align-content-xxl-between { - align-content: space-between !important; + align-content: space-between!important; } + .align-content-xxl-around { - align-content: space-around !important; + align-content: space-around!important; } + .align-content-xxl-stretch { - align-content: stretch !important; + align-content: stretch!important; } + .align-self-xxl-auto { - align-self: auto !important; + align-self: auto!important; } + .align-self-xxl-start { - align-self: flex-start !important; + align-self: flex-start!important; } + .align-self-xxl-end { - align-self: flex-end !important; + align-self: flex-end!important; } + .align-self-xxl-center { - align-self: center !important; + align-self: center!important; } + .align-self-xxl-baseline { - align-self: baseline !important; + align-self: baseline!important; } + .align-self-xxl-stretch { - align-self: stretch !important; + align-self: stretch!important; } + .order-xxl-first { - order: -1 !important; + order: -1!important; } + .order-xxl-0 { - order: 0 !important; + order: 0!important; } + .order-xxl-1 { - order: 1 !important; + order: 1!important; } + .order-xxl-2 { - order: 2 !important; + order: 2!important; } + .order-xxl-3 { - order: 3 !important; + order: 3!important; } + .order-xxl-4 { - order: 4 !important; + order: 4!important; } + .order-xxl-5 { - order: 5 !important; + order: 5!important; } + .order-xxl-last { - order: 6 !important; + order: 6!important; } + .m-xxl-0 { - margin: 0 !important; + margin: 0!important; } + .m-xxl-1 { - margin: 0.25rem !important; + margin: .25rem!important; } + .m-xxl-2 { - margin: 0.5rem !important; + margin: .5rem!important; } + .m-xxl-3 { - margin: 1rem !important; + margin: 1rem!important; } + .m-xxl-4 { - margin: 1.5rem !important; + margin: 1.5rem!important; } + .m-xxl-5 { - margin: 3rem !important; + margin: 3rem!important; } + .m-xxl-auto { - margin: auto !important; + margin: auto!important; } + .mx-xxl-0 { - margin-right: 0 !important; - margin-left: 0 !important; + margin-right: 0!important; + margin-left: 0!important; } + .mx-xxl-1 { - margin-right: 0.25rem !important; - margin-left: 0.25rem !important; + margin-right: .25rem!important; + margin-left: .25rem!important; } + .mx-xxl-2 { - margin-right: 0.5rem !important; - margin-left: 0.5rem !important; + margin-right: .5rem!important; + margin-left: .5rem!important; } + .mx-xxl-3 { - margin-right: 1rem !important; - margin-left: 1rem !important; + margin-right: 1rem!important; + margin-left: 1rem!important; } + .mx-xxl-4 { - margin-right: 1.5rem !important; - margin-left: 1.5rem !important; + margin-right: 1.5rem!important; + margin-left: 1.5rem!important; } + .mx-xxl-5 { - margin-right: 3rem !important; - margin-left: 3rem !important; + margin-right: 3rem!important; + margin-left: 3rem!important; } + .mx-xxl-auto { - margin-right: auto !important; - margin-left: auto !important; + margin-right: auto!important; + margin-left: auto!important; } + .my-xxl-0 { - margin-top: 0 !important; - margin-bottom: 0 !important; + margin-top: 0!important; + margin-bottom: 0!important; } + .my-xxl-1 { - margin-top: 0.25rem !important; - margin-bottom: 0.25rem !important; + margin-top: .25rem!important; + margin-bottom: .25rem!important; } + .my-xxl-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.5rem !important; + margin-top: .5rem!important; + margin-bottom: .5rem!important; } + .my-xxl-3 { - margin-top: 1rem !important; - margin-bottom: 1rem !important; + margin-top: 1rem!important; + margin-bottom: 1rem!important; } + .my-xxl-4 { - margin-top: 1.5rem !important; - margin-bottom: 1.5rem !important; + margin-top: 1.5rem!important; + margin-bottom: 1.5rem!important; } + .my-xxl-5 { - margin-top: 3rem !important; - margin-bottom: 3rem !important; + margin-top: 3rem!important; + margin-bottom: 3rem!important; } + .my-xxl-auto { - margin-top: auto !important; - margin-bottom: auto !important; + margin-top: auto!important; + margin-bottom: auto!important; } + .mt-xxl-0 { - margin-top: 0 !important; + margin-top: 0!important; } + .mt-xxl-1 { - margin-top: 0.25rem !important; + margin-top: .25rem!important; } + .mt-xxl-2 { - margin-top: 0.5rem !important; + margin-top: .5rem!important; } + .mt-xxl-3 { - margin-top: 1rem !important; + margin-top: 1rem!important; } + .mt-xxl-4 { - margin-top: 1.5rem !important; + margin-top: 1.5rem!important; } + .mt-xxl-5 { - margin-top: 3rem !important; + margin-top: 3rem!important; } + .mt-xxl-auto { - margin-top: auto !important; + margin-top: auto!important; } + .me-xxl-0 { - margin-right: 0 !important; + margin-right: 0!important; } + .me-xxl-1 { - margin-right: 0.25rem !important; + margin-right: .25rem!important; } + .me-xxl-2 { - margin-right: 0.5rem !important; + margin-right: .5rem!important; } + .me-xxl-3 { - margin-right: 1rem !important; + margin-right: 1rem!important; } + .me-xxl-4 { - margin-right: 1.5rem !important; + margin-right: 1.5rem!important; } + .me-xxl-5 { - margin-right: 3rem !important; + margin-right: 3rem!important; } + .me-xxl-auto { - margin-right: auto !important; + margin-right: auto!important; } + .mb-xxl-0 { - margin-bottom: 0 !important; + margin-bottom: 0!important; } + .mb-xxl-1 { - margin-bottom: 0.25rem !important; + margin-bottom: .25rem!important; } + .mb-xxl-2 { - margin-bottom: 0.5rem !important; + margin-bottom: .5rem!important; } + .mb-xxl-3 { - margin-bottom: 1rem !important; + margin-bottom: 1rem!important; } + .mb-xxl-4 { - margin-bottom: 1.5rem !important; + margin-bottom: 1.5rem!important; } + .mb-xxl-5 { - margin-bottom: 3rem !important; + margin-bottom: 3rem!important; } + .mb-xxl-auto { - margin-bottom: auto !important; + margin-bottom: auto!important; } + .ms-xxl-0 { - margin-left: 0 !important; + margin-left: 0!important; } + .ms-xxl-1 { - margin-left: 0.25rem !important; + margin-left: .25rem!important; } + .ms-xxl-2 { - margin-left: 0.5rem !important; + margin-left: .5rem!important; } + .ms-xxl-3 { - margin-left: 1rem !important; + margin-left: 1rem!important; } + .ms-xxl-4 { - margin-left: 1.5rem !important; + margin-left: 1.5rem!important; } + .ms-xxl-5 { - margin-left: 3rem !important; + margin-left: 3rem!important; } + .ms-xxl-auto { - margin-left: auto !important; + margin-left: auto!important; } + .m-xxl-n1 { - margin: -0.25rem !important; + margin: -.25rem!important; } + .m-xxl-n2 { - margin: -0.5rem !important; + margin: -.5rem!important; } + .m-xxl-n3 { - margin: -1rem !important; + margin: -1rem!important; } + .m-xxl-n4 { - margin: -1.5rem !important; + margin: -1.5rem!important; } + .m-xxl-n5 { - margin: -3rem !important; + margin: -3rem!important; } + .mx-xxl-n1 { - margin-right: -0.25rem !important; - margin-left: -0.25rem !important; + margin-right: -.25rem!important; + margin-left: -.25rem!important; } + .mx-xxl-n2 { - margin-right: -0.5rem !important; - margin-left: -0.5rem !important; + margin-right: -.5rem!important; + margin-left: -.5rem!important; } + .mx-xxl-n3 { - margin-right: -1rem !important; - margin-left: -1rem !important; + margin-right: -1rem!important; + margin-left: -1rem!important; } + .mx-xxl-n4 { - margin-right: -1.5rem !important; - margin-left: -1.5rem !important; + margin-right: -1.5rem!important; + margin-left: -1.5rem!important; } + .mx-xxl-n5 { - margin-right: -3rem !important; - margin-left: -3rem !important; + margin-right: -3rem!important; + margin-left: -3rem!important; } + .my-xxl-n1 { - margin-top: -0.25rem !important; - margin-bottom: -0.25rem !important; + margin-top: -.25rem!important; + margin-bottom: -.25rem!important; } + .my-xxl-n2 { - margin-top: -0.5rem !important; - margin-bottom: -0.5rem !important; + margin-top: -.5rem!important; + margin-bottom: -.5rem!important; } + .my-xxl-n3 { - margin-top: -1rem !important; - margin-bottom: -1rem !important; + margin-top: -1rem!important; + margin-bottom: -1rem!important; } + .my-xxl-n4 { - margin-top: -1.5rem !important; - margin-bottom: -1.5rem !important; + margin-top: -1.5rem!important; + margin-bottom: -1.5rem!important; } + .my-xxl-n5 { - margin-top: -3rem !important; - margin-bottom: -3rem !important; + margin-top: -3rem!important; + margin-bottom: -3rem!important; } + .mt-xxl-n1 { - margin-top: -0.25rem !important; + margin-top: -.25rem!important; } + .mt-xxl-n2 { - margin-top: -0.5rem !important; + margin-top: -.5rem!important; } + .mt-xxl-n3 { - margin-top: -1rem !important; + margin-top: -1rem!important; } + .mt-xxl-n4 { - margin-top: -1.5rem !important; + margin-top: -1.5rem!important; } + .mt-xxl-n5 { - margin-top: -3rem !important; + margin-top: -3rem!important; } + .me-xxl-n1 { - margin-right: -0.25rem !important; + margin-right: -.25rem!important; } + .me-xxl-n2 { - margin-right: -0.5rem !important; + margin-right: -.5rem!important; } + .me-xxl-n3 { - margin-right: -1rem !important; + margin-right: -1rem!important; } + .me-xxl-n4 { - margin-right: -1.5rem !important; + margin-right: -1.5rem!important; } + .me-xxl-n5 { - margin-right: -3rem !important; + margin-right: -3rem!important; } + .mb-xxl-n1 { - margin-bottom: -0.25rem !important; + margin-bottom: -.25rem!important; } + .mb-xxl-n2 { - margin-bottom: -0.5rem !important; + margin-bottom: -.5rem!important; } + .mb-xxl-n3 { - margin-bottom: -1rem !important; + margin-bottom: -1rem!important; } + .mb-xxl-n4 { - margin-bottom: -1.5rem !important; + margin-bottom: -1.5rem!important; } + .mb-xxl-n5 { - margin-bottom: -3rem !important; + margin-bottom: -3rem!important; } + .ms-xxl-n1 { - margin-left: -0.25rem !important; + margin-left: -.25rem!important; } + .ms-xxl-n2 { - margin-left: -0.5rem !important; + margin-left: -.5rem!important; } + .ms-xxl-n3 { - margin-left: -1rem !important; + margin-left: -1rem!important; } + .ms-xxl-n4 { - margin-left: -1.5rem !important; + margin-left: -1.5rem!important; } + .ms-xxl-n5 { - margin-left: -3rem !important; + margin-left: -3rem!important; } + .p-xxl-0 { - padding: 0 !important; + padding: 0!important; } + .p-xxl-1 { - padding: 0.25rem !important; + padding: .25rem!important; } + .p-xxl-2 { - padding: 0.5rem !important; + padding: .5rem!important; } + .p-xxl-3 { - padding: 1rem !important; + padding: 1rem!important; } + .p-xxl-4 { - padding: 1.5rem !important; + padding: 1.5rem!important; } + .p-xxl-5 { - padding: 3rem !important; + padding: 3rem!important; } + .px-xxl-0 { - padding-right: 0 !important; - padding-left: 0 !important; + padding-right: 0!important; + padding-left: 0!important; } + .px-xxl-1 { - padding-right: 0.25rem !important; - padding-left: 0.25rem !important; + padding-right: .25rem!important; + padding-left: .25rem!important; } + .px-xxl-2 { - padding-right: 0.5rem !important; - padding-left: 0.5rem !important; + padding-right: .5rem!important; + padding-left: .5rem!important; } + .px-xxl-3 { - padding-right: 1rem !important; - padding-left: 1rem !important; + padding-right: 1rem!important; + padding-left: 1rem!important; } + .px-xxl-4 { - padding-right: 1.5rem !important; - padding-left: 1.5rem !important; + padding-right: 1.5rem!important; + padding-left: 1.5rem!important; } + .px-xxl-5 { - padding-right: 3rem !important; - padding-left: 3rem !important; + padding-right: 3rem!important; + padding-left: 3rem!important; } + .py-xxl-0 { - padding-top: 0 !important; - padding-bottom: 0 !important; + padding-top: 0!important; + padding-bottom: 0!important; } + .py-xxl-1 { - padding-top: 0.25rem !important; - padding-bottom: 0.25rem !important; + padding-top: .25rem!important; + padding-bottom: .25rem!important; } + .py-xxl-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.5rem !important; + padding-top: .5rem!important; + padding-bottom: .5rem!important; } + .py-xxl-3 { - padding-top: 1rem !important; - padding-bottom: 1rem !important; + padding-top: 1rem!important; + padding-bottom: 1rem!important; } + .py-xxl-4 { - padding-top: 1.5rem !important; - padding-bottom: 1.5rem !important; + padding-top: 1.5rem!important; + padding-bottom: 1.5rem!important; } + .py-xxl-5 { - padding-top: 3rem !important; - padding-bottom: 3rem !important; + padding-top: 3rem!important; + padding-bottom: 3rem!important; } + .pt-xxl-0 { - padding-top: 0 !important; + padding-top: 0!important; } + .pt-xxl-1 { - padding-top: 0.25rem !important; + padding-top: .25rem!important; } + .pt-xxl-2 { - padding-top: 0.5rem !important; + padding-top: .5rem!important; } + .pt-xxl-3 { - padding-top: 1rem !important; + padding-top: 1rem!important; } + .pt-xxl-4 { - padding-top: 1.5rem !important; + padding-top: 1.5rem!important; } + .pt-xxl-5 { - padding-top: 3rem !important; + padding-top: 3rem!important; } + .pe-xxl-0 { - padding-right: 0 !important; + padding-right: 0!important; } + .pe-xxl-1 { - padding-right: 0.25rem !important; + padding-right: .25rem!important; } + .pe-xxl-2 { - padding-right: 0.5rem !important; + padding-right: .5rem!important; } + .pe-xxl-3 { - padding-right: 1rem !important; + padding-right: 1rem!important; } + .pe-xxl-4 { - padding-right: 1.5rem !important; + padding-right: 1.5rem!important; } + .pe-xxl-5 { - padding-right: 3rem !important; + padding-right: 3rem!important; } + .pb-xxl-0 { - padding-bottom: 0 !important; + padding-bottom: 0!important; } + .pb-xxl-1 { - padding-bottom: 0.25rem !important; + padding-bottom: .25rem!important; } + .pb-xxl-2 { - padding-bottom: 0.5rem !important; + padding-bottom: .5rem!important; } + .pb-xxl-3 { - padding-bottom: 1rem !important; + padding-bottom: 1rem!important; } + .pb-xxl-4 { - padding-bottom: 1.5rem !important; + padding-bottom: 1.5rem!important; } + .pb-xxl-5 { - padding-bottom: 3rem !important; + padding-bottom: 3rem!important; } + .ps-xxl-0 { - padding-left: 0 !important; + padding-left: 0!important; } + .ps-xxl-1 { - padding-left: 0.25rem !important; + padding-left: .25rem!important; } + .ps-xxl-2 { - padding-left: 0.5rem !important; + padding-left: .5rem!important; } + .ps-xxl-3 { - padding-left: 1rem !important; + padding-left: 1rem!important; } + .ps-xxl-4 { - padding-left: 1.5rem !important; + padding-left: 1.5rem!important; } + .ps-xxl-5 { - padding-left: 3rem !important; + padding-left: 3rem!important; } + .text-xxl-start { - text-align: left !important; + text-align: left!important; } + .text-xxl-end { - text-align: right !important; + text-align: right!important; } + .text-xxl-center { - text-align: center !important; + text-align: center!important; } } -@media (min-width: 1200px) { +@media(min-width:1200px) { .fs-1 { - font-size: 2.5rem !important; + font-size: 2.5rem!important; } + .fs-2 { - font-size: 2rem !important; + font-size: 2rem!important; } + .fs-3 { - font-size: 1.75rem !important; + font-size: 1.75rem!important; } + .fs-4 { - font-size: 1.5rem !important; + font-size: 1.5rem!important; } } @media print { .d-print-inline { - display: inline !important; + display: inline!important; } + .d-print-inline-block { - display: inline-block !important; + display: inline-block!important; } + .d-print-block { - display: block !important; + display: block!important; } + .d-print-grid { - display: grid !important; + display: grid!important; } + .d-print-table { - display: table !important; + display: table!important; } + .d-print-table-row { - display: table-row !important; + display: table-row!important; } + .d-print-table-cell { - display: table-cell !important; + display: table-cell!important; } + .d-print-flex { - display: flex !important; + display: flex!important; } + .d-print-inline-flex { - display: inline-flex !important; + display: inline-flex!important; } + .d-print-none { - display: none !important; + display: none!important; } } .bold-link { - font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + font-family: montserrat,system-ui,-apple-system,segoe ui,Roboto,helvetica neue,Arial,noto sans,liberation sans,sans-serif,apple color emoji,segoe ui emoji,segoe ui symbol,noto color emoji; font-weight: 700; text-transform: uppercase; } -@media (max-width: 767.98px) { - .input-group-block input, - .input-group-block button { +@media(max-width:767.98px) { + .input-group-block input,.input-group-block button { width: 100%; - border-radius: 6px !important; + border-radius: 6px!important; } } span { color: #fff; } -input#url{ - background-color: #2A2A2A; + +input#url { + background-color: #2E323E; color: #a6acb1; } -input.form-control.form-control-sm.text-uppercase{ -color: #a6acb1; +input.form-control.form-control-sm.text-uppercase { + color: #a6acb1; } -div.mt-2.card.card-body{ - border-color: #383C4A; + +div.mt-2.card.card-body { + border-color: #2E323E; } \ No newline at end of file diff --git a/images/admin-dashboard.gif b/images/admin-dashboard.gif new file mode 100644 index 0000000000000000000000000000000000000000..700af182e36af53eac95a39774afb7bc50c04620 GIT binary patch literal 36541 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%0A(BGKVjgTEJ}5kj2;)-oun!{%t0RSf|oFS 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 + + + + + + + + + + + + + \ No newline at end of file diff --git a/images/logo-black.png b/images/logo-black.png new file mode 100644 index 0000000000000000000000000000000000000000..186773472dc23fa4674e0637e6beb765855f33c2 GIT binary patch literal 44462 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

Y{CQC7|vG0RA%8JVC|#!!U*%OT+_5EJbdsEak~ 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 \ No newline at end of file diff --git a/includes/Database/index.php b/includes/Database/index.php new file mode 100644 index 0000000..9f4bf11 --- /dev/null +++ b/includes/Database/index.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/includes/Exceptions/index.php b/includes/Exceptions/index.php new file mode 100644 index 0000000..9f4bf11 --- /dev/null +++ b/includes/Exceptions/index.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/includes/geo/flags/index.php b/includes/geo/flags/index.php new file mode 100644 index 0000000..9f4bf11 --- /dev/null +++ b/includes/geo/flags/index.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/includes/geo/index.php b/includes/geo/index.php new file mode 100644 index 0000000..9f4bf11 --- /dev/null +++ b/includes/geo/index.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/includes/vendor/composer/ca-bundle/phpstan.neon.dist b/includes/vendor/composer/ca-bundle/phpstan.neon.dist new file mode 100644 index 0000000..1cd333b --- /dev/null +++ b/includes/vendor/composer/ca-bundle/phpstan.neon.dist @@ -0,0 +1,5 @@ +parameters: + level: 8 + paths: + - src + - tests diff --git a/includes/vendor/index.php b/includes/vendor/index.php new file mode 100644 index 0000000..9f4bf11 --- /dev/null +++ b/includes/vendor/index.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/includes/vendor/ozh/phpass/README.md b/includes/vendor/ozh/phpass/README.md new file mode 100644 index 0000000..8960371 --- /dev/null +++ b/includes/vendor/ozh/phpass/README.md @@ -0,0 +1,55 @@ +Openwall Phpass, modernized +=========================== + +[![Build Status](https://secure.travis-ci.org/ozh/phpass.png?branch=master)](http://travis-ci.org/ozh/phpass) + +This is Openwall's [Phpass](http://openwall.com/phpass/), based on the 0.5 release, but modernized slightly: + +- Namespaced +- Composer support (Autoloading) +- Unit Tested + +The modernization has been done by Hautelook, from whom I stole this library to originally repackage it for PHP 5.3 to 7.0 compatibility in a single file and branch (Hautelook's port consisting of two branches, one for PHP 5.3 to 5.5, and another one for 5.6+). + +Current version requires PHP 5.6+ + +## Installation ## + +Add this requirement to your `composer.json` file and run `composer install`: + + { + "require": { + "ozh/phpass": "1.3.0" + } + } + +## Usage ## + +The following example shows how to hash a password (to then store the hash in the database), and how to check whether a provided password is correct (hashes to the same value): + +``` php +HashPassword('secret'); +var_dump($password); + // Will output something like: + // '$2a$08$a6XFLs8SrjClF1szoDDkI.6gtWVb4//QnzUjkxlus83AKCNjuD8Ha' (length=60) + // '$2a$08$Qze1smZ//VAwHJ1t52zklOY/yLwlbKR6Ighf6B7uqGXdYVozTPEdG' (length=60) + // '$2a$08$u2uKfE9igO.Cz0SptWxlXeVi0CQglfl3FdRK3YpbGm1NfF1d.CFPm' (length=60) + +// Decrypt +var_dump( $passwordHasher->CheckPassword('secret', '$2a$08$0RK6Yw6j9kSIXrrEOc3dwuDPQuT78HgR0S3/ghOFDEpOGpOkARoSu') ); + // true +var_dump( $passwordHasher->CheckPassword('secret', '$2a$08$Qze1smZ//VAwHJ1t52zklOY/yLwlbKR6Ighf6B7uqGXdYVozTPEdG') ); + // true +var_dump( $passwordHasher->CheckPassword('secret', '$2a$08$u2uKfE9igO.Cz0SptWxlXeVi0CQglfl3FdRK3YpbGm1NfF1d.CFPm') ); + // true diff --git a/includes/vendor/ozh/phpass/src/Ozh/Phpass/PasswordHash.php b/includes/vendor/ozh/phpass/src/Ozh/Phpass/PasswordHash.php new file mode 100644 index 0000000..16b0377 --- /dev/null +++ b/includes/vendor/ozh/phpass/src/Ozh/Phpass/PasswordHash.php @@ -0,0 +1,333 @@ + in 2004-2006 + * + * Modernized by Hautelook at https://github.com/hautelook/phpass + * + * Slightly repacked by Ozh to extend compatibility from PHP 5.3 to 7+ in a single file + * + * There's absolutely no warranty. + * + * The homepage URL for this framework is: + * + * http://www.openwall.com/phpass/ + * + * Please be sure to update the Version line if you edit this file in any way. + * It is suggested that you leave the main version number intact, but indicate + * your project name (after the slash) and add your own revision information. + * + * Please do not change the "private" password hashing method implemented in + * here, thereby making your hashes incompatible. However, if you must, please + * change the hash type identifier (the "$P$") to something different. + * + * Obviously, since this code is in the public domain, the above are not + * requirements (there can be none), but merely suggestions. + * + * @author Solar Designer + */ +class PasswordHash +{ + private $itoa64; + private $iteration_count_log2; + private $portable_hashes; + private $random_state; + + /** + * Constructor + * + * @param int $iteration_count_log2 + * @param boolean $portable_hashes + */ + public function __construct($iteration_count_log2, $portable_hashes) + { + $this->itoa64 = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; + + if ($iteration_count_log2 < 4 || $iteration_count_log2 > 31) { + $iteration_count_log2 = 8; + } + $this->iteration_count_log2 = $iteration_count_log2; + + $this->portable_hashes = $portable_hashes; + + $this->random_state = microtime(); + if (function_exists('getmypid')) { + $this->random_state .= getmypid(); + } + } + + /** + * @param int $count + * @return String + */ + public function get_random_bytes($count) + { + $output = ''; + + // PHP 7+ + if (is_callable('random_bytes')) { + return random_bytes($count); + } + + if (@is_readable('/dev/urandom') && + ($fh = @fopen('/dev/urandom', 'rb'))) { + $output = fread($fh, $count); + fclose($fh); + } + + if (strlen($output) < $count) { + $output = ''; + for ($i = 0; $i < $count; $i += 16) { + $this->random_state = + md5(microtime() . $this->random_state); + $output .= md5($this->random_state, TRUE); + } + $output = substr($output, 0, $count); + } + + return $output; + } + + /** + * @param String $input + * @param int $count + * @return String + */ + public function encode64($input, $count) + { + $output = ''; + $i = 0; + do { + $value = ord($input[$i++]); + $output .= $this->itoa64[$value & 0x3f]; + if ($i < $count) { + $value |= ord($input[$i]) << 8; + } + $output .= $this->itoa64[($value >> 6) & 0x3f]; + if ($i++ >= $count) { + break; + } + if ($i < $count) { + $value |= ord($input[$i]) << 16; + } + $output .= $this->itoa64[($value >> 12) & 0x3f]; + if ($i++ >= $count) { + break; + } + $output .= $this->itoa64[($value >> 18) & 0x3f]; + } while ($i < $count); + + return $output; + } + + /** + * @param String $input + * @return String + */ + public function gensalt_private($input) + { + $output = '$P$'; + $output .= $this->itoa64[min($this->iteration_count_log2 + + ((PHP_VERSION >= '5') ? 5 : 3), 30)]; + $output .= $this->encode64($input, 6); + + return $output; + } + + /** + * @param String $password + * @param String $setting + * @return String + */ + public function crypt_private($password, $setting) + { + $output = '*0'; + if (substr($setting, 0, 2) === $output) { + $output = '*1'; + } + + $id = substr($setting, 0, 3); + # We use "$P$", phpBB3 uses "$H$" for the same thing + if ($id !== '$P$' && $id !== '$H$') { + return $output; + } + + $count_log2 = strpos($this->itoa64, $setting[3]); + if ($count_log2 < 7 || $count_log2 > 30) { + return $output; + } + + $count = 1 << $count_log2; + + $salt = substr($setting, 4, 8); + if (strlen($salt) != 8) { + return $output; + } + + // We're kind of forced to use MD5 here since it's the only + // cryptographic primitive available in all versions of PHP + // currently in use. To implement our own low-level crypto + // in PHP would result in much worse performance and + // consequently in lower iteration counts and hashes that are + // quicker to crack (by non-PHP code). + $hash = md5($salt . $password, TRUE); + do { + $hash = md5($hash . $password, TRUE); + } while (--$count); + + $output = substr($setting, 0, 12); + $output .= $this->encode64($hash, 16); + + return $output; + } + + /** + * @param String $input + * @return String + */ + public function gensalt_blowfish($input) + { + // This one needs to use a different order of characters and a + // different encoding scheme from the one in encode64() above. + // We care because the last character in our encoded string will + // only represent 2 bits. While two known implementations of + // bcrypt will happily accept and correct a salt string which + // has the 4 unused bits set to non-zero, we do not want to take + // chances and we also do not want to waste an additional byte + // of entropy. + $itoa64 = './ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; + + $output = '$2a$'; + $output .= chr(ord('0') + $this->iteration_count_log2 / 10); + $output .= chr(ord('0') + $this->iteration_count_log2 % 10); + $output .= '$'; + + $i = 0; + do { + $c1 = ord($input[$i++]); + $output .= $itoa64[$c1 >> 2]; + $c1 = ($c1 & 0x03) << 4; + if ($i >= 16) { + $output .= $itoa64[$c1]; + break; + } + + $c2 = ord($input[$i++]); + $c1 |= $c2 >> 4; + $output .= $itoa64[$c1]; + $c1 = ($c2 & 0x0f) << 2; + + $c2 = ord($input[$i++]); + $c1 |= $c2 >> 6; + $output .= $itoa64[$c1]; + $output .= $itoa64[$c2 & 0x3f]; + } while (1); + + return $output; + } + + /** + * @param String $password + */ + public function HashPassword($password) + { + $random = ''; + + if (CRYPT_BLOWFISH == 1 && !$this->portable_hashes) { + $random = $this->get_random_bytes(16); + $hash = + crypt($password, $this->gensalt_blowfish($random)); + if (strlen($hash) == 60) { + return $hash; + } + } + + if (strlen($random) < 6) { + $random = $this->get_random_bytes(6); + } + + $hash = + $this->crypt_private($password, + $this->gensalt_private($random)); + if (strlen($hash) == 34) { + return $hash; + } + + // Returning '*' on error is safe here, but would _not_ be safe + // in a crypt(3)-like function used _both_ for generating new + // hashes and for validating passwords against existing hashes. + return '*'; + } + + /** + * @param String $password + * @param String $stored_hash + * @return boolean + */ + public function CheckPassword($password, $stored_hash) + { + $hash = $this->crypt_private($password, $stored_hash); + if ($hash[0] == '*') { + $hash = crypt($password, $stored_hash); + } + + return hash_equals($stored_hash, $hash); + } +} + + +/** + * hash_equals compatibility function + * + * @package CodeIgniter + * @author EllisLab Dev Team + * @copyright Copyright (c) 2008 - 2014, EllisLab, Inc. (https://ellislab.com/) + * @copyright Copyright (c) 2014 - 2017, British Columbia Institute of Technology (http://bcit.ca/) + * @license http://opensource.org/licenses/MIT MIT License + * @link https://codeigniter.com + * + * Source: https://github.com/bcit-ci/CodeIgniter/blob/3.1.4/system/core/compat/hash.php + * For PHP < 5.6 + */ +// @codeCoverageIgnoreStart +if ( ! function_exists('hash_equals')) +{ + /** + * hash_equals() + * + * @link http://php.net/hash_equals + * @param string $known_string + * @param string $user_string + * @return bool + */ + function hash_equals($known_string, $user_string) + { + if ( ! is_string($known_string)) + { + trigger_error('hash_equals(): Expected known_string to be a string, '.strtolower(gettype($known_string)).' given', E_USER_WARNING); + return FALSE; + } + elseif ( ! is_string($user_string)) + { + trigger_error('hash_equals(): Expected user_string to be a string, '.strtolower(gettype($user_string)).' given', E_USER_WARNING); + return FALSE; + } + elseif (($length = strlen($known_string)) !== strlen($user_string)) + { + return FALSE; + } + $diff = 0; + for ($i = 0; $i < $length; $i++) + { + $diff |= ord($known_string[$i]) ^ ord($user_string[$i]); + } + return ($diff === 0); + } +} +// @codeCoverageIgnoreEnd + diff --git a/includes/vendor/rmccue/requests/certificates/etag-cert.txt b/includes/vendor/rmccue/requests/certificates/etag-cert.txt new file mode 100644 index 0000000..3108bfa --- /dev/null +++ b/includes/vendor/rmccue/requests/certificates/etag-cert.txt @@ -0,0 +1 @@ +338e2-5db52cb225723 diff --git a/includes/vendor/rmccue/requests/certificates/etag-sha.txt b/includes/vendor/rmccue/requests/certificates/etag-sha.txt new file mode 100644 index 0000000..de62b6d --- /dev/null +++ b/includes/vendor/rmccue/requests/certificates/etag-sha.txt @@ -0,0 +1 @@ +4d-5db52cb22b4e4 diff --git a/includes/vendor/rmccue/requests/library/Requests/Auth.php b/includes/vendor/rmccue/requests/library/Requests/Auth.php new file mode 100644 index 0000000..bca4109 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Auth.php @@ -0,0 +1,33 @@ +user, $this->pass) = $args; + } + } + + /** + * Register the necessary callbacks + * + * @see curl_before_send + * @see fsockopen_header + * @param Requests_Hooks $hooks Hook system + */ + public function register(Requests_Hooks &$hooks) { + $hooks->register('curl.before_send', array(&$this, 'curl_before_send')); + $hooks->register('fsockopen.after_headers', array(&$this, 'fsockopen_header')); + } + + /** + * Set cURL parameters before the data is sent + * + * @param resource $handle cURL resource + */ + public function curl_before_send(&$handle) { + curl_setopt($handle, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); + curl_setopt($handle, CURLOPT_USERPWD, $this->getAuthString()); + } + + /** + * Add extra headers to the request before sending + * + * @param string $out HTTP header string + */ + public function fsockopen_header(&$out) { + $out .= sprintf("Authorization: Basic %s\r\n", base64_encode($this->getAuthString())); + } + + /** + * Get the authentication string (user:pass) + * + * @return string + */ + public function getAuthString() { + return $this->user . ':' . $this->pass; + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Cookie.php b/includes/vendor/rmccue/requests/library/Requests/Cookie.php new file mode 100644 index 0000000..00fbbc7 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Cookie.php @@ -0,0 +1,500 @@ +name = $name; + $this->value = $value; + $this->attributes = $attributes; + $default_flags = array( + 'creation' => time(), + 'last-access' => time(), + 'persistent' => false, + 'host-only' => true, + ); + $this->flags = array_merge($default_flags, $flags); + + $this->reference_time = time(); + if ($reference_time !== null) { + $this->reference_time = $reference_time; + } + + $this->normalize(); + } + + /** + * Check if a cookie is expired. + * + * Checks the age against $this->reference_time to determine if the cookie + * is expired. + * + * @return boolean True if expired, false if time is valid. + */ + public function is_expired() { + // RFC6265, s. 4.1.2.2: + // If a cookie has both the Max-Age and the Expires attribute, the Max- + // Age attribute has precedence and controls the expiration date of the + // cookie. + if (isset($this->attributes['max-age'])) { + $max_age = $this->attributes['max-age']; + return $max_age < $this->reference_time; + } + + if (isset($this->attributes['expires'])) { + $expires = $this->attributes['expires']; + return $expires < $this->reference_time; + } + + return false; + } + + /** + * Check if a cookie is valid for a given URI + * + * @param Requests_IRI $uri URI to check + * @return boolean Whether the cookie is valid for the given URI + */ + public function uri_matches(Requests_IRI $uri) { + if (!$this->domain_matches($uri->host)) { + return false; + } + + if (!$this->path_matches($uri->path)) { + return false; + } + + return empty($this->attributes['secure']) || $uri->scheme === 'https'; + } + + /** + * Check if a cookie is valid for a given domain + * + * @param string $string Domain to check + * @return boolean Whether the cookie is valid for the given domain + */ + public function domain_matches($string) { + if (!isset($this->attributes['domain'])) { + // Cookies created manually; cookies created by Requests will set + // the domain to the requested domain + return true; + } + + $domain_string = $this->attributes['domain']; + if ($domain_string === $string) { + // The domain string and the string are identical. + return true; + } + + // If the cookie is marked as host-only and we don't have an exact + // match, reject the cookie + if ($this->flags['host-only'] === true) { + return false; + } + + if (strlen($string) <= strlen($domain_string)) { + // For obvious reasons, the string cannot be a suffix if the domain + // is shorter than the domain string + return false; + } + + if (substr($string, -1 * strlen($domain_string)) !== $domain_string) { + // The domain string should be a suffix of the string. + return false; + } + + $prefix = substr($string, 0, strlen($string) - strlen($domain_string)); + if (substr($prefix, -1) !== '.') { + // The last character of the string that is not included in the + // domain string should be a %x2E (".") character. + return false; + } + + // The string should be a host name (i.e., not an IP address). + return !preg_match('#^(.+\.)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$#', $string); + } + + /** + * Check if a cookie is valid for a given path + * + * From the path-match check in RFC 6265 section 5.1.4 + * + * @param string $request_path Path to check + * @return boolean Whether the cookie is valid for the given path + */ + public function path_matches($request_path) { + if (empty($request_path)) { + // Normalize empty path to root + $request_path = '/'; + } + + if (!isset($this->attributes['path'])) { + // Cookies created manually; cookies created by Requests will set + // the path to the requested path + return true; + } + + $cookie_path = $this->attributes['path']; + + if ($cookie_path === $request_path) { + // The cookie-path and the request-path are identical. + return true; + } + + if (strlen($request_path) > strlen($cookie_path) && substr($request_path, 0, strlen($cookie_path)) === $cookie_path) { + if (substr($cookie_path, -1) === '/') { + // The cookie-path is a prefix of the request-path, and the last + // character of the cookie-path is %x2F ("/"). + return true; + } + + if (substr($request_path, strlen($cookie_path), 1) === '/') { + // The cookie-path is a prefix of the request-path, and the + // first character of the request-path that is not included in + // the cookie-path is a %x2F ("/") character. + return true; + } + } + + return false; + } + + /** + * Normalize cookie and attributes + * + * @return boolean Whether the cookie was successfully normalized + */ + public function normalize() { + foreach ($this->attributes as $key => $value) { + $orig_value = $value; + $value = $this->normalize_attribute($key, $value); + if ($value === null) { + unset($this->attributes[$key]); + continue; + } + + if ($value !== $orig_value) { + $this->attributes[$key] = $value; + } + } + + return true; + } + + /** + * Parse an individual cookie attribute + * + * Handles parsing individual attributes from the cookie values. + * + * @param string $name Attribute name + * @param string|boolean $value Attribute value (string value, or true if empty/flag) + * @return mixed Value if available, or null if the attribute value is invalid (and should be skipped) + */ + protected function normalize_attribute($name, $value) { + switch (strtolower($name)) { + case 'expires': + // Expiration parsing, as per RFC 6265 section 5.2.1 + if (is_int($value)) { + return $value; + } + + $expiry_time = strtotime($value); + if ($expiry_time === false) { + return null; + } + + return $expiry_time; + + case 'max-age': + // Expiration parsing, as per RFC 6265 section 5.2.2 + if (is_int($value)) { + return $value; + } + + // Check that we have a valid age + if (!preg_match('/^-?\d+$/', $value)) { + return null; + } + + $delta_seconds = (int) $value; + if ($delta_seconds <= 0) { + $expiry_time = 0; + } + else { + $expiry_time = $this->reference_time + $delta_seconds; + } + + return $expiry_time; + + case 'domain': + // Domain normalization, as per RFC 6265 section 5.2.3 + if ($value[0] === '.') { + $value = substr($value, 1); + } + + return $value; + + default: + return $value; + } + } + + /** + * Format a cookie for a Cookie header + * + * This is used when sending cookies to a server. + * + * @return string Cookie formatted for Cookie header + */ + public function format_for_header() { + return sprintf('%s=%s', $this->name, $this->value); + } + + /** + * Format a cookie for a Cookie header + * + * @codeCoverageIgnore + * @deprecated Use {@see Requests_Cookie::format_for_header} + * @return string + */ + public function formatForHeader() { + return $this->format_for_header(); + } + + /** + * Format a cookie for a Set-Cookie header + * + * This is used when sending cookies to clients. This isn't really + * applicable to client-side usage, but might be handy for debugging. + * + * @return string Cookie formatted for Set-Cookie header + */ + public function format_for_set_cookie() { + $header_value = $this->format_for_header(); + if (!empty($this->attributes)) { + $parts = array(); + foreach ($this->attributes as $key => $value) { + // Ignore non-associative attributes + if (is_numeric($key)) { + $parts[] = $value; + } + else { + $parts[] = sprintf('%s=%s', $key, $value); + } + } + + $header_value .= '; ' . implode('; ', $parts); + } + return $header_value; + } + + /** + * Format a cookie for a Set-Cookie header + * + * @codeCoverageIgnore + * @deprecated Use {@see Requests_Cookie::format_for_set_cookie} + * @return string + */ + public function formatForSetCookie() { + return $this->format_for_set_cookie(); + } + + /** + * Get the cookie value + * + * Attributes and other data can be accessed via methods. + */ + public function __toString() { + return $this->value; + } + + /** + * Parse a cookie string into a cookie object + * + * Based on Mozilla's parsing code in Firefox and related projects, which + * is an intentional deviation from RFC 2109 and RFC 2616. RFC 6265 + * specifies some of this handling, but not in a thorough manner. + * + * @param string Cookie header value (from a Set-Cookie header) + * @return Requests_Cookie Parsed cookie object + */ + public static function parse($string, $name = '', $reference_time = null) { + $parts = explode(';', $string); + $kvparts = array_shift($parts); + + if (!empty($name)) { + $value = $string; + } + elseif (strpos($kvparts, '=') === false) { + // Some sites might only have a value without the equals separator. + // Deviate from RFC 6265 and pretend it was actually a blank name + // (`=foo`) + // + // https://bugzilla.mozilla.org/show_bug.cgi?id=169091 + $name = ''; + $value = $kvparts; + } + else { + list($name, $value) = explode('=', $kvparts, 2); + } + $name = trim($name); + $value = trim($value); + + // Attribute key are handled case-insensitively + $attributes = new Requests_Utility_CaseInsensitiveDictionary(); + + if (!empty($parts)) { + foreach ($parts as $part) { + if (strpos($part, '=') === false) { + $part_key = $part; + $part_value = true; + } + else { + list($part_key, $part_value) = explode('=', $part, 2); + $part_value = trim($part_value); + } + + $part_key = trim($part_key); + $attributes[$part_key] = $part_value; + } + } + + return new Requests_Cookie($name, $value, $attributes, array(), $reference_time); + } + + /** + * Parse all Set-Cookie headers from request headers + * + * @param Requests_Response_Headers $headers Headers to parse from + * @param Requests_IRI|null $origin URI for comparing cookie origins + * @param int|null $time Reference time for expiration calculation + * @return array + */ + public static function parse_from_headers(Requests_Response_Headers $headers, Requests_IRI $origin = null, $time = null) { + $cookie_headers = $headers->getValues('Set-Cookie'); + if (empty($cookie_headers)) { + return array(); + } + + $cookies = array(); + foreach ($cookie_headers as $header) { + $parsed = self::parse($header, '', $time); + + // Default domain/path attributes + if (empty($parsed->attributes['domain']) && !empty($origin)) { + $parsed->attributes['domain'] = $origin->host; + $parsed->flags['host-only'] = true; + } + else { + $parsed->flags['host-only'] = false; + } + + $path_is_valid = (!empty($parsed->attributes['path']) && $parsed->attributes['path'][0] === '/'); + if (!$path_is_valid && !empty($origin)) { + $path = $origin->path; + + // Default path normalization as per RFC 6265 section 5.1.4 + if (substr($path, 0, 1) !== '/') { + // If the uri-path is empty or if the first character of + // the uri-path is not a %x2F ("/") character, output + // %x2F ("/") and skip the remaining steps. + $path = '/'; + } + elseif (substr_count($path, '/') === 1) { + // If the uri-path contains no more than one %x2F ("/") + // character, output %x2F ("/") and skip the remaining + // step. + $path = '/'; + } + else { + // Output the characters of the uri-path from the first + // character up to, but not including, the right-most + // %x2F ("/"). + $path = substr($path, 0, strrpos($path, '/')); + } + $parsed->attributes['path'] = $path; + } + + // Reject invalid cookie domains + if (!empty($origin) && !$parsed->domain_matches($origin->host)) { + continue; + } + + $cookies[$parsed->name] = $parsed; + } + + return $cookies; + } + + /** + * Parse all Set-Cookie headers from request headers + * + * @codeCoverageIgnore + * @deprecated Use {@see Requests_Cookie::parse_from_headers} + * @return string + */ + public static function parseFromHeaders(Requests_Response_Headers $headers) { + return self::parse_from_headers($headers); + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Cookie/Jar.php b/includes/vendor/rmccue/requests/library/Requests/Cookie/Jar.php new file mode 100644 index 0000000..69be0fb --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Cookie/Jar.php @@ -0,0 +1,175 @@ +cookies = $cookies; + } + + /** + * Normalise cookie data into a Requests_Cookie + * + * @param string|Requests_Cookie $cookie + * @return Requests_Cookie + */ + public function normalize_cookie($cookie, $key = null) { + if ($cookie instanceof Requests_Cookie) { + return $cookie; + } + + return Requests_Cookie::parse($cookie, $key); + } + + /** + * Normalise cookie data into a Requests_Cookie + * + * @codeCoverageIgnore + * @deprecated Use {@see Requests_Cookie_Jar::normalize_cookie} + * @return Requests_Cookie + */ + public function normalizeCookie($cookie, $key = null) { + return $this->normalize_cookie($cookie, $key); + } + + /** + * Check if the given item exists + * + * @param string $key Item key + * @return boolean Does the item exist? + */ + public function offsetExists($key) { + return isset($this->cookies[$key]); + } + + /** + * Get the value for the item + * + * @param string $key Item key + * @return string Item value + */ + public function offsetGet($key) { + if (!isset($this->cookies[$key])) { + return null; + } + + return $this->cookies[$key]; + } + + /** + * Set the given item + * + * @throws Requests_Exception On attempting to use dictionary as list (`invalidset`) + * + * @param string $key Item name + * @param string $value Item value + */ + public function offsetSet($key, $value) { + if ($key === null) { + throw new Requests_Exception('Object is a dictionary, not a list', 'invalidset'); + } + + $this->cookies[$key] = $value; + } + + /** + * Unset the given header + * + * @param string $key + */ + public function offsetUnset($key) { + unset($this->cookies[$key]); + } + + /** + * Get an iterator for the data + * + * @return ArrayIterator + */ + public function getIterator() { + return new ArrayIterator($this->cookies); + } + + /** + * Register the cookie handler with the request's hooking system + * + * @param Requests_Hooker $hooks Hooking system + */ + public function register(Requests_Hooker $hooks) { + $hooks->register('requests.before_request', array($this, 'before_request')); + $hooks->register('requests.before_redirect_check', array($this, 'before_redirect_check')); + } + + /** + * Add Cookie header to a request if we have any + * + * As per RFC 6265, cookies are separated by '; ' + * + * @param string $url + * @param array $headers + * @param array $data + * @param string $type + * @param array $options + */ + public function before_request($url, &$headers, &$data, &$type, &$options) { + if (!$url instanceof Requests_IRI) { + $url = new Requests_IRI($url); + } + + if (!empty($this->cookies)) { + $cookies = array(); + foreach ($this->cookies as $key => $cookie) { + $cookie = $this->normalize_cookie($cookie, $key); + + // Skip expired cookies + if ($cookie->is_expired()) { + continue; + } + + if ($cookie->domain_matches($url->host)) { + $cookies[] = $cookie->format_for_header(); + } + } + + $headers['Cookie'] = implode('; ', $cookies); + } + } + + /** + * Parse all cookies from a response and attach them to the response + * + * @var Requests_Response $response + */ + public function before_redirect_check(Requests_Response &$return) { + $url = $return->url; + if (!$url instanceof Requests_IRI) { + $url = new Requests_IRI($url); + } + + $cookies = Requests_Cookie::parse_from_headers($return->headers, $url); + $this->cookies = array_merge($this->cookies, $cookies); + $return->cookies = $this; + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Exception.php b/includes/vendor/rmccue/requests/library/Requests/Exception.php new file mode 100644 index 0000000..37d4711 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Exception.php @@ -0,0 +1,62 @@ +type = $type; + $this->data = $data; + } + + /** + * Like {@see getCode()}, but a string code. + * + * @codeCoverageIgnore + * @return string + */ + public function getType() { + return $this->type; + } + + /** + * Gives any relevant data + * + * @codeCoverageIgnore + * @return mixed + */ + public function getData() { + return $this->data; + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Exception/HTTP.php b/includes/vendor/rmccue/requests/library/Requests/Exception/HTTP.php new file mode 100644 index 0000000..9ac6a87 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Exception/HTTP.php @@ -0,0 +1,71 @@ +reason = $reason; + } + + $message = sprintf('%d %s', $this->code, $this->reason); + parent::__construct($message, 'httpresponse', $data, $this->code); + } + + /** + * Get the status message + */ + public function getReason() { + return $this->reason; + } + + /** + * Get the correct exception class for a given error code + * + * @param int|bool $code HTTP status code, or false if unavailable + * @return string Exception class name to use + */ + public static function get_class($code) { + if (!$code) { + return 'Requests_Exception_HTTP_Unknown'; + } + + $class = sprintf('Requests_Exception_HTTP_%d', $code); + if (class_exists($class)) { + return $class; + } + + return 'Requests_Exception_HTTP_Unknown'; + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/304.php b/includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/304.php new file mode 100644 index 0000000..6799033 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Exception/HTTP/304.php @@ -0,0 +1,27 @@ +code = $data->status_code; + } + + parent::__construct($reason, $data); + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Exception/Transport.php b/includes/vendor/rmccue/requests/library/Requests/Exception/Transport.php new file mode 100644 index 0000000..e60b488 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Exception/Transport.php @@ -0,0 +1,5 @@ +type = $type; + } + + if ($code !== null) { + $this->code = $code; + } + + if ($message !== null) { + $this->reason = $message; + } + + $message = sprintf('%d %s', $this->code, $this->reason); + parent::__construct($message, $this->type, $data, $this->code); + } + + /** + * Get the error message + */ + public function getReason() { + return $this->reason; + } + +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Hooker.php b/includes/vendor/rmccue/requests/library/Requests/Hooker.php new file mode 100644 index 0000000..f667ae9 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Hooker.php @@ -0,0 +1,33 @@ +0 is executed later + */ + public function register($hook, $callback, $priority = 0); + + /** + * Dispatch a message + * + * @param string $hook Hook name + * @param array $parameters Parameters to pass to callbacks + * @return boolean Successfulness + */ + public function dispatch($hook, $parameters = array()); +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Hooks.php b/includes/vendor/rmccue/requests/library/Requests/Hooks.php new file mode 100644 index 0000000..2e61c73 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Hooks.php @@ -0,0 +1,68 @@ +0 is executed later + */ + public function register($hook, $callback, $priority = 0) { + if (!isset($this->hooks[$hook])) { + $this->hooks[$hook] = array(); + } + if (!isset($this->hooks[$hook][$priority])) { + $this->hooks[$hook][$priority] = array(); + } + + $this->hooks[$hook][$priority][] = $callback; + } + + /** + * Dispatch a message + * + * @param string $hook Hook name + * @param array $parameters Parameters to pass to callbacks + * @return boolean Successfulness + */ + public function dispatch($hook, $parameters = array()) { + if (empty($this->hooks[$hook])) { + return false; + } + + foreach ($this->hooks[$hook] as $priority => $hooked) { + foreach ($hooked as $callback) { + call_user_func_array($callback, $parameters); + } + } + + return true; + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/IDNAEncoder.php b/includes/vendor/rmccue/requests/library/Requests/IDNAEncoder.php new file mode 100644 index 0000000..ebbe211 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/IDNAEncoder.php @@ -0,0 +1,388 @@ + 0) { + if ($position + $length > $strlen) { + throw new Requests_Exception('Invalid Unicode codepoint', 'idna.invalidcodepoint', $character); + } + for ($position++; $remaining > 0; $position++) { + $value = ord($input[$position]); + + // If it is invalid, count the sequence as invalid and reprocess the current byte: + if (($value & 0xC0) !== 0x80) { + throw new Requests_Exception('Invalid Unicode codepoint', 'idna.invalidcodepoint', $character); + } + + $character |= ($value & 0x3F) << (--$remaining * 6); + } + $position--; + } + + if ( + // Non-shortest form sequences are invalid + $length > 1 && $character <= 0x7F + || $length > 2 && $character <= 0x7FF + || $length > 3 && $character <= 0xFFFF + // Outside of range of ucschar codepoints + // Noncharacters + || ($character & 0xFFFE) === 0xFFFE + || $character >= 0xFDD0 && $character <= 0xFDEF + || ( + // Everything else not in ucschar + $character > 0xD7FF && $character < 0xF900 + || $character < 0x20 + || $character > 0x7E && $character < 0xA0 + || $character > 0xEFFFD + ) + ) { + throw new Requests_Exception('Invalid Unicode codepoint', 'idna.invalidcodepoint', $character); + } + + $codepoints[] = $character; + } + + return $codepoints; + } + + /** + * RFC3492-compliant encoder + * + * @internal Pseudo-code from Section 6.3 is commented with "#" next to relevant code + * @throws Requests_Exception On character outside of the domain (never happens with Punycode) (`idna.character_outside_domain`) + * + * @param string $input UTF-8 encoded string to encode + * @return string Punycode-encoded string + */ + public static function punycode_encode($input) { + $output = ''; +# let n = initial_n + $n = self::BOOTSTRAP_INITIAL_N; +# let delta = 0 + $delta = 0; +# let bias = initial_bias + $bias = self::BOOTSTRAP_INITIAL_BIAS; +# let h = b = the number of basic code points in the input + $h = $b = 0; // see loop +# copy them to the output in order + $codepoints = self::utf8_to_codepoints($input); + $extended = array(); + + foreach ($codepoints as $char) { + if ($char < 128) { + // Character is valid ASCII + // TODO: this should also check if it's valid for a URL + $output .= chr($char); + $h++; + } + // Check if the character is non-ASCII, but below initial n + // This never occurs for Punycode, so ignore in coverage + // @codeCoverageIgnoreStart + elseif ($char < $n) { + throw new Requests_Exception('Invalid character', 'idna.character_outside_domain', $char); + } + // @codeCoverageIgnoreEnd + else { + $extended[$char] = true; + } + } + $extended = array_keys($extended); + sort($extended); + $b = $h; +# [copy them] followed by a delimiter if b > 0 + if (strlen($output) > 0) { + $output .= '-'; + } +# {if the input contains a non-basic code point < n then fail} +# while h < length(input) do begin + while ($h < count($codepoints)) { +# let m = the minimum code point >= n in the input + $m = array_shift($extended); + //printf('next code point to insert is %s' . PHP_EOL, dechex($m)); +# let delta = delta + (m - n) * (h + 1), fail on overflow + $delta += ($m - $n) * ($h + 1); +# let n = m + $n = $m; +# for each code point c in the input (in order) do begin + for ($num = 0; $num < count($codepoints); $num++) { + $c = $codepoints[$num]; +# if c < n then increment delta, fail on overflow + if ($c < $n) { + $delta++; + } +# if c == n then begin + elseif ($c === $n) { +# let q = delta + $q = $delta; +# for k = base to infinity in steps of base do begin + for ($k = self::BOOTSTRAP_BASE; ; $k += self::BOOTSTRAP_BASE) { +# let t = tmin if k <= bias {+ tmin}, or +# tmax if k >= bias + tmax, or k - bias otherwise + if ($k <= ($bias + self::BOOTSTRAP_TMIN)) { + $t = self::BOOTSTRAP_TMIN; + } + elseif ($k >= ($bias + self::BOOTSTRAP_TMAX)) { + $t = self::BOOTSTRAP_TMAX; + } + else { + $t = $k - $bias; + } +# if q < t then break + if ($q < $t) { + break; + } +# output the code point for digit t + ((q - t) mod (base - t)) + $digit = $t + (($q - $t) % (self::BOOTSTRAP_BASE - $t)); + $output .= self::digit_to_char($digit); +# let q = (q - t) div (base - t) + $q = floor(($q - $t) / (self::BOOTSTRAP_BASE - $t)); +# end + } +# output the code point for digit q + $output .= self::digit_to_char($q); +# let bias = adapt(delta, h + 1, test h equals b?) + $bias = self::adapt($delta, $h + 1, $h === $b); +# let delta = 0 + $delta = 0; +# increment h + $h++; +# end + } +# end + } +# increment delta and n + $delta++; + $n++; +# end + } + + return $output; + } + + /** + * Convert a digit to its respective character + * + * @see https://tools.ietf.org/html/rfc3492#section-5 + * @throws Requests_Exception On invalid digit (`idna.invalid_digit`) + * + * @param int $digit Digit in the range 0-35 + * @return string Single character corresponding to digit + */ + protected static function digit_to_char($digit) { + // @codeCoverageIgnoreStart + // As far as I know, this never happens, but still good to be sure. + if ($digit < 0 || $digit > 35) { + throw new Requests_Exception(sprintf('Invalid digit %d', $digit), 'idna.invalid_digit', $digit); + } + // @codeCoverageIgnoreEnd + $digits = 'abcdefghijklmnopqrstuvwxyz0123456789'; + return substr($digits, $digit, 1); + } + + /** + * Adapt the bias + * + * @see https://tools.ietf.org/html/rfc3492#section-6.1 + * @param int $delta + * @param int $numpoints + * @param bool $firsttime + * @return int New bias + */ + protected static function adapt($delta, $numpoints, $firsttime) { +# function adapt(delta,numpoints,firsttime): +# if firsttime then let delta = delta div damp + if ($firsttime) { + $delta = floor($delta / self::BOOTSTRAP_DAMP); + } +# else let delta = delta div 2 + else { + $delta = floor($delta / 2); + } +# let delta = delta + (delta div numpoints) + $delta += floor($delta / $numpoints); +# let k = 0 + $k = 0; +# while delta > ((base - tmin) * tmax) div 2 do begin + $max = floor(((self::BOOTSTRAP_BASE - self::BOOTSTRAP_TMIN) * self::BOOTSTRAP_TMAX) / 2); + while ($delta > $max) { +# let delta = delta div (base - tmin) + $delta = floor($delta / (self::BOOTSTRAP_BASE - self::BOOTSTRAP_TMIN)); +# let k = k + base + $k += self::BOOTSTRAP_BASE; +# end + } +# return k + (((base - tmin + 1) * delta) div (delta + skew)) + return $k + floor(((self::BOOTSTRAP_BASE - self::BOOTSTRAP_TMIN + 1) * $delta) / ($delta + self::BOOTSTRAP_SKEW)); + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/IPv6.php b/includes/vendor/rmccue/requests/library/Requests/IPv6.php new file mode 100644 index 0000000..204dbd7 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/IPv6.php @@ -0,0 +1,190 @@ + FF01:0:0:0:0:0:0:101 + * ::1 -> 0:0:0:0:0:0:0:1 + * + * @author Alexander Merz + * @author elfrink at introweb dot nl + * @author Josh Peck + * @copyright 2003-2005 The PHP Group + * @license http://www.opensource.org/licenses/bsd-license.php + * @param string $ip An IPv6 address + * @return string The uncompressed IPv6 address + */ + public static function uncompress($ip) { + if (substr_count($ip, '::') !== 1) { + return $ip; + } + + list($ip1, $ip2) = explode('::', $ip); + $c1 = ($ip1 === '') ? -1 : substr_count($ip1, ':'); + $c2 = ($ip2 === '') ? -1 : substr_count($ip2, ':'); + + if (strpos($ip2, '.') !== false) { + $c2++; + } + // :: + if ($c1 === -1 && $c2 === -1) { + $ip = '0:0:0:0:0:0:0:0'; + } + // ::xxx + else if ($c1 === -1) { + $fill = str_repeat('0:', 7 - $c2); + $ip = str_replace('::', $fill, $ip); + } + // xxx:: + else if ($c2 === -1) { + $fill = str_repeat(':0', 7 - $c1); + $ip = str_replace('::', $fill, $ip); + } + // xxx::xxx + else { + $fill = ':' . str_repeat('0:', 6 - $c2 - $c1); + $ip = str_replace('::', $fill, $ip); + } + return $ip; + } + + /** + * Compresses an IPv6 address + * + * RFC 4291 allows you to compress consecutive zero pieces in an address to + * '::'. This method expects a valid IPv6 address and compresses consecutive + * zero pieces to '::'. + * + * Example: FF01:0:0:0:0:0:0:101 -> FF01::101 + * 0:0:0:0:0:0:0:1 -> ::1 + * + * @see uncompress() + * @param string $ip An IPv6 address + * @return string The compressed IPv6 address + */ + public static function compress($ip) { + // Prepare the IP to be compressed + $ip = self::uncompress($ip); + $ip_parts = self::split_v6_v4($ip); + + // Replace all leading zeros + $ip_parts[0] = preg_replace('/(^|:)0+([0-9])/', '\1\2', $ip_parts[0]); + + // Find bunches of zeros + if (preg_match_all('/(?:^|:)(?:0(?::|$))+/', $ip_parts[0], $matches, PREG_OFFSET_CAPTURE)) { + $max = 0; + $pos = null; + foreach ($matches[0] as $match) { + if (strlen($match[0]) > $max) { + $max = strlen($match[0]); + $pos = $match[1]; + } + } + + $ip_parts[0] = substr_replace($ip_parts[0], '::', $pos, $max); + } + + if ($ip_parts[1] !== '') { + return implode(':', $ip_parts); + } + else { + return $ip_parts[0]; + } + } + + /** + * Splits an IPv6 address into the IPv6 and IPv4 representation parts + * + * RFC 4291 allows you to represent the last two parts of an IPv6 address + * using the standard IPv4 representation + * + * Example: 0:0:0:0:0:0:13.1.68.3 + * 0:0:0:0:0:FFFF:129.144.52.38 + * + * @param string $ip An IPv6 address + * @return string[] [0] contains the IPv6 represented part, and [1] the IPv4 represented part + */ + protected static function split_v6_v4($ip) { + if (strpos($ip, '.') !== false) { + $pos = strrpos($ip, ':'); + $ipv6_part = substr($ip, 0, $pos); + $ipv4_part = substr($ip, $pos + 1); + return array($ipv6_part, $ipv4_part); + } + else { + return array($ip, ''); + } + } + + /** + * Checks an IPv6 address + * + * Checks if the given IP is a valid IPv6 address + * + * @param string $ip An IPv6 address + * @return bool true if $ip is a valid IPv6 address + */ + public static function check_ipv6($ip) { + $ip = self::uncompress($ip); + list($ipv6, $ipv4) = self::split_v6_v4($ip); + $ipv6 = explode(':', $ipv6); + $ipv4 = explode('.', $ipv4); + if (count($ipv6) === 8 && count($ipv4) === 1 || count($ipv6) === 6 && count($ipv4) === 4) { + foreach ($ipv6 as $ipv6_part) { + // The section can't be empty + if ($ipv6_part === '') { + return false; + } + + // Nor can it be over four characters + if (strlen($ipv6_part) > 4) { + return false; + } + + // Remove leading zeros (this is safe because of the above) + $ipv6_part = ltrim($ipv6_part, '0'); + if ($ipv6_part === '') { + $ipv6_part = '0'; + } + + // Check the value is valid + $value = hexdec($ipv6_part); + if (dechex($value) !== strtolower($ipv6_part) || $value < 0 || $value > 0xFFFF) { + return false; + } + } + if (count($ipv4) === 4) { + foreach ($ipv4 as $ipv4_part) { + $value = (int) $ipv4_part; + if ((string) $value !== $ipv4_part || $value < 0 || $value > 0xFF) { + return false; + } + } + } + return true; + } + else { + return false; + } + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/IRI.php b/includes/vendor/rmccue/requests/library/Requests/IRI.php new file mode 100644 index 0000000..8dc2fa2 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/IRI.php @@ -0,0 +1,1084 @@ + array( + 'port' => 674 + ), + 'dict' => array( + 'port' => 2628 + ), + 'file' => array( + 'ihost' => 'localhost' + ), + 'http' => array( + 'port' => 80, + ), + 'https' => array( + 'port' => 443, + ), + ); + + /** + * Return the entire IRI when you try and read the object as a string + * + * @return string + */ + public function __toString() { + return $this->get_iri(); + } + + /** + * Overload __set() to provide access via properties + * + * @param string $name Property name + * @param mixed $value Property value + */ + public function __set($name, $value) { + if (method_exists($this, 'set_' . $name)) { + call_user_func(array($this, 'set_' . $name), $value); + } + elseif ( + $name === 'iauthority' + || $name === 'iuserinfo' + || $name === 'ihost' + || $name === 'ipath' + || $name === 'iquery' + || $name === 'ifragment' + ) { + call_user_func(array($this, 'set_' . substr($name, 1)), $value); + } + } + + /** + * Overload __get() to provide access via properties + * + * @param string $name Property name + * @return mixed + */ + public function __get($name) { + // isset() returns false for null, we don't want to do that + // Also why we use array_key_exists below instead of isset() + $props = get_object_vars($this); + + if ( + $name === 'iri' || + $name === 'uri' || + $name === 'iauthority' || + $name === 'authority' + ) { + $method = 'get_' . $name; + $return = $this->$method(); + } + elseif (array_key_exists($name, $props)) { + $return = $this->$name; + } + // host -> ihost + elseif (($prop = 'i' . $name) && array_key_exists($prop, $props)) { + $name = $prop; + $return = $this->$prop; + } + // ischeme -> scheme + elseif (($prop = substr($name, 1)) && array_key_exists($prop, $props)) { + $name = $prop; + $return = $this->$prop; + } + else { + trigger_error('Undefined property: ' . get_class($this) . '::' . $name, E_USER_NOTICE); + $return = null; + } + + if ($return === null && isset($this->normalization[$this->scheme][$name])) { + return $this->normalization[$this->scheme][$name]; + } + else { + return $return; + } + } + + /** + * Overload __isset() to provide access via properties + * + * @param string $name Property name + * @return bool + */ + public function __isset($name) { + return (method_exists($this, 'get_' . $name) || isset($this->$name)); + } + + /** + * Overload __unset() to provide access via properties + * + * @param string $name Property name + */ + public function __unset($name) { + if (method_exists($this, 'set_' . $name)) { + call_user_func(array($this, 'set_' . $name), ''); + } + } + + /** + * Create a new IRI object, from a specified string + * + * @param string|null $iri + */ + public function __construct($iri = null) { + $this->set_iri($iri); + } + + /** + * Create a new IRI object by resolving a relative IRI + * + * Returns false if $base is not absolute, otherwise an IRI. + * + * @param IRI|string $base (Absolute) Base IRI + * @param IRI|string $relative Relative IRI + * @return IRI|false + */ + public static function absolutize($base, $relative) { + if (!($relative instanceof Requests_IRI)) { + $relative = new Requests_IRI($relative); + } + if (!$relative->is_valid()) { + return false; + } + elseif ($relative->scheme !== null) { + return clone $relative; + } + + if (!($base instanceof Requests_IRI)) { + $base = new Requests_IRI($base); + } + if ($base->scheme === null || !$base->is_valid()) { + return false; + } + + if ($relative->get_iri() !== '') { + if ($relative->iuserinfo !== null || $relative->ihost !== null || $relative->port !== null) { + $target = clone $relative; + $target->scheme = $base->scheme; + } + else { + $target = new Requests_IRI; + $target->scheme = $base->scheme; + $target->iuserinfo = $base->iuserinfo; + $target->ihost = $base->ihost; + $target->port = $base->port; + if ($relative->ipath !== '') { + if ($relative->ipath[0] === '/') { + $target->ipath = $relative->ipath; + } + elseif (($base->iuserinfo !== null || $base->ihost !== null || $base->port !== null) && $base->ipath === '') { + $target->ipath = '/' . $relative->ipath; + } + elseif (($last_segment = strrpos($base->ipath, '/')) !== false) { + $target->ipath = substr($base->ipath, 0, $last_segment + 1) . $relative->ipath; + } + else { + $target->ipath = $relative->ipath; + } + $target->ipath = $target->remove_dot_segments($target->ipath); + $target->iquery = $relative->iquery; + } + else { + $target->ipath = $base->ipath; + if ($relative->iquery !== null) { + $target->iquery = $relative->iquery; + } + elseif ($base->iquery !== null) { + $target->iquery = $base->iquery; + } + } + $target->ifragment = $relative->ifragment; + } + } + else { + $target = clone $base; + $target->ifragment = null; + } + $target->scheme_normalization(); + return $target; + } + + /** + * Parse an IRI into scheme/authority/path/query/fragment segments + * + * @param string $iri + * @return array + */ + protected function parse_iri($iri) { + $iri = trim($iri, "\x20\x09\x0A\x0C\x0D"); + $has_match = preg_match('/^((?P[^:\/?#]+):)?(\/\/(?P[^\/?#]*))?(?P[^?#]*)(\?(?P[^#]*))?(#(?P.*))?$/', $iri, $match); + if (!$has_match) { + throw new Requests_Exception('Cannot parse supplied IRI', 'iri.cannot_parse', $iri); + } + + if ($match[1] === '') { + $match['scheme'] = null; + } + if (!isset($match[3]) || $match[3] === '') { + $match['authority'] = null; + } + if (!isset($match[5])) { + $match['path'] = ''; + } + if (!isset($match[6]) || $match[6] === '') { + $match['query'] = null; + } + if (!isset($match[8]) || $match[8] === '') { + $match['fragment'] = null; + } + return $match; + } + + /** + * Remove dot segments from a path + * + * @param string $input + * @return string + */ + protected function remove_dot_segments($input) { + $output = ''; + while (strpos($input, './') !== false || strpos($input, '/.') !== false || $input === '.' || $input === '..') { + // A: If the input buffer begins with a prefix of "../" or "./", + // then remove that prefix from the input buffer; otherwise, + if (strpos($input, '../') === 0) { + $input = substr($input, 3); + } + elseif (strpos($input, './') === 0) { + $input = substr($input, 2); + } + // B: if the input buffer begins with a prefix of "/./" or "/.", + // where "." is a complete path segment, then replace that prefix + // with "/" in the input buffer; otherwise, + elseif (strpos($input, '/./') === 0) { + $input = substr($input, 2); + } + elseif ($input === '/.') { + $input = '/'; + } + // C: if the input buffer begins with a prefix of "/../" or "/..", + // where ".." is a complete path segment, then replace that prefix + // with "/" in the input buffer and remove the last segment and its + // preceding "/" (if any) from the output buffer; otherwise, + elseif (strpos($input, '/../') === 0) { + $input = substr($input, 3); + $output = substr_replace($output, '', strrpos($output, '/')); + } + elseif ($input === '/..') { + $input = '/'; + $output = substr_replace($output, '', strrpos($output, '/')); + } + // D: if the input buffer consists only of "." or "..", then remove + // that from the input buffer; otherwise, + elseif ($input === '.' || $input === '..') { + $input = ''; + } + // E: move the first path segment in the input buffer to the end of + // the output buffer, including the initial "/" character (if any) + // and any subsequent characters up to, but not including, the next + // "/" character or the end of the input buffer + elseif (($pos = strpos($input, '/', 1)) !== false) { + $output .= substr($input, 0, $pos); + $input = substr_replace($input, '', 0, $pos); + } + else { + $output .= $input; + $input = ''; + } + } + return $output . $input; + } + + /** + * Replace invalid character with percent encoding + * + * @param string $string Input string + * @param string $extra_chars Valid characters not in iunreserved or + * iprivate (this is ASCII-only) + * @param bool $iprivate Allow iprivate + * @return string + */ + protected function replace_invalid_with_pct_encoding($string, $extra_chars, $iprivate = false) { + // Normalize as many pct-encoded sections as possible + $string = preg_replace_callback('/(?:%[A-Fa-f0-9]{2})+/', array(&$this, 'remove_iunreserved_percent_encoded'), $string); + + // Replace invalid percent characters + $string = preg_replace('/%(?![A-Fa-f0-9]{2})/', '%25', $string); + + // Add unreserved and % to $extra_chars (the latter is safe because all + // pct-encoded sections are now valid). + $extra_chars .= 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~%'; + + // Now replace any bytes that aren't allowed with their pct-encoded versions + $position = 0; + $strlen = strlen($string); + while (($position += strspn($string, $extra_chars, $position)) < $strlen) { + $value = ord($string[$position]); + + // Start position + $start = $position; + + // By default we are valid + $valid = true; + + // No one byte sequences are valid due to the while. + // Two byte sequence: + if (($value & 0xE0) === 0xC0) { + $character = ($value & 0x1F) << 6; + $length = 2; + $remaining = 1; + } + // Three byte sequence: + elseif (($value & 0xF0) === 0xE0) { + $character = ($value & 0x0F) << 12; + $length = 3; + $remaining = 2; + } + // Four byte sequence: + elseif (($value & 0xF8) === 0xF0) { + $character = ($value & 0x07) << 18; + $length = 4; + $remaining = 3; + } + // Invalid byte: + else { + $valid = false; + $length = 1; + $remaining = 0; + } + + if ($remaining) { + if ($position + $length <= $strlen) { + for ($position++; $remaining; $position++) { + $value = ord($string[$position]); + + // Check that the byte is valid, then add it to the character: + if (($value & 0xC0) === 0x80) { + $character |= ($value & 0x3F) << (--$remaining * 6); + } + // If it is invalid, count the sequence as invalid and reprocess the current byte: + else { + $valid = false; + $position--; + break; + } + } + } + else { + $position = $strlen - 1; + $valid = false; + } + } + + // Percent encode anything invalid or not in ucschar + if ( + // Invalid sequences + !$valid + // Non-shortest form sequences are invalid + || $length > 1 && $character <= 0x7F + || $length > 2 && $character <= 0x7FF + || $length > 3 && $character <= 0xFFFF + // Outside of range of ucschar codepoints + // Noncharacters + || ($character & 0xFFFE) === 0xFFFE + || $character >= 0xFDD0 && $character <= 0xFDEF + || ( + // Everything else not in ucschar + $character > 0xD7FF && $character < 0xF900 + || $character < 0xA0 + || $character > 0xEFFFD + ) + && ( + // Everything not in iprivate, if it applies + !$iprivate + || $character < 0xE000 + || $character > 0x10FFFD + ) + ) { + // If we were a character, pretend we weren't, but rather an error. + if ($valid) { + $position--; + } + + for ($j = $start; $j <= $position; $j++) { + $string = substr_replace($string, sprintf('%%%02X', ord($string[$j])), $j, 1); + $j += 2; + $position += 2; + $strlen += 2; + } + } + } + + return $string; + } + + /** + * Callback function for preg_replace_callback. + * + * Removes sequences of percent encoded bytes that represent UTF-8 + * encoded characters in iunreserved + * + * @param array $match PCRE match + * @return string Replacement + */ + protected function remove_iunreserved_percent_encoded($match) { + // As we just have valid percent encoded sequences we can just explode + // and ignore the first member of the returned array (an empty string). + $bytes = explode('%', $match[0]); + + // Initialize the new string (this is what will be returned) and that + // there are no bytes remaining in the current sequence (unsurprising + // at the first byte!). + $string = ''; + $remaining = 0; + + // Loop over each and every byte, and set $value to its value + for ($i = 1, $len = count($bytes); $i < $len; $i++) { + $value = hexdec($bytes[$i]); + + // If we're the first byte of sequence: + if (!$remaining) { + // Start position + $start = $i; + + // By default we are valid + $valid = true; + + // One byte sequence: + if ($value <= 0x7F) { + $character = $value; + $length = 1; + } + // Two byte sequence: + elseif (($value & 0xE0) === 0xC0) { + $character = ($value & 0x1F) << 6; + $length = 2; + $remaining = 1; + } + // Three byte sequence: + elseif (($value & 0xF0) === 0xE0) { + $character = ($value & 0x0F) << 12; + $length = 3; + $remaining = 2; + } + // Four byte sequence: + elseif (($value & 0xF8) === 0xF0) { + $character = ($value & 0x07) << 18; + $length = 4; + $remaining = 3; + } + // Invalid byte: + else { + $valid = false; + $remaining = 0; + } + } + // Continuation byte: + else { + // Check that the byte is valid, then add it to the character: + if (($value & 0xC0) === 0x80) { + $remaining--; + $character |= ($value & 0x3F) << ($remaining * 6); + } + // If it is invalid, count the sequence as invalid and reprocess the current byte as the start of a sequence: + else { + $valid = false; + $remaining = 0; + $i--; + } + } + + // If we've reached the end of the current byte sequence, append it to Unicode::$data + if (!$remaining) { + // Percent encode anything invalid or not in iunreserved + if ( + // Invalid sequences + !$valid + // Non-shortest form sequences are invalid + || $length > 1 && $character <= 0x7F + || $length > 2 && $character <= 0x7FF + || $length > 3 && $character <= 0xFFFF + // Outside of range of iunreserved codepoints + || $character < 0x2D + || $character > 0xEFFFD + // Noncharacters + || ($character & 0xFFFE) === 0xFFFE + || $character >= 0xFDD0 && $character <= 0xFDEF + // Everything else not in iunreserved (this is all BMP) + || $character === 0x2F + || $character > 0x39 && $character < 0x41 + || $character > 0x5A && $character < 0x61 + || $character > 0x7A && $character < 0x7E + || $character > 0x7E && $character < 0xA0 + || $character > 0xD7FF && $character < 0xF900 + ) { + for ($j = $start; $j <= $i; $j++) { + $string .= '%' . strtoupper($bytes[$j]); + } + } + else { + for ($j = $start; $j <= $i; $j++) { + $string .= chr(hexdec($bytes[$j])); + } + } + } + } + + // If we have any bytes left over they are invalid (i.e., we are + // mid-way through a multi-byte sequence) + if ($remaining) { + for ($j = $start; $j < $len; $j++) { + $string .= '%' . strtoupper($bytes[$j]); + } + } + + return $string; + } + + protected function scheme_normalization() { + if (isset($this->normalization[$this->scheme]['iuserinfo']) && $this->iuserinfo === $this->normalization[$this->scheme]['iuserinfo']) { + $this->iuserinfo = null; + } + if (isset($this->normalization[$this->scheme]['ihost']) && $this->ihost === $this->normalization[$this->scheme]['ihost']) { + $this->ihost = null; + } + if (isset($this->normalization[$this->scheme]['port']) && $this->port === $this->normalization[$this->scheme]['port']) { + $this->port = null; + } + if (isset($this->normalization[$this->scheme]['ipath']) && $this->ipath === $this->normalization[$this->scheme]['ipath']) { + $this->ipath = ''; + } + if (isset($this->ihost) && empty($this->ipath)) { + $this->ipath = '/'; + } + if (isset($this->normalization[$this->scheme]['iquery']) && $this->iquery === $this->normalization[$this->scheme]['iquery']) { + $this->iquery = null; + } + if (isset($this->normalization[$this->scheme]['ifragment']) && $this->ifragment === $this->normalization[$this->scheme]['ifragment']) { + $this->ifragment = null; + } + } + + /** + * Check if the object represents a valid IRI. This needs to be done on each + * call as some things change depending on another part of the IRI. + * + * @return bool + */ + public function is_valid() { + $isauthority = $this->iuserinfo !== null || $this->ihost !== null || $this->port !== null; + if ($this->ipath !== '' && + ( + $isauthority && $this->ipath[0] !== '/' || + ( + $this->scheme === null && + !$isauthority && + strpos($this->ipath, ':') !== false && + (strpos($this->ipath, '/') === false ? true : strpos($this->ipath, ':') < strpos($this->ipath, '/')) + ) + ) + ) { + return false; + } + + return true; + } + + /** + * Set the entire IRI. Returns true on success, false on failure (if there + * are any invalid characters). + * + * @param string $iri + * @return bool + */ + protected function set_iri($iri) { + static $cache; + if (!$cache) { + $cache = array(); + } + + if ($iri === null) { + return true; + } + if (isset($cache[$iri])) { + list($this->scheme, + $this->iuserinfo, + $this->ihost, + $this->port, + $this->ipath, + $this->iquery, + $this->ifragment, + $return) = $cache[$iri]; + return $return; + } + + $parsed = $this->parse_iri((string) $iri); + + $return = $this->set_scheme($parsed['scheme']) + && $this->set_authority($parsed['authority']) + && $this->set_path($parsed['path']) + && $this->set_query($parsed['query']) + && $this->set_fragment($parsed['fragment']); + + $cache[$iri] = array($this->scheme, + $this->iuserinfo, + $this->ihost, + $this->port, + $this->ipath, + $this->iquery, + $this->ifragment, + $return); + return $return; + } + + /** + * Set the scheme. Returns true on success, false on failure (if there are + * any invalid characters). + * + * @param string $scheme + * @return bool + */ + protected function set_scheme($scheme) { + if ($scheme === null) { + $this->scheme = null; + } + elseif (!preg_match('/^[A-Za-z][0-9A-Za-z+\-.]*$/', $scheme)) { + $this->scheme = null; + return false; + } + else { + $this->scheme = strtolower($scheme); + } + return true; + } + + /** + * Set the authority. Returns true on success, false on failure (if there are + * any invalid characters). + * + * @param string $authority + * @return bool + */ + protected function set_authority($authority) { + static $cache; + if (!$cache) { + $cache = array(); + } + + if ($authority === null) { + $this->iuserinfo = null; + $this->ihost = null; + $this->port = null; + return true; + } + if (isset($cache[$authority])) { + list($this->iuserinfo, + $this->ihost, + $this->port, + $return) = $cache[$authority]; + + return $return; + } + + $remaining = $authority; + if (($iuserinfo_end = strrpos($remaining, '@')) !== false) { + $iuserinfo = substr($remaining, 0, $iuserinfo_end); + $remaining = substr($remaining, $iuserinfo_end + 1); + } + else { + $iuserinfo = null; + } + if (($port_start = strpos($remaining, ':', strpos($remaining, ']'))) !== false) { + $port = substr($remaining, $port_start + 1); + if ($port === false || $port === '') { + $port = null; + } + $remaining = substr($remaining, 0, $port_start); + } + else { + $port = null; + } + + $return = $this->set_userinfo($iuserinfo) && + $this->set_host($remaining) && + $this->set_port($port); + + $cache[$authority] = array($this->iuserinfo, + $this->ihost, + $this->port, + $return); + + return $return; + } + + /** + * Set the iuserinfo. + * + * @param string $iuserinfo + * @return bool + */ + protected function set_userinfo($iuserinfo) { + if ($iuserinfo === null) { + $this->iuserinfo = null; + } + else { + $this->iuserinfo = $this->replace_invalid_with_pct_encoding($iuserinfo, '!$&\'()*+,;=:'); + $this->scheme_normalization(); + } + + return true; + } + + /** + * Set the ihost. Returns true on success, false on failure (if there are + * any invalid characters). + * + * @param string $ihost + * @return bool + */ + protected function set_host($ihost) { + if ($ihost === null) { + $this->ihost = null; + return true; + } + if (substr($ihost, 0, 1) === '[' && substr($ihost, -1) === ']') { + if (Requests_IPv6::check_ipv6(substr($ihost, 1, -1))) { + $this->ihost = '[' . Requests_IPv6::compress(substr($ihost, 1, -1)) . ']'; + } + else { + $this->ihost = null; + return false; + } + } + else { + $ihost = $this->replace_invalid_with_pct_encoding($ihost, '!$&\'()*+,;='); + + // Lowercase, but ignore pct-encoded sections (as they should + // remain uppercase). This must be done after the previous step + // as that can add unescaped characters. + $position = 0; + $strlen = strlen($ihost); + while (($position += strcspn($ihost, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ%', $position)) < $strlen) { + if ($ihost[$position] === '%') { + $position += 3; + } + else { + $ihost[$position] = strtolower($ihost[$position]); + $position++; + } + } + + $this->ihost = $ihost; + } + + $this->scheme_normalization(); + + return true; + } + + /** + * Set the port. Returns true on success, false on failure (if there are + * any invalid characters). + * + * @param string $port + * @return bool + */ + protected function set_port($port) { + if ($port === null) { + $this->port = null; + return true; + } + + if (strspn($port, '0123456789') === strlen($port)) { + $this->port = (int) $port; + $this->scheme_normalization(); + return true; + } + + $this->port = null; + return false; + } + + /** + * Set the ipath. + * + * @param string $ipath + * @return bool + */ + protected function set_path($ipath) { + static $cache; + if (!$cache) { + $cache = array(); + } + + $ipath = (string) $ipath; + + if (isset($cache[$ipath])) { + $this->ipath = $cache[$ipath][(int) ($this->scheme !== null)]; + } + else { + $valid = $this->replace_invalid_with_pct_encoding($ipath, '!$&\'()*+,;=@:/'); + $removed = $this->remove_dot_segments($valid); + + $cache[$ipath] = array($valid, $removed); + $this->ipath = ($this->scheme !== null) ? $removed : $valid; + } + $this->scheme_normalization(); + return true; + } + + /** + * Set the iquery. + * + * @param string $iquery + * @return bool + */ + protected function set_query($iquery) { + if ($iquery === null) { + $this->iquery = null; + } + else { + $this->iquery = $this->replace_invalid_with_pct_encoding($iquery, '!$&\'()*+,;=:@/?', true); + $this->scheme_normalization(); + } + return true; + } + + /** + * Set the ifragment. + * + * @param string $ifragment + * @return bool + */ + protected function set_fragment($ifragment) { + if ($ifragment === null) { + $this->ifragment = null; + } + else { + $this->ifragment = $this->replace_invalid_with_pct_encoding($ifragment, '!$&\'()*+,;=:@/?'); + $this->scheme_normalization(); + } + return true; + } + + /** + * Convert an IRI to a URI (or parts thereof) + * + * @param string|bool IRI to convert (or false from {@see get_iri}) + * @return string|false URI if IRI is valid, false otherwise. + */ + protected function to_uri($string) { + if (!is_string($string)) { + return false; + } + + static $non_ascii; + if (!$non_ascii) { + $non_ascii = implode('', range("\x80", "\xFF")); + } + + $position = 0; + $strlen = strlen($string); + while (($position += strcspn($string, $non_ascii, $position)) < $strlen) { + $string = substr_replace($string, sprintf('%%%02X', ord($string[$position])), $position, 1); + $position += 3; + $strlen += 2; + } + + return $string; + } + + /** + * Get the complete IRI + * + * @return string + */ + protected function get_iri() { + if (!$this->is_valid()) { + return false; + } + + $iri = ''; + if ($this->scheme !== null) { + $iri .= $this->scheme . ':'; + } + if (($iauthority = $this->get_iauthority()) !== null) { + $iri .= '//' . $iauthority; + } + $iri .= $this->ipath; + if ($this->iquery !== null) { + $iri .= '?' . $this->iquery; + } + if ($this->ifragment !== null) { + $iri .= '#' . $this->ifragment; + } + + return $iri; + } + + /** + * Get the complete URI + * + * @return string + */ + protected function get_uri() { + return $this->to_uri($this->get_iri()); + } + + /** + * Get the complete iauthority + * + * @return string + */ + protected function get_iauthority() { + if ($this->iuserinfo === null && $this->ihost === null && $this->port === null) { + return null; + } + + $iauthority = ''; + if ($this->iuserinfo !== null) { + $iauthority .= $this->iuserinfo . '@'; + } + if ($this->ihost !== null) { + $iauthority .= $this->ihost; + } + if ($this->port !== null) { + $iauthority .= ':' . $this->port; + } + return $iauthority; + } + + /** + * Get the complete authority + * + * @return string + */ + protected function get_authority() { + $iauthority = $this->get_iauthority(); + if (is_string($iauthority)) { + return $this->to_uri($iauthority); + } + else { + return $iauthority; + } + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Proxy.php b/includes/vendor/rmccue/requests/library/Requests/Proxy.php new file mode 100644 index 0000000..ac7c1d6 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Proxy.php @@ -0,0 +1,35 @@ +proxy = $args; + } + elseif (is_array($args)) { + if (count($args) == 1) { + list($this->proxy) = $args; + } + elseif (count($args) == 3) { + list($this->proxy, $this->user, $this->pass) = $args; + $this->use_authentication = true; + } + else { + throw new Requests_Exception('Invalid number of arguments', 'proxyhttpbadargs'); + } + } + } + + /** + * Register the necessary callbacks + * + * @since 1.6 + * @see curl_before_send + * @see fsockopen_remote_socket + * @see fsockopen_remote_host_path + * @see fsockopen_header + * @param Requests_Hooks $hooks Hook system + */ + public function register(Requests_Hooks &$hooks) { + $hooks->register('curl.before_send', array(&$this, 'curl_before_send')); + + $hooks->register('fsockopen.remote_socket', array(&$this, 'fsockopen_remote_socket')); + $hooks->register('fsockopen.remote_host_path', array(&$this, 'fsockopen_remote_host_path')); + if ($this->use_authentication) { + $hooks->register('fsockopen.after_headers', array(&$this, 'fsockopen_header')); + } + } + + /** + * Set cURL parameters before the data is sent + * + * @since 1.6 + * @param resource $handle cURL resource + */ + public function curl_before_send(&$handle) { + curl_setopt($handle, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); + curl_setopt($handle, CURLOPT_PROXY, $this->proxy); + + if ($this->use_authentication) { + curl_setopt($handle, CURLOPT_PROXYAUTH, CURLAUTH_ANY); + curl_setopt($handle, CURLOPT_PROXYUSERPWD, $this->get_auth_string()); + } + } + + /** + * Alter remote socket information before opening socket connection + * + * @since 1.6 + * @param string $remote_socket Socket connection string + */ + public function fsockopen_remote_socket(&$remote_socket) { + $remote_socket = $this->proxy; + } + + /** + * Alter remote path before getting stream data + * + * @since 1.6 + * @param string $path Path to send in HTTP request string ("GET ...") + * @param string $url Full URL we're requesting + */ + public function fsockopen_remote_host_path(&$path, $url) { + $path = $url; + } + + /** + * Add extra headers to the request before sending + * + * @since 1.6 + * @param string $out HTTP header string + */ + public function fsockopen_header(&$out) { + $out .= sprintf("Proxy-Authorization: Basic %s\r\n", base64_encode($this->get_auth_string())); + } + + /** + * Get the authentication string (user:pass) + * + * @since 1.6 + * @return string + */ + public function get_auth_string() { + return $this->user . ':' . $this->pass; + } +} \ No newline at end of file diff --git a/includes/vendor/rmccue/requests/library/Requests/Response.php b/includes/vendor/rmccue/requests/library/Requests/Response.php new file mode 100644 index 0000000..3152fb6 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Response.php @@ -0,0 +1,121 @@ +headers = new Requests_Response_Headers(); + $this->cookies = new Requests_Cookie_Jar(); + } + + /** + * Response body + * + * @var string + */ + public $body = ''; + + /** + * Raw HTTP data from the transport + * + * @var string + */ + public $raw = ''; + + /** + * Headers, as an associative array + * + * @var Requests_Response_Headers Array-like object representing headers + */ + public $headers = array(); + + /** + * Status code, false if non-blocking + * + * @var integer|boolean + */ + public $status_code = false; + + /** + * Protocol version, false if non-blocking + * @var float|boolean + */ + public $protocol_version = false; + + /** + * Whether the request succeeded or not + * + * @var boolean + */ + public $success = false; + + /** + * Number of redirects the request used + * + * @var integer + */ + public $redirects = 0; + + /** + * URL requested + * + * @var string + */ + public $url = ''; + + /** + * Previous requests (from redirects) + * + * @var array Array of Requests_Response objects + */ + public $history = array(); + + /** + * Cookies from the request + * + * @var Requests_Cookie_Jar Array-like object representing a cookie jar + */ + public $cookies = array(); + + /** + * Is the response a redirect? + * + * @return boolean True if redirect (3xx status), false if not. + */ + public function is_redirect() { + $code = $this->status_code; + return in_array($code, array(300, 301, 302, 303, 307)) || $code > 307 && $code < 400; + } + + /** + * Throws an exception if the request was not successful + * + * @throws Requests_Exception If `$allow_redirects` is false, and code is 3xx (`response.no_redirects`) + * @throws Requests_Exception_HTTP On non-successful status code. Exception class corresponds to code (e.g. {@see Requests_Exception_HTTP_404}) + * @param boolean $allow_redirects Set to false to throw on a 3xx as well + */ + public function throw_for_status($allow_redirects = true) { + if ($this->is_redirect()) { + if (!$allow_redirects) { + throw new Requests_Exception('Redirection not allowed', 'response.no_redirects', $this); + } + } + elseif (!$this->success) { + $exception = Requests_Exception_HTTP::get_class($this->status_code); + throw new $exception(null, $this); + } + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Response/Headers.php b/includes/vendor/rmccue/requests/library/Requests/Response/Headers.php new file mode 100644 index 0000000..cc6a208 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Response/Headers.php @@ -0,0 +1,98 @@ +data[$key])) { + return null; + } + + return $this->flatten($this->data[$key]); + } + + /** + * Set the given item + * + * @throws Requests_Exception On attempting to use dictionary as list (`invalidset`) + * + * @param string $key Item name + * @param string $value Item value + */ + public function offsetSet($key, $value) { + if ($key === null) { + throw new Requests_Exception('Object is a dictionary, not a list', 'invalidset'); + } + + $key = strtolower($key); + + if (!isset($this->data[$key])) { + $this->data[$key] = array(); + } + + $this->data[$key][] = $value; + } + + /** + * Get all values for a given header + * + * @param string $key + * @return array Header values + */ + public function getValues($key) { + $key = strtolower($key); + if (!isset($this->data[$key])) { + return null; + } + + return $this->data[$key]; + } + + /** + * Flattens a value into a string + * + * Converts an array into a string by imploding values with a comma, as per + * RFC2616's rules for folding headers. + * + * @param string|array $value Value to flatten + * @return string Flattened value + */ + public function flatten($value) { + if (is_array($value)) { + $value = implode(',', $value); + } + + return $value; + } + + /** + * Get an iterator for the data + * + * Converts the internal + * @return ArrayIterator + */ + public function getIterator() { + return new Requests_Utility_FilteredIterator($this->data, array($this, 'flatten')); + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/SSL.php b/includes/vendor/rmccue/requests/library/Requests/SSL.php new file mode 100644 index 0000000..2b03768 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/SSL.php @@ -0,0 +1,152 @@ +useragent = 'X';` + * + * @var array + */ + public $options = array(); + + /** + * Create a new session + * + * @param string|null $url Base URL for requests + * @param array $headers Default headers for requests + * @param array $data Default data for requests + * @param array $options Default options for requests + */ + public function __construct($url = null, $headers = array(), $data = array(), $options = array()) { + $this->url = $url; + $this->headers = $headers; + $this->data = $data; + $this->options = $options; + + if (empty($this->options['cookies'])) { + $this->options['cookies'] = new Requests_Cookie_Jar(); + } + } + + /** + * Get a property's value + * + * @param string $key Property key + * @return mixed|null Property value, null if none found + */ + public function __get($key) { + if (isset($this->options[$key])) { + return $this->options[$key]; + } + + return null; + } + + /** + * Set a property's value + * + * @param string $key Property key + * @param mixed $value Property value + */ + public function __set($key, $value) { + $this->options[$key] = $value; + } + + /** + * Remove a property's value + * + * @param string $key Property key + */ + public function __isset($key) { + return isset($this->options[$key]); + } + + /** + * Remove a property's value + * + * @param string $key Property key + */ + public function __unset($key) { + if (isset($this->options[$key])) { + unset($this->options[$key]); + } + } + + /**#@+ + * @see request() + * @param string $url + * @param array $headers + * @param array $options + * @return Requests_Response + */ + /** + * Send a GET request + */ + public function get($url, $headers = array(), $options = array()) { + return $this->request($url, $headers, null, Requests::GET, $options); + } + + /** + * Send a HEAD request + */ + public function head($url, $headers = array(), $options = array()) { + return $this->request($url, $headers, null, Requests::HEAD, $options); + } + + /** + * Send a DELETE request + */ + public function delete($url, $headers = array(), $options = array()) { + return $this->request($url, $headers, null, Requests::DELETE, $options); + } + /**#@-*/ + + /**#@+ + * @see request() + * @param string $url + * @param array $headers + * @param array $data + * @param array $options + * @return Requests_Response + */ + /** + * Send a POST request + */ + public function post($url, $headers = array(), $data = array(), $options = array()) { + return $this->request($url, $headers, $data, Requests::POST, $options); + } + + /** + * Send a PUT request + */ + public function put($url, $headers = array(), $data = array(), $options = array()) { + return $this->request($url, $headers, $data, Requests::PUT, $options); + } + + /** + * Send a PATCH request + * + * Note: Unlike {@see post} and {@see put}, `$headers` is required, as the + * specification recommends that should send an ETag + * + * @link https://tools.ietf.org/html/rfc5789 + */ + public function patch($url, $headers, $data = array(), $options = array()) { + return $this->request($url, $headers, $data, Requests::PATCH, $options); + } + /**#@-*/ + + /** + * Main interface for HTTP requests + * + * This method initiates a request and sends it via a transport before + * parsing. + * + * @see Requests::request() + * + * @throws Requests_Exception On invalid URLs (`nonhttp`) + * + * @param string $url URL to request + * @param array $headers Extra headers to send with the request + * @param array|null $data Data to send either as a query string for GET/HEAD requests, or in the body for POST requests + * @param string $type HTTP request type (use Requests constants) + * @param array $options Options for the request (see {@see Requests::request}) + * @return Requests_Response + */ + public function request($url, $headers = array(), $data = array(), $type = Requests::GET, $options = array()) { + $request = $this->merge_request(compact('url', 'headers', 'data', 'options')); + + return Requests::request($request['url'], $request['headers'], $request['data'], $type, $request['options']); + } + + /** + * Send multiple HTTP requests simultaneously + * + * @see Requests::request_multiple() + * + * @param array $requests Requests data (see {@see Requests::request_multiple}) + * @param array $options Global and default options (see {@see Requests::request}) + * @return array Responses (either Requests_Response or a Requests_Exception object) + */ + public function request_multiple($requests, $options = array()) { + foreach ($requests as $key => $request) { + $requests[$key] = $this->merge_request($request, false); + } + + $options = array_merge($this->options, $options); + + // Disallow forcing the type, as that's a per request setting + unset($options['type']); + + return Requests::request_multiple($requests, $options); + } + + /** + * Merge a request's data with the default data + * + * @param array $request Request data (same form as {@see request_multiple}) + * @param boolean $merge_options Should we merge options as well? + * @return array Request data + */ + protected function merge_request($request, $merge_options = true) { + if ($this->url !== null) { + $request['url'] = Requests_IRI::absolutize($this->url, $request['url']); + $request['url'] = $request['url']->uri; + } + + if (empty($request['headers'])) { + $request['headers'] = array(); + } + $request['headers'] = array_merge($this->headers, $request['headers']); + + if (empty($request['data'])) { + if (is_array($this->data)) { + $request['data'] = $this->data; + } + } + elseif (is_array($request['data']) && is_array($this->data)) { + $request['data'] = array_merge($this->data, $request['data']); + } + + if ($merge_options !== false) { + $request['options'] = array_merge($this->options, $request['options']); + + // Disallow forcing the type, as that's a per request setting + unset($request['options']['type']); + } + + return $request; + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Transport.php b/includes/vendor/rmccue/requests/library/Requests/Transport.php new file mode 100644 index 0000000..7e4a262 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Transport.php @@ -0,0 +1,41 @@ +version = $curl['version_number']; + $this->handle = curl_init(); + + curl_setopt($this->handle, CURLOPT_HEADER, false); + curl_setopt($this->handle, CURLOPT_RETURNTRANSFER, 1); + if ($this->version >= self::CURL_7_10_5) { + curl_setopt($this->handle, CURLOPT_ENCODING, ''); + } + if (defined('CURLOPT_PROTOCOLS')) { + curl_setopt($this->handle, CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + } + if (defined('CURLOPT_REDIR_PROTOCOLS')) { + curl_setopt($this->handle, CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + } + } + + /** + * Destructor + */ + public function __destruct() { + if (is_resource($this->handle)) { + curl_close($this->handle); + } + } + + /** + * Perform a request + * + * @throws Requests_Exception On a cURL error (`curlerror`) + * + * @param string $url URL to request + * @param array $headers Associative array of request headers + * @param string|array $data Data to send either as the POST body, or as parameters in the URL for a GET/HEAD + * @param array $options Request options, see {@see Requests::response()} for documentation + * @return string Raw HTTP result + */ + public function request($url, $headers = array(), $data = array(), $options = array()) { + $this->hooks = $options['hooks']; + + $this->setup_handle($url, $headers, $data, $options); + + $options['hooks']->dispatch('curl.before_send', array(&$this->handle)); + + if ($options['filename'] !== false) { + $this->stream_handle = fopen($options['filename'], 'wb'); + } + + $this->response_data = ''; + $this->response_bytes = 0; + $this->response_byte_limit = false; + if ($options['max_bytes'] !== false) { + $this->response_byte_limit = $options['max_bytes']; + } + + if (isset($options['verify'])) { + if ($options['verify'] === false) { + curl_setopt($this->handle, CURLOPT_SSL_VERIFYHOST, 0); + curl_setopt($this->handle, CURLOPT_SSL_VERIFYPEER, 0); + } + elseif (is_string($options['verify'])) { + curl_setopt($this->handle, CURLOPT_CAINFO, $options['verify']); + } + } + + if (isset($options['verifyname']) && $options['verifyname'] === false) { + curl_setopt($this->handle, CURLOPT_SSL_VERIFYHOST, 0); + } + + curl_exec($this->handle); + $response = $this->response_data; + + $options['hooks']->dispatch('curl.after_send', array()); + + if (curl_errno($this->handle) === 23 || curl_errno($this->handle) === 61) { + // Reset encoding and try again + curl_setopt($this->handle, CURLOPT_ENCODING, 'none'); + + $this->response_data = ''; + $this->response_bytes = 0; + curl_exec($this->handle); + $response = $this->response_data; + } + + $this->process_response($response, $options); + + // Need to remove the $this reference from the curl handle. + // Otherwise Requests_Transport_cURL wont be garbage collected and the curl_close() will never be called. + curl_setopt($this->handle, CURLOPT_HEADERFUNCTION, null); + curl_setopt($this->handle, CURLOPT_WRITEFUNCTION, null); + + return $this->headers; + } + + /** + * Send multiple requests simultaneously + * + * @param array $requests Request data + * @param array $options Global options + * @return array Array of Requests_Response objects (may contain Requests_Exception or string responses as well) + */ + public function request_multiple($requests, $options) { + // If you're not requesting, we can't get any responses ¯\_(ツ)_/¯ + if (empty($requests)) { + return array(); + } + + $multihandle = curl_multi_init(); + $subrequests = array(); + $subhandles = array(); + + $class = get_class($this); + foreach ($requests as $id => $request) { + $subrequests[$id] = new $class(); + $subhandles[$id] = $subrequests[$id]->get_subrequest_handle($request['url'], $request['headers'], $request['data'], $request['options']); + $request['options']['hooks']->dispatch('curl.before_multi_add', array(&$subhandles[$id])); + curl_multi_add_handle($multihandle, $subhandles[$id]); + } + + $completed = 0; + $responses = array(); + + $request['options']['hooks']->dispatch('curl.before_multi_exec', array(&$multihandle)); + + do { + $active = false; + + do { + $status = curl_multi_exec($multihandle, $active); + } + while ($status === CURLM_CALL_MULTI_PERFORM); + + $to_process = array(); + + // Read the information as needed + while ($done = curl_multi_info_read($multihandle)) { + $key = array_search($done['handle'], $subhandles, true); + if (!isset($to_process[$key])) { + $to_process[$key] = $done; + } + } + + // Parse the finished requests before we start getting the new ones + foreach ($to_process as $key => $done) { + $options = $requests[$key]['options']; + if (CURLE_OK !== $done['result']) { + //get error string for handle. + $reason = curl_error($done['handle']); + $exception = new Requests_Exception_Transport_cURL( + $reason, + Requests_Exception_Transport_cURL::EASY, + $done['handle'], + $done['result'] + ); + $responses[$key] = $exception; + $options['hooks']->dispatch('transport.internal.parse_error', array(&$responses[$key], $requests[$key])); + } + else { + $responses[$key] = $subrequests[$key]->process_response($subrequests[$key]->response_data, $options); + + $options['hooks']->dispatch('transport.internal.parse_response', array(&$responses[$key], $requests[$key])); + } + + curl_multi_remove_handle($multihandle, $done['handle']); + curl_close($done['handle']); + + if (!is_string($responses[$key])) { + $options['hooks']->dispatch('multiple.request.complete', array(&$responses[$key], $key)); + } + $completed++; + } + } + while ($active || $completed < count($subrequests)); + + $request['options']['hooks']->dispatch('curl.after_multi_exec', array(&$multihandle)); + + curl_multi_close($multihandle); + + return $responses; + } + + /** + * Get the cURL handle for use in a multi-request + * + * @param string $url URL to request + * @param array $headers Associative array of request headers + * @param string|array $data Data to send either as the POST body, or as parameters in the URL for a GET/HEAD + * @param array $options Request options, see {@see Requests::response()} for documentation + * @return resource Subrequest's cURL handle + */ + public function &get_subrequest_handle($url, $headers, $data, $options) { + $this->setup_handle($url, $headers, $data, $options); + + if ($options['filename'] !== false) { + $this->stream_handle = fopen($options['filename'], 'wb'); + } + + $this->response_data = ''; + $this->response_bytes = 0; + $this->response_byte_limit = false; + if ($options['max_bytes'] !== false) { + $this->response_byte_limit = $options['max_bytes']; + } + $this->hooks = $options['hooks']; + + return $this->handle; + } + + /** + * Setup the cURL handle for the given data + * + * @param string $url URL to request + * @param array $headers Associative array of request headers + * @param string|array $data Data to send either as the POST body, or as parameters in the URL for a GET/HEAD + * @param array $options Request options, see {@see Requests::response()} for documentation + */ + protected function setup_handle($url, $headers, $data, $options) { + $options['hooks']->dispatch('curl.before_request', array(&$this->handle)); + + // Force closing the connection for old versions of cURL (<7.22). + if ( ! isset( $headers['Connection'] ) ) { + $headers['Connection'] = 'close'; + } + + $headers = Requests::flatten($headers); + + if (!empty($data)) { + $data_format = $options['data_format']; + + if ($data_format === 'query') { + $url = self::format_get($url, $data); + $data = ''; + } + elseif (!is_string($data)) { + $data = http_build_query($data, null, '&'); + } + } + + switch ($options['type']) { + case Requests::POST: + curl_setopt($this->handle, CURLOPT_POST, true); + curl_setopt($this->handle, CURLOPT_POSTFIELDS, $data); + break; + case Requests::HEAD: + curl_setopt($this->handle, CURLOPT_CUSTOMREQUEST, $options['type']); + curl_setopt($this->handle, CURLOPT_NOBODY, true); + break; + case Requests::TRACE: + curl_setopt($this->handle, CURLOPT_CUSTOMREQUEST, $options['type']); + break; + case Requests::PATCH: + case Requests::PUT: + case Requests::DELETE: + case Requests::OPTIONS: + default: + curl_setopt($this->handle, CURLOPT_CUSTOMREQUEST, $options['type']); + if (!empty($data)) { + curl_setopt($this->handle, CURLOPT_POSTFIELDS, $data); + } + } + + // cURL requires a minimum timeout of 1 second when using the system + // DNS resolver, as it uses `alarm()`, which is second resolution only. + // There's no way to detect which DNS resolver is being used from our + // end, so we need to round up regardless of the supplied timeout. + // + // https://github.com/curl/curl/blob/4f45240bc84a9aa648c8f7243be7b79e9f9323a5/lib/hostip.c#L606-L609 + $timeout = max($options['timeout'], 1); + + if (is_int($timeout) || $this->version < self::CURL_7_16_2) { + curl_setopt($this->handle, CURLOPT_TIMEOUT, ceil($timeout)); + } + else { + curl_setopt($this->handle, CURLOPT_TIMEOUT_MS, round($timeout * 1000)); + } + + if (is_int($options['connect_timeout']) || $this->version < self::CURL_7_16_2) { + curl_setopt($this->handle, CURLOPT_CONNECTTIMEOUT, ceil($options['connect_timeout'])); + } + else { + curl_setopt($this->handle, CURLOPT_CONNECTTIMEOUT_MS, round($options['connect_timeout'] * 1000)); + } + curl_setopt($this->handle, CURLOPT_URL, $url); + curl_setopt($this->handle, CURLOPT_REFERER, $url); + curl_setopt($this->handle, CURLOPT_USERAGENT, $options['useragent']); + if (!empty($headers)) { + curl_setopt($this->handle, CURLOPT_HTTPHEADER, $headers); + } + if ($options['protocol_version'] === 1.1) { + curl_setopt($this->handle, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); + } + else { + curl_setopt($this->handle, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); + } + + if (true === $options['blocking']) { + curl_setopt($this->handle, CURLOPT_HEADERFUNCTION, array(&$this, 'stream_headers')); + curl_setopt($this->handle, CURLOPT_WRITEFUNCTION, array(&$this, 'stream_body')); + curl_setopt($this->handle, CURLOPT_BUFFERSIZE, Requests::BUFFER_SIZE); + } + } + + /** + * Process a response + * + * @param string $response Response data from the body + * @param array $options Request options + * @return string HTTP response data including headers + */ + public function process_response($response, $options) { + if ($options['blocking'] === false) { + $fake_headers = ''; + $options['hooks']->dispatch('curl.after_request', array(&$fake_headers)); + return false; + } + if ($options['filename'] !== false) { + fclose($this->stream_handle); + $this->headers = trim($this->headers); + } + else { + $this->headers .= $response; + } + + if (curl_errno($this->handle)) { + $error = sprintf( + 'cURL error %s: %s', + curl_errno($this->handle), + curl_error($this->handle) + ); + throw new Requests_Exception($error, 'curlerror', $this->handle); + } + $this->info = curl_getinfo($this->handle); + + $options['hooks']->dispatch('curl.after_request', array(&$this->headers, &$this->info)); + return $this->headers; + } + + /** + * Collect the headers as they are received + * + * @param resource $handle cURL resource + * @param string $headers Header string + * @return integer Length of provided header + */ + public function stream_headers($handle, $headers) { + // Why do we do this? cURL will send both the final response and any + // interim responses, such as a 100 Continue. We don't need that. + // (We may want to keep this somewhere just in case) + if ($this->done_headers) { + $this->headers = ''; + $this->done_headers = false; + } + $this->headers .= $headers; + + if ($headers === "\r\n") { + $this->done_headers = true; + } + return strlen($headers); + } + + /** + * Collect data as it's received + * + * @since 1.6.1 + * + * @param resource $handle cURL resource + * @param string $data Body data + * @return integer Length of provided data + */ + public function stream_body($handle, $data) { + $this->hooks->dispatch('request.progress', array($data, $this->response_bytes, $this->response_byte_limit)); + $data_length = strlen($data); + + // Are we limiting the response size? + if ($this->response_byte_limit) { + if ($this->response_bytes === $this->response_byte_limit) { + // Already at maximum, move on + return $data_length; + } + + if (($this->response_bytes + $data_length) > $this->response_byte_limit) { + // Limit the length + $limited_length = ($this->response_byte_limit - $this->response_bytes); + $data = substr($data, 0, $limited_length); + } + } + + if ($this->stream_handle) { + fwrite($this->stream_handle, $data); + } + else { + $this->response_data .= $data; + } + + $this->response_bytes += strlen($data); + return $data_length; + } + + /** + * Format a URL given GET data + * + * @param string $url + * @param array|object $data Data to build query using, see {@see https://secure.php.net/http_build_query} + * @return string URL with data + */ + protected static function format_get($url, $data) { + if (!empty($data)) { + $url_parts = parse_url($url); + if (empty($url_parts['query'])) { + $query = $url_parts['query'] = ''; + } + else { + $query = $url_parts['query']; + } + + $query .= '&' . http_build_query($data, null, '&'); + $query = trim($query, '&'); + + if (empty($url_parts['query'])) { + $url .= '?' . $query; + } + else { + $url = str_replace($url_parts['query'], $query, $url); + } + } + return $url; + } + + /** + * Whether this transport is valid + * + * @codeCoverageIgnore + * @return boolean True if the transport is valid, false otherwise. + */ + public static function test($capabilities = array()) { + if (!function_exists('curl_init') || !function_exists('curl_exec')) { + return false; + } + + // If needed, check that our installed curl version supports SSL + if (isset($capabilities['ssl']) && $capabilities['ssl']) { + $curl_version = curl_version(); + if (!(CURL_VERSION_SSL & $curl_version['features'])) { + return false; + } + } + + return true; + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Transport/cacert.pem b/includes/vendor/rmccue/requests/library/Requests/Transport/cacert.pem new file mode 100644 index 0000000..56ece1a --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Transport/cacert.pem @@ -0,0 +1,3554 @@ +## +## ca-bundle.crt -- Bundle of CA Root Certificates +## +## Certificate data from Mozilla as of: Sat Dec 29 20:03:40 2012 +## +## This is a bundle of X.509 certificates of public Certificate Authorities +## (CA). These were automatically extracted from Mozilla's root certificates +## file (certdata.txt). This file can be found in the mozilla source tree: +## http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1 +## +## It contains the certificates in PEM format and therefore +## can be directly used with curl / libcurl / php_curl, or with +## an Apache+mod_ssl webserver for SSL client authentication. +## Just configure this file as the SSLCACertificateFile. +## + +# @(#) $RCSfile: certdata.txt,v $ $Revision: 1.87 $ $Date: 2012/12/29 16:32:45 $ + +EE Certification Centre Root CA +=============================== +-----BEGIN CERTIFICATE----- +MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG +EwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEoMCYGA1UEAwwfRUUgQ2Vy +dGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIw +MTAxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlB +UyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy +ZSBSb290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEBAQUAA4IB +DwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUyeuuOF0+W2Ap7kaJjbMeM +TC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvObntl8jixwKIy72KyaOBhU8E2lf/slLo2 +rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwWFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw +93X2PaRka9ZP585ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN +P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/zQas8fElyalL1BSZ +MEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEF +BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEFBQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+Rj +xY6hUFaTlrg4wCQiZrxTFGGVv9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqM +lIpPnTX/dqQGE5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u +uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIWiAYLtqZLICjU +3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8m92kMfM +dcGWxZ0= +-----END CERTIFICATE----- + +GTE CyberTrust Global Root +========================== +-----BEGIN CERTIFICATE----- +MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgwFgYDVQQKEw9HVEUg +Q29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRydXN0IFNvbHV0aW9ucywgSW5jLjEjMCEG +A1UEAxMaR1RFIEN5YmVyVHJ1c3QgR2xvYmFsIFJvb3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEz +MjM1OTAwWjB1MQswCQYDVQQGEwJVUzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYDVQQL +Ex5HVEUgQ3liZXJUcnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMTGkdURSBDeWJlclRydXN0 +IEdsb2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVD6C28FCc6HrHiM3dFw4u +sJTQGz0O9pTAipTHBsiQl8i4ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTSr41tiGeA5u2ylc9yMcql +HHK6XALnZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X404Wqk2kmhXBIgD8SFcd5tB8FLztimQID +AQABMA0GCSqGSIb3DQEBBAUAA4GBAG3rGwnpXtlR22ciYaQqPEh346B8pt5zohQDhT37qw4wxYMW +M4ETCJ57NE7fQMh017l93PR2VX2bY1QY6fDq81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OF +NMQkpw0PlZPvy5TYnh+dXIVtx6quTx8itc2VrbqnzPmrC3p/ +-----END CERTIFICATE----- + +Thawte Server CA +================ +-----BEGIN CERTIFICATE----- +MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT +DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3Vs +dGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UE +AxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5j +b20wHhcNOTYwODAxMDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNV +BAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29u +c3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcG +A1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0 +ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl +/Kj0R1HahbUgdJSGHg91yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg7 +1CcEJRCXL+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGjEzAR +MA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG7oWDTSEwjsrZqG9J +GubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6eQNuozDJ0uW8NxuOzRAvZim+aKZuZ +GCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZqdq5snUb9kLy78fyGPmJvKP/iiMucEc= +-----END CERTIFICATE----- + +Thawte Premium Server CA +======================== +-----BEGIN CERTIFICATE----- +MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkExFTATBgNVBAgT +DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3Vs +dGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UE +AxMYVGhhd3RlIFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZl +ckB0aGF3dGUuY29tMB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYT +AlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsGA1UEChMU +VGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2 +aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNlcnZlciBDQTEoMCYGCSqGSIb3DQEJARYZ +cHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2 +aovXwlue2oFBYo847kkEVdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIh +Udib0GfQug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMRuHM/ +qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQQFAAOBgQAm +SCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUIhfzJATj/Tb7yFkJD57taRvvBxhEf +8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JMpAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7t +UCemDaYj+bvLpgcUQg== +-----END CERTIFICATE----- + +Equifax Secure CA +================= +-----BEGIN CERTIFICATE----- +MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJVUzEQMA4GA1UE +ChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5 +MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoT +B0VxdWlmYXgxLTArBgNVBAsTJEVxdWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCB +nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPR +fM6fBeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+AcJkVV5MW +8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kCAwEAAaOCAQkwggEFMHAG +A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UE +CxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoG +A1UdEAQTMBGBDzIwMTgwODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvS +spXXR9gjIBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQFMAMB +Af8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GBAFjOKer89961 +zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y7qj/WsjTVbJmcVfewCHrPSqnI0kB +BIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee95 +70+sB3c4 +-----END CERTIFICATE----- + +Digital Signature Trust Co. Global CA 1 +======================================= +-----BEGIN CERTIFICATE----- +MIIDKTCCApKgAwIBAgIENnAVljANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJVUzEkMCIGA1UE +ChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQLEwhEU1RDQSBFMTAeFw05ODEy +MTAxODEwMjNaFw0xODEyMTAxODQwMjNaMEYxCzAJBgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFs +IFNpZ25hdHVyZSBUcnVzdCBDby4xETAPBgNVBAsTCERTVENBIEUxMIGdMA0GCSqGSIb3DQEBAQUA +A4GLADCBhwKBgQCgbIGpzzQeJN3+hijM3oMv+V7UQtLodGBmE5gGHKlREmlvMVW5SXIACH7TpWJE +NySZj9mDSI+ZbZUTu0M7LklOiDfBu1h//uG9+LthzfNHwJmm8fOR6Hh8AMthyUQncWlVSn5JTe2i +o74CTADKAqjuAQIxZA9SLRN0dja1erQtcQIBA6OCASQwggEgMBEGCWCGSAGG+EIBAQQEAwIABzBo +BgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMxJDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0 +dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgRTExDTALBgNVBAMTBENSTDEwKwYDVR0QBCQw +IoAPMTk5ODEyMTAxODEwMjNagQ8yMDE4MTIxMDE4MTAyM1owCwYDVR0PBAQDAgEGMB8GA1UdIwQY +MBaAFGp5fpFpRhgTCgJ3pVlbYJglDqL4MB0GA1UdDgQWBBRqeX6RaUYYEwoCd6VZW2CYJQ6i+DAM +BgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4GB +ACIS2Hod3IEGtgllsofIH160L+nEHvI8wbsEkBFKg05+k7lNQseSJqBcNJo4cvj9axY+IO6CizEq +kzaFI4iKPANo08kJD038bKTaKHKTDomAsH3+gG9lbRgzl4vCa4nuYD3Im+9/KzJic5PLPON74nZ4 +RbyhkwS7hp86W0N6w4pl +-----END CERTIFICATE----- + +Digital Signature Trust Co. Global CA 3 +======================================= +-----BEGIN CERTIFICATE----- +MIIDKTCCApKgAwIBAgIENm7TzjANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJVUzEkMCIGA1UE +ChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQLEwhEU1RDQSBFMjAeFw05ODEy +MDkxOTE3MjZaFw0xODEyMDkxOTQ3MjZaMEYxCzAJBgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFs +IFNpZ25hdHVyZSBUcnVzdCBDby4xETAPBgNVBAsTCERTVENBIEUyMIGdMA0GCSqGSIb3DQEBAQUA +A4GLADCBhwKBgQC/k48Xku8zExjrEH9OFr//Bo8qhbxe+SSmJIi2A7fBw18DW9Fvrn5C6mYjuGOD +VvsoLeE4i7TuqAHhzhy2iCoiRoX7n6dwqUcUP87eZfCocfdPJmyMvMa1795JJ/9IKn3oTQPMx7JS +xhcxEzu1TdvIxPbDDyQq2gyd55FbgM2UnQIBA6OCASQwggEgMBEGCWCGSAGG+EIBAQQEAwIABzBo +BgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMxJDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0 +dXJlIFRydXN0IENvLjERMA8GA1UECxMIRFNUQ0EgRTIxDTALBgNVBAMTBENSTDEwKwYDVR0QBCQw +IoAPMTk5ODEyMDkxOTE3MjZagQ8yMDE4MTIwOTE5MTcyNlowCwYDVR0PBAQDAgEGMB8GA1UdIwQY +MBaAFB6CTShlgDzJQW6sNS5ay97u+DlbMB0GA1UdDgQWBBQegk0oZYA8yUFurDUuWsve7vg5WzAM +BgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4GB +AEeNg61i8tuwnkUiBbmi1gMOOHLnnvx75pO2mqWilMg0HZHRxdf0CiUPPXiBng+xZ8SQTGPdXqfi +up/1902lMXucKS1M/mQ+7LZT/uqb7YLbdHVLB3luHtgZg3Pe9T7Qtd7nS2h9Qy4qIOF+oHhEngj1 +mPnHfxsb1gYgAlihw6ID +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority +======================================================= +-----BEGIN CERTIFICATE----- +MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkGA1UEBhMCVVMx +FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVow +XzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAz +IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhEBarsAx94 +f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/isI19wKTakyYbnsZogy1Ol +hec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0GCSqGSIb3DQEBAgUAA4GBALtMEivPLCYA +TxQT3ab7/AoRhIzzKBxnki98tsX63/Dolbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59Ah +WM1pF+NEHJwZRDmJXNycAA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2Omuf +Tqj/ZA1k +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority - G2 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln +biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz +dCBOZXR3b3JrMB4XDTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVT +MRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2ln +biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVz +dCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCO +FoUgRm1HP9SFIIThbbP4pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71 +lSk8UOg013gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwIDAQAB +MA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSkU01UbSuvDV1Ai2TT +1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7iF6YM40AIOw7n60RzKprxaZLvcRTD +Oaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpYoJ2daZH9 +-----END CERTIFICATE----- + +GlobalSign Root CA +================== +-----BEGIN CERTIFICATE----- +MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkGA1UEBhMCQkUx +GTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jvb3QgQ0ExGzAZBgNVBAMTEkds +b2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAwMDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNV +BAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYD +VQQDExJHbG9iYWxTaWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDa +DuaZjc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavpxy0Sy6sc +THAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp1Wrjsok6Vjk4bwY8iGlb +Kk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdGsnUOhugZitVtbNV4FpWi6cgKOOvyJBNP +c1STE4U6G7weNLWLBYy5d4ux2x8gkasJU26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrX +gzT/LCrBbBlDSgeF59N89iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV +HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0BAQUF +AAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOzyj1hTdNGCbM+w6Dj +Y1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE38NflNUVyRRBnMRddWQVDf9VMOyG +j/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymPAbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhH +hm4qxFYxldBniYUr+WymXUadDKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveC +X4XSQRjbgbMEHMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== +-----END CERTIFICATE----- + +GlobalSign Root CA - R2 +======================= +-----BEGIN CERTIFICATE----- +MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4GA1UECxMXR2xv +YmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh +bFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxT +aWduIFJvb3QgQ0EgLSBSMjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln +bjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6 +ErPLv4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8eoLrvozp +s6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklqtTleiDTsvHgMCJiEbKjN +S7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzdC9XZzPnqJworc5HGnRusyMvo4KD0L5CL +TfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pazq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6C +ygPCm48CAwEAAaOBnDCBmTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E +FgQUm+IHV2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5nbG9i +YWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG3lm0mi3f3BmGLjAN +BgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4GsJ0/WwbgcQ3izDJr86iw8bmEbTUsp +9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu +01yiPqFbQfXf5WRDLenVOavSot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG7 +9G+dwfCMNYxdAfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 +TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== +-----END CERTIFICATE----- + +ValiCert Class 1 VA +=================== +-----BEGIN CERTIFICATE----- +MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp +b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs +YXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh +bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNTIy +MjM0OFoXDTE5MDYyNTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0 +d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEg +UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0 +LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9YLqdUHAZu9OqNSLwxlBfw8068srg1knaw0KWlAdcAAxIi +GQj4/xEjm84H9b9pGib+TunRf50sQB1ZaG6m+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCm +DuJWBQ8YTfwggtFzVXSNdnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0LBwG +lN+VYH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLWI8sogTLDAHkY7FkX +icnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPwnXS3qT6gpf+2SQMT2iLM7XGCK5nP +Orf1LXLI +-----END CERTIFICATE----- + +ValiCert Class 2 VA +=================== +-----BEGIN CERTIFICATE----- +MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp +b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs +YXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh +bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAw +MTk1NFoXDTE5MDYyNjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0 +d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIg +UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0 +LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDOOnHK5avIWZJV16vYdA757tn2VUdZZUcOBVXc65g2PFxTXdMwzzjsvUGJ7SVC +CSRrCl6zfN1SLUzm1NZ9WlmpZdRJEy0kTRxQb7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7Rf +ZHM047QSv4dk+NoS/zcnwbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9vUJSZ +SWI4OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTuIYEZoDJJKPTEjlbV +UjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwCW/POuZ6lcg5Ktz885hZo+L7tdEy8 +W9ViH0Pd +-----END CERTIFICATE----- + +RSA Root Certificate 1 +====================== +-----BEGIN CERTIFICATE----- +MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp +b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs +YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh +bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAw +MjIzM1oXDTE5MDYyNjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0 +d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMg +UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0 +LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDjmFGWHOjVsQaBalfDcnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td +3zZxFJmP3MKS8edgkpfs2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89H +BFx1cQqYJJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliEZwgs +3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJn0WuPIqpsHEzXcjF +V9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/APhmcGcwTTYJBtYze4D1gCCAPRX5r +on+jjBXu +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy +dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGljIFByaW1hcnkg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAMu6nFL8eB8aHm8bN3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1 +EUGO+i2tKmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGukxUc +cLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBmCC+Vk7+qRy+oRpfw +EuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJXwzw3sJ2zq/3avL6QaaiMxTJ5Xpj +055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWuimi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA +ERSWwauSCPc/L8my/uRan2Te2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5f +j267Cz3qWhMeDGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC +/Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565pF4ErWjfJXir0 +xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGtTxzhT5yvDwyd93gN2PQ1VoDa +t20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== +-----END CERTIFICATE----- + +Verisign Class 4 Public Primary Certification Authority - G3 +============================================================ +-----BEGIN CERTIFICATE----- +MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQsw +CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRy +dXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDQgUHVibGljIFByaW1hcnkg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAK3LpRFpxlmr8Y+1GQ9Wzsy1HyDkniYlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaS +tBO3IFsJ+mGuqPKljYXCKtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0GbdU6LM +8BDcVHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLmNxdLMEYH5IBtptiW +Lugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XYufTsgsbSPZUd5cBPhMnZo0QoBmrX +Razwa2rvTl/4EYIeOGM0ZlDUPpNz+jDDZq3/ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA +j/ola09b5KROJ1WrIhVZPMq1CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXtt +mhwwjIDLk5Mqg6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csKvE+MW8VLADsfKoKm +fjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluPQSjA1egtTaRezarZ7c7c2NU8Qh0XwRJd +RTjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6PDQpLv1U70qzlmwr25/bLvSHgCwIe34QWKCudiyxLtG +UPMxxY8BqHTr9Xgn2uf3ZkPznoM+IKrDNWCRzg== +-----END CERTIFICATE----- + +Entrust.net Secure Server CA +============================ +-----BEGIN CERTIFICATE----- +MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMCVVMxFDASBgNV +BAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5uZXQvQ1BTIGluY29ycC4gYnkg +cmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRl +ZDE6MDgGA1UEAxMxRW50cnVzdC5uZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhv +cml0eTAeFw05OTA1MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIG +A1UEChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBi +eSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1p +dGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQ +aO2f55M28Qpku0f1BBc/I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5 +gXpa0zf3wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OCAdcw +ggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHboIHYpIHVMIHSMQsw +CQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5l +dC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF +bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENl +cnRpZmljYXRpb24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu +dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0MFqBDzIwMTkw +NTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8BdiE1U9s/8KAGv7UISX8+1i0Bow +HQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAaMAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EA +BAwwChsEVjQuMAMCBJAwDQYJKoZIhvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyN +Ewr75Ji174z4xRAN95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9 +n9cd2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= +-----END CERTIFICATE----- + +Entrust.net Premium 2048 Secure Server CA +========================================= +-----BEGIN CERTIFICATE----- +MIIEXDCCA0SgAwIBAgIEOGO5ZjANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChMLRW50cnVzdC5u +ZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxp +bWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNV +BAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQx +NzUwNTFaFw0xOTEyMjQxODIwNTFaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3 +d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTEl +MCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5u +ZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEArU1LqRKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOL +Gp18EzoOH1u3Hs/lJBQesYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSr +hRSGlVuXMlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVTXTzW +nLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/HoZdenoVve8AjhUi +VBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH4QIDAQABo3QwcjARBglghkgBhvhC +AQEEBAMCAAcwHwYDVR0jBBgwFoAUVeSB0RGAvtiJuQijMfmhJAkWuXAwHQYDVR0OBBYEFFXkgdER +gL7YibkIozH5oSQJFrlwMB0GCSqGSIb2fQdBAAQQMA4bCFY1LjA6NC4wAwIEkDANBgkqhkiG9w0B +AQUFAAOCAQEAWUesIYSKF8mciVMeuoCFGsY8Tj6xnLZ8xpJdGGQC49MGCBFhfGPjK50xA3B20qMo +oPS7mmNz7W3lKtvtFKkrxjYR0CvrB4ul2p5cGZ1WEvVUKcgF7bISKo30Axv/55IQh7A6tcOdBTcS +o8f0FbnVpDkWm1M6I5HxqIKiaohowXkCIryqptau37AUX7iH0N18f3v/rxzP5tsHrV7bhZ3QKw0z +2wTR5klAEyt2+z7pnIkPFc4YsIV4IU9rTw76NmfNB/L/CNDi3tm/Kq+4h4YhPATKt5Rof8886ZjX +OP/swNlQ8C5LWK5Gb9Auw2DaclVyvUxFnmG6v4SBkgPR0ml8xQ== +-----END CERTIFICATE----- + +Baltimore CyberTrust Root +========================= +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJRTESMBAGA1UE +ChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYDVQQDExlCYWx0aW1vcmUgQ3li +ZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoXDTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMC +SUUxEjAQBgNVBAoTCUJhbHRpbW9yZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFs +dGltb3JlIEN5YmVyVHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKME +uyKrmD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjrIZ3AQSsB +UnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeKmpYcqWe4PwzV9/lSEy/C +G9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSuXmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9 +XbIGevOF6uvUA65ehD5f/xXtabz5OTZydc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjpr +l3RjM71oGDHweI12v/yejl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoI +VDaGezq1BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEB +BQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT929hkTI7gQCvlYpNRh +cL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3WgxjkzSswF07r51XgdIGn9w/xZchMB5 +hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsa +Y71k5h+3zvDyny67G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H +RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp +-----END CERTIFICATE----- + +Equifax Secure Global eBusiness CA +================================== +-----BEGIN CERTIFICATE----- +MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +RXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBTZWN1cmUgR2xvYmFsIGVCdXNp +bmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIwMDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMx +HDAaBgNVBAoTE0VxdWlmYXggU2VjdXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEds +b2JhbCBlQnVzaW5lc3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRV +PEnCUdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc58O/gGzN +qfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/o5brhTMhHD4ePmBudpxn +hcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAHMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0j +BBgwFoAUvqigdHJQa0S3ySPY+6j/s1draGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hs +MA0GCSqGSIb3DQEBBAUAA4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okEN +I7SS+RkAZ70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv8qIY +NMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV +-----END CERTIFICATE----- + +Equifax Secure eBusiness CA 1 +============================= +-----BEGIN CERTIFICATE----- +MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +RXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENB +LTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQwMDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UE +ChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNz +IENBLTEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ +1MRoRvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBuWqDZQu4a +IZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKwEnv+j6YDAgMBAAGjZjBk +MBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEp4MlIR21kW +Nl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRKeDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQF +AAOBgQB1W6ibAxHm6VZMzfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5 +lSE/9dR+WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN/Bf+ +KpYrtWKmpj29f5JZzVoqgrI3eQ== +-----END CERTIFICATE----- + +Equifax Secure eBusiness CA 2 +============================= +-----BEGIN CERTIFICATE----- +MIIDIDCCAomgAwIBAgIEN3DPtTANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJVUzEXMBUGA1UE +ChMORXF1aWZheCBTZWN1cmUxJjAkBgNVBAsTHUVxdWlmYXggU2VjdXJlIGVCdXNpbmVzcyBDQS0y +MB4XDTk5MDYyMzEyMTQ0NVoXDTE5MDYyMzEyMTQ0NVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoT +DkVxdWlmYXggU2VjdXJlMSYwJAYDVQQLEx1FcXVpZmF4IFNlY3VyZSBlQnVzaW5lc3MgQ0EtMjCB +nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA5Dk5kx5SBhsoNviyoynF7Y6yEb3+6+e0dMKP/wXn +2Z0GvxLIPw7y1tEkshHe0XMJitSxLJgJDR5QRrKDpkWNYmi7hRsgcDKqQM2mll/EcTc/BPO3QSQ5 +BxoeLmFYoBIL5aXfxavqN3HMHMg3OrmXUqesxWoklE6ce8/AatbfIb0CAwEAAaOCAQkwggEFMHAG +A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORXF1aWZheCBTZWN1cmUx +JjAkBgNVBAsTHUVxdWlmYXggU2VjdXJlIGVCdXNpbmVzcyBDQS0yMQ0wCwYDVQQDEwRDUkwxMBoG +A1UdEAQTMBGBDzIwMTkwNjIzMTIxNDQ1WjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUUJ4L6q9e +uSBIplBqy/3YIHqngnYwHQYDVR0OBBYEFFCeC+qvXrkgSKZQasv92CB6p4J2MAwGA1UdEwQFMAMB +Af8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GBAAyGgq3oThr1 +jokn4jVYPSm0B482UJW/bsGe68SQsoWou7dC4A8HOd/7npCy0cE+U58DRLB+S/Rv5Hwf5+Kx5Lia +78O9zt4LMjTZ3ijtM2vE1Nc9ElirfQkty3D1E4qUoSek1nDFbZS1yX2doNLGCEnZZpum0/QL3MUm +V+GRMOrN +-----END CERTIFICATE----- + +AddTrust Low-Value Services Root +================================ +-----BEGIN CERTIFICATE----- +MIIEGDCCAwCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYDVQQDExhBZGRU +cnVzdCBDbGFzcyAxIENBIFJvb3QwHhcNMDAwNTMwMTAzODMxWhcNMjAwNTMwMTAzODMxWjBlMQsw +CQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBO +ZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQCWltQhSWDia+hBBwzexODcEyPNwTXH+9ZOEQpnXvUGW2ulCDtbKRY6 +54eyNAbFvAWlA3yCyykQruGIgb3WntP+LVbBFc7jJp0VLhD7Bo8wBN6ntGO0/7Gcrjyvd7ZWxbWr +oulpOj0OM3kyP3CCkplhbY0wCI9xP6ZIVxn4JdxLZlyldI+Yrsj5wAYi56xz36Uu+1LcsRVlIPo1 +Zmne3yzxbrww2ywkEtvrNTVokMsAsJchPXQhI2U0K7t4WaPW4XY5mqRJjox0r26kmqPZm9I4XJui +GMx1I4S+6+JNM3GOGvDC+Mcdoq0Dlyz4zyXG9rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8w +HQYDVR0OBBYEFJWxtPCUtr3H2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgNVHRMBAf8EBTAD +AQH/MIGPBgNVHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG+wa9J/RB7oWmkZzBlMQswCQYDVQQGEwJT +RTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEw +HwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBACxt +ZBsfzQ3duQH6lmM0MkhHma6X7f1yFqZzR1r0693p9db7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0Ph +iVYrqW9yTkkz43J8KiOavD7/KCrto/8cI7pDVwlnTUtiBi34/2ydYB7YHEt9tTEv2dB8Xfjea4MY +eDdXL+gzB2ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/TelOL/bscVjby/rK25Xa71SJlpz/+0WatC7xr +mYbvP33zGDLKe8bjq2RGlfgmadlVg3sslgf/WSxEo8bl6ancoWOAWiFeIc9TVPC6b4nbqKqVz4vj +ccweGyBECMB6tkD9xOQ14R0WHNC8K47Wcdk= +-----END CERTIFICATE----- + +AddTrust External Root +====================== +-----BEGIN CERTIFICATE----- +MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYD +VQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEw +NDgzOFowbzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRU +cnVzdCBFeHRlcm5hbCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0Eg +Um9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvtH7xsD821 ++iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9uMq/NzgtHj6RQa1wVsfw +Tz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzXmk6vBbOmcZSccbNQYArHE504B4YCqOmo +aSYYkKtMsE8jqzpPhNjfzp/haW+710LXa0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy +2xSoRcRdKn23tNbE7qzNE0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv7 +7+ldU9U0WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0P +BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jvf6xCZU7wO94CTL +VBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEmMCQGA1UECxMdQWRk +VHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsxIjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENB +IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZl +j7DYd7usQWxHYINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 +6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvCNr4TDea9Y355 +e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEXc4g/VhsxOBi0cQ+azcgOno4u +G+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5amnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= +-----END CERTIFICATE----- + +AddTrust Public Services Root +============================= +-----BEGIN CERTIFICATE----- +MIIEFTCCAv2gAwIBAgIBATANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSAwHgYDVQQDExdBZGRU +cnVzdCBQdWJsaWMgQ0EgUm9vdDAeFw0wMDA1MzAxMDQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxCzAJ +BgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5l +dHdvcmsxIDAeBgNVBAMTF0FkZFRydXN0IFB1YmxpYyBDQSBSb290MIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEA6Rowj4OIFMEg2Dybjxt+A3S72mnTRqX4jsIMEZBRpS9mVEBV6tsfSlbu +nyNu9DnLoblv8n75XYcmYZ4c+OLspoH4IcUkzBEMP9smcnrHAZcHF/nXGCwwfQ56HmIexkvA/X1i +d9NEHif2P0tEs7c42TkfYNVRknMDtABp4/MUTu7R3AnPdzRGULD4EfL+OHn3Bzn+UZKXC1sIXzSG +Aa2Il+tmzV7R/9x98oTaunet3IAIx6eH1lWfl2royBFkuucZKT8Rs3iQhCBSWxHveNCD9tVIkNAw +HM+A+WD+eeSI8t0A65RF62WUaUC6wNW0uLp9BBGo6zEFlpROWCGOn9Bg/QIDAQABo4HRMIHOMB0G +A1UdDgQWBBSBPjfYkrAfd59ctKtzquf2NGAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB +/zCBjgYDVR0jBIGGMIGDgBSBPjfYkrAfd59ctKtzquf2NGAv+qFopGYwZDELMAkGA1UEBhMCU0Ux +FDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRUcnVzdCBUVFAgTmV0d29yazEgMB4G +A1UEAxMXQWRkVHJ1c3QgUHVibGljIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBAAP3FUr4 +JNojVhaTdt02KLmuG7jD8WS6IBh4lSknVwW8fCr0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL ++YPoRNWyQSW/iHVv/xD8SlTQX/D67zZzfRs2RcYhbbQVuE7PnFylPVoAjgbjPGsye/Kf8Lb93/Ao +GEjwxrzQvzSAlsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bYGozH7ZxOmuASu7VqTITh4SINhwBk/ox9 +Yjllpu9CtoAlEmEBqCQTcAARJl/6NVDFSMwGR+gn2HCNX2TmoUQmXiLsks3/QppEIW1cxeMiHV9H +EufOX1362KqxMy3ZdvJOOjMMK7MtkAY= +-----END CERTIFICATE----- + +AddTrust Qualified Certificates Root +==================================== +-----BEGIN CERTIFICATE----- +MIIEHjCCAwagAwIBAgIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJTRTEUMBIGA1UEChML +QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSMwIQYDVQQDExpBZGRU +cnVzdCBRdWFsaWZpZWQgQ0EgUm9vdDAeFw0wMDA1MzAxMDQ0NTBaFw0yMDA1MzAxMDQ0NTBaMGcx +CzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQ +IE5ldHdvcmsxIzAhBgNVBAMTGkFkZFRydXN0IFF1YWxpZmllZCBDQSBSb290MIIBIjANBgkqhkiG +9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5B6a/twJWoekn0e+EV+vhDTbYjx5eLfpMLXsDBwqxBb/4Oxx +64r1EW7tTw2R0hIYLUkVAcKkIhPHEWT/IhKauY5cLwjPcWqzZwFZ8V1G87B4pfYOQnrjfxvM0PC3 +KP0q6p6zsLkEqv32x7SxuCqg+1jxGaBvcCV+PmlKfw8i2O+tCBGaKZnhqkRFmhJePp1tUvznoD1o +L/BLcHwTOK28FSXx1s6rosAx1i+f4P8UWfyEk9mHfExUE+uf0S0R+Bg6Ot4l2ffTQO2kBhLEO+GR +wVY18BTcZTYJbqukB8c10cIDMzZbdSZtQvESa0NvS3GU+jQd7RNuyoB/mC9suWXY6QIDAQABo4HU +MIHRMB0GA1UdDgQWBBQ5lYtii1zJ1IC6WA+XPxUIQ8yYpzALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/ +BAUwAwEB/zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ1IC6WA+XPxUIQ8yYp6FrpGkwZzELMAkGA1UE +BhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRUcnVzdCBUVFAgTmV0d29y +azEjMCEGA1UEAxMaQWRkVHJ1c3QgUXVhbGlmaWVkIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQAD +ggEBABmrder4i2VhlRO6aQTvhsoToMeqT2QbPxj2qC0sVY8FtzDqQmodwCVRLae/DLPt7wh/bDxG +GuoYQ992zPlmhpwsaPXpF/gxsxjE1kh9I0xowX67ARRvxdlu3rsEQmr49lx95dr6h+sNNVJn0J6X +dgWTP5XHAeZpVTh/EGGZyeNfpso+gmNIquIISD6q8rKFYqa0p9m9N5xotS1WfbC3P6CxB9bpT9ze +RXEwMn8bLgn5v1Kh7sKAPgZcLlVAwRv1cEWw3F369nJad9Jjzc9YiQBCYz95OdBEsIJuQRno3eDB +iFrRHnGTHyQwdOUeqN48Jzd/g66ed8/wMLH/S5noxqE= +-----END CERTIFICATE----- + +Entrust Root Certification Authority +==================================== +-----BEGIN CERTIFICATE----- +MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMCVVMxFjAUBgNV +BAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0Lm5ldC9DUFMgaXMgaW5jb3Jw +b3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMWKGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsG +A1UEAxMkRW50cnVzdCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0 +MloXDTI2MTEyNzIwNTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMu +MTkwNwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSByZWZlcmVu +Y2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNVBAMTJEVudHJ1c3QgUm9v +dCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ALaVtkNC+sZtKm9I35RMOVcF7sN5EUFoNu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYsz +A9u3g3s+IIRe7bJWKKf44LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOww +Cj0Yzfv9KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGIrb68 +j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi94DkZfs0Nw4pgHBN +rziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOBsDCBrTAOBgNVHQ8BAf8EBAMCAQYw +DwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAigA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1 +MzQyWjAfBgNVHSMEGDAWgBRokORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DH +hmak8fdLQ/uEvW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA +A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9tO1KzKtvn1ISM +Y/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6ZuaAGAT/3B+XxFNSRuzFVJ7yVTa +v52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTS +W3iDVuycNsMm4hH2Z0kdkquM++v/eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0 +tHuu2guQOHXvgR1m0vdXcDazv/wor3ElhVsT/h5/WrQ8 +-----END CERTIFICATE----- + +RSA Security 2048 v3 +==================== +-----BEGIN CERTIFICATE----- +MIIDYTCCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAAAAAjANBgkqhkiG9w0BAQUFADA6MRkwFwYDVQQK +ExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0EgU2VjdXJpdHkgMjA0OCBWMzAeFw0wMTAy +MjIyMDM5MjNaFw0yNjAyMjIyMDM5MjNaMDoxGTAXBgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAb +BgNVBAsTFFJTQSBTZWN1cml0eSAyMDQ4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC +AQEAt49VcdKA3XtpeafwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3y+Gc37RqtBaB4Y6lXIL5F4iSj7 +Jylg/9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AIb2E0S1PRsNO3Ng3OTsor8udGuorryGlwSMiuLgb +WhOHV4PR8CDn6E8jQrAApX2J6elhc5SYcSa8LWrg903w8bYqODGBDSnhAMFRD0xS+ARaqn1y07iH +KrtjEAMqs6FPDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU2PcYJk5qjEoAAVZkZR73QpXzDuvsf9/UP ++Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMNpuAWgXIszACwIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/ +MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBQHw1EwpKrpRa41JPr/JCwz0LGdjDAdBgNVHQ4E +FgQUB8NRMKSq6UWuNST6/yQsM9CxnYwwDQYJKoZIhvcNAQEFBQADggEBAF8+hnZuuDU8TjYcHnmY +v/3VEhF5Ug7uMYm83X/50cYVIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+LEN5/Zb5gEydxiKRz44Rj +0aRV4VCT5hsOedBnvEbIvz8XDZXmxpBp3ue0L96VfdASPz0+f00/FGj1EVDVwfSQpQgdMWD/YIwj +VAqv/qFuxdF6Kmh4zx6CCiC0H63lhbJqaHVOrSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGscGNz9395 +nzIlQnQFgCi/vcEkllgVsRch6YlL2weIZ/QVrXA+L02FO8K32/6YaCOJ4XQP3vTFhGMpG8zLB8kA +pKnXwiJPZ9d37CAFYd4= +-----END CERTIFICATE----- + +GeoTrust Global CA +================== +-----BEGIN CERTIFICATE----- +MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVTMRYwFAYDVQQK +Ew1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9iYWwgQ0EwHhcNMDIwNTIxMDQw +MDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j +LjEbMBkGA1UEAxMSR2VvVHJ1c3QgR2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEA2swYYzD99BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjo +BbdqfnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDviS2Aelet +8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU1XupGc1V3sjs0l44U+Vc +T4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+bw8HHa8sHo9gOeL6NlMTOdReJivbPagU +vTLrGAMoUgRx5aszPeE4uwc2hGKceeoWMPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTAD +AQH/MB0GA1UdDgQWBBTAephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVk +DBF9qn1luMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKInZ57Q +zxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfStQWVYrmm3ok9Nns4 +d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcFPseKUgzbFbS9bZvlxrFUaKnjaZC2 +mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Unhw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6p +XE0zX5IJL4hmXXeXxx12E6nV5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvm +Mw== +-----END CERTIFICATE----- + +GeoTrust Global CA 2 +==================== +-----BEGIN CERTIFICATE----- +MIIDZjCCAk6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDIwHhcNMDQwMzA0MDUw +MDAwWhcNMTkwMzA0MDUwMDAwWjBEMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5j +LjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFsIENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQDvPE1APRDfO1MA4Wf+lGAVPoWI8YkNkMgoI5kF6CsgncbzYEbYwbLVjDHZ3CB5JIG/ +NTL8Y2nbsSpr7iFY8gjpeMtvy/wWUsiRxP89c96xPqfCfWbB9X5SJBri1WeR0IIQ13hLTytCOb1k +LUCgsBDTOEhGiKEMuzozKmKY+wCdE1l/bztyqu6mD4b5BWHqZ38MN5aL5mkWRxHCJ1kDs6ZgwiFA +Vvqgx306E+PsV8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7S4wMcoKK+xfNAGw6EzywhIdLFnopsk/b +HdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwEB/wQF +MAMBAf8wHQYDVR0OBBYEFHE4NvICMVNHK266ZUapEBVYIAUJMB8GA1UdIwQYMBaAFHE4NvICMVNH +K266ZUapEBVYIAUJMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6tdEPx7 +srJerJsOflN4WT5CBP51o62sgU7XAotexC3IUnbHLB/8gTKY0UvGkpMzNTEv/NgdRN3ggX+d6Yvh +ZJFiCzkIjKx0nVnZellSlxG5FntvRdOW2TF9AjYPnDtuzywNA0ZF66D0f0hExghAzN4bcLUprbqL +OzRldRtxIR0sFAqwlpW41uryZfspuk/qkZN0abby/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf8i7MkC +x1YAzUm5s2x7UwQa4qjJqhIFI8LO57sEAszAR6LkxCkvW0VXiVHuPOtSCP8HNR6fNWpHSlaY0VqF +H4z1Ir+rzoPz4iIprn2DQKi6bA== +-----END CERTIFICATE----- + +GeoTrust Universal CA +===================== +-----BEGIN CERTIFICATE----- +MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVyc2FsIENBMB4XDTA0MDMwNDA1 +MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IElu +Yy4xHjAcBgNVBAMTFUdlb1RydXN0IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIP +ADCCAgoCggIBAKYVVaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9t +JPi8cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTTQjOgNB0e +RXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFhF7em6fgemdtzbvQKoiFs +7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2vc7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d +8Lsrlh/eezJS/R27tQahsiFepdaVaH/wmZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7V +qnJNk22CDtucvc+081xdVHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3Cga +Rr0BHdCXteGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZf9hB +Z3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfReBi9Fi1jUIxaS5BZu +KGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+nhutxx9z3SxPGWX9f5NAEC7S8O08 +ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0 +XG0D08DYj3rWMB8GA1UdIwQYMBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIB +hjANBgkqhkiG9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc +aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fXIwjhmF7DWgh2 +qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzynANXH/KttgCJwpQzgXQQpAvvL +oJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0zuzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsK +xr2EoyNB3tZ3b4XUhRxQ4K5RirqNPnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxF +KyDuSN/n3QmOGKjaQI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2 +DFKWkoRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9ER/frslK +xfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQtDF4JbAiXfKM9fJP/P6EU +p8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/SfuvmbJxPgWp6ZKy7PtXny3YuxadIwVyQD8vI +P/rmMuGNG2+k5o7Y+SlIis5z/iw= +-----END CERTIFICATE----- + +GeoTrust Universal CA 2 +======================= +-----BEGIN CERTIFICATE----- +MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMN +R2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwHhcNMDQwMzA0 +MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3Qg +SW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUA +A4ICDwAwggIKAoICAQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0 +DE81WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUGFF+3Qs17 +j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdqXbboW0W63MOhBW9Wjo8Q +JqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxLse4YuU6W3Nx2/zu+z18DwPw76L5GG//a +QMJS9/7jOvdqdzXQ2o3rXhhqMcceujwbKNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2 +WP0+GfPtDCapkzj4T8FdIgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP +20gaXT73y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRthAAn +ZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgocQIgfksILAAX/8sgC +SqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4Lt1ZrtmhN79UNdxzMk+MBB4zsslG +8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2 ++/CfXGJx7Tz0RzgQKzAfBgNVHSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8E +BAMCAYYwDQYJKoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z +dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQL1EuxBRa3ugZ +4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgrFg5fNuH8KrUwJM/gYwx7WBr+ +mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSoag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpq +A1Ihn0CoZ1Dy81of398j9tx4TuaYT1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpg +Y+RdM4kX2TGq2tbzGDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiP +pm8m1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJVOCiNUW7d +FGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH6aLcr34YEoP9VhdBLtUp +gn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwXQMAJKOSLakhT2+zNVVXxxvjpoixMptEm +X36vWkzaH6byHCx+rgIW0lbQL1dTR+iS +-----END CERTIFICATE----- + +America Online Root Certification Authority 1 +============================================= +-----BEGIN CERTIFICATE----- +MIIDpDCCAoygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +QW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBPbmxpbmUgUm9vdCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eSAxMB4XDTAyMDUyODA2MDAwMFoXDTM3MTExOTIwNDMwMFowYzELMAkG +A1UEBhMCVVMxHDAaBgNVBAoTE0FtZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2Eg +T25saW5lIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMTCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAKgv6KRpBgNHw+kqmP8ZonCaxlCyfqXfaE0bfA+2l2h9LaaLl+lkhsmj76CG +v2BlnEtUiMJIxUo5vxTjWVXlGbR0yLQFOVwWpeKVBeASrlmLojNoWBym1BW32J/X3HGrfpq/m44z +DyL9Hy7nBzbvYjnF3cu6JRQj3gzGPTzOggjmZj7aUTsWOqMFf6Dch9Wc/HKpoH145LcxVR5lu9Rh +sCFg7RAycsWSJR74kEoYeEfffjA3PlAb2xzTa5qGUwew76wGePiEmf4hjUyAtgyC9mZweRrTT6PP +8c9GsEsPPt2IYriMqQkoO3rHl+Ee5fSfwMCuJKDIodkP1nsmgmkyPacCAwEAAaNjMGEwDwYDVR0T +AQH/BAUwAwEB/zAdBgNVHQ4EFgQUAK3Zo/Z59m50qX8zPYEX10zPM94wHwYDVR0jBBgwFoAUAK3Z +o/Z59m50qX8zPYEX10zPM94wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBBQUAA4IBAQB8itEf +GDeC4Liwo+1WlchiYZwFos3CYiZhzRAW18y0ZTTQEYqtqKkFZu90821fnZmv9ov761KyBZiibyrF +VL0lvV+uyIbqRizBs73B6UlwGBaXCBOMIOAbLjpHyx7kADCVW/RFo8AasAFOq73AI25jP4BKxQft +3OJvx8Fi8eNy1gTIdGcL+oiroQHIb/AUr9KZzVGTfu0uOMe9zkZQPXLjeSWdm4grECDdpbgyn43g +Kd8hdIaC2y+CMMbHNYaz+ZZfRtsMRf3zUMNvxsNIrUam4SdHCh0Om7bCd39j8uB9Gr784N/Xx6ds +sPmuujz9dLQR6FgNgLzTqIA6me11zEZ7 +-----END CERTIFICATE----- + +America Online Root Certification Authority 2 +============================================= +-----BEGIN CERTIFICATE----- +MIIFpDCCA4ygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT +QW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBPbmxpbmUgUm9vdCBDZXJ0aWZp +Y2F0aW9uIEF1dGhvcml0eSAyMB4XDTAyMDUyODA2MDAwMFoXDTM3MDkyOTE0MDgwMFowYzELMAkG +A1UEBhMCVVMxHDAaBgNVBAoTE0FtZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2Eg +T25saW5lIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAMxBRR3pPU0Q9oyxQcngXssNt79Hc9PwVU3dxgz6sWYFas14tNwC206B89en +fHG8dWOgXeMHDEjsJcQDIPT/DjsS/5uN4cbVG7RtIuOx238hZK+GvFciKtZHgVdEglZTvYYUAQv8 +f3SkWq7xuhG1m1hagLQ3eAkzfDJHA1zEpYNI9FdWboE2JxhP7JsowtS013wMPgwr38oE18aO6lhO +qKSlGBxsRZijQdEt0sdtjRnxrXm3gT+9BoInLRBYBbV4Bbkv2wxrkJB+FFk4u5QkE+XRnRTf04JN +RvCAOVIyD+OEsnpD8l7eXz8d3eOyG6ChKiMDbi4BFYdcpnV1x5dhvt6G3NRI270qv0pV2uh9UPu0 +gBe4lL8BPeraunzgWGcXuVjgiIZGZ2ydEEdYMtA1fHkqkKJaEBEjNa0vzORKW6fIJ/KD3l67Xnfn +6KVuY8INXWHQjNJsWiEOyiijzirplcdIz5ZvHZIlyMbGwcEMBawmxNJ10uEqZ8A9W6Wa6897Gqid +FEXlD6CaZd4vKL3Ob5Rmg0gp2OpljK+T2WSfVVcmv2/LNzGZo2C7HK2JNDJiuEMhBnIMoVxtRsX6 +Kc8w3onccVvdtjc+31D1uAclJuW8tf48ArO3+L5DwYcRlJ4jbBeKuIonDFRH8KmzwICMoCfrHRnj +B453cMor9H124HhnAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFE1FwWg4u3Op +aaEg5+31IqEjFNeeMB8GA1UdIwQYMBaAFE1FwWg4u3OpaaEg5+31IqEjFNeeMA4GA1UdDwEB/wQE +AwIBhjANBgkqhkiG9w0BAQUFAAOCAgEAZ2sGuV9FOypLM7PmG2tZTiLMubekJcmnxPBUlgtk87FY +T15R/LKXeydlwuXK5w0MJXti4/qftIe3RUavg6WXSIylvfEWK5t2LHo1YGwRgJfMqZJS5ivmae2p ++DYtLHe/YUjRYwu5W1LtGLBDQiKmsXeu3mnFzcccobGlHBD7GL4acN3Bkku+KVqdPzW+5X1R+FXg +JXUjhx5c3LqdsKyzadsXg8n33gy8CNyRnqjQ1xU3c6U1uPx+xURABsPr+CKAXEfOAuMRn0T//Zoy +zH1kUQ7rVyZ2OuMeIjzCpjbdGe+n/BLzJsBZMYVMnNjP36TMzCmT/5RtdlwTCJfy7aULTd3oyWgO +ZtMADjMSW7yV5TKQqLPGbIOtd+6Lfn6xqavT4fG2wLHqiMDn05DpKJKUe2h7lyoKZy2FAjgQ5ANh +1NolNscIWC2hp1GvMApJ9aZphwctREZ2jirlmjvXGKL8nDgQzMY70rUXOm/9riW99XJZZLF0Kjhf +GEzfz3EEWjbUvy+ZnOjZurGV5gJLIaFb1cFPj65pbVPbAZO1XB4Y3WRayhgoPmMEEf0cjQAPuDff +Z4qdZqkCapH/E8ovXYO8h5Ns3CRRFgQlZvqz2cK6Kb6aSDiCmfS/O0oxGfm/jiEzFMpPVF/7zvuP +cX/9XhmgD0uRuMRUvAawRY8mkaKO/qk= +-----END CERTIFICATE----- + +Visa eCommerce Root +=================== +-----BEGIN CERTIFICATE----- +MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUFADBrMQswCQYDVQQG +EwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5hdGlvbmFsIFNlcnZpY2Ug +QXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNvbW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2 +WhcNMjIwNjI0MDAxNjEyWjBrMQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMm +VmlzYSBJbnRlcm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNv +bW1lcmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvV95WHm6h2mCxlCfL +F9sHP4CFT8icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4ElpF7sDPwsRROEW+1QK8b +RaVK7362rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdVZqW1LS7YgFmypw23RuwhY/81q6UCzyr0 +TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq299yOIzzlr3xF7zSujtFWsan9sYXiwGd/BmoKoMWuDpI +/k4+oKsGGelT84ATB+0tvz8KPFUgOSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzs +GHxBvfaLdXe6YJ2E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEG +MB0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUFAAOCAQEAX/FBfXxc +CLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcRzCSs00Rsca4BIGsDoo8Ytyk6feUW +YFN4PMCvFYP3j1IzJL1kk5fui/fbGKhtcbP3LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pz +zkWKsKZJ/0x9nXGIxHYdkFsd7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBu +YQa7FkKMcPcw++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/hC3euiInlhBx6yLt +398znM/jra6O1I7mT1GvFpLgXPYHDw== +-----END CERTIFICATE----- + +Certum Root CA +============== +-----BEGIN CERTIFICATE----- +MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBMMRswGQYDVQQK +ExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBDQTAeFw0wMjA2MTExMDQ2Mzla +Fw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBMMRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8u +by4xEjAQBgNVBAMTCUNlcnR1bSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6x +wS7TT3zNJc4YPk/EjG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdL +kKWoePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GIULdtlkIJ +89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapuOb7kky/ZR6By6/qmW6/K +Uz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUgAKpoC6EahQGcxEZjgoi2IrHu/qpGWX7P +NSzVttpd90gzFFS269lvzs2I1qsb2pY7HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkq +hkiG9w0BAQUFAAOCAQEAuI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+ +GXYkHAQaTOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTgxSvg +GrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1qCjqTE5s7FCMTY5w/ +0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5xO/fIR/RpbxXyEV6DHpx8Uq79AtoS +qFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs6GAqm4VKQPNriiTsBhYscw== +-----END CERTIFICATE----- + +Comodo AAA Services root +======================== +-----BEGIN CERTIFICATE----- +MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAw +MFoXDTI4MTIzMTIzNTk1OVowezELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hl +c3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNV +BAMMGEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQuaBtDFcCLNSS1UY8y2bmhG +C1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe3M/vg4aijJRPn2jymJBGhCfHdr/jzDUs +i14HZGWCwEiwqJH5YZ92IFCokcdmtet4YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszW +Y19zjNoFmag4qMsXeDZRrOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjH +Ypy+g8cmez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQUoBEK +Iz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wewYDVR0f +BHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20vQUFBQ2VydGlmaWNhdGVTZXJ2aWNl +cy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29tb2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2Vz +LmNybDANBgkqhkiG9w0BAQUFAAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm +7l3sAg9g1o1QGE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz +Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2G9w84FoVxp7Z +8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsil2D4kF501KKaU73yqWjgom7C +12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== +-----END CERTIFICATE----- + +Comodo Secure Services root +=========================== +-----BEGIN CERTIFICATE----- +MIIEPzCCAyegAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDEkMCIGA1UEAwwbU2VjdXJlIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAw +MDAwMFoXDTI4MTIzMTIzNTk1OVowfjELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFu +Y2hlc3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxJDAi +BgNVBAMMG1NlY3VyZSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAMBxM4KK0HDrc4eCQNUd5MvJDkKQ+d40uaG6EfQlhfPMcm3ye5drswfxdySRXyWP +9nQ95IDC+DwN879A6vfIUtFyb+/Iq0G4bi4XKpVpDM3SHpR7LZQdqnXXs5jLrLxkU0C8j6ysNstc +rbvd4JQX7NFc0L/vpZXJkMWwrPsbQ996CF23uPJAGysnnlDOXmWCiIxe004MeuoIkbY2qitC++rC +oznl2yY4rYsK7hljxxwk3wN42ubqwUcaCwtGCd0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3V +p6ea5EQz6YiO/O1R65NxTq0B50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzCBxDAdBgNVHQ4E +FgQUPNiTiMLAggnMAZkGkyDpnnAJY08wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8w +gYEGA1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jcmwuY29tb2RvY2EuY29tL1NlY3VyZUNlcnRpZmlj +YXRlU2VydmljZXMuY3JsMDmgN6A1hjNodHRwOi8vY3JsLmNvbW9kby5uZXQvU2VjdXJlQ2VydGlm +aWNhdGVTZXJ2aWNlcy5jcmwwDQYJKoZIhvcNAQEFBQADggEBAIcBbSMdflsXfcFhMs+P5/OKlFlm +4J4oqF7Tt/Q05qo5spcWxYJvMqTpjOev/e/C6LlLqqP05tqNZSH7uoDrJiiFGv45jN5bBAS0VPmj +Z55B+glSzAVIqMk/IQQezkhr/IXownuvf7fM+F86/TXGDe+X3EyrEeFryzHRbPtIgKvcnDe4IRRL +DXE97IMzbtFuMhbsmMcWi1mmNKsFVy2T96oTy9IT4rcuO81rUBcJaD61JlfutuC23bkpgHl9j6Pw +pCikFcSF9CfUa7/lXORlAnZUtOM3ZiTTGWHIUhDlizeauan5Hb/qmZJhlv8BzaFfDbxxvA6sCx1H +RR3B7Hzs/Sk= +-----END CERTIFICATE----- + +Comodo Trusted Services root +============================ +-----BEGIN CERTIFICATE----- +MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS +R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg +TGltaXRlZDElMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEw +MDAwMDBaFw0yODEyMzEyMzU5NTlaMH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVyIE1h +bmNoZXN0ZXIxEDAOBgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9kbyBDQSBMaW1pdGVkMSUw +IwYDVQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNlcnZpY2VzMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA33FvNlhTWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWWfnJSoBVC21ndZHoa0Lh7 +3TkVvFVIxO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMtTGo87IvDktJTdyR0nAducPy9C1t2ul/y +/9c3S0pgePfw+spwtOpZqqPOSC+pw7ILfhdyFgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+FHzjqMB6 +juljatEPmsbS9Is6FARW1O24zG71++IsWL1/T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsS +ivnkBbA7kUlcsutT6vifR4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0GA1Ud +DgQWBBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB +/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21vZG9jYS5jb20vVHJ1c3RlZENlcnRp +ZmljYXRlU2VydmljZXMuY3JsMDqgOKA2hjRodHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENl +cnRpZmljYXRlU2VydmljZXMuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8Ntw +uleGFTQQuS9/HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOrp32 +pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWDVxISjBc/lDb+XbDA +BHcTuPQV1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5QoNE+xqFx7D+gIIxmOom0jtTYsU0l +R+4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/AtyjcndBInTMu2l+nZrghtWjlA3QVHdWpaIbOjGM9O +9y5Xt5hwXsjEeLBi +-----END CERTIFICATE----- + +QuoVadis Root CA +================ +-----BEGIN CERTIFICATE----- +MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJCTTEZMBcGA1UE +ChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 +eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAz +MTkxODMzMzNaFw0yMTAzMTcxODMzMzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRp +cyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQD +EyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Ypli4kVEAkOPcahdxYTMuk +J0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2DrOpm2RgbaIr1VxqYuvXtdj182d6UajtL +F8HVj71lODqV0D1VNk7feVcxKh7YWWVJWCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeL +YzcS19Dsw3sgQUSj7cugF+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWen +AScOospUxbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCCAk4w +PQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVvdmFkaXNvZmZzaG9y +ZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREwggENMIIBCQYJKwYBBAG+WAABMIH7 +MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNlIG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmlj +YXRlIGJ5IGFueSBwYXJ0eSBhc3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJs +ZSBzdGFuZGFyZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh +Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYIKwYBBQUHAgEW +Fmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3TKbkGGew5Oanwl4Rqy+/fMIGu +BgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rqy+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkw +FwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MS4wLAYDVQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6 +tlCLMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSkfnIYj9lo +fFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf87C9TqnN7Az10buYWnuul +LsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1RcHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2x +gI4JVrmcGmD+XcHXetwReNDWXcG31a0ymQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi +5upZIof4l/UO/erMkqQWxFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi +5nrQNiOKSnQ2+Q== +-----END CERTIFICATE----- + +QuoVadis Root CA 2 +================== +-----BEGIN CERTIFICATE----- +MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT +EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMjAeFw0wNjExMjQx +ODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMRswGQYDVQQDExJRdW9WYWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQCaGMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6 +XJxgFyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55JWpzmM+Yk +lvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bBrrcCaoF6qUWD4gXmuVbB +lDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp+ARz8un+XJiM9XOva7R+zdRcAitMOeGy +lZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt +66/3FsvbzSUr5R/7mp/iUcw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1Jdxn +wQ5hYIizPtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og/zOh +D7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UHoycR7hYQe7xFSkyy +BNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuIyV77zGHcizN300QyNQliBJIWENie +J0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1UdEwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1Ud +DgQWBBQahGK8SEwzJQTU7tD2A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGU +a6FJpEcwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT +ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2fBluornFdLwUv +Z+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzng/iN/Ae42l9NLmeyhP3ZRPx3 +UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2BlfF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodm +VjB3pjd4M1IQWK4/YY7yarHvGH5KWWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK ++JDSV6IZUaUtl0HaB0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrW +IozchLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPRTUIZ3Ph1 +WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWDmbA4CD/pXvk1B+TJYm5X +f6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0ZohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II +4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8 +VCLAAVBpQ570su9t+Oza8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u +-----END CERTIFICATE----- + +QuoVadis Root CA 3 +================== +-----BEGIN CERTIFICATE----- +MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0xGTAXBgNVBAoT +EFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJvb3QgQ0EgMzAeFw0wNjExMjQx +OTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM +aW1pdGVkMRswGQYDVQQDExJRdW9WYWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4IC +DwAwggIKAoICAQDMV0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNgg +DhoB4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUrH556VOij +KTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd8lyyBTNvijbO0BNO/79K +DDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9CabwvvWhDFlaJKjdhkf2mrk7AyxRllDdLkgbv +BNDInIjbC3uBr7E9KsRlOni27tyAsdLTmZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwp +p5ijJUMv7/FfJuGITfhebtfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8 +nT8KKdjcT5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDtWAEX +MJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZc6tsgLjoC2SToJyM +Gf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A4iLItLRkT9a6fUg+qGkM17uGcclz +uD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYDVR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHT +BgkrBgEEAb5YAAMwgcUwgZMGCCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmlj +YXRlIGNvbnN0aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0 +aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVudC4wLQYIKwYB +BQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2NwczALBgNVHQ8EBAMCAQYwHQYD +VR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4GA1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4 +ywLQoUmkRzBFMQswCQYDVQQGEwJCTTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UE +AxMSUXVvVmFkaXMgUm9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZV +qyM07ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSemd1o417+s +hvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd+LJ2w/w4E6oM3kJpK27z +POuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2 +Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadNt54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp +8kokUvd0/bpO5qgdAm6xDYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBC +bjPsMZ57k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6szHXu +g/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0jWy10QJLZYxkNc91p +vGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeTmJlglFwjz1onl14LBQaTNx47aTbr +qZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK4SVhM7JZG+Ju1zdXtg2pEto= +-----END CERTIFICATE----- + +Security Communication Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP +U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw +HhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP +U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw +8yl89f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJDKaVv0uM +DPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9Ms+k2Y7CI9eNqPPYJayX +5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/NQV3Is00qVUarH9oe4kA92819uZKAnDfd +DJZkndwi92SL32HeFZRSFaB9UslLqCHJxrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2 +JChzAgMBAAGjPzA9MB0GA1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYw +DwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vGkl3g +0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfrUj94nK9NrvjVT8+a +mCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5Bw+SUEmK3TGXX8npN6o7WWWXlDLJ +s58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJUJRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ +6rBK+1YWc26sTfcioU+tHXotRSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAi +FL39vmwLAw== +-----END CERTIFICATE----- + +Sonera Class 2 Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEPMA0GA1UEChMG +U29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAxMDQwNjA3Mjk0MFoXDTIxMDQw +NjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNVBAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJh +IENsYXNzMiBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3 +/Ei9vX+ALTU74W+oZ6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybT +dXnt5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s3TmVToMG +f+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2EjvOr7nQKV0ba5cTppCD8P +tOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu8nYybieDwnPz3BjotJPqdURrBGAgcVeH +nfO+oJAjPYok4doh28MCAwEAAaMzMDEwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITT +XjwwCwYDVR0PBAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt +0jSv9zilzqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/3DEI +cbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvDFNr450kkkdAdavph +Oe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6Tk6ezAyNlNzZRZxe7EJQY670XcSx +EtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLH +llpwrN9M +-----END CERTIFICATE----- + +Staat der Nederlanden Root CA +============================= +-----BEGIN CERTIFICATE----- +MIIDujCCAqKgAwIBAgIEAJiWijANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQGEwJOTDEeMBwGA1UE +ChMVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQQDEx1TdGFhdCBkZXIgTmVkZXJsYW5kZW4g +Um9vdCBDQTAeFw0wMjEyMTcwOTIzNDlaFw0xNTEyMTYwOTE1MzhaMFUxCzAJBgNVBAYTAk5MMR4w +HAYDVQQKExVTdGFhdCBkZXIgTmVkZXJsYW5kZW4xJjAkBgNVBAMTHVN0YWF0IGRlciBOZWRlcmxh +bmRlbiBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmNK1URF6gaYUmHFt +vsznExvWJw56s2oYHLZhWtVhCb/ekBPHZ+7d89rFDBKeNVU+LCeIQGv33N0iYfXCxw719tV2U02P +jLwYdjeFnejKScfST5gTCaI+Ioicf9byEGW07l8Y1Rfj+MX94p2i71MOhXeiD+EwR+4A5zN9RGca +C1Hoi6CeUJhoNFIfLm0B8mBF8jHrqTFoKbt6QZ7GGX+UtFE5A3+y3qcym7RHjm+0Sq7lr7HcsBth +vJly3uSJt3omXdozSVtSnA71iq3DuD3oBmrC1SoLbHuEvVYFy4ZlkuxEK7COudxwC0barbxjiDn6 +22r+I/q85Ej0ZytqERAhSQIDAQABo4GRMIGOMAwGA1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEBgRV +HSAAMDwwOgYIKwYBBQUHAgEWLmh0dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwvcG9saWNpZXMvcm9v +dC1wb2xpY3kwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSofeu8Y6R0E3QA7Jbg0zTBLL9s+DAN +BgkqhkiG9w0BAQUFAAOCAQEABYSHVXQ2YcG70dTGFagTtJ+k/rvuFbQvBgwp8qiSpGEN/KtcCFtR +EytNwiphyPgJWPwtArI5fZlmgb9uXJVFIGzmeafR2Bwp/MIgJ1HI8XxdNGdphREwxgDS1/PTfLbw +MVcoEoJz6TMvplW0C5GUR5z6u3pCMuiufi3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJzg3y +nGQI0DvDKcWy7ZAEwbEpkcUwb8GpcjPM/l0WFywRaed+/sWDCN+83CI6LiBpIzlWYGeQiy52OfsR +iJf2fL1LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4//DGYVwSR8MnwDHTuhWEUykw== +-----END CERTIFICATE----- + +TDC Internet Root CA +==================== +-----BEGIN CERTIFICATE----- +MIIEKzCCAxOgAwIBAgIEOsylTDANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJESzEVMBMGA1UE +ChMMVERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTAeFw0wMTA0MDUx +NjMzMTdaFw0yMTA0MDUxNzAzMTdaMEMxCzAJBgNVBAYTAkRLMRUwEwYDVQQKEwxUREMgSW50ZXJu +ZXQxHTAbBgNVBAsTFFREQyBJbnRlcm5ldCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAxLhAvJHVYx/XmaCLDEAedLdInUaMArLgJF/wGROnN4NrXceO+YQwzho7+vvOi20j +xsNuZp+Jpd/gQlBn+h9sHvTQBda/ytZO5GhgbEaqHF1j4QeGDmUApy6mcca8uYGoOn0a0vnRrEvL +znWv3Hv6gXPU/Lq9QYjUdLP5Xjg6PEOo0pVOd20TDJ2PeAG3WiAfAzc14izbSysseLlJ28TQx5yc +5IogCSEWVmb/Bexb4/DPqyQkXsN/cHoSxNK1EKC2IeGNeGlVRGn1ypYcNIUXJXfi9i8nmHj9eQY6 +otZaQ8H/7AQ77hPv01ha/5Lr7K7a8jcDR0G2l8ktCkEiu7vmpwIDAQABo4IBJTCCASEwEQYJYIZI +AYb4QgEBBAQDAgAHMGUGA1UdHwReMFwwWqBYoFakVDBSMQswCQYDVQQGEwJESzEVMBMGA1UEChMM +VERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTENMAsGA1UEAxMEQ1JM +MTArBgNVHRAEJDAigA8yMDAxMDQwNTE2MzMxN1qBDzIwMjEwNDA1MTcwMzE3WjALBgNVHQ8EBAMC +AQYwHwYDVR0jBBgwFoAUbGQBx/2FbazI2p5QCIUItTxWqFAwHQYDVR0OBBYEFGxkAcf9hW2syNqe +UAiFCLU8VqhQMAwGA1UdEwQFMAMBAf8wHQYJKoZIhvZ9B0EABBAwDhsIVjUuMDo0LjADAgSQMA0G +CSqGSIb3DQEBBQUAA4IBAQBOQ8zR3R0QGwZ/t6T609lN+yOfI1Rb5osvBCiLtSdtiaHsmGnc540m +gwV5dOy0uaOXwTUA/RXaOYE6lTGQ3pfphqiZdwzlWqCE/xIWrG64jcN7ksKsLtB9KOy282A4aW8+ +2ARVPp7MVdK6/rtHBNcK2RYKNCn1WBPVT8+PVkuzHu7TmHnaCB4Mb7j4Fifvwm899qNLPg7kbWzb +O0ESm70NRyN/PErQr8Cv9u8btRXE64PECV90i9kR+8JWsTz4cMo0jUNAE4z9mQNUecYu6oah9jrU +Cbz0vGbMPVjQV0kK7iXiQe4T+Zs4NNEA9X7nlB38aQNiuJkFBT1reBK9sG9l +-----END CERTIFICATE----- + +UTN DATACorp SGC Root CA +======================== +-----BEGIN CERTIFICATE----- +MIIEXjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypoBqmtaTANBgkqhkiG9w0BAQUFADCBkzELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGzAZ +BgNVBAMTElVUTiAtIERBVEFDb3JwIFNHQzAeFw05OTA2MjQxODU3MjFaFw0xOTA2MjQxOTA2MzBa +MIGTMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4w +HAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRy +dXN0LmNvbTEbMBkGA1UEAxMSVVROIC0gREFUQUNvcnAgU0dDMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA3+5YEKIrblXEjr8uRgnn4AgPLit6E5Qbvfa2gI5lBZMAHryv4g+OGQ0SR+ys +raP6LnD43m77VkIVni5c7yPeIbkFdicZD0/Ww5y0vpQZY/KmEQrrU0icvvIpOxboGqBMpsn0GFlo +wHDyUwDAXlCCpVZvNvlK4ESGoE1O1kduSUrLZ9emxAW5jh70/P/N5zbgnAVssjMiFdC04MwXwLLA +9P4yPykqlXvY8qdOD1R8oQ2AswkDwf9c3V6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0XILyulWbfXv +33i+Ybqypa4ETLyorGkVl73v67SMvzX41MPRKA5cOp9wGDMgd8SirwIDAQABo4GrMIGoMAsGA1Ud +DwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRTMtGzz3/64PGgXYVOktKeRR20TzA9 +BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLURBVEFDb3JwU0dD +LmNybDAqBgNVHSUEIzAhBggrBgEFBQcDAQYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSqGSIb3 +DQEBBQUAA4IBAQAnNZcAiosovcYzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+kHcrpY6CiM+iVnJowft +Gzet/Hy+UUla3joKVAgWRcKZsYfNjGjgaQPpxE6YsjuMFrMOoAyYUJuTqXAJyCyjj98C5OBxOvG0 +I3KgqgHf35g+FFCgMSa9KOlaMCZ1+XtgHI3zzVAmbQQnmt/VDUVHKWss5nbZqSl9Mt3JNjy9rjXx +EZ4du5A/EkdOjtd+D2JzHVImOBwYSf0wdJrE5SIv2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jFVkwP +DPafepE39peC4N1xaf92P2BNPM/3mfnGV/TJVTl4uix5yaaIK/QI +-----END CERTIFICATE----- + +UTN USERFirst Hardware Root CA +============================== +-----BEGIN CERTIFICATE----- +MIIEdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zYq/mUK/TANBgkqhkiG9w0BAQUFADCBlzELMAkGA1UE +BhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEeMBwGA1UEChMVVGhl +IFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAd +BgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQyWhcNMTkwNzA5MTgx +OTIyWjCBlzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0 +eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8vd3d3LnVz +ZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdhcmUwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQCx98M4P7Sof885glFn0G2f0v9Y8+efK+wNiVSZuTiZFvfgIXlI +wrthdBKWHTxqctU8EGc6Oe0rE81m65UJM6Rsl7HoxuzBdXmcRl6Nq9Bq/bkqVRcQVLMZ8Jr28bFd +tqdt++BxF2uiiPsA3/4aMXcMmgF6sTLjKwEHOG7DpV4jvEWbe1DByTCP2+UretNb+zNAHqDVmBe8 +i4fDidNdoI6yqqr2jmmIBsX6iSHzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzWitZky8PqxhvQqIDsjf +Pe58BEydCl5rkdbux+0ojatNh4lz0G6k0B4WixThdkQDf2Os5M1JnMWS9KsyoUhbAgMBAAGjgbkw +gbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFKFyXyYbKJhDlV0HN9WF +lp1L0sNFMEQGA1UdHwQ9MDswOaA3oDWGM2h0dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VVE4tVVNF +UkZpcnN0LUhhcmR3YXJlLmNybDAxBgNVHSUEKjAoBggrBgEFBQcDAQYIKwYBBQUHAwUGCCsGAQUF +BwMGBggrBgEFBQcDBzANBgkqhkiG9w0BAQUFAAOCAQEARxkP3nTGmZev/K0oXnWO6y1n7k57K9cM +//bey1WiCuFMVGWTYGufEpytXoMs61quwOQt9ABjHbjAbPLPSbtNk28GpgoiskliCE7/yMgUsogW +XecB5BKV5UU0s4tpvc+0hY91UZ59Ojg6FEgSxvunOxqNDYJAB+gECJChicsZUN/KHAG8HQQZexB2 +lzvukJDKxA4fFm517zP4029bHpbj4HR3dHuKom4t3XbWOTCC8KucUvIqx69JXn7HaOWCgchqJ/kn +iCrVWFCVH/A7HFe7fRQ5YiuayZSSKqMiDP+JJn1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67 +nfhmqA== +-----END CERTIFICATE----- + +Camerfirma Chambers of Commerce Root +==================================== +-----BEGIN CERTIFICATE----- +MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEnMCUGA1UEChMe +QUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1i +ZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAx +NjEzNDNaFw0zNzA5MzAxNjEzNDRaMH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZp +cm1hIFNBIENJRiBBODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3Jn +MSIwIAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0BAQEFAAOC +AQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtbunXF/KGIJPov7coISjlU +xFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0dBmpAPrMMhe5cG3nCYsS4No41XQEMIwRH +NaqbYE6gZj3LJgqcQKH0XZi/caulAGgq7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jW +DA+wWFjbw2Y3npuRVDM30pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFV +d9oKDMyXroDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIGA1Ud +EwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5jaGFtYmVyc2lnbi5v +cmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p26EpW1eLTXYGduHRooowDgYDVR0P +AQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hh +bWJlcnNpZ24ub3JnMCcGA1UdEgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYD +VR0gBFEwTzBNBgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz +aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEBAAxBl8IahsAi +fJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZdp0AJPaxJRUXcLo0waLIJuvvD +L8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wN +UPf6s+xCX6ndbcj0dc97wXImsQEcXCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/n +ADydb47kMgkdTXg0eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1 +erfutGWaIZDgqtCYvDi1czyL+Nw= +-----END CERTIFICATE----- + +Camerfirma Global Chambersign Root +================================== +-----BEGIN CERTIFICATE----- +MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEnMCUGA1UEChMe +QUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1i +ZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYx +NDE4WhcNMzcwOTMwMTYxNDE4WjB9MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJt +YSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEg +MB4GA1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUAA4IBDQAw +ggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0Mi+ITaFgCPS3CU6gSS9J +1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/sQJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8O +by4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpVeAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl +6DJWk0aJqCWKZQbua795B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c +8lCrEqWhz0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0TAQH/ +BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1iZXJzaWduLm9yZy9j +aGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4wTcbOX60Qq+UDpfqpFDAOBgNVHQ8B +Af8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAHMCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBj +aGFtYmVyc2lnbi5vcmcwKgYDVR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9y +ZzBbBgNVHSAEVDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh +bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0BAQUFAAOCAQEA +PDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUMbKGKfKX0j//U2K0X1S0E0T9Y +gOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXiryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJ +PJ7oKXqJ1/6v/2j1pReQvayZzKWGVwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4 +IBHNfTIzSJRUTN3cecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREes +t2d/AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A== +-----END CERTIFICATE----- + +NetLock Notary (Class A) Root +============================= +-----BEGIN CERTIFICATE----- +MIIGfTCCBWWgAwIBAgICAQMwDQYJKoZIhvcNAQEEBQAwga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQI +EwdIdW5nYXJ5MREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6 +dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9j +ayBLb3pqZWd5em9pIChDbGFzcyBBKSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNDIzMTQ0N1oX +DTE5MDIxOTIzMTQ0N1owga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQH +EwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQuMRowGAYD +VQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBLb3pqZWd5em9pIChDbGFz +cyBBKSBUYW51c2l0dmFueWtpYWRvMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvHSM +D7tM9DceqQWC2ObhbHDqeLVu0ThEDaiDzl3S1tWBxdRL51uUcCbbO51qTGL3cfNk1mE7PetzozfZ +z+qMkjvN9wfcZnSX9EUi3fRc4L9t875lM+QVOr/bmJBVOMTtplVjC7B4BPTjbsE/jvxReB+SnoPC +/tmwqcm8WgD/qaiYdPv2LD4VOQ22BFWoDpggQrOxJa1+mm9dU7GrDPzr4PN6s6iz/0b2Y6LYOph7 +tqyF/7AlT3Rj5xMHpQqPBffAZG9+pyeAlt7ULoZgx2srXnN7F+eRP2QM2EsiNCubMvJIH5+hCoR6 +4sKtlz2O1cH5VqNQ6ca0+pii7pXmKgOM3wIDAQABo4ICnzCCApswDgYDVR0PAQH/BAQDAgAGMBIG +A1UdEwEB/wQIMAYBAf8CAQQwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaC +Ak1GSUdZRUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pv +bGdhbHRhdGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQu +IEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2Vn +LWJpenRvc2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0 +ZXRlbGUgYXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFz +IGxlaXJhc2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBh +IGh0dHBzOi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVu +b3J6ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1YW5jZSBh +bmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sg +Q1BTIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFp +bCBhdCBjcHNAbmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4IBAQBIJEb3ulZv+sgoA0BO5TE5 +ayZrU3/b39/zcT0mwBQOxmd7I6gMc90Bu8bKbjc5VdXHjFYgDigKDtIqpLBJUsY4B/6+CgmM0ZjP +ytoUMaFP0jn8DxEsQ8Pdq5PHVT5HfBgaANzze9jyf1JsIPQLX2lS9O74silg6+NJMSEN1rUQQeJB +CWziGppWS3cC9qCbmieH6FUpccKQn0V4GuEVZD3QDtigdp+uxdAu6tYPVuxkf1qbFFgBJ34TUMdr +KuZoPL9coAob4Q566eKAw+np9v1sEZ7Q5SgnK1QyQhSCdeZK8CtmdWOMovsEPoMOmzbwGOQmIMOM +8CgHrTwXZoi1/baI +-----END CERTIFICATE----- + +NetLock Business (Class B) Root +=============================== +-----BEGIN CERTIFICATE----- +MIIFSzCCBLSgAwIBAgIBaTANBgkqhkiG9w0BAQQFADCBmTELMAkGA1UEBhMCSFUxETAPBgNVBAcT +CEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0b25zYWdpIEtmdC4xGjAYBgNV +BAsTEVRhbnVzaXR2YW55a2lhZG9rMTIwMAYDVQQDEylOZXRMb2NrIFV6bGV0aSAoQ2xhc3MgQikg +VGFudXNpdHZhbnlraWFkbzAeFw05OTAyMjUxNDEwMjJaFw0xOTAyMjAxNDEwMjJaMIGZMQswCQYD +VQQGEwJIVTERMA8GA1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRv +bnNhZ2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxMjAwBgNVBAMTKU5ldExvY2sg +VXpsZXRpIChDbGFzcyBCKSBUYW51c2l0dmFueWtpYWRvMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB +iQKBgQCx6gTsIKAjwo84YM/HRrPVG/77uZmeBNwcf4xKgZjupNTKihe5In+DCnVMm8Bp2GQ5o+2S +o/1bXHQawEfKOml2mrriRBf8TKPV/riXiK+IA4kfpPIEPsgHC+b5sy96YhQJRhTKZPWLgLViqNhr +1nGTLbO/CVRY7QbrqHvcQ7GhaQIDAQABo4ICnzCCApswEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNV +HQ8BAf8EBAMCAAYwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1GSUdZ +RUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pvbGdhbHRh +dGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQuIEEgaGl0 +ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2VnLWJpenRv +c2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUg +YXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJh +c2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBhIGh0dHBz +Oi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVub3J6ZXNA +bmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1YW5jZSBhbmQgdGhl +IHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sgQ1BTIGF2 +YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBj +cHNAbmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4GBAATbrowXr/gOkDFOzT4JwG06sPgzTEdM +43WIEJessDgVkcYplswhwG08pXTP2IKlOcNl40JwuyKQ433bNXbhoLXan3BukxowOR0w2y7jfLKR +stE3Kfq51hdcR0/jHTjrn9V7lagonhVK0dHQKwCXoOKSNitjrFgBazMpUIaD8QFI +-----END CERTIFICATE----- + +NetLock Express (Class C) Root +============================== +-----BEGIN CERTIFICATE----- +MIIFTzCCBLigAwIBAgIBaDANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCSFUxETAPBgNVBAcT +CEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0b25zYWdpIEtmdC4xGjAYBgNV +BAsTEVRhbnVzaXR2YW55a2lhZG9rMTQwMgYDVQQDEytOZXRMb2NrIEV4cHJlc3N6IChDbGFzcyBD +KSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNTE0MDgxMVoXDTE5MDIyMDE0MDgxMVowgZsxCzAJ +BgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6 +dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE0MDIGA1UEAxMrTmV0TG9j +ayBFeHByZXNzeiAoQ2xhc3MgQykgVGFudXNpdHZhbnlraWFkbzCBnzANBgkqhkiG9w0BAQEFAAOB +jQAwgYkCgYEA6+ywbGGKIyWvYCDj2Z/8kwvbXY2wobNAOoLO/XXgeDIDhlqGlZHtU/qdQPzm6N3Z +W3oDvV3zOwzDUXmbrVWg6dADEK8KuhRC2VImESLH0iDMgqSaqf64gXadarfSNnU+sYYJ9m5tfk63 +euyucYT2BDMIJTLrdKwWRMbkQJMdf60CAwEAAaOCAp8wggKbMBIGA1UdEwEB/wQIMAYBAf8CAQQw +DgYDVR0PAQH/BAQDAgAGMBEGCWCGSAGG+EIBAQQEAwIABzCCAmAGCWCGSAGG+EIBDQSCAlEWggJN +RklHWUVMRU0hIEV6ZW4gdGFudXNpdHZhbnkgYSBOZXRMb2NrIEtmdC4gQWx0YWxhbm9zIFN6b2xn +YWx0YXRhc2kgRmVsdGV0ZWxlaWJlbiBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBB +IGhpdGVsZXNpdGVzIGZvbHlhbWF0YXQgYSBOZXRMb2NrIEtmdC4gdGVybWVrZmVsZWxvc3NlZy1i +aXp0b3NpdGFzYSB2ZWRpLiBBIGRpZ2l0YWxpcyBhbGFpcmFzIGVsZm9nYWRhc2FuYWsgZmVsdGV0 +ZWxlIGF6IGVsb2lydCBlbGxlbm9yemVzaSBlbGphcmFzIG1lZ3RldGVsZS4gQXogZWxqYXJhcyBs +ZWlyYXNhIG1lZ3RhbGFsaGF0byBhIE5ldExvY2sgS2Z0LiBJbnRlcm5ldCBob25sYXBqYW4gYSBo +dHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIGNpbWVuIHZhZ3kga2VyaGV0byBheiBlbGxlbm9y +emVzQG5ldGxvY2submV0IGUtbWFpbCBjaW1lbi4gSU1QT1JUQU5UISBUaGUgaXNzdWFuY2UgYW5k +IHRoZSB1c2Ugb2YgdGhpcyBjZXJ0aWZpY2F0ZSBpcyBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIENQ +UyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cubmV0bG9jay5uZXQvZG9jcyBvciBieSBlLW1haWwg +YXQgY3BzQG5ldGxvY2submV0LjANBgkqhkiG9w0BAQQFAAOBgQAQrX/XDDKACtiG8XmYta3UzbM2 +xJZIwVzNmtkFLp++UOv0JhQQLdRmF/iewSf98e3ke0ugbLWrmldwpu2gpO0u9f38vf5NNwgMvOOW +gyL1SRt/Syu0VMGAfJlOHdCM7tCs5ZL6dVb+ZKATj7i4Fp1hBWeAyNDYpQcCNJgEjTME1A== +-----END CERTIFICATE----- + +XRamp Global CA Root +==================== +-----BEGIN CERTIFICATE----- +MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UE +BhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2Vj +dXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwHhcNMDQxMTAxMTcxNDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMx +HjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkg +U2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3Jp +dHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS638eMpSe2OAtp87ZOqCwu +IR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCPKZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMx +foArtYzAQDsRhtDLooY2YKTVMIJt2W7QDxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FE +zG+gSqmUsE3a56k0enI4qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqs +AxcZZPRaJSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNViPvry +xS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASsjVy16bYbMDYGA1UdHwQvMC0wK6Ap +oCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMC +AQEwDQYJKoZIhvcNAQEFBQADggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc +/Kh4ZzXxHfARvbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt +qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLaIR9NmXmd4c8n +nxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSyi6mx5O+aGtA9aZnuqCij4Tyz +8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQO+7ETPTsJ3xCwnR8gooJybQDJbw= +-----END CERTIFICATE----- + +Go Daddy Class 2 CA +=================== +-----BEGIN CERTIFICATE----- +MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMY +VGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkG +A1UEBhMCVVMxITAfBgNVBAoTGFRoZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28g +RGFkZHkgQ2xhc3MgMiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQAD +ggENADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCAPVYYYwhv +2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6wwdhFJ2+qN1j3hybX2C32 +qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXiEqITLdiOr18SPaAIBQi2XKVlOARFmR6j +YGB0xUGlcmIbYsUfb18aQr4CUWWoriMYavx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmY +vLEHZ6IVDd2gWMZEewo+YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0O +BBYEFNLEsNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h/t2o +atTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMu +MTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwG +A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wim +PQoZ+YeAEW5p5JYXMP80kWNyOO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKt +I3lpjbi2Tc7PTMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ +HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mERdEr/VxqHD3VI +Ls9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5CufReYNnyicsbkqWletNw+vHX/b +vZ8= +-----END CERTIFICATE----- + +Starfield Class 2 CA +==================== +-----BEGIN CERTIFICATE----- +MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzElMCMGA1UEChMc +U3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZpZWxkIENsYXNzIDIg +Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQwNjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBo +MQswCQYDVQQGEwJVUzElMCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAG +A1UECxMpU3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqG +SIb3DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf8MOh2tTY +bitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN+lq2cwQlZut3f+dZxkqZ +JRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVm +epsZGD3/cVE8MC5fvj13c7JdBmzDI1aaK4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSN +F4Azbl5KXZnJHoe0nRrA1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HF +MIHCMB0GA1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fRzt0f +hvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNo +bm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBDbGFzcyAyIENlcnRpZmljYXRpb24g +QXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGs +afPzWdqbAYcaT1epoXkJKtv3L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLM +PUxA2IGvd56Deruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl +xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynpVSJYACPq4xJD +KVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEYWQPJIrSPnNVeKtelttQKbfi3 +QBFGmh95DmK/D5fs4C8fF5Q= +-----END CERTIFICATE----- + +StartCom Certification Authority +================================ +-----BEGIN CERTIFICATE----- +MIIHyTCCBbGgAwIBAgIBATANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMN +U3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmlu +ZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0 +NjM2WhcNMzYwOTE3MTk0NjM2WjB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRk +LjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMg +U3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw +ggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZkpMyONvg45iPwbm2xPN1y +o4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rfOQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/ +Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/CJi/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/d +eMotHweXMAEtcnn6RtYTKqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt +2PZE4XNiHzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMMAv+Z +6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w+2OqqGwaVLRcJXrJ +osmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/ +untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVc +UjyJthkqcwEKDwOzEmDyei+B26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT +37uMdBNSSwIDAQABo4ICUjCCAk4wDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAa4wHQYDVR0OBBYE +FE4L7xqkQFulF2mHMMo0aEPQQa7yMGQGA1UdHwRdMFswLKAqoCiGJmh0dHA6Ly9jZXJ0LnN0YXJ0 +Y29tLm9yZy9zZnNjYS1jcmwuY3JsMCugKaAnhiVodHRwOi8vY3JsLnN0YXJ0Y29tLm9yZy9zZnNj +YS1jcmwuY3JsMIIBXQYDVR0gBIIBVDCCAVAwggFMBgsrBgEEAYG1NwEBATCCATswLwYIKwYBBQUH +AgEWI2h0dHA6Ly9jZXJ0LnN0YXJ0Y29tLm9yZy9wb2xpY3kucGRmMDUGCCsGAQUFBwIBFilodHRw +Oi8vY2VydC5zdGFydGNvbS5vcmcvaW50ZXJtZWRpYXRlLnBkZjCB0AYIKwYBBQUHAgIwgcMwJxYg +U3RhcnQgQ29tbWVyY2lhbCAoU3RhcnRDb20pIEx0ZC4wAwIBARqBl0xpbWl0ZWQgTGlhYmlsaXR5 +LCByZWFkIHRoZSBzZWN0aW9uICpMZWdhbCBMaW1pdGF0aW9ucyogb2YgdGhlIFN0YXJ0Q29tIENl +cnRpZmljYXRpb24gQXV0aG9yaXR5IFBvbGljeSBhdmFpbGFibGUgYXQgaHR0cDovL2NlcnQuc3Rh +cnRjb20ub3JnL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilT +dGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC +AgEAFmyZ9GYMNPXQhV59CuzaEE44HF7fpiUFS5Eyweg78T3dRAlbB0mKKctmArexmvclmAk8jhvh +3TaHK0u7aNM5Zj2gJsfyOZEdUauCe37Vzlrk4gNXcGmXCPleWKYK34wGmkUWFjgKXlf2Ysd6AgXm +vB618p70qSmD+LIU424oh0TDkBreOKk8rENNZEXO3SipXPJzewT4F+irsfMuXGRuczE6Eri8sxHk +fY+BUZo7jYn0TZNmezwD7dOaHZrzZVD1oNB1ny+v8OqCQ5j4aZyJecRDjkZy42Q2Eq/3JR44iZB3 +fsNrarnDy0RLrHiQi+fHLB5LEUTINFInzQpdn4XBidUaePKVEFMy3YCEZnXZtWgo+2EuvoSoOMCZ +EoalHmdkrQYuL6lwhceWD3yJZfWOQ1QOq92lgDmUYMA0yZZwLKMS9R9Ie70cfmu3nZD0Ijuu+Pwq +yvqCUqDvr0tVk+vBtfAii6w0TiYiBKGHLHVKt+V9E9e4DGTANtLJL4YSjCMJwRuCO3NJo2pXh5Tl +1njFmUNj403gdy3hZZlyaQQaRwnmDwFWJPsfvw55qVguucQJAX6Vum0ABj6y6koQOdjQK/W/7HW/ +lwLFCRsI3FU34oH7N4RDYiDK51ZLZer+bMEkkyShNOsF/5oirpt9P/FlUQqmMGqz9IgcgA38coro +g14= +-----END CERTIFICATE----- + +Taiwan GRCA +=========== +-----BEGIN CERTIFICATE----- +MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/MQswCQYDVQQG +EwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4X +DTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1owPzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dv +dmVybm1lbnQgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qN +w8XRIePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1qgQdW8or5 +BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKyyhwOeYHWtXBiCAEuTk8O +1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAtsF/tnyMKtsc2AtJfcdgEWFelq16TheEfO +htX7MfP6Mb40qij7cEwdScevLJ1tZqa2jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wov +J5pGfaENda1UhhXcSTvxls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7 +Q3hub/FCVGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHKYS1t +B6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoHEgKXTiCQ8P8NHuJB +O9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThNXo+EHWbNxWCWtFJaBYmOlXqYwZE8 +lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1UdDgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNV +HRMEBTADAQH/MDkGBGcqBwAEMTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg2 +09yewDL7MTqKUWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ +TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyfqzvS/3WXy6Tj +Zwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaKZEk9GhiHkASfQlK3T8v+R0F2 +Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFEJPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlU +D7gsL0u8qV1bYH+Mh6XgUmMqvtg7hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6Qz +DxARvBMB1uUO07+1EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+Hbk +Z6MmnD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WXudpVBrkk +7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44VbnzssQwmSNOXfJIoRIM3BKQ +CZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDeLMDDav7v3Aun+kbfYNucpllQdSNpc5Oy ++fwC00fmcc4QAu4njIT/rEUNE1yDMuAlpYYsfPQS +-----END CERTIFICATE----- + +Firmaprofesional Root CA +======================== +-----BEGIN CERTIFICATE----- +MIIEVzCCAz+gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBnTELMAkGA1UEBhMCRVMxIjAgBgNVBAcT +GUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1dG9yaWRhZCBkZSBDZXJ0aWZp +Y2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FA +ZmlybWFwcm9mZXNpb25hbC5jb20wHhcNMDExMDI0MjIwMDAwWhcNMTMxMDI0MjIwMDAwWjCBnTEL +MAkGA1UEBhMCRVMxIjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMT +OUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2 +ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20wggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDnIwNvbyOlXnjOlSztlB5uCp4Bx+ow0Syd3Tfom5h5VtP8c9/Qit5V +j1H5WuretXDE7aTt/6MNbg9kUDGvASdYrv5sp0ovFy3Tc9UTHI9ZpTQsHVQERc1ouKDAA6XPhUJH +lShbz++AbOCQl4oBPB3zhxAwJkh91/zpnZFx/0GaqUC1N5wpIE8fUuOgfRNtVLcK3ulqTgesrBlf +3H5idPayBQC6haD9HThuy1q7hryUZzM1gywfI834yJFxzJeL764P3CkDG8A563DtwW4O2GcLiam8 +NeTvtjS0pbbELaW+0MOUJEjb35bTALVmGotmBQ/dPz/LP6pemkr4tErvlTcbAgMBAAGjgZ8wgZww +KgYDVR0RBCMwIYYfaHR0cDovL3d3dy5maXJtYXByb2Zlc2lvbmFsLmNvbTASBgNVHRMBAf8ECDAG +AQH/AgEBMCsGA1UdEAQkMCKADzIwMDExMDI0MjIwMDAwWoEPMjAxMzEwMjQyMjAwMDBaMA4GA1Ud +DwEB/wQEAwIBBjAdBgNVHQ4EFgQUMwugZtHq2s7eYpMEKFK1FH84aLcwDQYJKoZIhvcNAQEFBQAD +ggEBAEdz/o0nVPD11HecJ3lXV7cVVuzH2Fi3AQL0M+2TUIiefEaxvT8Ub/GzR0iLjJcG1+p+o1wq +u00vR+L4OQbJnC4xGgN49Lw4xiKLMzHwFgQEffl25EvXwOaD7FnMP97/T2u3Z36mhoEyIwOdyPdf +wUpgpZKpsaSgYMN4h7Mi8yrrW6ntBas3D7Hi05V2Y1Z0jFhyGzflZKG+TQyTmAyX9odtsz/ny4Cm +7YjHX1BiAuiZdBbQ5rQ58SfLyEDW44YQqSMSkuBpQWOnryULwMWSyx6Yo1q6xTMPoJcB3X/ge9YG +VM+h4k0460tQtcsm9MracEpqoeJ5quGnM/b9Sh/22WA= +-----END CERTIFICATE----- + +Wells Fargo Root CA +=================== +-----BEGIN CERTIFICATE----- +MIID5TCCAs2gAwIBAgIEOeSXnjANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UEBhMCVVMxFDASBgNV +BAoTC1dlbGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhv +cml0eTEvMC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcN +MDAxMDExMTY0MTI4WhcNMjEwMTE0MTY0MTI4WjCBgjELMAkGA1UEBhMCVVMxFDASBgNVBAoTC1dl +bGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEv +MC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqG +SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVqDM7Jvk0/82bfuUER84A4n135zHCLielTWi5MbqNQ1mX +x3Oqfz1cQJ4F5aHiidlMuD+b+Qy0yGIZLEWukR5zcUHESxP9cMIlrCL1dQu3U+SlK93OvRw6esP3 +E48mVJwWa2uv+9iWsWCaSOAlIiR5NM4OJgALTqv9i86C1y8IcGjBqAr5dE8Hq6T54oN+J3N0Prj5 +OEL8pahbSCOz6+MlsoCultQKnMJ4msZoGK43YjdeUXWoWGPAUe5AeH6orxqg4bB4nVCMe+ez/I4j +sNtlAHCEAQgAFG5Uhpq6zPk3EPbg3oQtnaSFN9OH4xXQwReQfhkhahKpdv0SAulPIV4XAgMBAAGj +YTBfMA8GA1UdEwEB/wQFMAMBAf8wTAYDVR0gBEUwQzBBBgtghkgBhvt7hwcBCzAyMDAGCCsGAQUF +BwIBFiRodHRwOi8vd3d3LndlbGxzZmFyZ28uY29tL2NlcnRwb2xpY3kwDQYJKoZIhvcNAQEFBQAD +ggEBANIn3ZwKdyu7IvICtUpKkfnRLb7kuxpo7w6kAOnu5+/u9vnldKTC2FJYxHT7zmu1Oyl5GFrv +m+0fazbuSCUlFLZWohDo7qd/0D+j0MNdJu4HzMPBJCGHHt8qElNvQRbn7a6U+oxy+hNH8Dx+rn0R +OhPs7fpvcmR7nX1/Jv16+yWt6j4pf0zjAFcysLPp7VMX2YuyFA4w6OXVE8Zkr8QA1dhYJPz1j+zx +x32l2w8n0cbyQIjmH/ZhqPRCyLk306m+LFZ4wnKbWV01QIroTmMatukgalHizqSQ33ZwmVxwQ023 +tqcZZE6St8WRPH9IFmV7Fv3L/PvZ1dZPIWU7Sn9Ho/s= +-----END CERTIFICATE----- + +Swisscom Root CA 1 +================== +-----BEGIN CERTIFICATE----- +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 +NY6E0F/6MBr1mmz0DlP5OlvRHA== +-----END CERTIFICATE----- + +DigiCert Assured ID Root CA +=========================== +-----BEGIN CERTIFICATE----- +MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSQw +IgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzEx +MTEwMDAwMDAwWjBlMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQL +ExB3d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0Ew +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7cJpSIqvTO +9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYPmDI2dsze3Tyoou9q+yHy +UmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW +/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpy +oeb6pNnVFzF1roV9Iq4/AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whf +GHdPAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRF +66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzANBgkq +hkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRCdWKuh+vy1dneVrOfzM4UKLkNl2Bc +EkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTffwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38Fn +SbNd67IJKusm7Xi+fT8r87cmNW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i +8b5QZ7dsvfPxH2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe ++o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== +-----END CERTIFICATE----- + +DigiCert Global Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBhMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSAw +HgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBDQTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAw +MDAwMDBaMGExCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3 +dy5kaWdpY2VydC5jb20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkq +hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsBCSDMAZOn +TjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97nh6Vfe63SKMI2tavegw5 +BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt43C/dxC//AH2hdmoRBBYMql1GNXRor5H +4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7PT19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y +7vrTC0LUq7dBMtoM1O/4gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQAB +o2MwYTAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbRTLtm +8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDQYJKoZIhvcNAQEF +BQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/EsrhMAtudXH/vTBH1jLuG2cenTnmCmr +EbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIt +tep3Sp+dWOIrWcBAI+0tKIJFPnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886 +UAb3LujEV0lsYSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk +CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= +-----END CERTIFICATE----- + +DigiCert High Assurance EV Root CA +================================== +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBsMQswCQYDVQQG +EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMSsw +KQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5jZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAw +MFoXDTMxMTExMDAwMDAwMFowbDELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZ +MBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFu +Y2UgRVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm+9S75S0t +Mqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTWPNt0OKRKzE0lgvdKpVMS +OO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEMxChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3 +MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFBIk5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQ +NAQTXKFx01p8VdteZOE3hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUe +h10aUAsgEsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMB +Af8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaAFLE+w2kD+L9HAdSY +JhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3NecnzyIZgYIVyHbIUf4KmeqvxgydkAQ +V8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6zeM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFp +myPInngiK3BD41VHMWEZ71jFhS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkK +mNEVX58Svnw2Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe +vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep+OkuE6N36B9K +-----END CERTIFICATE----- + +Certplus Class 2 Primary CA +=========================== +-----BEGIN CERTIFICATE----- +MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAwPTELMAkGA1UE +BhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFzcyAyIFByaW1hcnkgQ0EwHhcN +OTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2Vy +dHBsdXMxGzAZBgNVBAMTEkNsYXNzIDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBANxQltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR +5aiRVhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyLkcAbmXuZ +Vg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCdEgETjdyAYveVqUSISnFO +YFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yasH7WLO7dDWWuwJKZtkIvEcupdM5i3y95e +e++U8Rs+yskhwcWYAqqi9lt3m/V+llU0HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRME +CDAGAQH/AgEKMAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJ +YIZIAYb4QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMuY29t +L0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/AN9WM2K191EBkOvD +P9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8yfFC82x/xXp8HVGIutIKPidd3i1R +TtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMRFcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+ +7UCmnYR0ObncHoUW2ikbhiMAybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW +//1IMwrh3KWBkJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7 +l7+ijrRU +-----END CERTIFICATE----- + +DST Root CA X3 +============== +-----BEGIN CERTIFICATE----- +MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/MSQwIgYDVQQK +ExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMTDkRTVCBSb290IENBIFgzMB4X +DTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVowPzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1 +cmUgVHJ1c3QgQ28uMRcwFQYDVQQDEw5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmT +rE4Orz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEqOLl5CjH9 +UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9bxiqKqy69cK3FCxolkHRy +xXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40d +utolucbY38EVAjqr2m7xPi71XAicPNaDaeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0T +AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQ +MA0GCSqGSIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69ikug +dB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXrAvHRAosZy5Q6XkjE +GB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZzR8srzJmwN0jP41ZL9c8PDHIyh8bw +RLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubS +fZGL+T0yjWW06XyxV3bqxbYoOb8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ +-----END CERTIFICATE----- + +DST ACES CA X6 +============== +-----BEGIN CERTIFICATE----- +MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBbMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QxETAPBgNVBAsTCERTVCBBQ0VT +MRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0wMzExMjAyMTE5NThaFw0xNzExMjAyMTE5NTha +MFsxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UE +CxMIRFNUIEFDRVMxFzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPuktKe1jzI +DZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7gLFViYsx+tC3dr5BPTCa +pCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZHfAjIgrrep4c9oW24MFbCswKBXy314pow +GCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4aahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPy +MjwmR/onJALJfh1biEITajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1Ud +EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rkc3Qu +Y29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjtodHRwOi8vd3d3LnRy +dXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMtaW5kZXguaHRtbDAdBgNVHQ4EFgQU +CXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZIhvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V2 +5FYrnJmQ6AgwbN99Pe7lv7UkQIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6t +Fr8hlxCBPeP/h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq +nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpRrscL9yuwNwXs +vFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf29w4LTJxoeHtxMcfrHuBnQfO3 +oKfN5XozNmr6mis= +-----END CERTIFICATE----- + +TURKTRUST Certificate Services Provider Root 1 +============================================== +-----BEGIN CERTIFICATE----- +MIID+zCCAuOgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBtzE/MD0GA1UEAww2VMOcUktUUlVTVCBF +bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGDAJUUjEP +MA0GA1UEBwwGQU5LQVJBMVYwVAYDVQQKDE0oYykgMjAwNSBUw5xSS1RSVVNUIEJpbGdpIMSwbGV0 +acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLjAeFw0wNTA1MTMx +MDI3MTdaFw0xNTAzMjIxMDI3MTdaMIG3MT8wPQYDVQQDDDZUw5xSS1RSVVNUIEVsZWt0cm9uaWsg +U2VydGlmaWthIEhpem1ldCBTYcSfbGF5xLFjxLFzxLExCzAJBgNVBAYMAlRSMQ8wDQYDVQQHDAZB +TktBUkExVjBUBgNVBAoMTShjKSAyMDA1IFTDnFJLVFJVU1QgQmlsZ2kgxLBsZXRpxZ9pbSB2ZSBC +aWxpxZ9pbSBHw7x2ZW5sacSfaSBIaXptZXRsZXJpIEEuxZ4uMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEAylIF1mMD2Bxf3dJ7XfIMYGFbazt0K3gNfUW9InTojAPBxhEqPZW8qZSwu5GX +yGl8hMW0kWxsE2qkVa2kheiVfrMArwDCBRj1cJ02i67L5BuBf5OI+2pVu32Fks66WJ/bMsW9Xe8i +Si9BB35JYbOG7E6mQW6EvAPs9TscyB/C7qju6hJKjRTP8wrgUDn5CDX4EVmt5yLqS8oUBt5CurKZ +8y1UiBAG6uEaPj1nH/vO+3yC6BFdSsG5FOpU2WabfIl9BJpiyelSPJ6c79L1JuTm5Rh8i27fbMx4 +W09ysstcP4wFjdFMjK2Sx+F4f2VsSQZQLJ4ywtdKxnWKWU51b0dewQIDAQABoxAwDjAMBgNVHRME +BTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQAV9VX/N5aAWSGk/KEVTCD21F/aAyT8z5Aa9CEKmu46 +sWrv7/hg0Uw2ZkUd82YCdAR7kjCo3gp2D++Vbr3JN+YaDayJSFvMgzbC9UZcWYJWtNX+I7TYVBxE +q8Sn5RTOPEFhfEPmzcSBCYsk+1Ql1haolgxnB2+zUEfjHCQo3SqYpGH+2+oSN7wBGjSFvW5P55Fy +B0SFHljKVETd96y5y4khctuPwGkplyqjrhgjlxxBKot8KsF8kOipKMDTkcatKIdAaLX/7KfS0zgY +nNN9aV3wxqUeJBujR/xpB2jn5Jq07Q+hh4cCzofSSE7hvP/L8XKSRGQDJereW26fyfJOrN3H +-----END CERTIFICATE----- + +TURKTRUST Certificate Services Provider Root 2 +============================================== +-----BEGIN CERTIFICATE----- +MIIEPDCCAySgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvjE/MD0GA1UEAww2VMOcUktUUlVTVCBF +bGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJUUjEP +MA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUg +QmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLiAoYykgS2FzxLFtIDIwMDUwHhcN +MDUxMTA3MTAwNzU3WhcNMTUwOTE2MTAwNzU3WjCBvjE/MD0GA1UEAww2VMOcUktUUlVTVCBFbGVr +dHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJUUjEPMA0G +A1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmls +acWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLiAoYykgS2FzxLFtIDIwMDUwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCpNn7DkUNMwxmYCMjHWHtPFoylzkkBH3MOrHUTpvqe +LCDe2JAOCtFp0if7qnefJ1Il4std2NiDUBd9irWCPwSOtNXwSadktx4uXyCcUHVPr+G1QRT0mJKI +x+XlZEdhR3n9wFHxwZnn3M5q+6+1ATDcRhzviuyV79z/rxAc653YsKpqhRgNF8k+v/Gb0AmJQv2g +QrSdiVFVKc8bcLyEVK3BEx+Y9C52YItdP5qtygy/p1Zbj3e41Z55SZI/4PGXJHpsmxcPbe9TmJEr +5A++WXkHeLuXlfSfadRYhwqp48y2WBmfJiGxxFmNskF1wK1pzpwACPI2/z7woQ8arBT9pmAPAgMB +AAGjQzBBMB0GA1UdDgQWBBTZN7NOBf3Zz58SFq62iS/rJTqIHDAPBgNVHQ8BAf8EBQMDBwYAMA8G +A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAHJglrfJ3NgpXiOFX7KzLXb7iNcX/ntt +Rbj2hWyfIvwqECLsqrkw9qtY1jkQMZkpAL2JZkH7dN6RwRgLn7Vhy506vvWolKMiVW4XSf/SKfE4 +Jl3vpao6+XF75tpYHdN0wgH6PmlYX63LaL4ULptswLbcoCb6dxriJNoaN+BnrdFzgw2lGh1uEpJ+ +hGIAF728JRhX8tepb1mIvDS3LoV4nZbcFMMsilKbloxSZj2GFotHuFEJjOp9zYhys2AzsfAKRO8P +9Qk3iCQOLGsgOqL6EfJANZxEaGM7rDNvY7wsu/LSy3Z9fYjYHcgFHW68lKlmjHdxx/qR+i9Rnuk5 +UrbnBEI= +-----END CERTIFICATE----- + +SwissSign Gold CA - G2 +====================== +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +SwissSign Silver CA - G2 +======================== +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority +======================================== +-----BEGIN CERTIFICATE----- +MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQG +EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMoR2VvVHJ1c3QgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjExMjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgx +CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQ +cmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9AWbK7hWN +b6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjAZIVcFU2Ix7e64HXprQU9 +nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE07e9GceBrAqg1cmuXm2bgyxx5X9gaBGge +RwLmnWDiNpcB3841kt++Z8dtd1k7j53WkBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGt +tm/81w7a4DSwDRp35+MImO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD +AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJKoZI +hvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ16CePbJC/kRYkRj5K +Ts4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl4b7UVXGYNTq+k+qurUKykG/g/CFN +NWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6KoKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHa +Floxt/m0cYASSJlyc1pZU8FjUjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG +1riR/aYNKxoUAT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= +-----END CERTIFICATE----- + +thawte Primary Root CA +====================== +-----BEGIN CERTIFICATE----- +MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCBqTELMAkGA1UE +BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 +aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3 +MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwg +SW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMv +KGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNVBAMT +FnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCs +oPD7gFnUnMekz52hWXMJEEUMDSxuaPFsW0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ +1CRfBsDMRJSUjQJib+ta3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGc +q/gcfomk6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6Sk/K +aAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94JNqR32HuHUETVPm4p +afs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYD +VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XPr87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUF +AAOCAQEAeRHAS7ORtvzw6WfUDW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeE +uzLlQRHAd9mzYJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX +xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2/qxAeeWsEG89 +jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/LHbTY5xZ3Y+m4Q6gLkH3LpVH +z7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7jVaMaA== +-----END CERTIFICATE----- + +VeriSign Class 3 Public Primary Certification Authority - G5 +============================================================ +-----BEGIN CERTIFICATE----- +MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCByjELMAkGA1UE +BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO +ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk +IHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRp +ZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCB +yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln +biBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2lnbiwgSW5jLiAtIEZvciBh +dXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmlt +YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQCvJAgIKXo1nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKz +j/i5Vbext0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIzSdhD +Y2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQGBO+QueQA5N06tRn/ +Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+rCpSx4/VBEnkjWNHiDxpg8v+R70r +fk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/ +BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2Uv +Z2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy +aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKvMzEzMA0GCSqG +SIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzEp6B4Eq1iDkVwZMXnl2YtmAl+ +X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKE +KQsTb47bDN0lAtukixlE0kF6BWlKWE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiC +Km0oHw0LxOXnGiYZ4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vE +ZV8NhnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq +-----END CERTIFICATE----- + +SecureTrust CA +============== +-----BEGIN CERTIFICATE----- +MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBIMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xFzAVBgNVBAMTDlNlY3VyZVRy +dXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIzMTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAe +BgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQX +OZEzZum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO0gMdA+9t +DWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIaowW8xQmxSPmjL8xk037uH +GFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b +01k/unK8RCSc43Oz969XL0Imnal0ugBS8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmH +ursCAwEAAaOBnTCBmjATBgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/ +BAUwAwEB/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCegJYYj +aHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ +KoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt36Z3q059c4EVlew3KW+JwULKUBRSu +SceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHf +mbx8IVQr5Fiiu1cprp6poxkmD5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZ +nMUFdAvnZyPSCPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR +3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE= +-----END CERTIFICATE----- + +Secure Global CA +================ +-----BEGIN CERTIFICATE----- +MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQG +EwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBH +bG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkxMjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEg +MB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwg +Q0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jx +YDiJiQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa/FHtaMbQ +bqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJjnIFHovdRIWCQtBJwB1g +8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnIHmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYV +HDGA76oYa8J719rO+TMg1fW9ajMtgQT7sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi +0XPnj3pDAgMBAAGjgZ0wgZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud +EwEB/wQFMAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCswKaAn +oCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsGAQQBgjcVAQQDAgEA +MA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0LURYD7xh8yOOvaliTFGCRsoTciE6+ +OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXOH0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cn +CDpOGR86p1hcF895P4vkp9MmI50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/5 +3CYNv6ZHdAbYiNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc +f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW +-----END CERTIFICATE----- + +COMODO Certification Authority +============================== +-----BEGIN CERTIFICATE----- +MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCBgTELMAkGA1UE +BhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgG +A1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNVBAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1 +dGhvcml0eTAeFw0wNjEyMDEwMDAwMDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEb +MBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFD +T01PRE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3UcEbVASY06m/weaKXTuH ++7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI2GqGd0S7WWaXUF601CxwRM/aN5VCaTww +xHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV +4EajcNxo2f8ESIl33rXp+2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA +1KGzqSX+DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5OnKVI +rLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW/zAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6gPKA6hjhodHRwOi8vY3JsLmNvbW9k +b2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9uQXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOC +AQEAPpiem/Yb6dc5t3iuHXIYSdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CP +OGEIqB6BCsAvIC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/ +RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4zJVSk/BwJVmc +IGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5ddBA6+C4OmF4O5MBKgxTMVBbkN ++8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IBZQ== +-----END CERTIFICATE----- + +Network Solutions Certificate Authority +======================================= +-----BEGIN CERTIFICATE----- +MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBiMQswCQYDVQQG +EwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydOZXR3b3Jr +IFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMx +MjM1OTU5WjBiMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu +MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwzc7MEL7xx +jOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPPOCwGJgl6cvf6UDL4wpPT +aaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rlmGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXT +crA/vGp97Eh/jcOrqnErU2lBUzS1sLnFBgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc +/Qzpf14Dl847ABSHJ3A4qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMB +AAGjgZcwgZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwubmV0c29sc3NsLmNv +bS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3JpdHkuY3JsMA0GCSqGSIb3DQEBBQUA +A4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc86fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q +4LqILPxFzBiwmZVRDuwduIj/h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/ +GGUsyfJj4akH/nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv +wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHNpGxlaKFJdlxD +ydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey +-----END CERTIFICATE----- + +WellsSecure Public Root Certificate Authority +============================================= +-----BEGIN CERTIFICATE----- +MIIEvTCCA6WgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoM +F1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYw +NAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcN +MDcxMjEzMTcwNzU0WhcNMjIxMjE0MDAwNzU0WjCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dl +bGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYD +VQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDub7S9eeKPCCGeOARBJe+rWxxTkqxtnt3CxC5FlAM1 +iGd0V+PfjLindo8796jE2yljDpFoNoqXjopxaAkH5OjUDk/41itMpBb570OYj7OeUt9tkTmPOL13 +i0Nj67eT/DBMHAGTthP796EfvyXhdDcsHqRePGj4S78NuR4uNuip5Kf4D8uCdXw1LSLWwr8L87T8 +bJVhHlfXBIEyg1J55oNjz7fLY4sR4r1e6/aN7ZVyKLSsEmLpSjPmgzKuBXWVvYSV2ypcm44uDLiB +K0HmOFafSZtsdvqKXfcBeYF8wYNABf5x/Qw/zE5gCQ5lRxAvAcAFP4/4s0HvWkJ+We/SlwxlAgMB +AAGjggE0MIIBMDAPBgNVHRMBAf8EBTADAQH/MDkGA1UdHwQyMDAwLqAsoCqGKGh0dHA6Ly9jcmwu +cGtpLndlbGxzZmFyZ28uY29tL3dzcHJjYS5jcmwwDgYDVR0PAQH/BAQDAgHGMB0GA1UdDgQWBBQm +lRkQ2eihl5H/3BnZtQQ+0nMKajCBsgYDVR0jBIGqMIGngBQmlRkQ2eihl5H/3BnZtQQ+0nMKaqGB +i6SBiDCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRww +GgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMg +Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCAQEwDQYJKoZIhvcNAQEFBQADggEBALkVsUSRzCPI +K0134/iaeycNzXK7mQDKfGYZUMbVmO2rvwNa5U3lHshPcZeG1eMd/ZDJPHV3V3p9+N701NX3leZ0 +bh08rnyd2wIDBSxxSyU+B+NemvVmFymIGjifz6pBA4SXa5M4esowRBskRDPQ5NHcKDj0E0M1NSlj +qHyita04pO2t/caaH/+Xc/77szWnk4bGdpEA5qxRFsQnMlzbc9qlk1eOPm01JghZ1edE13YgY+es +E2fDbbFwRnzVlhE9iW9dqKHrjQrawx0zbKPqZxmamX9LPYNRKh3KL4YMon4QLSvUFpULB6ouFJJJ +tylv2G0xffX8oRAHh84vWdw+WNs= +-----END CERTIFICATE----- + +COMODO ECC Certification Authority +================================== +-----BEGIN CERTIFICATE----- +MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTELMAkGA1UEBhMC +R0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UE +ChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBB +dXRob3JpdHkwHhcNMDgwMzA2MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0Ix +GzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR +Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRo +b3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSRFtSrYpn1PlILBs5BAH+X +4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0JcfRK9ChQtP6IHG4/bC8vCVlbpVsLM5ni +wz2J+Wos77LTBumjQjBAMB0GA1UdDgQWBBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8E +BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VG +FAkK+qDmfQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdvGDeA +U/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= +-----END CERTIFICATE----- + +IGC/A +===== +-----BEGIN CERTIFICATE----- +MIIEAjCCAuqgAwIBAgIFORFFEJQwDQYJKoZIhvcNAQEFBQAwgYUxCzAJBgNVBAYTAkZSMQ8wDQYD +VQQIEwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVE +Q1NTSTEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZy +MB4XDTAyMTIxMzE0MjkyM1oXDTIwMTAxNzE0MjkyMlowgYUxCzAJBgNVBAYTAkZSMQ8wDQYDVQQI +EwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVEQ1NT +STEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZyMIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsh/R0GLFMzvABIaIs9z4iPf930Pfeo2aSVz2 +TqrMHLmh6yeJ8kbpO0px1R2OLc/mratjUMdUC24SyZA2xtgv2pGqaMVy/hcKshd+ebUyiHDKcMCW +So7kVc0dJ5S/znIq7Fz5cyD+vfcuiWe4u0dzEvfRNWk68gq5rv9GQkaiv6GFGvm/5P9JhfejcIYy +HF2fYPepraX/z9E0+X1bF8bc1g4oa8Ld8fUzaJ1O/Id8NhLWo4DoQw1VYZTqZDdH6nfK0LJYBcNd +frGoRpAxVs5wKpayMLh35nnAvSk7/ZR3TL0gzUEl4C7HG7vupARB0l2tEmqKm0f7yd1GQOGdPDPQ +tQIDAQABo3cwdTAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBRjAVBgNVHSAEDjAMMAoGCCqB +egF5AQEBMB0GA1UdDgQWBBSjBS8YYFDCiQrdKyFP/45OqDAxNjAfBgNVHSMEGDAWgBSjBS8YYFDC +iQrdKyFP/45OqDAxNjANBgkqhkiG9w0BAQUFAAOCAQEABdwm2Pp3FURo/C9mOnTgXeQp/wYHE4RK +q89toB9RlPhJy3Q2FLwV3duJL92PoF189RLrn544pEfMs5bZvpwlqwN+Mw+VgQ39FuCIvjfwbF3Q +MZsyK10XZZOYYLxuj7GoPB7ZHPOpJkL5ZB3C55L29B5aqhlSXa/oovdgoPaN8In1buAKBQGVyYsg +Crpa/JosPL3Dt8ldeCUFP1YUmwza+zpI/pdpXsoQhvdOlgQITeywvl3cO45Pwf2aNjSaTFR+FwNI +lQgRHAdvhQh+XU3Endv7rs6y0bO4g2wdsrN58dhwmX7wEwLOXt1R0982gaEbeC9xs/FZTEYYKKuF +0mBWWg== +-----END CERTIFICATE----- + +Security Communication EV RootCA1 +================================= +-----BEGIN CERTIFICATE----- +MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDElMCMGA1UEChMc +U0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMhU2VjdXJpdHkgQ29tbXVuaWNh +dGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIzMloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UE +BhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNl +Y3VyaXR5IENvbW11bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSERMqm4miO +/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gOzXppFodEtZDkBp2uoQSX +WHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4z +ZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDFMxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4 +bepJz11sS6/vmsJWXMY1VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK +9U2vP9eCOKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqG +SIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HWtWS3irO4G8za+6xm +iEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZq51ihPZRwSzJIxXYKLerJRO1RuGG +Av8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDbEJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnW +mHyojf6GPgcWkuF75x3sM3Z+Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEW +T1MKZPlO9L9OVL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490 +-----END CERTIFICATE----- + +OISTE WISeKey Global Root GA CA +=============================== +-----BEGIN CERTIFICATE----- +MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCBijELMAkGA1UE +BhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHlyaWdodCAoYykgMjAwNTEiMCAG +A1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBH +bG9iYWwgUm9vdCBHQSBDQTAeFw0wNTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYD +VQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIw +IAYDVQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5 +IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy0+zAJs9 +Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxRVVuuk+g3/ytr6dTqvirdqFEr12bDYVxg +Asj1znJ7O7jyTmUIms2kahnBAbtzptf2w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbD +d50kc3vkDIzh2TbhmYsFmQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ +/yxViJGg4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t94B3R +LoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw +AwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQwEAYJKwYBBAGCNxUBBAMCAQAwDQYJ +KoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOxSPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vIm +MMkQyh2I+3QZH4VFvbBsUfk2ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4 ++vg1YFkCExh8vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa +hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZiFj4A4xylNoEY +okxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ/L7fCg0= +-----END CERTIFICATE----- + +Microsec e-Szigno Root CA +========================= +-----BEGIN CERTIFICATE----- +MIIHqDCCBpCgAwIBAgIRAMy4579OKRr9otxmpRwsDxEwDQYJKoZIhvcNAQEFBQAwcjELMAkGA1UE +BhMCSFUxETAPBgNVBAcTCEJ1ZGFwZXN0MRYwFAYDVQQKEw1NaWNyb3NlYyBMdGQuMRQwEgYDVQQL +EwtlLVN6aWdubyBDQTEiMCAGA1UEAxMZTWljcm9zZWMgZS1Temlnbm8gUm9vdCBDQTAeFw0wNTA0 +MDYxMjI4NDRaFw0xNzA0MDYxMjI4NDRaMHIxCzAJBgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVz +dDEWMBQGA1UEChMNTWljcm9zZWMgTHRkLjEUMBIGA1UECxMLZS1Temlnbm8gQ0ExIjAgBgNVBAMT +GU1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB +AQDtyADVgXvNOABHzNuEwSFpLHSQDCHZU4ftPkNEU6+r+ICbPHiN1I2uuO/TEdyB5s87lozWbxXG +d36hL+BfkrYn13aaHUM86tnsL+4582pnS4uCzyL4ZVX+LMsvfUh6PXX5qqAnu3jCBspRwn5mS6/N +oqdNAoI/gqyFxuEPkEeZlApxcpMqyabAvjxWTHOSJ/FrtfX9/DAFYJLG65Z+AZHCabEeHXtTRbjc +QR/Ji3HWVBTji1R4P770Yjtb9aPs1ZJ04nQw7wHb4dSrmZsqa/i9phyGI0Jf7Enemotb9HI6QMVJ +PqW+jqpx62z69Rrkav17fVVA71hu5tnVvCSrwe+3AgMBAAGjggQ3MIIEMzBnBggrBgEFBQcBAQRb +MFkwKAYIKwYBBQUHMAGGHGh0dHBzOi8vcmNhLmUtc3ppZ25vLmh1L29jc3AwLQYIKwYBBQUHMAKG +IWh0dHA6Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNydDAPBgNVHRMBAf8EBTADAQH/MIIBcwYD +VR0gBIIBajCCAWYwggFiBgwrBgEEAYGoGAIBAQEwggFQMCgGCCsGAQUFBwIBFhxodHRwOi8vd3d3 +LmUtc3ppZ25vLmh1L1NaU1ovMIIBIgYIKwYBBQUHAgIwggEUHoIBEABBACAAdABhAG4A+gBzAO0A +dAB2AOEAbgB5ACAA6QByAHQAZQBsAG0AZQB6AOkAcwDpAGgAZQB6ACAA6QBzACAAZQBsAGYAbwBn +AGEAZADhAHMA4QBoAG8AegAgAGEAIABTAHoAbwBsAGcA4QBsAHQAYQB0APMAIABTAHoAbwBsAGcA +4QBsAHQAYQB0AOEAcwBpACAAUwB6AGEAYgDhAGwAeQB6AGEAdABhACAAcwB6AGUAcgBpAG4AdAAg +AGsAZQBsAGwAIABlAGwAagDhAHIAbgBpADoAIABoAHQAdABwADoALwAvAHcAdwB3AC4AZQAtAHMA +egBpAGcAbgBvAC4AaAB1AC8AUwBaAFMAWgAvMIHIBgNVHR8EgcAwgb0wgbqggbeggbSGIWh0dHA6 +Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNybIaBjmxkYXA6Ly9sZGFwLmUtc3ppZ25vLmh1L0NO +PU1pY3Jvc2VjJTIwZS1Temlnbm8lMjBSb290JTIwQ0EsT1U9ZS1Temlnbm8lMjBDQSxPPU1pY3Jv +c2VjJTIwTHRkLixMPUJ1ZGFwZXN0LEM9SFU/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDtiaW5h +cnkwDgYDVR0PAQH/BAQDAgEGMIGWBgNVHREEgY4wgYuBEGluZm9AZS1zemlnbm8uaHWkdzB1MSMw +IQYDVQQDDBpNaWNyb3NlYyBlLVN6aWduw7MgUm9vdCBDQTEWMBQGA1UECwwNZS1TemlnbsOzIEhT +WjEWMBQGA1UEChMNTWljcm9zZWMgS2Z0LjERMA8GA1UEBxMIQnVkYXBlc3QxCzAJBgNVBAYTAkhV +MIGsBgNVHSMEgaQwgaGAFMegSXUWYYTbMUuE0vE3QJDvTtz3oXakdDByMQswCQYDVQQGEwJIVTER +MA8GA1UEBxMIQnVkYXBlc3QxFjAUBgNVBAoTDU1pY3Jvc2VjIEx0ZC4xFDASBgNVBAsTC2UtU3pp +Z25vIENBMSIwIAYDVQQDExlNaWNyb3NlYyBlLVN6aWdubyBSb290IENBghEAzLjnv04pGv2i3Gal +HCwPETAdBgNVHQ4EFgQUx6BJdRZhhNsxS4TS8TdAkO9O3PcwDQYJKoZIhvcNAQEFBQADggEBANMT +nGZjWS7KXHAM/IO8VbH0jgdsZifOwTsgqRy7RlRw7lrMoHfqaEQn6/Ip3Xep1fvj1KcExJW4C+FE +aGAHQzAxQmHl7tnlJNUb3+FKG6qfx1/4ehHqE5MAyopYse7tDk2016g2JnzgOsHVV4Lxdbb9iV/a +86g4nzUGCM4ilb7N1fy+W955a9x6qWVmvrElWl/tftOsRm1M9DKHtCAE4Gx4sHfRhUZLphK3dehK +yVZs15KrnfVJONJPU+NVkBHbmJbGSfI+9J8b4PeI3CVimUTYc78/MPMMNz7UwiiAc7EBt51alhQB +S6kRnSlqLtBdgcDPsiBDxwPgN05dCtxZICU= +-----END CERTIFICATE----- + +Certigna +======== +-----BEGIN CERTIFICATE----- +MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNVBAYTAkZSMRIw +EAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4XDTA3MDYyOTE1MTMwNVoXDTI3 +MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwI +Q2VydGlnbmEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7q +XOEm7RFHYeGifBZ4QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyH +GxnygQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbwzBfsV1/p +ogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q130yGLMLLGq/jj8UEYkg +DncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKf +Irjxwo1p3Po6WAbfAgMBAAGjgbwwgbkwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQ +tCRZvgHyUtVF9lo53BEwZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJ +BgNVBAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzjAQ/J +SP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG9w0BAQUFAAOCAQEA +hQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8hbV6lUmPOEvjvKtpv6zf+EwLHyzs+ +ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFncfca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1klu +PBS1xp81HlDQwY9qcEQCYsuuHWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY +1gkIl2PlwS6wt0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw +WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== +-----END CERTIFICATE----- + +AC Ra\xC3\xADz Certic\xC3\xA1mara S.A. +====================================== +-----BEGIN CERTIFICATE----- +MIIGZjCCBE6gAwIBAgIPB35Sk3vgFeNX8GmMy+wMMA0GCSqGSIb3DQEBBQUAMHsxCzAJBgNVBAYT +AkNPMUcwRQYDVQQKDD5Tb2NpZWRhZCBDYW1lcmFsIGRlIENlcnRpZmljYWNpw7NuIERpZ2l0YWwg +LSBDZXJ0aWPDoW1hcmEgUy5BLjEjMCEGA1UEAwwaQUMgUmHDrXogQ2VydGljw6FtYXJhIFMuQS4w +HhcNMDYxMTI3MjA0NjI5WhcNMzAwNDAyMjE0MjAyWjB7MQswCQYDVQQGEwJDTzFHMEUGA1UECgw+ +U29jaWVkYWQgQ2FtZXJhbCBkZSBDZXJ0aWZpY2FjacOzbiBEaWdpdGFsIC0gQ2VydGljw6FtYXJh +IFMuQS4xIzAhBgNVBAMMGkFDIFJhw616IENlcnRpY8OhbWFyYSBTLkEuMIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEAq2uJo1PMSCMI+8PPUZYILrgIem08kBeGqentLhM0R7LQcNzJPNCN +yu5LF6vQhbCnIwTLqKL85XXbQMpiiY9QngE9JlsYhBzLfDe3fezTf3MZsGqy2IiKLUV0qPezuMDU +2s0iiXRNWhU5cxh0T7XrmafBHoi0wpOQY5fzp6cSsgkiBzPZkc0OnB8OIMfuuzONj8LSWKdf/WU3 +4ojC2I+GdV75LaeHM/J4Ny+LvB2GNzmxlPLYvEqcgxhaBvzz1NS6jBUJJfD5to0EfhcSM2tXSExP +2yYe68yQ54v5aHxwD6Mq0Do43zeX4lvegGHTgNiRg0JaTASJaBE8rF9ogEHMYELODVoqDA+bMMCm +8Ibbq0nXl21Ii/kDwFJnmxL3wvIumGVC2daa49AZMQyth9VXAnow6IYm+48jilSH5L887uvDdUhf +HjlvgWJsxS3EF1QZtzeNnDeRyPYL1epjb4OsOMLzP96a++EjYfDIJss2yKHzMI+ko6Kh3VOz3vCa +Mh+DkXkwwakfU5tTohVTP92dsxA7SH2JD/ztA/X7JWR1DhcZDY8AFmd5ekD8LVkH2ZD6mq093ICK +5lw1omdMEWux+IBkAC1vImHFrEsm5VoQgpukg3s0956JkSCXjrdCx2bD0Omk1vUgjcTDlaxECp1b +czwmPS9KvqfJpxAe+59QafMCAwEAAaOB5jCB4zAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE +AwIBBjAdBgNVHQ4EFgQU0QnQ6dfOeXRU+Tows/RtLAMDG2gwgaAGA1UdIASBmDCBlTCBkgYEVR0g +ADCBiTArBggrBgEFBQcCARYfaHR0cDovL3d3dy5jZXJ0aWNhbWFyYS5jb20vZHBjLzBaBggrBgEF +BQcCAjBOGkxMaW1pdGFjaW9uZXMgZGUgZ2FyYW507WFzIGRlIGVzdGUgY2VydGlmaWNhZG8gc2Ug +cHVlZGVuIGVuY29udHJhciBlbiBsYSBEUEMuMA0GCSqGSIb3DQEBBQUAA4ICAQBclLW4RZFNjmEf +AygPU3zmpFmps4p6xbD/CHwso3EcIRNnoZUSQDWDg4902zNc8El2CoFS3UnUmjIz75uny3XlesuX +EpBcunvFm9+7OSPI/5jOCk0iAUgHforA1SBClETvv3eiiWdIG0ADBaGJ7M9i4z0ldma/Jre7Ir5v +/zlXdLp6yQGVwZVR6Kss+LGGIOk/yzVb0hfpKv6DExdA7ohiZVvVO2Dpezy4ydV/NgIlqmjCMRW3 +MGXrfx1IebHPOeJCgBbT9ZMj/EyXyVo3bHwi2ErN0o42gzmRkBDI8ck1fj+404HGIGQatlDCIaR4 +3NAvO2STdPCWkPHv+wlaNECW8DYSwaN0jJN+Qd53i+yG2dIPPy3RzECiiWZIHiCznCNZc6lEc7wk +eZBWN7PGKX6jD/EpOe9+XCgycDWs2rjIdWb8m0w5R44bb5tNAlQiM+9hup4phO9OSzNHdpdqy35f +/RWmnkJDW2ZaiogN9xa5P1FlK2Zqi9E4UqLWRhH6/JocdJ6PlwsCT2TG9WjTSy3/pDceiz+/RL5h +RqGEPQgnTIEgd4kI6mdAXmwIUV80WoyWaM3X94nCHNMyAK9Sy9NgWyo6R35rMDOhYil/SrnhLecU +Iw4OGEfhefwVVdCx/CVxY3UzHCMrr1zZ7Ud3YA47Dx7SwNxkBYn8eNZcLCZDqQ== +-----END CERTIFICATE----- + +TC TrustCenter Class 2 CA II +============================ +-----BEGIN CERTIFICATE----- +MIIEqjCCA5KgAwIBAgIOLmoAAQACH9dSISwRXDswDQYJKoZIhvcNAQEFBQAwdjELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNVBAsTGVRDIFRydXN0Q2VudGVy +IENsYXNzIDIgQ0ExJTAjBgNVBAMTHFRDIFRydXN0Q2VudGVyIENsYXNzIDIgQ0EgSUkwHhcNMDYw +MTEyMTQzODQzWhcNMjUxMjMxMjI1OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1 +c3RDZW50ZXIgR21iSDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQTElMCMGA1UE +AxMcVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBAKuAh5uO8MN8h9foJIIRszzdQ2Lu+MNF2ujhoF/RKrLqk2jftMjWQ+nEdVl//OEd+DFw +IxuInie5e/060smp6RQvkL4DUsFJzfb95AhmC1eKokKguNV/aVyQMrKXDcpK3EY+AlWJU+MaWss2 +xgdW94zPEfRMuzBwBJWl9jmM/XOBCH2JXjIeIqkiRUuwZi4wzJ9l/fzLganx4Duvo4bRierERXlQ +Xa7pIXSSTYtZgo+U4+lK8edJsBTj9WLL1XK9H7nSn6DNqPoByNkN39r8R52zyFTfSUrxIan+GE7u +SNQZu+995OKdy1u2bv/jzVrndIIFuoAlOMvkaZ6vQaoahPUCAwEAAaOCATQwggEwMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTjq1RMgKHbVkO3kUrL84J6E1wIqzCB +7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRydXN0Y2VudGVyLmRlL2NybC92Mi90 +Y19jbGFzc18yX2NhX0lJLmNybIaBn2xkYXA6Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBU +cnVzdENlbnRlciUyMENsYXNzJTIwMiUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21i +SCxPVT1yb290Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u +TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEAjNfffu4bgBCzg/XbEeprS6iSGNn3Bzn1LL4G +dXpoUxUc6krtXvwjshOg0wn/9vYua0Fxec3ibf2uWWuFHbhOIprtZjluS5TmVfwLG4t3wVMTZonZ +KNaL80VKY7f9ewthXbhtvsPcW3nS7Yblok2+XnR8au0WOB9/WIFaGusyiC2y8zl3gK9etmF1Kdsj +TYjKUCjLhdLTEKJZbtOTVAB6okaVhgWcqRmY5TFyDADiZ9lA4CQze28suVyrZZ0srHbqNZn1l7kP +JOzHdiEoZa5X6AeIdUpWoNIFOqTmjZKILPPy4cHGYdtBxceb9w4aUUXCYWvcZCcXjFq32nQozZfk +vQ== +-----END CERTIFICATE----- + +TC TrustCenter Class 3 CA II +============================ +-----BEGIN CERTIFICATE----- +MIIEqjCCA5KgAwIBAgIOSkcAAQAC5aBd1j8AUb8wDQYJKoZIhvcNAQEFBQAwdjELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNVBAsTGVRDIFRydXN0Q2VudGVy +IENsYXNzIDMgQ0ExJTAjBgNVBAMTHFRDIFRydXN0Q2VudGVyIENsYXNzIDMgQ0EgSUkwHhcNMDYw +MTEyMTQ0MTU3WhcNMjUxMjMxMjI1OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1 +c3RDZW50ZXIgR21iSDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQTElMCMGA1UE +AxMcVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBALTgu1G7OVyLBMVMeRwjhjEQY0NVJz/GRcekPewJDRoeIMJWHt4bNwcwIi9v8Qbxq63W +yKthoy9DxLCyLfzDlml7forkzMA5EpBCYMnMNWju2l+QVl/NHE1bWEnrDgFPZPosPIlY2C8u4rBo +6SI7dYnWRBpl8huXJh0obazovVkdKyT21oQDZogkAHhg8fir/gKya/si+zXmFtGt9i4S5Po1auUZ +uV3bOx4a+9P/FRQI2AlqukWdFHlgfa9Aigdzs5OW03Q0jTo3Kd5c7PXuLjHCINy+8U9/I1LZW+Jk +2ZyqBwi1Rb3R0DHBq1SfqdLDYmAD8bs5SpJKPQq5ncWg/jcCAwEAAaOCATQwggEwMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTUovyfs8PYA9NXXAek0CSnwPIA1DCB +7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRydXN0Y2VudGVyLmRlL2NybC92Mi90 +Y19jbGFzc18zX2NhX0lJLmNybIaBn2xkYXA6Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBU +cnVzdENlbnRlciUyMENsYXNzJTIwMyUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21i +SCxPVT1yb290Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u +TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEANmDkcPcGIEPZIxpC8vijsrlNirTzwppVMXzE +O2eatN9NDoqTSheLG43KieHPOh6sHfGcMrSOWXaiQYUlN6AT0PV8TtXqluJucsG7Kv5sbviRmEb8 +yRtXW+rIGjs/sFGYPAfaLFkB2otE6OF0/ado3VS6g0bsyEa1+K+XwDsJHI/OcpY9M1ZwvJbL2NV9 +IJqDnxrcOfHFcqMRA/07QlIp2+gB95tejNaNhk4Z+rwcvsUhpYeeeC422wlxo3I0+GzjBgnyXlal +092Y+tTmBvTwtiBjS+opvaqCZh77gaqnN60TGOaSw4HBM7uIHqHn4rS9MWwOUT1v+5ZWgOI2F9Hc +5A== +-----END CERTIFICATE----- + +TC TrustCenter Universal CA I +============================= +-----BEGIN CERTIFICATE----- +MIID3TCCAsWgAwIBAgIOHaIAAQAC7LdggHiNtgYwDQYJKoZIhvcNAQEFBQAweTELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNVBAsTG1RDIFRydXN0Q2VudGVy +IFVuaXZlcnNhbCBDQTEmMCQGA1UEAxMdVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBIEkwHhcN +MDYwMzIyMTU1NDI4WhcNMjUxMjMxMjI1OTU5WjB5MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMg +VHJ1c3RDZW50ZXIgR21iSDEkMCIGA1UECxMbVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBMSYw +JAYDVQQDEx1UQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0EgSTCCASIwDQYJKoZIhvcNAQEBBQAD +ggEPADCCAQoCggEBAKR3I5ZEr5D0MacQ9CaHnPM42Q9e3s9B6DGtxnSRJJZ4Hgmgm5qVSkr1YnwC +qMqs+1oEdjneX/H5s7/zA1hV0qq34wQi0fiU2iIIAI3TfCZdzHd55yx4Oagmcw6iXSVphU9VDprv +xrlE4Vc93x9UIuVvZaozhDrzznq+VZeujRIPFDPiUHDDSYcTvFHe15gSWu86gzOSBnWLknwSaHtw +ag+1m7Z3W0hZneTvWq3zwZ7U10VOylY0Ibw+F1tvdwxIAUMpsN0/lm7mlaoMwCC2/T42J5zjXM9O +gdwZu5GQfezmlwQek8wiSdeXhrYTCjxDI3d+8NzmzSQfO4ObNDqDNOMCAwEAAaNjMGEwHwYDVR0j +BBgwFoAUkqR1LKSevoFE63n8isWVpesQdXMwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AYYwHQYDVR0OBBYEFJKkdSyknr6BROt5/IrFlaXrEHVzMA0GCSqGSIb3DQEBBQUAA4IBAQAo0uCG +1eb4e/CX3CJrO5UUVg8RMKWaTzqwOuAGy2X17caXJ/4l8lfmXpWMPmRgFVp/Lw0BxbFg/UU1z/Cy +vwbZ71q+s2IhtNerNXxTPqYn8aEt2hojnczd7Dwtnic0XQ/CNnm8yUpiLe1r2X1BQ3y2qsrtYbE3 +ghUJGooWMNjsydZHcnhLEEYUjl8Or+zHL6sQ17bxbuyGssLoDZJz3KL0Dzq/YSMQiZxIQG5wALPT +ujdEWBF6AmqI8Dc08BnprNRlc/ZpjGSUOnmFKbAWKwyCPwacx/0QK54PLLae4xW/2TYcuiUaUj0a +7CIMHOCkoj3w6DnPgcB77V0fb8XQC9eY +-----END CERTIFICATE----- + +Deutsche Telekom Root CA 2 +========================== +-----BEGIN CERTIFICATE----- +MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMT +RGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEG +A1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5 +MjM1OTAwWjBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0G +A1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBS +b290IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEUha88EOQ5 +bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhCQN/Po7qCWWqSG6wcmtoI +KyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1MjwrrFDa1sPeg5TKqAyZMg4ISFZbavva4VhY +AUlfckE8FQYBjl2tqriTtM2e66foai1SNNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aK +Se5TBY8ZTNXeWHmb0mocQqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTV +jlsB9WoHtxa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAPBgNV +HRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAlGRZrTlk5ynr +E/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756AbrsptJh6sTtU6zkXR34ajgv8HzFZMQSy +zhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpaIzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8 +rZ7/gFnkm0W09juwzTkZmDLl6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4G +dyd1Lx+4ivn+xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU +Cm26OWMohpLzGITY+9HPBVZkVw== +-----END CERTIFICATE----- + +ComSign Secured CA +================== +-----BEGIN CERTIFICATE----- +MIIDqzCCApOgAwIBAgIRAMcoRwmzuGxFjB36JPU2TukwDQYJKoZIhvcNAQEFBQAwPDEbMBkGA1UE +AxMSQ29tU2lnbiBTZWN1cmVkIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQGEwJJTDAeFw0w +NDAzMjQxMTM3MjBaFw0yOTAzMTYxNTA0NTZaMDwxGzAZBgNVBAMTEkNvbVNpZ24gU2VjdXJlZCBD +QTEQMA4GA1UEChMHQ29tU2lnbjELMAkGA1UEBhMCSUwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw +ggEKAoIBAQDGtWhfHZQVw6QIVS3joFd67+l0Kru5fFdJGhFeTymHDEjWaueP1H5XJLkGieQcPOqs +49ohgHMhCu95mGwfCP+hUH3ymBvJVG8+pSjsIQQPRbsHPaHA+iqYHU4Gk/v1iDurX8sWv+bznkqH +7Rnqwp9D5PGBpX8QTz7RSmKtUxvLg/8HZaWSLWapW7ha9B20IZFKF3ueMv5WJDmyVIRD9YTC2LxB +kMyd1mja6YJQqTtoz7VdApRgFrFD2UNd3V2Hbuq7s8lr9gOUCXDeFhF6K+h2j0kQmHe5Y1yLM5d1 +9guMsqtb3nQgJT/j8xH5h2iGNXHDHYwt6+UarA9z1YJZQIDTAgMBAAGjgacwgaQwDAYDVR0TBAUw +AwEB/zBEBgNVHR8EPTA7MDmgN6A1hjNodHRwOi8vZmVkaXIuY29tc2lnbi5jby5pbC9jcmwvQ29t +U2lnblNlY3VyZWRDQS5jcmwwDgYDVR0PAQH/BAQDAgGGMB8GA1UdIwQYMBaAFMFL7XC29z58ADsA +j8c+DkWfHl3sMB0GA1UdDgQWBBTBS+1wtvc+fAA7AI/HPg5Fnx5d7DANBgkqhkiG9w0BAQUFAAOC +AQEAFs/ukhNQq3sUnjO2QiBq1BW9Cav8cujvR3qQrFHBZE7piL1DRYHjZiM/EoZNGeQFsOY3wo3a +BijJD4mkU6l1P7CW+6tMM1X5eCZGbxs2mPtCdsGCuY7e+0X5YxtiOzkGynd6qDwJz2w2PQ8KRUtp +FhpFfTMDZflScZAmlaxMDPWLkz/MdXSFmLr/YnpNH4n+rr2UAJm/EaXc4HnFFgt9AmEd6oX5AhVP +51qJThRv4zdLhfXBPGHg/QVBspJ/wx2g0K5SZGBrGMYmnNj1ZOQ2GmKfig8+/21OGVZOIJFsnzQz +OjRXUDpvgV4GxvU+fE6OK85lBi5d0ipTdF7Tbieejw== +-----END CERTIFICATE----- + +Cybertrust Global Root +====================== +-----BEGIN CERTIFICATE----- +MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYGA1UEChMPQ3li +ZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBSb290MB4XDTA2MTIxNTA4 +MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQD +ExZDeWJlcnRydXN0IEdsb2JhbCBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA ++Mi8vRRQZhP/8NN57CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW +0ozSJ8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2yHLtgwEZL +AfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iPt3sMpTjr3kfb1V05/Iin +89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNzFtApD0mpSPCzqrdsxacwOUBdrsTiXSZT +8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAYXSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAP +BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2 +MDSgMqAwhi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3JsMB8G +A1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUAA4IBAQBW7wojoFRO +lZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMjWqd8BfP9IjsO0QbE2zZMcwSO5bAi +5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUxXOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2 +hO0j9n0Hq0V+09+zv+mKts2oomcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+T +X3EJIrduPuocA06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW +WL1WMRJOEcgh4LMRkWXbtKaIOM5V +-----END CERTIFICATE----- + +ePKI Root Certification Authority +================================= +-----BEGIN CERTIFICATE----- +MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBeMQswCQYDVQQG +EwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0ZC4xKjAoBgNVBAsMIWVQS0kg +Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMx +MjdaMF4xCzAJBgNVBAYTAlRXMSMwIQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEq +MCgGA1UECwwhZVBLSSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAHSyZbCUNs +IZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAhijHyl3SJCRImHJ7K2RKi +lTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3XDZoTM1PRYfl61dd4s5oz9wCGzh1NlDiv +qOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX +12ruOzjjK9SXDrkb5wdJfzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0O +WQqraffAsgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uUWH1+ +ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLSnT0IFaUQAS2zMnao +lQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pHdmX2Os+PYhcZewoozRrSgx4hxyy/ +vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJipNiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXi +Zo1jDiVN1Rmy5nk3pyKdVDECAwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/Qkqi +MAwGA1UdEwQFMAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH +ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGBuvl2ICO1J2B0 +1GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6YlPwZpVnPDimZI+ymBV3QGypzq +KOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkPJXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdV +xrsStZf0X4OFunHB2WyBEXYKCrC/gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEP +NXubrjlpC2JgQCA2j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+r +GNm65ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUBo2M3IUxE +xJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS/jQ6fbjpKdx2qcgw+BRx +gMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2zGp1iro2C6pSe3VkQw63d4k3jMdXH7Ojy +sP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTEW9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmOD +BCEIZ43ygknQW/2xzQ+DhNQ+IIX3Sj0rnP0qCglN6oH4EZw= +-----END CERTIFICATE----- + +T\xc3\x9c\x42\xC4\xB0TAK UEKAE K\xC3\xB6k Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 - S\xC3\xBCr\xC3\xBCm 3 +============================================================================================================================= +-----BEGIN CERTIFICATE----- +MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRSMRgwFgYDVQQH +DA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJpbGltc2VsIHZlIFRla25vbG9q +aWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSwVEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ry +b25payB2ZSBLcmlwdG9sb2ppIEFyYcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNV +BAsMGkthbXUgU2VydGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUg +S8O2ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAeFw0wNzA4 +MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIxGDAWBgNVBAcMD0dlYnpl +IC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmlsaW1zZWwgdmUgVGVrbm9sb2ppayBBcmHF +n3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBUQUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZl +IEtyaXB0b2xvamkgQXJhxZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2Ft +dSBTZXJ0aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7ZrIFNl +cnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIBIjANBgkqhkiG9w0B +AQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4hgb46ezzb8R1Sf1n68yJMlaCQvEhO +Eav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yKO7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1 +xnnRFDDtG1hba+818qEhTsXOfJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR +6Oqeyjh1jmKwlZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL +hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQIDAQABo0IwQDAd +BgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF +MAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmPNOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4 +N5EY3ATIZJkrGG2AA1nJrvhY0D7twyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLT +y9LQQfMmNkqblWwM7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYh +LBOhgLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5noN+J1q2M +dqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUsyZyQ2uypQjyttgI= +-----END CERTIFICATE----- + +Buypass Class 2 CA 1 +==================== +-----BEGIN CERTIFICATE----- +MIIDUzCCAjugAwIBAgIBATANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3MgQ2xhc3MgMiBDQSAxMB4XDTA2 +MTAxMzEwMjUwOVoXDTE2MTAxMzEwMjUwOVowSzELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBh +c3MgQVMtOTgzMTYzMzI3MR0wGwYDVQQDDBRCdXlwYXNzIENsYXNzIDIgQ0EgMTCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAIs8B0XY9t/mx8q6jUPFR42wWsE425KEHK8T1A9vNkYgxC7M +cXA0ojTTNy7Y3Tp3L8DrKehc0rWpkTSHIln+zNvnma+WwajHQN2lFYxuyHyXA8vmIPLXl18xoS83 +0r7uvqmtqEyeIWZDO6i88wmjONVZJMHCR3axiFyCO7srpgTXjAePzdVBHfCuuCkslFJgNJQ72uA4 +0Z0zPhX0kzLFANq1KWYOOngPIVJfAuWSeyXTkh4vFZ2B5J2O6O+JzhRMVB0cgRJNcKi+EAUXfh/R +uFdV7c27UsKwHnjCTTZoy1YmwVLBvXb3WNVyfh9EdrsAiR0WnVE1703CVu9r4Iw7DekCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUP42aWYv8e3uco684sDntkHGA1sgwDgYDVR0P +AQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQAVGn4TirnoB6NLJzKyQJHyIdFkhb5jatLPgcIV +1Xp+DCmsNx4cfHZSldq1fyOhKXdlyTKdqC5Wq2B2zha0jX94wNWZUYN/Xtm+DKhQ7SLHrQVMdvvt +7h5HZPb3J31cKA9FxVxiXqaakZG3Uxcu3K1gnZZkOb1naLKuBctN518fV4bVIJwo+28TOPX2EZL2 +fZleHwzoq0QkKXJAPTZSr4xYkHPB7GEseaHsh7U/2k3ZIQAw3pDaDtMaSKk+hQsUi4y8QZ5q9w5w +wDX3OaJdZtB7WZ+oRxKaJyOkLY4ng5IgodcVf/EuGO70SH8vf/GhGLWhC5SgYiAynB321O+/TIho +-----END CERTIFICATE----- + +Buypass Class 3 CA 1 +==================== +-----BEGIN CERTIFICATE----- +MIIDUzCCAjugAwIBAgIBAjANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3MgQ2xhc3MgMyBDQSAxMB4XDTA1 +MDUwOTE0MTMwM1oXDTE1MDUwOTE0MTMwM1owSzELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBh +c3MgQVMtOTgzMTYzMzI3MR0wGwYDVQQDDBRCdXlwYXNzIENsYXNzIDMgQ0EgMTCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAKSO13TZKWTeXx+HgJHqTjnmGcZEC4DVC69TB4sSveZn8AKx +ifZgisRbsELRwCGoy+Gb72RRtqfPFfV0gGgEkKBYouZ0plNTVUhjP5JW3SROjvi6K//zNIqeKNc0 +n6wv1g/xpC+9UrJJhW05NfBEMJNGJPO251P7vGGvqaMU+8IXF4Rs4HyI+MkcVyzwPX6UvCWThOia +AJpFBUJXgPROztmuOfbIUxAMZTpHe2DC1vqRycZxbL2RhzyRhkmr8w+gbCZ2Xhysm3HljbybIR6c +1jh+JIAVMYKWsUnTYjdbiAwKYjT+p0h+mbEwi5A3lRyoH6UsjfRVyNvdWQrCrXig9IsCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUOBTmyPCppAP0Tj4io1vy1uCtQHQwDgYDVR0P +AQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQABZ6OMySU9E2NdFm/soT4JXJEVKirZgCFPBdy7 +pYmrEzMqnji3jG8CcmPHc3ceCQa6Oyh7pEfJYWsICCD8igWKH7y6xsL+z27sEzNxZy5p+qksP2bA +EllNC1QCkoS72xLvg3BweMhT+t/Gxv/ciC8HwEmdMldg0/L2mSlf56oBzKwzqBwKu5HEA6BvtjT5 +htOzdlSY9EqBs1OdTUDs5XcTRa9bqh/YL0yCe/4qxFi7T/ye/QNlGioOw6UgFpRreaaiErS7GqQj +el/wroQk5PMr+4okoyeYZdowdXb8GZHo2+ubPzK/QJcHJrrM85SFSnonk8+QQtS4Wxam58tAA915 +-----END CERTIFICATE----- + +EBG Elektronik Sertifika Hizmet Sa\xC4\x9Flay\xc4\xb1\x63\xc4\xb1s\xc4\xb1 +========================================================================== +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +certSIGN ROOT CA +================ +-----BEGIN CERTIFICATE----- +MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYTAlJPMREwDwYD +VQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTAeFw0wNjA3MDQxNzIwMDRa +Fw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UE +CxMQY2VydFNJR04gUk9PVCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7I +JUqOtdu0KBuqV5Do0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHH +rfAQUySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5dRdY4zTW2 +ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQOA7+j0xbm0bqQfWwCHTD +0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwvJoIQ4uNllAoEwF73XVv4EOLQunpL+943 +AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8B +Af8EBAMCAcYwHQYDVR0OBBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IB +AQA+0hyJLjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecYMnQ8 +SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ44gx+FkagQnIl6Z0 +x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6IJd1hJyMctTEHBDa0GpC9oHRxUIlt +vBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNwi/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7Nz +TogVZ96edhBiIL5VaZVDADlN9u6wWk5JRFRYX0KD +-----END CERTIFICATE----- + +CNNIC ROOT +========== +-----BEGIN CERTIFICATE----- +MIIDVTCCAj2gAwIBAgIESTMAATANBgkqhkiG9w0BAQUFADAyMQswCQYDVQQGEwJDTjEOMAwGA1UE +ChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwHhcNMDcwNDE2MDcwOTE0WhcNMjcwNDE2MDcw +OTE0WjAyMQswCQYDVQQGEwJDTjEOMAwGA1UEChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1Qw +ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDTNfc/c3et6FtzF8LRb+1VvG7q6KR5smzD +o+/hn7E7SIX1mlwhIhAsxYLO2uOabjfhhyzcuQxauohV3/2q2x8x6gHx3zkBwRP9SFIhxFXf2tiz +VHa6dLG3fdfA6PZZxU3Iva0fFNrfWEQlMhkqx35+jq44sDB7R3IJMfAw28Mbdim7aXZOV/kbZKKT +VrdvmW7bCgScEeOAH8tjlBAKqeFkgjH5jCftppkA9nCTGPihNIaj3XrCGHn2emU1z5DrvTOTn1Or +czvmmzQgLx3vqR1jGqCA2wMv+SYahtKNu6m+UjqHZ0gNv7Sg2Ca+I19zN38m5pIEo3/PIKe38zrK +y5nLAgMBAAGjczBxMBEGCWCGSAGG+EIBAQQEAwIABzAfBgNVHSMEGDAWgBRl8jGtKvf33VKWCscC +wQ7vptU7ETAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIB/jAdBgNVHQ4EFgQUZfIxrSr3991S +lgrHAsEO76bVOxEwDQYJKoZIhvcNAQEFBQADggEBAEs17szkrr/Dbq2flTtLP1se31cpolnKOOK5 +Gv+e5m4y3R6u6jW39ZORTtpC4cMXYFDy0VwmuYK36m3knITnA3kXr5g9lNvHugDnuL8BV8F3RTIM +O/G0HAiw/VGgod2aHRM2mm23xzy54cXZF/qD1T0VoDy7HgviyJA/qIYM/PmLXoXLT1tLYhFHxUV8 +BS9BsZ4QaRuZluBVeftOhpm4lNqGOGqTo+fLbuXf6iFViZx9fX+Y9QCJ7uOEwFyWtcVG6kbghVW2 +G8kS1sHNzYDzAgE8yGnLRUhj2JTQ7IUOO04RZfSCjKY9ri4ilAnIXOo8gV0WKgOXFlUJ24pBgp5m +mxE= +-----END CERTIFICATE----- + +ApplicationCA - Japanese Government +=================================== +-----BEGIN CERTIFICATE----- +MIIDoDCCAoigAwIBAgIBMTANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJKUDEcMBoGA1UEChMT +SmFwYW5lc2UgR292ZXJubWVudDEWMBQGA1UECxMNQXBwbGljYXRpb25DQTAeFw0wNzEyMTIxNTAw +MDBaFw0xNzEyMTIxNTAwMDBaMEMxCzAJBgNVBAYTAkpQMRwwGgYDVQQKExNKYXBhbmVzZSBHb3Zl +cm5tZW50MRYwFAYDVQQLEw1BcHBsaWNhdGlvbkNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB +CgKCAQEAp23gdE6Hj6UG3mii24aZS2QNcfAKBZuOquHMLtJqO8F6tJdhjYq+xpqcBrSGUeQ3DnR4 +fl+Kf5Sk10cI/VBaVuRorChzoHvpfxiSQE8tnfWuREhzNgaeZCw7NCPbXCbkcXmP1G55IrmTwcrN +wVbtiGrXoDkhBFcsovW8R0FPXjQilbUfKW1eSvNNcr5BViCH/OlQR9cwFO5cjFW6WY2H/CPek9AE +jP3vbb3QesmlOmpyM8ZKDQUXKi17safY1vC+9D/qDihtQWEjdnjDuGWk81quzMKq2edY3rZ+nYVu +nyoKb58DKTCXKB28t89UKU5RMfkntigm/qJj5kEW8DOYRwIDAQABo4GeMIGbMB0GA1UdDgQWBBRU +WssmP3HMlEYNllPqa0jQk/5CdTAOBgNVHQ8BAf8EBAMCAQYwWQYDVR0RBFIwUKROMEwxCzAJBgNV +BAYTAkpQMRgwFgYDVQQKDA/ml6XmnKzlm73mlL/lupwxIzAhBgNVBAsMGuOCouODl+ODquOCseOD +vOOCt+ODp+ODs0NBMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADlqRHZ3ODrs +o2dGD/mLBqj7apAxzn7s2tGJfHrrLgy9mTLnsCTWw//1sogJhyzjVOGjprIIC8CFqMjSnHH2HZ9g +/DgzE+Ge3Atf2hZQKXsvcJEPmbo0NI2VdMV+eKlmXb3KIXdCEKxmJj3ekav9FfBv7WxfEPjzFvYD +io+nEhEMy/0/ecGc/WLuo89UDNErXxc+4z6/wCs+CZv+iKZ+tJIX/COUgb1up8WMwusRRdv4QcmW +dupwX3kSa+SjB1oF7ydJzyGfikwJcGapJsErEU4z0g781mzSDjJkaP+tBXhfAx2o45CsJOAPQKdL +rosot4LKGAfmt1t06SAZf7IbiVQ= +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority - G3 +============================================= +-----BEGIN CERTIFICATE----- +MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UE +BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA4IEdlb1RydXN0 +IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFy +eSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIz +NTk1OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAo +YykgMjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMT +LUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMzCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz+uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5j +K/BGvESyiaHAKAxJcCGVn2TAppMSAmUmhsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdE +c5IiaacDiGydY8hS2pgn5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3C +IShwiP/WJmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exALDmKu +dlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZChuOl1UcCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMR5yo6hTgMdHNxr +2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IBAQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9 +cr5HqQ6XErhK8WTTOd8lNNTBzU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbE +Ap7aDHdlDkQNkv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD +AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUHSJsMC8tJP33s +t/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2Gspki4cErx5z481+oghLrGREt +-----END CERTIFICATE----- + +thawte Primary Root CA - G2 +=========================== +-----BEGIN CERTIFICATE----- +MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDELMAkGA1UEBhMC +VVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMpIDIwMDcgdGhhd3RlLCBJbmMu +IC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3Qg +Q0EgLSBHMjAeFw0wNzExMDUwMDAwMDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEV +MBMGA1UEChMMdGhhd3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBG +b3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAt +IEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/BebfowJPDQfGAFG6DAJS +LSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6papu+7qzcMBniKI11KOasf2twu8x+qi5 +8/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU +mtgAMADna3+FGO6Lts6KDPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUN +G4k8VIZ3KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41oxXZ3K +rr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== +-----END CERTIFICATE----- + +thawte Primary Root CA - G3 +=========================== +-----BEGIN CERTIFICATE----- +MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCBrjELMAkGA1UE +BhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2 +aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIwMDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhv +cml6ZWQgdXNlIG9ubHkxJDAiBgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0w +ODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh +d3RlLCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMTgwNgYD +VQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTEkMCIG +A1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A +MIIBCgKCAQEAsr8nLPvb2FvdeHsbnndmgcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2At +P0LMqmsywCPLLEHd5N/8YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC ++BsUa0Lfb1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS99irY +7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2SzhkGcuYMXDhpxwTW +vGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUkOQIDAQABo0IwQDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJ +KoZIhvcNAQELBQADggEBABpA2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweK +A3rD6z8KLFIWoCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu +t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7cKUGRIjxpp7sC +8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fMm7v/OeZWYdMKp8RcTGB7BXcm +er/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZuMdRAGmI0Nj81Aa6sY6A= +-----END CERTIFICATE----- + +GeoTrust Primary Certification Authority - G2 +============================================= +-----BEGIN CERTIFICATE----- +MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDELMAkGA1UEBhMC +VVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChjKSAyMDA3IEdlb1RydXN0IElu +Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBD +ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1 +OVowgZgxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg +MjAwNyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNVBAMTLUdl +b1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjB2MBAGByqGSM49AgEG +BSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcLSo17VDs6bl8VAsBQps8lL33KSLjHUGMc +KiEIfJo22Av+0SbFWDEwKCXzXV2juLaltJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYD +VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+ +EVXVMAoGCCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGTqQ7m +ndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBuczrD6ogRLQy7rQkgu2 +npaqBA+K +-----END CERTIFICATE----- + +VeriSign Universal Root Certification Authority +=============================================== +-----BEGIN CERTIFICATE----- +MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCBvTELMAkGA1UE +BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBO +ZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVk +IHVzZSBvbmx5MTgwNgYDVQQDEy9WZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9u +IEF1dGhvcml0eTAeFw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJV +UzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv +cmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl +IG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNhbCBSb290IENlcnRpZmljYXRpb24gQXV0 +aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj +1mCOkdeQmIN65lgZOIzF9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGP +MiJhgsWHH26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+HLL72 +9fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN/BMReYTtXlT2NJ8I +AfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPTrJ9VAMf2CGqUuV/c4DPxhGD5WycR +tPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0G +CCsGAQUFBwEMBGEwX6FdoFswWTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2O +a8PPgGrUSBgsexkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud +DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4sAPmLGd75JR3 +Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+seQxIcaBlVZaDrHC1LGmWazx +Y8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTx +P/jgdFcrGJ2BtMQo2pSXpXDrrB2+BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+P +wGZsY6rp2aQW9IHRlRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4 +mJO37M2CYfE45k+XmCpajQ== +-----END CERTIFICATE----- + +VeriSign Class 3 Public Primary Certification Authority - G4 +============================================================ +-----BEGIN CERTIFICATE----- +MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjELMAkGA1UEBhMC +VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3 +b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVz +ZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmlj +YXRpb24gQXV0aG9yaXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjEL +MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBU +cnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRo +b3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8 +Utpkmw4tXNherJI9/gHmGUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGz +rl0Bp3vefLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUwAwEB +/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEw +HzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVyaXNpZ24u +Y29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMWkf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMD +A2gAMGUCMGYhDBgmYFo4e1ZC4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIx +AJw9SDkjOVgaFRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== +-----END CERTIFICATE----- + +NetLock Arany (Class Gold) FÅ‘tanúsítvány +============================================ +-----BEGIN CERTIFICATE----- +MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQGEwJIVTERMA8G +A1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3MDUGA1UECwwuVGFuw7pzw610 +dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBB +cmFueSAoQ2xhc3MgR29sZCkgRsWRdGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgx +MjA2MTUwODIxWjCBpzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxO +ZXRMb2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlmaWNhdGlv +biBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNzIEdvbGQpIEbFkXRhbsO6 +c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxCRec75LbRTDofTjl5Bu +0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrTlF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw +/HpYzY6b7cNGbIRwXdrzAZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAk +H3B5r9s5VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRGILdw +fzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2BJtr+UBdADTHLpl1 +neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAGAQH/AgEEMA4GA1UdDwEB/wQEAwIB +BjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2MU9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwW +qZw8UQCgwBEIBaeZ5m8BiFRhbvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTta +YtOUZcTh5m2C+C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC +bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2FuLjbvrW5Kfna +NwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2XjG4Kvte9nHfRCaexOYNkbQu +dZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= +-----END CERTIFICATE----- + +Staat der Nederlanden Root CA - G2 +================================== +-----BEGIN CERTIFICATE----- +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 +66+KAQ== +-----END CERTIFICATE----- + +CA Disig +======== +-----BEGIN CERTIFICATE----- +MIIEDzCCAvegAwIBAgIBATANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJTSzETMBEGA1UEBxMK +QnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwHhcNMDYw +MzIyMDEzOTM0WhcNMTYwMzIyMDEzOTM0WjBKMQswCQYDVQQGEwJTSzETMBEGA1UEBxMKQnJhdGlz +bGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQCS9jHBfYj9mQGp2HvycXXxMcbzdWb6UShGhJd4NLxs/LxFWYgm +GErENx+hSkS943EE9UQX4j/8SFhvXJ56CbpRNyIjZkMhsDxkovhqFQ4/61HhVKndBpnXmjxUizkD +Pw/Fzsbrg3ICqB9x8y34dQjbYkzo+s7552oftms1grrijxaSfQUMbEYDXcDtab86wYqg6I7ZuUUo +hwjstMoVvoLdtUSLLa2GDGhibYVW8qwUYzrG0ZmsNHhWS8+2rT+MitcE5eN4TPWGqvWP+j1scaMt +ymfraHtuM6kMgiioTGohQBUgDCZbg8KpFhXAJIJdKxatymP2dACw30PEEGBWZ2NFAgMBAAGjgf8w +gfwwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUjbJJaJ1yCCW5wCf1UJNWSEZx+Y8wDgYDVR0P +AQH/BAQDAgEGMDYGA1UdEQQvMC2BE2Nhb3BlcmF0b3JAZGlzaWcuc2uGFmh0dHA6Ly93d3cuZGlz +aWcuc2svY2EwZgYDVR0fBF8wXTAtoCugKYYnaHR0cDovL3d3dy5kaXNpZy5zay9jYS9jcmwvY2Ff +ZGlzaWcuY3JsMCygKqAohiZodHRwOi8vY2EuZGlzaWcuc2svY2EvY3JsL2NhX2Rpc2lnLmNybDAa +BgNVHSAEEzARMA8GDSuBHpGT5goAAAABAQEwDQYJKoZIhvcNAQEFBQADggEBAF00dGFMrzvY/59t +WDYcPQuBDRIrRhCA/ec8J9B6yKm2fnQwM6M6int0wHl5QpNt/7EpFIKrIYwvF/k/Ji/1WcbvgAa3 +mkkp7M5+cTxqEEHA9tOasnxakZzArFvITV734VP/Q3f8nktnbNfzg9Gg4H8l37iYC5oyOGwwoPP/ +CBUz91BKez6jPiCp3C9WgArtQVCwyfTssuMmRAAOb54GvCKWU3BlxFAKRmukLyeBEicTXxChds6K +ezfqwzlhA5WYOudsiCUI/HloDYd9Yvi0X/vF2Ey9WLw/Q1vUHgFNPGO+I++MzVpQuGhU+QqZMxEA +4Z7CRneC9VkGjCFMhwnN5ag= +-----END CERTIFICATE----- + +Juur-SK +======= +-----BEGIN CERTIFICATE----- +MIIE5jCCA86gAwIBAgIEO45L/DANBgkqhkiG9w0BAQUFADBdMRgwFgYJKoZIhvcNAQkBFglwa2lA +c2suZWUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKExlBUyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMRAw +DgYDVQQDEwdKdXVyLVNLMB4XDTAxMDgzMDE0MjMwMVoXDTE2MDgyNjE0MjMwMVowXTEYMBYGCSqG +SIb3DQEJARYJcGtpQHNrLmVlMQswCQYDVQQGEwJFRTEiMCAGA1UEChMZQVMgU2VydGlmaXRzZWVy +aW1pc2tlc2t1czEQMA4GA1UEAxMHSnV1ci1TSzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBAIFxNj4zB9bjMI0TfncyRsvPGbJgMUaXhvSYRqTCZUXP00B841oiqBB4M8yIsdOBSvZiF3tf +TQou0M+LI+5PAk676w7KvRhj6IAcjeEcjT3g/1tf6mTll+g/mX8MCgkzABpTpyHhOEvWgxutr2TC ++Rx6jGZITWYfGAriPrsfB2WThbkasLnE+w0R9vXW+RvHLCu3GFH+4Hv2qEivbDtPL+/40UceJlfw +UR0zlv/vWT3aTdEVNMfqPxZIe5EcgEMPPbgFPtGzlc3Yyg/CQ2fbt5PgIoIuvvVoKIO5wTtpeyDa +Tpxt4brNj3pssAki14sL2xzVWiZbDcDq5WDQn/413z8CAwEAAaOCAawwggGoMA8GA1UdEwEB/wQF +MAMBAf8wggEWBgNVHSAEggENMIIBCTCCAQUGCisGAQQBzh8BAQEwgfYwgdAGCCsGAQUFBwICMIHD +HoHAAFMAZQBlACAAcwBlAHIAdABpAGYAaQBrAGEAYQB0ACAAbwBuACAAdgDkAGwAagBhAHMAdABh +AHQAdQBkACAAQQBTAC0AaQBzACAAUwBlAHIAdABpAGYAaQB0AHMAZQBlAHIAaQBtAGkAcwBrAGUA +cwBrAHUAcwAgAGEAbABhAG0ALQBTAEsAIABzAGUAcgB0AGkAZgBpAGsAYQBhAHQAaQBkAGUAIABr +AGkAbgBuAGkAdABhAG0AaQBzAGUAawBzMCEGCCsGAQUFBwIBFhVodHRwOi8vd3d3LnNrLmVlL2Nw +cy8wKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3d3dy5zay5lZS9qdXVyL2NybC8wHQYDVR0OBBYE +FASqekej5ImvGs8KQKcYP2/v6X2+MB8GA1UdIwQYMBaAFASqekej5ImvGs8KQKcYP2/v6X2+MA4G +A1UdDwEB/wQEAwIB5jANBgkqhkiG9w0BAQUFAAOCAQEAe8EYlFOiCfP+JmeaUOTDBS8rNXiRTHyo +ERF5TElZrMj3hWVcRrs7EKACr81Ptcw2Kuxd/u+gkcm2k298gFTsxwhwDY77guwqYHhpNjbRxZyL +abVAyJRld/JXIWY7zoVAtjNjGr95HvxcHdMdkxuLDF2FvZkwMhgJkVLpfKG6/2SSmuz+Ne6ML678 +IIbsSt4beDI3poHSna9aEhbKmVv8b20OxaAehsmR0FyYgl9jDIpaq9iVpszLita/ZEuOyoqysOkh +Mp6qqIWYNIE5ITuoOlIyPfZrN4YGWhWY3PARZv40ILcD9EEQfTmEeZZyY7aWAuVrua0ZTbvGRNs2 +yyqcjg== +-----END CERTIFICATE----- + +Hongkong Post Root CA 1 +======================= +-----BEGIN CERTIFICATE----- +MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsxFjAUBgNVBAoT +DUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3QgUm9vdCBDQSAxMB4XDTAzMDUx +NTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkGA1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25n +IFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1 +ApzQjVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEnPzlTCeqr +auh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjhZY4bXSNmO7ilMlHIhqqh +qZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9nnV0ttgCXjqQesBCNnLsak3c78QA3xMY +V18meMjWCnl3v/evt3a5pQuEF10Q6m/hq5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNV +HRMBAf8ECDAGAQH/AgEDMA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7i +h9legYsCmEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI37pio +l7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clBoiMBdDhViw+5Lmei +IAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJsEhTkYY2sEJCehFC78JZvRZ+K88ps +T/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpOfMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilT +c4afU9hDDl3WY4JxHYB0yvbiAmvZWg== +-----END CERTIFICATE----- + +SecureSign RootCA11 +=================== +-----BEGIN CERTIFICATE----- +MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDErMCkGA1UEChMi +SmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoGA1UEAxMTU2VjdXJlU2lnbiBS +b290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSsw +KQYDVQQKEyJKYXBhbiBDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1 +cmVTaWduIFJvb3RDQTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvL +TJszi1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8h9uuywGO +wvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOVMdrAG/LuYpmGYz+/3ZMq +g6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rP +O7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitA +bpSACW22s293bzUIUPsCh8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZX +t94wDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAKCh +OBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xmKbabfSVSSUOrTC4r +bnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQX5Ucv+2rIrVls4W6ng+4reV6G4pQ +Oh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWrQbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01 +y8hSyn+B/tlr0/cR7SXf+Of5pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061 +lgeLKBObjBmNQSdJQO7e5iNEOdyhIta6A/I= +-----END CERTIFICATE----- + +ACEDICOM Root +============= +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +Verisign Class 3 Public Primary Certification Authority +======================================================= +-----BEGIN CERTIFICATE----- +MIICPDCCAaUCEDyRMcsf9tAbDpq40ES/Er4wDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UEBhMCVVMx +FzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmltYXJ5 +IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVow +XzELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAz +IFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUA +A4GNADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhEBarsAx94 +f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/isI19wKTakyYbnsZogy1Ol +hec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBABByUqkFFBky +CEHwxWsKzH4PIRnN5GfcX6kb5sroc50i2JhucwNhkcV8sEVAbkSdjbCxlnRhLQ2pRdKkkirWmnWX +bj9T/UWZYB2oK0z5XqcJ2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/ +D/xwzoiQ +-----END CERTIFICATE----- + +Microsec e-Szigno Root CA 2009 +============================== +-----BEGIN CERTIFICATE----- +MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYDVQQGEwJIVTER +MA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jv +c2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o +dTAeFw0wOTA2MTYxMTMwMThaFw0yOTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UE +BwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUt +U3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvPkd6mJviZpWNwrZuuyjNA +fW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tccbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG +0IMZfcChEhyVbUr02MelTTMuhTlAdX4UfIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKA +pxn1ntxVUwOXewdI/5n7N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm +1HxdrtbCxkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1+rUC +AwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTLD8bf +QkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAbBgNVHREE +FDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqGSIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0o +lZMEyL/azXm4Q5DwpL7v8u8hmLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfX +I/OMn74dseGkddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 +tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c2Pm2G2JwCz02 +yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5tHMN1Rq41Bab2XD0h7lbwyYIi +LXpUq3DDfSJlgnCW +-----END CERTIFICATE----- + +E-Guven Kok Elektronik Sertifika Hizmet Saglayicisi +=================================================== +-----BEGIN CERTIFICATE----- +MIIDtjCCAp6gAwIBAgIQRJmNPMADJ72cdpW56tustTANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG +EwJUUjEoMCYGA1UEChMfRWxla3Ryb25payBCaWxnaSBHdXZlbmxpZ2kgQS5TLjE8MDoGA1UEAxMz +ZS1HdXZlbiBLb2sgRWxla3Ryb25payBTZXJ0aWZpa2EgSGl6bWV0IFNhZ2xheWljaXNpMB4XDTA3 +MDEwNDExMzI0OFoXDTE3MDEwNDExMzI0OFowdTELMAkGA1UEBhMCVFIxKDAmBgNVBAoTH0VsZWt0 +cm9uaWsgQmlsZ2kgR3V2ZW5saWdpIEEuUy4xPDA6BgNVBAMTM2UtR3V2ZW4gS29rIEVsZWt0cm9u +aWsgU2VydGlmaWthIEhpem1ldCBTYWdsYXlpY2lzaTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBAMMSIJ6wXgBljU5Gu4Bc6SwGl9XzcslwuedLZYDBS75+PNdUMZTe1RK6UxYC6lhj71vY +8+0qGqpxSKPcEC1fX+tcS5yWCEIlKBHMilpiAVDV6wlTL/jDj/6z/P2douNffb7tC+Bg62nsM+3Y +jfsSSYMAyYuXjDtzKjKzEve5TfL0TW3H5tYmNwjy2f1rXKPlSFxYvEK+A1qBuhw1DADT9SN+cTAI +JjjcJRFHLfO6IxClv7wC90Nex/6wN1CZew+TzuZDLMN+DfIcQ2Zgy2ExR4ejT669VmxMvLz4Bcpk +9Ok0oSy1c+HCPujIyTQlCFzz7abHlJ+tiEMl1+E5YP6sOVkCAwEAAaNCMEAwDgYDVR0PAQH/BAQD +AgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ/uRLOU1fqRTy7ZVZoEVtstxNulMA0GCSqG +SIb3DQEBBQUAA4IBAQB/X7lTW2M9dTLn+sR0GstG30ZpHFLPqk/CaOv/gKlR6D1id4k9CnU58W5d +F4dvaAXBlGzZXd/aslnLpRCKysw5zZ/rTt5S/wzw9JKp8mxTq5vSR6AfdPebmvEvFZ96ZDAYBzwq +D2fK/A+JYZ1lpTzlvBNbCNvj/+27BrtqBrF6T2XGgv0enIu1De5Iu7i9qgi0+6N8y5/NkHZchpZ4 +Vwpm+Vganf2XKWDeEaaQHBkc7gGWIjQ0LpH5t8Qn0Xvmv/uARFoW5evg1Ao4vOSR49XrXMGs3xtq +fJ7lddK2l4fbzIcrQzqECK+rPNv3PGYxhrCdU3nt+CPeQuMtgvEP5fqX +-----END CERTIFICATE----- + +GlobalSign Root CA - R3 +======================= +-----BEGIN CERTIFICATE----- +MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4GA1UECxMXR2xv +YmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh +bFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxT +aWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2ln +bjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWt +iHL8RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsTgHeMCOFJ +0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmmKPZpO/bLyCiR5Z2KYVc3 +rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zdQQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjl +OCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZXriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2 +xmmFghcCAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE +FI/wS3+oLkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZURUm7 +lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMpjjM5RcOO5LlXbKr8 +EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK6fBdRoyV3XpYKBovHd7NADdBj+1E +bddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQXmcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18 +YIvDQVETI53O9zJrlAGomecsMx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7r +kpeDMdmztcpHWD9f +-----END CERTIFICATE----- + +TC TrustCenter Universal CA III +=============================== +-----BEGIN CERTIFICATE----- +MIID4TCCAsmgAwIBAgIOYyUAAQACFI0zFQLkbPQwDQYJKoZIhvcNAQEFBQAwezELMAkGA1UEBhMC +REUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNVBAsTG1RDIFRydXN0Q2VudGVy +IFVuaXZlcnNhbCBDQTEoMCYGA1UEAxMfVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBIElJSTAe +Fw0wOTA5MDkwODE1MjdaFw0yOTEyMzEyMzU5NTlaMHsxCzAJBgNVBAYTAkRFMRwwGgYDVQQKExNU +QyBUcnVzdENlbnRlciBHbWJIMSQwIgYDVQQLExtUQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0Ex +KDAmBgNVBAMTH1RDIFRydXN0Q2VudGVyIFVuaXZlcnNhbCBDQSBJSUkwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDC2pxisLlxErALyBpXsq6DFJmzNEubkKLF5+cvAqBNLaT6hdqbJYUt +QCggbergvbFIgyIpRJ9Og+41URNzdNW88jBmlFPAQDYvDIRlzg9uwliT6CwLOunBjvvya8o84pxO +juT5fdMnnxvVZ3iHLX8LR7PH6MlIfK8vzArZQe+f/prhsq75U7Xl6UafYOPfjdN/+5Z+s7Vy+Eut +CHnNaYlAJ/Uqwa1D7KRTyGG299J5KmcYdkhtWyUB0SbFt1dpIxVbYYqt8Bst2a9c8SaQaanVDED1 +M4BDj5yjdipFtK+/fz6HP3bFzSreIMUWWMv5G/UPyw0RUmS40nZid4PxWJ//AgMBAAGjYzBhMB8G +A1UdIwQYMBaAFFbn4VslQ4Dg9ozhcbyO5YAvxEjiMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ +BAQDAgEGMB0GA1UdDgQWBBRW5+FbJUOA4PaM4XG8juWAL8RI4jANBgkqhkiG9w0BAQUFAAOCAQEA +g8ev6n9NCjw5sWi+e22JLumzCecYV42FmhfzdkJQEw/HkG8zrcVJYCtsSVgZ1OK+t7+rSbyUyKu+ +KGwWaODIl0YgoGhnYIg5IFHYaAERzqf2EQf27OysGh+yZm5WZ2B6dF7AbZc2rrUNXWZzwCUyRdhK +BgePxLcHsU0GDeGl6/R1yrqc0L2z0zIkTO5+4nYES0lT2PLpVDP85XEfPRRclkvxOvIAu2y0+pZV +CIgJwcyRGSmwIC3/yzikQOEXvnlhgP8HA4ZMTnsGnxGGjYnuJ8Tb4rwZjgvDwxPHLQNjO9Po5KIq +woIIlBZU8O8fJ5AluA0OKBtHd0e9HKgl8ZS0Zg== +-----END CERTIFICATE----- + +Autoridad de Certificacion Firmaprofesional CIF A62634068 +========================================================= +-----BEGIN CERTIFICATE----- +MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UEBhMCRVMxQjBA +BgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 +MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEyMzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIw +QAYDVQQDDDlBdXRvcmlkYWQgZGUgQ2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBB +NjI2MzQwNjgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDD +Utd9thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQMcas9UX4P +B99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefGL9ItWY16Ck6WaVICqjaY +7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15iNA9wBj4gGFrO93IbJWyTdBSTo3OxDqqH +ECNZXyAFGUftaI6SEspd/NYrspI8IM/hX68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyI +plD9amML9ZMWGxmPsu2bm8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctX +MbScyJCyZ/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirjaEbsX +LZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/TKI8xWVvTyQKmtFLK +bpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF6NkBiDkal4ZkQdU7hwxu+g/GvUgU +vzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVhOSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1Ud +EwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNH +DhpkLzCBpgYDVR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp +cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBvACAAZABlACAA +bABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBlAGwAbwBuAGEAIAAwADgAMAAx +ADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx +51tkljYyGOylMnfX40S2wBEqgLk9am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qk +R71kMrv2JYSiJ0L1ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaP +T481PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS3a/DTg4f +Jl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5kSeTy36LssUzAKh3ntLFl +osS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF3dvd6qJ2gHN99ZwExEWN57kci57q13XR +crHedUTnQn3iV2t93Jm8PYMo6oCTjcVMZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoR +saS8I8nkvof/uZS2+F0gStRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTD +KCOM/iczQ0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQBjLMi +6Et8Vcad+qMUu2WFbm5PEn4KPJ2V +-----END CERTIFICATE----- + +Izenpe.com +========== +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +Chambers of Commerce Root - 2008 +================================ +-----BEGIN CERTIFICATE----- +MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYDVQQGEwJFVTFD +MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv +bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu +QS4xKTAnBgNVBAMTIENoYW1iZXJzIG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEy +Mjk1MFoXDTM4MDczMTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNl +ZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQF +EwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJl +cnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC +AQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW928sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKA +XuFixrYp4YFs8r/lfTJqVKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorj +h40G072QDuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR5gN/ +ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfLZEFHcpOrUMPrCXZk +NNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05aSd+pZgvMPMZ4fKecHePOjlO+Bd5g +D2vlGts/4+EhySnB8esHnFIbAURRPHsl18TlUlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331 +lubKgdaX8ZSD6e2wsWsSaR6s+12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ +0wlf2eOKNcx5Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj +ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAxhduub+84Mxh2 +EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNVHQ4EFgQU+SSsD7K1+HnA+mCI +G8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1+HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJ +BgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNh +bWVyZmlybWEuY29tL2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENh +bWVyZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDiC +CQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUH +AgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAJASryI1 +wqM58C7e6bXpeHxIvj99RZJe6dqxGfwWPJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH +3qLPaYRgM+gQDROpI9CF5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbU +RWpGqOt1glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaHFoI6 +M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2pSB7+R5KBWIBpih1 +YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MDxvbxrN8y8NmBGuScvfaAFPDRLLmF +9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QGtjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcK +zBIKinmwPQN/aUv0NCB9szTqjktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvG +nrDQWzilm1DefhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg +OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZd0jQ +-----END CERTIFICATE----- + +Global Chambersign Root - 2008 +============================== +-----BEGIN CERTIFICATE----- +MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYDVQQGEwJFVTFD +MEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNv +bS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMu +QS4xJzAlBgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMx +NDBaFw0zODA3MzExMjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUg +Y3VycmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJ +QTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD +aGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMDf +VtPkOpt2RbQT2//BthmLN0EYlVJH6xedKYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXf +XjaOcNFccUMd2drvXNL7G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0 +ZJJ0YPP2zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4ddPB +/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyGHoiMvvKRhI9lNNgA +TH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2Id3UwD2ln58fQ1DJu7xsepeY7s2M +H/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3VyJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfe +Ox2YItaswTXbo6Al/3K1dh3ebeksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSF +HTynyQbehP9r6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh +wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsogzCtLkykPAgMB +AAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQWBBS5CcqcHtvTbDprru1U8VuT +BjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDprru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UE +BhMCRVUxQzBBBgNVBAcTOk1hZHJpZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJm +aXJtYS5jb20vYWRkcmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJm +aXJtYSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiCCQDJzdPp +1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0 +dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZIhvcNAQEFBQADggIBAICIf3DekijZBZRG +/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZUohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6 +ReAJ3spED8IXDneRRXozX1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/s +dZ7LoR/xfxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVza2Mg +9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yydYhz2rXzdpjEetrHH +foUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMdSqlapskD7+3056huirRXhOukP9Du +qqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9OAP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETr +P3iZ8ntxPjzxmKfFGBI/5rsoM0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVq +c5iJWzouE4gev8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z +09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B +-----END CERTIFICATE----- + +Go Daddy Root Certificate Authority - G2 +======================================== +-----BEGIN CERTIFICATE----- +MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoTEUdvRGFkZHkuY29tLCBJbmMu +MTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 +MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 +b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8G +A1UEAxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI +hvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKDE6bFIEMBO4Tx5oVJnyfq +9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD ++qK+ihVqf94Lw7YZFAXK6sOoBJQ7RnwyDfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutd +fMh8+7ArU6SSYmlRJQVhGkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMl +NAJWJwGRtDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEAAaNC +MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDqahQcQZyi27/a9 +BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmXWWcDYfF+OwYxdS2hII5PZYe096ac +vNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r +5N9ss4UXnT3ZJE95kTXWXwTrgIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYV +N8Gb5DKj7Tjo2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO +LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI4uJEvlz36hz1 +-----END CERTIFICATE----- + +Starfield Root Certificate Authority - G2 +========================================= +-----BEGIN CERTIFICATE----- +MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9s +b2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVsZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0 +eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAw +DgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQg +VGVjaG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZpY2F0ZSBB +dXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL3twQP89o/8ArFv +W59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMgnLRJdzIpVv257IzdIvpy3Cdhl+72WoTs +bhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNk +N3mSwOxGXn/hbVNMYq/NHwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7Nf +ZTD4p7dNdloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0HZbU +JtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0GCSqGSIb3DQEBCwUAA4IBAQARWfol +TwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjUsHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx +4mcujJUDJi5DnUox9g61DLu34jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUw +F5okxBDgBPfg8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K +pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1mMpYjn0q7pBZ +c2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 +-----END CERTIFICATE----- + +Starfield Services Root Certificate Authority - G2 +================================================== +-----BEGIN CERTIFICATE----- +MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMxEDAOBgNVBAgT +B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9s +b2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVsZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRl +IEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNV +BAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxT +dGFyZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2VydmljZXMg +Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC +AQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20pOsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2 +h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm28xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4Pa +hHQUw2eeBGg6345AWh1KTs9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLP +LJGmpufehRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk6mFB +rMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAwDwYDVR0TAQH/BAUw +AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+qAdcwKziIorhtSpzyEZGDMA0GCSqG +SIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMIbw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPP +E95Dz+I0swSdHynVv/heyNXBve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTy +xQGjhdByPq1zqwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd +iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn0q23KXB56jza +YyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCNsSi6 +-----END CERTIFICATE----- + +AffirmTrust Commercial +====================== +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb21tZXJjaWFsMB4XDTEw +MDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmly +bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6Eqdb +DuKPHx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yrba0F8PrV +C8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPALMeIrJmqbTFeurCA+ukV6 +BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1yHp52UKqK39c/s4mT6NmgTWvRLpUHhww +MmWd5jyTXlBOeuM61G7MGvv50jeuJCqrVwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNV +HQ4EFgQUnZPGU4teyq8/nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYGXUPG +hi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNjvbz4YYCanrHOQnDi +qX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivtZ8SOyUOyXGsViQK8YvxO8rUzqrJv +0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9gN53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0kh +sUlHRUe072o0EclNmsxZt9YCnlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= +-----END CERTIFICATE----- + +AffirmTrust Networking +====================== +-----BEGIN CERTIFICATE----- +MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZXR3b3JraW5nMB4XDTEw +MDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmly +bVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEF +AAOCAQ8AMIIBCgKCAQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SE +Hi3yYJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbuakCNrmreI +dIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRLQESxG9fhwoXA3hA/Pe24 +/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gb +h+0t+nvujArjqWaJGctB+d1ENmHP4ndGyH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNV +HQ4EFgQUBx/S55zawm6iQLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC +AQYwDQYJKoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfOtDIu +UFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzuQY0x2+c06lkh1QF6 +12S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZLgo/bNjR9eUJtGxUAArgFU2HdW23 +WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4uolu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9 +/ZFvgrG+CJPbFEfxojfHRZ48x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= +-----END CERTIFICATE----- + +AffirmTrust Premium +=================== +-----BEGIN CERTIFICATE----- +MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UEBhMCVVMxFDAS +BgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVtMB4XDTEwMDEy +OTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRy +dXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A +MIICCgKCAgEAxBLfqV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtn +BKAQJG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ+jjeRFcV +5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrSs8PhaJyJ+HoAVt70VZVs ++7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmd +GPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d770O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5R +p9EixAqnOEhss/n/fauGV+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NI +S+LI+H+SqHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S5u04 +6uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4IaC1nEWTJ3s7xgaVY5 +/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TXOwF0lkLgAOIua+rF7nKsu7/+6qqo ++Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYEFJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB +/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByv +MiPIs0laUZx2KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg +Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B8OWycvpEgjNC +6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQMKSOyARiqcTtNd56l+0OOF6S +L5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK ++4w1IX2COPKpVJEZNZOUbWo6xbLQu4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmV +BtWVyuEklut89pMFu+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFg +IxpHYoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8GKa1qF60 +g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaORtGdFNrHF+QFlozEJLUb +zxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6eKeC2uAloGRwYQw== +-----END CERTIFICATE----- + +AffirmTrust Premium ECC +======================= +-----BEGIN CERTIFICATE----- +MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMCVVMxFDASBgNV +BAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQcmVtaXVtIEVDQzAeFw0xMDAx +MjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJBgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1U +cnVzdDEgMB4GA1UEAwwXQWZmaXJtVHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQA +IgNiAAQNMF4bFZ0D0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQ +N8O9ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0GA1UdDgQW +BBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAK +BggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/VsaobgxCd05DhT1wV/GzTjxi+zygk8N53X +57hG8f2h4nECMEJZh0PUUd+60wkyWs6Iflc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKM +eQ== +-----END CERTIFICATE----- + +Certum Trusted Network CA +========================= +-----BEGIN CERTIFICATE----- +MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBMMSIwIAYDVQQK +ExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlv +biBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBUcnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIy +MTIwNzM3WhcNMjkxMjMxMTIwNzM3WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBU +ZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5 +MSIwIAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC +AQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rHUV+rpDKmYYe2bg+G0jAC +l/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LMTXPb865Px1bVWqeWifrzq2jUI4ZZJ88J +J7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVUBBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4 +fOQtf/WsX+sWn7Et0brMkUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0 +cvW0QM8xAcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNVHRMB +Af8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNVHQ8BAf8EBAMCAQYw +DQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15ysHhE49wcrwn9I0j6vSrEuVUEtRCj +jSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfLI9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1 +mS1FhIrlQgnXdAIv94nYmem8J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5aj +Zt3hrvJBW8qYVoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI +03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= +-----END CERTIFICATE----- + +Certinomis - Autorité Racine +============================= +-----BEGIN CERTIFICATE----- +MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjETMBEGA1UEChMK +Q2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAkBgNVBAMMHUNlcnRpbm9taXMg +LSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkG +A1UEBhMCRlIxEzARBgNVBAoTCkNlcnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYw +JAYDVQQDDB1DZXJ0aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQAD +ggIPADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jYF1AMnmHa +wE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N8y4oH3DfVS9O7cdxbwly +Lu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWerP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw +2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K/OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92N +jMD2AR5vpTESOH2VwnHu7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9q +c1pkIuVC28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6lSTC +lrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1Enn1So2+WLhl+HPNb +xxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB0iSVL1N6aaLwD4ZFjliCK0wi1F6g +530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql095gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna +4NH4+ej9Uji29YnfAgMBAAGjWzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G +A1UdDgQWBBQNjLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ +KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9sov3/4gbIOZ/x +WqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZMOH8oMDX/nyNTt7buFHAAQCva +R6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40 +nJ+U8/aGH88bc62UeYdocMMzpXDn2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1B +CxMjidPJC+iKunqjo3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjv +JL1vnxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG5ERQL1TE +qkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWqpdEdnV1j6CTmNhTih60b +WfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZbdsLLO7XSAPCjDuGtbkD326C00EauFddE +wk01+dIL8hf2rGbVJLJP0RyZwG71fet0BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/ +vgt2Fl43N+bYdJeimUV5 +-----END CERTIFICATE----- + +Root CA Generalitat Valenciana +============================== +-----BEGIN CERTIFICATE----- +MIIGizCCBXOgAwIBAgIEO0XlaDANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJFUzEfMB0GA1UE +ChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290 +IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwHhcNMDEwNzA2MTYyMjQ3WhcNMjEwNzAxMTUyMjQ3 +WjBoMQswCQYDVQQGEwJFUzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UE +CxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGKqtXETcvIorKA3Qdyu0togu8M1JAJke+WmmmO3I2 +F0zo37i7L3bhQEZ0ZQKQUgi0/6iMweDHiVYQOTPvaLRfX9ptI6GJXiKjSgbwJ/BXufjpTjJ3Cj9B +ZPPrZe52/lSqfR0grvPXdMIKX/UIKFIIzFVd0g/bmoGlu6GzwZTNVOAydTGRGmKy3nXiz0+J2ZGQ +D0EbtFpKd71ng+CT516nDOeB0/RSrFOyA8dEJvt55cs0YFAQexvba9dHq198aMpunUEDEO5rmXte +JajCq+TA81yc477OMUxkHl6AovWDfgzWyoxVjr7gvkkHD6MkQXpYHYTqWBLI4bft75PelAgxAgMB +AAGjggM7MIIDNzAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnBraS5n +dmEuZXMwEgYDVR0TAQH/BAgwBgEB/wIBAjCCAjQGA1UdIASCAiswggInMIICIwYKKwYBBAG/VQIB +ADCCAhMwggHoBggrBgEFBQcCAjCCAdoeggHWAEEAdQB0AG8AcgBpAGQAYQBkACAAZABlACAAQwBl +AHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAFIAYQDtAHoAIABkAGUAIABsAGEAIABHAGUAbgBlAHIA +YQBsAGkAdABhAHQAIABWAGEAbABlAG4AYwBpAGEAbgBhAC4ADQAKAEwAYQAgAEQAZQBjAGwAYQBy +AGEAYwBpAPMAbgAgAGQAZQAgAFAAcgDhAGMAdABpAGMAYQBzACAAZABlACAAQwBlAHIAdABpAGYA +aQBjAGEAYwBpAPMAbgAgAHEAdQBlACAAcgBpAGcAZQAgAGUAbAAgAGYAdQBuAGMAaQBvAG4AYQBt +AGkAZQBuAHQAbwAgAGQAZQAgAGwAYQAgAHAAcgBlAHMAZQBuAHQAZQAgAEEAdQB0AG8AcgBpAGQA +YQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAHMAZQAgAGUAbgBjAHUAZQBu +AHQAcgBhACAAZQBuACAAbABhACAAZABpAHIAZQBjAGMAaQDzAG4AIAB3AGUAYgAgAGgAdAB0AHAA +OgAvAC8AdwB3AHcALgBwAGsAaQAuAGcAdgBhAC4AZQBzAC8AYwBwAHMwJQYIKwYBBQUHAgEWGWh0 +dHA6Ly93d3cucGtpLmd2YS5lcy9jcHMwHQYDVR0OBBYEFHs100DSHHgZZu90ECjcPk+yeAT8MIGV +BgNVHSMEgY0wgYqAFHs100DSHHgZZu90ECjcPk+yeAT8oWykajBoMQswCQYDVQQGEwJFUzEfMB0G +A1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScwJQYDVQQDEx5S +b290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmGCBDtF5WgwDQYJKoZIhvcNAQEFBQADggEBACRh +TvW1yEICKrNcda3FbcrnlD+laJWIwVTAEGmiEi8YPyVQqHxK6sYJ2fR1xkDar1CdPaUWu20xxsdz +Ckj+IHLtb8zog2EWRpABlUt9jppSCS/2bxzkoXHPjCpaF3ODR00PNvsETUlR4hTJZGH71BTg9J63 +NI8KJr2XXPR5OkowGcytT6CYirQxlyric21+eLj4iIlPsSKRZEv1UN4D2+XFducTZnV+ZfsBn5OH +iJ35Rld8TWCvmHMTI6QgkYH60GFmuH3Rr9ZvHmw96RH9qfmCIoaZM3Fa6hlXPZHNqcCjbgcTpsnt ++GijnsNacgmHKNHEc8RzGF9QdRYxn7fofMM= +-----END CERTIFICATE----- + +A-Trust-nQual-03 +================ +-----BEGIN CERTIFICATE----- +MIIDzzCCAregAwIBAgIDAWweMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJBVDFIMEYGA1UE +Cgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy +a2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5RdWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5R +dWFsLTAzMB4XDTA1MDgxNzIyMDAwMFoXDTE1MDgxNzIyMDAwMFowgY0xCzAJBgNVBAYTAkFUMUgw +RgYDVQQKDD9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0 +ZW52ZXJrZWhyIEdtYkgxGTAXBgNVBAsMEEEtVHJ1c3QtblF1YWwtMDMxGTAXBgNVBAMMEEEtVHJ1 +c3QtblF1YWwtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtPWFuA/OQO8BBC4SA +zewqo51ru27CQoT3URThoKgtUaNR8t4j8DRE/5TrzAUjlUC5B3ilJfYKvUWG6Nm9wASOhURh73+n +yfrBJcyFLGM/BWBzSQXgYHiVEEvc+RFZznF/QJuKqiTfC0Li21a8StKlDJu3Qz7dg9MmEALP6iPE +SU7l0+m0iKsMrmKS1GWH2WrX9IWf5DMiJaXlyDO6w8dB3F/GaswADm0yqLaHNgBid5seHzTLkDx4 +iHQF63n1k3Flyp3HaxgtPVxO59X4PzF9j4fsCiIvI+n+u33J4PTs63zEsMMtYrWacdaxaujs2e3V +cuy+VwHOBVWf3tFgiBCzAgMBAAGjNjA0MA8GA1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECERqlWdV +eRFPMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAVdRU0VlIXLOThaq/Yy/kgM40 +ozRiPvbY7meIMQQDbwvUB/tOdQ/TLtPAF8fGKOwGDREkDg6lXb+MshOWcdzUzg4NCmgybLlBMRmr +sQd7TZjTXLDR8KdCoLXEjq/+8T/0709GAHbrAvv5ndJAlseIOrifEXnzgGWovR/TeIGgUUw3tKZd +JXDRZslo+S4RFGjxVJgIrCaSD96JntT6s3kr0qN51OyLrIdTaEJMUVF0HhsnLuP1Hyl0Te2v9+GS +mYHovjrHF1D2t8b8m7CKa9aIA5GPBnc6hQLdmNVDeD/GMBWsm2vLV7eJUYs66MmEDNuxUCAKGkq6 +ahq97BvIxYSazQ== +-----END CERTIFICATE----- + +TWCA Root Certification Authority +================================= +-----BEGIN CERTIFICATE----- +MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJ +VEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlmaWNh +dGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMzWhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQG +EwJUVzESMBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NB +IFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFEAcK0HMMx +QhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HHK3XLfJ+utdGdIzdjp9xC +oi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeXRfwZVzsrb+RH9JlF/h3x+JejiB03HFyP +4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/zrX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1r +y+UPizgN7gr8/g+YnzAx3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB +BjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkqhkiG +9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeCMErJk/9q56YAf4lC +mtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdlsXebQ79NqZp4VKIV66IIArB6nCWlW +QtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62Dlhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVY +T0bf+215WfKEIlKuD8z7fDvnaspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocny +Yh0igzyXxfkZYiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== +-----END CERTIFICATE----- + +Security Communication RootCA2 +============================== +-----BEGIN CERTIFICATE----- +MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDElMCMGA1UEChMc +U0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMeU2VjdXJpdHkgQ29tbXVuaWNh +dGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoXDTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMC +SlAxJTAjBgNVBAoTHFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3Vy +aXR5IENvbW11bmljYXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +ANAVOVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGrzbl+dp++ ++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVMVAX3NuRFg3sUZdbcDE3R +3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQhNBqyjoGADdH5H5XTz+L62e4iKrFvlNV +spHEfbmwhRkGeC7bYRr6hfVKkaHnFtWOojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1K +EOtOghY6rCcMU/Gt1SSwawNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8 +QIH4D5csOPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB +CwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpFcoJxDjrSzG+ntKEj +u/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXcokgfGT+Ok+vx+hfuzU7jBBJV1uXk +3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6q +tnRGEmyR7jTV7JqR50S+kDFy1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29 +mvVXIwAHIRc/SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 +-----END CERTIFICATE----- + +EC-ACC +====== +-----BEGIN CERTIFICATE----- +MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB8zELMAkGA1UE +BhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2VydGlmaWNhY2lvIChOSUYgUS0w +ODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYD +VQQLEyxWZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAoYykwMzE1MDMGA1UE +CxMsSmVyYXJxdWlhIEVudGl0YXRzIGRlIENlcnRpZmljYWNpbyBDYXRhbGFuZXMxDzANBgNVBAMT +BkVDLUFDQzAeFw0wMzAxMDcyMzAwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQswCQYDVQQGEwJFUzE7 +MDkGA1UEChMyQWdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2FjaW8gKE5JRiBRLTA4MDExNzYt +SSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVibGljcyBkZSBDZXJ0aWZpY2FjaW8xNTAzBgNVBAsTLFZl +Z2V1IGh0dHBzOi8vd3d3LmNhdGNlcnQubmV0L3ZlcmFycmVsIChjKTAzMTUwMwYDVQQLEyxKZXJh +cnF1aWEgRW50aXRhdHMgZGUgQ2VydGlmaWNhY2lvIENhdGFsYW5lczEPMA0GA1UEAxMGRUMtQUND +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X84NzJB5R85iK +w5K4/0CQBXCHYMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4pEndljkYRm4CgPukLjbo73FCeT +ae6RDqNfDrHrZqJyTxIThmV6PttPB/SnCWDaOkKZx7J/sxaVHMf5NLWUhdWZXqBIoH7nF2W4onW4 +HvPlQn2v7fOKSGRdghST2MDk/7NQcvJ29rNdQlB50JQ+awwAvthrDk4q7D7SzIKiGGUzE3eeml0a +E9jD2z3Il3rucO2n5nzbcc8tlGLfbdb1OL4/pYUKGbio2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw +0JDnJwIDAQABo4HjMIHgMB0GA1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRKo3pUW/l4Ba0fF4opvpXY0wfwYD +VR0gBHgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGCCsGAQUFBwIBFiBodHRwczovL3d3dy5jYXRjZXJ0 +Lm5ldC92ZXJhcnJlbDA1BggrBgEFBQcCAjApGidWZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5l +dC92ZXJhcnJlbCAwDQYJKoZIhvcNAQEFBQADggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDkJ +lF7W2u++AVtd0x7Y/X1PzaBB4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIUPpqojlNcAZQmNa +Al6kSBg6hW/cnbw/nZzBh7h6YQjpdwt/cKt63dmXLGQehb+8dJahw3oS7AwaboMMPOhyRp/7SNVe +l+axofjk70YllJyJ22k4vuxcDlbHZVHlUIiIv0LVKz3l+bqeLrPK9HOSAgu+TGbrIP65y7WZf+a2 +E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xlnJ2lYJU6Un/10asIbvPuW/mIPX64b24D +5EI= +-----END CERTIFICATE----- + +Hellenic Academic and Research Institutions RootCA 2011 +======================================================= +-----BEGIN CERTIFICATE----- +MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1IxRDBCBgNVBAoT +O0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9y +aXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z +IFJvb3RDQSAyMDExMB4XDTExMTIwNjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYT +AkdSMUQwQgYDVQQKEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25z +IENlcnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2VhcmNo +IEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB +AKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPzdYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI +1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJfel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa +71HFK9+WXesyHgLacEnsbgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u +8yBRQlqD75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSPFEDH +3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNVHRMBAf8EBTADAQH/ +MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp5dgTBCPuQSUwRwYDVR0eBEAwPqA8 +MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQub3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQu +b3JnMA0GCSqGSIb3DQEBBQUAA4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVt +XdMiKahsog2p6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8 +TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7dIsXRSZMFpGD +/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8AcysNnq/onN694/BtZqhFLKPM58N +7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXIl7WdmplNsDz4SgCbZN2fOUvRJ9e4 +-----END CERTIFICATE----- + +Actalis Authentication Root CA +============================== +-----BEGIN CERTIFICATE----- +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 +-----END CERTIFICATE----- + +Trustis FPS Root CA +=================== +-----BEGIN CERTIFICATE----- +MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQG +EwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQLExNUcnVzdGlzIEZQUyBSb290 +IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTExMzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNV +BAoTD1RydXN0aXMgTGltaXRlZDEcMBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJ +KoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQ +RUN+AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihHiTHcDnlk +H5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjjvSkCqPoc4Vu5g6hBSLwa +cY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zt +o3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlBOrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEA +AaNTMFEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAd +BgNVHQ4EFgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01GX2c +GE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmWzaD+vkAMXBJV+JOC +yinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP41BIy+Q7DsdwyhEQsb8tGD+pmQQ9P +8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZEf1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHV +l/9D7S3B2l0pKoU/rGXuhg8FjZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYl +iB6XzCGcKQENZetX2fNXlrtIzYE= +-----END CERTIFICATE----- + +StartCom Certification Authority +================================ +-----BEGIN CERTIFICATE----- +MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMN +U3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmlu +ZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0 +NjM3WhcNMzYwOTE3MTk0NjM2WjB9MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRk +LjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMg +U3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw +ggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZkpMyONvg45iPwbm2xPN1y +o4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rfOQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/ +Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/CJi/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/d +eMotHweXMAEtcnn6RtYTKqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt +2PZE4XNiHzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMMAv+Z +6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w+2OqqGwaVLRcJXrJ +osmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/ +untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVc +UjyJthkqcwEKDwOzEmDyei+B26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT +37uMdBNSSwIDAQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD +VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFulF2mHMMo0aEPQ +Qa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCCATgwLgYIKwYBBQUHAgEWImh0 +dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cu +c3RhcnRzc2wuY29tL2ludGVybWVkaWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENv +bW1lcmNpYWwgKFN0YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0 +aGUgc2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0aWZpY2F0 +aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93d3cuc3RhcnRzc2wuY29t +L3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgGCWCGSAGG+EIBDQQrFilTdGFydENvbSBG +cmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5 +fPGFf59Jb2vKXfuM/gTFwWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWm +N3PH/UvSTa0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst0OcN +Org+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNcpRJvkrKTlMeIFw6T +tn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKlCcWw0bdT82AUuoVpaiF8H3VhFyAX +e2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVFP0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA +2MFrLH9ZXF2RsXAiV+uKa0hK1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBs +HvUwyKMQ5bLmKhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE +JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ8dCAWZvLMdib +D4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnmfyWl8kgAwKQB2j8= +-----END CERTIFICATE----- + +StartCom Certification Authority G2 +=================================== +-----BEGIN CERTIFICATE----- +MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMN +U3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg +RzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UE +ChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3Jp +dHkgRzIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8O +o1XJJZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsDvfOpL9HG +4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnooD/Uefyf3lLE3PbfHkffi +Aez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/Q0kGi4xDuFby2X8hQxfqp0iVAXV16iul +Q5XqFYSdCI0mblWbq9zSOdIxHWDirMxWRST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbs +O+wmETRIjfaAKxojAuuKHDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8H +vKTlXcxNnw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM0D4L +nMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/iUUjXuG+v+E5+M5iS +FGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9Ha90OrInwMEePnWjFqmveiJdnxMa +z6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHgTuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8E +BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJ +KoZIhvcNAQELBQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K +2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfXUfEpY9Z1zRbk +J4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl6/2o1PXWT6RbdejF0mCy2wl+ +JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG +/+gyRr61M3Z3qAFdlsHB1b6uJcDJHgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTc +nIhT76IxW1hPkWLIwpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/Xld +blhYXzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5lIxKVCCIc +l85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoohdVddLHRDiBYmxOlsGOm +7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulrso8uBtjRkcfGEvRM/TAXw8HaOFvjqerm +obp573PYtlNXLfbQ4ddI +-----END CERTIFICATE----- + +Buypass Class 2 Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3MgMiBSb290IENBMB4X +DTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1owTjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1 +eXBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIw +DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1 +g1Lr6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPVL4O2fuPn +9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC911K2GScuVr1QGbNgGE41b +/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHxMlAQTn/0hpPshNOOvEu/XAFOBz3cFIqU +CqTqc/sLUegTBxj6DvEr0VQVfTzh97QZQmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeff +awrbD02TTqigzXsu8lkBarcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgI +zRFo1clrUs3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLiFRhn +Bkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRSP/TizPJhk9H9Z2vX +Uq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN9SG9dKpN6nIDSdvHXx1iY8f93ZHs +M+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxPAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYD +VR0OBBYEFMmAd+BikoL1RpzzuvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsF +AAOCAgEAU18h9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s +A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3tOluwlN5E40EI +osHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo+fsicdl9sz1Gv7SEr5AcD48S +aq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYd +DnkM/crqJIByw5c/8nerQyIKx+u2DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWD +LfJ6v9r9jv6ly0UsH8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0 +oyLQI+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK75t98biGC +wWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h3PFaTWwyI0PurKju7koS +CTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPzY11aWOIv4x3kqdbQCtCev9eBCfHJxyYN +rJgWVqA= +-----END CERTIFICATE----- + +Buypass Class 3 Root CA +======================= +-----BEGIN CERTIFICATE----- +MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEdMBsGA1UECgwU +QnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3MgQ2xhc3MgMyBSb290IENBMB4X +DTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFowTjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1 +eXBhc3MgQVMtOTgzMTYzMzI3MSAwHgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIw +DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRH +sJ8YZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3EN3coTRiR +5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9tznDDgFHmV0ST9tD+leh +7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX0DJq1l1sDPGzbjniazEuOQAnFN44wOwZ +ZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c/3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH +2xc519woe2v1n/MuwU8XKhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV +/afmiSTYzIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvSO1UQ +RwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D34xFMFbG02SrZvPA +Xpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgPK9Dx2hzLabjKSWJtyNBjYt1gD1iq +j6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYD +VR0OBBYEFEe4zf/lb+74suwvTg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsF +AAOCAgEAACAjQTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV +cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXSIGrs/CIBKM+G +uIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2HJLw5QY33KbmkJs4j1xrG0aG +Q0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsaO5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8 +ZORK15FTAaggiG6cX0S5y2CBNOxv033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2 +KSb12tjE8nVhz36udmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz +6MkEkbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg413OEMXbug +UZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvDu79leNKGef9JOxqDDPDe +eOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq4/g7u9xN12TyUb7mqqta6THuBrxzvxNi +Cp/HuZc= +-----END CERTIFICATE----- + +T-TeleSec GlobalRoot Class 3 +============================ +-----BEGIN CERTIFICATE----- +MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoM +IlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBU +cnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgx +MDAxMTAyOTU2WhcNMzMxMDAxMjM1OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lz +dGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBD +ZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN8ELg63iIVl6bmlQdTQyK +9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/RLyTPWGrTs0NvvAgJ1gORH8EGoel15YU +NpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZF +iP0Zf3WHHx+xGwpzJFu5ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W +0eDrXltMEnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGjQjBA +MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1A/d2O2GCahKqGFPr +AyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOyWL6ukK2YJ5f+AbGwUgC4TeQbIXQb +fsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzT +ucpH9sry9uetuUg/vBa3wW306gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7h +P0HHRwA11fXT91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml +e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4pTpPDpFQUWw== +-----END CERTIFICATE----- diff --git a/includes/vendor/rmccue/requests/library/Requests/Transport/fsockopen.php b/includes/vendor/rmccue/requests/library/Requests/Transport/fsockopen.php new file mode 100644 index 0000000..21cb56d --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Transport/fsockopen.php @@ -0,0 +1,444 @@ +dispatch('fsockopen.before_request'); + + $url_parts = parse_url($url); + if (empty($url_parts)) { + throw new Requests_Exception('Invalid URL.', 'invalidurl', $url); + } + $host = $url_parts['host']; + $context = stream_context_create(); + $verifyname = false; + $case_insensitive_headers = new Requests_Utility_CaseInsensitiveDictionary($headers); + + // HTTPS support + if (isset($url_parts['scheme']) && strtolower($url_parts['scheme']) === 'https') { + $remote_socket = 'ssl://' . $host; + if (!isset($url_parts['port'])) { + $url_parts['port'] = 443; + } + + $context_options = array( + 'verify_peer' => true, + // 'CN_match' => $host, + 'capture_peer_cert' => true + ); + $verifyname = true; + + // SNI, if enabled (OpenSSL >=0.9.8j) + if (defined('OPENSSL_TLSEXT_SERVER_NAME') && OPENSSL_TLSEXT_SERVER_NAME) { + $context_options['SNI_enabled'] = true; + if (isset($options['verifyname']) && $options['verifyname'] === false) { + $context_options['SNI_enabled'] = false; + } + } + + if (isset($options['verify'])) { + if ($options['verify'] === false) { + $context_options['verify_peer'] = false; + } + elseif (is_string($options['verify'])) { + $context_options['cafile'] = $options['verify']; + } + } + + if (isset($options['verifyname']) && $options['verifyname'] === false) { + $context_options['verify_peer_name'] = false; + $verifyname = false; + } + + stream_context_set_option($context, array('ssl' => $context_options)); + } + else { + $remote_socket = 'tcp://' . $host; + } + + $this->max_bytes = $options['max_bytes']; + + if (!isset($url_parts['port'])) { + $url_parts['port'] = 80; + } + $remote_socket .= ':' . $url_parts['port']; + + set_error_handler(array($this, 'connect_error_handler'), E_WARNING | E_NOTICE); + + $options['hooks']->dispatch('fsockopen.remote_socket', array(&$remote_socket)); + + $socket = stream_socket_client($remote_socket, $errno, $errstr, ceil($options['connect_timeout']), STREAM_CLIENT_CONNECT, $context); + + restore_error_handler(); + + if ($verifyname && !$this->verify_certificate_from_context($host, $context)) { + throw new Requests_Exception('SSL certificate did not match the requested domain name', 'ssl.no_match'); + } + + if (!$socket) { + if ($errno === 0) { + // Connection issue + throw new Requests_Exception(rtrim($this->connect_error), 'fsockopen.connect_error'); + } + + throw new Requests_Exception($errstr, 'fsockopenerror', null, $errno); + } + + $data_format = $options['data_format']; + + if ($data_format === 'query') { + $path = self::format_get($url_parts, $data); + $data = ''; + } + else { + $path = self::format_get($url_parts, array()); + } + + $options['hooks']->dispatch('fsockopen.remote_host_path', array(&$path, $url)); + + $request_body = ''; + $out = sprintf("%s %s HTTP/%.1f\r\n", $options['type'], $path, $options['protocol_version']); + + if ($options['type'] !== Requests::TRACE) { + if (is_array($data)) { + $request_body = http_build_query($data, null, '&'); + } + else { + $request_body = $data; + } + + if (!empty($data)) { + if (!isset($case_insensitive_headers['Content-Length'])) { + $headers['Content-Length'] = strlen($request_body); + } + + if (!isset($case_insensitive_headers['Content-Type'])) { + $headers['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; + } + } + } + + if (!isset($case_insensitive_headers['Host'])) { + $out .= sprintf('Host: %s', $url_parts['host']); + + if (( 'http' === strtolower($url_parts['scheme']) && $url_parts['port'] !== 80 ) || ( 'https' === strtolower($url_parts['scheme']) && $url_parts['port'] !== 443 )) { + $out .= ':' . $url_parts['port']; + } + $out .= "\r\n"; + } + + if (!isset($case_insensitive_headers['User-Agent'])) { + $out .= sprintf("User-Agent: %s\r\n", $options['useragent']); + } + + $accept_encoding = $this->accept_encoding(); + if (!isset($case_insensitive_headers['Accept-Encoding']) && !empty($accept_encoding)) { + $out .= sprintf("Accept-Encoding: %s\r\n", $accept_encoding); + } + + $headers = Requests::flatten($headers); + + if (!empty($headers)) { + $out .= implode($headers, "\r\n") . "\r\n"; + } + + $options['hooks']->dispatch('fsockopen.after_headers', array(&$out)); + + if (substr($out, -2) !== "\r\n") { + $out .= "\r\n"; + } + + if (!isset($case_insensitive_headers['Connection'])) { + $out .= "Connection: Close\r\n"; + } + + $out .= "\r\n" . $request_body; + + $options['hooks']->dispatch('fsockopen.before_send', array(&$out)); + + fwrite($socket, $out); + $options['hooks']->dispatch('fsockopen.after_send', array($out)); + + if (!$options['blocking']) { + fclose($socket); + $fake_headers = ''; + $options['hooks']->dispatch('fsockopen.after_request', array(&$fake_headers)); + return ''; + } + + $timeout_sec = (int) floor($options['timeout']); + if ($timeout_sec == $options['timeout']) { + $timeout_msec = 0; + } + else { + $timeout_msec = self::SECOND_IN_MICROSECONDS * $options['timeout'] % self::SECOND_IN_MICROSECONDS; + } + stream_set_timeout($socket, $timeout_sec, $timeout_msec); + + $response = $body = $headers = ''; + $this->info = stream_get_meta_data($socket); + $size = 0; + $doingbody = false; + $download = false; + if ($options['filename']) { + $download = fopen($options['filename'], 'wb'); + } + + while (!feof($socket)) { + $this->info = stream_get_meta_data($socket); + if ($this->info['timed_out']) { + throw new Requests_Exception('fsocket timed out', 'timeout'); + } + + $block = fread($socket, Requests::BUFFER_SIZE); + if (!$doingbody) { + $response .= $block; + if (strpos($response, "\r\n\r\n")) { + list($headers, $block) = explode("\r\n\r\n", $response, 2); + $doingbody = true; + } + } + + // Are we in body mode now? + if ($doingbody) { + $options['hooks']->dispatch('request.progress', array($block, $size, $this->max_bytes)); + $data_length = strlen($block); + if ($this->max_bytes) { + // Have we already hit a limit? + if ($size === $this->max_bytes) { + continue; + } + if (($size + $data_length) > $this->max_bytes) { + // Limit the length + $limited_length = ($this->max_bytes - $size); + $block = substr($block, 0, $limited_length); + } + } + + $size += strlen($block); + if ($download) { + fwrite($download, $block); + } + else { + $body .= $block; + } + } + } + $this->headers = $headers; + + if ($download) { + fclose($download); + } + else { + $this->headers .= "\r\n\r\n" . $body; + } + fclose($socket); + + $options['hooks']->dispatch('fsockopen.after_request', array(&$this->headers, &$this->info)); + return $this->headers; + } + + /** + * Send multiple requests simultaneously + * + * @param array $requests Request data (array of 'url', 'headers', 'data', 'options') as per {@see Requests_Transport::request} + * @param array $options Global options, see {@see Requests::response()} for documentation + * @return array Array of Requests_Response objects (may contain Requests_Exception or string responses as well) + */ + public function request_multiple($requests, $options) { + $responses = array(); + $class = get_class($this); + foreach ($requests as $id => $request) { + try { + $handler = new $class(); + $responses[$id] = $handler->request($request['url'], $request['headers'], $request['data'], $request['options']); + + $request['options']['hooks']->dispatch('transport.internal.parse_response', array(&$responses[$id], $request)); + } + catch (Requests_Exception $e) { + $responses[$id] = $e; + } + + if (!is_string($responses[$id])) { + $request['options']['hooks']->dispatch('multiple.request.complete', array(&$responses[$id], $id)); + } + } + + return $responses; + } + + /** + * Retrieve the encodings we can accept + * + * @return string Accept-Encoding header value + */ + protected static function accept_encoding() { + $type = array(); + if (function_exists('gzinflate')) { + $type[] = 'deflate;q=1.0'; + } + + if (function_exists('gzuncompress')) { + $type[] = 'compress;q=0.5'; + } + + $type[] = 'gzip;q=0.5'; + + return implode(', ', $type); + } + + /** + * Format a URL given GET data + * + * @param array $url_parts + * @param array|object $data Data to build query using, see {@see https://secure.php.net/http_build_query} + * @return string URL with data + */ + protected static function format_get($url_parts, $data) { + if (!empty($data)) { + if (empty($url_parts['query'])) { + $url_parts['query'] = ''; + } + + $url_parts['query'] .= '&' . http_build_query($data, null, '&'); + $url_parts['query'] = trim($url_parts['query'], '&'); + } + if (isset($url_parts['path'])) { + if (isset($url_parts['query'])) { + $get = $url_parts['path'] . '?' . $url_parts['query']; + } + else { + $get = $url_parts['path']; + } + } + else { + $get = '/'; + } + return $get; + } + + /** + * Error handler for stream_socket_client() + * + * @param int $errno Error number (e.g. E_WARNING) + * @param string $errstr Error message + */ + public function connect_error_handler($errno, $errstr) { + // Double-check we can handle it + if (($errno & E_WARNING) === 0 && ($errno & E_NOTICE) === 0) { + // Return false to indicate the default error handler should engage + return false; + } + + $this->connect_error .= $errstr . "\n"; + return true; + } + + /** + * Verify the certificate against common name and subject alternative names + * + * Unfortunately, PHP doesn't check the certificate against the alternative + * names, leading things like 'https://www.github.com/' to be invalid. + * Instead + * + * @see https://tools.ietf.org/html/rfc2818#section-3.1 RFC2818, Section 3.1 + * + * @throws Requests_Exception On failure to connect via TLS (`fsockopen.ssl.connect_error`) + * @throws Requests_Exception On not obtaining a match for the host (`fsockopen.ssl.no_match`) + * @param string $host Host name to verify against + * @param resource $context Stream context + * @return bool + */ + public function verify_certificate_from_context($host, $context) { + $meta = stream_context_get_options($context); + + // If we don't have SSL options, then we couldn't make the connection at + // all + if (empty($meta) || empty($meta['ssl']) || empty($meta['ssl']['peer_certificate'])) { + throw new Requests_Exception(rtrim($this->connect_error), 'ssl.connect_error'); + } + + $cert = openssl_x509_parse($meta['ssl']['peer_certificate']); + + return Requests_SSL::verify_certificate($host, $cert); + } + + /** + * Whether this transport is valid + * + * @codeCoverageIgnore + * @return boolean True if the transport is valid, false otherwise. + */ + public static function test($capabilities = array()) { + if (!function_exists('fsockopen')) { + return false; + } + + // If needed, check that streams support SSL + if (isset($capabilities['ssl']) && $capabilities['ssl']) { + if (!extension_loaded('openssl') || !function_exists('openssl_x509_parse')) { + return false; + } + + // Currently broken, thanks to https://github.com/facebook/hhvm/issues/2156 + if (defined('HHVM_VERSION')) { + return false; + } + } + + return true; + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Utility/CaseInsensitiveDictionary.php b/includes/vendor/rmccue/requests/library/Requests/Utility/CaseInsensitiveDictionary.php new file mode 100644 index 0000000..2c97893 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Utility/CaseInsensitiveDictionary.php @@ -0,0 +1,103 @@ + $value) { + $this->offsetSet($key, $value); + } + } + + /** + * Check if the given item exists + * + * @param string $key Item key + * @return boolean Does the item exist? + */ + public function offsetExists($key) { + $key = strtolower($key); + return isset($this->data[$key]); + } + + /** + * Get the value for the item + * + * @param string $key Item key + * @return string Item value + */ + public function offsetGet($key) { + $key = strtolower($key); + if (!isset($this->data[$key])) { + return null; + } + + return $this->data[$key]; + } + + /** + * Set the given item + * + * @throws Requests_Exception On attempting to use dictionary as list (`invalidset`) + * + * @param string $key Item name + * @param string $value Item value + */ + public function offsetSet($key, $value) { + if ($key === null) { + throw new Requests_Exception('Object is a dictionary, not a list', 'invalidset'); + } + + $key = strtolower($key); + $this->data[$key] = $value; + } + + /** + * Unset the given header + * + * @param string $key + */ + public function offsetUnset($key) { + unset($this->data[strtolower($key)]); + } + + /** + * Get an iterator for the data + * + * @return ArrayIterator + */ + public function getIterator() { + return new ArrayIterator($this->data); + } + + /** + * Get the headers as an array + * + * @return array Header data + */ + public function getAll() { + return $this->data; + } +} diff --git a/includes/vendor/rmccue/requests/library/Requests/Utility/FilteredIterator.php b/includes/vendor/rmccue/requests/library/Requests/Utility/FilteredIterator.php new file mode 100644 index 0000000..76a29e7 --- /dev/null +++ b/includes/vendor/rmccue/requests/library/Requests/Utility/FilteredIterator.php @@ -0,0 +1,45 @@ +callback = $callback; + } + + /** + * Get the current item's value after filtering + * + * @return string + */ + public function current() { + $value = parent::current(); + $value = call_user_func($this->callback, $value); + return $value; + } +}