introduce arrow host and deployment

This commit is contained in:
Noah Masur 2024-03-24 13:16:20 -04:00
parent b06ebc7185
commit 67ab65fa16
41 changed files with 696 additions and 315 deletions

133
.github/workflows/arrow.yml vendored Normal file
View File

@ -0,0 +1,133 @@
name: Arrow
env:
TERRAFORM_DIRECTORY: hosts/arrow
DEPLOY_IDENTITY_BASE64: ${{ secrets.DEPLOY_IDENTITY_BASE64 }}
ARROW_IDENTITY_BASE64: ${{ secrets.ARROW_IDENTITY_BASE64 }}
CLOUDFLARE_R2_ENDPOINT: "${{ secrets.CLOUDFLARE_ACCOUNT_ID }}.r2.cloudflarestorage.com"
TF_VAR_cloudflare_account_id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
TF_VAR_cloudflare_r2_access_key: ${{ secrets.CLOUDFLARE_R2_ACCESS_KEY }}
TF_VAR_cloudflare_r2_secret_key: ${{ secrets.CLOUDFLARE_R2_SECRET_KEY }}
TF_VAR_vultr_api_key: ${{ secrets.VULTR_API_KEY }}
on:
workflow_dispatch:
inputs:
rebuild:
type: bool
required: true
default: false
action:
type: choice
required: true
default: create
options:
- create
- destroy
jobs:
build-deploy:
name: Build and Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout Repo Code
uses: actions/checkout@v4
# Enable access to KVM, required to build an image
- name: Enable KVM group perms
if: inputs.rebuild && inputs.action != 'destroy'
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
# Install Nix
- name: Install Nix
if: inputs.rebuild && inputs.action != 'destroy'
uses: cachix/install-nix-action@v17
# Build the image
- name: Build Image
if: inputs.rebuild && inputs.action != 'destroy'
run: nix build .#image.arrow
- name: Upload Image to S3
if: inputs.rebuild && inputs.action != 'destroy'
run: |
aws s3 cp \
result/iso/nixos.iso \
s3://noahmasur-arrow-images/arrow.iso \
--endpoint-url "https://${{ env.CLOUDFLARE_R2_ENDPOINT }}"
# # Copy the image to S3
# - name: Upload Image to Cache
# env:
# NIX_CACHE_PRIVATE_KEY: ${{ secrets.NIX_CACHE_PRIVATE_KEY }}
# run: |
# echo "$NIX_CACHE_PRIVATE_KEY" > cache.key
# nix store sign --key-file cache.key $(readlink result)
# nix copy --to s3://t2-aws-nixos-test $(readlink result)
# rm cache.key
# Installs the Terraform binary and some other accessory functions.
- name: Setup Terraform
uses: hashicorp/setup-terraform@v2
# Checks whether Terraform is formatted properly. If this fails, you
# should install the pre-commit hook.
- name: Check Formatting
run: |
terraform fmt -no-color -check -diff -recursive
# Connects to remote state backend and download providers.
- name: Terraform Init
working-directory: ${{ env.TERRAFORM_DIRECTORY }}
run: |
terraform init \
-backend-config="endpoint=${{ env.CLOUDFLARE_R2_ENDPOINT }}" \
-backend-config="workspace_key_prefix=${{ github.repository }}/arrow" \
-backend-config="key=state.tfstate" \
-backend-config="skip_credentials_validation=true" \
-backend-config="skip_region_validation=true" \
-backend-config="region=anything" \
-backend-config="bucket=noahmasur-terraform"
# Deploys infrastructure or changes to infrastructure.
- name: Terraform Apply
if: inputs.action == 'create'
working-directory: ${{ env.TERRAFORM_DIRECTORY }}
run: |
terraform apply \
-auto-approve \
-input=false
# Removes infrastructure.
- name: Terraform Destroy
if: inputs.action == 'destroy'
working-directory: ${{ env.TERRAFORM_DIRECTORY }}
run: |
terraform destroy \
-auto-approve \
-input=false
- name: Get Host IP
if: inputs.action == 'create'
id: host
working-directory: ${{ env.TERRAFORM_DIRECTORY }}
run: terraform output host_ip
- name: Wait on SSH
uses: iFaxity/wait-on-action@v1.1.0
with:
resource: tcp ${{ steps.host.outputs.stdout }}:22
interval: 5000
- name: Write Identity Keys to Files
if: inputs.action == 'create'
run: |
echo "${{ env.DEPLOY_IDENTITY_BASE64 }}" | base64 -d > deploy_ed25519
echo "${{ env.ARROW_IDENTITY_BASE64 }}" | base64 -d > arrow_ed25519
- name: Copy Identity File to Host
if: inputs.action == 'create'
run: scp -i deploy_ed25519 arrow_ed25519 noah@${{ steps.host.outputs.stdout }}:~/.ssh/id_ed25519

1
.gitignore vendored
View File

