Compare commits
	
		
			2 Commits
		
	
	
		
			e8090b2915
			...
			a3870a4293
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| a3870a4293 | |||
| 8f4b61fc2b | 
@@ -188,6 +188,11 @@
 | 
				
			|||||||
                hostBDF = "44:00.4";
 | 
					                hostBDF = "44:00.4";
 | 
				
			||||||
              };
 | 
					              };
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
 | 
					            qemuFlags = [
 | 
				
			||||||
 | 
					              "device qemu-xhci,id=xhci"
 | 
				
			||||||
 | 
					              # Front-right port?
 | 
				
			||||||
 | 
					              "device usb-host,hostbus=1,hostport=4"
 | 
				
			||||||
 | 
					            ];
 | 
				
			||||||
          };
 | 
					          };
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
      };
 | 
					      };
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  imports = [
 | 
					  imports = [
 | 
				
			||||||
    ./unifi.nix
 | 
					    ./unifi.nix
 | 
				
			||||||
 | 
					    ./hass.nix
 | 
				
			||||||
  ];
 | 
					  ];
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										58
									
								
								nixos/boxes/home/palace/vms/sfh/containers/hass.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								nixos/boxes/home/palace/vms/sfh/containers/hass.nix
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,58 @@
 | 
				
			|||||||
 | 
					{ lib, ... }:
 | 
				
			||||||
 | 
					let
 | 
				
			||||||
 | 
					  inherit (lib.my) net;
 | 
				
			||||||
 | 
					  inherit (lib.my.c.home) domain prefixes vips hiMTU;
 | 
				
			||||||
 | 
					in
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  nixos.systems.hass = { config, ... }: {
 | 
				
			||||||
 | 
					    system = "x86_64-linux";
 | 
				
			||||||
 | 
					    nixpkgs = "mine";
 | 
				
			||||||
 | 
					    rendered = config.configuration.config.my.asContainer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    assignments = {
 | 
				
			||||||
 | 
					      hi = {
 | 
				
			||||||
 | 
					        name = "hass-ctr";
 | 
				
			||||||
 | 
					        inherit domain;
 | 
				
			||||||
 | 
					        mtu = hiMTU;
 | 
				
			||||||
 | 
					        ipv4 = {
 | 
				
			||||||
 | 
					          address = net.cidr.host 103 prefixes.hi.v4;
 | 
				
			||||||
 | 
					          mask = 22;
 | 
				
			||||||
 | 
					          gateway = vips.hi.v4;
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        ipv6 = {
 | 
				
			||||||
 | 
					          iid = "::5:3";
 | 
				
			||||||
 | 
					          address = net.cidr.host (65536*5+3) prefixes.hi.v6;
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    configuration = { lib, config, pkgs, assignments, ... }:
 | 
				
			||||||
 | 
					    let
 | 
				
			||||||
 | 
					      inherit (lib) mkMerge mkIf mkForce;
 | 
				
			||||||
 | 
					      inherit (lib.my) networkdAssignment;
 | 
				
			||||||
 | 
					    in
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      config = {
 | 
				
			||||||
 | 
					        my = {
 | 
				
			||||||
 | 
					          deploy.enable = false;
 | 
				
			||||||
 | 
					          server.enable = true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          secrets = {
 | 
				
			||||||
 | 
					            key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGpYX2WbYwUqHp8bFFf0eHFrqrR8xp8IheguA054F8V4";
 | 
				
			||||||
 | 
					            files = { };
 | 
				
			||||||
 | 
					          };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          firewall = {
 | 
				
			||||||
 | 
					            tcp.allowed = [ ];
 | 
				
			||||||
 | 
					          };
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        systemd = {
 | 
				
			||||||
 | 
					          network.networks."80-container-host0" = networkdAssignment "host0" assignments.hi;
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        services = { };
 | 
				
			||||||
 | 
					      };
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
 | 
					  };
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -83,6 +83,12 @@ in
 | 
				
			|||||||
          };
 | 
					          };
 | 
				
			||||||
        };
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        environment = {
 | 
				
			||||||
 | 
					          systemPackages = with pkgs; [
 | 
				
			||||||
 | 
					            usbutils
 | 
				
			||||||
 | 
					          ];
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        systemd.network = {
 | 
					        systemd.network = {
 | 
				
			||||||
          links = {
 | 
					          links = {
 | 
				
			||||||
            "10-lan-hi" = {
 | 
					            "10-lan-hi" = {
 | 
				
			||||||
@@ -142,6 +148,11 @@ in
 | 
				
			|||||||
          let
 | 
					          let
 | 
				
			||||||
            instances = {
 | 
					            instances = {
 | 
				
			||||||
              # unifi = {};
 | 
					              # unifi = {};
 | 
				
			||||||
 | 
					              hass = {
 | 
				
			||||||
 | 
					                bindMounts = {
 | 
				
			||||||
 | 
					                  "/dev/bus/usb/001/002".readOnly = false;
 | 
				
			||||||
 | 
					                };
 | 
				
			||||||
 | 
					              };
 | 
				
			||||||
            };
 | 
					            };
 | 
				
			||||||
          in
 | 
					          in
 | 
				
			||||||
          mkMerge [
 | 
					          mkMerge [
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,6 +15,7 @@ let
 | 
				
			|||||||
    passAsFile = [ "code" ];
 | 
					    passAsFile = [ "code" ];
 | 
				
			||||||
    code = ''
 | 
					    code = ''
 | 
				
			||||||
      #include <stdio.h>
 | 
					      #include <stdio.h>
 | 
				
			||||||
 | 
					      #include <stdlib.h>
 | 
				
			||||||
      #include <signal.h>
 | 
					      #include <signal.h>
 | 
				
			||||||
      #include <unistd.h>
 | 
					      #include <unistd.h>
 | 
				
			||||||
      #include <systemd/sd-daemon.h>
 | 
					      #include <systemd/sd-daemon.h>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,14 +14,11 @@ let
 | 
				
			|||||||
      rev = "b66e27d9b29a172a097c737ab4d378d60fe01b05";
 | 
					      rev = "b66e27d9b29a172a097c737ab4d378d60fe01b05";
 | 
				
			||||||
      hash = "sha256-TKZ4WjNV2oZIYNefch7E7m1JpeoC/d7O1kofoNv8G40=";
 | 
					      hash = "sha256-TKZ4WjNV2oZIYNefch7E7m1JpeoC/d7O1kofoNv8G40=";
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					 | 
				
			||||||
    # Newer GCC requires this upstream patch
 | 
					 | 
				
			||||||
    patches = (if (o ? patches) then o.patches else [ ]) ++ [ ./fix-uninitialised-var.patch ];
 | 
					 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
  tftpRoot = pkgs.linkFarm "tftp-root" [
 | 
					  tftpRoot = pkgs.linkFarm "tftp-root" [
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      name = "ipxe-x86_64.efi";
 | 
					      name = "ipxe-x86_64.efi";
 | 
				
			||||||
      path = "${ipxe}/ipxe.efi";
 | 
					      path = "${pkgs.ipxe}/ipxe.efi";
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ];
 | 
					  ];
 | 
				
			||||||
  menuFile = pkgs.runCommand "menu.ipxe" {
 | 
					  menuFile = pkgs.runCommand "menu.ipxe" {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,48 +0,0 @@
 | 
				
			|||||||
From 7f75d320f6d8ac7ec5185b2145da87f698aec273 Mon Sep 17 00:00:00 2001
 | 
					 | 
				
			||||||
From: Michael Brown <mcb30@ipxe.org>
 | 
					 | 
				
			||||||
Date: Mon, 2 Sep 2024 12:24:57 +0100
 | 
					 | 
				
			||||||
Subject: [PATCH] [etherfabric] Fix use of uninitialised variable in
 | 
					 | 
				
			||||||
 falcon_xaui_link_ok()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
The link status check in falcon_xaui_link_ok() reads from the
 | 
					 | 
				
			||||||
FCN_XX_CORE_STAT_REG_MAC register only on production hardware (where
 | 
					 | 
				
			||||||
the FPGA version reads as zero), but modifies the value and writes
 | 
					 | 
				
			||||||
back to this register unconditionally.  This triggers an uninitialised
 | 
					 | 
				
			||||||
variable warning on newer versions of gcc.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Fix by assuming that the register exists only on production hardware,
 | 
					 | 
				
			||||||
and so moving the "modify-write" portion of the "read-modify-write"
 | 
					 | 
				
			||||||
operation to also be covered by the same conditional check.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Signed-off-by: Michael Brown <mcb30@ipxe.org>
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 src/drivers/net/etherfabric.c | 15 +++++++++------
 | 
					 | 
				
			||||||
 1 file changed, 9 insertions(+), 6 deletions(-)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
diff --git a/src/drivers/net/etherfabric.c b/src/drivers/net/etherfabric.c
 | 
					 | 
				
			||||||
index b40596beae7..be30b71f79f 100644
 | 
					 | 
				
			||||||
--- a/src/drivers/net/etherfabric.c
 | 
					 | 
				
			||||||
+++ b/src/drivers/net/etherfabric.c
 | 
					 | 
				
			||||||
@@ -2225,13 +2225,16 @@ falcon_xaui_link_ok ( struct efab_nic *efab )
 | 
					 | 
				
			||||||
 		sync = ( sync == FCN_XX_SYNC_STAT_DECODE_SYNCED );
 | 
					 | 
				
			||||||
 		
 | 
					 | 
				
			||||||
 		link_ok = align_done && sync;
 | 
					 | 
				
			||||||
-	}
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-	/* Clear link status ready for next read */
 | 
					 | 
				
			||||||
-	EFAB_SET_DWORD_FIELD ( reg, FCN_XX_COMMA_DET, FCN_XX_COMMA_DET_RESET );
 | 
					 | 
				
			||||||
-	EFAB_SET_DWORD_FIELD ( reg, FCN_XX_CHARERR, FCN_XX_CHARERR_RESET);
 | 
					 | 
				
			||||||
-	EFAB_SET_DWORD_FIELD ( reg, FCN_XX_DISPERR, FCN_XX_DISPERR_RESET);
 | 
					 | 
				
			||||||
-	falcon_xmac_writel ( efab, ®, FCN_XX_CORE_STAT_REG_MAC );
 | 
					 | 
				
			||||||
+		/* Clear link status ready for next read */
 | 
					 | 
				
			||||||
+		EFAB_SET_DWORD_FIELD ( reg, FCN_XX_COMMA_DET,
 | 
					 | 
				
			||||||
+				       FCN_XX_COMMA_DET_RESET );
 | 
					 | 
				
			||||||
+		EFAB_SET_DWORD_FIELD ( reg, FCN_XX_CHARERR,
 | 
					 | 
				
			||||||
+				       FCN_XX_CHARERR_RESET );
 | 
					 | 
				
			||||||
+		EFAB_SET_DWORD_FIELD ( reg, FCN_XX_DISPERR,
 | 
					 | 
				
			||||||
+				       FCN_XX_DISPERR_RESET );
 | 
					 | 
				
			||||||
+		falcon_xmac_writel ( efab, ®, FCN_XX_CORE_STAT_REG_MAC );
 | 
					 | 
				
			||||||
+	}
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 	has_phyxs = ( efab->phy_op->mmds & ( 1 << MDIO_MMD_PHYXS ) );
 | 
					 | 
				
			||||||
 	if ( link_ok && has_phyxs ) {
 | 
					 | 
				
			||||||
@@ -1,72 +1,74 @@
 | 
				
			|||||||
-----BEGIN AGE ENCRYPTED FILE-----
 | 
					-----BEGIN AGE ENCRYPTED FILE-----
 | 
				
			||||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHNqUFR5ZyBaOU1F
 | 
					YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IHNqUFR5ZyBlbHl0
 | 
				
			||||||
ckpVQWNGejNoQUQzaERobUNmRFMyWVFzc0Eydkh6SEVZNHU2SHhRCmc0NUJMa0lG
 | 
					S0lQbXBKVGpNNnJOUS9TSlp0U0EvYWFVanN3N0RMb1JudEdwYVQ4CnJGdklzeEFy
 | 
				
			||||||
SnRuZHR3dmNKem1oYXA5bHVsNWcwY0xzMTlqQUlsQWJiSFUKLT4gc3NoLWVkMjU1
 | 
					RmxjamNyUWszYjFGb0ZZbk9EQVdERERtckpqczVscjdmUE0KLT4gc3NoLWVkMjU1
 | 
				
			||||||
MTkgRExNZUZnIG9Ca2M0ZHJwS2I5VWJiY1ptUWJtNTdVakVGQXlteGdCRHg4c3JO
 | 
					MTkgRExNZUZnIGR4czhRYjUyU29JbnFnRk5IeXliNzZzMVMya1ZuS2tkUlFVTkxU
 | 
				
			||||||
cXpaSGMKTHlidkxRZ01mWVRLRVRZdWRyNTZWZDhmR0Vicy9hYmF2elg5M1FXNGF6
 | 
					aFd0VWsKenprWWQ0UEdaUGhvRlJUbnU1T2h1czZBK1dpOGwwcjJxc2p6ejV1RnM0
 | 
				
			||||||
UQotPiBzc2gtZWQyNTUxOSAzYkIzWmcgZE03MlRsVDQzdlF3R3F0TWppdU4yV2J3
 | 
					RQotPiBzc2gtZWQyNTUxOSAzYkIzWmcgMHB6dzVFQ3FtaWErVWNyRXo3WnNhT2NF
 | 
				
			||||||
N21xS0djYnQzLytKK3JBenFoawp4bk1pWDlmZ2dmOFU3djBHVlN1alJETENGMGhM
 | 
					eldUVWtOaVlWOTVwcVVaOUlGMApJUDUzNmhKbUxleTV6SjV0Zmk3dno0STVIRDIv
 | 
				
			||||||
eWhGSFNGUW5OenpNMFRvCi0+IHNzaC1lZDI1NTE5IHErMFhjdyA3am5WUzQ4a0xM
 | 
					SUkyd1M2Z21mdUtMUXIwCi0+IHNzaC1lZDI1NTE5IHErMFhjdyBnRFBPRnNSa0Nn
 | 
				
			||||||
OEpvdTVGVjNVV2tMNnRHQ2IraGdZbjd2VjcrTnJzSjA0CmoyRjI3U1R5bElhb0NL
 | 
					UTlpR1Y4OU1UQmNLRnRWaGxzU3RBV0c1bG90K2I5QUQ0CjArUFlGS1B2RkVKSEtP
 | 
				
			||||||
UU4wRG1VZVV2MlpFdFkrUGdNNVNsOTJjN1pmZ0kKLT4gc3NoLWVkMjU1MTkgWkIz
 | 
					ajRpUUNlMkRPN3pxaEkrZ1M3RndxRDZ6U09Wc2cKLT4gc3NoLWVkMjU1MTkgWkIz
 | 
				
			||||||
ZTZRIFByVVhNbzRFQ0grb29hd2x0OU9iUU5sbjU2Zld0RXExM0RHT0M1VTZ6U0kK
 | 
					ZTZRIFRPdXRTeEVvUTM1dlQzMll2VDFkUlY2eEFRcnRrc1lNeDZDbFE1a3BjaDgK
 | 
				
			||||||
a2lVNzZiNWkwMy9XT2lIVnQrNG52cWx1b3lNQk41WFhHenlsVDdlR1FjZwotPiBz
 | 
					MytBM0Y2Mmo2M1JOWExLQy8xTm9SR05WcmxrV2xBZ0RpeXQxeGVkZ1VZcwotPiBz
 | 
				
			||||||
c2gtZWQyNTUxOSBqNjdGWFEgVzZURHE4ZHZ0YWNYZ1hkbWQvdDhQbzJ0R1NMNjRv
 | 
					c2gtZWQyNTUxOSBqNjdGWFEgYUw5cnJabnhhdU9lN0NPVXVUazRnVWpzcUVtM3VR
 | 
				
			||||||
QkVWdkNPWFN4blNGawo2ZndJeEhsbkoxYjBXbk96bjZsMXVqeE4yMDFRaDR1K0Rq
 | 
					bWQxNVVSQTN5N3hXRQp0blhXUC94TlRPbS9Ba2N1eVM0QkNNblJBa1hJYjZ1Y1lM
 | 
				
			||||||
eExHNDFBNlpnCi0+IHNzaC1lZDI1NTE5IGMwVE5hUSBjQXhrenI5cTZhNkR2VnNG
 | 
					UDhWbUd5bWNVCi0+IHNzaC1lZDI1NTE5IGMwVE5hUSA0TXowVjA0N2FvcER6OEts
 | 
				
			||||||
VitKUzQ5QThOcFJCZytTUXRrQzFZWi9VREZ3CnZFTU5QNm84NjVGYmp4RTZTM0Js
 | 
					VTVwa0UzUEtsY005WDhmaU8zZ3VLaXQvaVRJCjB4cjJiMHVGM3hyWlg0OHhaT0lu
 | 
				
			||||||
cTR0WUMwd1RWS0RJNHo0dDBkS1A0NE0KLT4gc3NoLWVkMjU1MTkgbjhDcFV3IHVz
 | 
					K2NJQWVndzYrSDAyK25NMklSVUI4S28KLT4gc3NoLWVkMjU1MTkgbjhDcFV3IFNE
 | 
				
			||||||
Q0FiOTBIYUY5SFBLK0Zia3YxaHd4dVN4bDhjbjZYaFVKNHp6VkFOMmMKeXAzcndh
 | 
					Q1NZbnpqUkdiaktnYkxZdzZrYUVqWDEvYnMvOTJqSUpybERTNk9uQ0kKYlMzZkVu
 | 
				
			||||||
M2hLWUFSNlJTUXFhNnlZZGZCYnBvM1AzMVg0QWFvK05rS3ZlOAotPiBzc2gtZWQy
 | 
					SXVtaWk2WEtDMEpwZFM3ZVIyWHQwUWNOZjVRS0I0ZjN5MklHYwotPiBzc2gtZWQy
 | 
				
			||||||
NTUxOSBqSThSQWcgS0NRY0pKaEd2UmVXcTU5bDFYSkx6cS9KNnVXbXc1ZVpxelIy
 | 
					NTUxOSBqSThSQWcgWTZIMCtNMCtzTFpROHpBMnA3b2s2UFE2dDZGbnlxU2VxMlkz
 | 
				
			||||||
U2E0T2VSRQo1cTZzQWk3cDRPSjVOdFQrOWNvWDVhZlE1VTRmRjBHZ0JjTVdheFdX
 | 
					aGJFUzV6awpKNDhobHQrTCs4cUVpNE5wblJMako3bU5tVldjVDBjVlJOOHhkUTNk
 | 
				
			||||||
bVB3Ci0+IHNzaC1lZDI1NTE5IGhNYTRudyBPUW11MkNuQUsyelNiejl1UEhvMFJT
 | 
					NFdrCi0+IHNzaC1lZDI1NTE5IFQrc2JHQSBTbVlBTXIzQ09SOHRJakZXK3NkT1Uy
 | 
				
			||||||
bUxmQU5MaW1Qcy9JeUZoVzdUSzBVCmVZWHoxTFVQWmJQbDlzYXZhVkxYRSszOGdm
 | 
					RFgrUTZncSsyK3p5WlVDSFNwM2lFClErRHk4Qmp2VlIvZW8rV2lNME53ZFlIUmVC
 | 
				
			||||||
MktPS3ZNV1BpZFJkM25wcGsKLT4gc3NoLWVkMjU1MTkgZXlxM2RnIDZLMzQxNFMr
 | 
					bXF5RlVvV2FUM3ZmeWpaQzgKLT4gc3NoLWVkMjU1MTkgaE1hNG53IDBINGhyMDBy
 | 
				
			||||||
azlybFZLK05xY21DU3BOZnduOWt4Z2lDNzl4KzVtYitrbUkKcGR1OWtkVTB1czdE
 | 
					bkp0RWpTU0F6Uk1kaXllRHBHbXF2QWUwNkN1U0tEWE53VGsKdi9QRlhwRCtyQkRq
 | 
				
			||||||
dWdhd0U3cC82Ry8zTStkQ256N3RMQlZCbjU5bWJVbwotPiBzc2gtZWQyNTUxOSA3
 | 
					cng1Wk1rZkx2NnJTMUxGajN3b2Z3SG0zd0ptcklCZwotPiBzc2gtZWQyNTUxOSBl
 | 
				
			||||||
V1E5UEEgb2IyVVNmM1AwNTVnZExDTEp1NWw4S0xWK0lnWG5DQ1dQTnh3RmNuZ2x5
 | 
					eXEzZGcgcnQ4WUFMcGRtL1BvYTkxWU12WTdkT1lLRmJlZXZ4cWtHNG54QVo0dDYw
 | 
				
			||||||
NApNaXhzL0wxUWtHNHpWSWplRS8wSzk0cEs4S21VUnp3azlRajJNdlJ6ZEprCi0+
 | 
					RQp2NkMwbTROZTBuRUVLNEs3L3BmOTZ2S3dDL0hUbm5OaHZXbjVCRG15bExnCi0+
 | 
				
			||||||
IHNzaC1lZDI1NTE5IGdTeFAwUSBLWXV1VW1Pb2w0ZkpOUlNEa3dLamFGSDFJMWRq
 | 
					IHNzaC1lZDI1NTE5IDdXUTlQQSBPL0t1ZWptTm5YQXIwc3ZNUGhkaVM5QU1DMkNL
 | 
				
			||||||
NzVMZDRXUWY0UmVuaUhjCkNlWFUvRHByUVBEenFXTXBMZ3k5d2l2L1BaUHprYVN5
 | 
					NU1WSFlTT05KOWR3dGhJCmdTTEIrNEZma3E0UzArMndqVEgzWnVLNzl0TjhsbG9P
 | 
				
			||||||
ZHZmdVAvQk1lY3cKLT4gc3NoLWVkMjU1MTkgVkZjdzVnIG1IUngvcVNSM2RrSDF0
 | 
					OE9aRVk1Ung1cEkKLT4gc3NoLWVkMjU1MTkgZ1N4UDBRIGJNazFtRThSVVVvb3dP
 | 
				
			||||||
dkZMSlAySmxWL3VqLzJYWWs3SUZTRWpvUkQ0R0EKalMzNW5rSXJES1M5Y2tVeDRW
 | 
					RHV5WGxCbktDK3c5aEhiYkphNU4zUnVNUVNNV2sKbWZJYkNSZFMvTDI1WVg5SnJV
 | 
				
			||||||
bFQ2eG9zeGxSZDBZMDV0TVV2SDVManI4QQotPiBzc2gtZWQyNTUxOSBoa2J0dmcg
 | 
					bUFSY2JsNDJBc253dlN5Y2Nqdm9TbU9IawotPiBzc2gtZWQyNTUxOSBWRmN3NWcg
 | 
				
			||||||
WmkxUSs4MGI4Y1BrZjdSSDRQMEtGbC9LNWlDdDBKbFI4NXdjN21BS2lIRQpUZVhL
 | 
					eEo0dmRNWVpuVGdxRHpXc09tUDZldFRKcTBIMVVWcXdmVFRhZnZmenBETQpJWHVp
 | 
				
			||||||
c0orRXNvbGFUbE1UZlBGc3h5N01Fekh2Q3B2WjI0WXpkRWpqM1hnCi0+IHNzaC1l
 | 
					NWJNRWhacHlMbHlQcjEzdEZWdUVpbGg0N2pqMjcvTk92UDJpNUlvCi0+IHNzaC1l
 | 
				
			||||||
ZDI1NTE5IGV0MnpwUSA0TWlIWW1oRzgrYzJUK29XbXVyd2JETHpLUFVLeG4rRUY1
 | 
					ZDI1NTE5IGhrYnR2ZyB0SFJGRE03T3lnTUJZakVCcnQxVklPNXhzak94eU5KUzNX
 | 
				
			||||||
bmV1bUZPaDBNCnI0cllLZmRFMEZDWTFRV2QxL25uV1RtOHBMZVhrOXFyR0NGbjk4
 | 
					L216SCtUWEVzCmRrS2Rlc1JiNEg1KzExaUsrNHJuSDlTcU5Oa0J4QVZKVmNBRGFP
 | 
				
			||||||
QWwvbDgKLT4gc3NoLWVkMjU1MTkgWmJMSldBIGNiK2hGRkhZRlU3SFpURWNLY3lL
 | 
					ZWlqUjAKLT4gc3NoLWVkMjU1MTkgZXQyenBRIEFhMFVxZ3RRbk4za2t5cWtwVjVi
 | 
				
			||||||
VisrSW01V1lXQU8yUGN5MENNaEZwVU0KbnNGd2Y4TDZKdmFIQ21NWlZZVGQ1ZEFw
 | 
					Qm9ucVdMekVsSHEwSWlML0JIdmQ2SFkKWW5mWnQvRWlaT3hJLzJyTE5RdTNUMWNM
 | 
				
			||||||
MyszQ0VLOWxiSkdrWFdGWUlkOAotPiBzc2gtZWQyNTUxOSBaTnFJb2cgZ2dnRHkr
 | 
					SDB4TjVKZCtDN0tCR1NhdnRqbwotPiBzc2gtZWQyNTUxOSBaYkxKV0EgV1loMWZx
 | 
				
			||||||
UEs5S3FJRkpBLzZLRyt6RmdBeUcvTjJGTmhoci8xNXord3F5OAplZXRUQTF5MUtT
 | 
					OHhKelNvNzErMDc4cUE5amgycTFTem5lVmlGYTk5bUM2T2dEUQpkMVQ0VS80Y3Jt
 | 
				
			||||||
RG1uVmZOOENzVVZqWUFsdDFXRm93dy9OYmtVSDZTUDV3Ci0+IHNzaC1lZDI1NTE5
 | 
					QTZUVnNZV0daczM0Titvc3Q1T2JiTVZYV2tXOW4xV0VRCi0+IHNzaC1lZDI1NTE5
 | 
				
			||||||
IHFManF5USA5SUF1MW85T2dZNXY2cFBwOC9Wb1R6MSs5VGVOOTExUnNaM3pwci9l
 | 
					IFpOcUlvZyAzMnZ2NjR1R2R2UlJNZjNvOU9RckR0MEtnbllyYVJPSUZtUDNWSU5k
 | 
				
			||||||
N2pRCk1tYWRnSlAwbUNiMWdmRU0wZk5VOHZmVU5uZDlRSlJJM1pHR3VxTTNHN0kK
 | 
					U3c4Ckgza2txalJhOW14c1dGZ0VTc3EzK2NpOUJaVWhqN2lMWU9HL3hMSWlJUVkK
 | 
				
			||||||
LT4gc3NoLWVkMjU1MTkgQmFRbFJnIExWTm0xU0djWW9XL3ova003ZVBMTTFIS1FR
 | 
					LT4gc3NoLWVkMjU1MTkgcUxqcXlRIHMxNStVTnY1TUZJaHlXQnNTSFhXditsWnVF
 | 
				
			||||||
S0xYckNMRFJhZGVXM1haeDAKeTVoSC92bnhRdG93RnV4akxVRHRuVEc4Y2N3cmta
 | 
					Y2ZKRWZ5UXVPZUVKY2VjakEKV1N3ODVFYXROTzFReWE5Y1A5MkpXUjJVc00wVVd3
 | 
				
			||||||
UFJrTHZtU3A5RjFGdwotPiBzc2gtZWQyNTUxOSBzK3FSZmcgaGJNcUc4bFZHK3Bl
 | 
					ZUpzTC9rRGdOWUpxWQotPiBzc2gtZWQyNTUxOSBCYVFsUmcganpkWlpaWlRVQ3Vp
 | 
				
			||||||
cnVZV0dPWkFOTndSMU1zNlAweXZsUkZtSk1XQUoxdwpWak02bTJVWjNNMXZoenJq
 | 
					Y2hvbkpld2kzdzVtdERHajBNUTEyM0NOWlp0WkxtRQp1MEJUKzFUSW9tWjluVU9Y
 | 
				
			||||||
RFN0UzRvdk0xT2VzazFKcysvYk9HejYrLzRvCi0+IHNzaC1lZDI1NTE5IDYySmNj
 | 
					clBzNFpzdU83MXdGN2dJSGducnplbEd4M1JNCi0+IHNzaC1lZDI1NTE5IHMrcVJm
 | 
				
			||||||
QSA4KzVSYkxEUW5jaithdUNvSVpjdDJGZm90Q1IyWnBtbTZnTWNsY01pUkQwCkRa
 | 
					ZyBSRW1pZWFhQkpQRTFYTG9IZnVmWmx6S2pNUll4MGhtRFd1Y0ZhS25JNFZVCjhU
 | 
				
			||||||
NHRHenFIS050dXVWcWdzaElkemU4enEyUmkwU0tSMENJWHFYMlg0L0UKLT4gc3No
 | 
					UDhoOTlTUEtqbytZMjZ2NlozcnZTNXVNcVA3cU1TRmtsL1g4bEhKUzgKLT4gc3No
 | 
				
			||||||
LWVkMjU1MTkgL2h4L2RBIDVhY2hCcitGVjFueUsrTHpNNmEzeDFTUFdYeGZ2d1ox
 | 
					LWVkMjU1MTkgNjJKY2NBIElSSXZjc3J5cWNwOHFNV281YzBrVzc2TlVwMnRwb0NJ
 | 
				
			||||||
czE2TUFIS0NzVFkKU0lFcGJiQmQrMU1iYlhtNWVFZ2VZM09jOTBwUWRDdlNOKzc4
 | 
					dEdST0s4MEhmQnMKaTNEdkFjRktCZHNCY3FsWE5UbFo1R3lXSlI2NE5MR25neWJ4
 | 
				
			||||||
VHVEeC8wdwotPiBzc2gtZWQyNTUxOSBXekxHSEEgNlhBMHVJTTFuZHgxN3RqYkV0
 | 
					NTlsSllxWQotPiBzc2gtZWQyNTUxOSAvaHgvZEEgOExaRjJiNTJkUGFxZllSK1Uz
 | 
				
			||||||
SzB2elhYcm9BWmszNjRIUzhCbEpiWktFawpka1ZpK0pCMnAxTUE4UzhHeXhxcjRi
 | 
					eWxQTmtxOVFPZkVFb2w2Z0tmZVpwTndDWQpuRFlqZWdaQjZaT1BZSmllVzB5NWhY
 | 
				
			||||||
djNRdUxVeW90SUFENjh0UVJyeDBnCi0+IHNzaC1lZDI1NTE5IEhKL0o3QSBhNno1
 | 
					MmhHaWtZOXFERzhSRWRXWk5TR1RRCi0+IHNzaC1lZDI1NTE5IFd6TEdIQSBtZW04
 | 
				
			||||||
QmZWMFJ1OEdmZVRzd05qWktUM3BXaWtvV3FpckllV29hM0VWalJZClN0NVFMTDlu
 | 
					eWlNWU9JOXYvcVlsb1JXM2JKRlREeXJXNHd6MlkvazZrSzdscG5BCnZzWUFwb3lK
 | 
				
			||||||
Z01TaVp3ZDRURGRqSk5FazBBVXJuTzlzdFI4bWE3cUowYmsKLT4gc3NoLWVkMjU1
 | 
					dUhkcDZNakFPN0RMRG5LQzdqU1UzNlJ6eGRGSGlhYUx0YXMKLT4gc3NoLWVkMjU1
 | 
				
			||||||
MTkgT0VxTXNnIHBBaHl2U2hKMVJpc1FDdDRMVnRacHZ6SUh4TGwxYm9Sejh5S3FL
 | 
					MTkgSEovSjdBIDBaNzZGVkdaVWlWNk4yVW5UdnFCZ2xWUEtIc2QzQmJTMnlINVF1
 | 
				
			||||||
RVBheUUKQUNRZDZtN1dBcUI1TFVpenI3R0M5TC9zY3B4OEFBMXhLQjMyYmVseWEv
 | 
					V093UmsKcXNhSnlnWHQrRzVSU296NENDN29aMUN5VlRIcittdGNySGhvMHZlT0xl
 | 
				
			||||||
bwotPiBzc2gtZWQyNTUxOSAvRUpYdmcgZ0M3ZVdBZVlOOFNEbmFwYVcvMGtETTdy
 | 
					NAotPiBzc2gtZWQyNTUxOSBPRXFNc2cgNUFSc045eUVqQWI3MXB4Tkd2RndDS2Na
 | 
				
			||||||
QXZmSy9qZFVKQkROdFRVak4xSQpRREliRFFjMTl6ak45ckdEdnpReEJPS3RSbXB4
 | 
					VGJrblFLaENPVlZucFdGRGFDTQp6dlRHTnRLSFkxb1RFdmxGS09Jenh2Q25VZ2ha
 | 
				
			||||||
R0JxdUUxZ2wxSkUwQk5NCi0+IFgyNTUxOSBqYW5sdkVBcUJiUHltVy9mT0hYbzJ4
 | 
					QWQ4YUNjdVNJbW8vVGVrCi0+IHNzaC1lZDI1NTE5IC9FSlh2ZyBGM2lrUG1DWUx3
 | 
				
			||||||
bW11dmwvUGFlVkV1WlpFQ2Y1UHpNCm1OQ09yOVRSNnIxeXY0N2ltOEt3OVVYRTM2
 | 
					YndZWWdobVo3TjZHTDNabmdsa3ZHcndwUXVZSVg5T0VZCjNYdlFYSHBsWjBTWXlS
 | 
				
			||||||
bHV4dkJOaUFrUFhydmdTSFEKLT4gZ296LWdyZWFzZSBbcyA6IUVJKiBSYi04ClB1
 | 
					V0lSZkpwVE05eU1LcFBEbWdXWEZ0U0tSTkthQnMKLT4gWDI1NTE5IDF5SmczUWpo
 | 
				
			||||||
QjgzNTBMM3o1cER5RWhQa1F4YmFEOXNzQUZyOTU2SXRzYmtTODdKd1djZ3NUagot
 | 
					bkdmWS9SamxtTTF1eVJnc1QxUGJiUjQwR1VSTmdxMEtqQzAKeTF0NWp6dG1CWGNy
 | 
				
			||||||
LS0gRGN4Y2ZyV1g4YnFaM0JTazNZSFNOQVlzQWViU1R1ZUVpdjB0ZmNUeThvRQrn
 | 
					VVVXVGFLV3dkWWo2YTVkZmtXcHRZai9FSDVBSmJhbwotPiAmJC1ncmVhc2UgaWU3
 | 
				
			||||||
KRRdOMs11eAfh0452NX5E0nDyNXe/Bn3kStg7jBDKRo+JxFw4xTwgT9XeyMwzonH
 | 
					YGkpVSBNV0ZfIDM1fltQdzBcCmZYRXB1NEVMNkVqWVF3Ci0tLSB2RVRFYmVGVklB
 | 
				
			||||||
bci/yoXC0hSJNiGvMCu9qbnEZakb7nzQfn8KJY9+4ptjRI5zxnGRWUEDrHjNXA22
 | 
					bGFiUTBKYlMrRitvN2NnUkhScTMvWml6ZzRKU3ZIeEtvChoKB2c5roTC97pdDOi6
 | 
				
			||||||
UGpm6PGdBRpktySXA4wFTJL1nWxtIIRvZ/j3Njc3O78ggjhW3QtBc0VJ
 | 
					aPFIaTyOu9NZ4ESwwRjpEgB0D6GP2r7YR3CnxVyXa4sCFUnTF8dLUkABFnSeNeQZ
 | 
				
			||||||
 | 
					M64tM6J+tZAyJa9IKaTgSqvQaGYHHYinygNvf6BShCK4nPUJu0cV6gFtqFle0MWA
 | 
				
			||||||
 | 
					Rez5eRMFH/M2aubhwBeDyHG4WRelkt7oMVXyY6U=
 | 
				
			||||||
-----END AGE ENCRYPTED FILE-----
 | 
					-----END AGE ENCRYPTED FILE-----
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user