5 Commits
Author SHA1 Message Date
曾志威 cd130436dc init
continuous-integration/drone Build is passing
2026-02-12 18:20:35 +08:00
曾志威 9c4ef2b99a init
continuous-integration/drone Build is passing
2026-02-12 18:14:51 +08:00
曾志威 875c603c82 init 2026-02-12 18:09:36 +08:00
曾志威 7b12f0c4a9 init
continuous-integration/drone Build is passing
2026-02-12 18:05:11 +08:00
曾志威 2198445019 init
continuous-integration/drone Build is passing
2026-02-12 18:00:28 +08:00
13 changed files with 528 additions and 392 deletions
+2 -2
View File
@@ -13,9 +13,9 @@ steps:
password:
from_secret: docker_password
registry: https://registry.cn-hangzhou.aliyuncs.com
repo: registry.cn-hangzhou.aliyuncs.com/loghub/wms-system-service
repo: registry.cn-hangzhou.aliyuncs.com/loghub/mysql
tags:
- snde-jdk
- 8.4
volumes:
- name: ruoyi_cache
+106 -21
View File
@@ -1,27 +1,112 @@
#FROM ttx-registry-vpc.cn-hangzhou.cr.aliyuncs.com/ttx/amazoncorretto:21-alpine-jdk-font
FROM amazoncorretto:21-alpine-jdk
# RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
FROM oraclelinux:9-slim-fips
RUN set -eux; \
apk update; \
apk del python3; \
apk upgrade ; \
apk upgrade busybox ;
groupadd --system --gid 999 mysql; \
useradd --system --uid 999 --gid 999 --home-dir /var/lib/mysql --no-create-home mysql
COPY gosu-amd64 /usr/local/bin/gosu
RUN set -eux; \
chmod +x /usr/local/bin/gosu; \
gosu --version; \
gosu nobody true
#RUN apk add --no-cache fontconfig ttf-dejavu && fc-cache -f -vv
# add gosu for easy step-down from root
# https://github.com/tianon/gosu/releases
# ENV GOSU_VERSION 1.19
# RUN set -eux; \
ENV MYSQL_MAJOR=8.4
# 复制证书文件
COPY ./ssl /tmp
RUN set -eux; \
microdnf update -y; \
microdnf upgrade -y;
# 更新证书存储
RUN echo "yes" | keytool -import -alias wuxi-boxwarehousewms-uat.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/UAT-SUBCA-01.cer
RUN echo "yes" | keytool -import -alias sapqpo00-cn -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/sapqpo00.cn.schneider-electric.com.cer
RUN echo "yes" | keytool -import -alias wuxi-boxwarehouse-uat.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/wuxi-boxwarehouse-uat.se.com.cer
RUN echo "yes" | keytool -import -alias wuxi-pcbawms-uat.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/wuxi-pcbawms-uat.se.com.cer
RUN echo "yes" | keytool -import -alias wuxi-palletwarehouse-uat.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/wuxi-palletwarehouse-uat.se.com.cer
RUN echo "yes" | keytool -import -alias Wuxi-PalletWarehouse.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/Wuxi-PalletWarehouse.se.com.cer
RUN echo "yes" | keytool -import -alias wuxi-boxwarehousewms.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/wuxi-boxwarehousewms.se.com.cer
RUN echo "yes" | keytool -import -alias wuxi-boxwarehouse.se.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/wuxi-boxwarehouse.se.com.cer
RUN echo "yes" | keytool -import -alias ppoweb.cn.schneider-electric.com -keystore /usr/lib/jvm/default-jvm/jre/lib/security/cacerts -file /tmp/ppoweb.cn.schneider-electric.com.cer
RUN set -eux; \
microdnf install -y \
bzip2 \
gzip \
openssl \
xz \
zstd \
findutils
RUN set -eux; \
key='BCA4 3417 C3B4 85DD 128E C6D4 B7B3 B788 A8D3 785C'; \
export GNUPGHOME="$(mktemp -d)"; \
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; \
gpg --batch --export --armor "$key" > /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql; \
rm -rf "$GNUPGHOME"
RUN set -eu; \
{ \
echo '[mysql8.4-server-minimal]'; \
echo 'name=MySQL 8.4 Server Minimal'; \
echo 'enabled=1'; \
echo 'baseurl=https://repo.mysql.com/yum/mysql-8.4-community/docker/el/9/$basearch/'; \
echo 'gpgcheck=1'; \
echo 'gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql'; \
# https://github.com/docker-library/mysql/pull/680#issuecomment-825930524
echo 'module_hotfixes=true'; \
} | tee /etc/yum.repos.d/mysql-community-minimal.repo
RUN set -eux; \
microdnf install -y "mysql-community-server-minimal"; \
# the "socket" value in the Oracle packages is set to "/var/lib/mysql" which isn't a great place for the socket (we want it in "/var/run/mysqld" instead)
# https://github.com/docker-library/mysql/pull/680#issuecomment-636121520
grep -F 'socket=/var/lib/mysql/mysql.sock' /etc/my.cnf; \
sed -i 's!^socket=.*!socket=/var/run/mysqld/mysqld.sock!' /etc/my.cnf; \
grep -F 'socket=/var/run/mysqld/mysqld.sock' /etc/my.cnf; \
{ echo '[client]'; echo 'socket=/var/run/mysqld/mysqld.sock'; } >> /etc/my.cnf; \
\
# make sure users dumping files in "/etc/mysql/conf.d" still works
! grep -F '!includedir' /etc/my.cnf; \
{ echo; echo '!includedir /etc/mysql/conf.d/'; } >> /etc/my.cnf; \
mkdir -p /etc/mysql/conf.d; \
# ensure these directories exist and have useful permissions
# the rpm package has different opinions on the mode of `/var/run/mysqld`, so this needs to be after install
mkdir -p /var/lib/mysql /var/run/mysqld; \
chown mysql:mysql /var/lib/mysql /var/run/mysqld; \
# ensure that /var/run/mysqld (used for socket and lock files) is writable regardless of the UID our mysqld instance ends up having at runtime
chmod 1777 /var/lib/mysql /var/run/mysqld; \
\
mkdir /docker-entrypoint-initdb.d; \
\
mysqld --version; \
mysql --version
RUN set -eu; \
{ \
echo '[mysql-tools-community]'; \
echo 'name=MySQL Tools Community'; \
echo 'baseurl=https://repo.mysql.com/yum/mysql-tools-8.4-community/el/9/$basearch/'; \
echo 'enabled=1'; \
echo 'gpgcheck=1'; \
echo 'gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql'; \
# https://github.com/docker-library/mysql/pull/680#issuecomment-825930524
echo 'module_hotfixes=true'; \
} | tee /etc/yum.repos.d/mysql-community-tools.repo
# 漏洞问题先不安装
# RUN set -eux; \
# microdnf install -y "mysql-shell"; \
# mysqlsh --version
RUN set -eux; \
microdnf clean all ;
VOLUME /var/lib/mysql
COPY docker-entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
ENTRYPOINT ["docker-entrypoint.sh"]
EXPOSE 3306 33060
CMD ["mysqld"]
RUN set -eux; \
rpm -e --nodeps glib2 libssh libssh-config libcurl curl
# docker build -t registry.cn-shanghai.aliyuncs.com/hub_z/mysql:8.4 .
# docker push registry.cn-shanghai.aliyuncs.com/hub_z/mysql:8.4
# syft --scope squashed registry.cn-shanghai.aliyuncs.com/hub_z/mysql:8.4 -o spdx-json=mysql.json
+420
View File
@@ -0,0 +1,420 @@
#!/usr/bin/env bash
set -eo pipefail
shopt -s nullglob
# logging functions
mysql_log() {
local type="$1"; shift
# accept argument string or stdin
local text="$*"; if [ "$#" -eq 0 ]; then text="$(cat)"; fi
local dt; dt="$(date --rfc-3339=seconds)"
printf '%s [%s] [Entrypoint]: %s\n' "$dt" "$type" "$text"
}
mysql_note() {
mysql_log Note "$@"
}
mysql_warn() {
mysql_log Warn "$@" >&2
}
mysql_error() {
mysql_log ERROR "$@" >&2
exit 1
}
# usage: file_env VAR [DEFAULT]
# ie: file_env 'XYZ_DB_PASSWORD' 'example'
# (will allow for "$XYZ_DB_PASSWORD_FILE" to fill in the value of
# "$XYZ_DB_PASSWORD" from a file, especially for Docker's secrets feature)
file_env() {
local var="$1"
local fileVar="${var}_FILE"
local def="${2:-}"
if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then
mysql_error "Both $var and $fileVar are set (but are exclusive)"
fi
local val="$def"
if [ "${!var:-}" ]; then
val="${!var}"
elif [ "${!fileVar:-}" ]; then
val="$(< "${!fileVar}")"
fi
export "$var"="$val"
unset "$fileVar"
}
# check to see if this file is being run or sourced from another script
_is_sourced() {
# https://unix.stackexchange.com/a/215279
[ "${#FUNCNAME[@]}" -ge 2 ] \
&& [ "${FUNCNAME[0]}" = '_is_sourced' ] \
&& [ "${FUNCNAME[1]}" = 'source' ]
}
# usage: docker_process_init_files [file [file [...]]]
# ie: docker_process_init_files /always-initdb.d/*
# process initializer files, based on file extensions
docker_process_init_files() {
# mysql here for backwards compatibility "${mysql[@]}"
mysql=( docker_process_sql )
echo
local f
for f; do
case "$f" in
*.sh)
# https://github.com/docker-library/postgres/issues/450#issuecomment-393167936
# https://github.com/docker-library/postgres/pull/452
if [ -x "$f" ]; then
mysql_note "$0: running $f"
"$f"
else
mysql_note "$0: sourcing $f"
. "$f"
fi
;;
*.sql) mysql_note "$0: running $f"; docker_process_sql < "$f"; echo ;;
*.sql.bz2) mysql_note "$0: running $f"; bunzip2 -c "$f" | docker_process_sql; echo ;;
*.sql.gz) mysql_note "$0: running $f"; gunzip -c "$f" | docker_process_sql; echo ;;
*.sql.xz) mysql_note "$0: running $f"; xzcat "$f" | docker_process_sql; echo ;;
*.sql.zst) mysql_note "$0: running $f"; zstd -dc "$f" | docker_process_sql; echo ;;
*) mysql_warn "$0: ignoring $f" ;;
esac
echo
done
}
# arguments necessary to run "mysqld --verbose --help" successfully (used for testing configuration validity and for extracting default/configured values)
_verboseHelpArgs=(
--verbose --help
--log-bin-index="$(mktemp -u)" # https://github.com/docker-library/mysql/issues/136
)
mysql_check_config() {
local toRun=( "$@" "${_verboseHelpArgs[@]}" ) errors
if ! errors="$("${toRun[@]}" 2>&1 >/dev/null)"; then
mysql_error $'mysqld failed while attempting to check config\n\tcommand was: '"${toRun[*]}"$'\n\t'"$errors"
fi
}
# Fetch value from server config
# We use mysqld --verbose --help instead of my_print_defaults because the
# latter only show values present in config files, and not server defaults
mysql_get_config() {
local conf="$1"; shift
"$@" "${_verboseHelpArgs[@]}" 2>/dev/null \
| awk -v conf="$conf" '$1 == conf && /^[^ \t]/ { sub(/^[^ \t]+[ \t]+/, ""); print; exit }'
# match "datadir /some/path with/spaces in/it here" but not "--xyz=abc\n datadir (xyz)"
}
# Ensure that the package default socket can also be used
# since rpm packages are compiled with a different socket location
# and "mysqlsh --mysql" doesn't read the [client] config
# related to https://github.com/docker-library/mysql/issues/829
mysql_socket_fix() {
local defaultSocket
defaultSocket="$(mysql_get_config 'socket' mysqld --no-defaults)"
if [ "$defaultSocket" != "$SOCKET" ]; then
ln -sfTv "$SOCKET" "$defaultSocket" || :
fi
}
# Do a temporary startup of the MySQL server, for init purposes
docker_temp_server_start() {
# For 5.7+ the server is ready for use as soon as startup command unblocks
if ! "$@" --daemonize --skip-networking --default-time-zone=SYSTEM --socket="${SOCKET}"; then
mysql_error "Unable to start server."
fi
}
# Stop the server. When using a local socket file mysqladmin will block until
# the shutdown is complete.
docker_temp_server_stop() {
if ! mysqladmin --defaults-extra-file=<( _mysql_passfile ) shutdown -uroot --socket="${SOCKET}"; then
mysql_error "Unable to shut down server."
fi
}
# Verify that the minimally required password settings are set for new databases.
docker_verify_minimum_env() {
if [ -z "$MYSQL_ROOT_PASSWORD" -a -z "$MYSQL_ALLOW_EMPTY_PASSWORD" -a -z "$MYSQL_RANDOM_ROOT_PASSWORD" ]; then
mysql_error <<-'EOF'
Database is uninitialized and password option is not specified
You need to specify one of the following as an environment variable:
- MYSQL_ROOT_PASSWORD
- MYSQL_ALLOW_EMPTY_PASSWORD
- MYSQL_RANDOM_ROOT_PASSWORD
EOF
fi
# This will prevent the CREATE USER from failing (and thus exiting with a half-initialized database)
if [ "$MYSQL_USER" = 'root' ]; then
mysql_error <<-'EOF'
MYSQL_USER="root", MYSQL_USER and MYSQL_PASSWORD are for configuring a regular user and cannot be used for the root user
Remove MYSQL_USER="root" and use one of the following to control the root user password:
- MYSQL_ROOT_PASSWORD
- MYSQL_ALLOW_EMPTY_PASSWORD
- MYSQL_RANDOM_ROOT_PASSWORD
EOF
fi
# warn when missing one of MYSQL_USER or MYSQL_PASSWORD
if [ -n "$MYSQL_USER" ] && [ -z "$MYSQL_PASSWORD" ]; then
mysql_warn 'MYSQL_USER specified, but missing MYSQL_PASSWORD; MYSQL_USER will not be created'
elif [ -z "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ]; then
mysql_warn 'MYSQL_PASSWORD specified, but missing MYSQL_USER; MYSQL_PASSWORD will be ignored'
fi
}
# creates folders for the database
# also ensures permission for user mysql of run as root
docker_create_db_directories() {
local user; user="$(id -u)"
local -A dirs=( ["$DATADIR"]=1 )
local dir
dir="$(dirname "$SOCKET")"
dirs["$dir"]=1
# "datadir" and "socket" are already handled above (since they were already queried previously)
local conf
for conf in \
general-log-file \
keyring_file_data \
pid-file \
secure-file-priv \
slow-query-log-file \
; do
dir="$(mysql_get_config "$conf" "$@")"
# skip empty values
if [ -z "$dir" ] || [ "$dir" = 'NULL' ]; then
continue
fi
case "$conf" in
secure-file-priv)
# already points at a directory
;;
*)
# other config options point at a file, but we need the directory
dir="$(dirname "$dir")"
;;
esac
dirs["$dir"]=1
done
mkdir -p "${!dirs[@]}"
if [ "$user" = "0" ]; then
# this will cause less disk access than `chown -R`
find "${!dirs[@]}" \! -user mysql -exec chown --no-dereference mysql '{}' +
fi
}
# initializes the database directory
docker_init_database_dir() {
mysql_note "Initializing database files"
"$@" --initialize-insecure --default-time-zone=SYSTEM --autocommit=1
# explicitly enable autocommit to combat https://bugs.mysql.com/bug.php?id=110535 (TODO remove this when 8.0 is EOL; see https://github.com/mysql/mysql-server/commit/7dbf4f80ed15f3c925cfb2b834142f23a2de719a)
mysql_note "Database files initialized"
}
# Loads various settings that are used elsewhere in the script
# This should be called after mysql_check_config, but before any other functions
docker_setup_env() {
# Get config
declare -g DATADIR SOCKET
DATADIR="$(mysql_get_config 'datadir' "$@")"
SOCKET="$(mysql_get_config 'socket' "$@")"
# Initialize values that might be stored in a file
file_env 'MYSQL_ROOT_HOST' '%'
file_env 'MYSQL_DATABASE'
file_env 'MYSQL_USER'
file_env 'MYSQL_PASSWORD'
file_env 'MYSQL_ROOT_PASSWORD'
declare -g DATABASE_ALREADY_EXISTS
if [ -d "$DATADIR/mysql" ]; then
DATABASE_ALREADY_EXISTS='true'
fi
}
# Execute sql script, passed via stdin
# usage: docker_process_sql [--dont-use-mysql-root-password] [mysql-cli-args]
# ie: docker_process_sql --database=mydb <<<'INSERT ...'
# ie: docker_process_sql --dont-use-mysql-root-password --database=mydb <my-file.sql
docker_process_sql() {
passfileArgs=()
if [ '--dont-use-mysql-root-password' = "$1" ]; then
passfileArgs+=( "$1" )
shift
fi
# args sent in can override this db, since they will be later in the command
if [ -n "$MYSQL_DATABASE" ]; then
set -- --database="$MYSQL_DATABASE" "$@"
fi
mysql --defaults-extra-file=<( _mysql_passfile "${passfileArgs[@]}") --protocol=socket -uroot -hlocalhost --socket="${SOCKET}" --comments "$@"
}
# Initializes database with timezone info and root password, plus optional extra db/user
docker_setup_db() {
# Load timezone info into database
if [ -z "$MYSQL_INITDB_SKIP_TZINFO" ]; then
# sed is for https://bugs.mysql.com/bug.php?id=20545
mysql_tzinfo_to_sql /usr/share/zoneinfo \
| sed 's/Local time zone must be set--see zic manual page/FCTY/' \
| docker_process_sql --dont-use-mysql-root-password --database=mysql
# tell docker_process_sql to not use MYSQL_ROOT_PASSWORD since it is not set yet
fi
# Generate random root password
if [ -n "$MYSQL_RANDOM_ROOT_PASSWORD" ]; then
MYSQL_ROOT_PASSWORD="$(openssl rand -base64 24)"; export MYSQL_ROOT_PASSWORD
mysql_note "GENERATED ROOT PASSWORD: $MYSQL_ROOT_PASSWORD"
fi
# Sets root password and creates root users for non-localhost hosts
local rootCreate=
# default root to listen for connections from anywhere
if [ -n "$MYSQL_ROOT_HOST" ] && [ "$MYSQL_ROOT_HOST" != 'localhost' ]; then
# no, we don't care if read finds a terminating character in this heredoc
# https://unix.stackexchange.com/questions/265149/why-is-set-o-errexit-breaking-this-read-heredoc-expression/265151#265151
read -r -d '' rootCreate <<-EOSQL || true
CREATE USER 'root'@'${MYSQL_ROOT_HOST}' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ;
GRANT ALL ON *.* TO 'root'@'${MYSQL_ROOT_HOST}' WITH GRANT OPTION ;
EOSQL
fi
local passwordSet=
# no, we don't care if read finds a terminating character in this heredoc (see above)
read -r -d '' passwordSet <<-EOSQL || true
ALTER USER 'root'@'localhost' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}' ;
EOSQL
# tell docker_process_sql to not use MYSQL_ROOT_PASSWORD since it is just now being set
docker_process_sql --dont-use-mysql-root-password --database=mysql <<-EOSQL
-- enable autocommit explicitly (in case it was disabled globally)
SET autocommit = 1;
-- What's done in this file shouldn't be replicated
-- or products like mysql-fabric won't work
SET @@SESSION.SQL_LOG_BIN=0;
${passwordSet}
GRANT ALL ON *.* TO 'root'@'localhost' WITH GRANT OPTION ;
FLUSH PRIVILEGES ;
${rootCreate}
DROP DATABASE IF EXISTS test ;
EOSQL
# Creates a custom database and user if specified
if [ -n "$MYSQL_DATABASE" ]; then
mysql_note "Creating database ${MYSQL_DATABASE}"
docker_process_sql --database=mysql <<<"CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ;"
fi
if [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ]; then
mysql_note "Creating user ${MYSQL_USER}"
docker_process_sql --database=mysql <<<"CREATE USER '$MYSQL_USER'@'%' IDENTIFIED BY '$MYSQL_PASSWORD' ;"
if [ -n "$MYSQL_DATABASE" ]; then
mysql_note "Giving user ${MYSQL_USER} access to schema ${MYSQL_DATABASE}"
docker_process_sql --database=mysql <<<"GRANT ALL ON \`${MYSQL_DATABASE//_/\\_}\`.* TO '$MYSQL_USER'@'%' ;"
fi
fi
}
_mysql_passfile() {
# echo the password to the "file" the client uses
# the client command will use process substitution to create a file on the fly
# ie: --defaults-extra-file=<( _mysql_passfile )
if [ '--dont-use-mysql-root-password' != "$1" ] && [ -n "$MYSQL_ROOT_PASSWORD" ]; then
cat <<-EOF
[client]
password="${MYSQL_ROOT_PASSWORD}"
EOF
fi
}
# Mark root user as expired so the password must be changed before anything
# else can be done (only supported for 5.6+)
mysql_expire_root_user() {
if [ -n "$MYSQL_ONETIME_PASSWORD" ]; then
docker_process_sql --database=mysql <<-EOSQL
ALTER USER 'root'@'%' PASSWORD EXPIRE;
EOSQL
fi
}
# check arguments for an option that would cause mysqld to stop
# return true if there is one
_mysql_want_help() {
local arg
for arg; do
case "$arg" in
-'?'|--help|--print-defaults|-V|--version)
return 0
;;
esac
done
return 1
}
_main() {
# if command starts with an option, prepend mysqld
if [ "${1:0:1}" = '-' ]; then
set -- mysqld "$@"
fi
# skip setup if they aren't running mysqld or want an option that stops mysqld
if [ "$1" = 'mysqld' ] && ! _mysql_want_help "$@"; then
mysql_note "Entrypoint script for MySQL Server ${MYSQL_VERSION} started."
mysql_check_config "$@"
# Load various environment variables
docker_setup_env "$@"
docker_create_db_directories "$@"
# If container is started as root user, restart as dedicated mysql user
if [ "$(id -u)" = "0" ]; then
mysql_note "Switching to dedicated user 'mysql'"
exec gosu mysql "$BASH_SOURCE" "$@"
fi
# there's no database, so it needs to be initialized
if [ -z "$DATABASE_ALREADY_EXISTS" ]; then
docker_verify_minimum_env
# check dir permissions to reduce likelihood of half-initialized database
ls /docker-entrypoint-initdb.d/ > /dev/null
docker_init_database_dir "$@"
mysql_note "Starting temporary server"
docker_temp_server_start "$@"
mysql_note "Temporary server started."
mysql_socket_fix
docker_setup_db
docker_process_init_files /docker-entrypoint-initdb.d/*
mysql_expire_root_user
mysql_note "Stopping temporary server"
docker_temp_server_stop
mysql_note "Temporary server stopped"
echo
mysql_note "MySQL init process done. Ready for start up."
echo
else
mysql_socket_fix
fi
fi
exec "$@"
}
# If we are sourced from elsewhere, don't perform any further actions
if ! _is_sourced; then
_main "$@"
fi
BIN
View File
Binary file not shown.
-24
View File
@@ -1,24 +0,0 @@
-----BEGIN CERTIFICATE-----
MIID+jCCAuKgAwIBAgITGwAAABSmNWDX0X1OlAAAAAAAFDANBgkqhkiG9w0BAQsF
ADAWMRQwEgYDVQQDEwtVQVQtSVQtUk9PVDAeFw0yNDA4MDUwOTA4MThaFw0zNDA4
MDUwOTE4MThaMFUxEzARBgoJkiaJk/IsZAEZFgN1YXQxEjAQBgoJkiaJk/IsZAEZ
FgJzZTETMBEGCgmSJomT8ixkARkWA2dhZDEVMBMGA1UEAxMMVUFULVNVQkNBLTAx
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzYTfeJ9mtWgb9NDRoHkj
ofBFDaaws9PrSexln2++cRDOtVsVEpLKNfPBreWg0t8EB4xsculBN6Cwm7gn8wGK
JfPrPeQdIMvNCJIuYmh3P9qjy5OIzVb2eRsVEj4P0oPhuJoe6wHtcrAhzZlM/23s
oeY0RiOQ4ZtvddGWPikQelx0kwrphON23K1944dGucAlzaLuaJAe46Tths8gv84N
j2/Zjm2WlGpUQxpimfQnXcXWXmidm7RGrpk3+wU0zXk8ttCJlLh05bEtg1tTkymq
3i05l+dLhEMPiPDuVIL+7lfkPcJWaQXCwLPzUy54XVfyHvoAjVGTctN+gbv8Nk/d
LwIDAQABo4IBADCB/TASBgkrBgEEAYI3FQEEBQIDAQABMCMGCSsGAQQBgjcVAgQW
BBQKH65onRJEYixcvLinng/hWKZwmjAdBgNVHQ4EFgQUH+l3nD3n6Ojc01uqk4+A
RLBULEQwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMA8G
A1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUX0Ou5uzCeUN9KvbD4I0cAxk84mQw
SQYDVR0fBEIwQDA+oDygOoY4aHR0cDovL3VhdC5yZXZvY2F0aW9uLnBraS5nYWQu
c2UudWF0L2NkcC9VQVQtSVQtUk9PVC5jcmwwDQYJKoZIhvcNAQELBQADggEBABai
VIkbV01a0KzdnZ08z2ubwFrDZBkPW1NtXIWGwmAQ3ybEWrPNz3/1p2vl9U7ixn2W
QhUTE0uxGLEiSlEuNgmeQ80j5eMvOuyby9ZFGEpFcpHHdnlXJFi5NEVt2snMSa2H
wx2DcPMwQDnKIFsc17LrSXgTLH1DoBbXo9AaBEnWnnKUfSrXn23Oo5DERyXdW/ZT
xW6EVlEkck+2mnY3+CjFgxr5sv39j2SAXRp6U1T/12/gmruQlK75PIJXkp0wfGy7
XrEGtCLEWGzpeTDxQXYT+BsnEVRV7MkiqqWwWws/Mf2YbKezeJwn4o6IiNpb3+i7
648X1sw/J7ARtSUqf5c=
-----END CERTIFICATE-----
-36
View File
@@ -1,36 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIGVDCCBTygAwIBAgITQAAAOVBQmsQ1nw2SwQABAAA5UDANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA2MjYwOTM1MTRaFw0yNzA2MjYw
OTM1MTRaMIHQMQswCQYDVQQGEwJGUjEXMBUGA1UECBMOSGF1dHMgZGUgU2VpbmUx
GDAWBgNVBAcTD1J1ZWlsIE1hbG1haXNvbjEqMCgGA1UEChMhU2NobmVpZGVyIEVs
ZWN0cmljIEluZHVzdHJpZXMgU0FTMRowGAYDVQQLExFHbG9iYWwgT3BlcmF0aW9u
czEkMCIGA1UEAxMbd3V4aS1wYWxsZXR3YXJlaG91c2Uuc2UuY29tMSAwHgYJKoZI
hvcNAQkBFhF5dWZlbmcubWFvQHNlLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIP
ADCCAgoCggIBAKaA/Pd6tHaU41D5PISZXNSv9fT3fOgZky6HckTP1pNp3qaqzNX4
xqG5NS5j79FzvlKIQVfct1Wk3Qp/bHFZ0UiPEmDvJYYu1WW8qzIXdyA6OD9KMclr
lOP3am55XjbKO+Ourc9+lNX76XR59cQNUpzUrlyI7xbx6kdUT0dDUwz28x2QjQVm
vqBi25AdDh1IlDQw5vKVCzwzMz+SidaEJ834AuCZWNha2lnQTQ+dfk6AdqsK8cEn
Zu5k0lCSx5C96NJRuDJcq3oqp2D/zZlg56DbScqkfwVwx1k2ojsi6lBCUtyoL8f2
289gM0uH05D8QGq4/HngWLP1FPBc8Udd+GHJodc5YX8Gah3zj4sBROUpfVNrV5d9
DIUtqhERG4U1Z/VOjlE/TRPsYb4hNKeArZ8eEB/lc+WLnGprzL7doKemWzVxi0JD
XeugELwhxMV5shyDFgjWhIyyLbZpM83RDy2oXWvqVwh7iP9IrvV86ncJJxpEs9Xm
n7mzJpjhNerDW4Wtiz2CxU0KnQt3CZ+8OxIA71y1WQLE87tOE9dLz72VC76VYbGU
kVsX8KYGSD9xLssRYq/VZP0QttYVt62HoIb5tFf9quJS2wz3pcAonjE2XNmb5XBg
StHGiDJPgl+90X6BMTmhS144qZNCMgJnb6wnObKw510olg8oZNbYeqGDAgMBAAGj
ggHhMIIB3TAdBgNVHQ4EFgQUv1wiXHttLc0EYFYJXdkY5GKtSfQwHwYDVR0jBBgw
FoAUQbjzry8mE7sWKYhGhIk8jb73HgIwVAYDVR0fBE0wSzBJoEegRYZDaHR0cDov
L3Jldm9jYXRpb24ucGtpLWl0LnNjaG5laWRlci1lbGVjdHJpYy5jb20vY3JsL0lU
LVBLSS0xKDEpLmNybDCBnQYIKwYBBQUHAQEEgZAwgY0wOgYIKwYBBQUHMAGGLmh0
dHA6Ly9vY3NwLnBraS1pdC5zY2huZWlkZXItZWxlY3RyaWMuY29tL29jc3AwTwYI
KwYBBQUHMAKGQ2h0dHA6Ly9yZXZvY2F0aW9uLnBraS1pdC5zY2huZWlkZXItZWxl
Y3RyaWMuY29tL2NybC9JVC1QS0ktMSgxKS5jcnQwCwYDVR0PBAQDAgXgMD4GCSsG
AQQBgjcVBwQxMC8GJysGAQQBgjcVCIOWuXWF/8FxhcGBGoLUwCeE7/xvgTCE5Khb
g5XyBAIBZAIBEzATBgNVHSUEDDAKBggrBgEFBQcDATAbBgkrBgEEAYI3FQoEDjAM
MAoGCCsGAQUFBwMBMCYGA1UdEQQfMB2CG1d1eGktUGFsbGV0V2FyZWhvdXNlLnNl
LmNvbTANBgkqhkiG9w0BAQsFAAOCAQEAeWQxRGmTSxCRo2APV+QgtNkvMxfrRo/o
lgyMf/8/cbgVY5YXV0cqJLWzaT/X6+Ypdm1nZM57v3dGjMKY2lqL7K1yrO6MLJwT
pi2PxQKsqcTKGw7FS9uVeqke8r6bUcGW4OxMRXWcrKutfKhqcC01ttu3ewJitvZw
uv/dnDXf+IMeLOGSBKOyY6aJBvqwh9y9n6iZ+PzrL539FGTCv1zhENgkkJ6vJVqD
tCL6oKwcPmzTEzj6YqnRClsyRaZ4+N0J21QFlIPXpxBdhbgaw6BKlOdmYepIT4WG
9dLyLhENh4db0P4KpJSe368cn9c9JYhXULDQhqKhFpvhXHZ95uW9FQ==
-----END CERTIFICATE-----
-30
View File
@@ -1,30 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIFNzCCBB+gAwIBAgITQAAAOWJs0KorZRNnAgABAAA5YjANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA2MjgwMTU5MzJaFw0yNzA2Mjgw
MTU5MzJaMIGuMQswCQYDVQQGEwJDTjEOMAwGA1UECBMFSGViZWkxEDAOBgNVBAcT
B0JlaWppbmcxITAfBgNVBAoTGFNjaG5laWRlciBFbGVjdHJpYyBDaGluYTEPMA0G
A1UECxMGQ04gSVBPMSkwJwYDVQQDEyBwcG93ZWIuY24uc2NobmVpZGVyLWVsZWN0
cmljLmNvbTEeMBwGCSqGSIb3DQEJARYPS2VudC5MZWVAc2UuY29tMIIBIjANBgkq
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAw1V1Bya1NUSGUKQ0De88Y4c/sQBAblfM
hEnG8yJ9mbw3ObZ9Jb2hQF4kR/46qwtQXcbYqvcZIa5ryLzoJymr/7lPBt5QL1qj
QdAaFH4OvlfbI8aO4no9Le/6/Yeb14mz+ChRclvTZdhiaW/+/1+q2HKpJX/xp4W4
Z0iTjs0ONyujdA+39vVKt69DyAgF3lhKGtchu3HmogORkZqpyqXYAq2gRYRfmaC9
ULYW7I6dQ4EjtPsZVKZcGDfPXRqDxFG5ftLjmOL2kWJkXSzE37yJ2GtHUcv9AeyX
T3YG4MhtRMDDwAoZQo3LGDsM1eJuiAlCuZnpf2PLRy+1B2+Eb2iHbQIDAQABo4IB
5jCCAeIwCwYDVR0PBAQDAgXgMD4GCSsGAQQBgjcVBwQxMC8GJysGAQQBgjcVCIOW
uXWF/8FxhcGBGoLUwCeE7/xvgTCE5Khbg5XyBAIBZAIBEzAdBgNVHQ4EFgQUDkOY
+lcM1c3Pp1v062khEk4hdXowHwYDVR0jBBgwFoAUQbjzry8mE7sWKYhGhIk8jb73
HgIwVAYDVR0fBE0wSzBJoEegRYZDaHR0cDovL3Jldm9jYXRpb24ucGtpLWl0LnNj
aG5laWRlci1lbGVjdHJpYy5jb20vY3JsL0lULVBLSS0xKDEpLmNybDCBnQYIKwYB
BQUHAQEEgZAwgY0wOgYIKwYBBQUHMAGGLmh0dHA6Ly9vY3NwLnBraS1pdC5zY2hu
ZWlkZXItZWxlY3RyaWMuY29tL29jc3AwTwYIKwYBBQUHMAKGQ2h0dHA6Ly9yZXZv
Y2F0aW9uLnBraS1pdC5zY2huZWlkZXItZWxlY3RyaWMuY29tL2NybC9JVC1QS0kt
MSgxKS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwEwGwYJKwYBBAGCNxUKBA4wDDAK
BggrBgEFBQcDATArBgNVHREEJDAigiBwcG93ZWIuY24uc2NobmVpZGVyLWVsZWN0
cmljLmNvbTANBgkqhkiG9w0BAQsFAAOCAQEAbCHojBJks30gZ9nvWYj3ik4/IP3X
CxGfqwLt2sCOeIoznvYyyrRe01cQ2NH015IBZ8tBgj6/QARsKiGy3BsapfOGfRF9
MuMAJkMxOwjD0b47EyGpq4LqA+w5CakOVEYfGAv1SGB1ilJTgFkcTzBjJL0shMKh
J+6D4FaK03aCcDMutWAxLA52RAryyAtfJ5Q0tdACQPPuYBQ5CMp0SiWQeP49sOHy
9htTj1K1ScvfN+sraJ9poakhPWbIFezVPPoOwB7EkGXu7U+MqCMoArrXR9W6+TRG
GBtZPiL2UcpStAF1WCxpVTmTFmLYjzC47CWE4WSIU2tAKzaB7Dxa1D4qCA==
-----END CERTIFICATE-----
-112
View File
@@ -1,112 +0,0 @@
Bag Attributes
localKeyID: 01 00 00 00
1.3.6.1.4.1.311.17.3.75: 32 00 33 00 33 00 38 00 30 00 43 00 37 00 39 00 44 00 46 00 37 00 41 00 45 00 46 00 43 00 32 00 32 00 41 00 41 00 33 00 43 00 46 00 43 00 37 00 38 00 33 00 46 00 44 00 37 00 35 00 35 00 46 00 5F 00 00 00
friendlyName: sapqpo00.cn.schneider-electric.com
1.3.6.1.4.1.311.17.3.71: 57 00 41 00 5A 00 46 00 43 00 47 00 41 00 44 00 47 00 44 00 53 00 30 00 31 00 2E 00 67 00 61 00 64 00 2E 00 73 00 63 00 68 00 6E 00 65 00 69 00 64 00 65 00 72 00 2D 00 65 00 6C 00 65 00 63 00 74 00 72 00 69 00 63 00 2E 00 63 00 6F 00 6D 00 00 00
subject=C = CN, ST = Hebei, L = Beijing, O = Schneider Electric China, OU = CN IPO, CN = sapqpo00.cn.schneider-electric.com, emailAddress = Kent.Lee@se.com
issuer=CN = IT-PKI-1
-----BEGIN CERTIFICATE-----
MIIFOzCCBCOgAwIBAgITQAAAOWMYVF99IL4GqgABAAA5YzANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA2MjgwMjIxMDRaFw0yNzA2Mjgw
MjIxMDRaMIGwMQswCQYDVQQGEwJDTjEOMAwGA1UECBMFSGViZWkxEDAOBgNVBAcT
B0JlaWppbmcxITAfBgNVBAoTGFNjaG5laWRlciBFbGVjdHJpYyBDaGluYTEPMA0G
A1UECxMGQ04gSVBPMSswKQYDVQQDEyJzYXBxcG8wMC5jbi5zY2huZWlkZXItZWxl
Y3RyaWMuY29tMR4wHAYJKoZIhvcNAQkBFg9LZW50LkxlZUBzZS5jb20wggEiMA0G
CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCgjwm8NbUvuucOVeKhTHGigsHouKQS
gbqR/iZlhJQsA46lb/eFALeeHUurnEMkqSH7kL6f/hOPpkwKcCsUegVffH1ZMPq+
wfKlUZr3qs9jF+FuxPBuKII9b0lpg4qWSdbNqAl1oO9hxCxB9TvdkZoK7FYgiFAK
1ITUnZztjHf66U1xIgJ8jn+av7i/LGPnWChM++u+lX79F8MCs8mIKxvHFmqoOqKd
zb62QsgHt35jTXxrAvt/ojDJWIbaW4mm+g2JJgxHlpbJNs8fOXIZg5VtEeibqqWg
NaP9SLqYiKXYI8Y3aO6IZ9oWd7PiQC2UKubeCsMC+Khw6kuk0xriXrWVAgMBAAGj
ggHoMIIB5DALBgNVHQ8EBAMCBeAwPgYJKwYBBAGCNxUHBDEwLwYnKwYBBAGCNxUI
g5a5dYX/wXGFwYEagtTAJ4Tv/G+BMITkqFuDlfIEAgFkAgETMB0GA1UdDgQWBBQE
j4lbW7jrYsGJrLxF6IwR7OyTCzAfBgNVHSMEGDAWgBRBuPOvLyYTuxYpiEaEiTyN
vvceAjBUBgNVHR8ETTBLMEmgR6BFhkNodHRwOi8vcmV2b2NhdGlvbi5wa2ktaXQu
c2NobmVpZGVyLWVsZWN0cmljLmNvbS9jcmwvSVQtUEtJLTEoMSkuY3JsMIGdBggr
BgEFBQcBAQSBkDCBjTA6BggrBgEFBQcwAYYuaHR0cDovL29jc3AucGtpLWl0LnNj
aG5laWRlci1lbGVjdHJpYy5jb20vb2NzcDBPBggrBgEFBQcwAoZDaHR0cDovL3Jl
dm9jYXRpb24ucGtpLWl0LnNjaG5laWRlci1lbGVjdHJpYy5jb20vY3JsL0lULVBL
SS0xKDEpLmNydDATBgNVHSUEDDAKBggrBgEFBQcDATAbBgkrBgEEAYI3FQoEDjAM
MAoGCCsGAQUFBwMBMC0GA1UdEQQmMCSCInNhcHFwbzAwLmNuLnNjaG5laWRlci1l
bGVjdHJpYy5jb20wDQYJKoZIhvcNAQELBQADggEBAJL1+5jbPxEBj6bBoWE6518E
mRBaGHFU+GfK12J0kr79xtHuo8YRPxvc9MUGfD4Mvb3DXWRQ7em0azDAK6mSM7/V
A6wKqGhi/9wBBAmKdOFTSGRHmXhACwHmUkC88taKnU1bSqnSEpQXdnALD+qdcz1K
+0EIxnlKaG7bYNCEt/44PzJEt416uLOVeepntSwF84WZld00tzCpqPaWLWJWV0GE
+oWuzJ+unsv3aJGFB9iPqRG6lzq0PQfC1JUxtpNTpLsHeIyjKToS9D5kHI50Dc7d
WawPyIiXCzGyvu3PLaD+1H+pp4hbkwkiVSkjTJjxj3Z78Enk3oNhEBfW6CbeqJE=
-----END CERTIFICATE-----
Bag Attributes: <Empty Attributes>
subject=CN = PKI-IT-ROOT, OU = IPO, O = Schneider-Electric
issuer=CN = PKI-IT-ROOT, OU = IPO, O = Schneider-Electric
-----BEGIN CERTIFICATE-----
MIIFvDCCA6SgAwIBAgIJAOYH1bnoxC+eMA0GCSqGSIb3DQEBCwUAMEExFDASBgNV
BAMTC1BLSS1JVC1ST09UMQwwCgYDVQQLEwNJUE8xGzAZBgNVBAoTElNjaG5laWRl
ci1FbGVjdHJpYzAeFw0xNjEwMjAwOTMyMTlaFw0zNjEwMTUwOTMyMTlaMEExFDAS
BgNVBAMTC1BLSS1JVC1ST09UMQwwCgYDVQQLEwNJUE8xGzAZBgNVBAoTElNjaG5l
aWRlci1FbGVjdHJpYzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALNk
x2clfq5/JrIEw3xT7OnhqeuWHEy0k3MoG7zx1OHnVG4ER49bo2sSmglasnlYZa53
qfzJTl+E7S8I1pypI2spR1c36U0P0FP377yujSNrVXU8UPKSCIKwrSB9sqjj8C3S
LT4LcqPhn+IquSBwBDglb/apcXO2KrOAb42d7uj4/q0UIWZyII0frtow8wlqIm5z
XYvFsno9NBpi3/HkV8S1V/Tyd7tul/lTsIIzBz/RCJTQECgDw+8zZjcVogrWk6O1
m5juOxPgA+V/CqartFULBtLL8jEh+CpqB7HO7cQfCDEeAtrXjnYfSrClyhaKsnWL
rojsKerjscz9uGOJ9eeiyL2DIzurLxMdu6BQQq8Tzk7yXB2vQ4nqOP7X6C4QdtsU
py5hK3Fw4jfeNx7ejv1t7R3t0k/JyBBvfY8WvtfPABWM444NO3lzBwpqwnV9Uv1C
DFPPGtftf0/D87Mo5pL1QAgGq4FFProvIbVHz/3yH1ebaGvDlfHDw0tRL/yf9nwY
mAZLZ6LWK93PsLdLLLWK1ZmQoxYbmzezVgvv3YCpSWfWBJIja1LSv7jxwKsPY8ol
SKF4A4Qeq4uv3vRWQG93oUSLg2ovkYgnZanFxzPY8/UCMqOUc6t1wAB53uV1mCYf
OYpA/Y099mgfLqNAHe0XQS1nFZU2JqoZgiXpnaRfAgMBAAGjgbYwgbMwDwYDVR0T
BAgwBgEB/wIBATAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPY7//PFH2GVE7dU
O42CVeRUVmoXMHEGA1UdIwRqMGiAFPY7//PFH2GVE7dUO42CVeRUVmoXoUWkQzBB
MRQwEgYDVQQDEwtQS0ktSVQtUk9PVDEMMAoGA1UECxMDSVBPMRswGQYDVQQKExJT
Y2huZWlkZXItRWxlY3RyaWOCCQDmB9W56MQvnjANBgkqhkiG9w0BAQsFAAOCAgEA
cUJLQP2m5soT0VhGN0GW5EGA09Qvp6bdvIaq7mf0Hza89hwvmPLW3DWC0FjUUsIy
EYSuN+tuunQpoPc62w24WQhvwSgjI7nlKReI+UXO0WgSd4Acdc4dzX/kPorpPLgE
auCiBVta2TtMSaMA3QbDRPLw3pAgGqtS8rzL1cqXe3qaNBG4j/37vmgFwQ0YZKQn
6y29FFF+eER+nlnfKD5O3HFLj79IRwkbxtUGyTRgu+bK8RIXGq3lYWOo+umm3UR0
YXTRDbjzb+g2k6r/kPGJNemvrZMxGwLir4DTWYAmVTBnSodIUaorOrNtMmcZk1L/
O2Pym15TZ+Z+TcAi4VFaF+snE+EgJw0tKp7uugdYvDmJPxEhhOwxh32OyHWH5au2
2tyYiFWcAp5eK/59e0XU/i6fcNLScSaDCkMbvZ54FoYpuszXAwj7JePKRlEdzESy
rnos3Ue2hGZAe0V1qYGTmVCBrOR3RRuQvfAw9izWWhzkyXcuJHIfxqfI7tTlL6tt
nRFSXPmdR768hOEBr3zLrNyKWoOjTDmhzECPH9p8zq/uT/7gOIDGZ6aos31Qs/7d
0/yqwGbBlR8tdxIPQQjYM+aEu6ELXDyPA3LEUjcrz5ObWGWE263RwbQ8E0O3xxDa
LhPpxZkzQEomFxL8eftCC6wmGX74BPMq8rLxPT9Jt+k=
-----END CERTIFICATE-----
Bag Attributes: <Empty Attributes>
subject=CN = IT-PKI-1
issuer=CN = PKI-IT-ROOT, OU = IPO, O = Schneider-Electric
-----BEGIN CERTIFICATE-----
MIIFMjCCAxqgAwIBAgIBDTANBgkqhkiG9w0BAQsFADBBMRQwEgYDVQQDEwtQS0kt
SVQtUk9PVDEMMAoGA1UECxMDSVBPMRswGQYDVQQKExJTY2huZWlkZXItRWxlY3Ry
aWMwHhcNMjQwNzMwMTMwOTAxWhcNMzQwNzI4MTMwOTAxWjATMREwDwYDVQQDEwhJ
VC1QS0ktMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM9oMyrR+Ytn
oMUD1QYxrLXJ9Q1nwEV5Jzm+3ogMFmHCHLSOiZE/6IHbakXB/bW5ibUowbDZJn/R
vdCU9327wNULnuCGF7Clk0DwsKsR+Df/OoGinf6fLz8HN3/IxYG2a/dhIUDP+OTO
dT6DueL1O76OhfuBmasjg1iGCB24svxLiWu/iq+VJnBAsARBpsJYiSA/MJAGrIpV
aHVif60MbF797x8F2C46/Ih0DOLi4Z+NcYh8inJCiV4H3lvydCaqghQvIvvM3vMl
uKn/y2LW7aB1VVlhIN5e7luMuEfkWMtqF7wd91EFe55s3isIAtEuNP+4wUtD9jvC
h9GdyNZNkskCAwEAAaOCAWEwggFdMA8GA1UdEwQIMAYBAf8CAQAwDgYDVR0PAQH/
BAQDAgEGMB0GA1UdDgQWBBRBuPOvLyYTuxYpiEaEiTyNvvceAjBxBgNVHSMEajBo
gBT2O//zxR9hlRO3VDuNglXkVFZqF6FFpEMwQTEUMBIGA1UEAxMLUEtJLUlULVJP
T1QxDDAKBgNVBAsTA0lQTzEbMBkGA1UEChMSU2NobmVpZGVyLUVsZWN0cmljggkA
5gfVuejEL54wVAYDVR0fBE0wSzBJoEegRYZDaHR0cDovL3Jldm9jYXRpb24ucGtp
LWl0LnNjaG5laWRlci1lbGVjdHJpYy5jb20vY3JsL2l0LXBraS1yb290LmNybDAS
BgkrBgEEAYI3FQEEBQIDAQABMCMGCSsGAQQBgjcVAgQWBBQX1OyYrSLtz9v/9dGU
zgDuJkE2vDAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTANBgkqhkiG9w0BAQsF
AAOCAgEAXineFw8ToDHG72LuVmeLJdr67MS1gOuwkY/NaThdayJzW3ptxesBphHX
kd40FQVpxJa270idDwezD0fTjbb0p0Kkm0ixStwGMSaFbCzzTQhj+TcTU/nmebpn
Viso/MRakDfNVbP+nyZdcoXKipN24mYZLP4n+xlmmJ7h9ICyfabrzFlv6hIdAfvY
wGdOF+MmS+Jfzz4MC3cJXuDO6sEAQS3AnUYgafXNO3hCiDMSMRkTdkdwS0ftA61z
JyzHvcvrPmCeSw4gYHH00/kUqO5WecOpMNZJXIgU8lXA3VneF+5y0zXIH+BCt3et
aRUXJ+kwQSVc6x75yqvnXAAXbfKd+vQ2g3UAOeSTePwM1U8rjyyhL1KIagDSuj89
TPwzXhKt6CeuhhHv8SVNjc6QlcKykHzJzQfcq90qBZyxay+xR4Q8HRIuiPQetLaL
7fE1A12p/CrKLo5wYQd1ZyA9M1WXymtTZZwLyTzkMFSomPuiWSBEVEF4kC/MNljE
qnTILIzoxRS4JvrdzbcBrc/IDTWfkbv3sKFc/D9jqWvjtYvIUTriTh741pyMVbY/
Z2l/DY5WM3Tc4zq48nbNUmDnymM9+Uo2e6kbyc+HUtSKt+oy6RB2+CgeQ4BTK4C3
SAIlmhXvrxBAM1zAtQZGI5lWY/wsmWhq2HaWYOv84evprS8nytE=
-----END CERTIFICATE-----
-38
View File
@@ -1,38 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIGqDCCBZCgAwIBAgITTgAAEYiSyMl+nmAtYAABAAARiDANBgkqhkiG9w0BAQsF
ADBVMRMwEQYKCZImiZPyLGQBGRYDdWF0MRIwEAYKCZImiZPyLGQBGRYCc2UxEzAR
BgoJkiaJk/IsZAEZFgNnYWQxFTATBgNVBAMTDFVBVC1TVUJDQS0wMTAeFw0yNTA4
MjYwNjI4MDlaFw0yNzA4MjYwNjI4MDlaMIHRMQswCQYDVQQGEwJGUjEXMBUGA1UE
CBMOSGF1dHMgZGUgU2VpbmUxGDAWBgNVBAcTD1J1ZWlsIE1hbG1haXNvbjEqMCgG
A1UEChMhU2NobmVpZGVyIEVsZWN0cmljIEluZHVzdHJpZXMgU0FTMRowGAYDVQQL
ExFHbG9iYWwgT3BlcmF0aW9uczElMCMGA1UEAxMcd3V4aS1ib3h3YXJlaG91c2Ut
dWF0LnNlLmNvbTEgMB4GCSqGSIb3DQEJARYReXVmZW5nLm1hb0BzZS5jb20wggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1FKcmy+2F41ChdhZXrfym7VZz
M6RKO88l9OmKvgO6o/coo+IHfPNskYkuBZSIG/T+f1wFTh4M5OaVAwnSglhsF5NU
IQpZO5oCUfUst3gPL+gky1+oMOSdl+BUj2mSAH68+WidntQZS+R/s8gMkHGx6n6w
kGx5/7nQlVIpLnwYmtFCWnPZ0XHggMX2z4P4/o512vYiKaMb2tfDoq/3g9T8rldm
WRhfHRvz/H5g1vGuOp4D1kJut/w07oWG0jPbFl2jW3mQekL3vsbNe0Dkd1jyQ/ZV
4YxQ2ge06xBQMh4O0Aj6DiCciqcsVC6S+ftlfuVjgOLq80qdOFyrroOBI8LvAgMB
AAGjggLyMIIC7jAdBgNVHQ4EFgQUGLNvV6mDv3sTFwKr1YJXfsBesHIwHwYDVR0j
BBgwFoAUH+l3nD3n6Ojc01uqk4+ARLBULEQwggEVBgNVHR8EggEMMIIBCDCCAQSg
ggEAoIH9hjxodHRwOi8vdWF0LnJldm9jYXRpb24ucGtpLmdhZC5zZS51YXQvY2Rw
L1VBVC1TVUJDQS0wMSgxKS5jcmyGgbxsZGFwOi8vL0NOPVVBVC1TVUJDQS0wMSgx
KSxDTj1XU0VTMDAxMDFDQSxDTj1DRFAsQ049UHVibGljJTIwS2V5JTIwU2Vydmlj
ZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1nYWQsREM9c2UsREM9
dWF0P2NlcnRpZmljYXRlUmV2b2NhdGlvbkxpc3Q/YmFzZT9vYmplY3RDbGFzcz1j
UkxEaXN0cmlidXRpb25Qb2ludDCB7QYIKwYBBQUHAQEEgeAwgd0wga0GCCsGAQUF
BzAChoGgbGRhcDovLy9DTj1VQVQtU1VCQ0EtMDEsQ049QUlBLENOPVB1YmxpYyUy
MEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24sREM9
Z2FkLERDPXNlLERDPXVhdD9jQUNlcnRpZmljYXRlP2Jhc2U/b2JqZWN0Q2xhc3M9
Y2VydGlmaWNhdGlvbkF1dGhvcml0eTArBggrBgEFBQcwAYYfaHR0cDovL29jc3Au
cGtpLmdhZC5zZS51YXQvb2NzcDALBgNVHQ8EBAMCBeAwOwYJKwYBBAGCNxUHBC4w
LAYkKwYBBAGCNxUIhtP2I4eW2S2HnYsYhamrXp3kdmmGtYRS0OkxAgFkAgEYMBMG
A1UdJQQMMAoGCCsGAQUFBwMBMBsGCSsGAQQBgjcVCgQOMAwwCgYIKwYBBQUHAwEw
JwYDVR0RBCAwHoIcd3V4aS1ib3h3YXJlaG91c2UtdWF0LnNlLmNvbTANBgkqhkiG
9w0BAQsFAAOCAQEAljApCLjSZbkdcvPKsN7P3w/h7T27AdV/swXwQdJVx5RHjG1F
0KIK3+n4bX+ALkB+wZA7HpizYgM7b4Kiyn8AtJqTzD5rPGRnaqh6S5wIIw/YQU+u
RHtUk029Bq1drU1Oh3o7O2z2lUCr5Ht0k/jbbEWMIP/l7QXzwshuXmK1XnKckzO1
/qrpOeHdfNUvCs0rROHKFLD/29K3uJ57ZgLAhZCu+EkwEwEDxvzb+zAe+kDF/O5L
v2tH2HlAZEXm7skDsLlcOmKEO68UEwP2mQQtQDKyAr6PYa1u3RSazrs4aLxgpL7s
eIdnVwnaYrhk+hN1fPwPKW5uL0PKOgN56lAOAQ==
-----END CERTIFICATE-----
-31
View File
@@ -1,31 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIFTjCCBDagAwIBAgITQAAAOw4WDxkXp/fqigABAAA7DjANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA4MjYwNjEwMjRaFw0yNzA4MjYw
NjEwMjRaMIHNMQswCQYDVQQGEwJGUjEXMBUGA1UECBMOSGF1dHMgZGUgU2VpbmUx
GDAWBgNVBAcTD1J1ZWlsIE1hbG1haXNvbjEqMCgGA1UEChMhU2NobmVpZGVyIEVs
ZWN0cmljIEluZHVzdHJpZXMgU0FTMRowGAYDVQQLExFHbG9iYWwgT3BlcmF0aW9u
czEhMB8GA1UEAxMYd3V4aS1ib3h3YXJlaG91c2Uuc2UuY29tMSAwHgYJKoZIhvcN
AQkBFhF5dWZlbmcubWFvQHNlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
AQoCggEBANXVLkfLCDnCtX4H798avQTKTKP1iKFSerKJWkUyLNGrK6Q0vrt9vAlR
YNuFgxEUKSsfXF6aRA2g4hvvqOl09UtdQBiPdQ2xhiMxbRAWCUbNDYj+kwBEGS7l
vTE4yh90sxaJXtYNStIYmzgAAFkNPCIzjQfeVuHO7xfhzI3yisdPnDBbIWofxyFs
XDtZzmo1E9gdAsep5JWOn0mUPDqbxwMqb1V1n782QW6DNG6MM4FYylD/M97AJOtY
KAwgPl4EImouwqcDqdNkKCcG0k1yMOEwF8RffwWv0N/wJ8CdEEU0wMsUIT4dT+tz
1eKxO3mxcXRH6pBQ/l71RDo/1BQ09TMCAwEAAaOCAd4wggHaMB0GA1UdDgQWBBSC
zeRQuthjcoOBa4zA8JnOdKVhKDAfBgNVHSMEGDAWgBRBuPOvLyYTuxYpiEaEiTyN
vvceAjBUBgNVHR8ETTBLMEmgR6BFhkNodHRwOi8vcmV2b2NhdGlvbi5wa2ktaXQu
c2NobmVpZGVyLWVsZWN0cmljLmNvbS9jcmwvSVQtUEtJLTEoMSkuY3JsMIGdBggr
BgEFBQcBAQSBkDCBjTA6BggrBgEFBQcwAYYuaHR0cDovL29jc3AucGtpLWl0LnNj
aG5laWRlci1lbGVjdHJpYy5jb20vb2NzcDBPBggrBgEFBQcwAoZDaHR0cDovL3Jl
dm9jYXRpb24ucGtpLWl0LnNjaG5laWRlci1lbGVjdHJpYy5jb20vY3JsL0lULVBL
SS0xKDEpLmNydDALBgNVHQ8EBAMCBeAwPgYJKwYBBAGCNxUHBDEwLwYnKwYBBAGC
NxUIg5a5dYX/wXGFwYEagtTAJ4Tv/G+BMITkqFuDlfIEAgFkAgETMBMGA1UdJQQM
MAoGCCsGAQUFBwMBMBsGCSsGAQQBgjcVCgQOMAwwCgYIKwYBBQUHAwEwIwYDVR0R
BBwwGoIYd3V4aS1ib3h3YXJlaG91c2Uuc2UuY29tMA0GCSqGSIb3DQEBCwUAA4IB
AQCnTuU61oo051bmyhxiWC80LMnjwfHh0qpFFz5JNbXv6cgKVGwtLk5O96bpWzuh
riptIqpkeoPlhm9ZNR8n2p4isuT6BdTEpRiZX50WOnlciJ6RDvOLKaVUWunyOt9g
UtLgGpXRePXkkqB4yI1eqp0F/fFVeA60VRtISdjaa5RpTtmq6e8jn7shRtjpXNEI
a/Pt4ISA4yB0odH2wTQQbz3dtms7+rrp0C23uWGANwK8fGxj2asviBob5cJ38d8h
Vgu+nmmxUBURCqbXhsxQlsuoICdjMNVr8dQj+Q2RJBAJpfkGdmcVIsJwct03IcQe
02HRmFlV93eiiQBJISyuHmPi
-----END CERTIFICATE-----
-31
View File
@@ -1,31 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIFVDCCBDygAwIBAgITQAAAOyE2an9SzjsBUAABAAA7ITANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA4MjgwODA0NTVaFw0yNzA4Mjgw
ODA0NTVaMIHQMQswCQYDVQQGEwJGUjEXMBUGA1UECBMOSGF1dHMgZGUgU2VpbmUx
GDAWBgNVBAcTD1J1ZWlsIE1hbG1haXNvbjEqMCgGA1UEChMhU2NobmVpZGVyIEVs
ZWN0cmljIEluZHVzdHJpZXMgU0FTMRowGAYDVQQLExFHbG9iYWwgT3BlcmF0aW9u
czEkMCIGA1UEAxMbd3V4aS1ib3h3YXJlaG91c2V3bXMuc2UuY29tMSAwHgYJKoZI
hvcNAQkBFhF5dWZlbmcubWFvQHNlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBANAvC4cWORUy2b+7g1gZoogJVm0QtiRGjiCeIJBnyFXxcLGkJ3Hf
ZfXsa2XoJBvP8C7S1rxJCGMRPZfQcfKMn/Azp2YCVVjNILTrI5SL/KgU5n4y5Z6P
zSi8jwGzh+CfSb7hbGf8bu7JcfF4anEsqJASIIWYaQ7RsHDtDiWZZsFDLq+pAAPq
eT7i3vPJp+HurF9kEYDx+hxbxSIdSvvDfu2u0usdZwDLJ/oNqGAqOkxzCO/2aYUT
y2Tr2n6TjTl+V2kpjA7xpk4zXi6AQaOHCiZ9HbN5IDS82qNM3O2v1VJIWp3a+dOn
gp3NYHxa86YYCxLievLa1EDU9FD7+12IBxcCAwEAAaOCAeEwggHdMB0GA1UdDgQW
BBTVowHkQFBf/uXvLhoerohLpqz9kDAfBgNVHSMEGDAWgBRBuPOvLyYTuxYpiEaE
iTyNvvceAjBUBgNVHR8ETTBLMEmgR6BFhkNodHRwOi8vcmV2b2NhdGlvbi5wa2kt
aXQuc2NobmVpZGVyLWVsZWN0cmljLmNvbS9jcmwvSVQtUEtJLTEoMSkuY3JsMIGd
BggrBgEFBQcBAQSBkDCBjTA6BggrBgEFBQcwAYYuaHR0cDovL29jc3AucGtpLWl0
LnNjaG5laWRlci1lbGVjdHJpYy5jb20vb2NzcDBPBggrBgEFBQcwAoZDaHR0cDov
L3Jldm9jYXRpb24ucGtpLWl0LnNjaG5laWRlci1lbGVjdHJpYy5jb20vY3JsL0lU
LVBLSS0xKDEpLmNydDALBgNVHQ8EBAMCBeAwPgYJKwYBBAGCNxUHBDEwLwYnKwYB
BAGCNxUIg5a5dYX/wXGFwYEagtTAJ4Tv/G+BMITkqFuDlfIEAgFkAgETMBMGA1Ud
JQQMMAoGCCsGAQUFBwMBMBsGCSsGAQQBgjcVCgQOMAwwCgYIKwYBBQUHAwEwJgYD
VR0RBB8wHYIbd3V4aS1ib3h3YXJlaG91c2V3bXMuc2UuY29tMA0GCSqGSIb3DQEB
CwUAA4IBAQAbli0jcZQqWqMQrd8cCevutM0EZUMIIDy2hCyHVRquYF8WjJMizLnJ
sKimPLoHI3KTTlMdbI113HdMN6YE85nzdtdQKfqNkzaZeqPevDEzatFS/NpTnNPZ
l436d1UOEexcVGs6BEy+fBlXRTZLVxU+Kuw6U4enrohE3wuSh7kqAwQf+n5ckpoH
lhEc7bHth5UuGLOlsmVatpH6XFyvnV2/Wk+QgpgJz6nY0+tW3chXZkm+tPPqB1Gq
DndD64sn265+/5XxxKpiqBizurZ8bP4rtJTngSqiNkB7Xi5Q/YCsohStGutyoFRM
26EDLbp/02r/D7DXs3hgB0+wrBFBvw//
-----END CERTIFICATE-----
-36
View File
@@ -1,36 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIGXDCCBUSgAwIBAgITQAAAOVtzfAwOllj6gAABAAA5WzANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA2MjcwOTI1MjBaFw0yNzA2Mjcw
OTI1MjBaMIHUMQswCQYDVQQGEwJGUjEXMBUGA1UECBMOSGF1dHMgZGUgU2VpbmUx
GDAWBgNVBAcTD1J1ZWlsIE1hbG1haXNvbjEqMCgGA1UEChMhU2NobmVpZGVyIEVs
ZWN0cmljIEluZHVzdHJpZXMgU0FTMRowGAYDVQQLExFHbG9iYWwgT3BlcmF0aW9u
czEoMCYGA1UEAxMfd3V4aS1wYWxsZXR3YXJlaG91c2UtdWF0LnNlLmNvbTEgMB4G
CSqGSIb3DQEJARYReXVmZW5nLm1hb0BzZS5jb20wggIiMA0GCSqGSIb3DQEBAQUA
A4ICDwAwggIKAoICAQC7nmnHQ3BT/BH38EPTdBPNv7b7fh0zPUMpIJ6LZPotEQYN
IRWvqsiD8Fo2zdz6c85S/LZ/DthYPSfqtB+E8gTnei/DuEmFlZLBXSYyAKeOaS/m
crXU90qfgTpaALd5mCSmHQgC4ZZ2usM/YlGUyLCZvTQSHX9O3WfLyde9XRchSspa
wM0v64jh65GBRfqh+U7fbRuAAbprZ4xvXJ3OBaiREp5hR+DLXLomvm+Rc81twVZk
g5NPUjSXhsmIKg/ufXon6XjhEhJCGvuBIGzHTikFsihiDgyzKzg8UJaIolNAa/Qb
Z/77Y9viCm7XVUJ7nraEAKrTuY3JAf3LEV3+r/IHQve+GFX95cso27NyC4b520n7
uptc8s8Yf0aFhugWy0pKacedXBgX2vV05uOy3ZNpkIf94S762E3kflP9725rlqvm
fyB3wq3CDp/r/9HjNn3a/4ABVjLZIDqf5/CchRqSW7SbCWsQCKoFVb3T9gkYqYED
pxpRu/QKYF61BwYhd7xujnrGw4Dx9UdOBaraApJp6L8j7XFn7D+Noj3NvvnlWwdj
MXGRhFBVEFJHxL7Xb+SqixO1liw6lAMZ7zdx1VZPDVom45p7LxCPZzgPoQcZDafj
NwmCJEc30Q3wU4yxBW9Z0EIvTOuGkJA4RcR+BS3IE+v0Q94w1KlT2E9npqz5AwID
AQABo4IB5TCCAeEwHQYDVR0OBBYEFD2nG2LvP39ug499W30WD0s03zJ2MB8GA1Ud
IwQYMBaAFEG4868vJhO7FimIRoSJPI2+9x4CMFQGA1UdHwRNMEswSaBHoEWGQ2h0
dHA6Ly9yZXZvY2F0aW9uLnBraS1pdC5zY2huZWlkZXItZWxlY3RyaWMuY29tL2Ny
bC9JVC1QS0ktMSgxKS5jcmwwgZ0GCCsGAQUFBwEBBIGQMIGNMDoGCCsGAQUFBzAB
hi5odHRwOi8vb2NzcC5wa2ktaXQuc2NobmVpZGVyLWVsZWN0cmljLmNvbS9vY3Nw
ME8GCCsGAQUFBzAChkNodHRwOi8vcmV2b2NhdGlvbi5wa2ktaXQuc2NobmVpZGVy
LWVsZWN0cmljLmNvbS9jcmwvSVQtUEtJLTEoMSkuY3J0MAsGA1UdDwQEAwIF4DA+
BgkrBgEEAYI3FQcEMTAvBicrBgEEAYI3FQiDlrl1hf/BcYXBgRqC1MAnhO/8b4Ew
hOSoW4OV8gQCAWQCARMwEwYDVR0lBAwwCgYIKwYBBQUHAwEwGwYJKwYBBAGCNxUK
BA4wDDAKBggrBgEFBQcDATAqBgNVHREEIzAhgh9XdXhpLVBhbGxldFdhcmVob3Vz
ZS11YXQuc2UuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQDLJJNDYym4CBcOIrBgTGtR
f08OYGplqtbtOZxzkhMmjgVZ8GW71gX7xC/YdTe4W4wAI54GlGtKomYKHWku4lac
zYRglMvuJxv5qLLRsstYIjY6/sUZGQYBYENWIiPsDG5M7C6cjhcEE0jLDabG0RuF
6sne726Z+wV/VAV/WLJxcdj+xhTJi9psDsr+fNOPtffqEAtIBHWqcIxZ9gb2DsrW
M4I947kqwwpYuGNuMKuLMCCDp196XsLBV+mlMVWP8xl4kBhZ7HW4x78b4M769slS
UKxGOQJWtbu9u1bIv873s4TXI0Rw40M7Zh323Jag+z6Q0/69cK2sf98d3I7DjZL6
-----END CERTIFICATE-----
-31
View File
@@ -1,31 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIFTDCCBDSgAwIBAgITQAAAO+XnBlYLbULGbgABAAA75TANBgkqhkiG9w0BAQsF
ADATMREwDwYDVQQDEwhJVC1QS0ktMTAeFw0yNTA5MjUwNzMyNDlaFw0yNzA5MjUw
NzMyNDlaMIHMMQswCQYDVQQGEwJGUjEXMBUGA1UECAwOw45sZS1kZS1GcmFuY2Ux
GDAWBgNVBAcTD1J1ZWlsIE1hbG1haXNvbjEqMCgGA1UEChMhU2NobmVpZGVyIEVs
ZWN0cmljIEluZHVzdHJpZXMgU0FTMRowGAYDVQQLExFHbG9iYWwgT3BlcmF0aW9u
czEgMB4GA1UEAxMXd3V4aS1wY2Jhd21zLXVhdC5zZS5jb20xIDAeBgkqhkiG9w0B
CQEWEWhvbmdtaW4ubHVAc2UuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEAvBaZvgbeMERJlC9vmazCZGziDcB/M9HgpY3VupgS2ojW7TEkBkrZdYHt
eJ7ZBWDMES07nBsUHgBGQk68THKxlPaFBm4iQOYh7pz20/3CqO/cCsg9CVpvc+V9
hqRk9bcpTtmFl94j2iJzAmnTyMQ3kd+g3sVWN041K5LKwQjgsdNlcLj7gmFtyj6k
Cbb6Ztca/KPUXzUTuvZTF7/akmKMyauzSDbD1eLLsw/uLRqXCKMBVL0pjaDiLVXq
tkO4INaIKMjPeOoRWex+SkHC0XKFAdDRrmRdw+z6Qm0gMUsQuwUEYnug59NZdRZ1
AMjUqDtfUjCN0Ilesx/BqHgkl5cXtQIDAQABo4IB3TCCAdkwHQYDVR0OBBYEFCd4
C/0KME6viaSLOiW2sVv6z73PMB8GA1UdIwQYMBaAFEG4868vJhO7FimIRoSJPI2+
9x4CMFQGA1UdHwRNMEswSaBHoEWGQ2h0dHA6Ly9yZXZvY2F0aW9uLnBraS1pdC5z
Y2huZWlkZXItZWxlY3RyaWMuY29tL2NybC9JVC1QS0ktMSgxKS5jcmwwgZ0GCCsG
AQUFBwEBBIGQMIGNMDoGCCsGAQUFBzABhi5odHRwOi8vb2NzcC5wa2ktaXQuc2No
bmVpZGVyLWVsZWN0cmljLmNvbS9vY3NwME8GCCsGAQUFBzAChkNodHRwOi8vcmV2
b2NhdGlvbi5wa2ktaXQuc2NobmVpZGVyLWVsZWN0cmljLmNvbS9jcmwvSVQtUEtJ
LTEoMSkuY3J0MAsGA1UdDwQEAwIF4DA+BgkrBgEEAYI3FQcEMTAvBicrBgEEAYI3
FQiDlrl1hf/BcYXBgRqC1MAnhO/8b4EwhOSoW4OV8gQCAWQCARMwEwYDVR0lBAww
CgYIKwYBBQUHAwEwGwYJKwYBBAGCNxUKBA4wDDAKBggrBgEFBQcDATAiBgNVHREE
GzAZghd3dXhpLXBjYmF3bXMtdWF0LnNlLmNvbTANBgkqhkiG9w0BAQsFAAOCAQEA
bmb4PEz3BrjDBytLJ2MNcy06/c6Ly6nHPYbPmSNogboVU5Vx3Hn4TnXxNQYNI3jo
ClMAWr2fNpfozVz1WiypC+mu2JztkTqa/Zs/uZrw0FbUZmah0qP5crxeYWxdQ0SN
TUBm9B9TKjrkz6/EKwoQWJMQKvFwXlRD1faGeSH4g/a+WawEasuosp/1NcOW28au
IfpXzktEOIHeNH7wZ/HvhZRYZvi0sdAHrpzgdyGYH/TzmwGnnLJD0c26rCgQKbYA
EAjkj25L0Bntd+mZjShzydotvf61CcM4s/80L5UsYhffQVc90CqJdysPdNbMyzWv
itWli7/wqlwsXaOGY7NKcg==
-----END CERTIFICATE-----