@ -1,6 +1,7 @@
.DS_Store .DS_Store
*.bak *.bak
*.db *.db
*.qcow2
**/.direnv/** **/.direnv/**
result result
private/** private/**

View File

@ -246,6 +246,7 @@
content = "cloud.${baseName}"; content = "cloud.${baseName}";
books = "books.${baseName}"; books = "books.${baseName}";
download = "download.${baseName}"; download = "download.${baseName}";
transmission = "transmission.${baseName}";
}; };
}; };
@ -279,6 +280,7 @@
# Contains my full system builds, including home-manager # Contains my full system builds, including home-manager
# nixos-rebuild switch --flake .#tempest # nixos-rebuild switch --flake .#tempest
nixosConfigurations = { nixosConfigurations = {
arrow = import ./hosts/arrow { inherit inputs globals overlays; };
tempest = import ./hosts/tempest { inherit inputs globals overlays; }; tempest = import ./hosts/tempest { inherit inputs globals overlays; };
hydra = import ./hosts/hydra { inherit inputs globals overlays; }; hydra = import ./hosts/hydra { inherit inputs globals overlays; };
flame = import ./hosts/flame { inherit inputs globals overlays; }; flame = import ./hosts/flame { inherit inputs globals overlays; };
@ -305,6 +307,8 @@
diskoConfigurations = { root = import ./disks/root.nix; }; diskoConfigurations = { root = import ./disks/root.nix; };
packages = let packages = let
arrow = system:
import ./hosts/arrow { inherit inputs globals overlays system; };
aws = system: aws = system:
import ./hosts/aws { inherit inputs globals overlays system; }; import ./hosts/aws { inherit inputs globals overlays system; };
staff = system: staff = system:
@ -316,8 +320,18 @@
colors = (import ./colorscheme/gruvbox-dark).dark; colors = (import ./colorscheme/gruvbox-dark).dark;
}; };
in { in {
x86_64-linux.arrow = arrow "x86_64-linux";
x86_64-linux.aws = aws "x86_64-linux"; x86_64-linux.aws = aws "x86_64-linux";
x86_64-linux.staff = staff "x86_64-linux"; x86_64-linux.staff = staff "x86_64-linux";
x86_64-linux.image = {
arrow = inputs.nixos-generators.nixosGenerate {
system = "x86_64-linux";
format = "iso";
modules = import ./hosts/arrow/modules.nix {
inherit inputs globals overlays;
};
};
};
# Package Neovim config into standalone package # Package Neovim config into standalone package
x86_64-linux.neovim = neovim "x86_64-linux"; x86_64-linux.neovim = neovim "x86_64-linux";

8
hosts/arrow/default.nix Normal file
View File

@ -0,0 +1,8 @@
{ inputs, globals, overlays, ... }:
inputs.nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { };
modules = import ./modules.nix { inherit inputs globals overlays; };
}

93
hosts/arrow/main.tf Normal file
View File

@ -0,0 +1,93 @@
terraform {
backend "s3" {}
required_version = ">= 1.0.0"
required_providers {
aws = {
source = "hashicorp/aws"
version = "5.42.0"
}
vultr = {
source = "vultr/vultr"
version = "2.19.0"
}
}
}
# locals {
# image_file = one(fileset(path.root, "result/iso/nixos.iso"))
# }
variable "cloudflare_account_id" {
type = string
description = "ID of the Cloudflare account"
}
variable "cloudflare_r2_access_key" {
type = string
description = "Non-sensitive access key ID for Cloudflare R2"
}
variable "cloudflare_r2_secret_key" {
type = string
description = "Sensitive access key secret for Cloudflare R2"
sensitive = true
}
variable "vultr_api_key" {
type = string
description = "API key for Vultr management"
sensitive = true
}
provider "aws" {
region = "us-east-1"
access_key = var.cloudflare_r2_access_key
secret_key = var.cloudflare_r2_secret_key
skip_credentials_validation = true
skip_region_validation = true
skip_requesting_account_id = true
endpoints {
s3 = "https://${var.cloudflare_account_id}.r2.cloudflarestorage.com"
}
}
provider "vultr" {
api_key = var.vultr_api_key
}
# data "aws_s3_bucket" "images" {
# bucket = "noahmasur-arrow-images"
# }
#
# resource "aws_s3_object" "image" {
# bucket = data.aws_s3_bucket.images.id
# key = "arrow.iso"
# source = local.image_file
# etag = filemd5(local.image_file)
# acl = "public-read"
# }
resource "vultr_iso_private" "image" {
# url = "https://${var.cloudflare_account_id}.r2.cloudflarestorage.com/${data.aws_s3_bucket.images.id}/${aws_s3_object.image.key}"
url = "https://arrow.images.masu.rs/arrow.iso"
}
resource "vultr_instance" "arrow" {
plan = "vc2-1c-2gb"
region = "ewr"
iso_id = vultr_iso_private.image.id
label = "arrow"
tags = ["arrow"]
enable_ipv6 = false
disable_public_ipv4 = false
backups = "disabled"
ddos_protection = false
activation_email = false
}
output "host_ip" {
value = vultr_instance.arrow.main_ip
}

34
hosts/arrow/modules.nix Normal file
View File

@ -0,0 +1,34 @@
{ inputs, globals, overlays }:
[
globals
inputs.home-manager.nixosModules.home-manager
{
nixpkgs.overlays = overlays;
networking.hostName = "arrow";
physical = false;
server = true;
gui.enable = false;
theme.colors = (import ../../colorscheme/gruvbox).dark;
publicKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s personal"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKpPU2G9rSF8Q6waH62IJexDCQ6lY+8ZyVufGE3xMDGw deploy"
];
identityFile = "/home/${globals.user}/.ssh/id_ed25519";
cloudflare.enable = true;
services.openssh.enable = true;
services.caddy.enable = true;
services.transmission.enable = true;
virtualisation.vmVariant = {
virtualisation.forwardPorts = [{
from = "host";
host.port = 2222;
guest.port = 22;
}];
};
}
../../modules/common
../../modules/nixos
]

View File

@ -12,8 +12,9 @@ inputs.nixos-generators.nixosGenerate {
gui.enable = false; gui.enable = false;
theme.colors = (import ../../colorscheme/gruvbox).dark; theme.colors = (import ../../colorscheme/gruvbox).dark;
passwordHash = null; passwordHash = null;
publicKey = publicKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s"; "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s personal"
];
# AWS settings require this # AWS settings require this
permitRootLogin = "prohibit-password"; permitRootLogin = "prohibit-password";
} }

View File

@ -84,8 +84,9 @@ inputs.nixpkgs.lib.nixosSystem {
}; };
# Disable passwords, only use SSH key # Disable passwords, only use SSH key
publicKey = publicKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s"; "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s personal"
];
# # Wireguard config for Transmission # # Wireguard config for Transmission
# wireguard.enable = true; # wireguard.enable = true;

View File

@ -109,8 +109,9 @@ inputs.nixpkgs.lib.nixosSystem {
}; };
# Disable passwords, only use SSH key # Disable passwords, only use SSH key
publicKey = publicKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s"; "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s personal"
];
} }
]; ];
} }

View File

@ -4,3 +4,4 @@ ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHVknmPi7sG6ES0G0jcsvebzKGWWaMfJTYgvOue6EULI flame ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHVknmPi7sG6ES0G0jcsvebzKGWWaMfJTYgvOue6EULI flame
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ9mwXlZnIALt9SnH3FOZvdgHLM5ZqwYUERXBbM7Rwh6 swan ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ9mwXlZnIALt9SnH3FOZvdgHLM5ZqwYUERXBbM7Rwh6 swan
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC3yHivgEXr2ecwe58h9bkhwTYivf3GwL8xenQKMeiUb tempest ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC3yHivgEXr2ecwe58h9bkhwTYivf3GwL8xenQKMeiUb tempest
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICmGHIWBZzRx35/yFgnPJSHN2+35WJ30G9c5tDhPsCrl arrow

View File

@ -111,6 +111,10 @@
type = lib.types.str; type = lib.types.str;
description = "Hostname for IRC services."; description = "Hostname for IRC services.";
}; };
transmission = lib.mkOption {
type = lib.types.str;
description = "Hostname for peer2peer downloads (Transmission).";
};
}; };
}; };

View File

@ -0,0 +1,19 @@
{ config, lib, modulesPath, ... }:
{
# options.iso.enable = lib.mkEnableOption "Enable creating as an ISO.";
#
# imports = [ "${toString modulesPath}/installer/cd-dvd/iso-image.nix" ];
# config = lib.mkIf config.iso.enable {
#
# # EFI booting
# isoImage.makeEfiBootable = true;
#
# # USB booting
# isoImage.makeUsbBootable = true;
#
# };
}

View File

@ -69,18 +69,40 @@ in {
}]; }];
# Allow Caddy to read Cloudflare API key for DNS validation # Allow Caddy to read Cloudflare API key for DNS validation
systemd.services.caddy.serviceConfig.EnvironmentFile = systemd.services.caddy.serviceConfig.EnvironmentFile =
config.secrets.cloudflareApi.dest; config.secrets.cloudflare-api.dest;
# API key must have access to modify Cloudflare DNS records # API key must have access to modify Cloudflare DNS records
secrets.cloudflareApi = { secrets.cloudflare-api = {
source = ../../../private/cloudflare-api.age; source = ../../../private/cloudflare-api.age;
dest = "${config.secretsDirectory}/cloudflare-api"; dest = "${config.secretsDirectory}/cloudflare-api";
owner = "caddy"; owner = "caddy";
group = "caddy"; group = "caddy";
}; };
# Wait for secret to exist
systemd.services.caddy = {
after = [ "cloudflare-api-secret.service" ];
requires = [ "cloudflare-api-secret.service" ];
};
# Allows Nextcloud to trust Cloudflare IPs # Allows Nextcloud to trust Cloudflare IPs
services.nextcloud.settings.trusted_proxies = cloudflareIpRanges; services.nextcloud.settings.trusted_proxies = cloudflareIpRanges;
# Allows Transmission to trust Cloudflare IPs
services.transmission.settings.rpc-whitelist =
builtins.concatStringsSep "," ([ "127.0.0.1" ] ++ cloudflareIpRanges);
services.cloudflare-dyndns = {
enable = true;
proxied = true;
apiTokenFile = config.secrets.cloudflare-api.dest;
};
# Wait for secret to exist
systemd.services.cloudflare-dyndns = {
after = [ "cloudflare-api-secret.service" ];
requires = [ "cloudflare-api-secret.service" ];
};
}; };
} }

View File

@ -11,6 +11,7 @@
./calibre.nix ./calibre.nix
./cloudflare-tunnel.nix ./cloudflare-tunnel.nix
./cloudflare.nix ./cloudflare.nix
./identity.nix
./irc.nix ./irc.nix
./gitea-runner.nix ./gitea-runner.nix
./gitea.nix ./gitea.nix

View File

@ -0,0 +1,19 @@
{ config, ... }: {
# Wait for secret to be placed on the machine
systemd.services.wait-for-identity = {
description = "Wait until identity file exists on the machine";
wantedBy = [ "multi-user.target" ];
serviceConfig = { Type = "oneshot"; };
script = ''
while true; do
if [ -f ${config.identityFile} ]; then
echo "Identity file found."
exit 0
fi
sleep 5
done
'';
};
}

View File

@ -68,6 +68,7 @@
description = "Decrypt secret for ${name}"; description = "Decrypt secret for ${name}";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
requires = [ "wait-for-identity.service" ];
serviceConfig.Type = "oneshot"; serviceConfig.Type = "oneshot";
script = '' script = ''
echo "${attrs.prefix}$( echo "${attrs.prefix}$(

View File

@ -3,8 +3,8 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
options = { options = {
publicKey = lib.mkOption { publicKeys = lib.mkOption {
type = lib.types.nullOr lib.types.str; type = lib.types.nullOr (lib.types.listOf lib.types.str);
description = "Public SSH key authorized for this system."; description = "Public SSH key authorized for this system.";
default = null; default = null;
}; };
@ -28,7 +28,7 @@
}; };
users.users.${config.user}.openssh.authorizedKeys.keys = users.users.${config.user}.openssh.authorizedKeys.keys =
lib.mkIf (config.publicKey != null) [ config.publicKey ]; lib.mkIf (config.publicKeys != null) config.publicKeys;
# Implement a simple fail2ban service for sshd # Implement a simple fail2ban service for sshd
services.sshguard.enable = true; services.sshguard.enable = true;

View File

@ -3,37 +3,33 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
options = {
transmissionServer = lib.mkOption {
type = lib.types.nullOr lib.types.str;
description = "Hostname for Transmission";
default = null;
};
};
config = let config = let
namespace = config.networking.wireguard.interfaces.wg0.interfaceNamespace; namespace = config.networking.wireguard.interfaces.wg0.interfaceNamespace;
vpnIp = lib.strings.removeSuffix "/32" vpnIp = lib.strings.removeSuffix "/32"
(builtins.head config.networking.wireguard.interfaces.wg0.ips); (builtins.head config.networking.wireguard.interfaces.wg0.ips);
in lib.mkIf (config.transmissionServer != null) { in lib.mkIf config.services.transmission.enable {
# Setup transmission # Setup transmission
services.transmission = { services.transmission = {
enable = true;
settings = { settings = {
port-forwarding-enabled = false; port-forwarding-enabled = false;
rpc-authentication-required = true; rpc-authentication-required = true;
rpc-port = 9091; rpc-port = 9091;
rpc-bind-address = "0.0.0.0"; rpc-bind-address = "0.0.0.0";
rpc-username = config.user; rpc-username = config.user;
rpc-host-whitelist = config.transmissionServer; # This is a salted hash of the real password
# https://github.com/tomwijnroks/transmission-pwgen
rpc-password = "{c4c5145f6e18bcd3c7429214a832440a45285ce26jDOBGVW";
rpc-host-whitelist = config.hostnames.transmission;
rpc-host-whitelist-enabled = true; rpc-host-whitelist-enabled = true;
rpc-whitelist = "127.0.0.1,${vpnIp}"; rpc-whitelist = lib.mkDefault "127.0.0.1"; # Overwritten by Cloudflare
rpc-whitelist-enabled = config.wireguard.enable; rpc-whitelist-enabled = true;
}; };
credentialsFile = config.secrets.transmission.dest;
}; };
# Configure Cloudflare DNS to point to this machine
services.cloudflare-dyndns.domains = [ config.hostnames.transmission ];
# Bind transmission to wireguard namespace # Bind transmission to wireguard namespace
systemd.services.transmission = lib.mkIf config.wireguard.enable { systemd.services.transmission = lib.mkIf config.wireguard.enable {
bindsTo = [ "netns@${namespace}.service" ]; bindsTo = [ "netns@${namespace}.service" ];
@ -45,17 +41,22 @@
# Create reverse proxy for web UI # Create reverse proxy for web UI
caddy.routes = lib.mkAfter [{ caddy.routes = lib.mkAfter [{
group = if (config.hostnames.download == config.transmissionServer) then group =
if (config.hostnames.download == config.hostnames.transmission) then
"download" "download"
else else
"transmission"; "transmission";
match = [{ match = [{
host = [ config.transmissionServer ]; host = [ config.hostnames.transmission ];
path = [ "/transmission*" ]; path = [ "/transmission*" ];
}]; }];
handle = [{ handle = [{
handler = "reverse_proxy"; handler = "reverse_proxy";
upstreams = [{ dial = "localhost:9091"; }]; upstreams = [{
dial = "localhost:${
builtins.toString config.services.transmission.settings.rpc-port
}";
}];
}]; }];
}]; }];
@ -79,14 +80,6 @@
''; '';
}; };
# Create credentials file for transmission
secrets.transmission = {
source = ../../../private/transmission.json.age;
dest = "${config.secretsDirectory}/transmission.json";
owner = "transmission";
group = "transmission";
};
}; };
} }

View File

@ -1,19 +1,19 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
# This setting only applies to NixOS, different on Darwin # This setting only applies to NixOS, different on Darwin
nix.gc.dates = "03:03"; # Run every morning (but before upgrade) nix.gc.dates = "09:03"; # Run every morning (but before upgrade)
# Update the system daily by pointing it at the flake repository # Update the system daily by pointing it at the flake repository
system.autoUpgrade = { system.autoUpgrade = {
enable = config.server; # Only auto upgrade servers enable = config.server; # Only auto upgrade servers
dates = "03:33"; dates = "09:33";
flake = "git+${config.dotfilesRepo}"; flake = "git+${config.dotfilesRepo}";
randomizedDelaySec = "25min"; randomizedDelaySec = "25min";
operation = "switch"; operation = "switch";
allowReboot = true; allowReboot = true;
rebootWindow = { rebootWindow = {
lower = "00:01"; lower = "09:01";
upper = "06:00"; upper = "11:00";
}; };
}; };

View File

@ -22,7 +22,7 @@ let
''; '';
in { in {
caddy-cloudflare = prev.buildGo120Module { caddy-cloudflare = prev.buildGo122Module {
pname = "caddy-cloudflare"; pname = "caddy-cloudflare";
version = prev.caddy.version; version = prev.caddy.version;
runVend = true; runVend = true;
@ -31,7 +31,7 @@ in {
src = prev.caddy.src; src = prev.caddy.src;
vendorHash = "sha256:pr2MI2Nv9y357lCEEh6aNdmD9FiCaJIkRfHaoWgdQIE="; vendorHash = "sha256-woDPiGGSjophbmCyd30+JwWku0HQjBvNqGalkHuOiOA=";
overrideModAttrs = (_: { overrideModAttrs = (_: {
preBuild = '' preBuild = ''

View File

@ -1,15 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBhNzEr YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBDNTh4
aFRkQ3luWWhBbmdTTEtNOGc0c3ZPcTlRbktxd2xQZHFyMDF1c1ZVCkMwWDF5UlJH dERZY3Q1cyt6d2RwODR3aWd0dUx6UUR6WWUxUERFV3Zwb1lVU0MwClZZTzY1bXd4
RTBhMXI0ZEhkQm5takh0QUpiZm5rbTk3M3REdUhQV0lOdmMKLT4gc3NoLWVkMjU1 dnVMS2haWnA3dURhZFgyWFR0c0J1SGhvUEZ3OFJtTmJObzgKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIHdGOVptZzNIRlp1NUlFY1k2b1FtN3JRczMrZ054ZlhUbVlvRVVS MTkgWXlTVU1RIFNMSWJZSCtzTTBlbm4zd0hJWXJSYWdJcUd3RGY1ZkZWTmJPZGtz
NEZCaTQKUmMwWFBBVDdBMlBpekVCSC9EMERHdXlKNGpubXRmY0FxalRxbTNnREky Ym0yUVEKWnFtSDVNZDNNd0FBUURmN1ZJbnJjNlNIdVduM1hSRmlGNlVVMWliOUE0
ZwotPiBzc2gtZWQyNTUxOSBuanZYNUEgeGhzMDRONFJjMEJZWUlDeHp6SHZERXJS SQotPiBzc2gtZWQyNTUxOSBuanZYNUEgVEVlTkFidE1UWnh2NGJibDR6dkh6aEZY
VjNLb25adVJ2V0MxMm9DUE5Gawo2RlhSNDY3K2oyQ2VGZ3p1MHRreU0ydmZjRkZQ eElpWE81UUNQcHlVc0JXU2RqUQpneC9ueFFVTldVZzhjN3NrK05IcXhrY1BHempF
bHZsbkxXdzNsN1A2alBBCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBqL2FWZis5N2l6 R0p2RVA3bi9XN2dVaXprCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBlR2RlN0dsQkNZ
T0lYUVRBcDBWQ0sxRFd5V3JydzVTVUZZaDZyL1ZGaUJvClRPazdXOWM5MUhrLys4 R2Ixd0YwdnE0dkhIa1RucUlOWTBLMlJRMVVuOUoreUZJClcwWDdwZVlrSkZWZ1BT
OWp2SVg5S0pnVE51MzRwMU1hRThKVFJZSHJzY1kKLS0tIGl1UjBtUzhVZTArZkVt WjBWK2RNUDFKdXNibVJUQlVhdGs1Yk9IdC92UDAKLT4gc3NoLWVkMjU1MTkgejFP
RVhMMlJNQVlBS0Z5bTByQ1hpSGQvZVprL29oS0UKZGsWBbEUiDIJhoBOEaLF7cnW Y1p3IGNDM1RiVWtWU1FsaG1tQVVkeGtyYlJzZldHUkZnelozVFVQcG1XQ1hSVmsK
FMcg1pxgmlioqsRbKdcYlZWEKDYUa0ZctJEYo0m+eGxilTV/qctyiEIYsoKU1t0Y MFRMS2dNL01VY3pJVWtCWlZmM21BcFZvM1c1djdCcUxCcnQzYTJuV3FDdwotLS0g
+kCTYQk+RbtKfQ7xEStmJ2cdZDE= MU5LTzREZ2p0dW1RMWhsWExHb1FtRUJlL0pUdFpKRThpWnVTYS8zbVdIRQrUKXp+
0HWMPJHIieCvle5qXgzr4iMUL9VxH9ydVl6gkOLM/r7DO36kVkgqr4whSsk8mihY
boq66cjj1dUVij2fMD3zf62n948EQnPZHIBwnDS05eOW4A==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,15 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBRckNo YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBlNHNi
MkttVHF3WWhKMGtCY1ZoL251SlhEb0YxUEZSSDBLVHhQK3o1QW1rCkp5WHFTb0xE VzUvTDdmdndvOUpyMUlvdG5vSGNmdG9yWklPQlFFNVY5RzdabTMwCnh4YXdmY1d4
amRrM05XRGxzMkRPUWx3Z1BVMFRsRGxvemRLckZEY0E0QmMKLT4gc3NoLWVkMjU1 dXVzYUhnaXVNam1pb0cxNWowZUQ0WUprczExeDMzQ3dPWEEKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIEhrV0E4b3VkOUZwYjBXTkF3UUhVVklLWXF0QkpYRjErY1l2dnFh MTkgWXlTVU1RIGJkN3FTSzFFR1ROVTl5UWhqRndnM25DRlVIRHEzUlhZcjNCSUxt
VWZvVkEKUGd2VGtVaEFqc0lpZS9Jd0pSQ2IydHBUN1JWTGE4MzZZT2RXRUt2eVFI dVlvMEUKVmVFWUlML3FPaW04enl6d1R2c1dJaXpNQVhKV0R5aHFDbUlleldRTnNB
YwotPiBzc2gtZWQyNTUxOSBuanZYNUEgelFPWGtneFhDWmFoc2FIL0RwejZuS3Zr WQotPiBzc2gtZWQyNTUxOSBuanZYNUEgY0dGbTM2b01VdnlDMTVtck1mSmNybG41
ZzBUREMvTUtpYlNqdmV0cHBscwpOMitLS1NoVkZwYmZFcnJRWkRWVFJ4Sm1oTmhG aUE0eHlNUytQcjJBQjhWREpXVQpndHFtb0h0N0pucGN4dnJjbER4c3hPVFBER3V1
WHRjaWQvZWNLcVl5ZURvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBRMTdyOTRWV3NQ ZENwQkUzbmRFVnpjeGpvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBIOFdxWThKSnpy
T1I0Wk1jOE5KSVFFaUEwTm9iRElCd1pscG80czF1U0E4CmREU3BNVklzOXZKVFFp T0xQN3Q1djlsV3VwcEdPaDIyZ21uclQ1bWo3T1VXQVF3ClhkQkNqSG5nOTBVcUNF
UWRoYXp2UXRxR2ZhbzlYSng5akV5Zy9hZC9uWHcKLS0tIFFjdE5KN2lxMFQ2emJh MFhZU1AwQzJCd05IZm5lVmp6cGU2VXlpTlFheEUKLT4gc3NoLWVkMjU1MTkgejFP
d1NwRm8xaHpZNGxQbFUzSTh3MWxJRXViUjVBUFkKr/OxDAiV2XR3YZDdT1DSPUPk Y1p3IGZUd2tnNkxlOEhFamwvbjVQYkphSzM5VEMxNlpZREs1cUd6Q0JtKzNIem8K
XQrbpI/urpfXPyQAzXH2IwqRU2H56JHH2Q+z1OK6/BDzpxyFf1HmK/N9p/00osK5 Y0trL083WXI1RXdaS1luR0dDYml1R1YwbCtGeUlESkVrbHY3Mk5RdURlOAotLS0g
WPeBVcNDMmWD/RlgEyooxyajK6Q= cWE1eFZVb3BEcWhtMlUxd002WitOVFpWb1VXcTVnaVYrNXFzVmlKeC9jRQrVsDej
le+ACsK5t6K1sHxwMh1hEqTFj9oYJ8mdtYec12m8D07xEzZDlRT1WN6YNul1gWGJ
B8WcyGfzJTERNhft+/llqNr9YR4w5ePN5F8LBXpEUequ6Q==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,17 +1,19 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyB6R2Vp YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBYY0c1
T2d4eDRDdGdIZVdZelRUY09oRWtwTFpDbGFEKytiOGxxQjgwakRrCnBveWptbm5P bldPMVdwRGhia0xzNm1mSGQ0eVVZZzFLMWVUdFhYVW1KY3QwTERJCm1UUDBqN1Jr
Q2lkaG4vSWZkS0RjM0VuUWtsalovZkJVamJzV1pWbGlDTzAKLT4gc3NoLWVkMjU1 VjRlSjROTFZEQ3UrME81Y2FyRkxjZHFvUFN1eEZNa2cwWkUKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIEtuMnZvcGExWmJZU0tsdTJXa0ljeXYzOEJKV1Qrc0xNSnE0emJI MTkgWXlTVU1RIFM4ZURETk0yQ1NKN3owaDB5S3djeThtWkphS0xUaVd2MnBlS244
czdQbjgKM0NFc29UZTFUbVVrbFIzUDZhUlkrbGxSSXl6SldnYXh6a0hXSVlHQ25v d0V5bUUKKzE5UzZYUlpwTy9ydFQ3L2NmWFZBMEZCWWppYlFZQzhTVFhUc3BBRlpR
TQotPiBzc2gtZWQyNTUxOSBuanZYNUEgc3R0Qjh0Vy9mSnR1eE5rajU5ZG56OFVR dwotPiBzc2gtZWQyNTUxOSBuanZYNUEgbS9HaVFFRjU4VzMvSVZ1SlExZ1BBNWxK
UUNLYmJyVHYxcUlsbzlTVGRUNApzcW4xVXp3dTVaVmhnVXdoUnZ2MlNESnUvVVk0 RVRESEVmeWxyMW5Pclk5UU4xOApaZ0hHMnlsb1BuMThsTG82d1k1Rm94VEFMcTBH
ZkRFVVBhdjZsMzhHRzZvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSA1MW8wdXBYdXBl TFoxRWpRSXJWQUJVWGN3Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBOK1AvRW5nNUlK
VjM3Ukc4U2tSWFc2WDJaVWo3aldvazgwckJBZXVKbkFVCjFaaHhENHVQOWx3Q25F NnB1UDhKdmFibTEwV2JhOGxKRGg1SnlMdytXaVQ1eW1NCnVIcjNnclVMSEJ3eDVk
NnBnSXNJRjlwWk0zLzY1NVE2Z1M3dFhLMzVBT2sKLS0tIDk4TTBhNHpjS2lPRTlk eExnY1EvbWg1OW4xR3FydDlzeUdLQW11UGRmclkKLT4gc3NoLWVkMjU1MTkgejFP
VllRbmV4YU9xYUtEaVNWRVRrb2ZheSthWTAxcVEK9nC0bUWE1W8lmXZABR8IJAnI Y1p3IHNxbDlpSkpPdEZVRGhwV3NKdTNJV0NTeUZoVVg3b0ZlRWdqelNaTDRWamMK
to/at+EBAj4gV+UvTpqBmQ9xy5q9ih+L9VH+WolUQg5To5nzSKDbhwybzwEj1YUd N1czMXlEcWZzQ1g0dkxBTnNUQjdTdnZMUE9VRGphTjB4SjJyemJiU2w5NAotLS0g
5Oqm1waFqasvLe4tNkNZ1aEVbc5VFY6OBCw3nVRESVR8AeuDnL8rRZyYpZjEwCZu VlgyN24vMGl3a2N6ZGs1SjhOZmttWEl3WEFOK29EOUlkZ0N3blBBcHZQOArP/uJx
Qay0cQUSJPJQIKES/UzSrUj+HAw2LxPPAZ9xrDa+QuU36RfPHzmAoVMZ82MxtLxf SBFvBV0rLzRbo/8nhhizuT2TtKsJSJDIsFJxAOtF8ZwIbYwauBt1tJudtJaXgbv5
vLgxoUM9INybdIoBncihj90U+o8PC8Mud2DBm/FGkx0= JIk53sS3lelOwH11yx0aGcBNCR2UwpuYn1IwoW0qrt3ugi8rmQPRG8c8gSyNn2u7
PnAj/NdAjieLGGLltwdq2wJhkbv800WmKx5sGgPNT1AdBS1b84h5ipQFnFf3Fi0N
FJa9/j5qc7JtWEy4ecU6D03zcZD+CTCoN8SIW4+fldos1u7N2v2X5/YUw7T6jQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,17 +1,19 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyA0bkg4 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBuU1BO
WkZTODJsOFN0RGtzQ0F5RzhmQ0ViUDBobXEvVFFidXNtNTRaSFI4CjBraW5mUmgy ZGdOVFRTekN3SFRhQWYwcWt6OHpLZXM0aENsQ3d1VWpxYUhXN3k4CnNwNWpQcU90
QzJPOStxdmRXSVY4NlNkZUUrcThGUUhpZUFxVm0yVENoNVkKLT4gc3NoLWVkMjU1 elR0eWVyMWFUUkhORFRQeVdsdTErWUgzNW9mN1BWS2szbUUKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIDc4MCttZk5aUlNoVjZZY2RwVW54SE8xT2gyYk5KSXFFQjFjT2ln MTkgWXlTVU1RIDRRS0VESG5NNWpxbm1DTjBkY2ExR3I3aE1PUTNVTXBFZ2wwVC9j
aUNhZ1UKSTJzdTJTTXBPZTVYVXRMb1M0c3FtSDlyd2MvdVdHYURMSHV1WUF0TTZT WDIrMTgKaXkwWk1xRWp6Z3c3NFZZS0cybHFqcUVRczNMZ05tSmxPNjBlVmRHK2h3
MAotPiBzc2gtZWQyNTUxOSBuanZYNUEgeEd6Zy9CYWRKUFNjUHRZd3ZEMmR4VCtK SQotPiBzc2gtZWQyNTUxOSBuanZYNUEgYWI1SkhBZ0Jrb3hzbDRwcnRMeHhGSlpB
cGR5UWdFSmRyLy9iblpJNVRtbworVEdkL01YazZyZHA0NmRXKzl1NTIyM0FZK2hW aWt5ZmRxaGhmbXFDQWdNamxRbwpXMWo0TjZhbHM3ejFYNVU5WlkxWTJSbVBPOEhr
emlKWGhiUjl1T3lpcVhZCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBBN21XTy9qQldX MUt3akxMU3QzN3Z4M0lFCi0+IHNzaC1lZDI1NTE5IENxSU9VQSA1dmdFRE1QSU55
enRxcE5pSVl2YXQwckIyQ1NueG5lbk1neGpDdThkSm5ZCm9HZlB2dWpSUWkrZUht WUVuOU9OTHJjM0RxVWhmTlEvdk1mNU1iUEwyNlFqRFZvCldleVNGQ1RZdU1tU2J2
S21wMDE4anZrMUdSUUdnTFJmWnhXUks2ZmhyQzAKLS0tIE5JekNmSkdjUHcxeDdP dWxGZlVkaDBWNEZRUFNBcEIvTEdkODdDS25GdGsKLT4gc3NoLWVkMjU1MTkgejFP
YVpLODlCemZkallwODRlOVVaOEk0UEVYY0Nxd00Km4HzHO0ciIVLi9jVf1WL0v70 Y1p3IG5SbVpVZldPSkJXYm9BZ3B6OXZXMlB4T2Z5RHptR1pqbVRVUS9LVEZyUzgK
9tdZZIXF1aklkmvwpKZyIBSJc2cDm583czRyrhy5/W2h2xLYSOXdL0NVKJyVgJj2 ZlVTZWlUQ2VoWVNuOGE5Wk5vZGdVVldzbUZKRERyUFN0eVJ4TWpmL2gwcwotLS0g
Y8Iq3+nLStZ8p0TL9MuFyY5HXkQpJzFeIrdFRj2vcQPVP1txZd90se8WrUP4k/9h MlJmTlVkdHhHQ25JWm0xVmdjVDFYM1lHaE9WdnJSVkVMMnNwV0c4eXc0QQpYTchD
xrC+MHllDYR5lDXhAUhS42y746Ixm3iabVlPDzcccPJS7nvT4w5HBwkhWaVvb1/1 DCiEm4rOav4/IwK26gSgi2B4qq4RETyAbF4oa87cvFM8zVXo7W8nF+eWzeWGNZrc
cHD2guHpi4e3BbT5ozKADmOHajfjRy+j+gwFTl0AjGg= yRFfOYf4gtlNCVLc+UAapvM1rKuw1IOQeJLAwGCHygXKWY7zSXdT2ERACXESvCCz
b7W62NVx0Pc4mAAQB3QU995HFVFuHLa939PPPlkgxqepNWCKrmUFl/qjRpOoVrV6
GwRgIo36PhcfZVCswyVXgcc4M3CCG5ZuWInuuljqTB70OzBVkKCaUeiRaRIZJg==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,17 +1,19 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBEVnpD YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBMMDZj
S3FrMlhVZXpEZ1IzMVJpTGh3UnUyaEo0VU5iR01JL0dKVWpCUGpjCmdoWHUzRzBh dkdOSTc1bHgybjAwcUVHUXFhY0I0NE45K1B5SEh4NGN4T0tpREhjCnViQzVXTVk3
NCtMK25aNG8rVktpcDFkVW9yd1dOSExxNUo5RG9CWDgyUzgKLT4gc3NoLWVkMjU1 dzB5ZEY5d1hvcHVDSXVubElOdEVQQ0Fja2dnL0ZnVG4wNEUKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIE41U2Y5QUwxZVYxTEVCVlczMjlUWmxYbG5oOEd1YnR2UUJOZ0hG MTkgWXlTVU1RIHRiVkNzRCs4V3EvL2szNG8zSlRYSVloRlVsSTk3a0hnSFMyUzRN
ZU9GemMKaS9pYzQvSG1yR242UDlFQ2M4U0F0YjlHSzZBOUtvRCsybmhOclJkZkI1 K0lyMzQKWDhIOTVzMGJkaGpVQmNtS0pPQnNTSjRmK1dYck1SUFd5VnVvYnJSWkhs
OAotPiBzc2gtZWQyNTUxOSBuanZYNUEgUVdES1BCdFljL2JRTzJSSWpFcWw2b2hQ YwotPiBzc2gtZWQyNTUxOSBuanZYNUEgUy9kWmxsc0p2L0pFWDlPMGlzeVBHNjJ2
MFZqZTlyWC8rSzZ6RnI3ckdHbwo0cnBDNHdVNWFlMmxCZEVHWW9Tb2ZQMXc3WGw4 a05ycmZtbUJrOXRBVVgxVjVtZwo4RVM3Sms2M2krdjU0K1ZHREhhRkdMcENTbTJr
WUszNUc5aTk2MDVERXRrCi0+IHNzaC1lZDI1NTE5IENxSU9VQSB6VXJBMit0UytG UEh6cWcvOGNIRUNJZUFvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSA5d0FwTWJzZEpJ
N1l4cHd6cTZudlBzWEcvNkhHVldOMnQvK2JWWVh4VGhJCmh0VVUrd0dEMk9XNVlD UEJaZi91YXZOOFhGVlVVekEvSVRnK3Y2VFdhL216SVZrCkRURE9OYnIvSGVtMWNl
eERYc1VtdjBHUEZZQ0pNWjF1aXRmUTFZc0phaDAKLS0tIHhVVTFDcjVucElUOHlw MWFGSTEwUVBITTlnaWVXc1hpMFpqdFdMcFY2NHMKLT4gc3NoLWVkMjU1MTkgejFP
T0VMUWVTL0R5ek16VmlDY1dZWGk2aWV3TjdQMVkKbBB/Ixe0nuEQ4WkOguVk6oRI Y1p3IDhkUk9KTE1UMysvajY3WEx5MFdLeEdlVnBmSUx6TTlnYWdqaWorYm0rRGMK
h7gasRs0CYNvKoIjAf66tJ4IC6CumJIo2JRkH0CU94nOJhPqdPL5VS2IrJOznrWY SlhaRFNLaTZHVkpRR3U5eE5JOTBPWWM3OTFka1ZWSHJMaFFhZG1CSzNVTQotLS0g
bZolkeTJxq+IDUZVTNk6b/7TSmhPsKNgAZZdEQp+HSwz3sy1wZIBTkc7Lxml0Vvy THNSTmNzK3JvbVN5S3RaVlQwdDRiOWFkVGZ3WUtyT2IyMWtPSVNtajF5YwoCUWHU
pBjh36wBjPLYJy69KAxsI13YYlT8gGw6dHQutBlVRzH6zL+To8TQ/TMDAwKHxkJA KSe09W6BaVEW2x0ieBXN6KkL4FNPAP8zCom8fNVjyjAZpxd2t0kisJjJ45xg8eG4
6Bv3SyF5AvVYtJhnhT2Ic9fmkbbkohes6illUlpZTPU= x9sj+hG9EsWIFvVpnF7LUIEXcRMjvRlNXED8HmYR0qzUhc89VQ9N4EoQPJYN1dME
kxAzH8p5HBidxfJLpACaG5QHGb97chJXTDrT+ZKt+hPfZ16OhsKBj2s0gvHbcCQH
sdqQT4+FlJshDiRiauTmqF/umnCnzl4+H4Xe8kLVrZxDOAv1iwuTX8zcaNOFNw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,15 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBzTVNj YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBiVDgy
R1FPalhwL01tWkg0REtwZ2M0Yno5RVVDSjJsQ1VUS1dWak9aeWgwClI2V1c2bE1w QmFNcGNSeWx4bS9VVHdocFVFUndkQ2g0ZU9LdEdaTU5Mc1JGZ1I0CkExek1Pd1Ry
RzFyVWlibVZzV1NGWEd3OWNOWG9jRXV1dHRTV2k0RzEreUkKLT4gc3NoLWVkMjU1 Z3RGR3JIdXdJNHNyYTlJeEIrR1NVa3JTbjBzZmFDZk5YL00KLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIG1nZjVqbzlnUEZtSkxmTUtVNDdFS1NQanVmL1RSeWRNbk4rRjdP MTkgWXlTVU1RIHUxN1BvTFJwby9mUC82QzFRMGNwaEovcnRJVE9YU2doM2djazVw
YWw0WEUKdFp0NGtuMEtQdUhlNTN6MmdxRDY5b3lPajhoRVAvT0llQml5cGZLdFlm K2oveTAKaldCZ0haUlNoK1BtK0NQR3VyTmNDbmlKSnBlZGNSazlFYzRsV2xWNHNI
UQotPiBzc2gtZWQyNTUxOSBuanZYNUEgY0xkSFM5Q1pDRTlCbjRZT2FnN0JxR2h3 OAotPiBzc2gtZWQyNTUxOSBuanZYNUEgaVFUbnZ4eU83K0JlRXozSW5Yekc4MVlF
ZmM5NGJkNGo5M0tzak9iOGZUOApiVmNic2RpSjB6M3Jma1V6OGJjTGlmL0xYK3pP QmdlbEV4NHpWN3BwdVVUZFhCQQpkVExtZlhKeHlVZzNtZU9vQmlNRGhqQTl3WVIz
a3ZHYVhMMDBGZkQ4TUlFCi0+IHNzaC1lZDI1NTE5IENxSU9VQSA2K1lBMlFaVEp3 cnYxMkFiT3pBZEo5Z1B3Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBGaE1YdmRaSFNK
cTZNZ0duTGlXc3JmUUo3MkYyK1ZVRWM2VTMxekNhNHdZClE3RDlub1Jab2VhbjFx L25uSVp2SjNhME1PUVFNeVJDNDFBSnZKeVE5NGxHcEZnCmJjS0czOHA0bTIyVTMv
RHhOSHNnMGhEcjN0ZytsZWV4N1AzRFRDT1d6N0kKLS0tIFJSMEFkaWhMMGxQaTlL SHY0blBLY3d5Y29vR2RiM3JHOVlIb01LSzNTSzQKLT4gc3NoLWVkMjU1MTkgejFP
MW12UldodHcrclFvQ080OEJBekh1VTZCNFEybWsKo6mw3I7uX/jwJ6moOGpqSltT Y1p3IGdWRUYxbjJySXdHK2UvdnlPaWNMcTZuUklacnNwY2dKNTh0MklYYit1bTAK
BRsBwTeNrIdc+FR60l4sP8nRI9KV/7wyce9aFhqtiFTBNnGDXRcjJDrqactCiGcB Uk1OMExEOC9DMTZRbHNOZ2R4aWI1dVppNHZGenh4dStCYzV2bjlQamVlTQotLS0g
Geuhsjc9ZMwjJEATbQ== cUJud2k1SmxoUWxnUEJsdnNFQVlJZG9qSjVQWXA0ZWQwK09Uci9QNnh2awqOJikC
R8H3k0kHUew/tr0Oi8ASuS15La6bb6NxIpC/7edoNf996pxToLeHy8fOJlnPKSEb
hw+GvqIsP+6F7BD3rCOh2d+1ZbIHjcOkX94u
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBhUEdQ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBkaUhZ
ejFtQWFabkl3YTJmUmRDS2M1elBrMU5yVHhWWlFLMHdOdlNsNEFRCmREU3ZZWlZi NHE3L2gwaU8rVjlkR0JOL0d4YVdYVHdnSkJzUERTM1NyRlNmV1FnCldOTkd1Z1Jj
R1RLQVorT2dDbFRXc2toMExpNWR1WUEvaVlzUFJ5ZUU3azQKLT4gc3NoLWVkMjU1 clVxNGZzZDExdDNTMWZIQ0pKbzE2UXNpb3BhbmxuZ0FNMEUKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIDY5OGpSWlFTT2EvUzV4ajQwUG5YL3loSWhGbjV6U2J4TkFhQm5Y MTkgWXlTVU1RIHZ3NXc5WDVwQXY1ODRzamQrY2JaK051WXJwYWtDYmhkOXpPWGZS
RWhvMXcKbUVpQm5wRmtLRGV2SWYzb2c3dnZYREdRSnRtdjJJcjRKTk0rbnMyZmVB RHY4ek0KdGQ3QjhnRVRVUHNUaHNxa0I3NVFXUFZ0WjlUZXFNTnM1MGYrTXZVSGkw
cwotPiBzc2gtZWQyNTUxOSBuanZYNUEgd0o4WGhTQnlkVGhhWG44MmQ1UXFVWjFO SQotPiBzc2gtZWQyNTUxOSBuanZYNUEga3V5MmQyMkdCYjN0cUlkRWNlTXh4ZFRW
MS9JcVpEOEIvd3ZuNmVmN2d3dwpYNXF5V05WbHRobVlIWVM2VHN1TjcyVG81cHp1 aURLK2cySk9wbmo4MGFaUHNSOAo2NFdadi9ENmZ3a3hBeUdGeVNGRkU5Y3drWXZo
V0pnWTduZFFWQks2ZFY0Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBkWXlRejFNdHJk eEFKdEVHVk9palA2cTBVCi0+IHNzaC1lZDI1NTE5IENxSU9VQSAxazl3UkNTcFI0
azg0aUpzL1JMSWUvWkdXUmpLc3pVUEZTNGFwTG0rRlNrCjMyVTE5c1pjRlowVlJ4 MDJHQTdwZ01BdEh3czZWaWszcnZ5dmsxSjNteDluTEVRCmZidGJiT0xuWmdpQm5u
YmFtRzEzV1dCU0FoeUJPMjQzWHErc0h4RWhLbDgKLS0tIHhzK20vTzFPdVROVW44 TEpCTlF4QVVBVzFMQnRteUZ0cStZc0tRMHFMVkUKLT4gc3NoLWVkMjU1MTkgejFP
MkNhb2VWZHBqeXY0MWZuTDFUMXdNazMwTG8yZTQK1CrrD2tin/3ZhV2D1XJvkbUN Y1p3IDhicExSMnVtNUl4L0Q3ZGlpQVF1eXlzOVZpMlR2TnVadk5XU1loK3NXQTAK
2Nw4ASdPdRXaQJw5CMhlrW6rgSnC81j0249F7D7ZfAlo62ANOfLyL9Lv2FVGzg== bktxWkFqTitQaFdCdEtvRHNDZ21lMzl0ckliT0JsMkErdnVKWmVmeGF6YwotLS0g
VStoT1QwdmF6ZGNpbjdmeXA5bFNhWUFxamx1SXRiYVkvNGQvYkVEb29kVQoNyF4F
azoWnxojKxAIC2qBM80EdVCvcRdhKm4iSzyWYMt06cb6IrEutOzC+FCx37A6KKVU
tNYcXpGcJX2ge805
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBmTnVo YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBBWHpP
eFlINGttSEZYTlZucVVWemlMMk0reHNKcjF3SmhCQllXdmw5RzBBCnl0NWZVb1ZW ZmxVTFpQOVhXdVRvTjZuVGlRVUpHRzk4ZTd0VTdDaUcyalJid0ZjCmtWcERqSW1k
MWRzc05pNVVWTlRyNzNRaDlYTm5TSVF3ZGNMclhyY0R3bUkKLT4gc3NoLWVkMjU1 Q3ozaEQvT0Rja1VvT3NoRWxFeWxqbzFtMEdUVkJEcURGMGMKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIEppTjJPUmxlamdLY2xxRVBwcFBmTTdOM3dLU3h3YnA2TlhRWXRu MTkgWXlTVU1RIDZvWHpFRWVFVTRTSUlzcm1Ca1JNbFhNQWNISkkyTXp2SVFRVmpt
OGJrR28KMW9JQUFDcXFLOTk4NDVHQmJucEZuOElLaG5Eb1lyK1NGTUJaMkFONit1 Q0JxUXcKYThwazdBekZFdUc2aVRaSUVjUmFxWjF4NXpCSm5rME1yeUJDUUdEZXAw
dwotPiBzc2gtZWQyNTUxOSBuanZYNUEgZkF5MVNGK3FRV2JPVDFGMkY5SWxGWVVK YwotPiBzc2gtZWQyNTUxOSBuanZYNUEga1ZZRVRSQTJpVnhzekpVQU00MlB0TzQ3
YThUVFk2VGZZNXN6UWx3eFJ6MAp0d3NGWTRuLzNOb0VxdVUvZ1YwR0lWemc2NDR2 QzBnSUZaVTIxS1Z3R1UzWm9RTQpEeHlyQm4zSWhYODYxalZXakdVZWJBeTFwVzEr
VFI2eWRjS242SEJrQWx3Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBpY2JoaGRKY0ZR S2NVODFBTm95bnI3ZjJjCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBMbVVWamlEVU4w
Y2txWFM1ODJyaW03b0xuRGlJMkVidEVZMGdiU1pTZ1hVCk0yeGF6VWU5LzF0Z1dL WHNWbVQ0OXBnY2ZSL005bUVuekNWTTgwd1pLditoZ3dNCmFtWk1PaXZ3c1g4eExX
cnlDUCtLL01EWWo2Q0dYcjdtSjRtSnFjUHNWdzAKLS0tIEI4aWpNc0xqU3ZsLzcz dndXUXJqWC9lU3dVVjRqZWFVUWxyZTFiVmxpQ3MKLT4gc3NoLWVkMjU1MTkgejFP
TThFNXd0YjQ2MEMzc0JOQXZnTnBaTVg0V1hITzgK8GYZG8/fGXk6ELSB6rnLX0ke Y1p3IGdOZHRHMkVqeWtzYldIMTRwb2w5M2lrc0FiOUdmT25kWWJ3U3dLZFpEUWcK
QqiztfVnV/fpgEgJ/K60Ea3aBe3ELpejzFKZfno+jesvnL5DCMGz7QRRpnThLQ== UEFWMndhaDFBUzZrMHl6eUtNMXhIQ2RBQjQwTG5pQnIxZE03L3BpcUNBSQotLS0g
dXVZNWdJY2hMaHNqdHVEYzRXNlpzOVA3ZnRyaWV2SVNJaG5FL2FPVjN3QQrunATj
0/HE6CeyvFHIYDazDseUaebDS+A/CaYPpOo+3OvMRXFwbZ7KzAzZCdT1iNLWOc3E
Im2nMI/yWSLo2n5f
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,16 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyB4R0xH YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBQeWZS
NU0rdGUzb0FaeC9JWUtJNUd1V3dFYWpKbm1ONG5MbFE0dE1obDIwClduT1ZTL3o5 Wkg1TDBxZmVQS09CTE1VVzMxTHh4dnAzSlpHQkhDVU0ycm9DaHlRCnd6QXVLREx1
MGNHamh6cWF5S3RlTGxGRWJnRE1xU0FRYkpETDgzTUpLSGMKLT4gc3NoLWVkMjU1 T2xpaTlnL1V1OUJaQ1U0UWxOZnFZTlMxSHU0dGVReUFsdXcKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIFhJektxUE84aC9BeVVlalJxUDFabTM0dWRHN1ZMY2tMb1JVSDZw MTkgWXlTVU1RIHp5ZCtUeWhzVWNBRXdkRkJCdERhQkxTb2I1UFhUYjlCeVcxWWN2
RHhTQ0UKQzhlTVU4djJKUENEVXpoQVU2azRBQU93d2JGamwzRjNxc3VCNVhEbVVH bmJYeE0KYlJFdzJuRTNqWHJUVUJWWnI0dVVFUEQrYnZlb2NZZmNVbHltL3BrdU9E
TQotPiBzc2gtZWQyNTUxOSBuanZYNUEgZXZnUWt6ZHFxTW1mN2RtYy9IdXBtL21N cwotPiBzc2gtZWQyNTUxOSBuanZYNUEgM0RVMGxqcFZ0RjJ5Y3VXWEZKaGlSL0tS
NG9wMEQ3WFRNTGF4M2NYU0ZtVQpRMllFVk9GV2dCeERIakpXZnIydXNLMWJwNGds M2VCbmNPY0t4K0M1Z1Mwb2lRTQpvSmRnM09Lb3ZpcnNDemk1SUR0cTVaczNwZnFa
dEhyNjRSL29COU1uQlBNCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBiVjdTWlAwaytl S2p0cStmZm0vVVJVamdvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSAvR2RaVUZQeUZo
aWJwTkZNTTNwQVhNUGl0ejRiRHppWWhaWi9kWWk4QlhzCmJxcExjK2loWUtwZDND TGRsdWh3aGtET0hrdEliRHB3YmFvU0dad2FtNndYcngwCjdZNStmTFZIZGRRUDhM
WjBXRUFCVGFLbTlKdlVieTdSZ1hlL0ZaTkNubFUKLS0tIDNVQ2NCdDVHNGUvZXFM cDVVdVR3MkZXeFJPRGlUYXdsVDVTY0Jxc0lGRlUKLT4gc3NoLWVkMjU1MTkgejFP
azdWUmh6azAwMnJ4Wm5UOEdGTmRBenJSdUY1eGMKx3sYbX/g7JVCFrwVe7UNLkWn Y1p3IDB4NTd2US92UmJtUEc2dUJ1RW85VlB4TVlVNXYyMUZRdzdraWtUMVR4UzAK
1p+MbGJcRS0ucxNIEniCBafaVnXDiRAHtaWSCqtbvZ4SVg== TE5idjJFR3JlS1pLdXpjcEgwdFFkSng2YW1jUlBTbDZRSmNMRWhteSsxdwotLS0g
NWZ3WXVuWm5wSy8veTFsazM0OEJFcjRYTTM1SUpBNlRJMmxHZHFVYVpuUQrvQ8GS
sSz17HKJKfkSR1yPs9uAK8JleCgGmqemt0KTzT3beutowD6fCBYZl8nPzTsQc5J5
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,16 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBJQUVJ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBHZTF6
aHZzMHNaME1zUDR2dXVHMTFvc2pqZnV2Z09YZ3FTM20wdGo4ckFrCkFOc1lCQmhv RlExdGpEOXVodFV0R1FEeis0b1FJM0l3dGxnVjFQRm1jNjZXMmpFCmVWdmVtaE4v
STNpT2RlcWhNdzYxbEFvNzV4cmtoYm9waWc5cXhkWEM4eUkKLT4gc3NoLWVkMjU1 T3JaMkpocHlNYXVlai9jeEsvWXJJQUVPcUtKS3N2ZVUzajgKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIHliSURYL0syL1N5bUxWQ2NOQzhWR09kNUNqaGpWa3lrR1M5Qldv MTkgWXlTVU1RIGVtT24vYWlkWldsOUNSNVk5UEsvRWZEb2pvK01ndk5NeE5FbzVj
KzlvM00KM3JvRjlBZHh2UzVxbW9rbUdIcUNOWkhVbEFETEN2VTdDc0lMV0EzR1kv bEhta1EKc09ZUUZseEllcndOUzYyS2paZ205SmtSUUg1UVRKVDJLY1pXcHZkdlNr
VQotPiBzc2gtZWQyNTUxOSBuanZYNUEgK0lkMWNuUFR4ZGZmaGJpOURVS3lBbGti QQotPiBzc2gtZWQyNTUxOSBuanZYNUEgd1Nnbk9GVWFNZDRsd1VpVm9WOHpUaFp0
aFA4anhUNEhYLzkzT3hZZTJnUQpmSEN5MzdVcWYxbTFpeGRlODAvUFVySGRoUVpE ckdJR3N2UEFUbGMySGNTem5nYwp1OTVtVWg0dlZlL3h3Ty9ZQnA5NTJ4Y1ZVZHU3
NEd6aitiVm1vR1VNcnlNCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBiMjNoUG9jVTQ0 R0d4V0R5OHFZcDQ2TnZvCi0+IHNzaC1lZDI1NTE5IENxSU9VQSB6OEt2SWl2cXFN
akdPcXMrbVo4OU1mODhkMHlKbzEvTEJObGViVXFaUVJZClRWaXhjNzB4b3hvbkVW ek5iMWNrcllVZ0o2K0Z0clI2QXlUdE1tWDE2NW8xdDNzClltWjhKaHNOWFpjSmFG
RUFWWnc0QkFzOEpXWVdZOG1TbDNLQ3lkdkxVRHMKLS0tIHNRNlIxVjhsMEVyK21o WFRZVktvR2E4UUFEMVFkTzVuR3lMVDdRVGs4Y00KLT4gc3NoLWVkMjU1MTkgejFP
a214bW1BKzVHbkZrdGhndkhnMlgrWStYbXoyVGMK8hdGLDk9xC1OnfTNtHZLbZCF Y1p3IE55VWFKVlFKK3RCalg3RDFwQTBIaWpvay9iTW9RRXV3SVgrUXhtZHV5MDAK
KKw9JFl6b8++iwM2H8cQgWk8qZWQUvyO58ahkO/xtOCXCA== RFEzMGtUZmRIQTlyRHcvSDBnbGlsRDBXVHh3amY4bzM0QmE0aU8vbnpnTQotLS0g
Q2NxNlBWT0ZmMm1MNnJvaUl5dGlUQUt2aStrdkRXRWZ6TDVOdzU0VHFDVQqTaee+
qfaK5T6tjcv7LawzcztJbdKCqFecw/BEAicpyrkGmOfr1J5PmOxOFM/Rkk2HpLuP
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBHR1lJ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBuM3E3
U0gyb05HSm9kUmNjdmdGQm1XU1ZCbld0L3lxemdMK1dlUXQxM1MwCmJwRzBGM3lk UnNtNUlmTGtIdm9zZGlha1B5ZVkrQjBuTStKTmlPcmFCNVM0eGlzCk1tWGJOdWtm
ckwzTDVqcEFOakxaMFYwWHQ4MFZ0ZjNySnVRU3FZbGxndUUKLT4gc3NoLWVkMjU1 TVBRMFNNRkN4TVBtVWJyUk9wZlJ2eXpHSWtLK21rc3JIYkEKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIHliMW0yaTdXTDRmcENtZUJhaE9NQWE2eGwwelRnM0ZydE1oeGtj MTkgWXlTVU1RIDB3c1dHdnNTSEhva2FsT2pNL3JUVXVmTGRrVzIwWk1UdFFVaGxH
bkVjeGcKaUtpMVdzSVBDTklUMDFjcmo5SCtHckhLaUxHNnMyMUZrNy9MeXZtSnp3 MWVad2MKaUJyaUdDek45eHFEdWFsMks1VjlsTlRhWEdmNEFaUmdjNXpocS9vVWVa
RQotPiBzc2gtZWQyNTUxOSBuanZYNUEgaW1IZjY4VnlFUUVJSzdnVkpFMllic0Rh NAotPiBzc2gtZWQyNTUxOSBuanZYNUEgRFZ1bVVCeVZTWEFqNFk5bmVBSmk0Sis2
eTFydGcxOGpWczhxVktxVi9ROAoyUE1PeVN6b0RDVHJGMFJwdWk2QkdwaEVVK0lU TDNuZVFhTWRBSXFrWmJlQ3ZrZwpMWTlSL3hkZGNNQjFXRTFTTmJzMlBaVHJhekpD
Zjh5RWFSSjd3RHBNcFRBCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBFNDhwVk0relJU aGdCaDJtNkxEbWgzSXdVCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBXZGIxaEFvZXpx
WWFlcTFPRWlZLzRsOUhWWFhydS9teE9RRU43Mng4Y3pvClcrVWIrRjl6RnM3emJp Vm5CZHAwRFZFWnZIZ1h4eVh4RmNoRzh3OHN0dFhOV2xVClNXaDJxbFhlbHJmeThM
RFFGaEFka3VLQWg3UmUrN2M1VDVlODk5MGZvN28KLS0tIGRsdnpEc2YrdDJldmE3 TjgyTlEwaThwZ3NhOWNQYXV4WFZHMGR0cGxGV1EKLT4gc3NoLWVkMjU1MTkgejFP
S2xxck5hRlB1OEdZL0p4ZmNBMHA5bTNzUUJ6REkK4/pCDRQsb6e7TMT9I92Y6P0P Y1p3IDFyK0xxREdzWk8zWkNYQUUzUUw4RmE0Vm5WQjljdmxTeTh2VktUc1NuMVkK
i6K/cnbu3GacXRXGdA21L3DVu5TFwKaym2pIbO5JdO/G1Ic7jQZrAg9GOHnNbSs= YTRUK0hlTVltcFVXWDlDVklKRVMrRjdYUWQ4ME9YcXJBcWY1RUU0MS9pRQotLS0g
ZzNjRmVHSTByTS8vNTlRbDdYR2tFNHF6RCtiajNLY2o3eDZpdFFoRkdibwqeS82J
r4vWQBK8WvTxQb1sQdIU9/0NNX/JqbAxWiaUnzk6ilzf0leovTZkJF0JchWyW1ya
HiVoD5lVamGzGA6jRw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBtVFlY YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBsdUI0
bXJzdFdHZzVaZEtUd1BzWXMzbG1kUDJ1cXZKVEFBT3dQZndGTjBvClM1NXlFVU5S QldaMXhRVm05U2ZsUU9oM0NSblI2SkZJbkIyaUhxeFI1NVREcjJjClBUZXJrb1pY
TTlvQXBZMTRSTVhybDNxMWZQeHdRRmhTbis4NWhnQkorbWcKLT4gc3NoLWVkMjU1 elZ6MlIyajZWNmlZbzVmUVlqWlN4bm52SVYzZVlRMTRBNnMKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIFRPa242RVMvd0Q1UmdJeU90Mk5wWEoxcnVuM2lTRXNCdEVtRExr MTkgWXlTVU1RIHE0ZVZwampWazJXaHVCaTJXT09qNytGYTlGaTdIL1Fla1NPeUpl
NnZoamsKVCtWQXk0SkFFRDI5ZDA1MHI1NmxtMzliYllXTVQ5bkYzN2NtUmV1d21x cGFVRWMKUXoydG5JRjdqek1KUW5xWUNMVTJlRXJvclk0UEZDem92bHBKK010bG00
YwotPiBzc2gtZWQyNTUxOSBuanZYNUEgSGRFb1hRZ2NiMGdGazUxak43aUhEZER3 UQotPiBzc2gtZWQyNTUxOSBuanZYNUEgR1pCc3dnU1VYbHhMNjZ4UWJxSDdSOVcz
MEhTcmdnZnMxT2JjcHpqbGprbwpJYU5iSkxsaldXNFZ6amdWUktqVktIWjJIT1l0 NEpaUkhET0YvNERpWWcvZ3prVQovV2tkV3lseEtFKzBJVkFhcHFxeUNsMmxoY0NN
K1hDYmNXaTVVSHI2SVE0Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBqT2NqUHJraXpu QnpmczJIdnJZaHNDOUh3Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSA1MGRhUXlyMzRa
ZVhZM0ExV2NoeElPdjBYUnBacTcwOUpMcmtOVDRFYXdVCnpwMmxYbzB0WUZ4K29E bVk2NHhCRjVISk93cmVETmdPYTl6a2VNTU9WaXdhdTE4CjVMZ1kvbkZKdE5rS2tO
eWxabVhiWkJXV2NUZm10c3gzK1A0V25SNkJhQlkKLS0tIHlKN2dhZVo5czA5UUVX Uk1kOHZIOW9VMUJMdzRmaSt6SkloempxbnhqSG8KLT4gc3NoLWVkMjU1MTkgejFP
WDJCNUY2dHhvbVJTR2I1NS8zeEtVYUNJOE85YlUKVI75zg9cgQVbLehC4/7bMPjC Y1p3IGc0L2FwZUVtT1ZXa0pUUXlCQlhBSE9ZZzRXb0pqaGVjQzErVXFVT0dWbFkK
zqqMV0+j0OaCNwXhi+U/RbILvmg+MzLMymUQkMihcE8W3XVILswMa1Exew2gANZ4 UVB3NHdRRGNIeGF2VWlEelhLSldscGx5bVRMV0tYMWl6elc0bk10V253RQotLS0g
RFc5VlZWTGdPRFZGb0tjVkJZT3JRR21tanYyWjZuQXFxOUNNMVpVRE5CSQokZtMc
lJ0v6JloSS2bIMNpyozZHI0k1LGiLODjUO9YgvFp9wo5j9SXFf1t3Uv7I+Nco96l
Uzybvbj7Ay2VCvj82qE=
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,15 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBWY3N0 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBTZG1N
VkY0Y2tLQnNhZWdRVzFxU0plWThveUthK2NjZWNhZDd5ZGtXVVZ3CjVPc3YxbnBM ckt3NjgwOThhZXRRanp3UGpvQ0xST0pmenY0Nm5lT05TZ2VkVjBnCnlCODlFeDZE
MmozZFlORVppQmJrQ2ovWEFVVm81ZlBpRCtQQmRiNnBCaVUKLT4gc3NoLWVkMjU1 R08xdStEbm1vdmY3dkVVczN4SVE1cE4ra2srdlJEZk5FbjQKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIEtvRFJEQXJLNjlyRldpM2pMdXNxWVZmVFl2NVJjRUtuQzNtbmJq MTkgWXlTVU1RIERlQ0NtU3BhZ0l6NVdtakFkc1V6anFlWTN2cXczSk1WZlFQWTJm
UTBDR2cKQ1J4cHVkWHJZU1M4dnFIekx2ejlua0NjUUtET0EwN24rY2NPcGQ5eEp1 UmRKSEEKWU9LeVp6TkRDU1FHNjErM3RVa043ZWk0Q3hRMTB4b2VYNjNUK0IwVnFa
TQotPiBzc2gtZWQyNTUxOSBuanZYNUEgVnBQOHV5VUk0N2lyU2NkdXovQmJYVGhL dwotPiBzc2gtZWQyNTUxOSBuanZYNUEgU3VkRXJlWWFRS2dvWGo0RFdXd0Zra0J3
dnUwTG9oZkZKOUxFWTNiZkhBbwo2WjgyNHBhaGtFREJGVDk5TzJhZjRzKytaLzZR MnNtNEU0OVNodjlJckdyQnVSbwo5RFR4QnlDSmd1WnBwbExKY0tOVU55WVFPWTFv
TDQxeU9pY24zQnJBYmN3Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBQQ3I2YnNNZVlX b3hnaWxHcjVoYzRHaDRBCi0+IHNzaC1lZDI1NTE5IENxSU9VQSAxREZKZklHQ2x1
TEhNbWhRSjJRbk9DYnJIRUFieDBMRUtBRVhxZ1RQcVNNClNzU0VPMnh5bUFGVTZm REFHaUtTNFM2aTFsa1Z3TDN0SlU4djVUcW9TY3c2aHlzCkpFWld2Mi9nMFJ0YVpZ
ekJLSzFjT3dHVVdoQ3A5ZStCUk83Qk5rcWZmN3MKLS0tIFdvRG1mYzdUenhndkY2 NXJreE5zOFVDYVZ0elNESVJCekt0VmlhRDFJV2MKLT4gc3NoLWVkMjU1MTkgejFP
amo0ZGpjQkdabUdNRUJwV29CRXByVk8ySEZzTzAKsDY+DVJqZb/jCn6Xa/OqNheR Y1p3IEgwTkJyeUh3YlZwYi9hSnJraFBDWWRqVlkySFFmR2hBWVJ1MG52dWpPR2cK
uNlV5vVKUaZu5F+MTZqZaRYdn66TJVXgz5GydbgwQGs3l0K67ikPiTOoln0FapnB YVgyRVU2RzBhQVJ3MTZTOEwwbWk3QzhFRlZMa2hzZ29HeW0rVU5aN0x2MAotLS0g
TQ== bE43VGhIcjVNenNkVW4xV1N2Zmd0L0JnNUJoOTlya0lWU2NPckNPODdsQQpDcV5M
ZQ3ZxOePeO2P5AqZuTEQk9QUZzEKnWt+aB296b8dU4rpjpKL+Btr7e9cPLs1S3ay
fpnky8e+TsczGBEEkrcQ
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyB6VXdX YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBLekNB
aFpYYkxJM1dJYlJJY2h0OTJqaXQzcmFMRlJyWEg2ZldrbE90Y3pNClBQMjhuaW1S R0R0ekUzWTBxUlhLaDBkZWlER2NRd1RCSHFBaUwrZW1wUTJJaGdzCnFObW85eFRM
a0dPaCt3dnZ2YkZmZVA3NkZ1UmVSNVZUS0xIUENtYmRjMU0KLT4gc3NoLWVkMjU1 REgxR1NHdWMwWXdYRmZvYStTekQzcTdJZDkxamlWd1NEdzAKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIEdWTVBVSUNhVDF4RUlFUjNrZFc5L2xwMmNRaHVQalZqUkk0UGFt MTkgWXlTVU1RIFZzaUZMYmJScE42RWJuMytIYWM4RU14eXFMVXNNczVXMlF3OVBu
Tm1BSFEKMVlBeUtPWEk3YXZ3dmo5ZFlXV3NoU25wSk94MFkwaVVpM0VIYWdmRkt6 di9oVmMKOXZLemtGMGNVUmU5YTcxdTk5Wmk4TDJpMUlVSDdwK2VwMmdCZmtINWV0
SQotPiBzc2gtZWQyNTUxOSBuanZYNUEgQjA0ZGJ6OHNybE9QVTJlZnV5WkpvdEJ2 MAotPiBzc2gtZWQyNTUxOSBuanZYNUEgazhZcHZ0OVkzQ01vQnlDWmMvTEdpZWJn
amt2dWw5TnRKT01UcXhHQm5GOAptUFB0aDUrdGJTTTM4ZVZsRDd5ZHpyOWxZVWNC VVRCWXZ6enNPL3BySHRkY3gwQQpnNHRpbEZuY3pGd2R5L2hXY3FIeXpneE9nSEhM
MzRGdGVES2NCY213ZWhRCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBBRFMyczFWSEo0 MU9UWVlScCtVSWhNY3FrCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBMTDkzcUF5WXdN
Q2xoZGxtRWF3YnVMNmE1aStmVmRZTWk0UHpzM29LS3l3CndWMlZvbkxhQSt4cFpL NTFnOUgzOEpoN3p1Uys2b2JMZVhnWThrNEFaT0N2RlFRCkhzd29qdEJLYWlyN3U5
U3pFKzhzUU1ldG5ldkFyRDFlYVdpSVUvclZsbVEKLS0tIEpDcG9nNmlrc3JTRXk3 R3dnVHJZenIvTStoeGZXYkF1TGVkcVN2Y25acTQKLT4gc3NoLWVkMjU1MTkgejFP
QW5xSGdGbFFDN0JhdllPdHNiRzVFbmhUcFhNSWsK5joyQar0MfzoOijEHGRvGQTo Y1p3IDh5czJHQUpvc0k1eFNRZDE3ZXdha0pzY3UwNzZsT2NIUUFieG1JSEk5MkkK
UYLzJej6x+7TdpVEjTMoSClK9EDfGygYzNV4c7p+TjLb7ABGT8Br32oG7v8xeA== SktlZDQwcm5ZYVZkOG1ybFU1RGY0bGdqSlVIRHQvaVdoQUN2MTNMNFVFMAotLS0g
U0thOXRDNXFyRmJnZE9ydWRwMnZ6VGxIZDV3SW5yUEFEUkcyNUZNWFZxNAqpA6on
uxWUMT9texQBeGLhj7tQ3QDzCKA4plpWncjvAgjcL/LzJOv90FeHV37UHY9cDo84
KZleCZs7L3thj4um
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBiK1l3 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyAzMUNW
cXJiNEJoV2hTbDgzRHNwREk2K1VVUDdjWHZ6cnY4TUVqYmZCeTNVCnZrc0JRbDhl QnV3SGtMcmVOUG05YnloWWNnUUE2aXMxZXF4S21yTm5ZY3hsVjNRCjlhckw2MXoy
Z2hMOEhLMHJWakpzTjI3UEMvVFJLM1VIc3NXa3k5aUFQVmcKLT4gc3NoLWVkMjU1 OE9YV0xGNDhpQVlQV2k0UVQ4eEFLZXhwSHBxRXpDRnozVGsKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIFIyVGpFa2tXa0ZXN3haVVRxbXE1VGpjT1NESnZ1SUlaVG1xY3Nx MTkgWXlTVU1RIEE0MEhRMExPR2tralRvZ2hDNjRLUzB3VG1HMkNEemV2ZTlrbWdW
YTZOaFUKZWsrZndqeFZmampSclJZUWU0Q3NLdUNKYTFNOXhmeFMwZVB1aVJodnFU SGY3WGcKZ0J2MUtHdnduNFJ1YVpCd01OT1ZhRVJyd3dWRmNGQWN4VmUvdS94R2dX
VQotPiBzc2gtZWQyNTUxOSBuanZYNUEgZ2tYS2swYWYvRlRraVYrcGRMODVxL2dl OAotPiBzc2gtZWQyNTUxOSBuanZYNUEgU3RhNjBleFJHQUhnUjNZYVo2dmdISm5B
bG14dFRJVHF4NVIwLzFydkt5RQpKQVQ5Q1F2cFlaWndmYnFZVWdTUHZRL0E5ZWV3 M2x6UkVRa0xMUTZybGlER2xCZwphaWFOOFowaUhXeVcyamlCclBhM3JZZlh2ZmRI
WWgvMGRwemV5ZUZPMG40Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSB5cmx0TnRaRURT RlB6Q2tySkwwM0lyL3dJCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBnODdnZXVCSHl4
MkRoZTV4YTB6QnJKRWdaUzVBV2xRclIxWVVzRUs1b3h3Cm5FY1FHUUdjTSt5U2Zh Y2JkdXJidmtqWVdQdWJTZEZjS2puMmM2UzFtcmdTZHlvCmdPSkFDWTFwdmNyc2xH
WE1tNERvZ09wNE40STlKZDdNT1ZuTUhhWDVlbWMKLS0tIHZTL2F6SFlubHpDS2g5 R0hxRXZkNTZ5b1dvaFgxdjVUWFc1aFpuWTYza2MKLT4gc3NoLWVkMjU1MTkgejFP
bm9qNHFxMHFwMkMzYkN4alR3NGtWUjhDTVc1YkkKjbqfpGjlQNQrKciqoC2wxgQl Y1p3IFB2WVlaZ0YxenR5SDIvOEhza2c5THVldUw2dXplR0t3N1h2ZmY3NlJYZzQK
kdWTvPjACx+gYYybbM6yMSpqCds6Wu3DKAIVvHh66Y5fWm6NrS6K49gCjd7c00s= Q0RwRlFGTVRuSzE1QVlSRWg5cHRYMElLZVlDM3NaOUVQTEl0U0VuM1VCSQotLS0g
a05hV3haWlE5QkFnMHQvWEowcEU1RExIMGdUWjQvUkFmaHFVdnJnT0g1RQrkp3VL
7YRcvkng6dO+swKzNUhPbJtYJqGtAtxo6I2v9nQl7Zc8X1vcJiaic4xaYNYfRFPS
oAd3/SnRi+sghHuTWw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBaT3Fx YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBzV2Jx
Nm1RNHpXQjJxZVE3RkF2S3M3KzdjK21Od0NDd2x5RmcwZXVZNVFVClBqNDRFK0hn ZG5JL3oxc3Vqcmo1VE9GQ21yeGpINWJNZTYxcFpNTXJQQ0hDZFNnCk4zMkNNdmFs
WnpsOWFkU2l1UFhUTGhyUUFwQTZLb252VVZKV1JRWmJQODQKLT4gc3NoLWVkMjU1 LzFPUzFQUTYzQ2lEcUpkSlBsUFpvQUdOSmZocnVZeFlKbDgKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIHdZS2luQ201akdBTmI5ZXhCazlhcGJXSDhBZHlSQkRMdUFpN1hG MTkgWXlTVU1RIFJHWGpmNTNFbkdDNEE1YVpBRWowOUIwYmRIVFYxSFFaUDVBblY2
azRLVlUKTWxCQmpIRy8zN3BxcGRFc3lseTI1Ymc2cGFpQXI5d1RsMkxkaGJuKzVp NWxMMlkKOFh6WXVwM2lRaU5CZm5JMDN4eThoRUNkWUExcnpmRnpUa0pmUTcxWUo5
bwotPiBzc2gtZWQyNTUxOSBuanZYNUEgQ1FmcFp6K0Y4UXRrU0tlVVpYUG9qMDR1 UQotPiBzc2gtZWQyNTUxOSBuanZYNUEgRFhsWklkVmpXWTl1ZS9XVHN2dStDTXZw
aTRwR0tMM1hwdU05YXVPZEQyZwpYOVJoc1phZUNHV2wwOWlQUitZTU9vaVhEVE14 bzlpUktIdW5rLzdnOFM0N0pBNApvNmxUK3d2aWt5ZXdQeUhWdHFpclQrVENOaDdx
cjFNekVDaTNFQVpUNzNRCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBxMVlLSFFjQjFD RTdBdHVDSnFPVkh2ellRCi0+IHNzaC1lZDI1NTE5IENxSU9VQSA4M2J4cTVnVWtq
RkFEVVZnT2dqd0ZMVnV4T2loT1ltVHoyNnZoZzgwNDFZCjYxUEwvUGJidDU2UnY5 RzBsRlR1YWhwVkF6L2wrcC9vNzdaYzVoQk8wTXVmRXowCnJkc3dyNnN3UTZyZG1q
c3J1NzU2d3JpaVU5eThSUGNENXhIVDZQSktzNUkKLS0tIGczblFPd1FLQmYvMUZN Z2xtUzhRT3ozZHhCeXJPVUdETkhoa3lpY1QweTAKLT4gc3NoLWVkMjU1MTkgejFP
YUdIYXk0NmxsN2krOTFncm1MczFBT3RGOGxDOG8KfClHc8j62Vt5d0JH0CLEUAts Y1p3IG1VdTd3aDkwclpZY0hBOVdiY3pIai9MSjc2ZStjb0NMaWx5RWpxR2F3elUK
amY7zEWKS2wGnLWk9SU2ybe0nsZ0wfUky8+PbztOomEXRxGfX5jc8j2cH6VNW9U= RE1sRFBJZ0ZNSE5QN293anNXWldiZm9jV2w5SVpxU2VuTXMwTndJU0Z1RQotLS0g
dzBMKzZRYU9BQ0YvWGpLMHZLQ0YrZGJZRGZOcGNmcnJ2RGJmMit4c0NHZwrMord1
EhzFVq3Hrt+3l2vfY90fSkP+X0yQqC5m5A7F/jA7xBzBr3WGQ/DKYsxT1e/bZv2g
cTLB74cM0mVm5iGHDQ==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBqbWVP YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBITUVj
RVNIVFVJSW4rNWFNbXdxZUdTcnBQR0k5TUhKMC9CWGxGQ0hValJrClcyNXJJQzdC MjN5MGljc0ZEdEdPSGdNSWZZS1VDdnp6d0dIci9GeXI0TXhUZ3lrCm5ZbjZtN1BO
VmFYQVkzQjZqMXpDMC9nazVhdmdQWVA4RHVBTUNOVUZJaXcKLT4gc3NoLWVkMjU1 ZUkzQy9ZbGp2S3Nxd1ljanBQemlwdVdDMXZOYkp0UFBVTDAKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIEhPakxYZmNsTlVYZVBjN0s2ZFc1VjFId2ExNXZEa3Fza1lKWktj MTkgWXlTVU1RIG9VSStaM2RTdUF4Q2VkQ3h5S0JHeWYwdndiQmlyNytWTXplMkdE
MzMyaEUKczZ1SGtycFIxQjlWWWQ0RW5ka0pLN2hocTh2V0M4Z0NscDByRnJpMHlZ MXpqeWsKaWhMOE5DS2RnS0VneUJHWUc3Ylhpb2ZFazJGdkJIdkxxalhVdU4wR2N4
OAotPiBzc2gtZWQyNTUxOSBuanZYNUEgeHZ2TnMvbWNhUzJOQ0JZNXZSK242Tldx awotPiBzc2gtZWQyNTUxOSBuanZYNUEgaHMwWWZQVDdRai90S3U0SE95TW5JODcv
M3pJUXJPY1BWa0ltUG4yV1B6NApyRVJCOGRoYUJYNE5iVkRuSXorQjVwU25CTmkz Y2Jqb0hZZC91dExCSWFCT3AxbwpzbTk3SW43OVVmY1ExemkwcXMxdUx4UWRtek1O
TElqRUtTRmNxT1lob2JRCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBmT2hvZGVIc2wv cVJuQ3JmWHNFSUxwRXo0Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBBUVRZeHZnNm1a
d3V0emkydDNQRllaMDJSZmt3cE9uYXkyVlArUXJLS1VBCjUwSkR3aHd5akNQbzJS OGsyK0JXbWF1RXBxUkQzRkZ1R0s1bzRNa1BHTWhOblc0Clo0VngzYTg1elNRY3Fj
MlVIR1phNUkvckhiblJGTysrV0JTKzF1MURkSWcKLS0tIFd6S0NJd1luVW1mMDNv UEJ4cnp2MkV3ckM4R0loU3VuTGtuSEgzamNsY2sKLT4gc3NoLWVkMjU1MTkgejFP
MXhRSzU5NDZ4VnJIaFV4ekxxZDJGZlJUNmtnRlEKmXBlM6PkajrVUhxQLhkx3WVI Y1p3IHZIOUNFME1TbDhsUDNobUdwV2RRMXQ3cDFCeEg2WTArQTlSMmYxN1liZ1EK
UzKD+1c0ifWwm1QT/7/jodJgef2oG2QEBOVJ/HMzgQxfiXhoscjD1Q1nS1OaQLk= SXVWOGI3ejRwNUtDeUE4SDh6SGhzYWNHdiswaUFQZGd4L0VPZStQaFA4TQotLS0g
R09RR0hEeWJmb1N3SjBUemhnOGQyeTN4K3ppaFJ2MDFGR2VqNmYraHZaVQrsfqps
BUEbuwbRJOooVEMyJmUjNavhK09fgxHyyaiDVpEsTdg3dQ6sQYIV/Envmad8An+a
Cn8oklYFq/UxoMHHbA==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,14 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyB5STJQ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyA0Wkc3
VTh6VElvclJHWVA1dXlMYWFObEVvSDJaNFNCVjg2OERKQmUzcWtBCi9kRi9wUktm cFMyN1lLanQzNm9WR0JPS2RCYjJpbndER3BmUTZOcmVOem1DWkZzCnY5S1Yyamt6
KzNjNlVxNHVva2MwOTBuNEFEcVp4aFdjQ1hGaDlpQldEelEKLT4gc3NoLWVkMjU1 ZkFUem5vT1JQYWRmTHZMREVTb3hHQ20xdUpQK2dqcjJtRmMKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIFYyNkNwNmg1UVhtaGpzWW9Ja280SXl4MjVoU3R1NHhaWktweGlK MTkgWXlTVU1RIFRrUWorNVRaYkhHaWpheXZZSmRaM0d6U0tDNjgvcE5IMWk5SEhX
YXZhRzAKRFRDSmRwNVhOaitMNVh6VzJjUjd6dDdGVGVVSEhYVzV0TGU4WTBCb0p2 MzhZa0kKVEkxWlZhNytJMEdKampWY0l3NzQ2aUdNOU5rV1Zjb3FHTVovdXRpdlB4
awotPiBzc2gtZWQyNTUxOSBuanZYNUEgbURadUZqTXNXUFFHZ3RSOWVOSWJLL3JX dwotPiBzc2gtZWQyNTUxOSBuanZYNUEgVkxtNFFoWUlaM25GVDJGMzBiWEt6Lzlj
ZTBNUmJoeTVTRXZQR0EyamMyMAptb1RFNk9GYStVRzhlT1daOUZrMSsrZUVCWWth NFdka1dUd0ZJNzMwTTl4emdqZwo3Y0FTbzZxcUNpOTl0R09JOUVkWXVIMkFndFg0
c3g2TjZyUHRqalM1QlB3Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBqRDdMTnNiS2RW NXFKR0lZQVhCZFRBL0lJCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBJWDZ0aFBtRUxr
VnVQOXBUN1JhVmlOSnc0bjgxSmdnK2VTYXZUUnZkemhjCm1HMisvQTFrTUQ4T1BF dXNRaVVxOWFacmE0allBcmJleFNFOXhNNlFZL1FDUVJJCmkzeStQSGN4STdTSFJG
MzRFMDNZRWdLRWgvNnBFaXJnZDlpMVE1M1RkS3MKLS0tIERSaFNOcW8wSnd3N1Nj eWVnRFhEL3UzNHJzWngwWWZIV25NbzZOK3pOeDgKLT4gc3NoLWVkMjU1MTkgejFP
TnBCWWlFcXRRaGs4ellIT2JGTWtqRFZaTHdKaTgKqliAH21whccGxY7qQlAGf/mt Y1p3IG13N1RWYzFzcUxkSnJCb3duSEQ0UnpnK2U2VmZlZlBFMjFqa2Y3Q2sySHcK
BLsCDO82jjrDk4e9wN04lUzeqfI0kb9It5/2XqzW53vn3EdIsKV0wmraoSpwIbQ= a3RURU51bGRzZllyOVpCT1RQSVpFSnB3K3RFZGJQMDNKN0wySko0OVBPcwotLS0g
eEluUUZwanRWWS8rTk1jcEpSU3Q1L05ja0lLNklhM2hHNUdBeG0rSjU5YwqEOyo/
YSIlWzZ13Vm64tqg6ksRnEuaSwUSQro0R8zRy8MNlPcX0IKtZV3H4wnvZBRIScWd
Mng3c8Wq4p3/ip+/mw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,15 +0,0 @@
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBTWlJz
K3ZITnRqTCtqdHZGbml1ZUNQbEdPdjJmUjhDSmg4dUFmeDdUaDNBCm1sT0x3OVhi
YVo4YWI4T2lKVXI5RzdDeEx4RVI1anlkZWdJY3QyL3Z5a2MKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIE5tVEdZWU42VUNxMlVxc2lyM0lXYjF2SHJ0WDRsQlRHcUxVTGwy
MWVWVVEKai9IVUN5SmJMNW5kZ3hPVGJLaHNqWTcvREdhV2IvcENGcnJvR3B2d2RO
TQotPiBzc2gtZWQyNTUxOSBuanZYNUEgV0RVN1dwZVhQKzF0L2VyaEpPd2lLVXR5
MzE4ajIxbWkrWXNnVDhyT21BawpZUTd1ZW1LVlQ3OG9zem5JWlJ1ekxwdFZSUVBq
cnlhK3F0VXBib0RNSkI4Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBqUDRNbzZsNmpD
R0p5bFVhMkpTaUZ2aUszTDUyOElCWncwczBLTTNMMW1zCm1aY0Jxd3FpMVNLVVRZ
ZFY1WjdrTVg5SzBsVWxHcUkyNUhSS1NWQmsxakkKLS0tIDFLay9ISUxPZ09VSk02
a1FCajJiNU5JUHovNEQvNGE3ekdVNzJSQTROQkkKMkyKdbFB2IqhHLxw2W1UnpmR
IzWIGHRHfrMmGU3S6rIG4OM63kNQ6wU4dNw91vzJ9Im1MCJZa7ElYfffwdbw4J7h
IdEFgivD96G274J9tzUGMc/sVKgFzw==
-----END AGE ENCRYPTED FILE-----

View File

@ -1,15 +1,18 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyA4YWR0 YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyB5OVNh
eVNVVkNvV2EyTWNKVGZnd1hhSWRDeHA5QUtrZENrcE02d3RlV0hjCjgvSFVid1R2 dTZiYVp1U2FkaUhXTUxSYkpEZDBuYnNXS1AySW12bTlHdjJ1N0hzClVrTXpOVUhF
QW9pK3BBNElrYXhscCtlbWxTTkNsSGlYakM2cWhSSUFHYWcKLT4gc3NoLWVkMjU1 b3lTU3I0cmVKdFEwNXBxTHJmeHA2Yi9wY2RYVkdVbnA4VncKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIFhxSnVVNEo4VU5uL1AzYmxia3VCYkpaM1hxU2hQUUE0NldjOUEy MTkgWXlTVU1RIE9qYmV0RHB0TkJOOGRwN0ZFbnhCMmRMK1BrRWR2UmJFWm5yNVFR
Z1VJeEkKZWVLOEtRK2tnbWZwQ3pQU09uZUZxcGRIV1pjOFdudkVMSVI0bUJOdGh0 RmtuRkUKZ0pQUW5lVGdvd1psSS9FT2pRSDZqYWcxOTgwd05MT1M5dmIxRG13YVUw
SQotPiBzc2gtZWQyNTUxOSBuanZYNUEgNWptNHRvbHFUR0k3NmV5NU4rRjh5c3hV WQotPiBzc2gtZWQyNTUxOSBuanZYNUEgbEdsdHA4S2tmV3hVcWdUeEpVT05hT0Fj
UDRtaHdSRDZmNWRabkFNaFpBOApWNUc0cFRSUGFxMmQ4WGQyS0NsaFBJdXdraHdT cmZucnQ1bjdzbWRQbSt4TU1IdworNk8vOGtNWEllWnJNOHlGT1ErUlV1akxjNGRz
Rm9XTzFyay9PQ29mVENBCi0+IHNzaC1lZDI1NTE5IENxSU9VQSAzUDhxUmVlSUFO YmdjRU9tM2FaSXd3ODA0Ci0+IHNzaC1lZDI1NTE5IENxSU9VQSBuYWdKMXFWeHNj
Z1hEUUo5SmRDV05ZbHEzVzNHcERIeTk4czBnSHNmYmxzCkY5WDVlWklBWTNxOFg2 OFhOK3ZCSTdtRlpxMnBPV0lGNTNXL3owOTZhYmJXL25BClJYNG1iVlg5dXRjN0Q1
am00ZjZaYk50V09wdkRNK281QzEzY3NGQVpPREEKLS0tIE4yWkNIS2lOK2l4MG9z WmlPSE5xRFV6QXIvbWw3SnNWTVVSMmZpZW5wTzQKLT4gc3NoLWVkMjU1MTkgejFP
aVFjYkNvc3VSTEw5SWZ1bUZRVU9DN0lyZER6bjAKYzEI+KoTpI/pbWIfIyIMbodx Y1p3IG9pT2R5YU1keGxCdElyY0ZlQmUxVTZ1bnI1MFZySVp0c0lBU3ZTWEZoRTQK
hKG/trp4JBn9Zmmg0YL6UA79rNDH/l89i5zxzCf4K06Sfc0P8ksAXuthXvLZ3Nqf ZGZUd2YrUy8rM2ZsREVrMTJUNUlvRWg5UlVoSm5lZU5UM2ZzRXVmTkR5UQotLS0g
QRbEK13meeu3LJKbrRsWlgQ4g/2mDb3j0tSsTz21lturiHMVRK2KVPobUQ== aURwdHRFcVZJM0RrQ0NsLzFQTUNSWjVCU24rNHIxOXVBVmxaSmU3d0FUVQrNuXSX
L9650Q0UWOdVd6wvXK0AAoV3pGosvteaHEpbPyhWUHEGd244dgXLFJA9SQuzBKQn
156UisDqjoUzqYl2f0+82CJOzaD44je/7QBWIgAQ5iok3iBC8PSlAvAo/5X5UgBI
HDXtJNPi1jfU
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----

View File

@ -1,15 +1,17 @@
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBEcUgw YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IE1nSGFPdyBVeThD
QlB5alE2Q2xUMlV1dmc1Mm8zbnZFMmJXUlQ2V3ZKeGlhL3NUMENvCnBWd1pENnZG cTRyOVBqeDBEajZKYzNvVkhRR3FzMVNBbGFqZG1xTktpaXpBd2hzCk9ZVTlnanZa
RVAyN3ZFTWJiSWJTUVpUK3pmdHJieWJkamNpK1R3c0t2dlEKLT4gc3NoLWVkMjU1 aVN1V255U0NzOEFCUDduMU5oNDByVWd4SWtPMkFsdHdZZ1EKLT4gc3NoLWVkMjU1
MTkgWXlTVU1RIFJiY1Y3QzBTVkNZZE5qTDJ5QitZY3doQnJUNWQ2dG9TTjBwdjB0 MTkgWXlTVU1RIG1TTy8vWFBFd21LYnZWKzhnT2dPREIvL2JvK2R3c0hSTXFOdlVx
WENmZzAKMnhYVmdsVk53N2p6VmszMk5iWVVLaGhPUm5CVGdYZnlVdXJGcUdVTmhT WmlrMW8KVk9ubmxsNHRvSjBTNEtKRU10RytHWnRwT1ZIWS9meVc0dkhlTkxrY3NR
WQotPiBzc2gtZWQyNTUxOSBuanZYNUEgdXRzN1pndzJpbEdCR0MxcTB3QXAxSTNk QQotPiBzc2gtZWQyNTUxOSBuanZYNUEgZW1tc2xRNEtaam5tZ1VYRjNyV0xBbkRX
V1pRcERkcVh1ZWxLaitEY0hXQQpJZmhicjhpSGNySnNyc0wwL0l6cGZFQzVndnVj M0FuWW9SUTR3Um0yUzlBeFhFUQpWNzRpeGlTQ0FpbTI3MmROcEJmMWZ0dmlnZEFp
LzY5TkVrREw0clJVSGdZCi0+IHNzaC1lZDI1NTE5IENxSU9VQSB1TUtldXUvak9w TmNrUGxOSzZIQnA1TTFzCi0+IHNzaC1lZDI1NTE5IENxSU9VQSBpYzJFQ2h6OU5M
ZWh2ZzM4ZmJEUmZWSCtjcGl4U2FrTWtIRUZ4YnA5ZWlVCis5V0p1cXlWSmdTQlhN M2FPYnJLaU9IU2tEMzhrMkJWdS9XTU42d0NrbkVIOFNvCjNPcktPc0YyeDJHeHBx
ZHdoamdtZXdjY0I3bXAxRW9XVWl5dXBLSk1NTkUKLS0tIFJDbGVvS3EzSlEycU9T bnRVU1VQZjNPSTdrOVNZcTVXK01IK2Y4QWVRakkKLT4gc3NoLWVkMjU1MTkgejFP
ekhKNnYxZEVzWWFBTCtUeTZiZk84c0twc08zV28KNGsxEB4hTgrU7qDRU/pETnmR Y1p3IERHK0pYT3A1ckJ6SmF0MHkzbGFjV2Q5YmN6cFJxOHZHVDN0RktualBVakkK
J5HcGjLsvpEU4cWrX9Cb8uFvqQZp41QD2Jqo3eZvt9g2fDuyKtXHI790Vqseh6H1 SnpIMzRrMmdKVllzN1dVTTRSWklpZEJrTkprSGJhVk9teHFsam5MSStnTQotLS0g
jQqtGyjulOODxCo= TjFuK2JVc2xobzd3Z2ZHQXp6bkFkNXBaOGhwWEZmeXVLSmJNOGUxeUxMawrUo1I0
jkaYDLQjS//eqsWaBc94CtnsSkWaUroAExyWob3U5VHaby90E9HpJ5IV+8fvVqxc
LDXJF3bAnnAvqKNsWG+daUqDWhdv717Tbw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----