Skip to content
Snippets Groups Projects
Commit 9ae857e8 authored by aticig's avatar aticig
Browse files

Setup scripts for Charmed OSM Hackfest 15


Signed-off-by: aticig's avatarGulsum Atici <gulsum.atici@canonical.com>
parent 928ddff0
No related branches found
No related tags found
1 merge request!223Setup scripts for Charmed OSM Hackfest 15
Pipeline #11065 failed with stage
in 1 minute and 18 seconds
Showing
with 455 additions and 0 deletions
## Setting up Participant VMs
First, check the common-vars for the following:
```
APT_PROXY=http://172.21.1.1:3142
FLAVOR=m1.xlarge
PROJECT=f15ab4f845dc4052811fce96a3676ac8
SUBNET=172.21.248
```
APT_PROXY: the address of a caching web proxy for installing packages
FLAVOR: the flavour of the new VM to launch. Must have at least 4 CPUs, 8 GB RAM and 60 GB Disk.
PROJECT: The project ID in which to launch the new VM
SUBNET: the first three octets of the subnet to use. IP addresses will be allocated from this subnet, starting with .101 - .199
### Initial Configuration
This script updates apt, upgrades the system to the latest 20.04 and installs remote desktop software
```
./run-vm-initial-setup.sh
```
### Install Microk8s
This script will configure the Microk8s VM launched by the create-openstack-user-and-project script.
```
./run-microk8s-setup.sh
```
### Install OSM
This script downloads the installer and runs it. It also sets the OSM admin password to `hackfest`.
```
./run-install-osm.sh
```
### Add VIM and K8s Cluster
```
./run-osm-vim-k8scluster-add.sh
```
## Full Flow
```
./run-create-openstack-user-and-project.sh 1 1
./run-vm-setup.sh 1 1
./run-microk8s-setup.sh 1 1
./run-install-osm.sh 1 1
./run-osm-vim-k8scluster-add.sh 1 1
```
cleanup() {
# kill all processes whose parent is this process
pkill -P $$
}
for sig in INT QUIT HUP TERM; do
trap "
cleanup
trap - $sig EXIT
kill -s $sig "'"$$"' "$sig"
done
trap cleanup EXIT
if [ ! -z ${DEBUG} ]; then
set -x
fi
START=5
MAX=10
if [ ! -z $2 ] ; then
START=$1
MAX=$2
elif [ ! -z $1 ] ; then
START=$1
MAX=$1
fi
# ETSI VIM ADMIN_DOMAIN=default
APT_PROXY=http://172.21.1.1.3142
FLAVOR=osm.sanity
KEY_NAME=hackfest
NETWORK=osm-ext
SUBNET=172.21.19
ZONE=hackfest
MANAGEMENT_SUBNET=10.1.0
PRIVATE_SUBNET=192.168.239
-----BEGIN OPENSSH PRIVATE KEY-----
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
-----END OPENSSH PRIVATE KEY-----
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCclrtqjkMHuQJag9iR0/R//Dmtbu3tjOxNgId0pXwz+aS17Bv43cRsXFzGzsJq63kz0z6ClmknJjR38zu3O+GUBta92JzCSMuBTq6MpnDC7F8/JztQmvHDR3A2W5u1oVtZr+1fKAqWT7n8gIUVhjh3p1eSp9iM78JR+lJc7D6EvupL1mRudcWguIvCfPRmbnABMhR3IO0f13OtYJHAVrRAoSa5qRHEmhjkEutr0d+iuTxVmoWbAG0DiuxEcG7zbQtjBHJWqTg5dgqNJ9ZdIlY+jKw60632Ul5oD9L4OK0BDALBRNK4TqJcYsB+dBuLgblyeMyPX7cDrGOnSLAz//eSXcewkZfoZWUPmFbMBKPNCgaLjDIeYzdLc4XBCXTouO/htGM0idQUT/bebbNCDWHeJ5CU8yRvEsedJ0xb4kEUwf1rrPJqsuY1faGzHgO+LAPGoJID4GH2Bw1H+lYN/hstwGrCYKMEFDbzJJ3Cm/+GQ+f3OjJpEGsUit8mRvPswic= mark@mark-G5-5090
#OpenStack Credentials
PARTICIPANT=$1
export OS_AUTH_URL=http://172.21.247.1:5000/v3
export OS_PROJECT_NAME=hackfest15group${PARTICIPANT}
export OS_USER_DOMAIN_NAME='Default'
export OS_PROJECT_DOMAIN_ID='default'
export OS_USERNAME=hackfest15group${PARTICIPANT}
export OS_PASSWORD=hackfest15group-${PARTICIPANT}!
export OS_REGION_NAME='RegionOne'
export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3
#cloud-config
password: hackfest
chpasswd: { expire: False }
ssh_pwauth: True
write_files:
- path: /etc/netplan/99-default-route.yaml
owner: root:root
content: |
network:
version: 2
ethernets:
ens4:
dhcp4-overrides:
use-routes: false
runcmd:
- reboot
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. common-vars
./run-vm-initial-setup.sh $@
./run-microk8s-setup.sh $@ &
./run-install-osm.sh $@
wait
./run-osm-vim-k8scluster-add.sh $@
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 0`
source ./openstack_credentials.rc PARTICIPANT
scp -o StrictHostKeyChecking=no -i hackfest_rsa ./vm-install-osm.sh ubuntu@${SUBNET}.${IP}: &
done
wait
for PARTICIPANT in `seq ${START} ${MAX}` ; do
source ./openstack_credentials.rc PARTICIPANT
IP=`expr ${PARTICIPANT} + 0`
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ./vm-install-osm.sh 2>&1 | tee -a logs/vm-install-osm-${PARTICIPANT}.log&
done
wait
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
source ./openstack_credentials.rc PARTICIPANT
IP=`expr ${PARTICIPANT} + 0`
scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa ./hackfest_rsa.pub ubuntu@${SUBNET}.${IP}:.ssh/ &
scp -o StrictHostKeyChecking=no -i hackfest_rsa vm-microk8s-setup.sh ubuntu@${SUBNET}.${IP}: &
done
wait
for PARTICIPANT in `seq ${START} ${MAX}` ; do
source ./openstack_credentials.rc PARTICIPANT
IP=`expr ${PARTICIPANT} + 0`
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "scp -o StrictHostKeyChecking=no -i .ssh/hackfest_rsa vm-microk8s-setup.sh 10.0.0.11:; ssh -o StrictHostKeyChecking=no -i .ssh/hackfest_rsa 10.0.0.11 ./vm-microk8s-setup.sh" 2>&1 | tee -a logs/vm-microk8s-setup-${PARTICIPANT}.log&
done
wait
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
export OS_AUTH_URL=http://172.21.247.1:5000/v3
export OS_PROJECT_NAME=hackfest15group${PARTICIPANT}
export OS_USER_DOMAIN_NAME='Default'
export OS_PROJECT_DOMAIN_ID='default'
export OS_USERNAME=hackfest15group${PARTICIPANT}
export OS_PASSWORD=hackfest15group-${PARTICIPANT}!
export OS_REGION_NAME='RegionOne'
export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3
IP=`expr ${PARTICIPANT} + 0`
OS_USERNAME=hackfest15group${PARTICIPANT}
OS_PASSWORD=hackfest15group-${PARTICIPANT}!
OS_PROJECT_NAME=hackfest15group${PARTICIPANT}
cat << EOF > ${OS_USERNAME}.rc
export OS_AUTH_TYPE=password
export OS_AUTH_URL=${OS_AUTH_URL}
export OS_DOMAIN_NAME=${OS_DOMAIN_NAME}
export OS_IDENTITY_API_VERSION=3
export OS_INTERFACE=public
export OS_PASSWORD=${OS_PASSWORD}
export OS_PROJECT_DOMAIN_NAME=${OS_DOMAIN_NAME}
export OS_PROJECT_NAME=${OS_PROJECT_NAME}
export OS_REGION_NAME=${OS_REGION_NAME}
export OS_TENANT_NAME=${OS_USERNAME}
export OS_USERNAME=${OS_USERNAME}
export OS_USER_DOMAIN_NAME=${OS_DOMAIN_NAME}
EOF
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm version"
while [ $? -ne -0 ] ; do
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm version"
done
scp -o StrictHostKeyChecking=no -i hackfest_rsa ${OS_USERNAME}.rc ubuntu@${SUBNET}.${IP}:
scp -o StrictHostKeyChecking=no -i hackfest_rsa pc-cacert.pem ubuntu@${SUBNET}.${IP}:
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} ". .profile;osm vim-create --name openstack --user ${OS_USERNAME} --password ${OS_PASSWORD} --auth_url ${OS_AUTH_URL} --tenant ${OS_PROJECT_NAME} --account_type openstack --config=\"{ management_network_name: osm-ext, security_groups: default, insecure: true, project_domain_name: ${OS_PROJECT_DOMAIN_NAME}, user_domain_name: ${OS_USER_DOMAIN_NAME} }\"" 2>&1 | tee -a logs/osm-vim-k8scluster-add-${PARTICIPANT}.log
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "scp -o StrictHostKeyChecking=no -i .ssh/hackfest_rsa ${MANAGEMENT_SUBNET}.11:kubeconfig.yaml ." 2>&1 | tee -a logs/osm-vim-k8scluster-add-${PARTICIPANT}.log
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} '. .profile;osm k8scluster-add --creds kubeconfig.yaml --vim openstack --k8s-nets "{"net1": "osm-ext"}" --version 1.23 --namespace hackfest --description "Microk8s cluster" hackfest' 2>&1 | tee -a logs/osm-vim-k8scluster-add-${PARTICIPANT}.log
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "echo . ~/${OS_USERNAME}.rc >> .bashrc"
done
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
. ./common-vars $@
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 0`
source ./openstack_credentials.rc PARTICIPANT
scp -o StrictHostKeyChecking=no -i hackfest_rsa vm-initial-setup.sh ubuntu@${SUBNET}.${IP}: &
scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa ubuntu@${SUBNET}.${IP}:.ssh/id_rsa &
scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa.pub ubuntu@${SUBNET}.${IP}:.ssh/id_rsa.pub &
scp -o StrictHostKeyChecking=no -i hackfest_rsa ./hackfest_rsa ./hackfest_rsa.pub ubuntu@${SUBNET}.${IP}:.ssh/ &
scp -o StrictHostKeyChecking=no -i hackfest_rsa vm-microk8s-setup.sh ubuntu@${SUBNET}.${IP}: &
done
wait
for PARTICIPANT in `seq ${START} ${MAX}` ; do
IP=`expr ${PARTICIPANT} + 0`
source ./openstack_credentials.rc PARTICIPANT
ssh -o StrictHostKeyChecking=no -i hackfest_rsa ubuntu@${SUBNET}.${IP} "./vm-initial-setup.sh" 2>&1 | tee -a logs/vm-initial-setup-${PARTICIPANT}.log &
done
wait
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
sudo sed -i "s/127.0.0.1 /127.0.0.1 $HOSTNAME /" /etc/hosts
echo 'ubuntu:hackfest'| sudo chpasswd
sudo sed -i "s/^PasswordAuthentication.*/PasswordAuthentication yes/" /etc/ssh/sshd_config
sudo service ssh restart
echo "Acquire::http::Proxy \"http://172.21.1.1:3142\";" | sudo tee /etc/apt/apt.conf.d/proxy.conf
echo "Acquire::https::Proxy \"http://172.21.1.1:3142\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf
sudo apt update
sudo apt full-upgrade -y
sudo snap install code --classic
sudo snap install openstackclients yq jq
echo net.ipv4.ip_forward=1 | sudo tee -a /etc/sysctl.conf
sudo sysctl net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
cat << EOF | sudo tee /etc/rc.local
#!/bin/sh -e
echo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
EOF
sudo chmod +x /etc/rc.local
git clone --recurse-submodules -j8 https://osm.etsi.org/gitlab/vnf-onboarding/osm-packages.git
# Clone OSM code
mkdir $HOME/OSM/
pushd $HOME/OSM
BRANCH=master
for MDG in common devops IM LCM MON N2VC NBI NG-SA NG-UI osmclient PLA POL RO tests; do
git clone https://osm.etsi.org/gerrit/osm/${MDG}
git -C ${MDG} checkout ${BRANCH}
done
popd
# Export Module paths
cat << 'EOF' > $HOME/osm-vars.sh
export GIT_PATH=$HOME/OSM
export COMMON_LOCAL_PATH="$GIT_PATH/common"
export LCM_LOCAL_PATH="$GIT_PATH/LCM"
export MON_LOCAL_PATH="$GIT_PATH/MON"
export N2VC_LOCAL_PATH="$GIT_PATH/N2VC"
export NBI_LOCAL_PATH="$GIT_PATH/NBI"
export POL_LOCAL_PATH="$GIT_PATH/POL"
export RO_LOCAL_PATH="$GIT_PATH/RO"
EOF
echo ". $HOME/osm-vars.sh" >> $HOME/.bashrc
. $HOME/osm-vars.sh
echo $0 $@ complete at $(date)
#!/bin/bash
echo $0 started at $(date)
sudo snap install microk8s --classic --channel=1.26/stable
sudo snap install jq
sudo mkdir -p /var/snap/microk8s/current/args/certs.d/docker.io
cat << EOF | sudo tee /var/snap/microk8s/current/args/certs.d/docker.io/hosts.toml
server = "http://172.21.1.1:5000"
[host."http://172.21.1.1:5000"]
capabilities = ["pull", "resolve"]
skip_verify = true
plain-http = true
EOF
sudo systemctl restart snap.microk8s.daemon-containerd.service
sudo microk8s.enable storage
sudo snap alias microk8s.kubectl kubectl
wget https://osm-download.etsi.org/ftp/osm-13.0-thirteen/install_osm.sh
chmod +x ./install_osm.sh
./install_osm.sh --charmed -R testing-daily -t testing-daily -r testing -y 2>&1 | tee charmed_install_log.txt
# Set our environment to talk to the new OSM
grep '^export OSM' ~/charmed_install_log.txt >> ~/.bashrc
while [ 1 ] ; do
osm version
if [ $? -eq 0 ]; then break ; fi
done
# Expose our services
sudo sed -i "s/127.0.0.1 /127.0.0.1 nbi.osm ui.osm grafana.osm prometheus.osm /" /etc/hosts
juju config -m osm grafana site_url=https://grafana.osm
juju config -m osm prometheus site_url=https://prometheus.osm
juju config -m osm nbi external-hostname=nbi.osm
juju config -m osm ng-ui external-hostname=ui.osm
echo "export OSM_HOSTNAME=nbi.osm:443" >> .bashrc
echo "export OSM_HOSTNAME=nbi.osm:443" >> .profile
echo "export OSM_PASSWORD=hackfest" >> .bashrc
echo "export OSM_PASSWORD=hackfest" >> .profile
# Set some sane defaults for LXD
lxc profile set default limits.memory 1GB
lxc profile set default limits.cpu 2
echo $0 $@ complete at $(date)
\ No newline at end of file
#!/bin/bash
echo $0 started at $(date)
sudo sed -i "s/127.0.0.1 /127.0.0.1 $HOSTNAME /" /etc/hosts
echo 'ubuntu:hackfest'| sudo chpasswd
sudo sed -i "s/^PasswordAuthentication.*/PasswordAuthentication yes/" /etc/ssh/sshd_config
sudo service ssh restart
echo "Acquire::http::Proxy \"http://172.21.1.1:3142\";" | sudo tee /etc/apt/apt.conf.d/proxy.conf
echo "Acquire::https::Proxy \"http://172.21.1.1:3142\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf
sudo apt update
sudo apt full-upgrade -y
sudo snap install microk8s --classic --channel=1.26/stable
sudo mkdir -p /var/snap/microk8s/current/args/certs.d/docker.io
cat << EOF | sudo tee /var/snap/microk8s/current/args/certs.d/docker.io/hosts.toml
server = "http://172.21.1.1:5000"
[host."http://172.21.1.1:5000"]
capabilities = ["pull", "resolve"]
skip_verify = true
plain-http = true
EOF
sudo microk8s stop
sudo microk8s start
sudo microk8s.enable storage
HOST_IP=10.0.0.11
METALLB_START=10.0.0.201
METALLB_END=10.0.0.250
sudo cat /var/snap/microk8s/current/args/kube-apiserver | grep advertise-address || ( echo "--advertise-address ${HOST_IP}" | sudo tee -a /var/snap/microk8s/current/args/kube-apiserver; sudo microk8s.stop; sudo microk8s.start; )
sudo microk8s.enable metallb:${METALLB_START}-${METALLB_END}
sudo microk8s.enable ingress storage dns
sudo microk8s status --wait-ready
KUBECONFIG=~/kubeconfig.yaml
sudo microk8s config | tee ${KUBECONFIG}
sudo usermod -a -G microk8s ubuntu
sudo chown -f -R ubuntu ~/.kube
sudo snap alias microk8s.kubectl kubectl
echo $0 $@ complete at $(date)
\ No newline at end of file
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUMvakNDQWVhZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJeU1EY3dOekl5TlRrMU9Gb1hEVE15TURjd05ESXlOVGsxT0Zvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTFVDCjdXUkFZTU90SmJ1U1loQ2FrVDZ3VUdKZEtZdUdRb29xd3F5WStnRW8yU1RnZEhPZEdpZzVJMjF3cG9tdFV1V2sKREhmZUJHMHIvRGkvUHdML3VEb0tqUFVvdU5JdTBYc1FTYXIrOGNMTkdWSDczSnBJcWRaZDVEREthdWFacU9ONQovdlJjdVBiWHdLNldkRmdldDB3RWQycVlKQytmNk9Dcm5oUnlSOGJvWVdxZ2kvNzhNSHFwMERNQ0I4TDFHRHVmCjdJVEFodUtBaUM1a2llQ1NzY1cwT0NVdTZPazdCVTZVc3dhd2phRVlWbUVkS0Flb0o2UWNGTHBnWkFvdDA2aFIKYlRqTmNkLzdLRDNCZVJWc3QycGZqL2lQdlVXaDBiR1VWREZDRXV1UC9VTUNRdHZ6SWVIUEhZamtjNkZYSldWSwpyZGk5bGNuV1FRSlVJVENLcFlzQ0F3RUFBYU5aTUZjd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0hRWURWUjBPQkJZRUZQMGRZVzdhVVlMZ0dpNk53aW1iV3llUWh0bjZNQlVHQTFVZEVRUU8KTUF5Q0NtdDFZbVZ5Ym1WMFpYTXdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBQVBoNGhOUGlPUlZVZXQzRXgwTgpHekNUM1Q1OUtzMHFaa0JUMnpkM29qc0tsUS9LTS85TzJEa2YzdElnbkV6ZWlIdlMzUExTaTZkaDhISzE3MlNQCnMyUy95bW5nTWZMMlkyYU85ZTA2L3B1NEFvUG56c2ZSOFhzNnVXc2N5UkdVbXNMcjR5eVBFaythL0F4OXcxS2MKeHFQZDB2bXo4OVZMVHFHb2hjZVJKcmVkMU1RcnNnMnMzR1pzRDU4MVRpVlI0bGQ3VlpNSnpGM01Wa3hOazNnagp6dm5SQU01MHhPdmx1ek9ZVHo5aEthRjk0QTVta2pzck02ZStmdHN0dEpzQWduWnpIVHlaUFFkYW9TTE9YeWx6CnY2VGhrYjZvLzFXWjVTQjMrcCttRlJYYmN4UC9tS04zNktiem5UOWJpVlJTRkVXcWswTmdHdUZiNDBvNkJLM3gKckFRPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
server: https://172.21.248.125:6443
name: cluster.local
contexts:
- context:
cluster: cluster.local
user: kubernetes-admin
name: kubernetes-admin@cluster.local
current-context: kubernetes-admin@cluster.local
kind: Config
preferences: {}
users:
- name: kubernetes-admin
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJVENDQWdtZ0F3SUJBZ0lJSkFwcnBoNU9PUjB3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TWpBM01EY3lNalU1TlRoYUZ3MHlNekEzTURjeU16QXdNREJhTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXhqWW0wUUlYL1NsbENlVjgKb042Yy9YWmJjZ3crNENTYk9UTU9qYjNQeGJsRmVGbDlxeTZGQVVheVlxb3BjTjc0d2h1WlEvMlZ2OTAvcWs5VAo0aFVWdytFdjNmWkhsc3E0cnJWZDVBK0FINTBscVYvVm10VDV5dWJYMURjSFhVdDU5c3dtc1c2aWxRVDNvbG1uClJuaEpOS2ZvajRqUEw2Z1JrL01FL3Q5VHVpamtPdHBIaWd2VW1aTWpWQkMwb2NRajlQekRJcnZSUUpkSnNIdzAKZ1lJNUZldXlkY3BoeENSc3NQdE00MnBDMjZjQkZIdWpzTzUwZE1ETDRIZUV4ZGhTYUxOZDJRbWxSQy84NGNnegpvbk43b1ZmR0VqL0FVSFFCa3RtZ2RiSU9sd0JaZjVXUzVZeThGcCtGNEZQZG1EYlpmZ3dZeUNZZnNNOEZTb2xwClA0TU84d0lEQVFBQm8xWXdWREFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RBWURWUjBUQVFIL0JBSXdBREFmQmdOVkhTTUVHREFXZ0JUOUhXRnUybEdDNEJvdWpjSXBtMXNua0liWgorakFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBbVRURk5mK0prbG4wRHZRVW9ZYTlsUFZTRCs4VkI2WkJ6bVd0Ci9ialEyZ3hmTHErc0o3aHNabm04b2s4UGRGVWwwa1RsQlRiWldxTmhuZkVmUWcyZUZxNHYvNmhXMWNnbUxBOVQKV0hmU2Vwclg4VDBDVmRSUFA2MHo1L2ZJYWlGeXBwR2pXZWVUSDBWZkQ2RmRsSzNkVSs1VjFpVThnbVU0SXB6RQpLL0ExNEEzSGRROVM4bTgwQzBCek14ZTEyQWtWZlNDWkNVcHJjVU1QalZlcDRYY2tZcHkzTXN3cjFpaU9aZ1lHCm5RL3NIZTN6T2hURFppSEZBSFREL3k2RW8xbzk5bHJTcmNSWFEvK1I1YVQ1aG9xYkt0ZitiMjd2c1lMRTlPd1AKZ3BZT3ZFeXhtL05GNjR4WDFqZVoyeGdMZDBzV1BmdVM0cHdXbDczY250TlNveE5iSHc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBeGpZbTBRSVgvU2xsQ2VWOG9ONmMvWFpiY2d3KzRDU2JPVE1PamIzUHhibEZlRmw5CnF5NkZBVWF5WXFvcGNONzR3aHVaUS8yVnY5MC9xazlUNGhVVncrRXYzZlpIbHNxNHJyVmQ1QStBSDUwbHFWL1YKbXRUNXl1YlgxRGNIWFV0NTlzd21zVzZpbFFUM29sbW5SbmhKTktmb2o0alBMNmdSay9NRS90OVR1aWprT3RwSAppZ3ZVbVpNalZCQzBvY1FqOVB6RElydlJRSmRKc0h3MGdZSTVGZXV5ZGNwaHhDUnNzUHRNNDJwQzI2Y0JGSHVqCnNPNTBkTURMNEhlRXhkaFNhTE5kMlFtbFJDLzg0Y2d6b25ON29WZkdFai9BVUhRQmt0bWdkYklPbHdCWmY1V1MKNVl5OEZwK0Y0RlBkbURiWmZnd1l5Q1lmc004RlNvbHBQNE1POHdJREFRQUJBb0lCQVFDSXY4MlIvNjdMUStibwpxQUtPL21jelc1Z0ZuRHM0NnlpSWt4Z2taR05YbDlZOURRanR0RitoSE1SdjI5UlJnaFAvMzRpalp1NE0vRGt6CmFCMklhbUdremRUM2Z6V3U3RmYwZVQ2NDNKVFp1dExFQTFGY3pEazJhb05YYjB2T2F3ZFBaVlFBc0VMTkt5c3EKUUU1dkNRZ0FveU9JKzZ0dHhyZXg2a1YxRG1FMm1rM1BOZkNtQ3FybVhoSGorZHJQZlhGZElnM0VLVFFwWW43bApSQ1VzM09lZXowZkt5T1lsYmw3U3ZBeHNvN1J2UVFHYmcvQTNFZzkwb1hSY0Rxd3NxK3p4VkF6WlRJcWtIREYxCmkrbnVqTEFHV1lLQ0huK2xyUW8xUnFRcmJYS1hQdFBPTVlUOWVzeWNmMkhYaEQ1aCtSMEZXRHdPVUJkVndyUnEKU0ZmZllCSXBBb0dCQU05Wkc3SW5iVmpCeWxqNWVGczZrZzRwMTVjOS92bmZtZjhydEVkY3JVQk42MVAyc3pHVwpLeUpOM0hNQXI5ZUxvU1ZhbldMaXZEQmVxQ1VDOVE1ZTByME5JRGlEOXpsSjIwcm1vOWh1aFpRSEZ0a1c5aGZDCmlYblNQSEtHTUk1SGpiQ2xzaTlabklwMmlKR0IvSXVpQit2OFE3eUQyZUNiUm1SdUE1RjUyUzNYQW9HQkFQUzQKTzdqbTdGRS9xdnd0aEZwUzlBRUFBSE1JaFVrWlpiMDB5bEFwNlA2M2F5R0krbGR1Wlp5RjIwc004cUtaeFlCQQpIT2lZRG1tSG9NTXdSTDNURnJma3U1d253NE5hRmJROTE0NXZKMy9UbG9pVG9BYUJnMGdiRzZVNEFnTjFEU3U4ClY4b2ZSWlJhMUJTbkkvazQ4ZVNucUs0Zlh0ajVSUU9CK0FCcUZXeEZBb0dBUUhBUjRtRE1ZNnYrQlg2cC83Z0oKRWV2QSsxaWg5K2VjaFNlQTVEaVNBd3owR0dqdnNYWll1MVYxTUN4RGVYb0VQNGFVcU5tTDRJQmFRdjVUUi84QwpBUXltT2NvUk43V1RPQWpMWElTa2NLZHZXMUgrY3MzYlNZZWpqM2ZTZVRVVmZKTlI5OU1paWdsaVVjNFN2UlpDCjNmek0xRFlwck5xMG1wdHg4bkRxcElzQ2dZQmZLcDRmQTc1MndqbXVJODFLaXVQVTE3bFZBc1ZDYmh3QWZsMEcKMjZWK0dMb1Nxb0FnTEJCYjFEbzViMm1VRGhTZUVWQ3NxeVUvcUx5OTZ6RndXSHlIT3U0eWhjd2tjbzNxTC9wNQpxNFJDMDNmQTJSZnNMOFZyN3c3TEs0S3M4WUlUdGdTMTEzOXBlQUR0bnlvQUswTDJWclRrTWRMaXNkMUN4Zkk1Cnh3ZFp1UUtCZ1FES1dNS1lwcVBHUjlVY2ZiSDVMdHpzcVBHQW1GeDZZVHV1RW94RHFZTDcvVkZ2ZDB3WkFrNlUKUDQ2UzVBUHFMckF0Z1lRcEo1a3NlZjJGSy9QMDhKMUlRYW4rN2tIdnNSMHpBSEtSYW9NdUVPbDdVVTlpQWcwbwp2a1FUd1RjVFNjV2hMdDlta21SOFByWHVLNEtZZ2lnSEg1aXlrUTRwN2dRZ0llVUkxeG50aXc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment