From 9e6d2546a38a22335718174ccf96db56604eecf7 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 26 Jul 2023 02:12:11 +1000 Subject: [PATCH 01/38] Initial commit with minor edits --- examples/GPU/test.jl | 16 ++++++++++++++++ examples/Project.toml | 2 ++ src/Base/lbdn_params.jl | 6 +++--- src/ParameterTypes/dense_lbdn.jl | 8 ++++---- src/ParameterTypes/lipschitz_ren.jl | 2 +- src/Wrappers/LBDN/diff_lbdn.jl | 2 +- src/Wrappers/LBDN/lbdn.jl | 2 +- 7 files changed, 28 insertions(+), 10 deletions(-) create mode 100644 examples/GPU/test.jl diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl new file mode 100644 index 00000000..ef4c2c81 --- /dev/null +++ b/examples/GPU/test.jl @@ -0,0 +1,16 @@ +cd(@__DIR__) +using Pkg +Pkg.activate("../") + +using CUDA +using Flux +using RobustNeuralNetworks + +# Standard with Flux +m = Chain(Flux.Dense(10 => 5, Flux.relu), Flux.Dense(5 => 4, Flux.relu)) |> gpu +x = rand(10) |> gpu +m(x) + +# Test with LBDN +lbdn = DiffLBDN(DenseLBDNParams{Float32}(10, [5], 4)) |> gpu +lbdn(x) \ No newline at end of file diff --git a/examples/Project.toml b/examples/Project.toml index 06a45195..ca362917 100644 --- a/examples/Project.toml +++ b/examples/Project.toml @@ -1,6 +1,7 @@ [deps] BSON = "fbb218c0-5317-5bc6-957e-2ee96dd4b1f0" BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" +CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" CairoMakie = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0" ControlSystemsBase = "aaaaaaaa-a6ca-5380-bf3e-84a91bcd477e" Convex = "f65535da-76fb-5f13-bab9-19810c17039a" @@ -16,3 +17,4 @@ Revise = "295af30f-e4ad-537b-8983-00126c2a3abe" RobustNeuralNetworks = "a1f18e6b-8af1-433f-a85d-2e1ee636a2b8" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" +cuDNN = "02a925ec-e4fe-4b08-9a7e-0d78e3d38ccd" diff --git a/src/Base/lbdn_params.jl b/src/Base/lbdn_params.jl index d82cb59c..7b478d2f 100644 --- a/src/Base/lbdn_params.jl +++ b/src/Base/lbdn_params.jl @@ -22,7 +22,7 @@ mutable struct DirectLBDNParams{T, N, M} α ::NTuple{N, AbstractVector{T}} # Polar parameterisation d ::NTuple{M, AbstractVector{T}} b ::NTuple{N, AbstractVector{T}} - log_γ::Vector{T} # Store ln(γ) so that √exp(logγ) is positive + log_γ::AbstractVector{T} # Store ln(γ) so that √exp(logγ) is positive learn_γ::Bool end @@ -36,7 +36,7 @@ This is typically used by a higher-level constructor to define an LBDN model, wh # Arguments - `nu::Int`: Number of inputs. -- `nh::Vector{Int}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). +- `nh::AbstractVector{Int}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). - `ny::Int`: Number of outputs. - `γ::Number=T(1)`: Lipschitz upper bound. @@ -55,7 +55,7 @@ See [Wang et al. (2023)](https://proceedings.mlr.press/v202/wang23v.html) for pa See also [`DenseLBDNParams`](@ref). """ function DirectLBDNParams{T}( - nu::Int, nh::Vector{Int}, ny::Int, γ::Number = T(1); + nu::Int, nh::AbstractVector{Int}, ny::Int, γ::Number = T(1); initW::Function = Flux.glorot_normal, initb::Function = Flux.glorot_normal, learn_γ::Bool = false, diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index 21af114b..f0e4df93 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -3,7 +3,7 @@ mutable struct DenseLBDNParams{T} <: AbstractLBDNParams{T} nl::Function # Sector-bounded nonlinearity nu::Int - nh::Vector{Int} + nh::AbstractVector{Int} ny::Int direct::DirectLBDNParams{T} end @@ -17,7 +17,7 @@ This is the equivalent of a multi-layer perceptron (eg: `Flux.Dense`) with a gua # Arguments - `nu::Int`: Number of inputs. -- `nh::Vector{Int}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). +- `nh::AbstractVector{Int}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). - `ny::Int`: Number of outputs. - `γ::Number=T(1)`: Lipschitz upper bound. @@ -30,7 +30,7 @@ See [`DirectLBDNParams`](@ref) for documentation of keyword arguments `initW`, ` """ function DenseLBDNParams{T}( - nu::Int, nh::Vector{Int}, ny::Int, γ::Number = T(1); + nu::Int, nh::AbstractVector{Int}, ny::Int, γ::Number = T(1); nl::Function = Flux.relu, initW::Function = Flux.glorot_normal, initb::Function = Flux.glorot_normal, @@ -98,7 +98,7 @@ end function get_AB( XY::NTuple{N, AbstractMatrix{T}}, α ::NTuple{N, AbstractVector{T}}, - n ::Vector{Int} + n ::AbstractVector{Int} ) where {T, N} # Use Zygote buffer to avoid problems with array mutation diff --git a/src/ParameterTypes/lipschitz_ren.jl b/src/ParameterTypes/lipschitz_ren.jl index 47f95bef..507a330b 100644 --- a/src/ParameterTypes/lipschitz_ren.jl +++ b/src/ParameterTypes/lipschitz_ren.jl @@ -8,7 +8,7 @@ mutable struct LipschitzRENParams{T} <: AbstractRENParams{T} ny::Int direct::DirectRENParams{T} αbar::T - γ::Vector{T} + γ::AbstractVector{T} learn_γ::Bool end diff --git a/src/Wrappers/LBDN/diff_lbdn.jl b/src/Wrappers/LBDN/diff_lbdn.jl index 257da4c6..a752ac15 100644 --- a/src/Wrappers/LBDN/diff_lbdn.jl +++ b/src/Wrappers/LBDN/diff_lbdn.jl @@ -3,7 +3,7 @@ mutable struct DiffLBDN{T} <: AbstractLBDN{T} nl::Function nu::Int - nh::Vector{Int} + nh::AbstractVector{Int} ny::Int params::AbstractLBDNParams{T} end diff --git a/src/Wrappers/LBDN/lbdn.jl b/src/Wrappers/LBDN/lbdn.jl index 91222d28..c55811ab 100644 --- a/src/Wrappers/LBDN/lbdn.jl +++ b/src/Wrappers/LBDN/lbdn.jl @@ -3,7 +3,7 @@ mutable struct LBDN{T} <: AbstractLBDN{T} nl::Function nu::Int - nh::Vector{Int} + nh::AbstractVector{Int} ny::Int explicit::ExplicitLBDNParams{T} end From d48cbbc2105d64e170096e9c5e292de99fe162e6 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 4 Aug 2023 02:18:25 +1000 Subject: [PATCH 02/38] Left a note --- examples/GPU/test.jl | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index ef4c2c81..8959334c 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -6,11 +6,19 @@ using CUDA using Flux using RobustNeuralNetworks +T = Float32 +device = gpu + # Standard with Flux -m = Chain(Flux.Dense(10 => 5, Flux.relu), Flux.Dense(5 => 4, Flux.relu)) |> gpu -x = rand(10) |> gpu -m(x) +m = Chain(Flux.Dense(10 => 5, Flux.relu), Flux.Dense(5 => 4, Flux.relu)) |> device +u = rand(T, 10) |> device +m(u) # Test with LBDN -lbdn = DiffLBDN(DenseLBDNParams{Float32}(10, [5], 4)) |> gpu -lbdn(x) \ No newline at end of file +nu, nx, nv, ny = 4, 5, 10, 2 +ren_ps = ContractingRENParams{T}(nu, nx, nv, ny) +model = DiffREN(ren_ps) +x = init_states(model) |> device +ren = model |> gpu + +# TESTED: removed all gpu stuff from repo, and this sent elements to the GPU. Errors calling the model though... will need to figure that one out later. \ No newline at end of file From ddd645dbde6230872ac36b48dfa5d00028e29ba2 Mon Sep 17 00:00:00 2001 From: nicBarbara Date: Fri, 4 Aug 2023 10:00:51 -0400 Subject: [PATCH 03/38] Bugfixes in test script --- examples/GPU/test.jl | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index 8959334c..5369c556 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -6,19 +6,31 @@ using CUDA using Flux using RobustNeuralNetworks -T = Float32 device = gpu +T = Float32 -# Standard with Flux -m = Chain(Flux.Dense(10 => 5, Flux.relu), Flux.Dense(5 => 4, Flux.relu)) |> device -u = rand(T, 10) |> device -m(u) - -# Test with LBDN +# Model sizes nu, nx, nv, ny = 4, 5, 10, 2 -ren_ps = ContractingRENParams{T}(nu, nx, nv, ny) -model = DiffREN(ren_ps) -x = init_states(model) |> device -ren = model |> gpu -# TESTED: removed all gpu stuff from repo, and this sent elements to the GPU. Errors calling the model though... will need to figure that one out later. \ No newline at end of file +# Build models +dense = Chain( + Dense(nu => nv, relu), + Dense(nv => ny, relu) +) |> device + +ren_ps = ContractingRENParams{T}(nu, nx, nv, ny; nl=relu) +ren = DiffREN(ren_ps) |> device + +# Data +batches = 10 +u = rand(T, nu, batches) |> device +x = init_states(ren, batches) |> device + +# Call models +println("Calling dense...") +yd = dense(u) + +println("Calling REN...") +x1, yr = ren(x, u) + +println("Done!") \ No newline at end of file From 68bb696def7a4dacef7f94373a0c17e411f51505 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Sat, 5 Aug 2023 02:16:33 +1000 Subject: [PATCH 04/38] Generalised functions for CuArrays, added test script --- examples/GPU/test.jl | 32 +++++++++++-------- examples/GPU/test_speed.jl | 56 ++++++++++++++++++++++++++++++++++ src/Base/acyclic_ren_solver.jl | 9 +++--- src/Wrappers/LBDN/lbdn.jl | 2 ++ src/Wrappers/REN/ren.jl | 2 ++ src/Wrappers/REN/wrap_ren.jl | 3 ++ 6 files changed, 86 insertions(+), 18 deletions(-) create mode 100644 examples/GPU/test_speed.jl diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index 5369c556..dfebc32d 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -2,6 +2,7 @@ cd(@__DIR__) using Pkg Pkg.activate("../") +using BenchmarkTools using CUDA using Flux using RobustNeuralNetworks @@ -12,25 +13,30 @@ T = Float32 # Model sizes nu, nx, nv, ny = 4, 5, 10, 2 -# Build models -dense = Chain( - Dense(nu => nv, relu), - Dense(nv => ny, relu) -) |> device - +# Build model ren_ps = ContractingRENParams{T}(nu, nx, nv, ny; nl=relu) ren = DiffREN(ren_ps) |> device # Data -batches = 10 +batches = 1000000 u = rand(T, nu, batches) |> device x = init_states(ren, batches) |> device -# Call models -println("Calling dense...") -yd = dense(u) +function to_dev(ren, x, u, device) + r = ren |> device + x1 = x |> device + u1 = u |> device + return r, x1, u1 +end + +# Time on the CPU +println("Calling REN on CPU with $batches batches") +ren, x, u = to_dev(ren, x, u, cpu) +@btime x1, yr = ren(x, u); -println("Calling REN...") -x1, yr = ren(x, u) +# Time on GPU +println("Calling REN on GPU with $batches batches") +ren, x, u = to_dev(ren, x, u, gpu) +@btime x1, yr = ren(x, u); -println("Done!") \ No newline at end of file +println() \ No newline at end of file diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl new file mode 100644 index 00000000..66ef03d6 --- /dev/null +++ b/examples/GPU/test_speed.jl @@ -0,0 +1,56 @@ +# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE +cd(@__DIR__) +using Pkg +Pkg.activate("../") + +using BenchmarkTools +using Flux +using Random +using RobustNeuralNetworks + +rng = Xoshiro(42) + +function test_diffren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, + nl=relu, batches=100, tmax=5, isdiff=true, T=Float32) + + # Build the ren + model = construct{T}(nu, nx, nv, ny, args...; nl, rng) + is_diff && (model = DiffREN(model)) + + # Create dummy data + us = [randn(rng, T, nu, batches) for _ in 1:tmax] |> device + ys = [randn(rng, T, ny, batches) for _ in 1:tmax] |> device + x0 = init_states(model, batches) |> device + + # Dummy loss function + function loss(model, x, us, ys) + J = 0 + for t in 1:tmax + x, y = model(x, us[t]) + J += Flux.mse(y, ys[t]) + end + return J + end + + # Run it once to check it works + l = loss(model, x0, us, ys) + g = gradient(loss, model, x0, us, ys) + + # Time it + print("Forwards: ") + @btime $loss($model, $x0, $us, $ys) + print("Reverse: ") + @btime $gradient($loss, $model, $x0, $us, $ys) + + return l, g +end + +l, g = test_diffren_speed( + cpu, + ContractingRENParams; + batches=100, + tmax=5, +) +println() + +# TODO: Write function for non-diff REN too! \ No newline at end of file diff --git a/src/Base/acyclic_ren_solver.jl b/src/Base/acyclic_ren_solver.jl index 79f2c2dc..b81f5611 100644 --- a/src/Base/acyclic_ren_solver.jl +++ b/src/Base/acyclic_ren_solver.jl @@ -5,7 +5,7 @@ Evaluate and solve lower-triangular equilibirum layer. """ -function tril_eq_layer(σ::F, D11::Matrix, b::VecOrMat) where F +function tril_eq_layer(σ::F, D11, b) where F # Solve the equilibirum layer w_eq = solve_tril_layer(σ, D11, b) @@ -23,7 +23,7 @@ end Solves w = σ.(D₁₁*w .+ b) for lower-triangular D₁₁, where σ is an activation function with monotone slope restriction (eg: relu, tanh). """ -function solve_tril_layer(σ::F, D11::Matrix, b::VecOrMat) where F +function solve_tril_layer(σ::F, D11, b) where F z_eq = similar(b) Di_zi = similar(z_eq, 1, size(b,2)) for i in axes(b,1) @@ -43,12 +43,11 @@ end Dummy function to force auto-diff engines to use the custom backwards pass. """ -function tril_layer_back(σ::F, D11::Matrix, v::VecOrMat{T}, w_eq::VecOrMat{T}) where {F,T} +function tril_layer_back(σ::F, D11, v, w_eq::AbstractVecOrMat{T}) where {F,T} return w_eq end -function rrule(::typeof(tril_layer_back), - σ::F, D11::Matrix, v::VecOrMat{T}, w_eq::VecOrMat{T}) where {F,T} +function rrule(::typeof(tril_layer_back), σ::F, D11, v, w_eq::AbstractVecOrMat{T}) where {F,T} # Forwards pass y = tril_layer_back(σ, D11, v, w_eq) diff --git a/src/Wrappers/LBDN/lbdn.jl b/src/Wrappers/LBDN/lbdn.jl index 5d084e39..02b6080b 100644 --- a/src/Wrappers/LBDN/lbdn.jl +++ b/src/Wrappers/LBDN/lbdn.jl @@ -22,6 +22,8 @@ function LBDN(ps::AbstractLBDNParams{T}) where T return LBDN{T}(ps.nl, ps.nu, ps.nh, ps.ny, explicit) end +@functor LBDN ( ) # No trainable params + """ abstract type AbstractLBDN{T} end diff --git a/src/Wrappers/REN/ren.jl b/src/Wrappers/REN/ren.jl index 4ace4dc9..d768dbaa 100644 --- a/src/Wrappers/REN/ren.jl +++ b/src/Wrappers/REN/ren.jl @@ -23,6 +23,8 @@ function REN(ps::AbstractRENParams{T}) where T return REN{T}(ps.nl, ps.nu, ps.nx, ps.nv, ps.ny, explicit) end +@functor REN ( ) # No trainable params + """ abstract type AbstractREN end diff --git a/src/Wrappers/REN/wrap_ren.jl b/src/Wrappers/REN/wrap_ren.jl index 646c650c..84dcfe03 100644 --- a/src/Wrappers/REN/wrap_ren.jl +++ b/src/Wrappers/REN/wrap_ren.jl @@ -13,6 +13,8 @@ end """ WrapREN(ps::AbstractRENParams{T}) where T +[NOTE:] THIS IS A LEGACY WRAPPER AND WILL BE REMOVED IN A FUTURE RELEASE. + Construct REN wrapper from its direct parameterisation. `WrapREN` is an alternative to [`REN`](@ref) that stores the [`AbstractRENParams`](@ref) and [`ExplicitRENParams`](@ref) within the same object. This means that a new `REN` object does not have to be created each time the parameters are updated. Explicit REN parameters must be updated by the user if the direct parameters have changed. @@ -62,6 +64,7 @@ println(round(ren.explicit.B2[10];digits=4)) See also [`AbstractREN`](@ref), [`REN`](@ref), and [`DiffREN`](@ref). """ function WrapREN(ps::AbstractRENParams{T}) where T + @warn "WrapREN is deprecated and will be removed in a future release." explicit = direct_to_explicit(ps) return WrapREN{T}(ps.nl, ps.nu, ps.nx, ps.nv, ps.ny, explicit, ps) end From 0627e103e8e79c81f7baf2cae6ce4a94cf885110 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Sat, 5 Aug 2023 08:31:17 +1000 Subject: [PATCH 05/38] Added GPU support for non-trainable structs --- examples/GPU/test.jl | 7 +++++-- src/Base/lbdn_params.jl | 4 ++++ src/Base/ren_params.jl | 4 ++++ src/Wrappers/LBDN/lbdn.jl | 4 +++- src/Wrappers/REN/ren.jl | 4 +++- test/Wrappers/diff_ren.jl | 2 +- 6 files changed, 20 insertions(+), 5 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index dfebc32d..43224ab8 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -14,8 +14,11 @@ T = Float32 nu, nx, nv, ny = 4, 5, 10, 2 # Build model -ren_ps = ContractingRENParams{T}(nu, nx, nv, ny; nl=relu) -ren = DiffREN(ren_ps) |> device +ren_ps = LipschitzRENParams{T}(nu, nx, nv, ny, 1; nl=relu) +ren = REN(ren_ps) |> device +# ren = DiffREN(ren_ps) #|> device + +# TODO: If we use DiffREN, construction of REN is slow and better suited to CPU. Think of a good way around this. It also means having model = REN(ren_ps) |> gpu in the loss function. Not ideal... # Data batches = 1000000 diff --git a/src/Base/lbdn_params.jl b/src/Base/lbdn_params.jl index 88be61d1..bc6025c5 100644 --- a/src/Base/lbdn_params.jl +++ b/src/Base/lbdn_params.jl @@ -17,6 +17,10 @@ mutable struct ExplicitLBDNParams{T, N, M} sqrtγ::T end +# No trainable params +@functor ExplicitLBDNParams +trainable(m::ExplicitLBDNParams) = (; ) + mutable struct DirectLBDNParams{T, N, M} XY::NTuple{N, AbstractMatrix{T}} # [X; Y] in the paper α ::NTuple{N, AbstractVector{T}} # Polar parameterisation diff --git a/src/Base/ren_params.jl b/src/Base/ren_params.jl index e68f6f8d..a6a73703 100644 --- a/src/Base/ren_params.jl +++ b/src/Base/ren_params.jl @@ -45,6 +45,10 @@ mutable struct ExplicitRENParams{T} by ::AbstractVector{T} end +# No trainable params +@functor ExplicitRENParams +trainable(m::ExplicitRENParams) = (; ) + mutable struct DirectRENParams{T} X ::AbstractMatrix{T} Y1 ::AbstractMatrix{T} diff --git a/src/Wrappers/LBDN/lbdn.jl b/src/Wrappers/LBDN/lbdn.jl index 02b6080b..cca247fb 100644 --- a/src/Wrappers/LBDN/lbdn.jl +++ b/src/Wrappers/LBDN/lbdn.jl @@ -22,7 +22,9 @@ function LBDN(ps::AbstractLBDNParams{T}) where T return LBDN{T}(ps.nl, ps.nu, ps.nh, ps.ny, explicit) end -@functor LBDN ( ) # No trainable params +# No trainable params +@functor LBDN +trainable(m::LBDN) = (; ) """ abstract type AbstractLBDN{T} end diff --git a/src/Wrappers/REN/ren.jl b/src/Wrappers/REN/ren.jl index d768dbaa..1167af13 100644 --- a/src/Wrappers/REN/ren.jl +++ b/src/Wrappers/REN/ren.jl @@ -23,7 +23,9 @@ function REN(ps::AbstractRENParams{T}) where T return REN{T}(ps.nl, ps.nu, ps.nx, ps.nv, ps.ny, explicit) end -@functor REN ( ) # No trainable params +# No trainable params +@functor REN +trainable(m::REN) = (; ) """ abstract type AbstractREN end diff --git a/test/Wrappers/diff_ren.jl b/test/Wrappers/diff_ren.jl index d455197a..d64d3279 100644 --- a/test/Wrappers/diff_ren.jl +++ b/test/Wrappers/diff_ren.jl @@ -13,7 +13,7 @@ Test that backpropagation runs and parameters change batches = 10 nu, nx, nv, ny = 4, 5, 10, 2 γ = 10 -ren_ps = LipschitzRENParams{Float64}(nu, nx, nv, ny, γ; rng) +ren_ps = LipschitzRENParams{Float64}(nu, nx, nv, ny, γ; rng, learn_γ=true) model = DiffREN(ren_ps) # Dummy data From 664fb0b36388182adb44b17b55bd555b3e37c513 Mon Sep 17 00:00:00 2001 From: nicBarbara Date: Tue, 8 Aug 2023 14:00:29 -0400 Subject: [PATCH 06/38] Switched to proper (hopefully?) usage of @functor --- src/ParameterTypes/contracting_ren.jl | 3 ++- src/ParameterTypes/dense_lbdn.jl | 3 ++- src/ParameterTypes/general_ren.jl | 3 ++- src/ParameterTypes/passive_ren.jl | 3 ++- src/Wrappers/LBDN/diff_lbdn.jl | 3 ++- src/Wrappers/REN/diff_ren.jl | 3 ++- src/Wrappers/REN/wrap_ren.jl | 3 ++- 7 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/ParameterTypes/contracting_ren.jl b/src/ParameterTypes/contracting_ren.jl index f83e1e94..59c3b465 100644 --- a/src/ParameterTypes/contracting_ren.jl +++ b/src/ParameterTypes/contracting_ren.jl @@ -146,7 +146,8 @@ function ContractingRENParams( end -@functor ContractingRENParams (direct, ) +@functor ContractingRENParams +trainable(m::ContractingRENParams) = (direct = m.direct, ) function direct_to_explicit(ps::ContractingRENParams, return_h::Bool=false) diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index 37610256..c9a906e2 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -41,7 +41,8 @@ function DenseLBDNParams{T}( return DenseLBDNParams{T}(nl, nu, nh, ny, direct) end -@functor DenseLBDNParams (direct, ) +@functor DenseLBDNParams +trainable(m::DenseLBDNParams) = (direct = m.direct, ) function direct_to_explicit(ps::DenseLBDNParams{T}) where T diff --git a/src/ParameterTypes/general_ren.jl b/src/ParameterTypes/general_ren.jl index 871d46bb..9a376553 100644 --- a/src/ParameterTypes/general_ren.jl +++ b/src/ParameterTypes/general_ren.jl @@ -82,7 +82,8 @@ function GeneralRENParams{T}( end -@functor GeneralRENParams (direct, ) +@functor GeneralRENParams +trainable(m::GeneralRENParams) = (direct = m.direct, ) function direct_to_explicit(ps::GeneralRENParams{T}, return_h=false) where T diff --git a/src/ParameterTypes/passive_ren.jl b/src/ParameterTypes/passive_ren.jl index 6d4bdded..da937000 100644 --- a/src/ParameterTypes/passive_ren.jl +++ b/src/ParameterTypes/passive_ren.jl @@ -64,7 +64,8 @@ function PassiveRENParams{T}( end -@functor PassiveRENParams (direct, ) +@functor PassiveRENParams +trainable(m::PassiveRENParams) = (direct = m.direct, ) function direct_to_explicit(ps::PassiveRENParams{T}, return_h=false) where T diff --git a/src/Wrappers/LBDN/diff_lbdn.jl b/src/Wrappers/LBDN/diff_lbdn.jl index 5bad8315..d8da1599 100644 --- a/src/Wrappers/LBDN/diff_lbdn.jl +++ b/src/Wrappers/LBDN/diff_lbdn.jl @@ -42,7 +42,8 @@ function (m::DiffLBDN)(u::AbstractVecOrMat) return m(u, explicit) end -@functor DiffLBDN (params, ) +@functor DiffLBDN +trainable(m::DiffLBDN) = (params = m.params, ) function set_output_zero!(m::DiffLBDN) set_output_zero!(m.params) diff --git a/src/Wrappers/REN/diff_ren.jl b/src/Wrappers/REN/diff_ren.jl index 752a2eec..bca57228 100644 --- a/src/Wrappers/REN/diff_ren.jl +++ b/src/Wrappers/REN/diff_ren.jl @@ -38,7 +38,8 @@ function DiffREN(ps::AbstractRENParams{T}) where T return DiffREN{T}(ps.nl, ps.nu, ps.nx, ps.nv, ps.ny, ps) end -@functor DiffREN (params, ) +@functor DiffREN +trainable(m::DiffREN) = (params = m.params, ) function (m::DiffREN)(xt::AbstractVecOrMat, ut::AbstractVecOrMat) explicit = direct_to_explicit(m.params) diff --git a/src/Wrappers/REN/wrap_ren.jl b/src/Wrappers/REN/wrap_ren.jl index 84dcfe03..51a1d679 100644 --- a/src/Wrappers/REN/wrap_ren.jl +++ b/src/Wrappers/REN/wrap_ren.jl @@ -79,4 +79,5 @@ function update_explicit!(m::WrapREN) return nothing end -@functor WrapREN (params, ) +@functor WrapREN +trainable(m::WrapREN) = (params = m.params) From 83ecbf60f3aff2f1df7b9a00fce01bb95093a712 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 14:22:21 +1000 Subject: [PATCH 07/38] Removed scalar indexing from REN construction to avoid GPU warnings --- examples/GPU/test.jl | 13 +++++++------ src/ParameterTypes/contracting_ren.jl | 2 +- src/ParameterTypes/general_ren.jl | 2 +- src/ParameterTypes/lipschitz_ren.jl | 18 +++++++++--------- src/ParameterTypes/passive_ren.jl | 2 +- src/ParameterTypes/utils.jl | 3 +-- 6 files changed, 20 insertions(+), 20 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index 43224ab8..6d86ba49 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -10,18 +10,19 @@ using RobustNeuralNetworks device = gpu T = Float32 +# Note: construction of REN is probably best suited to the CPU rather than GPU? +# This makes things tricky with DiffREN. Would suggest REN is always best! + # Model sizes nu, nx, nv, ny = 4, 5, 10, 2 # Build model ren_ps = LipschitzRENParams{T}(nu, nx, nv, ny, 1; nl=relu) -ren = REN(ren_ps) |> device -# ren = DiffREN(ren_ps) #|> device - -# TODO: If we use DiffREN, construction of REN is slow and better suited to CPU. Think of a good way around this. It also means having model = REN(ren_ps) |> gpu in the loss function. Not ideal... +# ren = REN(ren_ps) +ren = DiffREN(ren_ps) # Data -batches = 1000000 +batches = 10000 u = rand(T, nu, batches) |> device x = init_states(ren, batches) |> device @@ -42,4 +43,4 @@ println("Calling REN on GPU with $batches batches") ren, x, u = to_dev(ren, x, u, gpu) @btime x1, yr = ren(x, u); -println() \ No newline at end of file +println() diff --git a/src/ParameterTypes/contracting_ren.jl b/src/ParameterTypes/contracting_ren.jl index f83e1e94..7acf2291 100644 --- a/src/ParameterTypes/contracting_ren.jl +++ b/src/ParameterTypes/contracting_ren.jl @@ -151,7 +151,7 @@ end function direct_to_explicit(ps::ContractingRENParams, return_h::Bool=false) ϵ = ps.direct.ϵ - ρ = ps.direct.ρ[1] + ρ = ps.direct.ρ X = ps.direct.X polar_param = ps.direct.polar_param H = x_to_h(X, ϵ, polar_param, ρ) diff --git a/src/ParameterTypes/general_ren.jl b/src/ParameterTypes/general_ren.jl index 871d46bb..25fee68e 100644 --- a/src/ParameterTypes/general_ren.jl +++ b/src/ParameterTypes/general_ren.jl @@ -98,7 +98,7 @@ function direct_to_explicit(ps::GeneralRENParams{T}, return_h=false) where T # Implicit parameters ϵ = ps.direct.ϵ - ρ = ps.direct.ρ[1] + ρ = ps.direct.ρ X = ps.direct.X polar_param = ps.direct.polar_param diff --git a/src/ParameterTypes/lipschitz_ren.jl b/src/ParameterTypes/lipschitz_ren.jl index 7b4df369..1eb3d327 100644 --- a/src/ParameterTypes/lipschitz_ren.jl +++ b/src/ParameterTypes/lipschitz_ren.jl @@ -77,12 +77,12 @@ function direct_to_explicit(ps::LipschitzRENParams{T}, return_h=false) where T nx = ps.nx ny = ps.ny - # Dissipation parameters - γ = ps.γ[1] + # Lipschitz bound + γ = ps.γ # Implicit parameters ϵ = ps.direct.ϵ - ρ = ps.direct.ρ[1] + ρ = ps.direct.ρ X = ps.direct.X polar_param = ps.direct.polar_param @@ -103,7 +103,7 @@ function direct_to_explicit(ps::LipschitzRENParams{T}, return_h=false) where T else M = _M_lip(X3, Y3, Z3, ϵ) N = _N_lip(nu, ny, M, Z3) - D22 = γ*N + D22 = γ .* N end # Constructing H. See Eqn 28 of TAC paper @@ -132,14 +132,14 @@ function _N_lip(nu, ny, M, Z3) end end -_C2_lip(D22, C2, γ) = -(D22')*C2 / γ +_C2_lip(D22, C2, γ) = -(D22')*C2 ./ γ -_D21_lip(D22, D21, γ, D12_imp) = -(D22')*D21 / γ - D12_imp' +_D21_lip(D22, D21, γ, D12_imp) = -(D22')*D21 ./ γ - D12_imp' -_R_lip(D22, γ) = -D22'*D22 / γ + (γ * I) +_R_lip(D22, γ) = γ .* (-D22'*D22 ./ (γ.^2) + I) -function _Γ1_lip(nx, ny, C2, D21, γ, T) - [C2'; D21'; zeros(T, nx, ny)] * [C2 D21 zeros(T, ny, nx)] * (-1/γ) +function _Γ1_lip(nx, ny, C2, D21, γ, T) # TODO: Check brackets + [C2'; D21'; zeros(T, nx, ny)] * [C2 D21 zeros(T, ny, nx)] .* (-1 ./ γ) end function _Γ2_lip(C2_imp, D21_imp, B2_imp, 𝑅) diff --git a/src/ParameterTypes/passive_ren.jl b/src/ParameterTypes/passive_ren.jl index 6d4bdded..6f93a00a 100644 --- a/src/ParameterTypes/passive_ren.jl +++ b/src/ParameterTypes/passive_ren.jl @@ -75,7 +75,7 @@ function direct_to_explicit(ps::PassiveRENParams{T}, return_h=false) where T # Implicit parameters ϵ = ps.direct.ϵ - ρ = ps.direct.ρ[1] + ρ = ps.direct.ρ X = ps.direct.X polar_param = ps.direct.polar_param diff --git a/src/ParameterTypes/utils.jl b/src/ParameterTypes/utils.jl index 86c3942a..5f96dfb0 100644 --- a/src/ParameterTypes/utils.jl +++ b/src/ParameterTypes/utils.jl @@ -54,7 +54,6 @@ function hmatrix_to_explicit(ps::AbstractRENParams, H::AbstractMatrix{T}, D22::A Y1 = ps.direct.Y1 # Extract sections of H matrix - # Using @view is slower in reverse mode? H11 = H[1:nx, 1:nx] H22 = H[nx + 1:nx + nv, nx + 1:nx + nv] H33 = H[nx + nv + 1:2nx + nv, nx + nv + 1:2nx + nv] @@ -105,7 +104,7 @@ _C1(nv, nx, Λ_inv, C1_imp, T) = (nv == 0) ? zeros(T,0,nx) : broadcast(*, Λ_i _D11(nv, Λ_inv, D11_imp, T) = (nv == 0) ? zeros(T,0,0) : broadcast(*, Λ_inv, D11_imp) _D12(nv, nu, Λ_inv, D12_imp, T) = (nv == 0) ? zeros(T,0,nu) : broadcast(*, Λ_inv, D12_imp) -x_to_h(X, ϵ, polar_param, ρ) = polar_param ? (ρ^2)*(X'*X) / norm(X)^2 + ϵ*I : X'*X + ϵ*I +x_to_h(X, ϵ, polar_param, ρ) = polar_param ? (ρ.^2).*(X'*X) / norm(X)^2 + ϵ*I : X'*X + ϵ*I """ set_output_zero!(m::AbstractRENParams) From 0e0e61af8616207d1a0dc05dcb3f4a4ee8e296c4 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 15:15:29 +1000 Subject: [PATCH 08/38] Removed scalar indexing from REN rrules to allow GPU support --- examples/GPU/test_speed.jl | 14 +++++++------- src/Base/acyclic_ren_solver.jl | 8 +++----- src/Wrappers/REN/ren.jl | 4 ++-- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl index 66ef03d6..3075c96d 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_speed.jl @@ -4,18 +4,19 @@ using Pkg Pkg.activate("../") using BenchmarkTools +using CUDA using Flux using Random using RobustNeuralNetworks rng = Xoshiro(42) -function test_diffren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, - nl=relu, batches=100, tmax=5, isdiff=true, T=Float32) +function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, + nl=relu, batches=100, tmax=5, is_diff=false, T=Float32) # Build the ren model = construct{T}(nu, nx, nv, ny, args...; nl, rng) - is_diff && (model = DiffREN(model)) + is_diff && (model = DiffREN(model) |> device) # Create dummy data us = [randn(rng, T, nu, batches) for _ in 1:tmax] |> device @@ -24,9 +25,10 @@ function test_diffren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, # Dummy loss function function loss(model, x, us, ys) + m = is_diff ? model : (REN(model) |> device) J = 0 for t in 1:tmax - x, y = model(x, us[t]) + x, y = m(x, us[t]) J += Flux.mse(y, ys[t]) end return J @@ -45,12 +47,10 @@ function test_diffren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, return l, g end -l, g = test_diffren_speed( +l, g = test_ren_speed( cpu, ContractingRENParams; batches=100, tmax=5, ) println() - -# TODO: Write function for non-diff REN too! \ No newline at end of file diff --git a/src/Base/acyclic_ren_solver.jl b/src/Base/acyclic_ren_solver.jl index b81f5611..e5e40896 100644 --- a/src/Base/acyclic_ren_solver.jl +++ b/src/Base/acyclic_ren_solver.jl @@ -61,11 +61,9 @@ function rrule(::typeof(tril_layer_back), σ::F, D11, v, w_eq::AbstractVecOrMat{ b̄ = NoTangent() # Get gradient of σ(v) wrt v evaluated at v = D₁₁w + b - j = similar(v) - for i in eachindex(j) - _, back = rrule(σ, v[i]) - _, j[i] = back(one(T)) - end + _back(σ, v) = rrule(σ, v)[2] + backs = _back.(σ, v) + j = map(b -> b(one(T))[2], backs) # Compute gradient from implicit function theorem w̄_eq = v diff --git a/src/Wrappers/REN/ren.jl b/src/Wrappers/REN/ren.jl index 1167af13..2f2db282 100644 --- a/src/Wrappers/REN/ren.jl +++ b/src/Wrappers/REN/ren.jl @@ -104,11 +104,11 @@ _yt(C2, D21, D22, xt, wt, ut, by) = C2 * xt + D21 * wt + D22 * ut .+ by Return matrix of (nbatches) state vectors of a REN initialised as zeros. """ -function init_states(m::AbstractREN{T}, nbatches; rng=nothing) where T +function init_states(m::Union{AbstractREN{T},AbstractRENParams{T}}, nbatches; rng=nothing) where T return zeros(T, m.nx, nbatches) end -function init_states(m::AbstractREN{T}; rng=nothing) where T +function init_states(m::Union{AbstractREN{T},AbstractRENParams{T}}; rng=nothing) where T return zeros(T, m.nx) end From cea70e3e6f944550e16362f5447ebfa6d9c632aa Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 15:24:23 +1000 Subject: [PATCH 09/38] BREAKING: Changed passivity parameter to non-keyword argument --- src/ParameterTypes/passive_ren.jl | 8 +++----- test/ParameterTypes/passivity.jl | 3 ++- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/ParameterTypes/passive_ren.jl b/src/ParameterTypes/passive_ren.jl index b576526e..785400da 100644 --- a/src/ParameterTypes/passive_ren.jl +++ b/src/ParameterTypes/passive_ren.jl @@ -13,7 +13,7 @@ mutable struct PassiveRENParams{T} <: AbstractRENParams{T} end """ - PassiveRENParams{T}(nu, nx, nv, ny; ) where T + PassiveRENParams{T}(nu, nx, nv, ny, ν; ) where T Construct direct parameterisation of a passive REN. @@ -22,11 +22,10 @@ Construct direct parameterisation of a passive REN. - `nx::Int`: Number of states. - `nv::Int`: Number of neurons. - `ny::Int`: Number of outputs. +- `ν::Number=0`: Passivity parameter. Use ν>0 for incrementally strictly input passive model, and ν == 0 for incrementally passive model. # Keyword arguments -- `ν::T=0`: Passivity parameter. Use ν>0 for incrementally strictly input passive model, and ν == 0 for incrementally passive model. - - `nl::Function=relu`: Sector-bounded static nonlinearity. - `αbar::T=1`: Upper bound on the contraction rate with `ᾱ ∈ (0,1]`. @@ -36,8 +35,7 @@ See [`DirectRENParams`](@ref) for documentation of keyword arguments `init`, `ϵ See also [`GeneralRENParams`](@ref), [`ContractingRENParams`](@ref), [`LipschitzRENParams`](@ref). """ function PassiveRENParams{T}( - nu::Int, nx::Int, nv::Int, ny::Int; - ν::T = T(0), + nu::Int, nx::Int, nv::Int, ny::Int, ν::Number=T(0); nl::Function = relu, αbar::T = T(1), init = :random, diff --git a/test/ParameterTypes/passivity.jl b/test/ParameterTypes/passivity.jl index 37c0959a..04ce7128 100644 --- a/test/ParameterTypes/passivity.jl +++ b/test/ParameterTypes/passivity.jl @@ -14,10 +14,11 @@ Test passivity inequality """ batches = 100 nu, nx, nv, ny = 6, 5, 10, 6 +ν= 1.0 T = 100 # Test constructors -ren_ps = PassiveRENParams{Float64}(nu, nx, nv, ny; init=:random, ν= 1.0, rng) +ren_ps = PassiveRENParams{Float64}(nu, nx, nv, ny, ν; init=:random, rng) ren = REN(ren_ps) # Different inputs with different initial conditions From dc2d341505f964f47ad38ace504ae9297ccf12bb Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 16:39:46 +1000 Subject: [PATCH 10/38] Fixed bug with numerical conditioning on GPU when nu=ny --- src/ParameterTypes/general_ren.jl | 39 +++++++++++-------- src/ParameterTypes/lipschitz_ren.jl | 6 ++- .../general_behavioural_constrains.jl | 6 +-- 3 files changed, 30 insertions(+), 21 deletions(-) diff --git a/src/ParameterTypes/general_ren.jl b/src/ParameterTypes/general_ren.jl index 9322e8b3..6c284e55 100644 --- a/src/ParameterTypes/general_ren.jl +++ b/src/ParameterTypes/general_ren.jl @@ -8,9 +8,11 @@ mutable struct GeneralRENParams{T} <: AbstractRENParams{T} ny::Int direct::DirectRENParams{T} αbar::T - Q::Matrix{T} - S::Matrix{T} - R::Matrix{T} + Q::AbstractMatrix{T} + S::AbstractMatrix{T} + R::AbstractMatrix{T} + LQ::AbstractMatrix{T} + LR::AbstractMatrix{T} end """ @@ -25,9 +27,9 @@ Behavioural constraints are encoded by the matrices `Q,S,R` in an incremental In - `nx::Int`: Number of states. - `nv::Int`: Number of neurons. - `ny::Int`: Number of outputs. -- `Q::Matrix{T}`: IQC weight matrix on model outputs -- `S::Matrix{T}`: IQC coupling matrix on model outputs/inputs -- `R::Matrix{T}`: IQC weight matrix on model outputs +- `Q::AbstractMatrix`: IQC weight matrix on model outputs +- `S::AbstractMatrix`: IQC coupling matrix on model outputs/inputs +- `R::AbstractMatrix`: IQC weight matrix on model outputs # Keyword arguments @@ -41,7 +43,7 @@ See also [`ContractingRENParams`](@ref), [`LipschitzRENParams`](@ref), [`Passive """ function GeneralRENParams{T}( nu::Int, nx::Int, nv::Int, ny::Int, - Q::Matrix{T}, S::Matrix{T}, R::Matrix{T}; + Q::AbstractMatrix, S::AbstractMatrix, R::AbstractMatrix; nl::Function = relu, αbar::T = T(1), init = :random, @@ -78,7 +80,14 @@ function GeneralRENParams{T}( D22_free=false, rng, ) - return GeneralRENParams{T}(nl, nu, nx, nv, ny, direct_ps, αbar, Q, S, R) + # For constructing D22. See Eqns 31-33 of TAC paper + # Currently converts to Hermitian to avoid numerical conditioning issues + Q, S, R = T.(Q), T.(S), T.(R) + LQ = Matrix{T}(cholesky(-Q).U) + R1 = Hermitian(R - S * (Q \ S')) + LR = Matrix{T}(cholesky(R1).U) + + return GeneralRENParams{T}(nl, nu, nx, nv, ny, direct_ps, αbar, Q, S, R, LQ, LR) end @@ -106,6 +115,8 @@ function direct_to_explicit(ps::GeneralRENParams{T}, return_h=false) where T X3 = ps.direct.X3 Y3 = ps.direct.Y3 Z3 = ps.direct.Z3 + LQ = ps.LQ + LR = ps.LR # Implicit system and output matrices B2_imp = ps.direct.B2 @@ -113,12 +124,6 @@ function direct_to_explicit(ps::GeneralRENParams{T}, return_h=false) where T C2 = ps.direct.C2 D21 = ps.direct.D21 - - # Constructing D22. See Eqns 31-33 of TAC paper - # Currently converts to Hermitian to avoid numerical conditioning issues - LQ = Matrix{T}(cholesky(-Q).U) - R1 = Hermitian(R - S * (Q \ S')) - LR = Matrix{T}(cholesky(R1).U) M = _M_gen(X3, Y3, Z3, ϵ) N = _N_gen(nu, ny, M, Z3) @@ -145,8 +150,10 @@ end _M_gen(X3, Y3, Z3, ϵ) = X3'*X3 + Y3 - Y3' + Z3'*Z3 + ϵ*I function _N_gen(nu, ny, M, Z3) - if ny >= nu - return[(I - M) / (I + M); -2*Z3 / (I + M)] + if ny == nu + return [(I - M) / (I + M); Z3] + elseif ny > nu + return [(I - M) / (I + M); -2*Z3 / (I + M)] else return [((I + M) \ (I - M)) (-2*(I + M) \ Z3')] end diff --git a/src/ParameterTypes/lipschitz_ren.jl b/src/ParameterTypes/lipschitz_ren.jl index 1eb3d327..0b81aa5c 100644 --- a/src/ParameterTypes/lipschitz_ren.jl +++ b/src/ParameterTypes/lipschitz_ren.jl @@ -125,7 +125,9 @@ end _M_lip(X3, Y3, Z3, ϵ) = X3'*X3 + Y3 - Y3' + Z3'*Z3 + ϵ*I function _N_lip(nu, ny, M, Z3) - if ny >= nu + if ny == nu + return [(I - M) / (I + M); Z3] # Done separately to fix numerical issues on GPU + elseif ny > nu return [(I - M) / (I + M); -2*Z3 / (I + M)] else return [((I + M) \ (I - M)) (-2*(I + M) \ Z3')] @@ -138,7 +140,7 @@ _D21_lip(D22, D21, γ, D12_imp) = -(D22')*D21 ./ γ - D12_imp' _R_lip(D22, γ) = γ .* (-D22'*D22 ./ (γ.^2) + I) -function _Γ1_lip(nx, ny, C2, D21, γ, T) # TODO: Check brackets +function _Γ1_lip(nx, ny, C2, D21, γ, T) [C2'; D21'; zeros(T, nx, ny)] * [C2 D21 zeros(T, ny, nx)] .* (-1 ./ γ) end diff --git a/test/ParameterTypes/general_behavioural_constrains.jl b/test/ParameterTypes/general_behavioural_constrains.jl index ad177d04..805faad9 100644 --- a/test/ParameterTypes/general_behavioural_constrains.jl +++ b/test/ParameterTypes/general_behavioural_constrains.jl @@ -16,9 +16,9 @@ batches = 42 nu, nx, nv, ny = 10, 5, 10, 20 # Generate random matrices -X = randn(rng, ny,ny) -Y = randn(rng, nu,nu) -S = rand(rng, nu,ny) +X = randn(rng, ny, ny) +Y = randn(rng, nu, nu) +S = randn(rng, nu, ny) Q = -X'*X R = S * (Q \ S') + Y'*Y From 8b6a0e4cee588c6f15304cf97d5dd619ca01ec62 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 16:48:27 +1000 Subject: [PATCH 11/38] Simplified code calling identity matrix to make compatible with GPU --- src/ParameterTypes/passive_ren.jl | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/ParameterTypes/passive_ren.jl b/src/ParameterTypes/passive_ren.jl index 785400da..02becccc 100644 --- a/src/ParameterTypes/passive_ren.jl +++ b/src/ParameterTypes/passive_ren.jl @@ -69,7 +69,6 @@ function direct_to_explicit(ps::PassiveRENParams{T}, return_h=false) where T # System sizes nu = ps.nu - ny = ps.ny ν = ps.ν # Implicit parameters @@ -93,7 +92,7 @@ function direct_to_explicit(ps::PassiveRENParams{T}, return_h=false) where T # Currently converts to Hermitian to avoid numerical conditioning issues M = _M_pass(X3, Y3, ϵ) - D22 = ν*Matrix(I, ny,nu) + M + D22 = ν*I + M D21_imp = D21 - D12_imp' 𝑅 = _R_pass(nu, D22, ν) @@ -109,7 +108,7 @@ end _M_pass(X3, Y3, ϵ) = X3'*X3 + Y3 - Y3' + ϵ*I -_R_pass(nu, D22, ν) = -2ν * Matrix(I, nu, nu) + D22 + D22' +_R_pass(nu, D22, ν) = -2ν*I + D22 + D22' function _Γ2_pass(C2, D21_imp, B2_imp, 𝑅) [C2'; D21_imp'; B2_imp] * (𝑅 \ [C2 D21_imp B2_imp']) From 2dc965be008638bcd221e9d6d4be36a2d6e5caee Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 17:10:18 +1000 Subject: [PATCH 12/38] Added test script for all RENs on GPU --- examples/GPU/test_speed.jl | 70 ++++++++++++++++++++++++------- src/ParameterTypes/passive_ren.jl | 4 +- 2 files changed, 56 insertions(+), 18 deletions(-) diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl index 3075c96d..60b3907d 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_speed.jl @@ -11,11 +11,12 @@ using RobustNeuralNetworks rng = Xoshiro(42) -function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, - nl=relu, batches=100, tmax=5, is_diff=false, T=Float32) +function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=4, + nl=tanh, batches=10, tmax=5, is_diff=false, T=Float32, + do_time=true) # Build the ren - model = construct{T}(nu, nx, nv, ny, args...; nl, rng) + model = construct{T}(nu, nx, nv, ny, args...; nl, rng, ϵ=T(1e-10)) is_diff && (model = DiffREN(model) |> device) # Create dummy data @@ -34,23 +35,60 @@ function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=2, return J end - # Run it once to check it works + # Run and time, running it once first to check it works + print("Forwards: ") l = loss(model, x0, us, ys) - g = gradient(loss, model, x0, us, ys) + do_time && (@btime $loss($model, $x0, $us, $ys)) - # Time it - print("Forwards: ") - @btime $loss($model, $x0, $us, $ys) print("Reverse: ") - @btime $gradient($loss, $model, $x0, $us, $ys) + g = gradient(loss, model, x0, us, ys) + do_time && (@btime $gradient($loss, $model, $x0, $us, $ys)) return l, g end -l, g = test_ren_speed( - cpu, - ContractingRENParams; - batches=100, - tmax=5, -) -println() +# Test all types and combinations +γ = 10 +ν = 10 + +nu, nx, nv, ny = 4, 5, 10, 4 +X = randn(rng, ny, ny) +Y = randn(rng, nu, nu) +S = randn(rng, nu, ny) + +Q = -X'*X +R = S * (Q \ S') + Y'*Y + +function test_rens(device) + + d = device === cpu ? "CPU" : "GPU" + println("\nTesting RENs on ", d, ":") + println("--------------------\n") + + println("Contracting REN:\n") + test_ren_speed(device, ContractingRENParams) + println("\nContracting DiffREN:\n") + test_ren_speed(device, ContractingRENParams; is_diff=true) + + println("\nPassive REN:\n") + test_ren_speed(device, PassiveRENParams, ν) + println("\nPassive DiffREN:\n") + test_ren_speed(device, PassiveRENParams, ν; is_diff=true) + + println("\nLipschitz REN:\n") + test_ren_speed(device, LipschitzRENParams, γ) + println("\nLipschitz DiffREN:\n") + test_ren_speed(device, LipschitzRENParams, γ; is_diff=true) + + println("\nGeneral REN:\n") + test_ren_speed(device, GeneralRENParams, Q, S, R) + println("\nGeneral DiffREN:\n") + test_ren_speed(device, GeneralRENParams, Q, S, R; is_diff=true) + + return nothing +end + +test_rens(cpu) +test_rens(gpu) + +# TODO: Scalar indexing issue on GPU appearing in backwards pass of Lipschitz DiffREN and General DiffREN only. What's different about those? \ No newline at end of file diff --git a/src/ParameterTypes/passive_ren.jl b/src/ParameterTypes/passive_ren.jl index 02becccc..3e1e4281 100644 --- a/src/ParameterTypes/passive_ren.jl +++ b/src/ParameterTypes/passive_ren.jl @@ -95,7 +95,7 @@ function direct_to_explicit(ps::PassiveRENParams{T}, return_h=false) where T D22 = ν*I + M D21_imp = D21 - D12_imp' - 𝑅 = _R_pass(nu, D22, ν) + 𝑅 = _R_pass(D22, ν) Γ2 = _Γ2_pass(C2, D21_imp, B2_imp, 𝑅) H = x_to_h(X, ϵ, polar_param, ρ) + Γ2 @@ -108,7 +108,7 @@ end _M_pass(X3, Y3, ϵ) = X3'*X3 + Y3 - Y3' + ϵ*I -_R_pass(nu, D22, ν) = -2ν*I + D22 + D22' +_R_pass(D22, ν) = -2ν*I + D22 + D22' function _Γ2_pass(C2, D21_imp, B2_imp, 𝑅) [C2'; D21_imp'; B2_imp] * (𝑅 \ [C2 D21_imp B2_imp']) From 22c2472ce9a13a379aef7c7cdd1731a98fd2454b Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 17:26:49 +1000 Subject: [PATCH 13/38] Minor edits --- examples/GPU/test_speed.jl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl index 60b3907d..edab61ec 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_speed.jl @@ -12,11 +12,11 @@ using RobustNeuralNetworks rng = Xoshiro(42) function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=4, - nl=tanh, batches=10, tmax=5, is_diff=false, T=Float32, + nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, do_time=true) # Build the ren - model = construct{T}(nu, nx, nv, ny, args...; nl, rng, ϵ=T(1e-10)) + model = construct{T}(nu, nx, nv, ny, args...; nl, rng) is_diff && (model = DiffREN(model) |> device) # Create dummy data From 567f801a8fb28df456edceed0b27efd3ed25852b Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 20:04:12 +1000 Subject: [PATCH 14/38] Removed scalar GPU indexing warning at cost of adding inv(A) --- examples/GPU/test_speed.jl | 2 -- src/ParameterTypes/general_ren.jl | 5 +++-- src/ParameterTypes/lipschitz_ren.jl | 5 +++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl index edab61ec..39071166 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_speed.jl @@ -90,5 +90,3 @@ end test_rens(cpu) test_rens(gpu) - -# TODO: Scalar indexing issue on GPU appearing in backwards pass of Lipschitz DiffREN and General DiffREN only. What's different about those? \ No newline at end of file diff --git a/src/ParameterTypes/general_ren.jl b/src/ParameterTypes/general_ren.jl index 6c284e55..8689b3a5 100644 --- a/src/ParameterTypes/general_ren.jl +++ b/src/ParameterTypes/general_ren.jl @@ -151,9 +151,10 @@ _M_gen(X3, Y3, Z3, ϵ) = X3'*X3 + Y3 - Y3' + Z3'*Z3 + ϵ*I function _N_gen(nu, ny, M, Z3) if ny == nu - return [(I - M) / (I + M); Z3] + return [(I + M) \ (I - M); Z3] # Done separately to fix numerical issues on GPU elseif ny > nu - return [(I - M) / (I + M); -2*Z3 / (I + M)] + inv_IM = inv(I + M) # Issue back-propagating through A / B on GPU... + return [(I - M) * inv_IM; -2*Z3 * inv_IM] else return [((I + M) \ (I - M)) (-2*(I + M) \ Z3')] end diff --git a/src/ParameterTypes/lipschitz_ren.jl b/src/ParameterTypes/lipschitz_ren.jl index 0b81aa5c..b0a61221 100644 --- a/src/ParameterTypes/lipschitz_ren.jl +++ b/src/ParameterTypes/lipschitz_ren.jl @@ -126,9 +126,10 @@ _M_lip(X3, Y3, Z3, ϵ) = X3'*X3 + Y3 - Y3' + Z3'*Z3 + ϵ*I function _N_lip(nu, ny, M, Z3) if ny == nu - return [(I - M) / (I + M); Z3] # Done separately to fix numerical issues on GPU + return [(I + M) \ (I - M); Z3] # Done separately to fix numerical issues on GPU elseif ny > nu - return [(I - M) / (I + M); -2*Z3 / (I + M)] + inv_IM = inv(I + M) # Issue back-propagating through A / B on GPU... + return [(I - M) * inv_IM; -2*Z3 * inv_IM] else return [((I + M) \ (I - M)) (-2*(I + M) \ Z3')] end From f5775d4ae7a0dff06ca5b198f09a211627b392f7 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Mon, 14 Aug 2023 20:09:13 +1000 Subject: [PATCH 15/38] Minor edits --- examples/GPU/test_speed.jl | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl index 39071166..b591fb4a 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_speed.jl @@ -11,6 +11,7 @@ using RobustNeuralNetworks rng = Xoshiro(42) +# TODO: Probably better to send params to GPU then build off that. function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=4, nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, do_time=true) From 0af706745ce26918d849b88472deac4017559c6e Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 11:19:30 +1000 Subject: [PATCH 16/38] Made tests more efficient --- examples/GPU/test_speed.jl | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_speed.jl index b591fb4a..fe63795f 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_speed.jl @@ -11,14 +11,13 @@ using RobustNeuralNetworks rng = Xoshiro(42) -# TODO: Probably better to send params to GPU then build off that. -function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=4, - nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, - do_time=true) +function test_ren_gpu(device, construct, args...; nu=4, nx=5, nv=10, ny=4, + nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, + do_time=true) # Build the ren - model = construct{T}(nu, nx, nv, ny, args...; nl, rng) - is_diff && (model = DiffREN(model) |> device) + model = construct{T}(nu, nx, nv, ny, args...; nl, rng) |> device + is_diff && (model = DiffREN(model)) # Create dummy data us = [randn(rng, T, nu, batches) for _ in 1:tmax] |> device @@ -27,7 +26,7 @@ function test_ren_speed(device, construct, args...; nu=4, nx=5, nv=10, ny=4, # Dummy loss function function loss(model, x, us, ys) - m = is_diff ? model : (REN(model) |> device) + m = is_diff ? model : REN(model) J = 0 for t in 1:tmax x, y = m(x, us[t]) @@ -89,5 +88,5 @@ function test_rens(device) return nothing end -test_rens(cpu) +# test_rens(cpu) test_rens(gpu) From e826a73682371ac3e7b3c6fc15afa6d1731c6ceb Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 12:19:47 +1000 Subject: [PATCH 17/38] Added simple test for forward pass of LBDN models --- examples/GPU/test.jl | 40 ++++++++++---------- examples/GPU/{test_speed.jl => test_rens.jl} | 4 +- 2 files changed, 21 insertions(+), 23 deletions(-) rename examples/GPU/{test_speed.jl => test_rens.jl} (95%) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index 6d86ba49..a4d560c1 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -5,42 +5,40 @@ Pkg.activate("../") using BenchmarkTools using CUDA using Flux +using Random using RobustNeuralNetworks -device = gpu T = Float32 +rng = Xoshiro(42) -# Note: construction of REN is probably best suited to the CPU rather than GPU? -# This makes things tricky with DiffREN. Would suggest REN is always best! - -# Model sizes -nu, nx, nv, ny = 4, 5, 10, 2 +# Model parameters +nu, ny, γ = 2, 3, 1 +nh = [10,5] # Build model -ren_ps = LipschitzRENParams{T}(nu, nx, nv, ny, 1; nl=relu) -# ren = REN(ren_ps) -ren = DiffREN(ren_ps) +model_ps = DenseLBDNParams{T}(nu, nh, ny, γ; rng) #, learn_γ=true) +model = LBDN(model_ps) +# model = DiffLBDN(model_ps) # Data batches = 10000 -u = rand(T, nu, batches) |> device -x = init_states(ren, batches) |> device +us = randn(rng, T, nu, batches) +ys = randn(rng, T, ny, batches) -function to_dev(ren, x, u, device) - r = ren |> device - x1 = x |> device +function to_dev(lbdn, u, device) + m = lbdn |> device u1 = u |> device - return r, x1, u1 + return m, u1 end # Time on the CPU -println("Calling REN on CPU with $batches batches") -ren, x, u = to_dev(ren, x, u, cpu) -@btime x1, yr = ren(x, u); +println("Calling LBDN on CPU with $batches batches") +lbdn, u = to_dev(model, us, cpu) +@btime y1 = lbdn(u); # Time on GPU -println("Calling REN on GPU with $batches batches") -ren, x, u = to_dev(ren, x, u, gpu) -@btime x1, yr = ren(x, u); +println("Calling LBDN on GPU with $batches batches") +lbdn, u = to_dev(model, us, gpu) +@btime y1 = lbdn(u); println() diff --git a/examples/GPU/test_speed.jl b/examples/GPU/test_rens.jl similarity index 95% rename from examples/GPU/test_speed.jl rename to examples/GPU/test_rens.jl index fe63795f..40dea9b6 100644 --- a/examples/GPU/test_speed.jl +++ b/examples/GPU/test_rens.jl @@ -11,7 +11,7 @@ using RobustNeuralNetworks rng = Xoshiro(42) -function test_ren_gpu(device, construct, args...; nu=4, nx=5, nv=10, ny=4, +function test_ren_device(device, construct, args...; nu=4, nx=5, nv=10, ny=4, nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, do_time=true) @@ -59,7 +59,7 @@ S = randn(rng, nu, ny) Q = -X'*X R = S * (Q \ S') + Y'*Y -function test_rens(device) +function test_ren_device(device) d = device === cpu ? "CPU" : "GPU" println("\nTesting RENs on ", d, ":") From 8ceb6b3ff54e4cf04b24d1a27539baffb4e53bb6 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 12:43:11 +1000 Subject: [PATCH 18/38] Generalisng LBDNs to work with CUDA arrays --- examples/GPU/test.jl | 10 ++++++---- src/ParameterTypes/dense_lbdn.jl | 14 +++++++------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index a4d560c1..2bae3245 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -13,15 +13,15 @@ rng = Xoshiro(42) # Model parameters nu, ny, γ = 2, 3, 1 -nh = [10,5] +nh = [10,5] # TODO: Switch this to a tuple, it really should be immutable # Build model model_ps = DenseLBDNParams{T}(nu, nh, ny, γ; rng) #, learn_γ=true) -model = LBDN(model_ps) -# model = DiffLBDN(model_ps) +# model = LBDN(model_ps) +model = DiffLBDN(model_ps) # Data -batches = 10000 +batches = 1000 us = randn(rng, T, nu, batches) ys = randn(rng, T, ny, batches) @@ -41,4 +41,6 @@ println("Calling LBDN on GPU with $batches batches") lbdn, u = to_dev(model, us, gpu) @btime y1 = lbdn(u); +# TODO: Remove scalar array indexing + println() diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index c9a906e2..a7b87f5c 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -85,10 +85,10 @@ function norm_cayley(XY, α, n) end -function get_Ψ(d::NTuple{N, AbstractVector{T}}) where {T, N} +function get_Ψ(d::NTuple{N, T}) where {N, T} # Use Zygote buffer to avoid problems with array mutation - buf = Buffer([zeros(T,0)], N) + buf = Buffer([zero(d[1])], N) for k in 1:N buf[k] = exp.(d[k]) end @@ -97,14 +97,14 @@ function get_Ψ(d::NTuple{N, AbstractVector{T}}) where {T, N} end function get_AB( - XY::NTuple{N, AbstractMatrix{T}}, - α ::NTuple{N, AbstractVector{T}}, + XY::NTuple{N, T1}, + α ::NTuple{N, T2}, n ::AbstractVector{Int} -) where {T, N} +) where {N, T1, T2} # Use Zygote buffer to avoid problems with array mutation - buf_A = Buffer([zeros(T,0,0)], N) - buf_B = Buffer([zeros(T,0,0)], N) + buf_A = Buffer([zero(XY[1])], N) + buf_B = Buffer([zero(XY[1])], N) for k in 1:N AB_k = norm_cayley(XY[k], α[k], n[k]) buf_A[k] = AB_k[1] From ad273c301fec9a0d320754b75f0f90d2e49b96d9 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 16:13:34 +1000 Subject: [PATCH 19/38] Changed LBDN to store number of hidden layers in a tuple --- src/Base/lbdn_params.jl | 9 +++++---- src/ParameterTypes/dense_lbdn.jl | 23 ++++++++++++----------- src/RobustNeuralNetworks.jl | 6 +++--- src/Wrappers/LBDN/diff_lbdn.jl | 8 ++++---- src/Wrappers/LBDN/lbdn.jl | 12 ++++++------ 5 files changed, 30 insertions(+), 28 deletions(-) diff --git a/src/Base/lbdn_params.jl b/src/Base/lbdn_params.jl index bc6025c5..971f8136 100644 --- a/src/Base/lbdn_params.jl +++ b/src/Base/lbdn_params.jl @@ -40,9 +40,9 @@ This is typically used by a higher-level constructor to define an LBDN model, wh # Arguments - `nu::Int`: Number of inputs. -- `nh::AbstractVector{Int}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). +- `nh::Union{Vector{Int}, NTuple{N, Int}}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). - `ny::Int`: Number of outputs. -- `γ::Number=T(1)`: Lipschitz upper bound. +- `γ::Real=T(1)`: Lipschitz upper bound, must be positive. # Keyword arguments @@ -59,12 +59,13 @@ See [Wang et al. (2023)](https://proceedings.mlr.press/v202/wang23v.html) for pa See also [`DenseLBDNParams`](@ref). """ function DirectLBDNParams{T}( - nu::Int, nh::AbstractVector{Int}, ny::Int, γ::Number = T(1); + nu::Int, nh::Union{Vector{Int}, NTuple{N, Int}}, + ny::Int, γ::Real = T(1); initW::Function = glorot_normal, initb::Function = glorot_normal, learn_γ::Bool = false, rng::AbstractRNG = Random.GLOBAL_RNG -) where T +) where {T, N} n = [nu, nh..., ny] L = length(nh) diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index a7b87f5c..ba435e0c 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -1,9 +1,9 @@ # This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE -mutable struct DenseLBDNParams{T} <: AbstractLBDNParams{T} +mutable struct DenseLBDNParams{T, L} <: AbstractLBDNParams{T, L} nl::Function # Sector-bounded nonlinearity nu::Int - nh::AbstractVector{Int} + nh::NTuple{L, Int} ny::Int direct::DirectLBDNParams{T} end @@ -17,9 +17,9 @@ This is the equivalent of a multi-layer perceptron (eg: `Flux.Dense`) with a gua # Arguments - `nu::Int`: Number of inputs. -- `nh::AbstractVector{Int}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). +- `nh::Union{Vector{Int}, NTuple{N, Int}}`: Number of hidden units for each layer. Eg: `nh = [5,10]` for 2 hidden layers with 5 and 10 nodes (respectively). - `ny::Int`: Number of outputs. -- `γ::Number=T(1)`: Lipschitz upper bound. +- `γ::Real=T(1)`: Lipschitz upper bound, must be positive. # Keyword arguments: @@ -30,26 +30,27 @@ See [`DirectLBDNParams`](@ref) for documentation of keyword arguments `initW`, ` """ function DenseLBDNParams{T}( - nu::Int, nh::AbstractVector{Int}, ny::Int, γ::Number = T(1); + nu::Int, nh::Union{Vector{Int}, NTuple{N, Int}}, + ny::Int, γ::Real = T(1); nl::Function = relu, initW::Function = glorot_normal, initb::Function = glorot_normal, learn_γ::Bool = false, rng::AbstractRNG = Random.GLOBAL_RNG -) where T +) where {T, N} + nh = Tuple(nh) direct = DirectLBDNParams{T}(nu, nh, ny, γ; initW, initb, learn_γ, rng) - return DenseLBDNParams{T}(nl, nu, nh, ny, direct) + return DenseLBDNParams{T, length(nh)}(nl, nu, nh, ny, direct) end @functor DenseLBDNParams trainable(m::DenseLBDNParams) = (direct = m.direct, ) -function direct_to_explicit(ps::DenseLBDNParams{T}) where T +function direct_to_explicit(ps::DenseLBDNParams{T, L}) where {T, L} # Direct parameterisation nh = ps.nh ny = ps.ny - L = length(nh) L1 = L + 1 XY = ps.direct.XY @@ -60,7 +61,7 @@ function direct_to_explicit(ps::DenseLBDNParams{T}) where T # Build explicit model Ψd = get_Ψ(d) - A_T, B = get_AB(XY, α, vcat(nh, ny)) + A_T, B = get_AB(XY, α, vcat(nh..., ny)) sqrtγ = sqrt(exp(log_γ)) # Faster to backpropagate with tuples than vectors @@ -99,7 +100,7 @@ end function get_AB( XY::NTuple{N, T1}, α ::NTuple{N, T2}, - n ::AbstractVector{Int} + n ::Vector{Int} ) where {N, T1, T2} # Use Zygote buffer to avoid problems with array mutation diff --git a/src/RobustNeuralNetworks.jl b/src/RobustNeuralNetworks.jl index f3f8ec3b..d6bf8c3d 100644 --- a/src/RobustNeuralNetworks.jl +++ b/src/RobustNeuralNetworks.jl @@ -33,13 +33,13 @@ abstract type AbstractRENParams{T} end abstract type AbstractREN{T} end """ - abstract type AbstractLBDNParams{T} end + abstract type AbstractLBDNParams{T, L} end Direct parameterisation for Lipschitz-bounded deep networks. """ -abstract type AbstractLBDNParams{T} end +abstract type AbstractLBDNParams{T, L} end -abstract type AbstractLBDN{T} end +abstract type AbstractLBDN{T, L} end ############ Includes ############ diff --git a/src/Wrappers/LBDN/diff_lbdn.jl b/src/Wrappers/LBDN/diff_lbdn.jl index d8da1599..59c416a4 100644 --- a/src/Wrappers/LBDN/diff_lbdn.jl +++ b/src/Wrappers/LBDN/diff_lbdn.jl @@ -1,9 +1,9 @@ # This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE -mutable struct DiffLBDN{T} <: AbstractLBDN{T} +mutable struct DiffLBDN{T, L} <: AbstractLBDN{T, L} nl::Function nu::Int - nh::AbstractVector{Int} + nh::NTuple{L, Int} ny::Int params::AbstractLBDNParams{T} end @@ -33,8 +33,8 @@ model = DiffLBDN(lbdn_params) See also [`AbstractLBDN`](@ref), [`LBDN`](@ref), [`SandwichFC`](@ref). """ -function DiffLBDN(ps::AbstractLBDNParams{T}) where T - return DiffLBDN{T}(ps.nl, ps.nu, ps.nh, ps.ny, ps) +function DiffLBDN(ps::AbstractLBDNParams{T,L}) where {T,L} + return DiffLBDN{T,L}(ps.nl, ps.nu, ps.nh, ps.ny, ps) end function (m::DiffLBDN)(u::AbstractVecOrMat) diff --git a/src/Wrappers/LBDN/lbdn.jl b/src/Wrappers/LBDN/lbdn.jl index cca247fb..d717f149 100644 --- a/src/Wrappers/LBDN/lbdn.jl +++ b/src/Wrappers/LBDN/lbdn.jl @@ -1,15 +1,15 @@ # This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE -mutable struct LBDN{T} <: AbstractLBDN{T} +mutable struct LBDN{T, L} <: AbstractLBDN{T, L} nl::Function nu::Int - nh::AbstractVector{Int} + nh::NTuple{L, Int} ny::Int explicit::ExplicitLBDNParams{T} end """ - LBDN(ps::AbstractLBDNParams{T}) where T + LBDN(ps::AbstractLBDNParams) Construct an LBDN from its direct parameterisation. @@ -17,9 +17,9 @@ This constructor takes a direct parameterisation of LBDN (eg: a [`DenseLBDNParam See also [`AbstractLBDN`](@ref), [`DiffLBDN`](@ref). """ -function LBDN(ps::AbstractLBDNParams{T}) where T +function LBDN(ps::AbstractLBDNParams{T, L}) where {T, L} explicit = direct_to_explicit(ps) - return LBDN{T}(ps.nl, ps.nu, ps.nh, ps.ny, explicit) + return LBDN{T, L}(ps.nl, ps.nu, ps.nh, ps.ny, explicit) end # No trainable params @@ -27,7 +27,7 @@ end trainable(m::LBDN) = (; ) """ - abstract type AbstractLBDN{T} end + abstract type AbstractLBDN{T, L} end Explicit parameterisation for Lipschitz-bounded deep networks. From 748e0fc7b2879849ce4b75283d56c9ff1041140c Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 16:29:11 +1000 Subject: [PATCH 20/38] Minor updates to documentation --- src/Wrappers/LBDN/diff_lbdn.jl | 2 +- src/Wrappers/REN/wrap_ren.jl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Wrappers/LBDN/diff_lbdn.jl b/src/Wrappers/LBDN/diff_lbdn.jl index 59c416a4..a9b22f69 100644 --- a/src/Wrappers/LBDN/diff_lbdn.jl +++ b/src/Wrappers/LBDN/diff_lbdn.jl @@ -9,7 +9,7 @@ mutable struct DiffLBDN{T, L} <: AbstractLBDN{T, L} end """ - DiffLBDN(ps::AbstractLBDNParams{T}) where T + DiffLBDN(ps::AbstractLBDNParams) Construct a differentiable LBDN from its direct parameterisation. diff --git a/src/Wrappers/REN/wrap_ren.jl b/src/Wrappers/REN/wrap_ren.jl index 51a1d679..0d62f059 100644 --- a/src/Wrappers/REN/wrap_ren.jl +++ b/src/Wrappers/REN/wrap_ren.jl @@ -25,7 +25,7 @@ Note that `WrapREN` cannot be used with [`Flux.jl`](http://fluxml.ai/Flux.jl/sta In this example, we create a REN satisfying some generic behavioural constraints and demonstrate how to update the REN wrapper if model parameters are changed. -```jldoctest +```julia using LinearAlgebra using Random using RobustNeuralNetworks From 1faf5e56407ce8f330c8a0b57f6ac7e147fc3057 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 16:57:33 +1000 Subject: [PATCH 21/38] Removed scalar indexing in LBDN usage --- examples/GPU/test.jl | 6 ++---- src/Base/lbdn_params.jl | 2 +- src/ParameterTypes/dense_lbdn.jl | 6 +++--- src/Wrappers/LBDN/lbdn.jl | 4 ++-- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index 2bae3245..ee22b309 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -13,7 +13,7 @@ rng = Xoshiro(42) # Model parameters nu, ny, γ = 2, 3, 1 -nh = [10,5] # TODO: Switch this to a tuple, it really should be immutable +nh = [10, 5] # Build model model_ps = DenseLBDNParams{T}(nu, nh, ny, γ; rng) #, learn_γ=true) @@ -21,7 +21,7 @@ model_ps = DenseLBDNParams{T}(nu, nh, ny, γ; rng) #, learn_γ=true) model = DiffLBDN(model_ps) # Data -batches = 1000 +batches = 1024 us = randn(rng, T, nu, batches) ys = randn(rng, T, ny, batches) @@ -41,6 +41,4 @@ println("Calling LBDN on GPU with $batches batches") lbdn, u = to_dev(model, us, gpu) @btime y1 = lbdn(u); -# TODO: Remove scalar array indexing - println() diff --git a/src/Base/lbdn_params.jl b/src/Base/lbdn_params.jl index 971f8136..18d13113 100644 --- a/src/Base/lbdn_params.jl +++ b/src/Base/lbdn_params.jl @@ -14,7 +14,7 @@ mutable struct ExplicitLBDNParams{T, N, M} B ::NTuple{N, AbstractMatrix{T}} Ψd ::NTuple{M, AbstractVector{T}} # Diagonal of matrix Ψ from the paper b ::NTuple{N, AbstractVector{T}} - sqrtγ::T + sqrtγ::AbstractVector{T} end # No trainable params diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index ba435e0c..2e1815bc 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -57,12 +57,12 @@ function direct_to_explicit(ps::DenseLBDNParams{T, L}) where {T, L} α = ps.direct.α d = ps.direct.d b = ps.direct.b - log_γ = ps.direct.log_γ[1] + log_γ = ps.direct.log_γ # Build explicit model Ψd = get_Ψ(d) A_T, B = get_AB(XY, α, vcat(nh..., ny)) - sqrtγ = sqrt(exp(log_γ)) + sqrtγ = sqrt.(exp.(log_γ)) # Faster to backpropagate with tuples than vectors return ExplicitLBDNParams{T,L1,L}(tuple(A_T...), tuple(B...), tuple(Ψd...), b, sqrtγ) @@ -72,7 +72,7 @@ end function norm_cayley(XY, α, n) # Normalise XY with polar param and extract - XY = (α[1] / norm(XY)) * XY + XY = (α ./ norm(XY)) .* XY X = XY[1:n, :] Y = XY[(n+1):end, :] diff --git a/src/Wrappers/LBDN/lbdn.jl b/src/Wrappers/LBDN/lbdn.jl index d717f149..73b3671e 100644 --- a/src/Wrappers/LBDN/lbdn.jl +++ b/src/Wrappers/LBDN/lbdn.jl @@ -86,12 +86,12 @@ function (m::AbstractLBDN{T})(u::AbstractVecOrMat, explicit::ExplicitLBDNParams{ # Evaluate LBDN (extracting Ψd[k] is faster for backprop) # Note: backpropagation is similarly fast with for loops as with Flux chains (tested) - h = sqrtγ * u + h = sqrtγ .* u for k in 1:M Ψdk = Ψd[k] h = sqrt2 * (A_T[k] .* Ψdk') * σ.(sqrt2 * (B[k] ./ Ψdk) * h .+ b[k]) end - return sqrtγ * B[N] * h .+ b[N] + return sqrtγ .* B[N] * h .+ b[N] end function set_output_zero!(m::AbstractLBDN) From e77ce3e3a79ea179f44205a5c73233ce33643103 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Tue, 15 Aug 2023 17:43:56 +1000 Subject: [PATCH 22/38] Added test files for LBDN, currently broken DiffLBDN backwards pass on GPU --- examples/GPU/test.jl | 2 + examples/GPU/test_lbdn.jl | 61 ++++++++++++++++++++++ examples/GPU/{test_rens.jl => test_ren.jl} | 25 ++++----- src/ParameterTypes/dense_lbdn.jl | 8 +-- 4 files changed, 81 insertions(+), 15 deletions(-) create mode 100644 examples/GPU/test_lbdn.jl rename examples/GPU/{test_rens.jl => test_ren.jl} (75%) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index ee22b309..ded3a918 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -1,3 +1,5 @@ +# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE + cd(@__DIR__) using Pkg Pkg.activate("../") diff --git a/examples/GPU/test_lbdn.jl b/examples/GPU/test_lbdn.jl new file mode 100644 index 00000000..a19cc3ca --- /dev/null +++ b/examples/GPU/test_lbdn.jl @@ -0,0 +1,61 @@ +# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE + +cd(@__DIR__) +using Pkg +Pkg.activate("../") + +using BenchmarkTools +using CUDA +using Flux +using Random +using RobustNeuralNetworks + +rng = Xoshiro(42) + +function test_lbdn_device(device; nu=2, nh=[10, 5], ny=4, γ=10, nl=tanh, + batches=4, is_diff=false, do_time=true, T=Float32) + + # Build model + model = DenseLBDNParams{T}(nu, nh, ny, γ; nl, rng) |> device + is_diff && (model = DiffLBDN(model)) + + # Create dummy data + us = randn(rng, T, nu, batches) |> device + ys = randn(rng, T, ny, batches) |> device + + # Dummy loss function + function loss(model, u, y) + m = is_diff ? model : LBDN(model) + return Flux.mse(m(u), y) + end + + # Run and time, running it once to check it works + print("Forwards: ") + l = loss(model, us, ys) + do_time && (@btime $loss($model, $us, $ys)) + + print("Reverse: ") + g = gradient(loss, model, us, ys) + do_time && (@btime $gradient($loss, $model, $us, $ys)) + + return l, g +end + +function test_lbdns(device) + + d = device === cpu ? "CPU" : "GPU" + println("\nTesting RENs on ", d, ":") + println("--------------------\n") + + println("Dense LBDN:\n") + test_lbdn_device(device; do_time=false) + println("\nDense DiffLBDN:\n") + test_lbdn_device(device; is_diff=true, do_time=false) + + return nothing +end + +# test_lbdns(cpu) +test_lbdns(gpu) + +# TODO: Error on backwards pass through GPU after using inv(I + Z) for Cayley transform \ No newline at end of file diff --git a/examples/GPU/test_rens.jl b/examples/GPU/test_ren.jl similarity index 75% rename from examples/GPU/test_rens.jl rename to examples/GPU/test_ren.jl index 40dea9b6..c31ec7ea 100644 --- a/examples/GPU/test_rens.jl +++ b/examples/GPU/test_ren.jl @@ -1,4 +1,5 @@ # This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE + cd(@__DIR__) using Pkg Pkg.activate("../") @@ -12,8 +13,8 @@ using RobustNeuralNetworks rng = Xoshiro(42) function test_ren_device(device, construct, args...; nu=4, nx=5, nv=10, ny=4, - nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, - do_time=true) + nl=tanh, batches=4, tmax=3, is_diff=false, T=Float32, + do_time=true) # Build the ren model = construct{T}(nu, nx, nv, ny, args...; nl, rng) |> device @@ -59,34 +60,34 @@ S = randn(rng, nu, ny) Q = -X'*X R = S * (Q \ S') + Y'*Y -function test_ren_device(device) +function test_rens(device) d = device === cpu ? "CPU" : "GPU" println("\nTesting RENs on ", d, ":") println("--------------------\n") println("Contracting REN:\n") - test_ren_speed(device, ContractingRENParams) + test_ren_device(device, ContractingRENParams) println("\nContracting DiffREN:\n") - test_ren_speed(device, ContractingRENParams; is_diff=true) + test_ren_device(device, ContractingRENParams; is_diff=true) println("\nPassive REN:\n") - test_ren_speed(device, PassiveRENParams, ν) + test_ren_device(device, PassiveRENParams, ν) println("\nPassive DiffREN:\n") - test_ren_speed(device, PassiveRENParams, ν; is_diff=true) + test_ren_device(device, PassiveRENParams, ν; is_diff=true) println("\nLipschitz REN:\n") - test_ren_speed(device, LipschitzRENParams, γ) + test_ren_device(device, LipschitzRENParams, γ) println("\nLipschitz DiffREN:\n") - test_ren_speed(device, LipschitzRENParams, γ; is_diff=true) + test_ren_device(device, LipschitzRENParams, γ; is_diff=true) println("\nGeneral REN:\n") - test_ren_speed(device, GeneralRENParams, Q, S, R) + test_ren_device(device, GeneralRENParams, Q, S, R) println("\nGeneral DiffREN:\n") - test_ren_speed(device, GeneralRENParams, Q, S, R; is_diff=true) + test_ren_device(device, GeneralRENParams, Q, S, R; is_diff=true) return nothing end -# test_rens(cpu) +test_rens(cpu) test_rens(gpu) diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index 2e1815bc..3a70c97f 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -77,10 +77,12 @@ function norm_cayley(XY, α, n) Y = XY[(n+1):end, :] # Cayley transform + # Note: Backprop through A / B doesn't happen on the GPU + # but A * inv(B) does. Look into speeding this up later. Z = (X - X') + (Y'*Y) - IZ = (I + Z) - A_T = IZ \ (I - Z) - B_T = -2Y / IZ + IZ_inv = inv(I + Z) + A_T = IZ_inv * (I - Z) + B_T = -2Y * IZ_inv return A_T, B_T From d5bfd02728600ae3d69d471c0c1628bd9ce61838 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 10:39:21 +1000 Subject: [PATCH 23/38] Fixed bug with scalar indexing in GPU backprop --- examples/GPU/test_lbdn.jl | 8 +++----- src/ParameterTypes/dense_lbdn.jl | 12 +++++------- src/ParameterTypes/general_ren.jl | 8 ++++---- src/ParameterTypes/lipschitz_ren.jl | 12 ++++++------ src/ParameterTypes/utils.jl | 5 +++++ 5 files changed, 23 insertions(+), 22 deletions(-) diff --git a/examples/GPU/test_lbdn.jl b/examples/GPU/test_lbdn.jl index a19cc3ca..2017863e 100644 --- a/examples/GPU/test_lbdn.jl +++ b/examples/GPU/test_lbdn.jl @@ -48,14 +48,12 @@ function test_lbdns(device) println("--------------------\n") println("Dense LBDN:\n") - test_lbdn_device(device; do_time=false) + test_lbdn_device(device) println("\nDense DiffLBDN:\n") - test_lbdn_device(device; is_diff=true, do_time=false) + test_lbdn_device(device; is_diff=true) return nothing end -# test_lbdns(cpu) +test_lbdns(cpu) test_lbdns(gpu) - -# TODO: Error on backwards pass through GPU after using inv(I + Z) for Cayley transform \ No newline at end of file diff --git a/src/ParameterTypes/dense_lbdn.jl b/src/ParameterTypes/dense_lbdn.jl index 3a70c97f..5af8c07b 100644 --- a/src/ParameterTypes/dense_lbdn.jl +++ b/src/ParameterTypes/dense_lbdn.jl @@ -77,15 +77,13 @@ function norm_cayley(XY, α, n) Y = XY[(n+1):end, :] # Cayley transform - # Note: Backprop through A / B doesn't happen on the GPU - # but A * inv(B) does. Look into speeding this up later. Z = (X - X') + (Y'*Y) - IZ_inv = inv(I + Z) - A_T = IZ_inv * (I - Z) - B_T = -2Y * IZ_inv + Iz = _get_I(Z) # Prevents scalar indexing on backwards pass of A / (I + Z) on GPU + A_T = (Iz + Z) \ (Iz - Z) + B_T = -2Y / (Iz + Z) return A_T, B_T - + end function get_Ψ(d::NTuple{N, T}) where {N, T} @@ -114,5 +112,5 @@ function get_AB( buf_B[k] = AB_k[2]' end return copy(buf_A), copy(buf_B) - + end diff --git a/src/ParameterTypes/general_ren.jl b/src/ParameterTypes/general_ren.jl index 8689b3a5..4257df7b 100644 --- a/src/ParameterTypes/general_ren.jl +++ b/src/ParameterTypes/general_ren.jl @@ -150,13 +150,13 @@ end _M_gen(X3, Y3, Z3, ϵ) = X3'*X3 + Y3 - Y3' + Z3'*Z3 + ϵ*I function _N_gen(nu, ny, M, Z3) + Im = _get_I(M) # Prevents scalar indexing on backwards pass of A / (I + M) on GPU if ny == nu - return [(I + M) \ (I - M); Z3] # Done separately to fix numerical issues on GPU + return [(Im + M) \ (Im - M); Z3] # Separate to avoid numerical issues on GPU elseif ny > nu - inv_IM = inv(I + M) # Issue back-propagating through A / B on GPU... - return [(I - M) * inv_IM; -2*Z3 * inv_IM] + return [(Im - M) / (Im + M); -2*Z3 / (Im + M)] else - return [((I + M) \ (I - M)) (-2*(I + M) \ Z3')] + return [((Im + M) \ (Im - M)) (-2*(Im + M) \ Z3')] end end diff --git a/src/ParameterTypes/lipschitz_ren.jl b/src/ParameterTypes/lipschitz_ren.jl index b0a61221..9728acf2 100644 --- a/src/ParameterTypes/lipschitz_ren.jl +++ b/src/ParameterTypes/lipschitz_ren.jl @@ -124,14 +124,14 @@ end # Auto-diff faster through smaller functions _M_lip(X3, Y3, Z3, ϵ) = X3'*X3 + Y3 - Y3' + Z3'*Z3 + ϵ*I -function _N_lip(nu, ny, M, Z3) +function _N_lip(nu, ny, M, Z3) + Im = _get_I(M) # Prevents scalar indexing on backwards pass of A / (I + M) on GPU if ny == nu - return [(I + M) \ (I - M); Z3] # Done separately to fix numerical issues on GPU - elseif ny > nu - inv_IM = inv(I + M) # Issue back-propagating through A / B on GPU... - return [(I - M) * inv_IM; -2*Z3 * inv_IM] + return [(Im + M) \ (Im - M); Z3] # Separate to avoid numerical issues on GPU + elseif ny >= nu + return [(Im - M) / (Im + M); -2*Z3 / (Im + M)] else - return [((I + M) \ (I - M)) (-2*(I + M) \ Z3')] + return [((Im + M) \ (Im - M)) (-2*(Im + M) \ Z3')] end end diff --git a/src/ParameterTypes/utils.jl b/src/ParameterTypes/utils.jl index 5f96dfb0..2f2da98e 100644 --- a/src/ParameterTypes/utils.jl +++ b/src/ParameterTypes/utils.jl @@ -1,5 +1,10 @@ # This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE +# Backprop through I + Z was performing scalar indexing on GPU +# Ensuring I is the same type as Z avoids this +_get_I(Z::T) where T = T(I(size(Z,1))) +@non_differentiable _get_I(Z) + """ direct_to_explicit(ps::AbstractRENParams{T}, return_h=false) where T From 138420c2e5597f9b30a588a063097665e8ab7ba0 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 10:50:18 +1000 Subject: [PATCH 24/38] Moved GPU scripts to tests folder --- test/GPU/README.md | 9 +++++++++ {examples => test}/GPU/test_lbdn.jl | 0 {examples => test}/GPU/test_ren.jl | 0 3 files changed, 9 insertions(+) create mode 100644 test/GPU/README.md rename {examples => test}/GPU/test_lbdn.jl (100%) rename {examples => test}/GPU/test_ren.jl (100%) diff --git a/test/GPU/README.md b/test/GPU/README.md new file mode 100644 index 00000000..03db227a --- /dev/null +++ b/test/GPU/README.md @@ -0,0 +1,9 @@ +## Testing `RobustNeuralNetworks.jl` on a GPU + +There is currently full support for using models from `RobustNeuralNetworks.jl` on a GPU. However, the speed could definitely be improved with some code optimisations, and we don't have any CI testing on the GPU. + +The scripts in this directory serve two purposes: +- They provide a means of benchmarking model performance on a GPU +- They act as unit tests to verify the models can be trained on a GPU + +There is an [open issue](https://github.com/acfr/RobustNeuralNetworks.jl/issues/119) on improving the speed of our models on GPUs. Any and all contributions are welcome. \ No newline at end of file diff --git a/examples/GPU/test_lbdn.jl b/test/GPU/test_lbdn.jl similarity index 100% rename from examples/GPU/test_lbdn.jl rename to test/GPU/test_lbdn.jl diff --git a/examples/GPU/test_ren.jl b/test/GPU/test_ren.jl similarity index 100% rename from examples/GPU/test_ren.jl rename to test/GPU/test_ren.jl From 30f5c3febe654c610eca8b4f264428f65a406e5c Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 10:51:25 +1000 Subject: [PATCH 25/38] Changed my mind... --- {test => examples}/GPU/README.md | 0 {test => examples}/GPU/test_lbdn.jl | 0 {test => examples}/GPU/test_ren.jl | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename {test => examples}/GPU/README.md (100%) rename {test => examples}/GPU/test_lbdn.jl (100%) rename {test => examples}/GPU/test_ren.jl (100%) diff --git a/test/GPU/README.md b/examples/GPU/README.md similarity index 100% rename from test/GPU/README.md rename to examples/GPU/README.md diff --git a/test/GPU/test_lbdn.jl b/examples/GPU/test_lbdn.jl similarity index 100% rename from test/GPU/test_lbdn.jl rename to examples/GPU/test_lbdn.jl diff --git a/test/GPU/test_ren.jl b/examples/GPU/test_ren.jl similarity index 100% rename from test/GPU/test_ren.jl rename to examples/GPU/test_ren.jl From d0d5bd49bcf6ae104ec3da5079c5a09e9080a43c Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 12:22:16 +1000 Subject: [PATCH 26/38] Tested sandwich layer on GPU --- examples/GPU/test.jl | 46 ------------------------- examples/GPU/test_sandwich.jl | 64 +++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 46 deletions(-) delete mode 100644 examples/GPU/test.jl create mode 100644 examples/GPU/test_sandwich.jl diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl deleted file mode 100644 index ded3a918..00000000 --- a/examples/GPU/test.jl +++ /dev/null @@ -1,46 +0,0 @@ -# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE - -cd(@__DIR__) -using Pkg -Pkg.activate("../") - -using BenchmarkTools -using CUDA -using Flux -using Random -using RobustNeuralNetworks - -T = Float32 -rng = Xoshiro(42) - -# Model parameters -nu, ny, γ = 2, 3, 1 -nh = [10, 5] - -# Build model -model_ps = DenseLBDNParams{T}(nu, nh, ny, γ; rng) #, learn_γ=true) -# model = LBDN(model_ps) -model = DiffLBDN(model_ps) - -# Data -batches = 1024 -us = randn(rng, T, nu, batches) -ys = randn(rng, T, ny, batches) - -function to_dev(lbdn, u, device) - m = lbdn |> device - u1 = u |> device - return m, u1 -end - -# Time on the CPU -println("Calling LBDN on CPU with $batches batches") -lbdn, u = to_dev(model, us, cpu) -@btime y1 = lbdn(u); - -# Time on GPU -println("Calling LBDN on GPU with $batches batches") -lbdn, u = to_dev(model, us, gpu) -@btime y1 = lbdn(u); - -println() diff --git a/examples/GPU/test_sandwich.jl b/examples/GPU/test_sandwich.jl new file mode 100644 index 00000000..fa72d19c --- /dev/null +++ b/examples/GPU/test_sandwich.jl @@ -0,0 +1,64 @@ +# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE + +cd(@__DIR__) +using Pkg +Pkg.activate("../") + +using BenchmarkTools +using CUDA +using Flux +using Random +using RobustNeuralNetworks + +rng = Xoshiro(42) + +function test_sandwich_device(device; batches=400, do_time=true, T=Float32) + + # Model parameters + nu = 2 + nh = [10, 5] + ny = 4 + γ = 10 + nl = tanh + + # Build model + model = Flux.Chain( + (x) -> (√γ * x), + SandwichFC(nu => nh[1], nl; T, rng), + SandwichFC(nh[1] => nh[2], nl; T, rng), + (x) -> (√γ * x), + SandwichFC(nh[2] => ny; output_layer=true, T, rng), + ) |> device + + # Create dummy data + us = randn(rng, T, nu, batches) |> device + ys = randn(rng, T, ny, batches) |> device + + # Dummy loss function + loss(model, u, y) = Flux.mse(model(u), y) + + # Run and time, running it once to check it works + print("Forwards: ") + l = loss(model, us, ys) + do_time && (@btime $loss($model, $us, $ys)) + + print("Reverse: ") + g = gradient(loss, model, us, ys) + do_time && (@btime $gradient($loss, $model, $us, $ys)) + + return l, g +end + +function test_sandwich(device) + + d = device === cpu ? "CPU" : "GPU" + println("\nTesting Sandwich on ", d, ":") + println("--------------------\n") + + test_sandwich_device(device) + + return nothing +end + +test_sandwich(cpu) +test_sandwich(gpu) From e63d82c7bd337456c62d333a9ab2374392c31201 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 15:00:03 +1000 Subject: [PATCH 27/38] Changed MNIST example to GPU --- examples/results/lbdn-mnist/dense_mnist.bson | Bin 227111 -> 227111 bytes examples/results/lbdn-mnist/lbdn_mnist.bson | Bin 258037 -> 257956 bytes .../results/lbdn-mnist/lbdn_mnist_robust.svg | 326 +++++++++--------- examples/src/lbdn_mnist.jl | 28 +- 4 files changed, 173 insertions(+), 181 deletions(-) diff --git a/examples/results/lbdn-mnist/dense_mnist.bson b/examples/results/lbdn-mnist/dense_mnist.bson index c58f2f013b47d9ab2c4d27dd1eaed1387292169a..c38d683f41eb3566da054b4c6505358b25adc72e 100644 GIT binary patch delta 204722 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%0A=}D2fc-PzPA@`m>Xv2n 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

siU+j+a4LF_*1*xWyfZ*~ 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 D$c|p% delta 204722 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%0DV67XnA-%6wQ*xIeSD| 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 Z8CvrcP=9?A;>02_9ej6fFjCV?^gq7A^E&_l diff --git a/examples/results/lbdn-mnist/lbdn_mnist.bson b/examples/results/lbdn-mnist/lbdn_mnist.bson index 8ed18eab40177809cd2729a83480ca546a1d2ce7..830d20d875bc7f773711505d1a984dc5b0083b62 100644 GIT binary patch literal 257956 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 RadPnkDg%b!5Og&I0{}4PV5I;6 literal 258037 zcmeFYc{rBe*EnhlN#;f>QK6AcaqmS*q$H_OQmIr#WN02_mWU`3B2k$tB%XUMG>8;M z8juEx(mY6|;XHl5?|XjlIp_Pn*ZJf3&$+I1|MA@W*=yZPD{nO*(06&k-8-$hOdLq*QV~5p$k#t4q zZ##eK{kI+N{1=kue3v1lgZt`QF$i3$ATNdi$(% z_Y#8jL==TEA@c?bU;kd%|3B~l#ruD;@@daM?0P7C{ll)m%nbNPhW~id6D(*KxXe@Xp6mGti)O+R<9K;ipe{r&TS zh?1U&g1E3w_=ryz`R|GS4;&E@C4CW@f8mRW8;Dp7iT?N0o)aSd1NpbqI{fWVS7hG* zi1c5Er2ZH2|7tV-PG~DHAGZMg>B7=~%(@x>!W$xdIryvz^bfFe5A<{MvU3mE=Hs`? z|L@FE5W+0oH~YKWT3FiI|I38^Cr`G${QsZ~E_eTTGPwSi8~?3^+$eim;O^t zl&1eL`}!}dZ}OKGU6KDuGKzmCzJG|0;=y4EV8x;=JUa%K9PMU4$JL=}YZS=pI>VKt2dH|)D`T(J z2+Dm?ejuIQw zeF$ca3;@pyU)b)tF?3SvI31LH$8x%JU|~!pX6W9=-lfV+#MO-2ejkMSyc=sP-Vf*E zWjRl2QCh(Lz+X2`v&+-mAYuM{6Lw#lyLsX&l^iv|ZT85k-jJd(6I$8kr(Im|jUHAT z+-Um4ub#Krwu4E%UPFuaouoX418l!eADcu2sAJ!B+Et$qZA+D(CE6P5Ti;>Y zyF*ytUP(^(vglk^p2$O4H?twe&r!6#5({@&uvu{~pAFjvu2{x|_K`r~0z`j4kRjOBU>BVzgm+Byjyjz8#jTeBc zSH#3hZ+f-!Djw-lf)q~|jN^`Cq(BB-9T>#iJx=)^518ATr7$9X8q*wQ&TJbe!H+Tt zR(E+H{4xJwnq6p2>tr?PQsWjZGAhSGSEbmkXGd_oVZIt1?lr);6(AP1PNEXGz@eF}+&b#lO8|iEGz{gTtE-n0@>ka)}k#ADM?qyVPLpA1iX2Qv`v* zd2H&?SZ-h0NP4)todr$dVVbiwmA>16^WqQFrQ6H#m)v{wUpJ=gc1}2*4Ku>);ycK3 z<688o(joaX18C3$b!d4lO;>tX@Z07!G0hDIFr1lz-rNLs|E(>o0|nYpy@}m&3a7P) z)^fXp?(-*YBB5kO4%SE}!OvPZC~}Y>*WnYu>3JSro%m4T=%Y&U2TO3vL=l**D~dJm z2GDI^FLE}Xi=z%KhV{?IAiGEsY+7|d>iB-4UeAH()S)=Sq8w<(IgANbfV!{iQ4 za9wX<`sR-(iLM+EMD$cfmpFMX)+G1xblNjrf|*>Bg%+Ff zv|q7^RnM6VhG(L|F?z6BZrdmLRy&?juIfNS|0?Fuo5mo05BO#K@ty0xVZ37kjyN_8 zOZP`m{~0OPKY1Yd-+aidN4SIXeIJw=5XfdKAE#SC^w`ifRb)1DBC2fnu_-FJW;=Vxnu_HwsO`$2z^eOe|ESe^9 zmgL3q}XYqq0MqCg#N<{#p>exCrp+K#gT2RR6ot`%6d%2W1JS(?iV@aPalSXgnG zaY46mPE#bU?<}Dcc^Z_ub8toA$r%-G_Rnd$|wPvM0H{4C8VteJO8k9KC)}LmK_&VEOb2oppc3$!E@@ z<&CY}lrg8^-Kd$cuP>M7q^tt7jn!0QR0`jhDzNm9tNiFQFIl{{61WVHrRsSDA>ntf z=~%tBl;!>$6&xe@)dfQ+ch&~JR?d#dE8!Zf6z7<;-VrGp}&{C%-szFlG1o zAa}l)70!zTwI^fAA+wIZsk=8QV{=&4p$B!H*^Lx#qNQnjuu?^CL3xmOTw2K$H{cQF%6I| zri`s8S$ywQuHg6x`u6TH?tFNMt| z*J!}{QflVrkn(R4vOldtFJ29Y7Y=jau;WI2T=*Cl4JyXHgX+km&64(hy2wvFZ2%jl zq+$0l0SlkMkeAGeWTE+%P@l2|&J9hc_>hx)_ml>DYj&0VPW+^sA&=-y=3O*myJ&~5 zG4+4(haIhMoY~h&82T`dTdXYyQa{t#kTH|_ZC1lU>+BfvjMs+AtKTyZv+>yRCzfml zN6BVOFwJ`8jA5c2-JQRHwI2V)CtVHW>i3O+*Si;x#Sd+|>!45Vn+xgGlsFcvX-2XZ z^3+tNfn|7$8T_zMSvY=!^vLKl#DiU{LP1<)ZA~wFL$^m_+r(>E7?ln zLT@E_JZKT<-N^#kIDM!*c>%Yri-91vfksz4(;KDJtogke*P3Jk<<}?EQduR6Z4|3$ z)VH9Jq(ll@;?1pj3e+sGMe#DP=%w38lo>pUM3Qv)^u}5?=zcC9cV0veRUe>GS(eI= zw=%~%MOv~#nUa0OU}#Gft=HOt@9ms1rr!Y9PgH?Ipr^51LOjOoL`>{urrs(QdZ5BtFS#%aLn(k|3`xfol|=FzEwO{6O?4ejyI z$iX_EoOOdpqx>pGEq0{k-KlgiPYxoE=+c9oGr_CB8}It6Q(e3z2NSAcS6Lvqmn_7@ zS!HzjWF%SZMZmxzA=th54)dGZWV+AuC)Xkc5S?s5>Z{hG!=g6!DqEKi%FN{T4KtYE ztvu?F4#r2nZ)5zzUo`$|Kkt>N!JJ2H;p&}k#kSUmWMY5BGt@I_G$^c5vQw`?Uj zo1et(hlD(`?VyhOC)}Kiw{TTq4cncyn3vXSWjcPPaA^8iYV;Vvxfj~Q0GWj#lA;K& zW*;NJj)xc=7{WeuRAb7dm;6*$B?_v4#4in+K&4*!uwm~6NJ#4BZz;BMgC-i$bJI1j z;-?18?^?n{6jTH^1Jn4!Uk^Z;Z9bno@4E0&+|hwCjbL^&}i;tfuFQ zifp0d8%|v&6vx>uquYnQjQ2&~;aZyxV~J5CnN2%}{&)A%?Hj*g`X2@pJB;}~hwfp= zRxz`k(-r7XaT(f;(875#2{fy+4^3UqT+=ug&nzzt!Ab$bzu;* z?&@PrUgfBubO(Mnu7vv&Bl-Rb9pD@|RiNVTPxCbiG*4uM^GXA%J-8UgZ}`FXikt+K zwOM%Nvmsc_Sp`dVELhI;@fE%$rv({Y3OA`-kxtuR!&CXgAvDI9^_;oP^=E9u*mDNZ z(3b}-)3Pva45R9u??@-OOJH-~gTDN6q%zIbT#!vK^V+S7R$=w*T3{o3KKh6wdUa{z z6BocI$VZglA}#$PjC~ynA13MJtaKZ4`(g>_?~KFoLVKnY=R|FFgV3eahD7HYvjVeJ zyw&j<=S;jp=R%(0kI9K>&3|EeQWa2IvL0WDN6_Pwy;$dagu=N{EHHPWiwft-wKft9 zTZ7qfks%OcJ`^UO+s2)3Zh*yuKI8O1O>Dln59}%YK!QQx_-q% zp2#3Ttr&v8>=nA$M#|8+TsXsXX+vCmnM|+P-uix9<8KJhosY zyBIK%rrV^Mx(2YJeE4Z9{yLuU;o_v0LVz;Sr+gK`mHIbs7`~_(qbxdy7e(uIrebaL3H|()o zA*S|ErsOfktUp#7y2Ikg>G}~SFaHo7JcG#l^K>rb^lMh}wv4U+eT2PqIS%g2A}Bap z3=T1$iDm zO&!0+K#hhO9E^X7f`Ty^WnD%id)$D9j7EXhc=!;y2O`o0XyD$>*7;$y}N5A%`n5ih-8#jb7k8f(Uuk1e6 z_KYLXFCS5=+a6@Y-}3RxFT%vR3-RgGEGF6K2LlVQvZCtg@G`rbS$<0ZlcC?y#n(^} z=vju6AI~#hQJIFsl(1(RVEE^{NYToz^Kbbellp zf-9spycs=bN5H)kA*7x30vrDff<+x#Fj%FR-BIshzt*>M`WHU%qfDCFusIK)eU>`! zp1%ereFHLox`<|ZUxcJrXKBJJXY%P*gad95@ta;3*?Wgz!Oa}Lm0M1F)|yOow;Pik z(!;$ypFkB~)99GqXr^QtPkZnRqR9~MLu4ov98#nKvSaC%t`mi?QDx7?GO+T&DcB~j z0$UR%gKKUCEGQe!Y>J9;&HR_Jc1blw+r{D|$tC2LqG>wRs@?S4!RLZKF@5~0&4<{J zbvpD^>jim9*})R=5GHe?A6p~CsP+7Qwk1Ue<~~$q$E~B;nO7n3(O-MM3;dqXalw-#hT)$GLb2T#k<@v|mNa2*ZTy@P-oGKju5 zeZ-VkqoKL|14--;1!mc+4>*AGFl;aP4~RvUC){>1h9s^QeD@7d#J z#q@OgaN7N16CE;(L9N8X}Y7#pnXie(prIFU3K2(;L2E?J2fM zRF_51)~0y5Ex3GT9w*bSgbU4sSj3^%yljUdq^=5uj}8bTSq&_w{s=_JjWqi%vJeup zlc4#58ol-Or6rem)VP0`xSDZTAGL_8rrn^HI5$Y$=Z#vex-4HW3XS?aStjqt;wL|X zgrg7eK&Bp=H$lE8z>?Qy#p3uRR zXBOl4Bhu7o5=)q?MDto_aivdO=!AtN>b^ZdDl7F#_GddwyxNZQ_r}txl%II^WGk<9 z`4Y{k&7r;T4KXC|1-p7}6^r~PoWG|kSn8QcP`h1{b+&b|XkBIKSJ=ud@2-T7@5fp3 zE?f2?B!-rF_w$L}H8keVOpJYwyy(&mxTjtc^j&OVrPl|3ZSO!p+xuAE=E(NUk7WA! z7wG7U6*OJ00H>^IM!S+~?Ahu9o=Y>q?{FR3>gF-$dC!Et&Y?7E;W3=>>ki+(Y%z1s zeTRRFO<2UXIR3)nK`=IK3VGPfq}yh1O?@5(u&{b(d{Q=?TE;qKuUiE+pBTgsiF?oY zkB=l#*k)#v%Nh9EpXT8Ro$tSDXZlK)Z?O+kl<8Cl=u4sEtzBEzb9&Givnk^VF| zJKKa#s>b2su21}}<|$NjD}fucT%0p|5d=?Hb%NP>b3U*MsEdIZX2K75)Gx!o1XVD0C~(x&vaIt#&O-mqK=_Y>lam z%WyirD~cK>iBiSQv!uTF8TR=IeSMq13B4sJ>ByiUx+PnKc|#`C?5bU4-&n(C{8)qS z9ZA^gybuiR*0V+5Gx;b}Z&Q_<&8Exc*5I^31^ldPefoGv1!5&`up8=&ag$01V`rs6 z?#DN@7as<`MSgT8NE~vF9vMB9eWR^Fg( zOZf6f@;W3LlTCelI{CAA%c=OI6s6pbp(m4{(y|jjV8{qjcyUgO@1B&!*2m8w|M$`C zzC;L}KH`YkYZl-``)HPL{R)-eG~v;Ax){(LL>InBlS1BSv`Z*LiK@|56qUd&y0(c# zXNW=C<~r=Wv6Du$$^Pr17OfnT6|;dD%?*oD__fy55+gp@+FCYr#S^oyjGA;?B7} zz}MZ&(Xna*>5vsW`S}Moa>G;*nI}y>>u>TO{N3ogqa^nyM~S7Z6Yix%CX=)JX|82L zE^0p>1~;T@xm}U=bpP^T^7HBEE~%-3cF8cp2XkP&a~yumItfKv4nx-63O2%0gOX%o znQvJstNgr+_7;_}1}#f;I%7y;MM~gbTZsuzhSB)MrLd`U5<9(Mq450Zgf@a64u`cc zzbA2E(RK*V3+-hiDPu==5Iz2VgWN~Au>uciysX$^dQU_P3ciIxOv+o6-8y-KiAJ|s zYeo-tooc}yvm$WN?vFUU?HqI56HY9D5jQ?Zlj2t+ODqV6MI~;en{yDCHYMYGC4_)O z;mjgsSm+Zdo8M7>s#W|FFeB4e_u{ zHZIBO;=Il}>|5p{=uEUCz01#->7WGC*{~6UhfJs3{o(9X;#hX5 zOO4g(Dbc`r3z@4X$D&6R;E)&(YF@q%qU4HjMuQX^;CK(+l-p@kPCxUoG6c^tGBo(s zex93fQs{F$#pkyl#K$-9vG-jEP^{tr<*(fhL%vLc&e8{P^g=z=?U11#$*W-e6HOB7 zFUL2ZCczVdH@M!=fQ+JDK&P}oCVc``N2GyW^jh9Yb0RiO69damUiX}GSj6*kP<$FJKj z2L}f30Hrt;`1vh@oqASgddEbR&P6v0MpaAGESo%tHh#g&`cJ*oweC7AH4ouxRvxG8 zf$v%Ghb@q)^?+B~8UnTR^l{=B6R440%37y1u*i=s)Vci?91S#pf-%{kkntNuDtg(w zUsfzi;s~SfH{k?7z%2cl7U{puWEu^1oYlu`Y`nQRWZzgw`_jyyaqJo9+Mh|AvJSAK z2uoP3KMvxSH<8Bi02)#RY?+i29NsA0w>{USxy2F{dZKSxwoyOLvxs63gKoi1!v{3} zkDYnpUOCGQ%7s?dk$6b4TxEP)KkGwesbHQBrn z$5-2@LP&EI9E!K4MX!Bm@54*w$I8{AVxJwV%my!7xO*-hUTg*J=67(TTN$keUp8Ll1l{}4g0?so3P%`Fd0{#< zJy-(CyROW*R+zwEpU=j&f+d{Y9sG$nfT;T)^p zBSx7)#~`H2nrZw@z{JGW%wUBlT--(6N##!%GsltwzS-jki7ae7Th71iy~5-?KXZ4E zWnkB0Lf3njpsxLgY1Dmr?qZlYbjHmU#vO)`=yBrJ1Fs4cq7Krh-LG(Lf)62X#6F{G zXps_u^E&dWqqhJy6-tA#_ezQY0dGHV8eCh5XzW5i{% z*3vK06yEGX5YBAgOZjnYq1#`Re(YYu1}s?)=G~!G`@x*l=Lg~Nn^9mlya2zK-Ncgy z{-%qUD^cF@X}BUxmQD;UVsZfw&@|@*KXj=3Lv??KXGL7QKC#^GR#WFO99u>YJ4)*#vg^Y`fae(b}$XGx2CE=QqccQfu2WA z#ki%5VPnlnwr`=MU}Lm7>`2jofuCp7R=t@pxHb&Zofff*Dch018^#S?GmY-;mm&q@ zLBztY;(1jy@<>23OWBX98{c5_td)H5o%h&nZ9zp{{cPTi&-fyII^9`11(qcD0jQ`Ne{IraJvJ zlOpcfYihG~(A)WK#&5<0o&F?Jx z18Q`xZxIvC>BJk-JLqUEqd=nx5P3xzD$0jZb(}Rwjl9EE*H?g9P7#=Y)PjBEs?aa} z0=p6~2W>2bIoB)FmCi?8zi2O8F+UA{H`~xNp}(Xj^FF@XIt0@B=~S@pIsRPpl|6X+ zlUHw;MpJU1<9>q#IQm+fnmoi{t8O!YZeSksHC`^HD+hze9pKd8CUD1I^`oNJCN?1? zoW*(`paSnIcI8VEY1o}3@Af3zvXq0@T4zy9Q4%U6#!&H5J8B$Oja&E+;Ll~k^fYhq zPZcGXNjqqb$s7KDTL`G#Is%V1Kch_DH9T=cof*v@L$kH^gL08REmZo&97^|LVc!Ib z@Q}ms);TacxEuQ}Ag)`XO1}3ea$c=LCo&*xoi=9CKnvH@^R%9hukvz#Op zuA<@~KP+6^g-_gy(W-Yl#Cu87oopvE|JB6}SRl+}&=v;;%^|$~&8IlT^)RQi_$->K zAH;sKj^nYksIgeW}XxCY3f1M-YL9#Y6J^$YG#S2>)EX3 zgJ_Ow6Lmker8g#{_@V2}*}2;HxMoism#PqpK}~}Mk!h?2rx?KVcgS;z_gT%eJ+wZWlM6c#^Aa0_%!oS<*}wD9RWFVe4}Q+3ZzJ6G{WkCYtPhKYIS&I=ce1(fmXVi%3jO(- zga)!kXlSCu-klrIe)>i+J)cSh3ZSe zBv6k7-RCXL_mnNW4zU>Bw~ZU?^^hq?Mnjc#5{z`zGW!+P$-FEJss4U8%{{_-e<~#fMI+X-L+4Jwo7Z{F15f;7>Ryh(>ItQ9PY50Xdjb)${Qibte6TDDSX!7*p7S^_=fF`f{4(hK| zDNbt;=#Dzc^zLrw>z`@Dgh(wawN9m_2CYm?s*)s%ucFt992&9hAg&)`hS#N>xtC+3 zK-wh;*4c~0#k9q+qyHKleOS$>RombNxo~Fuyo3EJ%HsA03low~g zTm7&2>;4Y-ys4fIp+-10Y!bV%QUmxSCz(~wEY{%N!&hzX;>Jy$#&Uh@`E>7z;J9)c zRKBjIM_T6a&gluNzP!)7Ughht zYh3`p>%%+<*yn?P_UKWp+gbc_=P6riEDAqUCE25EKe@-lA9HSXuAKbGJzz3&E_z+x z$|7c;W8x9QnBBQ}mb3d7Zr*D^#)$(dT&-j3!9R?fhMG#B)5p} za>H&P?5ND2q5NCkG@#`(o4NWJtJyl1j`c_JWc7yyPrAewh{ZzLM6y@ zCDS(dL147y8NAo+_t(`%uhXh4%3@g;M?+vJ!qMq!A8_Mz~_ z&;_;ySHrBCe(-DM3D(v+37-26rwQeGWb{;yM2;_HOJChYhmw($p8bly`zMb*EM&o5ze&-~5`ny7Yw<+}mxI&KIXzY<(0PA9tu-GzMc;r)~&dz2|NyncQGYc^2 zO*ZQv?I=8B?}mGIMyM5?%+46RW`}#z>Ei)o`1C-ZFK#a2H-%?|tA;0Tt&Cy47z1)& z(&*v3``p)(QttElVJIUO2&(5^^A_=T_#)R22gtu7``~=?$cmx9_9JMxWEg1Ddv?n< z8TQXO0IQN}cq-ROhT9P46(ey+o(t%FAq~?V*j=Hbe=w?LABfq((za)oQR=d6z5N zl*=OL>cX>$d0=4E#tvVpU#2h9MIg#Q9VYHoros`uc&xLX6*t}H-picFqBjMo8}JCn zZSBT@J~^^b^=C0##^GK*lBI>G2-m+fa#*sC?iLEryX+{9&-#RWSJtt$VrrmQeHUf3 z^kK)kU#zO`GMgQ-0&Mo^u=h3J*kH5s^nG+8T3p`C+TR~$mf^Vhv~F=*!k@_VM*`{4i%9E;+P;(|3Hv?`b;Ew@anb>1&CkJ17yC{wkuc z-%dfvGz%IwSe@Nna{&)!$zYm=14%|YQ2x-n7_ZiZ-Ov8;*&Bq;@lX3fVV^zQlpbap zcHI&-HHN~O(NodR(~KPUTC!g={J64XWBJZ0+Gr*DnM?OBHrbw;Nils|BxR$_tUqo* zXfz?417}gCNEyu=4-pL|SbJe5g`GDspy&@WX4Fwoi&gkb}H$KMSd+M=Z zgCz9LiRLCM#iOG_5$SuMqNihDumF2)7^W4*5{#VSSE!>&|K@kt`(z54jy^!I!=6*^ zj#!g;iyib~%mMgtFBu<>Y86-&$1}RG4;mXo!FI}B9R0WmRi>__ld{g#;=7V!k_=(k zqLJ*(E)O;+xf?HbNt^9ZQ^faL`gCXRV_fxcK4f27Mkh>i+%*VZ`gnk<`&{tAJGk{pnz_b2@}qE`T$Sa!tL?NwZyTPE6@kAm#3Hr=8vp zP-Ff!l-Sjbu<8pg+B1WOMvaG85)CPHJ=O##|xvZ~dpaCuob>-#X4?qvlt$@n6Y zBt5WPl1wK?%w(6we8QyqcGF2#5*2S|JHh8|LEzXVLcTW@NPf#>)O%utI!izE0qi|Jf-6H@dom+mm=$W7y9HLNNRUA;ZJl8hI>wC76D3Z^3X)^`MsWP7?nxJ z>>b;7QKVvY-z1u+4dj|~iK~1(3yXT}sM0f=rb`TiTgu09OX+hqdT$65Iq3-Z#|;K4 z6$Nbkww?1&HlTBQ;?y8|fw^gB@Szf^ID6Y}*8buUDonEnhaV$BH`*0t_oTBF(@U&p z<^n2Okx%m7>a=%ow7|}L7z!-?S<9mqnmSp7eq343uIGobjx2RZxzxmr#tufq4{iWM z!oW7a7_T?ar|hBfQ2FIGzha|+w^i-}$!0mqQNPI+Jh{d~GSa|C`U1Ex=hPljPqCyN^H6GWIl|vApAKew3So{VN9_<)9{6Z1 zEiGtdYkxMHn&0Z>q}#q@>ehj5tuS}#?o%CV@3Sr^*>XDZHW>r5b>Wm?2HdH6jjHQ~ zd%7he;J>|vE{PqXtc`ZO-Ma!|3~3w1Ms{Gd{6sR&OT~v9Dlsvn6)!!x4NYn)_NW>-*gt+mXYvr8?k{SuDqCj;9%qvS|Oh8x)wBK;m~_GfCeTc1yj8IUme7ra!XS zJM#p*d#%mf=C@$_j|$vgC{H%m{cxe&bGFfpsboL6<;ueV2^0{GS?eF>Yk=J zeMJyN?7-PcF3=JG3_T7jK=^`V(D!N|9e#6|Egh52uj+IZcL*1p`IkS zFrNK5mch@A4q=s9cQ}vE5S+Dm1dO}*3ZGmZ2-1FqY}0rnFx;m?LsiU4yXu^2z;0Wz z02yl8?!@J+i{{r9y1;`qGN5o&44Yj$*#@UBbm=_AR#-c;KPTcr^3fx>F=Qub*$2|m z8I7=6Lz8XXAp@5qqWPc$oxIup2{ht)1v`6p6FU`s2`5e4Mpq)I(sxS`430cNiA$5Y zXWI*z_mpoic;ZRi6T?yO5Do0HtEVshBj}+pH`J%Hh%dQT#rq~mFwyMTpSG0gYa31Mhk{G(2GftrK#g z$mBfp`_>H3G3n4D%!wLscR9QodILuKd+8KL}N#Q=nA;j>+;e zDLTAQ84^1`mZQXE8gRW5_a-cbLb(k5leCEX^TzQJD^}66;7;1S$bxaJ8`+hx6CgcG zf!1zL2GxbKU?CXDp6hDE{icg_&}%nP>u|d1$&tcQc{W}*l3h3JWb3AkBo%k;Bkzlp_C{o$x zMWOmb&3@nej)x1UvebodAb!w27<=~wdcBdWsD`g>*Jy7Rnev95T{e@yCWyw-65gWC0px}81d;Dkx`x-X~tL_~naq$wiVq*#E>pteH zT+c&ebOhIsJP*>9mebEzRdO_)gTX^n@C+@Xy@q#qw)G$#nY)+RIytEPR>+`57^6Cn z3+qzFSm(^C^r3kiy(y4~gH1NH=0ex^8{bqTmy1{T40+>7Q6IS zgN$=-2@*tZ;@c?zhUfbDoxfI=ANy0t%yZuz#Q7S}(Xg-s>#K!p zfL%OZmbnBXGc2iXY#6V6(Hd$l#6pX<6peqmkLy*tB+OfmB5AE4+H~Xu+hsfgtU{w; zNJ9>2UFRUWWFtFNw~%_>RH5$uBzT{2m>i9?;A;3l+P!oeD9iV9msItH`R?)HyuywT z8F(Fbjm@VG@pdG^dBTc6YNT^E7sPcR3L>OO!w$7%)-W*vpDHh7KZd(N%E?wTSddM& zGdf9;>JeZ0viOiTHgT*2RrILAZ;4iJz3CfD?9PVw%SSO8IcqwxYCb$#EnznL!&1mI zPh{gBmQhHt9E}mYM~QFZG^#uq4%f;;?BdJxL#S`7>$72sLLaw9U6OX2XQ0f>n{1%g zZ7w4!lJ=e!uQ>2vG==Bt3HJq$Kp{7id{muC|7$#V=eaI@+PRsM)*i$!{qfk6bc||s z#9(0kR9>JMLe83Knq5;uT04b#v&+-S|E3iahz0XLdOw-H{sX4qqsLYn@X)@-90F2H z;KR^DST4-7uXI;~RIeVqJ}HK#=qnO=9>e7DqY!s-a7ApKlWBXiIdzvdF`dLTykvWo zMeYcLH#+mF(DXN7a;AjhvolF(u5qkU8N2(af^I#}B754yUNBEMw|)(~JU|&>`zZXQ*j@Q z5B$cY=Judwa0ax?TCfBc2D?>$vZh#h>aiU|s~5G=>Um*Ia$y}dZu5dep9h-V4RQf7 znRafaNhn-S65g59E~AJSfh;{Ei{i%qge(41W@$gI$k1aHZnxP)M^C+m_uK2h_(Tsl z-a8FGCr(n!m~3`NI+yuK&7k(Tk6=?=E0#}ifID#>U{<@uoa=?X{zf9|fqSRgS4`2bq&btVz}IVxdpR zj7BKda^dM#TuG!iSNx!Wvpwzl<7;zT-xP z9Z)k!LjpR3KQ=4rU)hwEZN@vEhwZh!tJT+0yz1o2WK5}N|`#+kFP>O`E z`euA+*-myNR&%4(R4Y!b52N$L$H8>fj@xgFkAB*Y6Tn&0qT0%qj_~UseqRY-X^zGyqZs~g~5SNmp=mH;>dm{!GUOf%o zQ`NzDO*05;k|?t@i{^HgQKPjM)zchWsgOwXZRAPORhecUj3Cj$!)Z=&9St534)SND z1j-BKIrB%QH0aNKy4;#ZIt?`_<1>a@rRQQ%djtv^f~jqbD4^9jHgSt8-TJ<^g z`~60=IHd+p)Scp&bPDLo^l-A<`VD`zPN(@&Q>obf0DdlTrVYybg*mhrsC|)i#i|-( zR`P5V*>x823))kKceUi$Lc7m6zxOyjJSIy~H=1$yolsiq&`KH3UN9>znrzRmhEnCl z%r#e%?5p3?m@W|tD#~S++wajchiKBT67cOSxV z8_SQhZscXWs~w6P*4`qgmr>MPeUhu#YE3DIq7|D}>*(z9;j}{34)*7KWPwLDsq*(W z@OT_+Ix3-)yd{cBbkH?MkM5(cSt)%zf7>*;{23Gtm4Rw*7@QCDWrpL{QEEmk49<{Y zY|tq%`11f;CYrJDNgR~?8iUR-8*Y7CNhgZDY4PYQ?C86}@H=TMdnGed=mR?q=c5ep z`(``x5!BL;4fuJsE8 zrymATA3P3ruTY0sb0op_=6>d4XaZx09|XC?gQVkE2_wD4K>X8Z+`zZuLTNqvwdE~x zJ6!1Vt{eQLFe{weE?O~U*DkoVTLd!omq74gO$by91N6Tk%-KH9RONXXF;@wA3TGdO zR^VjHq}XXPTykbQ{2vsZhd)>U7sqWW8lUt z1xO6&p;ZS?lE}_jv-W^`w9G;5jHn2 z#**!HS*l(5jz`g<=S3H8UV9oh zubj!U`$JfsnUFC#5Q3WbqVVdJYL=xv(#De?ZZkedAD1SIAk#$)e=XUIYgGm_p9PcY zlm7@-c~y@j$Jw#H*Y{!5;wn0*epRS}xU%Bcb8zBVQ#^TKJaV&?Y?3ccXNuLu_@ea` zdjI{5l9^^0Z*U&2*+0f7wQW#yzEqr&7LG>?K45`|f{md}8@|{VMPL?!9=Ua}BBqwL zy2X+84KpmX4J603Y|dPJ7QbPx1S-rgv_A2w26om*V?c)?d-m=Hg|&S`F8Mnb2g6{D z|6sPLvW&daJAs$;H0mzchWvMf696)ahQa(@j6KB6tmAR zXIQY;3+pD%nHjfj0G-%Pcv2vZZ=u!4i(Q-do zc=_QvUmiRhZR3Z+yG>Tm{a-%2*`p2eYZqWz<3%Pfe~YHBTZgBTHE>$hNtXCalCM6Y zf%WFE#N89R+1{PLtnow$<;;?Wo1wj+_hb?V57VM$4@C4%E1Zg?K8jvmnu5FiM$k$9 z1Mq%<3x+IAz%^g@)8yMT*;u_Q7}bBC)&7zd&l`V=mf!xudSz$R_zw9>n}fn$IU*B6 zW}oM-JvhRQo>zk9g(_}RlRo_4N z)*Oy5CXj=CA6GYc2nM}4g$7Z^@F}&257=T&b;bcAkZOeYpF6oEj|}#4P6?iIc4I+r z9&@7FBKBZUKId%WMt9DgM)|b`IL$wmJ^ijr8&cxHY<3}Qt__u%ADclhrE|g5PGJi)2_}7tYrTSNZl}- z_ZVSLD%z5*Jjh&stHf)%Pr(1*~go6wo$f)40vJ%m?Cy8BK zCNPO{DKNr>aQ4NY@WtAhjXqt<=5Cw-DqC~m_&FoCTE>W(%zwbvhIESMttQ}&XX>X8&j0S9Lq!0-*62rg<%L{? zFPkglDePZqxa{6!M14PKIQ@&`q!n#a&vvla*#p><-gL^!U%>=13XR;6$!~~x%M$z} zsbQ=)4R}<>w4SE3f2VZWlc6T0tt8YYZ+FA@j7;3}st~2WN1J!T_yhTl1B z9OBMVxKCv!>U2)Wf4c^wSN%!6d{GJqPO+ki&Wl8fITqsF-2osMA%nVB;bc-i4(SlP84Lcz z;jP>6!Q@3apMBRCqH`R{?#d~y`$!!Y43eh#gATIyVt{or&eVumDAD$XUmIade?@^J z|8gMSYzTir`7Sds97;Zys(JlNWmz zJufkdkoQb^wlrnfw!jBff0%Z2G5BnV;g{#>ustqMnaau+?5fsvq2C}$u?2eQ@Z=Y( zeX@h?Jd;PYg^x(L-;vw1u31=5WJpEoAbp;9kiLCAPuI1o=snr9!Da zDT4mkl~K)uG8%j72-RJ?O7eH=X{&i0iPLlFyW&QQuvMtkc{h||A9~XB)O_*`8$u$b za>||lm-!f|a5g8#Qc`{z%xvw1guRNee~$xXPE4n+rRJ#F`-Z!%eS!J5{l`YnU&}A_ zOc0`2zLfmj9@5o($TfQ+sfg~<@Q896ey^00LfUCW!vl&)RP<0HO2#tH^I~>9L=+fSpR`2=&F+@E+8HqssT&y`r{_~7`(+V;Ilpk z;3AJ_=oPdV&yMXz?XO4i!JKz&isde>t38f4nnKXEJ0Gg0pW(BAci7V9uUXlOJ>>7J z2si4t(Bu6<^l0!QPIK7@wtlGtQyw4B>dzhJWu^AB$_F`MFujgNpLK;5r%kzoHS=)R z(iLduJPY6I474#Ed+JKS@=29`ZBjs^v_@(lNvz98h5yhVgYU5t zLv_a4__z$Rse2cJ-!ek5!Zr*KtBnEq%3OM#{R)DQ%HWSyGu&sqldbWTLG#8JU|+J5 zw5BA|358}>>=jDVMt8+@=n{QDFiSLbaV+?K)PVc_GW0-JI8(Nm;##>MymL<@DxYh` z8zyPkaUl$^A2-Bp=3czr`hJ-F&4evVlZ9xzU`}@RT@kN+0@n=`7+?tpI8+`=Q&JYt z*ey~tK%`Dyo)+{iay%_+yv)a_$W?ajw_xd?<9Un8dnx0*Iqqznf||ny@|XM;VY;>t z_Uag6$hb5(b5h8)f45-XPeCN)Oz@WVp>kNq4LTC$4N)u*!CJCb1R{2X5Y?+nUMAIeQi0&!^4Y)bU| zDjuG`9FJ+4@gRMEbzgRJvEpJTt9TBwy63S02R+#kElapDKMv~u zU180yW9h*GDRNpI%x37U7A=|;#@c69Gi~iU(QKIsXhX5kTKbwDnYfk`GU~X9dB5SF zsF4pmI}tn2O#u6wK}^=~li1<46zdq#4*Jx@K*-paef1UUcQeq*Z4gOK*9P-%N3kqk z%!S2Gr^d!W_C~`6R1;Ha(7b#Y)i93M8f!7X$CpL2dd{4AtI%)QGmE=l9ZN&a?($DZ z>cFxW#cW&lS~Q)hf*)`E;79JhCbD|F6oyeLcO~r=tN%}1yuk7a^FO%?oP!d`Y|Q`? zH3ni>Xf-;D1t#cAJU$OQLE8-uv1Q)L@Me29w!W!i15WCb@5BUh@s30Xds#|u8A8Ta zezLFUpTYwV1vtlA;iG3E3z}Qb7V6)`;onDq!NS#S#yl_lULvqNi(S#VjmhVq0Q+Qa*KwB&pYu33EzhJJ~HDFZ!mp`R2!A2)z*cdp?YpTuCxr5au# z-Wsj;F1h4&W1JF!iJtkWiJW8h)fDpi1%s`L1!?BV!r##1m~;6=Wb)1c2| z2*h#sKtA<4=pOZfxDnl89uBZOSOM<3NYTu~#Z>iJpLfsw&dv1dVb^xc3+MHEak)kq zVwFGUtJyJ$^`$UT)t5cJhWyo4wXkvOItZPlk1u{ppnFd^Y)K)ucDu)5@_v~q0B7yh^XEC9gOK;iqpScg>0!^_-{lB zOkXvSUKI^M@orao;4p;RiVo2!sn=lAy@xe_6}U{JOzc$Z;#)WV;YQqP}#NDZQYRgO5kuz=ZlTTw#ODv;f@9&JJ{v%Pwj zWNoK~(!!bPf}=dX9HfMirgvF}(`cv}JqTyJ#DHa+9LBEP2dt@?Ek8D$D#vz-bcYr| zp`yUB3_A`zAMS(9$Q{Bxz8wB8S7A$kcER6{@w{{WJZ{WGHFm^vfX$Phv0ygPm98zA z&u*P^w<_50j`y-WsOFm$&G>i*Vlvvv>Oc>h^DYK2FY|^htuyqj<2VkspGV5;Kk}nw zRzTK%;T<^13Ay8P*7rDw^ma>P@mHhzE|^{#YB>)w7U}h_5R22Gpm84_XV!z_DR+!7r^Q|T;R91h&rBI2{}E%5A$>gZ&~<|m6%>; zlQxgTaR=Xmnra&iP!Q@bxAve$HsY_vH%Q)Z8k76$h+(V8)0-387%G#+KQU0otp@Ml z;rv|DeSaN#UVjKS{dmQ0e|iiL+qA?fuWqnOpAXQ#p=0n%i#!{XT#pv~R8;Z`fHz-K zuybe~_PrT}3nOCK#&f>=&z}4^9v$_3isLOT&wao zZ&3~UJ~_lHhZu3QkIjUeHw2!ma3oGB41(6tXIW*Wk=RkU7xpiSg7aGwA*U@D%IDV5 zBrTy|-8O|i->XZ5cio`uH{+T6k7BOi;UOBX^csfeMZ;U40%{LD0}tKbvRb7uGIHx; zAE*Jnr<4ml!#!{}R0mytJ7QUy0{VZ_q1end_;Ft%8d#@WTg-SLVvZAu~Q zy<*I+20ekGE3LTfq&&QIb;c{#WJ!-3L*`TOuu!u`3N`r-oYHr1Y zGvj04eFaS!DYCg7Nuk!^P?EX+Ry{bN$m$@n&}d$$#&CO1)L_IB10$zfnvIy5{vE$+Cu z5k}3ufr?9mQTgIi{^!LQ>-#(Rvow1xD(%f@26vI_7nj2P2}>wwt}U5Zj<(LOHlSyQ zw`j=TX3;h$T^4q5IJh|ZuotI~z})I2@O+s<+`jY7N41cu_bQ=N$tAe7&;;gNsFVNB zIJ&f54z$*Wvbme1FsRobm9`3u@U&=3pJ%|{|FtBq@&91jXleQ+?&sv9v{ALXgPnrE zEcm|$`c$=mmOlH%z9x+TmvL#lQerV@U#Uge!p=B<&2JbP@d|3zTXDa}xKsOUck(

^cVXkT>xSAw7wy_Of>7Rhg#2|G3FqD5@bAWk&7wU)>a&Z6oI`&;A71v9+6PLROL!3RS z`NSuD(y|fNDsxdms3}j$Q=ymZTbXCt8G1bF6_@qI15#vNnbb-n%r6SZ;ZF?c=6ar9 z>^MQ8{}Ld--vCz?FJrzf>oD{`JsSQ}pXJVZ&3;d3T*%O3wr`&*nq02LuI(DE@6=69 z7?wp_wrIggwMur%M}b26^SCKlNBH9>lQ1S%gFG)fVcQ`&HZ(63&#XR-2hJ=Pj~;lR zEC-ySo9RHZLl&~I#t^ExY(m36eqz1~hbvt5{;=Z_9Zc^f^8cbr%WaNf_0rM!$|DW#ltrWTrFZPk z$OE{~d>B14zry}?Y4P)(x-+9+2e3-Eg4-V!kCTu3qHmHM4qts5__34m;Y$bPrwV!6 zRKel-p5_rErBT~pQuh&N@$o)W7y2Zh zG__IT^a_YG{vz;9CbVz*dFY+q&pbUlS=faZDsCipXdsV1v34+UZv@mPIAVL*9(?4q zgr*4jT<6c;l$VeW&-~}Ys)&Ki?e;;eT&#vegEL6+&@EUrR+G-I9wvTNEKeb_B3v5q zmfPfLfI`p?rV8(@aJC9K29CsMC2f56{8Se3$`6${zu^{-^d?u^&qChKn^qP@Gjm?Z zx!qoh^EdliCr-(MGV63qHcW@6Q#N=ap$2)~Z!E)SEGncN1vkBu6jFEy<9|QpBgRe; zNAYv{dWDlXL+`totbAcoNsoBGf(uMeD#NsRdpy*31t0#2qCJb zJEP%fmf!~um!8AMMY?$6`a=4VRtW_$>q*ad61#U;@P@^XqDe6otoTwhOO9NID=zor zyG{)gw>zoJJ)J-*5Q!6eduQ~!H`(_D6%`#LI!Mb*mK zY+D@%b>1Io;1Wk#{reF#xEzB&ZP8c~mfXF&lGnG1zK;nYuZg3Xt?MvqOg{~wwvsk6LlkM&m}7J+WME~9`ygtw521{$fADKa zH-4*ahe@r~+_WfnFcGzibVIIU`fr|{o2`V+wx;acBUxJdqK&om2^q+x1~jNIlqK$Y z%FYeF$R2!khG#F2Q9;Q)mOR0T)~TLCcUL{!*Kr;ytK=#>HhiW#XF6!EY#vnoeT7Ra z`mrkg3x9i}8s%FC;)j7zl=epGr376RX?I=YbR%=vCCAfjWtl7%-bc!lS_;``cH*4B zF|>R1RLtC6z!HfJKr4xHZ9*-YUm|F_?qNiKT3I;(6F>C&_ZF>cR5rCA4r*#|ptWn~|qTdo+7s z!o^53H1r|2)d3{YI}-~>mN3Oh<7jub4-Q-{2Hz#aSdaHW!ewGQ@4Z*FKvITQa1JnR z{7p_J@HS@@c?}kCbEWIMmDmpdXsU62#2?#sfgk;<9~SqlfYXz!_>)dac(hrAiX}2= z_Omb+xJ{MI|Hboz9lhA|{57arx&*75BT?qe8JJb`2#2Y;(1WwDi4Dr8pY4}fcg0+4 zZE+Tup1*v4@@|Tr7K_?!2tGS>5qeWMz$ByD*lw&#$}i;bMyn|`IUBQru!%5#NDkGi z)k5gC;jA^ItbE~^Q(&zpIJquvKm(i!hWkFj-5<`_#@17~MGD)QUkHz_XEB$7E1*Hq z5O)jgZ~L-X|_BnT$O=qqi1jjE)0im4^0~N-dx}mg+Ann zBQ)i<80x(&@QvyMcCF+fTzPdF^rTO+>DU7@FYfYiI)#)b*P~6GHOh@RK%ohBET=1! z9{XpZdQ?iJx#9&~?*%_Sjz=&b#Q7 zp1_1>(p!Gao-DKv@P!PM?fmoM2eDhupZg)LM|rAU%8mz^aq4pT zCU3@`ah7=Y?+5l}%`(1I@L!&7c+3T!i$P8Ir|j;JC{F3^Z8pF)oU4A_!_reOFrAk_ zQ6=UelbUW=DG_f)HVqTmkKG#7VUkjq!&Sn1R3 zZ(JD+>xv^^BOPj(>q5?w-;+{esxcTlH$|uUvu;9g_ptk||)ZB*d zma39(O0`grI|$Ai!)#@5j@dX*^r$I@reW_kIlc>;x|jVzEist9^8aVoUjy) z1UIuz!f+a8ItDcaFRzK(Uv|aTjaeG1lk+SEg5w(W;F-Fp>G=ffBi$*KoRG}&cMExn zG#%_W3Wd`#ffU}Uggu)lV)iKw;=-nb!h=Xi9(WOUNp6C#A6Am-!VXyP?1uHKVHka_ z7#FWm<$CPuAzR3I%s3rH3*}a@OKFW8B3~ zUUV>t*3+_c z5u9l~48OI8!`y@t`1pJSCR>|v=1OJw?bALOk*G~m7e5fsthJyyT`6Lh221=;x`}kd zH1Vn03|wYn$X*3?bFLaHaAr#`S2kcH*38T1UG7Lze&Hz=tTtb0jhy4phB@NEx^1*1 z8nu30jc@gv!Aj2eKkx{RXI8hk;UvkY_z;Py{sLH!3$;BqONxIQ?uqPU5;|! z*L;H2_D7i4f&=(xs3l(C<45X3kH}*5Jj}a)3tg0>=*aHzxYTMRExLb@m3=5+ZC>G2 z+kP0%%6j3f^PAxfD~1uqf%I(gIetDX#i$^-GTB9Vu3(g)2*$ncV`M5WBI&ydKFt_8cwffMTzS!hmy%2XHs{l0;5B5jFTS4)f#oepzWp% zwjW^SCW=DVv5I-5c~a!snarpq7IN+sLH`mVn}6X3Gc9RA9ZPAOjW=hA=ddrpdrilQ zMLRgdbqgS)HxkFb{6WK2i}C2pze>?^IxXJk6c?odZGYZC6oMa>A zYGISdc`W~)#y{M7k3QQi#oI5}z?BW5Fn(9zE!@UeIv>bz~ zZlcPV=YVQuEO$=@JM__l!uliF=K(sTZqN&HkAySw;UX+E`M^RwH*-U*g4mM6Gq87S zDM%DQLaQ5+)YexlxaoSK`1M_QJlKk0?IQYoh@%F>PI0696ucT)&%Y_wCv}f#c1t~s zWTi*o(!ie#rHibM%sSbX$^y_lI39Cn44~e|Q>3_Bne9xr#Y4-lvY{hYaDKue-12rg zOVO@`w6LRif9-R&*y9v=6vwhJslw;dm_t+URI}_MO>q5dJbQlP5U6cxqut|sxYjON zQayTyNUfRuj9QN?iXNeZkqC>o7~HNIT62Wn&VQS(1dSRpzGI*#|K z%yJNyw@%2H&m4-YEL`c^f{CC_thXM6a{n#EV_$VBF@6wv z#>Z3S^f#op&4L-%e_&R;H8a+oBbq-TlH9hBgoU=*)O6X1>hH9GfleWJA$+H`WYoMgr*)L=S8u8)=wHRcFWhDgTjtX4X}8$|uS|Tmc`RLVyn??!Na5h|B^X_s0cu4N z7!^5~df*9fWbhw}UWIV)*D6rsiD@j|{~#$h_;K4~G+}L`7KNqiqt?r+*^*dp4lC>LX2Uk+Q_$fm_J>oU_TzW4Z(n zlvd!`Z?D)H(+o`2m9-fna!0p{V)6Vd9q`s-w%`?d!z-vI(8VW@MXwJe;r?W0>?$12 zg5}LbqZ;Gcp8i^A%v4@=@|BKhG8P?%>uZTw*P%dKJn^o7s)8!dlQ3j6UB? z*?=1yoZUSXhmHHe?9bf=0}ol;tG}0E@(oZ<4im8P3oK>wEwUPDfY$xpFgH~2gCDiw z?yC9XlcnEK?zpCnp42?N0Egwy_-<8GY<*;v|`Cw!bNuKu*1MP!ZYWG1rYFWq)9y%O*e3puTE)cx; z2AueDz({=ih~teS3!v3-07m2=gsH7Zu|moKHhT#Bz|=aiT3$1&4p+g7e{Ze5a-wO= zxv5avoIuAw%m3>zQrOS}nd)S6?@z_MU{+dK=vDRYuag z&cpX7cCcx}LUh@d$9~CJb5g^J_kUH+t1h`m(^JBz+$EQ9U7L*(QOUIR3J+tOq%pv| z1+DIHgSaPdxcIG)kP9Dyqm|#Wi4)s#nA}dZ-zd$v$H&REHj<8PmLumtBR(T3f{or3 zN{f3uX`iVZx6Cu2wr$U#Uf&M(*LoZsWErbP+6@gp7yrgw(o zP1BX|WW#Z)Y>DLOXS}6GmrKk<_949dwTe{B)X~<;n5{Gw^0Z4&(%!k_DbFf}tvV!0 zHE)Hx&d3Q=p>YOQ4f(=Z-|iM`rNook7NV^)#)IW+17Xei!dXsR1?nX@cT$CWL35XWgui4(gS#fom+94MRZUKF*|^U$T>#;dJZL z6`C?$3&TGRXImw*!AZ-Mtjy0sZD1fy-1JRwt!xn+|65LPKDpDyxk9gT##8>nVMQpISHahfOQOQqJ>mxU zHt>HOjjD(2nMSU_@j7n9o*AuB!0}wj{%aT?ACDDd>oFsIAdRVXfb!*$thXdtG~W9y zLnkNbKB!`|)VzQm%Adh=%f7&;XJ_z`>K*Z^*AFSPT!YxHe0uC>K-Gaqndi{861|ylX5;~` z>_i=NSKdO|FNa~O+vv(!GEP*m;UM^oaDqE z;CS{GT#AlkH6@#={mCtMgoQFKpBQ}ZkjI{HD8*GKdc+4^fIQ#T-1;=ZK`XNpue$EV zMkya$m@UkJIz0&Qg{9z^U88Z2xhX%dsD}LaYN6u|W&9oBOX7j+LG!Bx1EI0^9Eu$o%?)U(Qu9*`3~~AKe7$`8#Rfri)-{I@wK^Lrl~>>^y&xES{5I#L-p&RN8b_DaC)2#aS0VPm zW@^4FgM;p*@t$&}a8Xp-=@8}JPP!f2HoOph5=?1thse_h!n$Ub- z#J%641f5%gXiC2y+&B^jZoDZS8u$n9c8#Vf=l_9(S|ZEi{$mbHQeltoBs3}b00|#1 zvAO_Z#*^TMEwmqmi_G4^|Gkjede3mkpJC$sWzYEnbqBm(a)hkgn{ldd3+uOCN%^Bn z`M$lUS@_jvxS3qYXNao=Cg}{jePI>3kI=-Wf(x|%WUSz%tY;m!qB*xwUaan#9p%KI z;52Q`$;3nwRfqY}p1{#ma!ZU@XK3%$p6Y~2Vd0@Gup5>jDXJDhye<>CI@1K7GImF@g*1Z91+#^DYI?Becs_@#O^ zURbye2U}#|oAEtR9g+g?132p5x{kAxn#DWb%VguL&eHbqXt;Wvqu8fHeI|Yc7GGUS zC5s&}5uU-LGkYRI+EL3iP0H$bq+f-DZA=kSO8>S#ccLZx%bYU(_wM8)xESo~`TIC@F&dE{3! zA1gnyIkyU)Jz7rhmAlx?=l@vq%S7Hs zM^ZxTNY-0g4ZG#;u>m0t%yhgP%{wSdhb=7VgfMqust?iFf5m8DaYeKscq;R|&(S** zj&y&w^MRVZIB$t8e$}plk%pO~n%Y}1R_TH`PKsv{yOWtp`vi)3sc18K>V3?el*#Si ztBil1XHZu?@`GQ;uucBcXu(H2oRt&Ey3#r*MSOvVnMqe3eR_#%H-_Nx5r^Pya5R0d ztcRd&&+)5}ng28+ALc#WLsu1J+2PsaXzY9?x?8&u25K&6mR3S8G`F}S=b9-FF~7*^ zm^{bsT`N#4BA9Jn?Lw-@*k!Jvy-O^)8y7Wlm3vIqLj}0jrM*P#C;*Zk~ z3z>ZbbgPR67w`SJa6$$8yUv8yCpB%nXUxN&b$^)L?qYQ7KFb`oEC$74j!a|VYi1Od zgy*|^*lY-gQqgHn-_R4&S4rV({qrO*usS=|PDa1#PWo#4f<@fkLd8zHG+nM6tPNLD zY(qPK4>H9*`7M|&u+eA7A4jKK>$q#Dl(2S+z`c2mCex?F45hyeMQ$~$?nET&x@zJ+ z@d{LadKuJ@ide|R#oVq>6{x7*%Z4sFOurtlAcu~RRI)6JF0RcI@{TuYt}ypyth_Oe za%yAkFP7k)cgd)|+YAjp_Hw?(F<^aS1!~NY!{?2e?7A@9>2sAF{}tae&0Z~xv$lXf zvuE6l+vQa5Gl1nRJcz5Uk|Fx*0er4J29^$XsJr+>x zlE>n~tp@zm|0bg07eAcsb_JRDHcs34JAZMy5;7%uGVk1iWv{~V(F);nE^B}?$vg1g zgR#_A^Qqri7L7Mw!`$uqHk-qRd5a z%TcMIDmbGR7uy5hGZI=shK-C8-1xr)Kg=3aX4mzP*L|)CKIf03(cBD(OPB`+}1kRLHPT=6ddL%f;Ezd(NZHQb0Fqo z4KsP-3mbde7xC+@Nf&5y6^3B!aHl-1CN#J}v#>`;QYkmZ?F&L!$nhdh z?Pe6*+LKM~M=f!~m#f0>aFDGpSx%Wcf)ZG=JrHxT03YT852*_lkXN z@gjX3y0D(6i2ib=%VdOkT4(q*JIckueGc>?NANEUIe}A)`uQi}gV^tF#oT#=7fj_( z6j}*)|8EOMk+iEno9I%_?^@Nx9)s|lSiv{>HHxN8?uK7YvS4||hnfQSvlYiAz-#G$ z@Ly*elXBo>s`U0|dIl*K526}xQ zV7}j3$ez;9CY@8H>%m1Vwqz2mTylrLT#lehLB_9oy@9Q@cmx--9cjSWO8!lA3A0^Q zPYq?I%;n(#+U6M6XAE}FEaEc%F;X30^T;~#3DAC%+ES9&vf;*6x2}hn3 zfOA?bF8ZB-?Z>C!x>1|iu*>mm`x@cCr)fvovyAe7TxlpOcCV2Z{E=wqg zrBzpt(3QfkzX;X}s?fD&RctXUAj8YIxvb^-FelmuF9v9W-_T=htl1=-v+6NP zF7coVf`j;r%V3)u7E$8OLGrYI^=UTa(OI+S-K8Y?XBijvO@%flZ^wl{^H5qLhpt#H zK>g+%3bRW?qaMY|q{hQ&YFo&>_b0;`l+X%~&Z$i5z4<{lnz}Km%v_4;grMIo( zRt`k?dE&bo`E0c(^bEFZE@R{4^&z zG0hHJXU(AxmhKqz@D5&Bmd6saN7^(^wj%f2Lj-5lb*c=mr6>;! zex@S^+Yh#xn3Kj#nKdfEh$iDr1M!(=rC+!p-meg-c&*ReUDM6`Z~5iS8xW<@$`RI8$IyDUui+sbYZ*M*E*2jSz?ROlRI3RfGRvZ!es zf48g>QktTKp4TW|q4^A(o-~y{9q57*vY|yg=d)UKCAcy*8U7l(u`uh6C=3n4In7q$ z5&c`B($1fJXX64&QX61WOY z_IA}^9G2a}CbcZ2ThB6B__3Gp@5>PUaqSivA2`AqPR+$(X`^U=aKHGI)H3c}iVz7M%wAwsS4xAE-#&Pz5zM6D zDPZ-r4)!i>KACSUf?^d#JU%jzwyZdZri#H#A#50}IeC|=J0;LJzMGfvsb`ZGj>IDh zD=DY26Be}?qDpit1pT^zo)_ZTq&LzyWWhEx*r@<79^6K!fimDwGp=jUNuTl5?c+1KN`CCzMG*Ev$y^O!UQ*4UNE)NWjRlyFY z#mJZ1qUz6WD5+V7Lnro$6~>u?nv5=mOaJEHU5g^A9haEANI!U|;!ov`e}6@FBrE-p}Lp|^RXL1o>0ew5@zcC5;l zkKWeJ?^^bPuYH&SYg`i8{*_+1BVZ~s8nOyq|42|DS47U2;&ANuwQOXPf#B2_0bigW zK2`qVvcf!Il43u5rFDXpoG+p)x0+$!_+6+ce#4ip&V<93F*x@3G^%nmr@eb;@funV zh`(cDPo)gIQFQ`GPxL_ZfDZ5!obe`31F^-X0xX=9ILYG@LSJM8&77Od&Pg3-nSGJe zxm1rFtc5#c7)PHUbu)_t1L^*SmCR?^5W+!Lf+O%2w_sl~*FJb7|6Jytb>qZN_H@Nn zke0NIIpxpv^}8bN*Yt-&squ@|-bG4X>N zrLSv&l5#7O{#?Zl49E|Wc1e0VUk0~FaAi;$NH1*@4 zAzCouP7dx|HyC~F4arzC1{Y;^LjTD(Y(lvyyWy9@B+rjW)g4FpS6xxy7jli2_kH1| z7aKFHG+TCBa4K{QXO-(4gULh71@$hT<;BfzusQe^r!Q8e%idDh$WG#%8J*mF&wtj} z8p82G#$}B7au%-(d4SQEGhs&Z7syV|K?yAjl(-wnXB9nWoen}~>%%OpO?kzs3yv)1 zb&9Y&{4;y=(H^a)?kDAA7og&52=i-Q4K;#)lb?JPl}BcP@4t|RTF6IOExC9^=``)r|#TbDS8|EA+V$qDcxzzX&YcVwk|8+cYT506!v z@tt?Bvfx~0);4|wZP?l&WN@FeGM80s?tu)_J<-Bm?d@lZYn}MLn|=Z|_~X;<_b4Uy z5^H}eizfFNwv9<3uFe{yi>9HY>{9xaHj5H=-J=t;?s5h;b8*r9(bQ(6OxwX79s71+ z=H}1rIrHNOD6bXR*vr8?*_f z61RzI>OIzW@3E+NCJ!?Q4MWX630&We=g6|R(}A{QXn$e@DV|lKx2kEVJIos*>QAD| zdReRKr)^0_;3YnZcHzgGTSIuu6_k4G1{1BzsL)Pe!QF6yv%7~eu4D+?+a-d~=umE> z%MU)@dJd*Ws^W&1y09?t73cltA;x4&k!w#b7N*3b=eeC^_M?xQCtQctFAlWj^(U?* zd>ua9p3id2vuVc)MN-?emh9EW@g+A6saNVbj+s3L+w})gcE)4`2Wfe(z2JISdignvK&~-n#JG1Nv??% zi{hEYiFfe0aS*zH>OqBF2XLW&5gPN~V7ZVTc_dv*!!-M#tjq`IS_m2ERf(`D%uR`a?#I=uRy@hz*D+#>K6eXW72G8I4sXjvH(hYxk(%nA zhkJxw(*=-TBaN=E!PLSJ!YA5@3)QbsXlpf`&E8$zY_Wn~zPya)xvq@GS@Cz}^eE%( zG92$zKubegaYsc6T6GL3y=@}O@@s(|yF)Q#MpCxVIqDx?Jb(8CdnP)}miIcNmSG0>(#RG^cm?Cj?4$7G z(G6PtY(M|xrGnsgoXypasDs?%L=?v*;cUm-aH7kOZWYboH{YF4xVw(xg&`{+JH{nYtUSD~fYfD}#dJ;RH4IDiT z|2jiZI*y8B!aO#4UHxUUlYp|75? zydGcbblZzZf-{-7;G)@~eV3)gyTDb22AZ5Oi@ugjqykSK0wwLSupHIw@)W;ExUuUl5}Y0}FfT0#YkNyD%zQ8RcA!Z%uf3n+#2O zHWiNrj;qOE^$sSTJU}X=x3L0#1AW;X$R15n0I9#D@#czS=wj202Iq9Fnjec$vQ`BB z*U!R;Cv$oG`(^BhkOz^D55|zQniPH~RV2#M!Q2B1RtrDqu)Vn=T(n4q5;M}F=hS$# zw$*^!PDT*)?IhJ)tEPe*b4gECgX(PxxqpjBlJu7Xnz&&o*6iyOe-`HNy~Wj#xV{(i z$Be=eO_K$$`XJ#3AVX!9&smgkYq0ISz*z?}T*ilE@B|m|ey|(cH{OI_y$hK4G^VGOv}D)Q7vy=BsgBfo^Gn(GydBOaR)}? z^_K0>w!NM0S@3{qf7cTj%0mQa<#o2*d#eZtX5;Tn7i6Xp~j4Y<1XGH*2a9=ij(*}O(CnE8Av{@Od5 zV^$F`zr;kG&zr(Ap-WUeFAA?WD$p4|9sh(V;q%$^X}hmIKkH!@Dn*6}o!>Dy}r#WY}C7;Z6hglFlguvavNWW+~)?`}Whf9intjcrW3VgN0vHY6prQmU9-&z86qvKOaIVXbi#9xk$)8LU48VniEe=(D%jy-FsuhNud=WF5N0vQTF#v)RwHG->tt;a%q^NTmcE9s=Un=S2mxjT>>1#TGtAE5g0OsCDz_B(TX(WR z2`BFLKTX;>ScLIL5Ac@687{0h4S5$|U=6}ABHa>;`p5E`(GmFLj5mZudyz{+K5Yn& z#xBjzY^-$^nwh!M(_5R_vdNLOWaxQl{*nPwo7>RnWIi*CAB7XFr(^St-MC1x9H(Z_ z;j>LTnN*847Jn|nB`w;*esUJuS!9F*Sr^-}D1!GN_ZdR1_OX?na_p9b2m5Q*p@0mb-Qi))3*N)a%<+FnihvB3$TO2$;kR|*~#N;2_$?MnwX8CzEhLuIp z(*DDADzBB@{<@7!ugKBB>OWw)#(+b=Y&_Yo1e?2hF~(ptrp_D1cifM`FKarXwEZmn z)BOdxz2BL_vf1b==g%FB_96L58*H2*jk@`3u_%2G4i|19>*bz+X-*9LvR|L zK%?kac^0^uC|X_nA!H~&UV^reP!KzG2&|rPJT>w#Twg9olP^TUuTRCG=;n-;S8SO3 zWEWwFEyWfsc*vY}_A-Y(*U(hff+D&W^B(Knu)7^O# z8KXtda6EeHHyf?;6%Oc+Wk=U!i7&1?j;g_rn66VM?EWVSJ73Ad(7W;Uj*nml*(o%( z%Z!Xprjw&jqUEf_D7?8Yh4lzril(rAmv(-@2fb^Nqb(Sab1OL#NQG8$n-OUh#3I%ec`a1^z&F4f|3*sK#LPFaF;Z zeR}&ii|!|7)5?t!H4Xp5DK}v;Jy*FyAKIGPgI%%MXt#hnjV4^szQ4Ri^;+?dGDh_d zbFo5iJ9}(5pWcr(BEP*q@YMW0usS)7RT&>(BdzYR)u9$_?v`S1``yz}c}og^Ojw4h zKG77kbv1K*ZO5)Wwx++&j@)PSt1%eUwJuha@wjfs!n9xsb;R&1A3T3iw^!9_(ZB4$kn30y+BGLUiJK*kcjR zZTkI)9r&Kdc5EiR^|1m2mnxuhvl_m;aE&#*Ue5O{H|OPc8{#)K#oU%W`k1K>i}i<* zUz;u$>zWSM!oKWI+i29jo)1nZl=zO72eHCtIg8(-4CSYt*!PtYwDy$*1qVgI_p&-T z7$_)+$bIYw#H%+0@aDejIbB z(jqOU7@~=eb231ERJ2&;_d@)!cswmxF@puZeGMtodYG1a2a}FpEG&Eez=$p87^^S< zr?j8L;i_3|<)%cj!l`0hc~chm|5nD5Sp!JQ=Lbt{{l(vppAAyWGXOd*@w0&i_l z)V<#xL+_4Z-kX=h_l;j!gOGEw+MF)jmrT&rYa_QrUW*wQ*|Ui?@f0-n9ynX(v(Aab z(A~O(Gc0w-2+?S|s%|ZGAdj&0FW#cVWvUbzu@%2ZI+Oax-Ke`nAEjNSh_|sv-GD}} zWo8`eJJ<3yyd;RtUUC0D>4cy)6L3y_Fm38Sz-)Y0GPO z*s?s*+cA;$=nsa)jlGmzDGznY#|56YHg%-SlIcqsdTJ{$M%6}A(fV@quzb$hYIee~ z)@VG?;($S-*`kHBvcPd`6!wNiG1F_|7%g*;?Ea>c_8b8BH+wiGR}+|2>_kZ+=`<@O zhw2?C(ae|S)X7~Sr5nw3amxhOa7>%U4c?2N%j~FWyBLo6Nbx4JyTwg4oj9ze0$qb; ztmyS+e&m)!3c6B@R#ObYl%_ZfGY$xT#S@3VJXix`s#4h5(OUxaFp zwe>$(yvdIFeNCXa?l@|^w~{VCzRdJp^Pov3j$IBgWtGDH-?efg9Z#1)%TG4!qQZQb z(|?~03#p==3%@{NfS0f@T>!logm>!m@%;Wdr(oT+vzYL`iu3mU&dRKWJ(OuJ1Z|N< z%MV)2tKWgC_;pdeZ6Bq3PG)X*<(X8$6u!A^FV1f>VE;J_x3Y=1Ve8@+_9S2)&G)hZ z+vF%(@Llln_Wy*EPv_u`<7XD;TT5>j_*$wwsb_DsN5MXRCcqIp@cVv{%j{4=-zOrB zIxfRM-1(R(C!S_r&7u4ZZ8?fvH=m82a)pX-ex;L((@6V}D?UBc%6^CX(vWAD*)E}v zW#u42l`qus)0$C8q4zlT-;vBdI*)zXKZLf)z9CPwPw*l)9(Np8!&zqp9@JXmZ|mLW zj!&M7M@9>`FS%IeX=+YW4|=nyBawyuEn%;9579lD?<`vO8M;I*1hZ+QnW3c)9S+J6 zcb0jAzHlcB4{PUL?tBuh8Ze8vn}f0A)MRqr6adHaJjhyE6)EVrkf}~#PWNh=Ug%#w zs6?I|ENyT#$kUr>50(+-L?h?9(Dn3c(v`SP#+IJUC}|fiR}tozlyr3b-2fx6--Or^ z6Y0~zDA5xMDYhr>Bm4fJ0`0S#LO1S~Q0Ey#l-^y>BxGMPFW`MbbmP{)q zY^C)*?*W($X{3&4jkC|tn43AQ?La;${d6JUA?CQqSkY=h>Uan*SOE?{+-ZZ75q;0p z#9+e{=)dBs_))GDa&BqdH0vwy&~!JchoqqXkU7kvHwlufhvU0f!Bl5#1*-GonDo&; zPC@q-yU}}?c1a)_#z@sn@S4H@njm~u;%>7In=~+M*Fl^z&xt;BrKqrf20O9ToX>x? z2XCxugO4xAGvn-jHr7Xt(n5Op1%ocJJt7X~B`$+a)dg(hsc3q(P;k}`I*g^SQfcMeJNhKM4wK2k>?R-b-hj^%vJF*2_Pu>_ zGxdhYfn1-d;0Ln@S>@N2K$j?-ekHn&W^bSwzB~-?*$K79~cgGBa_Nb<`%P!ijLH=*eg46)p?<>+S3441l&{eM7Z7hVVUk^{1@m=$wLywK}VulZ?+b)HVK+= z0bT0bL_^k3rsOi?Uo^J;sRvW5Js@W| z2wyzNgudxEbZ>zPwY-(Y@OM{PaZD%cvf0QNr~QNeXPRuo6)lJk8jPVq`sC%`%TCKB zl1oN5*UgC_?0q=*ar|MHvP2L1lf7uC&Jps{m!N~(JyyS?p!P@#HrF4; zzWrTj=d%yKjmn@C_ln?Ld@?HN?ZIJJwXy4EIw!AslbZ~ zqD@6$qS(Ts6Z@g+{$DPjPK~CI8b*_3+VNMnHp-?9;wQ+vVn@;`%D2Pc!WCbo4M0$r=7Qndi#o($cLhnNZnEc&ZPNqTwrd+uL2IvdLEtxPz)e)Tq zA4g)SKAy4=?w+@lDEn~_Yd#`}tL-=QR|1B@tqL>hdYyvdU<+%)GV$PCX_z}`7Ms3% z97RQI;>m&?RC`&QKav;C;`(dY^8-h?V4WK2sE^)T0L@ zwQs>glQCHNZV|Jyio}g=5$wd4gWUe88oDz55Cz}vV-;006y+C>3nNdlktN%xAC|%e zJ1NSo)58tRIMy+H7V}A*hR5gF(X0i3XoTRPZT)bO3M>f0Ck|%{e*OwUxp_30JIu-GT=>|$^JcovRuaVMDE80E&5S;L^sHTBOSjHS})>0D#n`|2>p@8Q!XaMg& zxsQ%Mvc@;%-qa;{?RM^zw=!0{%9-VrFip;#V++sVENOlGdM}mjpYo*on!`gJV6_x8 z8saIc`#0Mr^v{Bq-(XXHbgZ5|7vArxmGIt%-K_n$Fnipog03@#Ouk?Vik)ppx`(F- znZXqG^FMHG&1bryv(f094f#ly!0xFIqW3O8*qB*aX!v9hL^!IE^j}r_USH16+ns?- z(Oq^SCzOsKcna_4RAboS>rAgcPh2YA!X>zWha={42#+N3^0wXN|1*Rsp9#W25t?)> zvx!v=>4M#{w$PfpkWINf4>T?+V2I0hG~b#Fjsnkhp8Hfxck1SQWm5S7TX~x5bBtYB zIFHG47va^q5L}>Q2i_gFSY?pMp6yc;ILXR5ck@n8W%Ur+7yn9NM~~n~Z*-=&d(Cm3 zxdvA)!19{6B_WtcsaAO2U@GJmmaMJ_%mG{o@*Il+bCsre{B>xhNxrR z=RjP4d?Gap>7fzze(aNK0Q?TPgfS}$V0LE;PCdCCw+xIx74?&F+;lKS_6h9#9N{_T zKN#AF64d%0rO}z4d_%YJu6J?gtch!7Kcs)g+xeuQVS9_A1c58Rx_i^ACa5mBn;Hdk?Hg zYlo%BB0>87D@z4Y64q|jCn@KNbSf7W6K;^EGj15&l==+ z$eZ-?LIkcHV?G=HaCke5UGD4Q)2_C%S1Wlqy{-&ZNCJZHUW7}PTWRMGbF6ma*bXx} z!X#D9_6el*lNXV)|0G;}rxhmXN#Tm-G1NGx8N0PYu=}wu&qv>Zh4)%mws9pq`P%@0 z0;>3n_^x`uz|YL>ehE39Z-ox;Kst1?4Acq|*!3sb>~4`9Zf;i-_G^i-&|J|fKl~ME z=_Wxt*0@4bxD~5}*;FOh4inr@(|Q|uwz=*ql!%sa%lh>NXG}Bv{T2KC`_G$3PalW!>4eM?DbnZ9Ar87589K z8qGev3=K`BN&06Ohdq-hXVV+FqngB?)Ggr#FIA?Q-~KTN@qF%SVkZ8$D{yfeE4VA^ zAE2u@ohd#srGs^zxM0annyEhvmn=2L{t2nH{;@4i^2h|Y#g{33l0WWW+AWgbSP0%# zl7iP+8O*;#!9g_z9Ncn_ANj_d?&@U1C(mLyvhF&hq&9Q2GkF-b#GC5xF2~hc8}XCV zORoOlWC$}(;r}ikAl^}+j@nTrl)o>Msg|DN_IDnpu<=RYEA= zUFY_3UKAUAn_ZOhCCm9Q*_A0;Smae@Y3wVFUN@|8w1@Eg9wmfRB@KALurKumGzjBwzX=Rb?Uti#EdK^FrTIDUL=wzRgWDauOM+ z3;pU>NAN+nDjweOk#y7E!lqFHIH>$9*!{BM3xYf$bfO-|?mmRKCr+_LF4FMGUJ^Iw zjlx|Xg%~e5xtDGeJ~IRNP*tN8JDL7KvNuk!UE@t93CTge6POF1)56;+`> zEaas<7P6URzQF5%cr5(42U6DsFaoe*M6kjJxH8O52&r*Vhs9E5LPzg9uSqXzJ<=O4<2!6`n z0i?Ik3LEZM(k=HG2<&Ppu*AFqM9aC=&qYX!laC%W3FP~jX zvN;>!cw-WaTDOCKo?OqIvJAm&&@wjT&>N6>sfYcoFW8HygM8@3iz2-}n~9xHrc*!0 zv8`?$09wmfu!R)b;31~;(^R;5@Mu>da2Pk`a1poTK!ra-?7J^NzO0nZjj81tJ`cv( z)Ar!E)GQ`}^Vu1P0`}_iS2!CPj#WjvET%`8rHosV&$B>_v+7jpfS9csNNa?@qlO2^ z*kIjta8>aSJ9DsuSh-v`LLLi;G{d8q+pJx7 zjzEUqMDMomL?hL)Y}%nGaMB}M$a|ZktE?97`e%>whuqjgC4rmY|C=`ZmV%V$EU2ID zOW`xtu+}99t8YA&p))Qc=$E-E{>EhNcHN9&4=nMLu|9d5w1|t&dExJqXSrz!2kG*! zWx~#EsFnGIACMol14B-V>Dv?oz9=x7y*?+#B;&8umh#(3AZ!trYSZJT*itghs z;P&a$sqjb{$Ojf-{iS&rYjO{~cP1k5m&0cG2ziar1NdE4ma4-R;=fUj*giV}Utasi zBp3K`K{Z;G|4jyWWv|B4Kb|E0uN)g5E#+PI?;_jvq13}ELbg$+Xl=thSod)Y+B(jp z<+ge7*|DBYnj?7Pcgo^2HD!$OUqjZ%htr>49o~2KMBeM2K1QpJ!$BV`@n)JY<2xp@ zl(4s4+0%4xVy8J8>58y1cQT$-y2a{RV(5p#H3$)MpLg8Pp@-EwSi0SguMPIWX+}}Z zz}JM9W=YhT8AvjnNm@8Ese+Uojzay+&9u`ylwH(cfF9x~>^b*{*~-?i;$}^X)QY0e zv?Pj-j)vp653z0C<#2kHkm)`u2G#FxV4;o$Z7E$y-<>N+x8xxirMt0`2h&)MzbQ)8 zjmGo3kWISj(96Z; zN;0=k0cbr|MEBn=#G&WsLgKNP@Yv-p4C4GKA#4J+EOq7@Yjkk&yfXUFRTt4t{U92i zScQF|Ln+gz6qAJPWOMOoHhk^?RE(FVq7oUaMaNw+xb3Ov^MWYQ3FxAV>_m=hY9)Hq z!oRm0M{CmUF&)m+zk#D*d7r?0VDDk@H&rXknUxg8iZCiyoupMBiZ?kfWw2liojxTC zaRuMl`V~F!;dDA4Oq3BRW<}wl#?9zkV8|5iy3let!G-tNgKLTj!T#lE;c#j;Tokg3 zcOsU8+~Mm`buF5Tezd@4!Ci50u@bb7e=PL*lc{m+U^;YT9CNn3#OGucQ|$dDT)-{F zcj33VjOR6^_n?&w<_SIRJ;tQwD8h4jmh^n8Ep;#L=N1Tghpi=d;PPQ7iq~ispNOr3 z>8OUyNB`qa3~)fN@Uc+XIs`KW=Wbf{VE&fN9`-)=iAbL$xKP_)RGnT7-KEj=U!5!S zICU2G$!Md0^Dgn>XHAf7c>@pp5%$#H?#w-XAwNudGA$Y^@YZ^_FmjEjHqKv^)M`ip z5@*RKd^xFYXs72Xm&w!Q70woIqcW2Txc1&)ZhL|olkiX#dW91}r#%w+6jd;F9mqWz zoRl;GTP{h-@cz?|G`xwYfWNPnavTe(}rR(UkQq0*)J=uiTgmJkeo^A{FJ z?Ss@vMci;n9(V1UN2X&Iuy~(h7HJnvTMr(h{z3aK-<_IHuP4NaRLb*s(M4a;>#y1* z@z|17JZB5fZ%M56u)qgH?!x+$$;ifMvAn?*^tbRhD6JoZ0mZJgQ11n^-C%~l+=q(& z!)2|uiZk(k>Us=1lnJ3jJ6TJ>T3jG7+g5LtVw2CA(<+ZMY}$VvZ0C-03QCm4^8Nz; zS@v$)FhG(HUmZc7LKfzlqymg;sRBsOW=)a;r&;A0oBQGypR>?Ye9qeu1qL$K2>ad- zGlV(n%rUNbxF$`so=v}$Yb?~9^H}rmXcR?{q{iFZ;KI@&Xe_;g8rIxp2|9n^p7uxl zbA24Wda?{{D#zl8mEpASc`zA}J3Y1tWGBp?GL>FW7P$Wb1cp3^)q2@zR;-V&)+*Ca zM_)25&BmPH+BHQZvuOGsRhIU35M7<{i#}91;_O4xxWzbCG}S@@Gu)bRhs7uHpWQhXilnnQ7fI1#)~ z`Y~nwX=Jv1KAE$FJZo5ncMYrA8>Mtwu*VKn4#dL`T@PCR^(iz(_|b*D#r)wNJ;KaV zOy8h@G%nk*Z5BFgj^HddU2=xSxDVxt9bz8k1nu-}hJ=S;|}v%i(>&F<+B= z7!PcD&8+;V2rjsO5D-*2^S3!oD5>PudNh;fsQENUBNdN~xQja-$K&ti##UiTS8!{- zIllXlPj%5Hpq(k~9WuVb0*wxF#K#F_-1HTGrd)%>^Jl1b_#3vZXbsCdcbFo2;=zVb zsV@9G1lP|tq0*UiFlVeOmKFEG9TP?3=E-A@To45>ifuC87`5gy_S8(L z(LP%AH2oaKsd1=(;jU=t%OdXY_SJN9V>S0-^>K{RJVlkIGL%74sQ4~|a@#amS*I<{ zzAQL|%$+%h%54~@Hxb``>;y@bGWxP;F1#ADoXwv3AKwv6STBAJ(u#Sg<(H1rhI^Ak zZ#jC#MN#w$!Nb_T69($o;i|v0G4)6leJy{73vv`mSwbGf;X}!%TLB-sPNq4tm$Kc< zq@aIf3b$mIEROIl2a9*ZvGJfM1;yFYA^F?vu0|Av@9qaF>FrSS)(KN&Ri7WTNvliQz3*liXjMY>13gf7SslF4i6{RZKiQPkZghK(FFdR;L*?I5 z*l6#FYc?On4@MlaDOv1=@kE+7af85q(`K)4PiN|zOi+K6m`|T5ZM7vRnxRee`pv*le3(3hOj@u=0RmQs zv*-Ad9c`q@cgS%*p{}5&5UtXw*1)mq@r zo=e=X{a%>=<2Bb@zLMn#S^aUp{BcZ3Dc$MfS!Kdeme{t36oU!~LyT}o+EIFDUjsXj zpJrxn>iD{*YB=zB7EZ7dL8P%4=Bh7&zG*V(oPQjrezm3ZYaQ_H=%e8BPY!pPCyDFK z$3oV;B3z}l8wb60#6Q-)X#ey%&i&{i>`*1)cgAT_IO4=!Py1Bxn?nh% zk}rW{58lD{AL}v2p_v^!aFwh(%jr_#DDf)OnH21O1`K|8K>dviY+ykwxz=B0&Mop7 zA6y2DR*!&X>2YG3`~|6qyk4OX^AV3DnnCVka#h?r8yEp500htD){FW!$} z1wsCJzht)ftMGkq+AerL?CPmrbcB2!KBA&~dK41SEj(*t=&jrlq5EgXw@voCaK*8g zBpe?y{Yg*IL1`(Dx?c{Q+6v}ldz3$-Bd~8`ro-x{8~le9ds?D(0tYAevk1mBO$!-( zI6i}>S0>W7LEiMZrJD?T6DVb=H+CDT)1Km7Zr$_UWHdaRAA4vc#62kE*A9z7QPU09 z(H_R$ujv3?%YoQ@%YtGg2Vh;HJG@<)i-SW$Q4_ARF^fKd`|o*V-z7v{B*p3 zDxSOeY&r#Zx#Di=y%;BC7;1Kwv8X-!;b!4rd}b%?(Hf>R!=KI=)^m=XmXU?ac8)l* zC6OfO)}#KxEIzN_7-uv;!R-50Ect>X8mPy@{a_uue=>jq&Q)-=Q?o1!PYQGEgGfB7 zdPuZqiV{Y=GNu*z7esLzT&X)R4RhT;v5=|Jq!aTLRCWnm$VG#h$#x(7I^#Fn8&HVt zOMNl1Nt#R9pGwEpE0N7j15%o21RlFylA3uK?jE&)%75<1bCV7OxgW<7_3&@*-+foyl=bu_yA?e13X%6EqX*ofU=}FE;Uy{zZ zi%BX%5fo#+n94pKw(O-O?7w;*9!O7MdlPy<|7tj0jV==y@5A_@3)yt@*G;CGlgFGM zX7gHZNi57mn|3VIq-;-TO7l2o={IX0HY})PE!UrMp8jeWQz?o16@HxQmfNhwpoQJ| z#n`{}RWRfBIoOq03mMunyvC?nZs7Gzc%b?vBqb>EUcX~#tiCah>pd-SKh@CJM1wZJ zo{Q?LIXGNafjzA;5?lD~qOi6$aNPGFd%xP7`=H_~0FvH`XRg^#C!&VYfCpJjRp3!g zTo}#Inp43B{jp@Vo7&mR3rpCa+sQ&s@EvnrcZmDLEysIqR}B zjTS%NLQ;jl_L}~)->v{s8 zvTrz;59@${*X9_uBp$`W*BYjyh3_}yK)`WVzIAI27<%TyqTeG?ZOTbj`pFu9mG1-m zAiR6q+p@j=2iZN7N#GymPr7dtXt3@Bn#F6dx`o1gk#EXv=u@G24-HxABQ2V{(hc@S z7-1)`OechX!NrFuXm+6w<0njqb3fhK8r@RyK+j^{)MFZaE=}Qfzp7@ECmK0PV|SLc z;3!oci)S5kdqK8g7S6oi&I;^`;P~(Z|KE$P?a9IIwqDTiWG9skTS#4c<3Qef02}|< z2>sHB)7JSZVCQ?2J*tsqZ~i%PJB}nl!}Ft@`G3NDLf1%o))K2t_;){pDom2#%BNc_?2rnL@s|~DhSB({J%-tAjA9<6WiWMQ8c9w% zNAlB#QG)0W?=+#Cc{cu~5m7t9SV5XLNa|qd?S1U)fK)a;IDy_im&Ti4##61K0nS~! z#PUs48iSrB<~HLg|HnU+zp(5C^PD^pQ?rl5^)WlJSHXgHzCX|Qbp(UxsSgah8AW<3 zB|=ZinI`SitJ!kx6cz7{qcF0g$$l-Q`)xjrR4yd%!L6bLZUFDMXn;ZQJDBofC!YOi zPOMO0c-~LMFS<44F7~6KvIbt_=XP50Dw5Sb8%nN$9UR@{Xb=My7dV-FHeHu4{C!NT z7FLtX+7G1IyN}{BoN3vWYjl0uYFe+8PJ7NJ((sf_ChI zvL}*j(?fpc`2zZ^@4)mo-G`wEE!f`qbKuXecJ9wBHRwqx=Qe+dpi`SB;3EDz`>#C+ zRQw`XAFHLGW6J2h^bu;c_9U0mB4*fZNfS~c`P>0!_@=2ETda4oO$K}M=fl@9tnn*c z9jl8cQ*z<^^aqgKq)bbMxh(VFKYq8$OiWp=&$6x#p@}LnqVm96aq^4`c4qiNu-SYC z6v|XUYh)K&GWs`rHB%ox?I^^FC-v#DNgYUrnK4Drvvhfn6xI9d)1|I0)eC#nsk7sc zxNYD(RP;g=Z({6Y(;kZ9eOb_d25A3b2L1Lm5d|Faq4KZzf_A3!1|u}shFON}v33ggB;`3c zmVd!Vqvz6@-6^2C(HB1NTE}b)5d5@-tzd}~z5e!tP1D(jKfcGZ!!`_C-Wx&fWn<{P zl!Fgq^-)i!4AHIzn=Q9svu_eMj}Jso`EOvF9>Qj2#_;7;k~QNG-el5Sjj^)D9ST&7 zA^2aqxcZGUwuc@dRj(J|D)5(Pez2i~T31=E{m1Hr(jO4Aa1W07cnVjx`eS|DIqdvq z2e-R2VdV*ZY&9xDSg{NJpZ zjUiV0O1}i3jw)$v00W?PuxY_y)G$ zTo0F-zh@c4EZK`oJ_ym7{F!B!!FjC&Rz^JIVp4LLTA|?F{^Ub@25I5N{~EEi(;4Mg zUWI!%7t?xi9rVwPpl?~jgg$Z|_xHsgwvGvVF$)9q49LP`lXCgRG0DKKlE?lp&$;cV z?fF909LjIirL;GTakSA{Xm`0uy$T6ncg7EQ#YR)_*hP5n?+G~b%?ECjHgX${T`A+$ z3-Rj}ST=uwlX)!9dlnWat%oTEUd%f78k~8% z2qtXGikVRRgtGhA@guF<5w{R!(Fd*jHYM6{ zKeZhGeu<$-CBciGevk8tb6~EqnQXXo9L=Ar&1o2(LHiaCyp@KCj{KIS$bJpLPJT#SK6sGtc*l9g_dklDZ+COl?G{18b&D%EeWMm`aQot z`nS~kK2P_3&UJl0M%7AOnb&NZXRk=gho94YCu@=nG9rgxeOSFt_@%Ol{ql66(-rG+ zYIQf)Vl;&6I}U+f%xy5=Do0AD^{`*8lr{PXTsaOIpgg3EWlG$j-8thh*k=Vv3A2Ds zKQ-DZ?L-S2hhb5M7wb`2lf7YDECbxW|W1}#?&n&8~Ksf7XQLDauc}|zHe~d5)Z+TA`ZijPs0K~C#nm( z%j_ggLgPK%S95P?j=~Ss+3fkfQ5f)OK8%$S6MDT0SU%-9wrNeK;`4D7 z>L5?yop1RUdKUcGis9r6V_EaybSCa_yL{A*JW}X3A^)RFRIi{z%lDgdAEI8cY=Nay zbR&*?EwPbbX_d~l_)X@g&l*ZM=evR5Coi^T`VdIEEXY81VQjZdu8GVlp5_h|!`h^&FfHT|i)v}b z3!0xQ`g?_WY_Py-*>DDoXC|@&uVEBrDDcaVjUahDGl3oE%kG<{;!Tyiw5&mrU4EPZ zPZo(mvt<%9PH7fB@|7do{5rPTGnL8@tFg29jM%=~ZP<~w0+!!Y5xNxpIPuqNHl_GE z$hV9{)!}Nu-4T4_YVizvGoUV0g#ELcnBBb?c4xmasmXj0IL6zca8e0>R8N+v37x#w zoFX>bb^-}ECP@9DN2$;5FvXwZY8ub{efkEF`{^345`Wh^-)}^x1xgis0${WCNIR^gX-?@dmGU1Jt6=}P7u-<>u zC?`JmJtaiuGp5C->csp&joi4DRE(tlvAY8F@pWtv@B5<1p?)lCX zIPRHiRhnAxEIrF2?jcZ*$La}68nrI>uDCUvjh1lszla1Tpaf{=gqh>fSCnftKS zdox}-u!>6ly70>KXW7Qead0a^z@EsYlfh3z{#oKUDxacC5)@81!-aX~tD8*mxhbvx zbzHP4(hnWa1i_%jdh9mah=YZ@_hb9BILNe6q;hxLJOhiGZdT-b8a z7)aweFLiKGrLQpi9d9^>Vk>u$%cKQ35bPbpZ*Nopo_9GwARE>e~efQbjE5e^S{Q{Kli-o~DD}?$ z>WVmt&F0hj<(m$1b~(TKsAitsDDQ-bvDr9&-9*@Z-5X|kI&j~IGH7Y{r2WMo*wsbR zLjTE;8YC~UuNeU#tUlCDjR?OZ|b< zENYrK<=uOViiaX8`=1qsy^d$cQZMoi|E0p&QF?Hh*+9*SYk*FsaB5x}c`sW>W($4c z$f{tHFwJCjONT>VfWSvBvE=8QRYT^XQM6>ie{ifo3*SwTryuj{gmZQf3`{ZRKfJuf zGS=PZcE=o|;6GU+iTA3!-QM&3wjZ)2?-c|Wdv9{a%5tV}A_&&_8&vc?S_2+|k}yqR z_c)gwz~;U*eDow3q#u^iYmZPYp5cL;;-lEZvFT7#>q6r^;&EZ_e?o6J2^^h{V{42t zEfcfGx8k#4>~>o!{I{BXlu~h=umdz-J(QiE!Q(;8en?l(fuJRWO)=JvHB2~;y)B{G z@Oe0xeYM1UtB2vjZ`RZn^^JC}`hor5kFYMupX}_^3OXAvoCZB!^0R!FalNs%%zvjm zJ}4^&*9p(?l=y#i*l`VR7G@@=@`U`Sd^85fXR-DNr6|f?2hS8t;GCd0(hT?lPeQ-* zrh_L#MC>_y7Kv5Xg+Z%i&vP3es6UvBx0QT+Zv!`bDK`AlcVB(NBN z6C0!JL`@k-;e1sSm-<_uG2dzh%OsZJTLO+#zX<2<8c1E* zhq{~>L<&$jn_7aCK}KM8;V2~jZN)7iYWOR*QFL5y3Eg~_K<9N8*w_uTX=H;8&0Va) zC13+zTA#*8NK7J|_3kuQQi?7vn^^feS@2K1j3ZOKEL62Pijq3hU|Zi&!9}Mfa63!D z_DBWHPn$WO}HwG9eqjY#;m}z4nrzi$F`D&UOajk$G~!@S~kmC2c#>d zx$nnv@%Z2s+z26Ke|pGee$|#cY(=XZtXQqb{cT)Dh7}(vn!iMa?gF>#d@d8YX~MKo z`?+UD3s~Ls0dD5k$?&+|gZDplj(lzi&P4Mj3Mz0Td4)#i)x8NtN94hZGFf#_vw)Hw?pJ8FrS9~*hMO@ z!y!`0{5^`SVo@tT;Pi8qY@gy~8W8&XO`M2y&4cLNk)3ohY$9yg^^NuIB$#R`4x5D8 zhG(5QNFOl5XrD^F;jjVS_NxnQxLfSQgEMqOVFz9vv|Dh1KEhwRF5uU1K_*_OU}ugu z9EcbyFt$0Ex10DmY#Y@yyFu^!6WDrHjc)w0U=ur|LCo(TvMJi&G@+ff@vFcyg~2NC z2n_HUPg%|`SiR#VS8SsJ-jnN@wu=*J2z{#dIi*<8L8zIqfo<=)Nx=(>I73?@idL2Z zTDQJ)y301v=inLSwo#rYeUG5K{?};ueJRq)vVhT<-ehpi3*tT)V9?05WMJt5&s;;< zjt@H6)0}|Wi!xxI#2_jPZD9+V!uT%-j*vltH=G&Q$!%>Ge2|v*q7$cY@adt%-R;nz zA6G_@-NiTf>Qn-|*(N;8*@MZYT*}yTg*mOb|D21y(#57v8^O{72J;Wa#Yn5$p8h@z zg>_%Qvz2A$AWF1mj-~VAO^NWc7e_(GZjS9zd5)7+bD7$R60Cf?j(MIkgIi)d*zn`( zG@`>rTb|ka3&LY;bJ{E_!u3>*GSCo&_+Rn}gtHU=P zA#<>HJX;vDh;#&x$P>SDaG|V|@Bf|!dIJOea%;gYdwUQ5w&-E>M-qDX7Y4Q4VDE8cpQg)d@UxhPTuaAb!_B+aetE+gSnX= zH@rs!_P11^@(5w>f4YP}bSfWr^zcmVT`eouor@FSHev63zp;xh^PjM%b`CRXP&YkzKbzfuU;v9ghl0n=1I*-h z07T9;pe(sq+Av;7Jr^7Xm+_BKt?&f3DciC3Z?oCs%9$ixuz^i32%KMW9`c;@j{{oh>ZxswJu(e|CXZ_wTbv@oehnRFr@J6H#kJ_B5&=PgyZ+kW}nxc zg^BKq==jlfWF*0(=icS8NLQbJUmH$`N@k$aNL^MQdfNxcu#x%a?}ZhuJgIhQv4-2RAloVq(RWk%DY{kMyi@LY z>+}h(l`G?(eKUf!C(eP?xxW}v9mO^sb)azySJ{xXiS%RSY~Ir0GQFF+3R;@g$iwg! zDx4OFVu!KxebYylll_U+4WzRb)(R9~mxp63kFX;}Q<%ZSQ*`w37ryAd0&BLaWHqT4 zkX2bh_JdO@ylR1Le2+q3x;5ssP~gzpwE1lP{>Ebj!z_{1M3$7vK< z9Oa;)G=h!R`inIRiDSvPVW@T8+4sDPyNm*ZL_7oIrV&E z!ARn##!$%EZB%Bomp^^|4?5{+(>mLI)Zm!Ic*R5TQd!A#N_iDVRHm_aH+A96Cwb=A z`2v5;Imuqxrt??pP6!N@D@@DsIR9#UI*N2paz_3lc29c-WLAB`(Jl9|SMMP3xk=P~ zU6%&$nG3dt0vG0iIox?50&Z0}Ur=BHRxjt!xJ|a~zzKVnXBEkHA3VsH82-jZO;+6N z-JK|EI>9dxT^6!-4=T1k3gOR=tVfem)A8zrXOL~Q6G{V8@z;$%6rlc(#ps-5IsF7> zGD2qBKn*WSjsuHJCrK$)43t(Lp`-1W>8J|wsV>iinw|t*_J?`v_CV(L+7UK3RdE4AXFX`R4VHGjL9Wso>^Aq{ zV#hvX^*`5fR$r+wH`Y1vUTkxH89;oD#=#zuN8S zdi_-BTp9<(-6zq&HH6h@C*t&N0;}h#Bb-$-0$;s!%o6*8ZO^r#&}Te${M5!xVe{Aw z*Ar~K%uwt%vIPI6d@z#Rh>y}_sc5?+BeCnm=S(Achd$P1rB6~OH7I*}iNJe#D1!b@ z47+6vf94Ar8oj|V+q0dGS)$4A)%@io-nheCS#!u6;tdw7M}ksbFr4^!mmSD-CB-ax zU~_pFh^xSCZ}M|loyM^2E9LA_v*i_^eiLK zM>XtBrM=)aS_r?YUhxMNY+04|TZ(;{MAvlz_gGD)m3~5ZRkjY*Co1t~4Z7zPxe182aiOni^Ns>v97v|E&{YY3sf zZn*UGm+}_H5Na+{rf_N~OwNfeY^bI?XQ$GdqY>0R^$xSTSdK=1 ztr&S)$T9U2SJNNKdJ;~Oq1zMIp=d*)BgKUG*$(PC6i%YXFL>+j43-x3M^vC-Moqb@ zl@lc2;vaa3mm$-qr0gl>?zY|7COqp&fr^P3;UfH!sg!S zhtT&Mh3r-e_#M;*e@9z@u%9&O<9SRTKMrC@noGPMg;R8|qjQ8LZNKQxxd$^kcs-Xs z8HA8cObf17wSZl>f3W2{hqL+4->}y39?Lkmo7^%FP=|GzkWJi7E)z!6$D1CYUK2^x z?lPvais~%m+iuujoQS5n-`Vr1fBf{h)THlMZUrx`E6 z=|BA08LM($r7H-nT?D?#*^wM`@nK`~_c4Vhjx?q*M-<%P#5#-~;NK|)H1|Lkle9{M zDcTR&V_Tt9I#&tyt0eNqmin|Z=oFoZ`pv@kG%&G2htV$I42DhtrW$*X{Vuw~Nlp~@ z`}Rc~{%PkG6i4$$AM(NG))sz@#(gGCmEd@wB606SXr zJ%rv#o?*kxg5g52EFBA(2QLE?nd!C!+|`+aH{lKLEpujGUsk}gDX!$M^$90WCG$&g}pk=3>wf%(FjaPSxfC|P?OE#<{2rR59_PC39$6E~&^ZlaKD zZLJWuPOC7vtqqg552rI*Lh+D^Kg(LZjQy1h;>Ja6=L&v@(uT+r@J;J8=zdJXygyf& zepv@}*VV8n%_G>MECb>JUFG6R2kG`>b68d~ihh8=DR?VW=@I6FTZizNI?EPzi(BC0 z%SHHWTp8#Z9)lSlhX?+_+jRcp7ks?OyaBOpNU2 z#U}*9lsAcd;q>EN*h(uh8xXPzZ{s+Lx!;iQUnyKzG;sJbf2K3s0S+ii!F4X0oG5t|&Xar)buxD$8EtJD4vVHwtP~}{Oe3J+4%?`xRjVnPsZU!jcxeq35 z?g3TTz()r~Q$1-0pZdQ*eEStp8K~f{dR0QUdmHG!05FZMK_$s4CGzYbojX|zOi|4e&a%+=dq{I9|GfqedP4ltoEajCDS{B zVYN+c?)XG%nHB`Wn^uASoM2x2k}?hR0#I=ZgJP zD8T$NY54cB389lJm5plIh;@b}wIl>jMK-{e%QehJaR?dQ5m8cG5T+0J=LGgFf975@ zx4N{J{m4JcmW#=mHbu=N-w%%}a;J9V&^LSF{mw9ecwKbsc4hk6@)$19s9oU2>)y_% zdR9SdcMsBJrFX3V35mY8&&M?1JV?0j&fa8>rmntTb}mZr70C?)@wGWLEk$@1U(}P1 zdo&BXaT!0K&*pE%yV1B8qoE|?2<;O%9I`uKX?EWJ&gI}T@z6K zkKifkm!=nT=J4T(F3fZo1-aXY!fqcwy4_hv|GZ1d;r%`SZ2lZ>hjS>uCgdHySbu?Y zwGAT0?SjAWk-2EQXk5i+V*^@X@tpEYoyqRQFt%LxFs+o>1xw@OsmdanqPQ?vw%VGe z`^16KmHee;gnC1Fobw+9Gb zyO%gv^u3g8_k=doOntYJ9H3T|=^H7A$1kI-_(Xmnsa9`yM=iClJ#f~GmZ<881 zhl#;S#Ud`aYaFaf+zNZkwm{kQnQX16z?u&Ji2oWRL57#ZOBNdRpzxyboG+!Bs@th} z`7PXX^DeJ9=M%4d_ZYuqh!iE-o`SpyANd1nlVQa7*{nd;ikq4w28St@)%Hx{&df2T ziI(s6fK=&@{ zQ8r>0pQLDM+gV=eiO|&=%)!^sW65l>Av|?C&b@5zV?BAk4D{t;&a-rZMXd~(sSddC zmNgzYIg(DwxX}!?+{ORv#+$W~fb^^%v9%YkGIKj`*aNq38aNf1K71}{t0(Q$*59dCF){n^yYwW5mj zQgREnpdG>gz~NOz+c6IqU*tnk(^ENv ztyQ9JWWY--UP`x$_tT%W4Rppagu)Mmu-Lz~__JX?{QBucHNU0l{iDe&rELS7Zm)!u zR)fIz;dXXQ-<;&@rRe#g1Z>t^%r=i-gJaxZ<2KVU#$G(zHwgq9{I&4D znGFrq5!`FrR>88G8N6D18-6~SBRYaZS*5N%{J9eZ&Q1&1faE3SX5Y&?yl2DX9}k6{ z49^W6qs@M89|QB!tMKZ*BcxsGO>^DsD%PsIGMmYYBr)_Dy}FPB%9}2+%_mC9KKu|2 zQg{HXazwCfAfI%y#&$&mbQG0PdcmIhmhRhFs#h0OG)TyoB2mjgcZ77q!2UNO^!lF3|vjg;VN70wuHg11)=Xlkn>%aLtkKd0B?x0xB} zeme#Ie`wO~{3mEr<%%Po*wa;CRXTE39)5iiW2=JPnY8SA_SiI-HmJ$c+`f;@|He}m zckVK}Y%+j6p&w&CXe^DljA!{r6il~@7L$7JDQeR_EJ{3mh23omCSQdVRz2-Geu9jm0-nKJ6y4^9*6E+N$cBP$$o$ehV8GOrnP$&$9%t8RVVc&a{d`Del`XZrP>_r1M;p zm!m|%A-9E{aN5IVW`5%;dmobD#v)RSkKvBoH~`JDQZVmjGJM_qh1yEJnLr?=HC?eh z(?GUX@R3|h9>sc{N0Hplm9TUBOgw5l%&CV$U>FD;JPC1=mGZFf1v zizBG;zgRrGdLG!PZe`C;B*2Xjan$;m$ShmevA06!d0^qpih_xgp#RBT_QYxmUY!?$ zEKta7KhT5;nM0Uk)KfAv*M}<(C#gAaCyj2|$PdmvPkDG8PcQYu!Lv@%VZlf9(mR3+ z&;EpJO}(Nuo&nG;eD^;ktfP%X%$WE5WYEwHB8$hp+=%JfvWPd7R#mhZm>&|y9 zxMwUWTgtLA<8K|p9&TI`ic}+R&jIIM>hAF4aM&WA&a%^*rB*B7%*oQq{s9^?vr>> zePIJvx4*_=7MU#5#*nSJ7l`wop2D3;srU_c;?%}4ZpEhyY_iK(x=`_griU)XYreD5 zK|Pzlh}nQXCrL=WfouI~mVILh-3v-YSzSUy;XUEFZ3RWGd5k}{Z3SsRAG*I>lA=du zGoP=@xOto>+*v${)g>mehSIgf_jsUW-F^N@#9L9SSqi=?x`)>doY1oOK64!!PYXSl zVtNI^tW1BXxh78)p~>i*a*|g5HYIDp4=P{aNvguGtX^zT<8F~M^D6b>4W1S*r2OTCGV=pDMyj7suwaDH@fh0 z?QT-`+0GoNYOv2=)aaJ}Yf7bwG$(o|rQlx9C$xioTzM73j1=*Gv=PasyU~)Vr*ZVg z7o5gyIapIGE9?&w8M{6T)S@)m+pZC4taKEMLo;ZgI|=gT8jJ;Ke8tiSx>R*+79F_ev#-oZ8QWdS0mx>M{_5S zXPKfQr06-7l+q7lZcG@+j`+?jLuE<1-Hi<--6WB*4Ay@P!bNv}u_J|z0v90?w3B`b z{_XS3ksAbm$M}HfZB1A!9VN^{1KGDxqoCb08Sg2~r@!@+pf~RYV^=w_iV5MoHD=QN zBjds1^&d?6{<9+3Y%7iY^9Y=qj=`{H*HB(Lf(}|XQr5==+LP8unrFLNppOTL$I6=y z5()0jIse!l6KT*oe1p|p>||a#X1r$SNtDmy*~#9`^j9i~vIoZF@I~TGtaT7J=bB-k zPGQB_AX9koNu5>R_=2Siyal$075?mTqk$JQsOv_4IUDUp=6jVOPW>D!2y%w9rCCth zl}5iM-s9EYbiw7-gdJ-OXvKvQsOux}if!Ll+|_i)xJPFgei{y&ZVJxF3M1?tQ_k`>+((w{yhfl|)Cq8mc`H{k&J`Lvm9SS$! z#v>dxW!c^SxM=z}ECM$&S}AloZG=6^zcnyL`4wk=_7_YY?h09Z8Y`p*{XoB;Zz>iA zTX8eolGwzRYv@ymI63*Pr+9J5y0NrvfiqWo ze-HCq?@W%u{c&9OE&SFphbfpQR%Dw;GQEq1)Dx=$?{CDSLct&d(Yu0oSs#?@lZ zt_zqxE(YFx^y2L$tDxlnoqgX-V4j30>t(p0`ZoNvFB9pjH&s-QWCp3B+>BRB?60Y$ zXv6y+m@9S}{h3kuyqgP1&r2Gk1$RMY=tR;iQ=!=`0*Y=Hi999?JiqaVpz=PGbBUi! z=^?t*n>WO?q9_*RM_h*DHgz1@^9%Kb{k`#^*CLzJUF0k{MuJ90u+67ZVS{@-+P{>6 z&{^`dqIoHmt=&kMhyCW2EjP2@oz^gInL16J=mDW$HiOsOsa(s@MYQo}5sMzGNe2y+ zS#9wSwtf2*cq8QDu0QhxyY_ruzQqYVRJTD!wLBkhqECF8FngFPg2ZD@OjVwPwF5q^ z%fk(AG99RT@jJFec@2LwLxXldcL5c7TdZk$&hlFYrnqY+w$}!5N@r9dV(L!HejZNk zr_{;tc{L8XEU@m5FJ}K;4F$G!C51i8;@A8BV~_Xjrv#^Zx|QrL>e?q{spZ~aL1zw2 z{d1VM6feOK5>a$zc>pyzg|q8Z)mWJ1arAMIfKkzRpH)yPblG0=dt2TfOi-Ib2GedZGyPAI)99Lodr;8SD zQKybkJ7|{6Gi-hQ937{uLKA^o9HROYhUEQVpMqRr;glG#dYeSQ(uaX-o*~?Omxyn6 z>r-cuJpLRzl|mZNV!%3%^-IoyUxW4NuXiGS=^TnNb`~J1Ek$Mfv@7EeHsi#Bcrq9= zh(5k_r@xbmxCc4|X#HO}nO-S@O${g6&4`2W!n&BnWth|JGn+6i{Vz*8lEfx>zraUg zA}n1N1l+YS2JKTYC1^ai*ESUU8A=j$5%#Z{9`-y zKJ%r*g;%gPLK#}ZT_I}iMcn$=7#8^5V`}QbWL0&U+N@r(6Z*0E)Ct+`(firab8Z3` zTi6wzbirsd#yVWb!rVwna(-XLw%q)Vg|BofMQd+zRx-AW6GA68QNCG;{aij#vouoRl68n9-P;q7h z*Spk-sy>db%%3bC5h*wrQ78V{$B2{e4LJcZ7aUixXN2d#?NCuHZNP zG_-VnVGVl&_<@TSaBWf=w_&8H zc1dI}^@xk#^pi`teVlS$1klQ591Z^1Oik0TQ=iLy8n!l{R8~!g~Z}B!9*Pm6P zF=r)2ls{$rtCb*q&Q*R}>3Ggo<1E#99AH|$BUq`sD!ENPfub8Bxah@3(ly-x)pE7` zo&HyNWlAJG9#P3ezlYGT<8xr)32!=ndI&tamWfN(O()&^=cz$ufZ6O(p(8@3l)obj z8gly}=V+I3Zcqk;MMGK9ej^xnVc3j3sBaW4~rE zJ2)wc&(BG~$*zl7z5itJu(SfP9wA3rZ48g3bnsPO6}o19#jq`FnUmIticul!d1-<1 zxa>lL=<%>3oP5=uMVxEHaUTnzucU>GRXfL<)p#2Dax- zJdN&AhoX=uR1H~-0U4U?Y}RNxZz#AD-(R39HG#Bui32w+Fd1vbgq+_?9deuH#q1rG zp*c^2hK$vLW6`5=>%|-3B~ql*E63B45kiOgkCw1QoP?>h#$dmFJf@jUX4_8|v(nzv zta9>Ul(BqC-(MZUB;O!DDaMvs7j&abP#)^eUrth<^T@s73b=Vqr9%IoQ2u2#{1sWF z_V7`#)-Duux>~q4EW_>;DWMN?5%gcVvKdx2LfSuVx%TtelSB_R z*;d0|YUe>^a0>Mpc#w?c6VB*XHEvj*O^1CyG0R;BT;TNx7{5Ocyg&Ft*puTJ5iIzn zY_)}Xc{q(u^?}H8H>S7p3HnCw#?^6gm@D{BXV;!&S&G}p?}-K#w2tJ?MP7%$m*%qH zJ`OOmx|^xj1hF4eOF{WmGh14?3FU7^?9E6ch?5w}hOX44{_+)Y{QODE`ENXE z+B-0_tU8w7e*j)zKZSem9A-WXNv2zz3&XUOgNhZ~{?L8$#$V5e*mR#euq*gHxou1xU+pvM^oUrRS^DTqlw~k16=USk=hc z`%t*CW2|Yq=pBn%=EJ1D^0}XiS!lI;I;AI%2P~%+8E>*#(tqzp? z`aRp5r%4`4x$J7TENSkSp!-|2F?!S^x<6qs?NhBK&CkS(Eq{PrcI`M>;92OTO@;yU ze3~fqs-9hs+x;4p252lp<3{FDT2 z^)sR?&cOnkER)`jlck1(xA~kLnaWoy-)m-V9;5<;FaLTG5UpBp`moTGLz*>UMj!5DwDNoq{HuX+vxr2J+w>uAst~R z=rtk_&1$OQ-MJ;y`bC4pZ7QMmwik=F(n9XhVG1qz%xyc83~P2yV(pw8Y)k|G)>bFV zw6ui4(-&am{=0BKS=#0u$<`XRC(_e>P7Y=xdfmkDg-G@%);LK|-I!aO1q z6Gg+(CF?PoWsjk!$Ca?P`a9M^&L!- zW_ECLYi&iPN(iUtn89D1C`lPE#TBzoWph0n@8io;4x(E^{^F~zz@JhT_|#nt(xoSW z{8$Z;xYW&_g&RWIidme0;7u~S)=Ll5_6SbW4yNd!4Z@0<^<8+y=0BW8CR3-uYIwpA zJ~tPUNxBs#4P$=YXL3!(aM?_m%By7f@OQB=T0#nxVm9K6y>ppz z1?Z;}g9E8@Y$^(CK?@sqU_jsokkji7V*KbU;s2%b1*2>u%N{Ey4S zS%5GX{Lwpr^8@1ONc&m#AYl&7GP1y9qDtJ^AI84hR)TxCz=4)6pFz>j;=#Lg8=hGp4mZyk!AvI+ z4At#qkEgpblOORozR{ADR+_`dy$k5Pz|^0udk|jsZeq{(rwUo;MpVLdICy#v=sg|> zs@Ixv&y++m3g1*Q;Y1kkYOo7~e#^kB5(8*gKgs<35@2ohOV$-;4yR|vazAEHB%gRw z=484E-rwXv{pfd*_AhBBQPEK0A$SCa&zuV1TjVfIBZ?``)&z@8A7*|;5gg-kS>nIb zH0jhi%q$lJ7N`X6dnIAz_YBk!4`H+CJi~2!7K5M5W;!#!7^C&mD55N!tY@}z1*se* zUK_%F`Z$_`n=@#ZcN30$D|l(d6=8K=4o>U%$OiT;0SEpydTG{IyiDFnYU6EqFBcWK zF(C@o1_mnLl?7tyw}~*z!W`OF#=}pk1MJy=D(#SdfkzK{aka*(v{7*tpRHg~xuRkl zm97~>Kec6PvDsk3*_^`emJ9rzq!XxTR!Cto$2ddD1B`kD(9e7#>peY|(tn4sK?@6E z|3(q5GgcIyZ9Crg;|7Wve*trnhQg&)9&Gdx6A1jALRBkL>9P;7l@2;kaX20&@50|uwMHEX={Roa@<3RGd4unM6(Bp*{QK2cfqBVCvJ_woz;iWn3 z&n$sKHoqRD#^Bj#8MwH3!cg9Csz>@vQxf4{$R1}EIMtkP63-=;c}fL_}sV;=dT_N zHy0BV&(NQ8?Ha+~ zw2VI56~e{LBo;enD2AVU#Vq@kVP>V^o2wF|#vCE%E|HGr$3#MQEre79w$Q!nS4sME zwvZKjBRbsq5SQQyc<@!7mR%7C)k)>NPcK$@RL^IZ#{R-`*9v+q!O`F65>%wBMFCe7 zL}yHT=u37D#7;TRju{??6lF&WI+!NBSB(KoLMbat4!sNtvF7!4u)9|az5mSk^IA_T z?EjwSUy&FD3qErPOTt%iCx9E{L1Ed&w5#op=x=}wJ&gFxnL<5Fmra7d!_rt-%|^C& zTricae#lE2XHeRN3(VUt6}~C%qcc&lbb4F^o}alG8bh9wn{yrS?f;yad^$m~p8vtj zRhF#EE{I+>WW!v+ahY}NDarIb0rg?7`&| zyVXd?UdSt*f6jZmj{`?b4RF$t5}b^(FgB^3S9HA3?8Re1S93g98}I`Y-zVep!5`3Q z(>`uSauO)!9>OsXgK1Zn7&kFQ375Y;2Chvu*j;j)nU*BNb(dhW+1bIie!a@(%~=bD z<>`3qu{ru*FXY<96S+H1vq?hBkKC7Zu*zdo;M%wS+{-t8yj!~zzqD1Jsh*R8kjs6{enL z4nvdmvHizz_S2YSfkQrXxy_@AKl>jQ_sCL$- z-s#OpUYP4l7C4nyd}*_&s_AtMCR}gq--9Oco~e zIVaT>f%#-*yyt%iUrmmnz8!A-r23(3TJIdvXmrKAJFn2yGlr#l&BJUJeY);D8zwzC zhOadhO)urC!i6)IjE*;OzA+lGWnBj4{@slc?s72ft0Xy|y$y%g?4Ptj`K;>)1%h zn7o(mbJqmla%7v=OcXfK$3U63W8065@TBV=6nTX*o6U3S$*g!Tv{jXk&$z_4RlAVC zYa9eEOhf)rA=nQbg5_I&<0q*awz_B%J}#M0#a}}4xZhp&`u27zU%Cm_Cl6tC~nfRvb0P-(|Z# zWU}n7SGmEW07x*IV(R+-ZN>fQU39qp4-V^aA;$+hXm_m!iyBnUNjApdV)rQKv%-;v z_9#PvQ{6EkE7Hk~3@bP-C2?91mPj*v#7|Y$WyhCU6&@ z2;UJc5XS$JomTrXLgl>g5E6BztKSWEfn1J z(rEGV;(%?$#=ecCONjQHkyN>Jf z8n_Ebf>@!la4vYf1pehe#E;frm}T607_;FVUb__sBRfWrVwWY%u8hHtn2ggr~dDrdAMkorS+iaK+U%B{Ym@4#s2h#Fq0z2Ggj40ECF6P8o^KtEfY z#zWSar|2G_MvBc*Ea$B~nE$(6QR10K+kIRit)1{~;!e2e`3}wRA7Cn@GTFrE!c5+{ zgw&P_*||5*X|tR@N%k7ix-k(n&{jrczCFYm{sTXLmI0l8n2e4B6T?ro9zAzmL%}SL zb#}W*UQdf=75&HlYE?6ZIq@)w8p=lOh0mLIW0+Dh+a#+AN`mX>()~m{_uxFm z!4E7bSx&C%Cur%FV!BXvmQ)jD@NHQ!E6(dDspAXbvXGG;TKgIiO|V&0#3n` z&B9_FapI6jZA&K>PH`rU;ca+l^8zlT&IVdB0|$FKV@rE4^BI}R_Svnc=$mV?KGBS8 zc~QtYh)K{cVRm?T0bs6k9z1xt5uP2>Bze_vVgDGzF0?;H8S7yzd&&v6EpUKoMk831 z3wzAUau%Vr81n`R-2acCac%wyyuErktdL3+`j;#4a_StGuveG#Ld5X??_SK?Edi<5 z%h){YLe}FqmWi&I;M*7JU@LTFJ3P;^7o*du@qZMZhd-6?8^_7c%C5deA`+rPoaerT zij+!Gh_p+T*;GVjuZ*nBB2iYNoaer*l2Ry@hD6&4O%09T^ZN%J&g*#2eP7q-^M0G0 zhx^4xp)%G38B=X4C%2F&>oijH=60;DvOxEM%`nAbC;KU-2=tcBCP}Jm>C3HKY2(%} z^x3QX*m7qM#%6r>fohc-SZL?ADg9KK0chZyzXW)>nFNo5QPbKroT3$TZBt?*K-OeOS`U#OZoJ*kh5a)I)q)#7C27^;QMBlIr z9dbFwP4Rv<_OUpO9Zq9Snb}Zr_6#%j+8Kj)q=CF@7=7qs#Ish@!lLwK`dN57Ok1c% z)-}h#jUy8&d>Ub);?fOdN3b!+@^> zIODAgtW7S_s=G+}P!oB|z zm*((#55FY#{@gjvOb!;;3z7p@CzGb{uSw=tIT*}nf`dZ_kg|V1>O@=7cQ&eI=OR~z zdy;@&hYp-l=Q#D9t7Rk#l*dW;MinJyRSWe%?YCeV&TRfp6(J zFPgkL=}MGaCh&a+e5hkm4BaYa1Mlbhu|}a@aP4dqY~M7Uy}3pf-_QfZ@9AT@@!}jT zKNU__=rh=Ba)Z%VxJft7qgeXI2K@hRhfVKG$diKx(BklwDSgmMwDzsVwTZsS*Ry0= zV_v|Kt*59edzMr#J&%L!x|nunE0$iri>9Tm%*df1WF=v@S~@4h){eBSL|g$>j%^q?ut~S{}Ig zhhv4MHd^y;)4!hb5b;BoJ_`9sFMOB4ftow;A&jAAV$LY9y_9@kbpZuLMd&yABy3vx zi&fsAgVNX5!rPZZ7&Oz7Y&6&ppWF|@I$j^y>?%!`Xq4gsuLBUa%!RetT}CZT3y48& zFDYE&LabJAMJ-6DANT);hDCd5uE`(L9Cv~YomC-6zvsa4g)X|0n==RvYCu$<3{m3l z_qvX|$fSiIsABOMSQ#2ey&g0XNzr=Lb1iy@tX@w8&A2r-=c zgZzFO34^_t;AZG^vdcpQWzL?bpOcK>ReLuXEt!M~?{7o?$+wW$yBEAdR`3@ne5Cy? ztz^cXM3R!Y1^!mKgPD;E#~YTaJ9|A3RS(TVfw29ss_QwC{cA`JUF%W3|6U^bl}wkp335@)Fl5N5&BY39(kT(568!{U4Accz;-LX;M{S&8r<_d z>N}aZQ-&t&m|yqdvIl8=-a?f=UnVYlXD}vYfqZ6_GGyoj4p?Er~}83|YZDHPqDT7z79KAkuFgoOynmEIZPJ z1JA`U;g1MVZ%J5u`T==!=#LVaIB6-dU3!_0&soE2{ECNV7ycvuZa?W4c7UE$(r1-q^q@{B9!%03=_c1f z^fR*H^4wZ@O7S5Rvi2h>$~i^N8m~i%99UbFL&p8 zFf^s^Me7}$D|G@Z_SDdSOM@_=ss_Eo_;9W7I?t)h0EIqu!Q0Rou%v%6G_)*$Hj7kH zY}!mF>$Q@IU1lI*qDH%dtMT-@tHfWogvz9BN4HE{bZ=C|6?Wwu<7sl;x}qyIyFZs+ z(~m{@x(qZO7-fUH1?hLITNwS3fvrat&^<^0(l35IPLReiea=55y_-{vi^y<0g2Wu%fx zX83-lq4ofJ3&)^SVjEE}n2k!`e$w3EGGLKv2*ril@sW!zPBeLoA{>_`TmAyCRAVld z@9kvE8V|61GiUaeNhe(=Ai+DW3ajiTAD%gr z7OvaZcZf&d4@YyXwiDR#M;hl&%3x$A!{FuTUo@e=3!|H^V}zA1Os_ovb97Tk>~?OR zZ5s`3dAFdYE1a2rxgMsBmjEZ9yBhnV1eU~~K)uJ8>3wfc-1A{Qsgb&lV+n$A^N0&9 z)bOGf<%;MsaEF@{Yy+n=Wq5K@9c0UIg2>W?Ft^$p#H)13`nl1J?Yc}d|FIF7y*vVD zPHm@CwF}Y4W({m#ybh+G5F;t>C#lJ+Oo$sUC4rDgVqRWkZgAfx(`6*7ukU1B)H0u} zdl*vNc>O7rK2gWK$k3+$K0l}GDwi=#-IL*k7NMz+E;-}%iV4C@CN!auNUkq28-C)8 zt9vJq-6lJ5o_PsnuIX~Tf)t$6Se>${Rv=aYsb73fF0m^v=U?}^OsZro| zfacSn_u(O&_0J2o2*|=wW(8H<_?x`jFdJ2Fl+iHG2lV#sJ?I*j1-qamx@dkBJAG*g zeIxXb1{XJjvY!HI)$Ande>KgYtE~s`b!F&Nl}_$1T}ZMye@4Rr2k6)>3#k)gnQ5On zU+K#ez_{F}|Ds0eq{G|Dg=l3+Q(1@34YkagdtyY8SwiN#EMxjcg~@E^KUDkV3TjjK zhFQ;bzSl4+kae*T_B_7~^?ru1&SDPfRj^>bj2ytZA!YQP;vuZwU5tySpTw`+^PsZT zfHi6qB9+@Yc4ea=+D=hsPgk0tNZf0DHqNzBvIO9LkrcfyltLuDHR0Teb@1hz8!27g zPtA1FNRsFQxX~wI-v2QQhBkSFPg4?R#7;tdR196`WFhI1KwVD_$7xedz+cnCA%kO0 zCO=h@cTsx72wC=}7X0#FlB#AqNI4(~0rs~+&*Uj{ zS|^v?}=c)qn*9Pd_>02OZR1Mc>U8T}q>3CRa9n>5zVz+(1#^p`=;Ffd?#JJ9Yy*~Fr zaZfvYe*0s5x*f1#vO(?TEmHrz^5sN$dDL_SpwJFbXq=57L5QKJEg?_Jo-A z)*uR))Z!XP8;Bn2p!*JSyvmE)P)*R9ri8`QtW`m%cBYeAb~u5=Po^Ya@Cxf^o=JpG zxzl2W9ICDnLbQ~c*|VZoNo;ux4Q8yNZ*)E;9@8XRmGfY{`7CU-dJf@R65z6u1rB7_ za^0f)eHL+tYXKf$ttnW#A$*AGbio8gtwqmqF#lhQPHZ4BM?t zFe>&qh&HUj)l<$<@7E4^_Iwk?FDhtP{S0sX;-i9uJ9w@gAzLOqpdS9^BxX*t*z>R>U2Hhh?$wf4|YsTMWeZU4bF1D^zJ-8JT#g1L8WC5Ivhw(m%SE zxOCKD@%R;H-yt2CqW6crB|E{qOfP|2ay=b`_I2nn{SJHlg$r!-?%}_1I|W&px5>Gh zRJ0UX3RlwqQWeJza;Nz|jLs|Pe+e{)WU+o+7%IW8o~s8-M+33?wG+vg@gTw~mLTeD zh0hB`=zm@L@o z59$lkV0~K|Hfu$|>5w`Q)RZ#cZ|==#Ec-y-`h@bE=LDha)DnD>tBx^uLwUwr&dkUp z39AO0@ZENax_@=kICe2NkNhD{gwkYTM{q9V9(4@gylaAz9f7D*u8GZ$bg8-6Q@B5; zgYMDGK;zLe6nZE?{HKI~;>dE){U-!jV`X^w!A1y(S%Xeb{fX4x493p10zDmOz`osQ z$i=;FRK>o7BtJDH0h10wY}YGRW%DjtB&S4!BOIW6=1O!OUjx$ik`c}bpnKoMk+*$MY1pyT zu*KsV?G)m2R6!f40l$E%jdT%it%!Ynv)IAJMz-N^G~>wS7pu+(Kxm-|jy?LqKK+N;=jcu5mRsZBifpTR#(}URxM3$|onwFOj6;e0->>0=G5t zVZL(#+2;9$Nbb|1Ii}HMKq-RQtAx@kor(~lXapN$7lM@!586NWQ_JW>#PjERygs9y zEUz!1fpOgZ`rtRhT#F<6;}&p{`#i7r*+XiA?vjJ{Bc%Klcg|=^1fAG*WQ}<(xTq8| z^(vESq^Jt&^#{{lk$Z4u8o`}Mjx*9(8ualwO(J}qPfe1!?EJ5G+Hj~GQ?*vWQKfx& z*Z2hI(dO=u-oEVU!gSWG{y%UY4<&o=X2Hsm$ylQ;gz7V6@xy;sa3fU&O`8uvb)Fy5 zKFhKpPddTATL@NKsk6F1Lf|oz((+6`dAn^jUP{S<)!Q#|`G=XTR#r49#2-eIIYiik zy?AQIcE0E>eGrz_CHadBL3>&pSs>&TJ&X?cDe>up4K3`^I1xO0dlr7$ zwF8K76xi&z{0kL7<@XNmdY){+*c8_R!kNv5@x{Sl_hjX+%TCS zwE^D!mPFqeWilG10&_B|S;gD6Y^H)dT>NB-CuJhgT~?o-w-W}taF&rg>dP!SBEZhf z9wXZ}#iL&!=Lt>Y9P3Y$$-u@TTA6>8>=f%Dmg`=SHisf!xymGTa?r*Hp)we(7KYvj z?ePuA1ZlQxqjT>TpvT@c;PsCaDXAUMIO2tyg;t@Kh8vI zGR`pGOggs&Fr(|r=-TR;X!wug^F(POeE&l4ZewW8m=C1!mO-`{kIe5n06)Th6WdN@ z67c6b+j_f-2*=FEsOiGw_W3%xWV{3~Wkr*H_pC8(n*cF)pN-0VuHSOf8(VZ9lUIpO zFj=jhF8P*7+ja(`m}xfVa-1=}Z2|Pd!Q-S&*B7Z=1l(&*1KVSp;6ZQ=ZRa?=K_5dP zJ4*syP#)BFbNPY|@?_ebXzHvw88-|d34P>3io3VdK9A`%`&SBA^30=UJnl|>Vg~#U z%7^hgSJ~E)#V}mw58icpkmULj1YW)4y2~@og+lruSTYdO*RR0TV@4q5rvVn~XW{yK zadX9`H{taA_3%8+g9ZZNhua>#q{S|h%UHIPb-9-z zsw0M`wT8f#2l6o2w~WQQYO?uFDJf9V=jJJ^LHI=-+0c9vl<&{P<-cEY-keg>yri2r zU6?_Hi*=x8^a6Zay@hJuiR2twK4enV28#1|Sn|0Xmw#=dbsx;p;g1T#mhj1j&U@sz z`ae2W9z{N18|PS0bvAmzv zsTKpL4bs%|aR+{LjRL7y!Mc$N*?7XQ3QrfF<+ArDaUO8pljkY;ZEq-f`%4tA3A8h> zcQ=5VPcjBP-A6WZ9btXY2JT0q;?O)NN$#@z3gVyfg3>Yqr0`B;GH&IO#HZsBj7O@G9&3 z@&X%Hd>$`8_vL*!Jd5M9Nn(`XY;wz{o4so5izyY8$rb5w0nAfBxu z*f4k=W1{4lMaPky;XOhvDg((x9}m!4@S4c?X5xmt&2-K3MR@LJ34~<|lKh>IN%xWx zR^z`xa^~g=h``k}a}^I(ewYO9^e$PyC6GK$Zey+~hr;9o@o?n*2KKdjHhNx8Qw|%g}LGRk&9HWRvP!OR!3i_ujHy*Jm_l~ zF@ab6pz(wT+%G7EdM7Us7MTG<O+55&?_=ewR`MbocA&re2HK=Oiu<%DYweZ;uPh!Mz;6nrxWNXB^ z_f{a6RUxMPn_%fHa|o9!gU9iaoaaRp63_o-%uFhXjzcsFdNmJc+&M=(pQVxQrhZgS z-5AIGzmho7wNO2Jn|P=8(DeK!d{F+8Vp1XmJ@CP)zsrdILC&#rU?uP_*i*sw->7&` zmp-U;M}>H#!fpys(XxqLxf_j(&5UWKzdq!?Tfz2Jrh>DfHuEI^9J%G_2pV3e$*RY{ z$PVuLJX2$Y4gWntP8PJXVJcHVL9L$(|C)+@|rj)i;6rD3o>1Kuol zhV<+%lJq$pGTJxM^}n;pA=WL%aqUR^#)TLs?;oE#BbnhRsXn6_UWM>X* zXRL(CIqG1P`id+&t%NV-7eR?n5|xfrhL7S?V92bAozWlySBG=x#0+(meEOMaq=&F}1!0RkwX@RRCyDI)T_dZ);?a35st*{k-jQf(8{`KtP zM|RZiY6i{9)`##Tze!Qgd!BZu5?x>wLM{(E!W?e4lHPNHQtc^l(K(++_N!t`?^0xq zdda=PFC-~*Gi2vaN8OvR@lQw*=c~13q~C6#rE#2x*{X>8wnajhyD`Y@(SVC>!#wl9 z%h2%3b$V<{9XWpb6~Ea%gP5LLL>D9}!Q!MGusR~jbqJC9WGxKkmP1TW-6Q%wFo1dU zp6h#UR78^#*NEZS8+7{;@wzw(dHf`FflBsFG?hE^dN&crH>Z&F* zZZN{(j7GYOcLLXP+}(RU1I)WkRrGeTI`Hp%qh!H!Xr6Q&$7by0PmeuC7r5H;#Z`a9=}(~;Tq;(FJGM3xw@D`WpePigdZI!6r5QPV_W(Q}jw2&S z8_+kcp5}4Aii(!$SoO4vINZ{tgFy>$n?nZpta7ApAMGUCrKXT4BE^zL*3hqdgiSbR zPJ5056*8=%|IK(sO6J}s^>tjnEO-u#_nanriO0eJ-51ti?Jur_JRNPn-6LoF?cfE+ z--wjm0+MeMaI%6u$Jm?)JEhg3s?7&jHyfh(;V^B!-$nJ-SHs;c(6oe;m6V)`AE>5Kn+C*zCGUCJh_Hd7dn~Pf!Lu zgBV`#?Kr4eRtkMhYf16Fc_6uBCwZzMNAA4R!apB4MwI4O+^(FA`8GSSfnUiQm4%Uc zj`^q_5KWp{6?o|=2I55Wqgu2)H_LKc3}rXJ)HQG+H^2u1pyrc8n+(2MNN(_T8|4eKj@TCIB16L?G(I z3^2a0M-I!B6YVP{u&U}NnP+3Xj_&BY8XUdCR9fh~K2;TghZ8X`WkFK91OkU`_ zK#kZUzz06$^nx&|_{ojKpDjUC-yr6V@D*6{ubSQPo9l1Ok8{3ifGe^mK_+Go9ICtt z87D2ta_L|ix{^nQTt?`eAL&Tn*x^Ro=QO};1zK>v?9ZO%W^tB1WKv!~7(+G;>aN4P zy@K?aj}1LiISbR)TG1Det%#N#pG3Ydp|bDp5#B|2YTNmOs3wY&S;vy#K;T)Tu`P<^ z3>ksWbv{YkrwkF&9%$xOk57UYp`k!DJzv1(2QEs2oXt)0Y8uC|V>wREPc=wX-i}Q# zufce|BKEGI0Lgt*!QgNRzIK{Q+$PIG=AFybsk;CV7W`m}2K=xw_am*Tx2C(^wh{}K zG|U``A_q7p;PEI|yw(X=kxoZh-hCl zpi2gx5vpicE46MN`OfWV)JM;dzAdZR51Xtp!Y~R_cBPZ=UaRq|s4nzQJ&woDoTOiC zZ;;0ZIn?smQMkqS(HDy+qiok0`94*j$*&x${m1QVl{pvtHM0ba|NMxtKN&^D)GXot z>-Fdu>wv>G^WoED2e5l+0wYVN;IVza*wbtQ<7ehD?&V65drb`F?`Ke(vpG!rb~Rod z=gDpV`GfTe-Deh|HG!l@MHAmkl{j$87`D(o{I6 zy)-P^ZU#01p71QS0`A=$pnChmIlgrSHn&Sb0ky>;ku!A4>V=s8!y5T9`UFTjqA%YuDnf6hro6{v!7B_7YN< zcL2i6^dRbMFgq*s04@p`Be|iw$-=n_@Ss~Ac62Ebt)L=SYoZ2`*!z$cx)x)nh6_F7 zf0p(|o~LtsmC;XKi>*&}gO7{uP{plI5P5kjP-y|4#(%ct9Wz8`X$r$P&VF|+;|Zuv z9VPqH42WQ$1>QJkkM*YJ@I++-3`bleUKVvQ?6Hunni~uC#}1Gs`kwrrpm++7$)tPc zIa-nYlL?qpOf^<0k;kTmZ1;;^mi?oQI)bqv5wHuUzL-L{)m;S6j05erXTo{G<23ZX z9h3P*89s1bQH2{jSVn1>;=XWCcqQ5IahJ|@FoF5UmB2gm2lF|e^R7gd(6}N` zcJWCq(0?Ze5>|~+btMB7>2H{S?j-y_N3hdnH7y+Xp-udm=xn}?ytmj-1~scm+Un(0 z);t6iWs@M+Li$pl`5ae0mDO6!C`hh#>+?%(}|(PVWa?( z=O~bVF+FnY#by#Rh5S=VR}xwz__Nkxma#5$HV&$@w$QVnFd1M@^`e~sEb;EQA3Nx0ieZ`hC}mi^ZA!o zgLC0~D(L9~;V2G&i^AyZwNIGs26Eu@Fo`8=l3<|W1~IvOmYIE^mISqPoYfNnXtaJ1 ztz{Qufy*@W5gkeM&@y5310oKX>EZ|$2Th>kTsN<-JqCofjnZps6(}L@gB=zvbk45h z{6};fJ-J{O@UIThZ@;W)(`Cvp-gcU|j`L6Y%X9N*OXO{r*oZD0PGQpDVqCtf2y1^$ z#%CMFDb4&xrb%&5-0&&p@9I92FrEjz*ZKls4=ia=a0Gux_;VaHK1-P~j>TMago(NL ziAlViNH>2hrc&w0=`!CK@^4s}nOd4nMQ7oeN>;k`CH!TLkmN4v{@$D!56+4xUsg)ZO^$#a{W6%|x4P zv5|(Ho6<;_?%Q*TCX|b^t^1P68hLM0G_sslx$Bymq{Tw z@kj*!<-RIX>#tAe1p)aTb`|1Q2ZQ{P$Fz%`jWbt8!J8e&@wD_5OcgDml|sg_Yp{*@ z$~b|U$RoPe=n_85qSR|aCTVG{p;Hu=(uVk7^tE6O-v3;I!9ySDL8)>aws=DrIW5*W z@;GU-10#t!OMY-h)*3>3OWnD5L^? zN7&~mLyYek5ckVJS+|cj$^Q9Q=!3dWvVU(Gt}RFfv9==ii|Qc^&B~xluRUYu>8{34 z-WL4eby4JJ*)lYhuBZQn2|?GxpG>IXeCjlTyQBXuM(v~oBDci?8#M|T&p`t`F-rg^ z+p05bENa<9^E2to%o-{vdV>_qX-1iU(m2On%KU|{9+{E&muiR)(MGW%a3fDh$MJbE zzh^D}7Qcck$WO-4Vkul5JPE=dPLVD7d2I6pW6ZyAhsC-c=0 zD^LNevO?)+4Q-qt;RdVoq(I{LX6iC)78HeXJm&9PQEi_nR#>}3*^vjV#^52i8asNe zm&?%DcrHV)+uh_)atIjg3B(Mya_s(*PG>c)1%JI z>hMq1U&V*S0Uv6|kb-B15E8l)ZW!DlE{YCtrNjls_VLKsJzl7OYzaP5p98nT|FQl1 z?@}?N1@LRt5pZbRj(^e~~@xOuj`-MZS~%>Tsrd(L5ras$(vhU`W1{>vC+FTzzc@)k+IK9T0rg3R8oteMKtJH9B76L(>66{dP#O7 z=(^59Ri!GXpF3|%+8zTzQxqUbb|?I5F~BF<&&lmRmK>boM;3d@z=<#Eu(hv~sy~RO zYu@i5)j_w|7=?Cb*|}cc>mP*Nd@lv^SzR>F!3Zum$6?fyTSP;upR9SUPC8oMNp3da z)OBhw|I#`V#dXH!YAVCL%3K=Y)X!5=+5k5t)7kGcN60tLKwuoTh_><>2yn<`yfYk# zNcwl$lY9zRe>!L8Y{U5+GeznAd;$2Iwwz8=xxi?@S%6ZfuHw&-3=(l^3)b%mhlxJf zq?K<&71qnpc2*H8*2%LP2LM;9x!}a(MLhAnl)l4I5T2+6d$gXC>Gsp$&F2;p@VyAF zvSM+}S%B8;+zAq22;5E#x@|~C( zrAlM3+mja0oh+SO1+_8_jIcvB`QZGISZ|cVd#CeJ-&)H2&xbR_Ao2hW-Xwtwehtw6 zKV|g&bbB}`t&UPD(M-$DMQB~90lU75faddF5@p+plNQ#2?wU3-8g2*J#<5sdLWPh!XBR1B%? zAzp&6I4)8~Z_E;f?&UdTLZ%or_e7CZJ1^kF7$^3?KrpyFD*%78oO$_H8@R}MgjbdH z;Z%;w`E&Ok6y)+^!-|XGO8;K8a#~7iLn3f}P9rrt)5Ki#m8Nd7p*WscgUbvi)TKO_ zjHeThFpYmJ`TAD+Fg4Gfv^NdXsXb2kcSkDiytRqk^sFJxrWWR(#H7v5@~^{vnKo1{ z7O3;qOGW!T1JubP5)K{Og*(=NE}Oi!b7&r#)CN@fB5{ zbkVHQZsy2%5ZtyWVqXMv{Lg24FyS~(3aDkf z^$mH^m9w#KmM|T?AOinMFM^^|$X__#$W*;+#?#YQp^GjbZe^`7Pjs1Op4{X|D<8aN zhkf+x2JYrl;fSxKce%pva&nE?j<%BC25=EtZl)oa8 zi2f1Bx{4=kXM6-L`??Jm_ejC9p_35cUQEB-&;e<~8h*B16{uzkn#bAQf_4t1_(I00bHgz5(57<$~^s|uIxCHu6IO87YA54@l+k*a$&~w zq4zONG3ciwY!Z1ktBp)t%DD~Y@~Q3bBzmVIkKTT44vu@DLal!WNKEF=ij8u0*Nr~l zG`BtE{elamC$WM(=%NaSKW^bo>u6BXF@-6Y#+dKiOv_nv2A(#ygFjl?P#V`tsw+B3 zz_SZXu6+X4KKhni2n;}rz!;3lTtV)dUZnoctKia56WQd}3V+8glb=tE`3e=Pw&?V22e>t#=h=+?4^Rz&szkCV=WpAf# z2g0b((_nJhE)PXjG}-Sdx_C}!9(Rsxq^iRqjCINuQa<>Hy0$IGqMS>3<@IIE?dRbl zL++gRRF{}v$i~n|C!lzAnVH?uEwH1`iIyVwdA&0o8rqC`Rq6^jrV78PC%C>y7j(8hCCP@0V29jng`I%U)}7#Tc#}YNIuEq3TSD+BAN)RToOy7ggi*8> zC+p)5kfldh^l(c?_l9VG@Q5{0(sagb@PH})|3Uw!rTDTXkM22rlhpQZC%cxW!}D)z z(U8l=39L7U*x?)q**8d|CB^WBMi;p;e;fYxNF-^o@%Z+M0PCP=zz#hbW}Lr%qcXo9 z(}(j*$n_CF9C>2_6-7DJ>#iGYRM(+4xeI8!(kf(@dq9Ay6Gpg(qN}zKvGv!bw^TO} z56x9DT@AoFVa8`FWxns%oT6AZj{ioM7 zO#C;BvXZdbb`AD%J2&GfBigF96mK?$a;(MyDtvS%SwAVB%kWQzz?n;kP^li*%L>8f zR-kG>^4NzU2e!4(nGN-GNKms3$=KvZ4ep3&wjWOzf#7T+P!ojHj|fnc=UF&wLNa+<*hkcAvWRQx zBQ{Iv2Kg+#16C|9fC8@Tpd<-6cy$x#99{(_nMRDms3Gkg9%H}iwJ@5hQaH5c7CEy| zp)TNH8Oly;q1Vh$tfz*>ooRQ#;w!tS|(U}@z|%v`F#oi_uWKXEMRoDw*7Se0I|9K{MR5%U=bjnI8j zJGyu8M9VG?bNuTwyY>4L7&rb+g%+*{GkTLkZUym2D^iwRK|}W%VcYUp=0v#&&e<(P z#uUZsZben$A$NikGK$DeF9}jTcL}|JYcX8rxR-}peq+B|0&ZDefWyNp*c+`2$xp*o zFuMCSy&Q3d^NAEOo%!dWv)=>vmmA`$)Td0?qdqczRSS-F-XPyUeFfj*D0;^K3QAOe zWG)DD?4>LBnY^E=R83 zYVfC!T77;^`{+<95Ao?mQ(jm%Kn^_Z8arN}D{D*oHqsPvKobF3V;!3!Ms7 zA+AppqB&Q@lJGFdS~kcmbo6GKdugyY%MX$jEAX=8O?LZL5md=qOg60vCu~(U4b_v! zkGBS>Mvfd_2=-&#cS=I*tzn#X_zX55;Ck#F8||0)X|UPr0R4jExK+>rQ|b?bbZI?t zP2GVn6JmL%iquJIs1k(Cf6Yex6#&iuUeciG(f;9pHy6lj?1uXtvLZ9`Cj!!jJg$eU3ie ztHkX!?L%1Se+zK-(-aKRipGy)1e;Is8T&j1+*mP%+^qeIjuErb{QF5}-GC2iT2V`M zQrggXOb}Cldh#P=7D9o;UH)%XQyTP~lCM@QnuvGM<(+xdMnI4#6&xhI;4F+B)It$k z6Wr)hiu{g3l;8S_l&YE=masLI_ih(1_P|Nrgcl<$Y(KblG9&^~zoMiLHk^Rb0%Ka->tX}rp;Tg-F880s^; z5949zt zC+W!(r`v3^U|2pL4lj|$l=H|&z4=A|cIjirN&&p;76*S6#L;5TF)%OmLEBA-$dAv- zV3?Ro{z_)j%#Q6;5zG6s2b&xc#^dE0bN0=vz-V zmq=mmZLYWdD+@P$OQA0Y!eLu)CeW9Be9t`x(movq)t~9${B1D_toA~o<_ae5of945 z7oc`*H2jkZAjJx6LHhkNaQ5S9aCP@c&17ZFob!Z|?jLk<$P+O6pa@IGZlKPVrFf|4 zDZZH*MGu^t0C(=}!R?rYBg*c)Z3+x7^IU=^r=PKpyRBj6I!lPEdBj{3Eu==Lv{8Dh zG-fw&JLFIQuyG2Phd#+?QV(%^L*8pPL+&BDnWPKVt*^*`o|(WC+zk5HJm}jFxw_JP z6ATV)#$B^_p!`ZZ@_5QL;_oPm8(qywAU97gi*Dx}qW8hYL=j5&|NQ)ZnWA54nT#vU(d`pbtAHDDN&x*$8O+F;1@Jm!seJHm|rP|tNXuF5kaJmVVL`|lZ89U+9R=SN8D#!Ix{QJ#zm zn3J*m1I)hCB4}eKF-d;6dC2)-Ds432oc3J&c5n$X+xdciPfx&|_fv4wUye)vd(- z(Qk3Iim4%+lA_5m6JPS$a~hQocE|GeWGX4uf&1VTMz?L|m|<3U{|C4Ch`xfkH?y#C zSvdLhsg*W5>M&6v8Xy@mi)Qv;z+-v)$*;^V#wX$}xtV$jo7u8p z9<5j}TIaG%6?fmUfE_DhVX37tJG=KW_l8yB+b_8|+Ia?-O%6wqM;2Ih`xM)jx(YwO zQy}+5nyIy;F&vnnf$;$|ncDdhw6nVyjm)Ow9FumkM&~EvYTFEApGp0DJq(%R0^S@Qi^Ced#y|%GZ{(|iclmWGFFmirIe6_q`_37 z&R#1rq^Qi4At6M@451I-{@>NFv-f`AwVvm`hjqfGu1CmvW&~H%8_HdCH?XSJ0}iyj zET$XhNKEmYLPPU0C~d3~-^HD$pB2+<*4~yTqzXN# zaIJ%s8@2)G7p3^B@F+M7Z)ninTVSlA1uGp^qq?gvhi~Z3ZSq`Bn$w$~IZ8fG?{}nN zXv23cJ#hVd6`}KI8d9eV?vEymQkflA&)9&mUqbohTP4hz(^WpE$65Nm*Boa_ z_voSl!BSTC85GUb;D~VuT65I!gpCV0MDCVc9jD3v`WEudxPXfcw&SgZ0XVRxQ62J26<8FNO{0#i7Go8JhE1||_ zB#h3g!yS_@kt}Wx4ooqIx_QSqj@7FD*jH-pR$)4|qHa=b2Ygg9w$ z7I5RJyr0D`ah+wXIJL4XrOzEl%11il>;a2#?`{kHl-nKe2902^^c9#;uF4~t-SI)U z^=$Xq7`v2*Icyob4f7rML(sYuo}K&x=7dg=b~IsJ(cv^@U9RD#MjgIB@gTX~_{Q2J z_oGLly^w8c&dh%P`S1 z?-&FZui(|qm)Wk*DI7gzKQA2;1iAW#__=)-8x7peizSyyOXoToP}B*Ggk8eBJ%Ly- za3lFn8-b0oU;M!`2d52N!xheLrE%vw;`6XEyu+oNY(~mv?APKfOpNTn&bR#dg%faU zV+Jp}76A>x7ld4CH#Op%89qJR8_h!8@Y~=Q^m@7{-?Li9qnahB(#gZHIISl>JDV>$ zZmpp1*#{i_^Ns0qjyB{?w7@L4H}uY|1QI2=UP&Ipz% zpTp3L(m7;D2DyLJA$i*u%F-H)eO8#^hgYlD0SQrtE|Avm>a_wxn z!qtU*|JGr+_0^Z(Dwe=Q_ht0eLgp{>mIUJ{O}qToppc9^{whQWj^O4?m!G zuK$-nPy79b`4Lk0EKS;dKPiRZF7ZTug*4`I6>S_63xoYtC_C~N>5NJh61Ht+-&@V{ zIi1Jz(42>4*Jqb3$ng|BvVJ5e^gTuCd6OZvu{+GPkAb%Na`8ZF7H1Am;*bq0!tqyq z85@1TdBX(uS+PN;z3@1!vvI&*65HXf=Ra{&o+^HF4&*)Fy1cUEZis&$N#LET)c6gw^YX-cxG8>FHHufC z?hICU`r?_EeBsz>Ck!y3iNn^)F~d=bPOF!}VKp6`m=l0KqrADgCXY{7CGpLyW}b4Q zh3r1d*wwBMTt8@nmd9#XFmo3k+a>Xkw|i0P!v5laEOk3FBuZ2R+9BPUPcr-)}Twls~t|M)S2pWxTpdq`gwMRbTQO zj``0A9v_RwPL84Ik*&$$0ikGl`~v)?Z=iMHoA4*B7G}=s2$jL!!ntR^Vel#+ZrUob zoQGRrfb9|ZXgYyU=nUgt`Io`sR;Nam#`0qS!<^o)kmJKnkWrm7xzwK) zw6rD*<3~z6xP`H_rne1ky}Q3O_)q{EnulU-lrb7^>;%PD!?|f(DK+&TOu4H^;KA)k+BYQPN@5Z@!RLzQ|dK8bXQz+BSYo`9n$G|Yv7_IlJVzX`( zI5u5@0n>*{-4`2-_RND7z6$)frzu~$GKPBh_yjMv>hYtb?YL%5Ul_A)0G%DNPkh^T z8T-fH5wuET1)YlDlu-8t{u#;0;6M-s9Ejwr&OW@+tVlR{v6J+U-3MEG`{MLsa~%2c zBly4o_Lj>?ZHYS0kMN>p1v&8NWrkS(AeYvJy`_YMHB^-SnVgmsfc=vXLi;~`XufU^ z|Ke}q@BOCIebN=PvU)ge8=C_kHXml~)kb)2UT>_KAfQFzPLxHu(r4cp;`yQ*uxp!K zoHh3cc&^gMRqMmCzAz8+r)P4v>mtuyorviRt9gIC5_UZIm2RH);eET!@Ui4PIh4V) zWvV*XtY{LCTQQmxw}Skg8D3FdKz}OkQFGrOe9&z&9QU)47j+wn0qt?PLX=50r@nMx zQKqczoE9r-?Sw%ejc`vti9e{)BJF}qQ6{l0?)N^;pVtRM=L<8?RQC<2XdMLg)XS9c zu?Kk!d&qAJU%|0-#3*TCD$YjD;zV;qpZL;4+hlK1aZw4t^yqL_&z%(e+{?i|EA)xp%}s_9h! zK*~EOJ*0f+m!PV?p60&IhLm1MxFX~h-HJWLL&x+HX6K~gxS9d@H6jVp_srm;57zj0 zsy)54i-f0N)}zyvH3-tZk@hF)&j0Q zYR}IuH&MHA9{mF3u%>!HZawuA%&gDgpvu+!e1!|-P9mz^GDf_ABoRJkoD*(8%fvZ* z&ay@G5h3XI7PPWaf$lcrxF+^3`E*RANryaO;((L1=;9A}q`w~*Zhg!Vr%uznKdRv7 zI3CZoc9j3O<2|On{s_u8&hnnElQGJ2JASM4r^DmhL;G59PSDWiW87JAMy!WwRec*uJch{l*Ef z!9a!f+*uE5^OnKrvfe!8i4v;1`QeYpfnrv_KwiDDH+yA1gDxFc;J=NQG*VlSZEIeW zUto)nX|qOzp$e5rcpoo`&+Ih;kBtSd zs0uiLag(q{S>m$Qn?m2wwe&lBDU5MTgm%AURDLlETlZh3qZ8iHgyNof{pB%7W!X+J z->-vd;YZQx#dTDdJRbh01>)^pThY_s6e~0xxg^+kjwf#*<7=znn$Kl3n73 zFlEm9dKpgnJ|XkiP}o*yiBaD^;)cJgFerR4=C~b1Wt%$^+x-l5(rTp5g<*8-%|=S} z+aewclkWG{hz)y}!}pjf2pcN!d!?Q@W12r+>op%tcI=@FDUUzeV-sIV=m>k-Z;5^@ z)kTj5b2+TH8c(l(0o}}ZKVawm{op7$Dt1CVeQ9fe9>XLCSoT8d?cN`2&&7~oIr79MarCHH9(?@z z4}SJ~FEcDSOB(x6(WE^=}nkZw)EoU z6Ct$RWE+1hld?G8CiD<`L6u*aFfF>8@}r+aZlMuA{3-I5%{RFzp{(@6^wXsI;skwD zsgyt5G7*ity@Y^@EDGxH$+deM#7B$wQo_biDs#2wN$(udzR()NYi^O%f0|r$`v7>m zhl8D-KB)KF&imT?;&x#ozn%3=aDJ;U-#h#nIqa>WvjMNDWvaS3>XHT2#LFhr~I`Oz> z=qS>RPk~Nz*YmNJLxj=oH>fQ5AQ!|a;-HIZB<=s2c$^4_xPbm+EuGk^ey`2OnZN`b` zoQA^GDduQ>zZ|j~D=4RUC+%=D;v)-ZvC*jBbZy#vQ0lvh6O6q$Bmr zu>doUmc#Z^Lri)M*wl3geD|HpW9~$Pv#mAQ>E0yAtWScbT_y09ZZKNpIQr;XS$sSScYTHu+4XP|Wh@b0kg(%kc< zuqWS@94sqnjFtf;v?Sp6oHVcta7T?rX^6MF^0FJpWW@s-#Lbp7(eQI9|EK*ELN@wP zWkVze%?ssZ|8!wjbO$WLNxY?d0^W&Bz>Y4`Zc4!uI<5EsvCaNqpudCXUDe{hg%g>z zVsNIPixBgAjbObv57(7i;A4j5AOZRASL6=bbru(9C~6cx$I_$>ib8G8<~Ix!xXr;few2^XVA~P z2#P`Vw0(3CK1shI8-FDfHFGrB(3+@EUM;-+UH~6zZo<2FN2%Y6p|GTVB^7)>$ z_-Mv+8uH~Zsup|5pIcuPJ9Ov;-^*vflJaDJv8;e}gnTIamPM`i0~kA%b5-6*(Ir0v z?zw;E*-tm~tD&{<&OVp)r2S@L%S)=CGX;kwsS9DjPce7N2k?9oh7(R)g5V#=X{Edy zXQiK`hE#v{{*=die6m2*>LMK2-iKp`_2NqZ3GCiJmc~i%!5^kqc-bvGQPi3#WeH<= zZDll1R~Q8rF2<1dV=C&cK0_PxD@y}zDx=Ix;>9a(<4*q!__C-@A7DLJYdt1ex*2ND z+6WanHW=KegQ)Rf0XY3$jPl9-BqrW?TtCxY%u4$WPwJKk-zUrho3R)9iqF zD*GeU&99-)*Imix=O~O#R4l!D^Bg6dOTzCNnpm=HkT^B37j{-|6V9jglg>`%;JsPk zzMUF{XWk8z-r57M?u!=#9c(av(>YEYzn%3vS#j~<1N8D0(U&zh#n8ADtgJtTt7@0? zonK=icfktb{5J=j@yV5Y`~H;4+Rn;eMRjG972#rCgezoOT0yatl~O%Bf(CD&fG+)K z@>z9Dc6!zq-S^njSE(bQ9_P+Jt9x;e8$~4X3V4$8eF*97gdLl{3pW#|bci z`Goxl$x-qSHVIaI=VUFo^j76Jr%UM3g5f7L zwZC(RTn!hxy3UcdOgv74+B=%{c`;czE1{aigkCQDDK0U0#gMd8$W449H0;d4=1!^N zok26Hfb;n(4VAqx9>G_J-jr{0@yFToi{MUD90s(0gcrwyK=p|tj{U624`V9?Z})Mu zDN>OK_KczNxz z#Md)tm8Jbrx_H8LKeVmzf+H`2 zxUpLgzA=sYwzUB&Z9!pzo+emi55+j6Ibb1ffGN58VB1v{|5Ul+__?!LgumCb0ACBmOZVFa$r{WCyN$TvWg^oz6Xbn+ zpzOvPT(|K8hgc^FPcLo7uuVpM*t(hz#)qS&?g-XP|IVA+F7o&*%qjC0@-zc$s(!JK zTPBHg@$p`HvrV*c@w+akbqU0+H(S7Se|K?5(oHC=6~$FjPHf1*A)NR20KaG$iczdh zyLw0Sw`9bexJvQ#Wf5*@B;jmLe;8ev&8^xwY`pw3muGw)BnrS+jy41cl?( z2T?SAc>!48I1bVAv(P_Pk&}9yfy!KCo^KRMT33SUK0I|;rqBbu&HLks zyWP1wv@=?zyn(?>*HFt!O`Nl)BmT;b;uvY=&^lr?xL58Hk6J9F{Qn|x+S%=RbGtg* zM(=>iANPbG_iKdupjhVl!)1l1rCw?DD^a^T43}D-07V0draax4uSh8mqrLWgy3v!= zUpSKLOZQTxUvI>u^)KmAj?{0Q|6YD?{SfRoLZ|fB&%u~Jrvf$&=z$A+{Rf(kp7bDX zBCol-L)>`T2*383F3!zuricWIz4doETG_clm!d21DKiHvyZQ5u@6yrqh$fGcb_s1U zXDMgHbZ-5Z2_3I(q8B6olX@sw__SUf^UvF0<;)lIj(wFW{Y)vTZ42X>D^q!7-Xr?H zdNZv5iR98msU-uboc|3U@h=e=w3QYx*AP~@&;*#T((Qf$QDqjngLGhJ_EcjzmPv|S0>{V_XMNvQ(5h# zIqTn?hT|L#;JYXbc2ZtJad$(-1E=C3YyBVUCHZ?C2Ap+_9zH<4ym0~BriQ^HtL1b| z@_%hlI3iP*PmyxFLGK+T5pC@LxuwPGJEBC(EAP9dGSj%*xA}=|b*&aq^Y{G{)mzNtNd} z;o<>LI;b_9?wJmQjU_waxVaY}*+#PUi`B-jAP7y4>6pH%w9yn-P9Vu!b6FVK# zp?{MjguUbPd2&o79-3l`UM^GNRb(jVG@lVN{B}Tqo&sH;EWOJM&dp_UWSI! zJ+*w0w(Ro06y8wvi9SA`j~7--Zk&E8__3`9`@XvagAzxw?eg^;c1zdEc77keKHG(} z{NB;u=9lyFRmFt{e(t2t4a45SStj3h#{!JCQ z+UO5l%ovLvt&LbUB}ZZ^+@kYmZ&QF6J(kYo9O?Q`O z7Jj6zY{?brkz(((5K!8(4Ff-PR5!jXl&G1SHxD~+Ckim9Sg@a1ioxg`tM^ms`hpN*EAjc5@< z7M&LIw|NWWCtjt8+oobw(l{dR7@A_?$}^8FhxP}taLa2tjA%5ZtFx+w@HG{*=lWOZ zIlr@TRPVZ!e=+15Lsg&oQpsNnK4Df7A=F0Hl0YhemfRxFX~ z3Y587Vz6xWJ%|TuI>CRDyC|>fJuU4LD&=>(V9c!E=r#2dEdAOM{VmLK+{#u;m{biR zCNIEMx^pSMvc+>A|G@XnYpBznfp?yt6a4gav9A0%4SH>fUj}X!cZ}MPdaIU0^)Hmz zoYq`6=rG1viD3VsTyRS}&i~#h;i;D?sP`ueHijq4itq2EUyVE1u}+&0+!1(fkd1h4 zbvHWE!GeuvcEK*&HFg84G-p;K~Y?)D)8LOg>ZXd zJq0&q@)Bb=y6_KZ*BG2eIb&A^Lvckci`alcVCFHyo+y>;MQEf?z@>q&p@ z1`eqX#m0|{!mC67P^ZRDw6Ac*$hK_|HP8WPRqn@1%~cdTr~t>G9)(q@$~Yjgfi?$A zTs?V;aOz8Mrpcv}8~q}5@*By=mSwVC)=792+Cr&6KTyq-&#?acUa$`>faNu69DJ;f zqU!tOq(n8Psg9%?^D2&GI}uTHqTR&arUP{c+ToM_$2G|s03SdYTgZl4meW( zpJo`5kqMdgeR1dIM6o6OAp1S`V0DxJq-3dwcHO#*3jK6AM_~*Xta89(zw06Fi#{)O z_QUj@q4IC7S8%CkEUMjJDFo@S;rH_6Jnof+n6SM{cHI4uV5bvG2fob)@8;VytAjd* z)~3_;12@FEmz-H+NeE9GAa!mM|C8nV*U-1227EN?7+CK)#GQoU7+y9F*Ep|ar5?IG zA-W@$_Im@f+T(HL#hv)+<6F^7VJS{t+@BpT7-7K97vjZ==|t??yVxEly7o1&#j(>ScGUPv)le6aC$cUI`GjDgbgG|jFz_C0f3h}iawUX{k- zevPAibL}h6yYm;;&L5AbGW$`wf4eyRxg|$LmGYb~9m_u0)RVEkoE~Ve#Yw$X;G>2)o%`YDuRY;n>qeT=62qo;*SOb~{jyi*pMrdEZo-P6l%XGFLa%B1JgqJWPj!~M zfb*k;*(-X`-Jl^9=C_@L_Dz8rJ`AE~KQM~dSqRI`cGqmAmxBFto0m+?Q zugZ(QeHQPPmXe9XP125%)0vxEd`fK>M}K`qHCofy`=biWa{BY4vSXa%xek|3IZWs6 zufvUqAe{MD8BON~q3M>3kk%s&O^+mU)wAieY)1pV)K|q?TWztm^b-7haSMi;{-sgJ zm2kFB7}zAmkjrR$jH(Nj)h8J8k1o-ycp!_mN6+V3PWRx>Hb-vE)}-3t?y~3$w@Grcue`{Yd-Ua?@B3Jx_CDx*E5^>M-fa474AyS^NC9;=aP)7e zaNrVCv%UvC?J0eWmbZv!I=`c3dS@^%;s_iZTkn{$Ny>-xKfp&~d(a$jV_2FQ1BJhJ zxqGe+o-T??mV=UPBSvxFx1=yvtDIZwUL>E7ehtgyH@j-nw zoqlowhV_V}*lE@n9W0~fPd#aAH!nVE9f5(`N?fdK&UqnMVc29HJ|l5v=jJA3^J6D2 zmG1K1<2&HV(;v7?;}kY5*~==k=R$yL3fQ^+&rjk_F16BrdUoleh3Vpj=R;s;Nl(sOZVxrb{|HM8B(A>1^#7apht?Z; z^X#6HRPQ^F+btII*T{i(jaJKh=5nVnA_ zrS19xM|Lp+>&>>Dx+{}4Y}MK5KL_?%Eb$uWcNO=9jHJloH_%C{H{44!r@n!!!PiKs z?8@FQR1uQM_gr64=qKd4pAV4n0}%=X)|2a>2q???B2+5IfaaSZh&eMC=k+2^pF05q z>{s!Uni-t7dY|-7*~xV&E#j%U&U{J7R;)VFfi?7NY2}w6^q;Z`D|lIj%2+pF>D>B-_qgB-s9B9TVy8-**M-hq;yj+kM0k@o5wkUK8brNJFzuu8eR zu+7R2X5webaq|jJM#tmx<8J8s;R)Vd-U(J8QsZq0z0uux02nBS3Es&Sxc&DeHqVb? zrFDD7xE?C_SUwkUDx%KF+jMThUo80$hbfEi(vuzn+RnQo^cwnCFxOej5zCZuQ~E%m z*{Dr6F)|KA-snMfOF!^Pe~#bBEJKz5Oz@=Fbudj*!UDg}*z{>P1Yno40UeuZ=%H@V ze^DY$yer32lPj=xj+dZ!svB0=PZ2C1Hwo)E%K6?~E%pxohz8|bgt@5-Vnt#qKl!YK z>xzfq#$Mz3TDv*=?MQ`zW0kS>=L}qA@kt2W`3R@&v%_asJ79ZAvtwO#4ixVANNyK= z;YLz9WE|TkJpVa`Vx{esa;qOMSIXgBttyNz>V{$Em)IjQ22;Z$aKV}Edc@Cz8$0VGD~GU3RNyAZVWG-;137t1sbqW$^DFzlYKaB=$~ ze&(dg*4AAxWa57Mw`@Brgg=LOS2Xe3I*HM2A1F^z5z0n)PUJA7+w{;o2foF8q=9do z(5Cb=-Mzb4RH}L>MvO?LPQ9||ai$Ib=oZa0uJ~hB*%;ZABR7PVUAAFTr7j!n>FCtq z)L=Z-_aXF|sevh5{CSe68uYvCk8O&s=;^72>negcedubAP=5()G~@Y&aw1I7m#Fq* zJ@HPgk~BAZBz`(^25xuV#(|GzsIxy4%)fM(oO+$u`gn`PSyf=JeZbGQFVL^s`M4$l{|H^Z#|7bi*rIF^ zzbZKlW?waU{uGf$7--Po5#2EFzn!G8Wi#8~T+1G}_jCEAw@`i117d5RLSwBVzpSj_ z9^PTNq#=^@LZi5sMg|Ri?9WQlPS`Zq0$aO3hFa5NT6V}E9vi#xtiQj7oKGvnml`UZ zzhXCZ`f?clNSw+OPdu3Si@0#WLoP^`oDt6Ud|jF`)4widfr)Lr@6<>hHDfBbxhD$H zW(J?SR#9DGCK)!)6>i4c$lkw^vPA0z^0+!&azF?3+cY(_`%eqYdc{FxwUi^983Fg} ze8kq3CRm|%*m23vsraVDX?{LE3|wRN`P1`SdNA${EXf10MI)KR>b210!C2aHcnueS zl6(+HqWMF>VXE@I0b%3SS-B!yd?M{U)3#c`05?roYv@j^8XnWiB{R|B;a+?_@EE;V zv=<8shVXw_M?JR!Uzf*%z4Vj$mna2?(kjOAA|4?s(|Xknt;5qSQ{N^${g=JwNf z$Zqswv|f8h3}~{T@za{{U2Y(!TMdMh4zYOQKsF5P*b^0QBnXDX9ntA+8Eb&FPg6`0 zaLD&{5-Jyq`eoDZ zE+biG=_F`W*FjGyBlGK@Gu_gzz%fhposOM*N{frLMD<2}r#;oRG-PoP+9aK6Th^uX zh5dtQ;a4NfpBT%>uW56FdO9ep6$>YwYpH*xCi8;rym@9Wzt-<2*quou_nJ-I*53jn zUU%WXccffL)o@Iib`d5t48w1UX9U-+huHU$37;9cg>$x>VP}s$u*-NPxu{s+{U?1X zanvMi7}WySZN_kR_%2wnOvYZH*YfNSirDvYC&FJj@XBNoyACkM-OEy;mrJ{&YTkSD zY)FFt-kuVjHXh}R)*);!*T=9+_o3m)YdRYe!Fe7#;ezyz3DtCB9gh;M)`-CCi@hjk zbpj0-D!IW`*WlB0*@z{p_-kHgR(t&pS2Y(yeR%;;TyK1RmuT{;!-7W0IDUCSwQR&N zANJ{Ulm|CSd%=_EpmJb5ce&Lh-ulsr7CZ;Gcy^R7IH}^S(C!#*C3!Fg74rRqftaVR z$K4mUgYO-c@7@YvwtOQd@K-9m`hT-%U1KJHwxT zF*JVVC5rMY1!IYknR8}6P8+IELu9$M|JGXkp4k9}4MgEv@<=~C9w?@e{he3PoB5OQ z(C@1}|M*1SebXJD%gdq7Cl%8cb;I3ZGdcOe9QHp{gr02!_{v5HE?GWWHdH~E`#&QX z^1LS-e)2`TxtqBmR1YtwEF+x}JD_GwHbuTwU*9BCsg`GRIHq%lnT; z!Ohx5yy%4{MfH6JZ%@UFhQ;|%a$yHY1gT2SvXQbM)(bf-zYAIpROivh(rAvu27)e= zXxJ%jq3@ErVz(obOC`Dw4|w|-ax1rqvtlIvz;VfW?_>#C7aZ8wuP6U;(ZtZvo!IO7 zOy2C>f!#(eqb*Il$m7^a2=hG5?yq|DzUrC$N7_%fPR|B~epBGG=W1Nnc8+B({uJXH z&&6Liu!8vxR5_UoDzTTS=<#1cmGpV{tW>yjX$j=`OyRl@yCKgy7-Kq}l(^q9oN9WT z_S$WRIFE3c-`5bWzVw&;nWy;W<f;eNte0xhZ%SzpW#sw8*S{G z*|c*|5H<>qICtwjx$`8~KB^v=4VXglVg1L3{LG?xRyKoSj<@IEB58yT?eD}0;vxkvleGN^rPqN_h7h*8H=BTv3G!s`i=brt23Or-c4j( z12uA47*9*17g6DIU8gI4juidX7&7uRxwJ4I9aW_J%zqu&(Yg+7RDE$yW*QqF?1k;c zJ?YW+v$9;vohbKJ#{QN`e9B}Y1O*53l6A2ldvTCf&R9uHOvm%e6C(V+BK1>fC+yl2 z#wHd?!VtHSc=JhD+&p13K6$JTcAl3Ycbhv_H+5q7NBLr6sv^4otRcTXN1)d~J$Rz1 zfvYOclH1)Gv?tjLjAry;^T3_>-p3MO^_hiJhF(VBk6&Psk>o2doydpg9Tm5KtdhJO zFCnMjGID#gg??NTsZPpKxL2Fwi^bz8yW?Rl@@x}tKS<$IE;FcFp_M*&G)1RLyMzH6 z9eB#;-Lm%%k!)0zB{)2bK&2rH+<12^`jnRNX_p+fGn&D*=j!R>jvP9ynvFUc?;*Z; zkI?wzH+>aG@M42&U_Rw2A6{MzpU%g_^lAIyKfRTxq@+U^Y^1y5@OdnII~8pW?{Q4P zP4aA#v(?%ztd)_7qgBhH_4`EbeYu^6RZCf+vqyMe$zTdtuZ&8o8pS>z^dK@z14a4^ zCTi#CP4}gUKL*hJJXP4_A(vRqJp^l|1U|kd6#u69L7&LZG-gpAcYNW*&vn&#ZcQilm$0zu$t5|wwl|ENXnVf+Sdr+8eDPO3)PB*IEaOCd_y#FyCTfd&7|E7oG6O*p& z?%v1)?)1W-1!wrH7%u;#6K1>e@X@zT%3>-Ne3S^}n z{=6@g*Zfg%3Uuowc^eaGWt}cwkJP4*vJ=ADWeW83N-2Po*tX&Z=E-_PW8R{34m=fB!N9Uq@zESFxEHVmoKB6! zBAuUti^F|to}?=|g;&t}!RoyG?mPPVk!a4SAn3kyBk8X+MDN~DWXDwZqd2A;cerBB zr{?aUU5(n1k)+J4l=sS-&b@=NB`&D5w4>7p_fWp~t4hVWPFI`1164PW>{Bqo>S+Q5k)4 zN>O)Qdw&50KpBP9rNd*NEMB?JfWKL)i1v%$P*YI^CytJyioqH1OgEc8j+f@TzkI~8 zZh*bRN73dH%Z1e?Za8#S5x8mw!!VP1xbgZ@_$4tRvUJ`GzEfARBCh6#im$=dH3&y^ zkHuO4SlGOx5nR@}(9WNq1#?>uG_a}@W4eB#iElrGqj$5AzBQa4)?TEL;r;RW=|d>! zr3pGWn?NZqO}6FSRWMr973ay?Nb8j~H;%XCqD^kk_Q=4RQGUiW|Ss!X50s19Y1ZFV&3_b}L7TMw;z$8pmUV_xyH z3l+b1pa}_O@WwC&6ZdywgJ{mOf?`mWCPbEa|VEg!Vq`h>pxw+klreFG_( zmh|qvHQjzZ50=ipgH2*0+Wm0BH!FhWvxXY-Ex8>xek|o74=3YmK88=#tD(88yR83c zuhL0r9%Sg&1E2qj#6RczVg0gEv^)GhIrKdYb4G^)Z&1Zi|0(mcN#?zT!H`5Lu$b{uw&CkbxL7@w``#P?m%5Aw2ffKO_Rb|RzO)E0xyEw(@gX?a zvyS5q&gXjTOjvcm4H`leVD9~~yfC|77U^ybk9YlsiMmO!)#(&9D{W%?N2~aHkDanf zMWgtQG?RL<@C($Y-$F&c3-{IidCsM?VB>U&H|z`HyF*9d^9P%7z0G^E`_g3GoUt2< z>X!){58aR$sLMIHwI|*j(it0Cm%)IbKDbI(2a^qgU{Ld8n%Z4~_YK-bYA<^5ipeJ2 zdH4|WsFR)rzrh&tE>SpSKVD*TFXi%=ro8gcN}0{S{iyHrn!1%b^X?O#LQAkFe9)3X z$6q%c*Ih{9)AhNaSq5;f^(LISBy}^FUXb_#8?e{!)zE5CBQ(vvLER6yiC-2?!FaXR zq+jOA>o<&%cn?0<>HHw68`*|qZ$iki^^ z|7wr&M@L19-r9pRwPRtWZ6IQ93l-KjQRdeZwC>LZ@?F+ZoVDA7gZ_2o1&jLNA{##% zwRJEbd>)Tp9g$azKM8G0S~#j}UpCd-1Fw>I3eG8NP$c={GrdbNZ-Np2o^V1qHu4G` zNj^?-UL&dJ>1{%amx3&H^f-Q%)g7CzOS8id?QkvTA|KqV#>N|7%j1-FQS*@z`{%ue zjuo$jxw9UFeDiQnx}*voz73S{C4o%uDGFOJ%*6@1z%91jq@3zex!nOr>AVThyIRVO zjx@%WAuH*6g7m+RsBnrUu#T?+&M(;u=l3dM(FZf!skDrCk5j{Vi(@oS>dyofEW-3f zCh$qhDV=CKh99$+llhXq{I)R$<-Jv~z0wZn-uotVcxHp!yb1*|Iv;L2+=6P=L3pBM zrhMa@*QLDzmEm^Z2x=<*DgSdNK$JBJ^wKR09%*;ssk?{pm0Jk}tLkW8XJ=MXbmr9) zQ{;}bHKBg%KT_5@fG;FAo+NRG;59GA^1?2VacBVK=ti=(bVocX>xeXEy~J$urF}Uk zOCG#@BO7dUM6}=en6yh89W?h`BlT~i*?8+K6}%#<=xf++F32B9T|ez+>&VkI;$tBwAOA@kZY$A|9#>i2 zyr(eD)}GV5EX0O+i!kKu5U40F7vnqirsyx}V)gYbaY8^}-g|v6JP8@iZex0q{~k*o z^)`s?hYn%CkPuX>`i(2U>!9l~EizNjVq>2LJT-na9`d~aiD{D9U~e2PUh)*4+}y_H zBZKh6hGel#X*TG@6u_)s);zq_m&ZIm2Jg2f;COv2)Hm0~j5L5ww*KU&--UNiE*5U5 z+=ITUZum?6G#>AA4Hsl~!QpDt!RlQ#w@Xf+c(YWX%X<7OzAM!q`Yit1ewOZfwF}*+ zX2Xzz?tHyS5%qTdqOui!@-{J*3Kk{^q1wNpDO>{n%m^1%)UvR7unUw2zlTRUgYkjh zGCZh$OK=YSg^Jm=SopUCd-gBk)ux>}^WJ8u|5PpdTfG*yhz~%$PY`sNvJStW(Z_cW zGNzqnE-4tA#X7a?!iWOK8*2 zJ#ckOC#*UKf}Q{{;$g8{hX@FLPuO$XzG2^1e}PybVN9`0EFUmO>*BBXDrv?WO> zEzf-p5f##;p<%SBw6zo2vxF!ig)*8(dG2#0Wu&QvmLyHud;ad=Z#QRrN<*<#zNb^q4ImF1Uvqdb{Dja@W^3N%k)nRLADm$#qq)kw~`(h!=z?=)X&Rge!q z{+Ej5lR3jL92Y-TfnDR$X{}NdnJ((a3X2=X=!3W5@FfPdFXbfDK8P8v^n^nHkqQnL~9;AZCE4RR4qwg@|tR}^cJR=M-&*qB{ zvf)mTNj!M77Q}uCq~P*J-peM6Ixx?LKD|YU4su2Gg&vEC(V_fW$KBbwDbTDvL1=kvV8ERodG6%_Qlyf?t+s* z@N~xv`Sh#|(w>qjUpz?}X1_ft)Q>(V1eg!RZ5?O9lbBD?KQIgx6)QzGwa1hh@QkM1 z8pZ!`703GT5uqS=WN>M$W&ve#Q*(p z<3yKEEBXg z-sR+>j=aO91NZVJ>QxWScun7B7oOpa-uX9fd5=i%i5ydtDFOgjDD`u^v=pE|xWK5QL zbKEkhm-5?-S_eR5Xdr3c%B8_ahI3fwK3ps_Al3Lt2$Sc*e;I)FAK!`>cErO^i%1$V z$w<&V9rYSSl@;1*T`nIkg?v;3~E=ry_{Q7zxyy70Y zwb+B%wE?K2_)0jEp}~s^R|*c-3#1Hf9$eq-&Aq<&<;mts&}gMA?n-?IY7$fO-N=V9 z%-K;W-nMD1_1}5a`p}!ZgrB9-MqiR24Wf%Ob52aqrh^}U!B($)xbwUtHZHZI#Z$AX z_SZ+zLuUwo7$l@db~AAjt&YEXW~TzCjOU=B}c!A*Lu3+h^ZYVe*Y_4JZC>&cCcd?yCx`A zSjLZ{@?rh=?%egPBkDxwV(989Qgr(O&8O_d@uDfLR4*0016~OGcfNoLcY?s!E?>OZ zYd@Xn&opU(rdUzhPUp&BQJc6Lt7m@0H{K~YuJInNtyJeLV>Qa!>ymlJ)^KvTXarmG zpM&~TM_48m)osRf@cD@Hjk_8jgE) z?f7qDB;S0!RLW4A!^EZ9s2uwYWU~+B;**!)g_Pge);6E1TR+av%3;ekXKL})V!a*? zXn$=CI$s@+k6v{XpK01b-q%^safmA&`tB=no{r036uYACq^0mjO#>6$-bz_T{sp(Bnc8PMJ?lP+ zwXg7!nGJr?h{Gm_iR{%k4koQSK?Z|VxIHig7R^znWyhsl#h6O@y*Vqn_r}qC6E}_Fe6YCqxuS3F?N^%~oSa$5T8(#^z!n1StvDT?* zF0eW$7~bxK&eFaoAEMyb!Ygz<`;<)c(?LAce4jdXO@>cTf(3uI-e_ml6AvE_f{aNv z)LGM#H_uO!ow}+<7bVt))3S@WV)kI`wb{znO;vmNm4-%{V#R0fwj)(yU7TTfXUiLm zqG_=t1O8Nggo1cF8%P5 zSR2ab+fqSk?Mw0YEH^0d%t!a$-L302b*(3b#mix4=Q7^`Z`sLAsqE*Uc-9@ZhgJRO zbJFC&;NKbtdp1v{J4auUMZ@FLO~$5N(iRER1BxZD!vb>Exdy>EBX~s6G)UAvB~vK$ z;Hw!9>@+J4-+XF>$$#JCo5U{GZ@Wx_s~CyuuKG+=4EAzHkiPmfmK zlzBvVfhnH%(Xr<|OpaKEX*&gJHqj1Vi@KAde|K!XGMe|kJV_Sy^Lg8eShzgzmvEwK z25jl>ju*Z@hQCb*DI(C89rGPYcXvK?QHm7KcG1Dnd%r5G=G$` zms`h`(rSB6(wKG^d--T#YM=?9o1}$5pB4yVQTf6nk71;z>_ZXP!+EmJV2t)?fUr%M zVaZ!*78>>vu4;JU+xEfI>~AXMw5ssn#8>3yS5Z18@S@Nt?S*WmGx>vpt?WN<1o`*r z4xrZrzbBYtPw5_aEXm<)=OxLbPmNL#mLGmB9NZQ!`5UZwxtRv8Fo$!wULOy6E8imx_r zf~+Ts_%5i7Rt^l{k;aX5%W@(#Rp>C)*`wNqIhf2D4zXo3fy13 zmTp{qK|M>m2zu+n@q6#{!o>w?y!@x+@^j7*&u!A=JMObc^JZr_bFTyIsF{m9wEq*s zPD(7H*>Y)ixsRgU0Dp{s1S{*li!r;*vBlLDma0phSl_vH+d5pXylsNa%j+p^EE>gT zCc`+?u`f)!??4sR8K~toTfEayN#=cvNjNwHkDmn6wKOCRpIkVwZlAbj?=RY#?oI8p z+NdJmp3mn?ex`R_dEeLsh#k;{=5^D=XNUcTmhw+x#X@Ojd9;?75A4jbQa?7TYY6yB zU8>6(L&-tU8t>&NLeUO&RMQQDr^_n^v!ylMlw$|;zaNvB_F8nY+g9>Cdy5|Z_TkGO zhq-axJ!*NfPWEGW8h-fz}RG~b&m1P^;oHbH4{YtcA9{rv$A z(c36=H_oIMb0s{VA?;u-ODJpa4$=5nvwVP$AEl1zjR$r$i9aT_(v;zm;+L*63ida` zCyGn?Ta+`*53-_{_xoat#Ny~M*%Fsatg01fehRGxS8(VnL)!54AwA!^7v`SVhJZ>R zKD1*vt(|BFW8bX8paK@Z9B+evUl(ETT36I-H9?PFw(KG8W6BQRkvt%(Q1CvIdQZCw z`AH5EOD{`ovwkj`%v%UutU9xMa0+ygii_PS4bDy;kAuQh#izLk#DLmLIFncgaSLzJ zzjUdk|#OG}X#9w6gNDeU!H1pxo%g4bGq3lV|nHq6@Wa@M&ha@Xg$aZR&`=q}Jnz*CT0K zZYG{|SAv_Hu8H^NkEZ#R-C^jB3&Mdb+h8VbrAw{0SRT=zJNPxw+0HSv{bC4B24&tw z>v^e#D_hwF!MZ6GaBfN~GIGGZ7_w>&1i$p0t|fBsYO-Wm=u z76af}q7HVNkRd$z(^GoZ7L#%h8O}^0P`;^8ixV{Q2Uf$_xaZ=`d$IiYU$CLu`E{7>8IBh>Ou)n- zDJwf%A3r@^3Uk(s(|_<-h+L! zj8oj>aNocRG}yTbm3(x{6gL|3ov!Y5wr>$0*-!(M4y#zV-(7`=JU6rH!VqfqyCr&A zMPg*A3g$N*q0e=Ns3&DI>;qM;FZIhrgXkJ@iP>xHpfMV^#6^wmwZ#IzzsZEmo05Ow zN-_26?16jYCy|zv|Lt=^%G!JzDlbwt!lyY-I4dOyGY?Im9p8=k(5+4K?~_JhL6t7A zh_L2+E|u~r`t8urJ(8tU9Bfglrt6o}v993?AJI_21KF*V`*)VaP_V=<7iMvjw42>H zQvq{g*9-oG{P`1a9U&>;jrn#s91GXkB% zrb5_CDc@T+f`4D>AnZI`44+*(;vAbWUMCLXfS1ypAwiW}n>Ao(Q!~7>-hqKWRj|u{ zE#G(=1@DGufS0xwzkgGWY8IzBerYpo&9}ga=$GP$QBFARKsZE}oZ*%0Bp-)iDvq^$ z&g+WO*so4OXKY{@tYEk$&%RAXTHl{NLjq49@D_lQzMk^K!4EDh@i+@s|u!L3yL@U zm)^#lh2>k0Lh`6M7+bhjK4EuPczU9Uw%_y-uRlnleq|-_<%lZ{98-pK5=Md7@hXhg zbcNC-1Iex73+Zr^FmdupIM{k$a#5IY<~ko7?{^8#{w|?HPc`sd3VirMCqD7LhE$9v z!UG+1>TqQvXy+bd-+4q1J0d`gZ@^lGxqQO#G+1^|rRe^bX}Qw?Y%+Qwb+_7}`T9B` z_{<=DK1vzGkNA>_T#qkU1&OEQ#?vFE-LT_QIt5* zTc3vQ+lNS>c@w_>7{Wgu1=I5T0=swz^S|-es5LZ-_XMXyQtw8nzI}#+N}q^PvTmsS z)fms!exzykTskE>jLY;TmT~Gxa$c3q{bLQ}8wN)~U$-m&!w}XeL>hbdSm017aC|7COVC4Y~`tQk5oKU`tFOJwid$n~b^j*7{ZqgHR zR}cqzS3|_Tjr_Mg6+itL4#J^yzEr@_U=jj3DNWR=ArE`+Oq6xIvI~3NF9VYbc1VQ~gjd{)2*i$-uqX&1Wlcsy%LY=9vjv>{`olwaO- zk%s?~C}6*Wghi_Z$;vPipU>IK<(W)n)d31o zFQ=+)=jhYnuI%vdFsJA(!?C@j{!XY1kNVu1)?O&&t3xtq`EFf4tR2nwCqLl7rk28} z-tj^k9%iL3M>)XAj+-{0rO}d`!EK`j8SDkI|AK6>PfiZ(ZMQ-5fu8bm=sRb7sc5A}c~8b*;=b?|sdK->a3mc8`OOg@%05{1g11m4~By zim2AtK?uJvp8dkg#P`#B@@B69_IEymCMh+-DvR5~T-hTS_{{_t&gsmb+{cpNrKOZw zqs_fdT4?lBHRveqCRV2UDi{jPG+?KGtEryi#_|Bp}XH-aQVFvd+NTxbLYb_ z)BPBh4xhzShYe*YrvEVf9P_PJ|vgGa&N)79RC52y6`*TwHpydFl!p;xSp6rRK+$ z2W#l{(K1##9*9?;mtYs|A$YDPLEPPt2sa9?`ErOSX8x5vPo)HQf9=HzC*z_0ojV`# z9fRs$K0w)g3tW1rgy<#|k4@@a+#qb`Dg0 zaxXjY(Bdm{BlxmzvM6NsXZ7&gc)XvT_=z6( z&f}7NE509Vz-#X3!=!mX}DaqW>m6jO8*Z@y2&N`rji$Vp$&v>m}d5qaFcY$OI-y3?+- z-Q;p~8mgt=5|v!6IXSEf8e4rS@m2z#9n=x(&JV?;hhJcW*H7{4&QIdA(@8+*v)Q0I zgulo2!^~Y46!rZ)7(z`=E9DHib=-}o7RCwtU)pkZjtf^$DWXSS%Z0jO8`*Wbt8nsT zy2M$|#S2-nr$wTqG1^J9c(z6daLPW31O4mh*6I{)rq2Q?m{7zlZ+v(61NHXHr;w(6(X%;P+!`n+ z<72DXLN63O2juYIVjJw#^$}eU7$TI^7{RAc+u7T?4WcVzQ0}^lcU(&qv}>Q!yN+?9 z=e1_qZz307nB~BAuZ=v*ZXX7?=HkBkd7S`E*xanGht#{Om(^(>{x?WB1^|%4N8^F%nf5dePSzzrfmm6lxxAqY3i){L*%Y zl+9JaIiBwY(=B_s%hArS{$GzZ6xFc%)Ef#K^%7soI#oVv^BuMIZh-^kIK;}t!e!^kC z|M@$BY&Z58_mrw~EMVHrQ)2eC2|OjML4LJ+qSS?tWb?Zc%l<>hvb!tdc!Sh&TXWcf zXN$HF{oIY0%wGaNUHh`!e+i8*3KOh0Gbrv{3f+q%S-I^xg{Mk+>U4eX+E4%+loDuS z(h!b*Fr9o)mxE7b6wIrN!M=p^Y944zlEM>N|T#~pND zaBQ#Z;%{S3Y$wHO0HS7fQkoH zgVv;U9PVa}ohpGZZJsMGnB;}?^|f%z_bSwOH^7t2{>ZD66R|O|ltMTALG+|rGL8#l zLzpeLS@vTgB~P%Knj_S&I0{i?D#T?2{>pP^U8TBfc|!k^=Wx~GC#0Jg3v$P)9HVLj zrgllR_}U1J>YT=A)50)!Z4^$qp>4g}L=*iUmf=#((Kz!>5;*#5qRe0k^cg0j$F+a0 zRzC=p`tv{N=3PBh%`D@#s&LukJ}SI!u?}(>6pfILDplP~1 zr-Ls$1(k7XN;Vyk<`qkNjKDi9i?P7x5N3~BgzJ@hqKRcFs*LR~|8l!GP8_w9+Gg)& zZTDg1YySbJF43W{+c%JIEMfDd+ay?qV@h2j99?x$OpABKs2ZXk_BC+bIE|v-sNu!K zi{ba`1|eI;QoPi>2>E4qE{<-3>47#FyfYA2X!v7ETOIZYG=+u5YJABfl$TZ9qMU$U z5UzSa++KQ2sIWyWDLBV1ksslHqBM(;N#}@1p}4-dmJjquft)HWzPu$Ddbv%8FYW_b z@kj@O6?D<<(PmsazXsZ0{h(_KQV%0a7o!69}rD+qg_~*gTl=M?iw!&o|D9%5L!7VbH z7oCBQ2IhFjAPbZFN)9U}DOVW%4u*ZSV8gkGxW~gG*nQMFa8lMMN0rfhNplaaYMCUy zP;{ja1wouOCkQW39mw1M`;E&7rNiC4UdTPpVrb8N%G2wM@oM21S)*NQ>}G^3wppV3 zhrv>x?}8XJBNrA-Sc35by>aBzMQFA8nb0@b7FTWcLib9Esd~zo&aHOkh2Bb_ad;T| z1g6pIXZ_HkV=5{R>Vpci+#$^*kBqPWf%Ov~(oCCB`FdD_502%+sLiotw%&yNAKVbc zo4O?Fdho>cNc=VPp=fioj>Vn{uxo`rTUo4tQE4*n^hGZq5RVF!bajEs8j0hbi9fHxm~PRk6+=WQ4k4#yhnWaNT~Xd+uhc$GN#*D9%Bk&0jH_hVjhFKTHC=Pl`d`BzZ|x0;?O`=00I3itGI znSCUwD5#gI)W(u&RTve$?pJp1RyErzsIYsDF4xCwf0}sNI zVS{jRgR<~E)gDg_QsL+|BeC|uS)ivy5S`uya_tJpYi&Lk&%O&=e+2QzU@LTAFoMJX z-r;_RdSG?17tdr*c$_5Eh-HXM56AHW_bSCL< z*(W78WjN)D4n7%>%W8CrFaJu$e(jpLBzG7eGFZ-D`?|5`iV0w!r7ZC&CYOFR+z(&$ zLU7`PTzEb3Ah|X!6+(N(FurpY{|0>~rTb?Dvj}_9e_V^`H_icN?-}~HtcAU9TiGs) zz`Ds1=hqHl?HQJARIGxL$J1zY#64PabUF$(*1SVzfu41paL03r6@1T{E#9riy2|;y zbj^G?^}Ym49HOC1^CDJ$Uyh%)#fYW>uJOX1vt@(*mKKpTs-j-d+9`s~6s;$XRb z=~~XJUqd!~)1W!WlP>+2M0B+n4L#Llm(@Q&MUpC>wbsV2{xNtc-4-7&Qx!^=FXl-} zHe|512jJ`3vap6;eDB^FyteHatl6f4yCf#XUL7;(UfdJyhG(Ku)Dg0I9D=jrq?ugO zOS}@%NpSJs%zN#nv*4~M{^yn@+Ew-hxBWx-&cPkxV)h|Vmp%Af`VEfX(ZXt{D46(Z z4gOhvi2og!#6J#Qq3I<9@xf{%oHt|%o~<8&dSXW`csLB-Tz^mHQb*A_s~b+})}La_ zjQED9n0uFG zQpdiG6>)xI(yRq|Z|Yixx(J~24vfQt3x9})P|=LqH(YFU3OnkpFg+lS_Jr8(8O z=P)2-CE7lY5f5+wiVDYyIXxl+&aaQeqs6DdylS6xU)9By+rzM=OB1I)_&^IU8)9>T z#BX?A2wk2@?46C%d8nBu&P`|(E4=R2QM(rf0Dp6cn z$jS{We8f^>!ml#rrr&FzDPj~CE$%6Fd2WuzmmGxYSGDk;vIaj5`3&Q7>!HX)4xweA zP$4G-Pj`qGmujo8n#h7Ak^ zc7L-IGIP%e>2Y>w6R6K$PM#B7`_{-0T{}pcLxN$Gz9~<0TPP1{Sc>0WJbC+48?0R` zWk>Q6O~UOIF-lFlGG znLFC#kxS5X2rTW!dRyNBZ!C2bd>gUeQ?_FQSuu--pkw1 zrLr(+94nS53kClzLH%X5;yTvk3$f?P?!ZcD4~gR5b!OyHf$VA(4Xy+2dBLAK+;>0} zxc%G&*LJ?dFo?0VkdyA)p$0#@K!8b zPzmeYA3^Su7P+xUAI@tUD!v{u9DVkjp`jntF;2S=uXl^&ZPzLUnsGsPX3#!NPmVw% ziO2M|WepB0%Mz0(q+-c}leEcDpAMbgM4!d2?BrX{Hn%LX;cKIOfY?GgQv`?$z9)X( zc9>UqZQ-w4D%>@yk&2ejr^#f715Tvi=?{gxR62iMJRp<0V+X|92M6;Ht2Oxk8*(4$ ziTkD>7Z2?}DQHiq#%&*^_q6^=aa`x|@J%z-%KYPdQgVMI+JCPRzIf-5!3!0>5wL(3 zM0iofph583;wM~RznCr_t&mj@T!-^kb>gjI*Xh99hh)0{E~O3B7oWu$VTFMvs$1>C z4K-SvCdlc@hCq^^E)aShiea0@PQuqKds%m=NE`1Kap#;+R_G)7>sK!&J1YbJF!B&} zIe&)rE+m1?wsct1Xes%m$HUJK{xD(NV>sM58>4$nq5P;v^tX!*4l7B4pMK@EV0A~% z4v2^4Rz6%@b_UWLW!SwnlO}!LAP)5e{;)=kmz1p|<7_{wn*5FX8w8+7OaiBR*22ge z>Rj)jM_pZsg&?Gs9!ocJq}o7wn-thRUo? zQ1DQRx%J8v!v18U_L68ixAY;Y4;+k(cb$gqGrGbVArO|f*9dNxrL*G8W*ByO7grSe zOK+-besVtuVq1mk{CO0Q{h$su zV=uxrVG8;<--nEUNjTt}5g4BCiI<8$(%XlZxTNR}+pF}(QR&GzW#mmzF0nw5+B=fh z!Wo3wBG%5Yha<0VP(|W9abWc@D*W7!PduuCIL9z<6ORZ3JZ-ShW0o4@S;EO!K}Z zi0`i7qE31r(CE_%d^MvErp|xJ8NoIbE|ZquBalWfT0x%6!?4&Oo|bn>!CqQ!EX2mr zAB`HJEpiy&)R*QtT4VXyGfjTgsL5USKM-zxucH}PW^;eCMCWB|DC~ZL6nyH-_3D+N zFe(d8Y9vpKiZzalsVBp3NBOo%B`+!2#eG)Ua;HDLd9#HHjMv{+8d!URH(vP$y{D$Y z)b$H^*?ApO@c#o}PJE(yUVHG7i7gm=brPm%)bZM=N)GZH%&L2IVfEewR@j&e^G}%K z-&wox{ik^d(fcq zTG?Q1{uzb&(+1P*<8J)z`CBMBIUMu8C$iq71MG98k;_|bdCdG8t|&jxY6YkHwYMG_ zWlZL!lH*tvpP^;GVws7Q5$>xp3ly-G?s%sN8K*AbgjLQ$mjb|5*9 z&BJBU4`|1&1YBm&fjyIFaF-on2%*z?t9@VgyBx&rRj2vy{z881wu-fXY~s4cK(?Oq zgtULnmnF`7D0exW%3E74x!SE4k5M#d@7hLi8L|@ZC^muBn-7q>Ntta560vRIHi~Xd zl^phU7;>o)Z8%vt<(Y#)87YGK>fUJ8v_LSjR>3i+BA}mzqZk>G%57GMS^4P#X!)>( z_@6O1Z@vNz>OaIc0Ws)&`vQ${Jb~x?9irR`e%PyWKYov@qYP;m*gCx(rpK=2^A5eN zyWG-%i-I~T1|7sJ%4;#s%~I;|?!c`QTeR(7CA@n!)H>dw534{m@3R<&q2BX_fe#2( zj`iWK1LH~gh8inAKn|W7g?Fl5@W!ru;j>jBrY_#XcDC`Lx33cpoEyg<59VPndl`MY zyg@h=Bqy&V4f)vO2snK-8Lg_a(HXbO*AF<1SzYAtA!-Uw^nOWS=9kN2|G2U5`V+8w z>ML>H1Bsa@pMu37R$zm~{mT^x^O#S;yv9qBt%`Ecr)L~rwB9Peaz=;U>TE>g>%F;q z!7w!0I}^UV+z8%*n)q##H~t+}2zNcVTRrNd#~P2nN_QmStatwCAK{M*TZ^H5LPwmS zt4@te&VqDz!1&v{C_7P4%CY1?m1!(%9zTd*N1i3?-znJl{UBk)MklP_xD-kr4aH?O zoiWVAfo=aipn%gGFj&g6tkSfhp+#OedvyhB#1-*%`&=G#Mu3>8;W%s6DZ!vL89iP+ zq(QF6*bdSe1g`R?Uz_ny$rs42GUCoj3s}k8m1APkzfp5L1_-6Jsl?mnx*#CyJl+zeDRgc=K_i zZ6sAq`Gl~O3*5D6(T9PM>YIg!P21py#JwGR&IqN^8MpPGDGcm0U6kGG$@!f^*rjz2 zoI06I_^~IwkvajN{mO8EXCLN^ceQWpxn zm(S&iubt>ohjEbqUsqfu*B3t@Jp@>fhO}0K#aC^~8^e_ihyV{RuKI&LD zT5Bo)I+wsIS1+J^*-MI29>TNJl=%71abjBdHcV;t1e4f5WPLwO?9~*+Z*m^W%o`k~ zF6=9Q7GX_u>U>DMYbd7cMBtsvfl&JCr!X{3jsEEz5FFDx;PsVGcyG%p@G$E_w@2)T z#X&36BTqM_+l){s}|FL0k0qge<7Gjc?(eq`U z_>IvS$gQyAW&YJ-Muh`hUg?ZE+lt}D>&aLf-W>;N{S!8=x8=&{=al$Z%Kb)GP~N5z z+PAWjGKU1>Oo@HAdPYw!*=i?xRTp8CfjcyYuY}6ssytzU_g;?VqRquVElK>yOONvbEz`nz~ zNn>wsDWm8C-ao=oV?bw|aOXIjyxW--ew~KVlPblvHAZN$p^Qg%{v&!v&E)A0XT%1H zoj0Q7Jgur4#f96oXm*Azo=S0`xzSEw<29YO?cIPONzuaGu1zq<<{P9(yW{oYncR4+ zv9!wmG`BT%z&+b`^U;xV3d^_U;LLhDy>KF4uJq&5r4t!l6R`h*2nyFXq;HRA!3e`2 zlr7DQ((3jLpRc5|iB=_lSDelFj-}9{54B8tbHuhU<@n@O7nBv}$UM6B<-6)?)ZbK( z2Of&18_ie9x^)$YcQ^(vZCl{r`;A=P-Wh`$qw+*@MJyB}S_?SqTCM?+`4`#pxf4(NcLmm6b*G>1L%?j(ih<_OpQfeUqh@k@u% zd?mV_6+>T8X>f-!Cu{vO&tpe9v_Y32sB|pbPs8#3y#H{k`$pNIDQ0lF$p$Wd+=Q(= z*W>DJ3m%;>&52_pIKU)>wE72fkR<9VSU-;IO#-pSTqatsE2reARnY67#3GS68Z#sR zL5bf=u|3e4^(Ogo(WWfU%Gbv4J)$e@fS8#MM3Vs2r7CzjKi&e!0&E}5Pj^L zc=|^hjQHol?{xENq19&Ua6T1mWp$tv(up&iy!c%8Xg(7A6+T-eLQ+;=j?6m+-}bNN zOJm>jS4$08oK;L8l`F~eez0(H#X5GH@J9AmVvPE{@4*90E|c%o(}KC0BY$^S1I+>h z&VMtAuN2(GxHPFVp>#;NnOn;3UMKkSka!xr=aJBHzno@;&}}^wkqR{ zo0>E}=0B?Ww@-Mze;??+@4&kZd~xTGYHlk4f1TZLWYYIwd`lJIT$Ux-^B!}n_?2T-o6wQ+;M7SgUl8ZToY zrwB72)x!cCi6eV4oQ}$Eh39u%S>_PVXP-=GT$QedTS zUvc#pSMH;~n++!%<)*oX!knQcf?vB2jGNqnmoI*Z_cSZnZ}2=imT!)&7QXyb=^>qJ zUL(zGR`2MR7 zWi!n-@Wsp+mW}t}@z2^xtJMKdWIZIl9xFUu7fhzE7X0N!kodm-B@I&8FOQ$=EEYvv z;aZ_D_h`L>dh;FFydXXE!I?CU&zgyvLK_MFMi3?;$K$(qv%ZhscO40 zoXA)r$*fQ$DWwwoS;$u5lYnp(}gS^h$f z!jXIe6lqn-AxOzrhw+b{AXYtx=_%&GjYGn@KDe04@xq;Y^c<2_Qi8`_NVAk&aM`k% zF!xgf=e4mP?gh`lvdp8*GkLwm$*Nf_Q%yKui_=iebRTJTS5VN$VPG-fitsv>5`K+h z-oIAh>FRO_HNOOjODkcb^eVySCJi=fCEO;rG^Pm|wU^IW z?vNU|U?&GvkL6%-!Wimw`o}JxE`c*?!t0$fk*ZuWSc8fQX*f@!7;YhF{#Q%bS!hxH z$5pVQ`y|^`x&qRBz1g~?n|N)#3#*;=0B+Ad#{a7Jg>Sk52QAHrPgJUzo1KW&d8wH5 z$Pywy2$>5HdrV*cn%#S<1uipR;LNl=;5{%EE{#ZFd-g?gDdU34GBlP}w**kpZ=ISQ zIVzA~{sF%aiDtzOW1&6ZG%U2vz@sCC`74bk_Be(TOm46`zkOup+{vDZ2SQpyxT?w@m{lKQdxl-YR2s*Ced%+QjU83s@5W8G~aE(IV{_ zGLV=;TTQent*Eo>5_LPkeo{fXnIZ*%mbQrSt7bN8}XgwwYy|R)u zqZ4cSG&dR0Gu=o|Q9@Tcpo_2C^+?#m#X|3A8%QyWVKD;ZdB&-F-gR&)?m6=jFD<(a zYQ=Tjto6x|fFIa)ODFgWAn<4E624(u|0`TtDffZO(mc}N~0pQ03Q$&B$V>wE^B zNT{}ORdWQFttl{Saw5!lahJXPCruM>EM`)|=cQ>=6uS>LxO71o%cyUM)t8Ur6iF|B zlKfIkY4xBvwZXJFr&Mq-s^Y^(hOpp|5;U$I3tn@h@Vd-7Cgyt;*2T^No7vekSTZ1bNVkRcB{Z{;-6@&hU2BLYRNulle^7 zpf{%F{1ub$>_>SiE`6g6D$|-EHlz~M+$4lNa}*eEK{&BLRA4wK;Fj;Bd6Psd>W|I9 zoSD(wGq;(L@jaBcTP_P>X$Dx5Q$%$i)`HB)JAD4aZ7{cU8L1>hvXPU{GNXyz7Wd}< zHtu~lFN`S*sDWvpeA!R--r`~msxv64zxMF`_ z-ahjmYb))+juEc>-cE12QFN2X!_M?bIvWhL^09lE6RV%K3)IxJ`4M@(*!@J{Ae>(b z>&3QEZl(fNnrx%rp^?jp6k%W59=7L+x*DXtdT&maJ|fT~sw9xx{@P&y7JYf}AcY@ZTICQV_gL6_#DEm}AIJqa%SM6zBzgsG} zj<6QI39fWhznGsPHHV==CA+xu07O*efo!qRlP?hN{5cn?WP}3O{9g`r>1DGq-dPw? zyNUuwJ`n}0q%wW|-F$A@J&q4kM}xB(@Wy#9IWHLpk(MD)ArlYXy&@E4WV5A9*R!3$ z*SQN9Ma*q{AFq4fn#I3+!#v#@XpdnEcqs+b;I`wavwA1Jmb*fmr5P??A6!o_(e>((TY{G0>oJ7BU>)w%r8eN(@5y)cGaT> zw}P;bgHPgnDXm4s={#Ob*W$midcPxJOT)lq=yWi6b(MwuNn|r>!bvXPmDJzl@Z+y*|NhyV{tJZvA1HOsp>VKEW~PF!%6bUHYdlL6ZA995kG(TqYThPwTFiE z>Cp!qe6|HQA zxbnz!+W4`a8@}W`n*WF*rIBMOuxA0AR@Z|CrgNeCwjCLcH3XyMwtRG31^;WyXgGNJ zH^w$yhHm4HWMAU})qi4f!Oi*nc1u-C{miq}q22Nbg%0MeHo zb+83QO=y5GS8ZXI&_{LFM4~^kG|1)@eVvxauby2%hQdd$;JrS*7P!8CS~YA#`58QI zwi!achKcS(*@M1$p}-_;?-B({U+>|l#$@Oo zs>GazenrnpCGu&DrMwt#yd4{a-*Y>e!{VP{zv2hVR&>#=$4C?QJAjwjTnr1@1Bbn1 zp=bX_(CMCzF+-kUnCeU>->OW_9`h_pLmxxZ#+nc162^T(`k!ZENAxdI`>-P0)0xF0XI*mLHVs@up5?3 zJF+|2o%J1@!GvS>`D?CoC2%Ta8a%w6lo<8ouUr2xwk1gzWd#pczpF zCI5<<^QWCS5aef3WjKerp1%}rxIdb{B_xs6c~!RD{uYT_zh{OK%G~C`54p-9XQ-Hb z2z|Czu%e6a_zfGbuwLT=zIAmJrMxWVgL}kCS;Lr~BrL(n#|vOX(FJ@kLLEX?PQpW# zZ`hb*O*U%nl-p!XFAfD{iMzh1Jz5EBgHB@*enNDxB;&)i; zljqhMQ(X9+Eyj#ygib+J-~9^>zF= z(HOMntwFha+AK^u4~KQT(CfV`V2!5>3>%ZcOqU8>O*m{P$c+)*s}J$jljZo*26FG=9CI?B;CPZ^5qg)sVt zbX=3Zl;-a^#ZNpl2~CP?vEgSlQwfsb_NLo#i&q}P$>VfD7|>#%>@5^uIvgy{3EV)> z!?b9P2Pn>Yh38(?Vb8+5-0Me=aU~ORi`KY<+tf<#W#a-6_bOv*b*<2TuY~PNZGnI* z@41tQwduq>MNkNJrI!xg7{7D}x3lf6;4iw3y3?M~nKV;y9bW)lhLV8Yd!g>K7Hu3R zRr4FdSd#i0S}i3-16v!&Zo(Q2fmDph5HdhXmm&N65iq$k5uz7(LYDU(I6o$nd5Wyy zfT;?s^jgQvz=yihl-c)XwLC@ZSyZDtG>3W?wYe7!?;Be`5qT z)FzO1M3BXd^GCouV>V`{?q?hSLjVkw|tB>!I7fm6`*!>(hu*%x1NxZ(eh6*=jFX8A$%v?9&t*w zi%{z28VdO<1y|w=*n)xGa9UtB?DpCOwhdE(+pWotN0~sTCgNBup8%`#-jV*lZ|u)2VJ><74qQ3CisCo!;cf@+WWN-C;OPb9 zX}L-kXWvx@|5lA9Rn-$rr|UG>D-H;mfqS^Cri)fCo(Bp-$LH*fE9lfbjQ)n*!bxLQ z;rY-t@N~%m9Q7;~`le=a->tnVS8WMB4f@Iq)>gr=KR4mwuRncs znW$Cl2z&l@BAqtXqUD#@@IgD5vgDk(AhSeXV6!AqLG@8~%{B}Qzv)rg*JW^RUl2Q+ z>_t!99y6DR^`QU39egj(XVP4iJkVlD$QPTTlt z8S_9XU!N5(H-*`EZlT-WSb-lbW_jb*7&zk=%S`hcxU&QMp?#u1DIcAWni2`1b*Bp_ z_Z0JQT+Ok2>{r4TN%9L-ghM0tp!d!Zr#{qAYkToQH+_ ziu|JFi{^{n4A{}LmT);Um#_WY%09%U!n2H*?B|g~@K^XAo8ET@Bxc#M$KH<2YSBj0 zbB!a{Mfx-*HyeCUwsW6VUNH^qg9;hDTONZgmF=;t%wUDtkU z9K8_+9iC6)&Rr1Q8{!3G5pno8rwy%M%Rz0k3bV314VjnxY4xgiC_5sV#>lv{$wCGs z=4%Xvk6#39Kbg@1DJAMGlN9pUJIK&>{4s4qGO}NfWe4`~ zYoxW<_0$r!=_8c*d>P4`hE{dbujk$_yE(g ztf%z5BWZtd2P<(bA@j4}+2z2uI54@5Yag+NZX8dh&O;t_^!+>Bv%-&UP7oMl1_$_2 zm$%dUs?Xg0x)4ei_99iCugUpbCfVw~6y=2=dL@mePqoKsZ&3+`W$1(5?;rTe$CuuI z78kP6Z@^`k3+MlQ9$oKrmh>to{Rm(V}J5+n#6U|OI9RpT?@F|GYjuW z2;WN&T5)l_h?*zwCgaFbaudZ7{k%YzPKT1?)*I+joR2cQuL^z$@tT1TK{Ss~WrrW0 z5_b7JXwbhmZ2j6K>RS7s`Ji@B`t5L;mWH1d7^l}!PWu_jnjgjh=c!aJ?8&;OMv-I4 zMT&f@R+E}Ip=O81E%a(?qJmfvZ6GZieBm(3=-3jA^yX}Q(jg=$6+<=;136I}gAp?< zrU0EwF4R3&ot!lUBV8@x=kq*LQ*$ zc<-RpFRnBs;S9_kUd>(78c)Uwn(Ww)(RBRUaQb8-?0H^|W)cmnXx5Z0=I8nZN9zS} zK0h{qahx6LRV=6NPJ8%|_a#X|@YZ#1>=eAIb~x(XI^JZ{7_eET4+`uzlT!J?T`dxI8bEevfrBrR&L}$H-iT2pBYwre_W`Hn@ zYKsK~dH!S1|Mpt$UGAjkE7#;qPtKcubB3 zugk!7mFl!}N

Z4}<>E?%+|E&R%blU^>yj!micfyV3hep>QKff2+sv6VhPuCJjth ziBnpp14LKHQegRArn^#(E>EqX>5gBy+W$t>xNd!h`{!g^oF4Fm(emS<{D=g54>ukK)HQD=FVi5;7|zpuck&+~%BM_s>u`^EeX5%pD3juZLpwo)qYi zbz);jj-s};ulSU85|ksSjk=TMp}1@m^sX0nrE{*ZTZ=u#=NkJWJIo$>`$Mc*{h$2Y-wub+-&cpg$ z$LO)FG#;p2Lf#km(FdPwywKLol&Api*Jwemq!FnaUIH1}JJ@8!iNuCI74^1=!Oob!8cY-BT;pQ1Hh`bp|pQO*RPuEh> zI5-9OjQnI_az&le9p2H*DGIQ1jsiGg5-r+439`i2VA}0?rthT1u6CWp`>Q^)y^o#o zsPQyvez?qHmR=;8Hcf?!HMW#-`wV0Wx$<)hhC!Xt7?@MCibl5!T;H%9+Y8}_8KS*+Cc|{u3*UFH|($YWcK;x1`Mkk3HP_WhO|l>cFlb# znfM9K)J)r|W!oo?MRU;+QW;EZHP_?er2kIPEyIBM&bRine%a+LKQZeu<5Tg4mQ_@Maxo|)syaO zhvCPWw~qoXefFIlxjmNTID!yy18{YjNA-)&nj0r=V^^kx(2Tlitoh<#*!3}&tbE0> z=xaZVa=4Glj}8jXbV*nj7&t%Hui zE;lQ9_BI71hm?cKZxbjIKgi6613&p|Cuco+Fvv#yM`hZfu{ivQ{1}7gbdedFb9Wt3^mwKkAFwd=X>=Q-v?bM38xJ# zBCV3Q$X9^J@x5%Cgz)>jPa>^3H<_H35}SV8k^=9of){~3;P2E8evTec^7k11kcgsd z?}t*OLJ>9HpT^$R#nE9?A6S!q%Ix1R3Ogu_p5M2O+JJ~E!*tv~g{h9tW zjsx#QBOuOC;IbUi0>NU1598A5!&@o%9q7mQtV*KN!Z^HTq-pssKZ;H9`;EtbcERoZ z5YdkgA5dCjN1u+TKx)e~_G-onyzy=nbt)Es{3~zzB@rUH&6-GE=M*csqfTGdp0Y3d zbzwwv4E$4{z`t_K<;TqrqM?W6aTeXP2*^9dJT$LRWKK7v8065@9h*r)$d=k}En;R` z_T2M?8Y);i5}Qind4794xRw27qT~KRp_1eu!%_K@SU$;a4ayI;hM&9pxl#!+_PSY$ zX02>O(?WM>`Djc|#;GLx%oo1$vz8&%OTz12I5C)s5;)<$%rZVk1ep?qzUQOqj>G3d_EIgkr|5?s?*zkDN zOdqOO`cR-QCoqC+N$>nJ8g_I%6Tb^Ja_V9^_Vlds~v)-3qhR1x{k+cxu!!gKF!C zEL5cjeZ!5ZVa{2uY?d~-_jeHe8Yw#EZvoy<{V0n4C$Mbpv!LiaSg}GK=53FpBNGik zuhAW(0(@!ggGhR?Za>?em%{ECYIB=s-ZVcYIP#8_-504|+RJhVQZTyOjQN@$5NYLY zg!}Fbz#^)i`SXc<;iePxU1bj+eqW9GzkVyYEn8W5#{?*JFobo}u3(VT5W3{I2(LJ6 zkl~EjOO{+QGfGew{rAZnRA$)I&-BVg_Bd5|2l z69y*?g{e=|DRD^{mFuZN?1AxgD02ZE9{B^ONv`H6z0-w>9i2F@e=Xe+9D-viA9D@v z(bV{K0X-d~0hx2HF#OOP#$Rp|$q2dPtPh6tX47O=Jggs${L@%}_#jfW9nW=%^>YV@ zmB5=BOTfF!2-osg(PijtEc+J$+j0)UYhyz+61uzw_rrv~KryqaC7f(+NAsuuhoc*X zeTTwzXw29}k7V;9>AD-_y)}Y}`=%Dv1)Hc(KA$ak)``v0!r#7Y4Rm;KVq?GNvKjm1 zm{(>vM%-VITc`ZtZtU-4@_S40_GDd58=lAg>YoGJfgjO%;}A;sY=^#$$9Z2JbIatM zp=?zOvJZ>*LdWTPkUJj(Zj;n8S}7XdYEPi;`crwkXpWc5zQwXl6UcF+7$tl@20Khg zf!kUiXe>SfNt@0=uuD9)cc_5eOJ(LT=Pk>dIhsXBTwyD#^e zQQn z!vb3jyimogJKi(5f2%Oppqr>WaFKHzY0f^&UWeqzrpz^T14!CkW9!CRu>y8q=rwEdEuTYR-@+qUa(f#1 zZa&N|4jIAeNeRvtX`s1>HK|K@UhwieN?*VB;TwnF{Ns7v6eKV+tX{Tp!Q5GDTc${t zmyf4Y3NP7v_oKpldK1OkkHsT@*Mg%`CTnP{rHHDDZ0dR)ez~O&WH{eNJKH4q^|qDM zN!khJ1@rkHlew_AL>oIN3(SwxR>HGJ1pQr?!yd_wWMjYi!Mn4_a>BN-In^S*C~*`; zhd;KMF5!ks1|@jqmEZtNHK$D-Ry1eVH!N0r!9CQDrRVywwBpP=TJ~)JRg;ZVN84EDdPQ>L$88gfh&qAwM z?NKGDdlJb7wQA6~>*t}p@f>dYeT;TK8jWG&WuYSlsN#eVb4vXW<2L{1&6Z15o6!qy zwc1fKT_X=uZ8a!!&S{Dn7{O0iwI9o)DropM4~m)chFzY1k9)s$2vuA-4|?Z3;E{_s zu1;JCHkw1}cUJ*EAFE1s8bSETa|jL-JT70?ec{yvX99DUs#)fDluzm1O-sLQ#!uU4 zQ<35Xn6^+KF82b0ZnL0v0pp`h3`Hc#EY; z*J4|eIJ-7+7vG;8fg7B3!8*^F=4I)F{RvHWIB^3O8@$4eA%mzpWem7q*vREpuA=mb zk$8UGI53x70Pl{)!TI3nWac2a0RJ{oaN9wW-1e1qB_84`ZJTjwZv*pHi{MAE4}(^= z0}h}0$>!UOgL!!mR)0K#aieCUgmElPy8ISPN;mUaevTAg8OM4@Ut&|_Pq6hD7toH# zMO?kqXo2mgMRv2I34|=syNKD;y($xz=^o(UPlzYeAb*SFZ3}4Cx?QkDS@7o0O+mF@ zBiLD^$tnu$NGjj4dRs~|3!QojPVF$Hk4qo$845EgvsjgW)(nO*&Mg*XaGk%rs~1=3 zq@n&oN0!y$!`@`1fT=Kx>3V1ldCudQZ-N3`Za#o&*0ubPhB<7_25&eT?n~D$7t&Dv zJkxENgb(iD#IR#RmbG6AUfmsFlY{m`;@SIb+awV?>nn{ShoaDh!O$8=0!N zB)s0^O0^G;g3&=^NO}GrTXVJpXH_WEq)$BWkarrY=A6U8J?UV_#M!{&EZBSGJ+wu( zqGpenz=M;dz29^3M}e`B=L%+v*RG)j^T#rFdO8|US;CaQ=Rp1Y48CK+I+QZ(z=H!} z?1I5~7|3|SwmJ%|ighj^sT&Cg{46=o2|L(XyM(7C!=gC8p`E(!`Rl#wf$7vNb;O4QJXa;6%#ff%&G_0CUeyK$|%U`nK zmvf*`T?Z!Mto6Z9~+bM3%GwCkgf6uC4{c*?i(+ePDegA2%V@G563a>$~~}Wk2~-M zli{9UlQ0v!$2$+MU@iXyzOv#Ei2ipEUzQr-%Bt1Ee#Q}&2#Gh#EoZSmI~r!|X;F@= z4cbrsgwwyof~l>rZ~9PzGjhZr+(}@|MciO#J}NPzxyx|m4q2GjJCD2Z_dH7ba_r8D z20SSAP{xW$(YX~n*_c#+>UApOPTyHZG4%~hcGGwMnam23bkxD%uro~V={l-Y+y^#4 zdQftj2h=9T!$her90)Ln2@~$%ga0ZOe;fp(rj)|=ixZijeF?Kz_yj)u z3uH3kZ`iIbF)-7*&EhZvr!Uw>vk!RDhR7E%g1q5HSp!bg7oMmT7SoDRkub!;2IlWl z>sWr^UgXvr!LOv?>vbQ|3=U-ro{An3|ZJ=Cz#fm16f`HXtt_|ZLt%4y=yaB z_PJ?z^5Q(adSyEeo107eTJo{H2lD3oAvNYQG#f>;H$rYha<)BNCM}Im z1%5|}Q8+Z-*@y$*O7Td=B)U2ExW&uQvq7Al&qNP6V=={6J~xZh^m}HR301&7H7hktqI&z;4 zDk)d@9`*>?LJbQY>X{>CdR3Z*99Ays%uEKuxt{dLVIg)l3!m91FME4{_;>`*i)QDhpwO_jI=1rkdZS;RG%nFL3IC_v}W?Ia)rn z2i%^1ffFAOQk#4`Yf;$;J3dOmzZwmJ6KKb^HyV({CvP0}aJ!JH5-~A*eY#q-6vkUB zQh@bjHZt}c`97AR&@Tp1Be23vUd7^^2x9gI;n*ft49RMCOi9&~#fU43;#QeL=$6Ig zk{<#4%Dbrl?@BJkGL2T;UkB~sxA3b?B1RubBo6{d2Tt_x-3T#OeVVwISMqY z;l71UVH%~Ecy}9dDEdd}sQ-uAth~iGK5ZrE2afDp*#Ue$Gnu!2@K4m~eu8te{LD5u z3%go<1&Erzgp_YCf`GzaX6Uw_x%Oy4p8IcH_X(ga#EQO4ZW497-ofF`6KTZ>2Q(}% zW3B!?t6eMftv0KZ*(7r~jzZUWbS-n)WkC}Qy}@hxJ^ZiYB+iUW#=y7(pgQ9!DPCT{ zEXNLI?~2SwenPx3(a7)%d+|Kdg%%po|KHEdbFvip$VH3?$W=zU7UmRaj3SR44!9x@+-_n((a`P zNJ&|SR@|wh&E@sn?ZRAI691ZX695Jc>%%Eic5z=CDq#Mgh2&eB3fm3C>AZIU3?8or zMco0@7G;=WX2O?R-V$jjD$?9dp>SD7g`RFVhNlTv z&|Uc?lT&JCK^7If+?2H#^VFCQrKTdh)S(}p=lG3&Wl(l1o^AMf55L*Pn|G_pgSw+4 z91cCsjr|#oGTRp8i<$+(yf%&2FVdzYuRQ+t_9xtz9kQfdfX-(JOmuaE_%Oy?hqxIt1paarit;O|-n%0moZ_a<$@V7dGrvh`Nf!SX{nGc-^#M0Oqs*TRbV-ORL#g^0@dlf!F@V|;G|*_4Uddx!(30X08SQG>Uh(> zn4e(z^*1_qrr?BS7bv*-GCe(?N>_w=tWMh=$XCv1GuFD2r+fo`Qgeg!xn;D>VGVLK zUD+^sPqHpuLE&5_g;i~)ElDcqYdi{Uyp-tu4ka2{AwwAr+adhsK9m%8&DB*7kaKP- zDe8t%x~x9^7$?u&Ex$)eBhyIx8^;Ho5W@>q-soFx1XD?dW$0(Zk)OtJO+6Dt?XA?< zvItZsipX`GCX1CW;a22N0m~$WQBtFE^0I~ew6*4NS=ce3c%}dqs#my3gXOSwnJTs2 z+CY5*KSxFGBhB4Dj{-d+S@PO7v?*VKBDXu?&N5fB@O=)m%`$M`uc1_%I~W{Z#ei*b zGTqkuf=izaVRAO#u%!Y~-9CbR>u=*V#SQR!_dV>?7zE|ZjfMG#E6G^7q36LkNL_LU z8^^4qxR_mZ?QR#@h*go+mRRoSpg=a^_F+tUkplbA*MY+8A!IouAJfMk#+b4o{5LS2 zwrE^nTQzH0uh<09o%_l3U~N0J-<6$2I&RmO9nb(*YmHpKMg_6#VaY6W1l&A@<3irvqghVCAzE9CX`- z^v9J}4;Xw!o2$>+J_lXUa;u>u=LFu#%8&RpOOd`W{K7BvlAzto{jrvhgF*lAvgq8! z!gEqIA$k`rZ5ao;1%wa(vxGtRQ>yT=F^|h^{V6n8NL3Iu(?Rdtf9#-038n z@2|PTOv1!S!~*dGJ~Xjr8NtETR){Piw;ci(1&- z^e61U$U{_rs2Fz(_p<)U6+Gwvn;XzprWWLR$&zHgNI#wqD~uJGlc}uZz!&q-tXNn# z^8iS5TiKz!686Kxkv#X#L7!*NLig^2NN#KnH`8Sm<+=&y?t*H(CKkrtU%bH_j1%~I zGX~K!aUt{lM2a@{1=4HRhDu{)$ZU5B`92UQ)zWNKmyF`O&6Matp$j(I7{Ouf zwcNALlVNK3}`m7jT^)q`t-J!8r2gE4;c4q(sH zOX*qz^5Ow7)E~uf?t6sAw!hYw%3GHyuJxoR zeL5mZ=O|QUw?mPBMNNY)}lR>24XHBP%&7%H9Wx;2=f>viXAloF3r;K0Gijh+Z6SsoYQDJZBmPn7_ zAPd=Z3UBWgShTJ)$Y4ebh8&5dt5tnM&n*@fs&KS@FVFN}O<{FX%fRT^LP*!}pu}7; z*#3JE+z2$IO`JZz60f7?Bn_}`mjDfweYoUY1$|T>Y+*htG#?V2qrg2jbB4NLGddQ z*BH%TnP^6CZ?Dmu;6%D9rwY@vqu7j-JE`)KBz^o8C3GZ*fr0jYI%s~LMX8z0qWnuMVaq?DtKhqqtr94g5e!A$$8#f$F4!1)i`q_&PDrRcb~t z4_{Wc=@R?cZd5a9|9Eitbdp;2Js|#lHHJ8Upfm>^%YQp2GKC;Jx;RUYoIS2s{5m)a zCZ2u6jdHAo9|n!AZM_1;dmR;?&HiJB%eGMA*eEvta{_Lbxl`?#B}=o7S5fmOckcXD zHJBQuOHd-rNnEe+hP(AZMRF=+>@>3Mw6A81$_bmklwe9?0l%f*RFt-DANZ9yqXGeC6=y2cCzaZVW}TtjH@pJ*8P;J~a;F5@0+kHgbHcd%Ew0jT*$f$}dUfnD7k zob2mOH4FdpZ#THp$(ftT)AJYCJbO3Ao*4&<7Zv%j9zJa8#5TUdL{;eWw==o z@H4wr*oF1CF>=)(oS2n@rE|@pCt?zfOE#oOYX0;iVKoH~zr?*2%>gk_b-L`($#P$6 zuwo3xXA=p{ThQcrzs2mErR?bnfgQbP zJ57K4hJBvl33+-3R5_`cJs9x_uN0lNl zC_E8Z1+c%Fh3A-ooU$Pu{5=S#P7)lIivz%~e8 z35$L5h25$%gf5>P_&C@Pf5?g9d^vTpwBHA{a-lS?+}T1!d^TIISqPSsA7E<4M0$Dp zInuCN{=kjR_;`CYRLLFSa(206@{bF6ML0*e+ri}iT#DHry~w_YTGOw?+qrEQdo7CF zw85%i76li5#R_2uS@-!PYnX5jNLSIa*xvz?4-dtTLKnytn8l&8K{Ttr0<8`xadV^P z*h#l0mOeNKvwwzha|8adpG8+t^z=Vo*1ei=?0NQK-8M4Z(2*MF!0w;w0ge?c2Xr{_bm-X4f+vZtBP7O{k!^@xfwmpTss-7cUG}%kcVZq^2pjm)_Pp7c&28M8P!4vj&QVkoT^NB8BJwVz; zfARY5LQK2=>C)*X1~@KJJF8a6+@cFHdL|(46ifyq9C`lU4a|wq zrGidPnz3gnDeT?`v%JSqURXR;O;4uaPr`ibZaD5+5>C3K2a#9vB0Qfvl#R|EL#pu= z_|D3O+IMzhZP-=(dPm^T9k`ER2`YvzDrqZTM0m;@~cuRy$QJ{*~r487Y9(d)J_q2K3A%8hsMY|ReV z+?>o_S=X^nSku>r9GesAt2 zJYFhIRTeSiGvp21$d$p(*&m=}UMzHZ8-vHbq44~-OpWVtU)JOi2ga@AIJ4JH%-#GN z24C}rt*OMe_P+&*j|1%dHZAJdBe1JweoF*BW|E%HK+X{=F625Fol_m%rKPdQ;1kt(;*n0Ln^?y#F)I2ZB^2xzotJnC@ z<#Kh`G;Q`Ob}3wtm``m{`$^j1DZ6#5ks0sY!4x)l!1VRAVOK+%$Y#wMP`S34v=Vk< z;LdM&ZNV}4>~V@)c_EGe6x7c?u098$o2x+PoHh-8KZiWNs@4<_{=`oI*elGMpNsa~ zA4W%_N>JpxkNrxxgSG!fQkB#vbaG0g&32pF$Ag-}?;lHx4i-XZLpI2m3S8yD!!SQU z4QgNiWFG1bX#8dhedu}0&OX};Cxo5&f?uZeeEE2g3~1wJPMXr1_Wx)ymeTcHKTO>0 z3cirWYKNq-M<1KnmH=l*L63eYUUvjXKLtP;6<;)hq56DrU5T-l5ag5WR=G% z#TJcbwDol&rJMdBi3V?y$_k`|)*Yl1pGTLKd{B43BaKTr&4&hWVB=bQxY0rPa6-2~ zj>elm$ZbP6u{tW3@+{IP%KH!KlPyXLPWj4~|6wQ0Gil)borPL26c&koHTBf*| zTTt%=C)|>S&QT3ZSUDYs1e`(rpBLE9JRkBmbjRw8F(6*4NWHhCvF2bXygZfwdI9oQ zoMitX~n6}}BvrxOm!|0LM9l4+c? zVVk&m+fVMYb}@gcq?Z0{&nG@-B0VjBq~3@<3p%pIJ$Z9{aLF zO-nGa>coR{SJTJW=|b05=>3%>u@Pr7*nPE3rnTo1GqE-2Y-SvR&$;y!4 zXgzL`anD(2nknQ^^PiPYSCZCbUyeDFw8K%- z|MQ0VL`=ts+XOa;O<~n5ZF2fO5H@djroN0Mwl_Gx)&v5vQh4L6*EPX}=2$HEet?rU z?&TMK7v62Q>X6i&3YO_Q$m);pT9)aVf}hu`vabvFLnn2!yE_lT>Mnudf^(QC>L*JU z98L{wcPMMGGRz*6j}-&6QGd|~+H~wA*q;|Td&5VO`rt6;SwCBBY;lm*I=;YxCy|Ay zt63GUyG;4BRjg3hJr-vUC+GTbPl&}3NU5(?VZUl=_- z&CYAB66ct9W4Y-O+HZb~FJEXOio)te0Ce>C)QegllbFRGX+8(6~X_?<8=cWm;AN)1wM*3p~?IZWF%AP^|tu=qpb&o#|cAv%0oWCh#85}^zem}?#sYj`v zmuzCGIqBI|voY?UI5qube0sT!SqC+sWrG2!%M169&9>NOfcUI$2Ygkr7W_$(RC6!_ zdtc8*e<2H7JG7M*`10KBgDx(mgDIU0$;Rg0;Kib;R5Gs(sz|o zh?vvPKE7|^hX}4CCqE%WxK)aVhZmsNOFJ<3mIw8=$8hV6I#tVBl3CS4?pS33`rs;I zCTz#8z1p<_jcbI=RW`8UZS39MpUl^xeA;#8NzlG35t1uYVB#_vvFn;#Ufb;$t@yG5 zVwG?5Mvb#+#~6X(6Ov9vdlt|D8M;PN zOL{EcO;jS6ok{$Qq1N=sdMD~Wk7ukm5Kf*PN}(TIkqLZMk{t~+OA}bmR4&POKCAeYK%2Lv>kGWhrXr7|?~Sv7%{v9q8-VAljjz&z5lKNoCt? zda$jCHi<8CQnNKEr*kd5>d%EU*LTw6xV2OnuMB2t>7cM$5oY`?=HeiY{fc?T|1jue z`==VIwi6rI*vZZn45dTbg%I?8H#6Q9OD@lq;LF`K%J(WoMWOd~ zzV8O+b)BT7>^df%#!S5;5dM-?gWGdz*mI4~>{85M_%!>5@K&)MoD$T)#jz5)yf2~27Q$oS z_R&0*y}0qIH=5kEgVo)$S!K&(aq3S6XlWg26-NeS({6$W>(pt5h967MyTGLj_o-3C zo7gz96u|%wO17Fs%g%qpH5xy;h~jO~eDoZ|2*6=?gIqX%KZOl0xyWi$VnGr-8MRIX z%>+}B+`f}?d~CM(2X25(H#s54+x$7FKnr29M>v15Z3N$z>HN-vHEQ*Ha;ol z8)Xbh*XawsiAYDAxbxfzdnH=;G6<}9j;1@`KfvD~hv8A+1OC?Aei-xf3K-7X%xpUR zU~F|X%|CUU4hY}bo_;TQ-|gmH*WyFyA0_0Gt|mgzZnNnh_2;paX_Khgyn_pq4`LuV zY8$Tyu=GRM*s%E${Nfcyh5bbW`!p;Y^bZJJBWY)NH+v=f=<|^aTDA?uwg&StOJMJ=gQUIf7S8;61&ySZv53vDnPi$KJpZl$jnY|A`)wOWPTk1ti)OIJvb*R- z@t0cdmD%9>o)`3%138m_E^Ni#BM^DsjCN*mH0ez}d;4z{$ELf}1Hr#h@H3saQtlS} zgb1CT?ccF?>KyXxP~y(ZYm`rzp^;m>T*r z%aeAP)Z?H2^?cRWtz=n07L~g#X^oN}|6irx=i0VVaPLhZ^F=9$3d&ScmBb>%g?RDQ zFMR9jMt5&(Gl?PM+SVvPn0QW|TFm~kJ0u4uD3YzXumT^2UdF4&mF(%sDw=Y>6u${) z9H1nv!3+)kXxlbFiNy2VGdk{?Cvj(*P zWPshiWRw){m{(;4#!cmN3OG@Q=GLvkA6<>?-MvY+D~h`u*Ta8X`k3zT`bod*j#J>K z8Nwafi_&s$;d|9E+%QjY(k1nX2Y>Zvc2zlGaC--Zs7TgrPR*j80}q(Vk|M~H3WD8N zw}9%B(acNGx#xCXEiKhSOsxZ>=dgwCho5P}A}2kEgT+hngTE$g|1h8W%!tdYx`=cCDKX#IQTwV=sad9vr=nUkKya$`ZcEQyl-OPF+2lGS%1Gi^6)eTMrjkPw+$R(NPZFK{U zw}CMAZ!9|<<1apNP@BE=Fo3VyCP2xDX=L0jaLj8e*x{P-?C|$9EPK2p9q4((W{a}^EpD-Fba3s2hiYbE z!Ns5+4_K{bpV!3+Zu7JF2@==`*+g1=q!Q;wOohVg4Rlb*vfKLB|ZAILn@$%0ERA#N?kCwkJTcA2JgI=@7GpFkcCfo;;LZgnz?gOs<8hYmKv`l1K}<_w_pN=77T(7V+0TVm~ixdavu*`jN|W(cOnH_Ka{<=9Ez-k zyvKjVwA3mWr}Zk}HI-d#_}pQzb^KCN%%~S#JuD)vpSReT>~yk~TEYwu|HdZ(=S%!Mc@2jNY;Zu?SLzSEIbN7@Md zSQK{kA>esnyD0qTHPDIHL1_8MHx))>)%xf7<#z#eryL}Gi9vYNOnBEF63P_oQlTqo zEq9|h8Jyq5unSLhNXhaLoD*Fa)hr%VXZ89yR(~1CozwQl_mYpO>Tw3oON=GaydYS= zvJ&(APvQFi@@d%_IoNa{oSAsFvyhDk=&f}x&Q!k2wpe+=%%e|P(!N%9!*C!t&dOni zih=BF&_2)-uD|CD){5W0pF#ITVz%AEj0M?$pu?w9phQ-c^gCksRlbR|7v2c@QU`cZ zT}gU>uEJ>JN~*dUhE8uLz`YlR+%}mBkQL?y-Y08dwz?CONnXsRj{Xlke=ehASy!Mp zE*w3kUSvaz2lHdf=L;R&eheO?z-@KkEeh>j2QpCu*}OrcV4`vdW_^8uy%NiCy`l>o z_s|e^#uz{bpNriq7Gum42YT|_ACitqfcZiz(wOZGhDT4a9?#FL+-N$ue-2=#fu;0( zw=o;6bDF*JTu7E`O}MRfEmS1Lvg*iq@;Nu03$tv7`0K!1XIjFm{4ls9yno)Dkqpnr zxX?x2T=Z}sNQ0e?VDQYtcs~G`;fGJy9~yv$YtJ)ToB0&oRgU-fOri3o8DbwRN4Rq6 z1T8h~qW1^&u(5qLyPjeXTP9hHMt&4w*PVD)y!H_+x0#2>J$9j&$yr!A_Y!NJ>;$hL zrZJz)uOzwClpSl{$)crWXpY$onoxNj`(Xt1ewkMLO|L;XgTG_a#tKfm?>T0CwWqEr z0{h9>kQN@=O`V%9P|GrvjT!O?3&S3>kEd_4XU8;XcXT72asSBTl!c$&Dui%G7uYoVCi+jI_P6Yo%+cnryY$e{x-zv4*6 z$=t>XKD1G@fQ=ZxmX6qL5IjLovB*!!%KN^b&~MA+HA@R{P?Re=95yVKU%gb1R8UW((+5$_=8Kvt&O^TXQB?i^XX<2w`r1G)ioSk=0{<1_V`WuqGI_ey`jlOhTEU7QJi(85zVidW ztp&{?D!g0MblU$Tk#$ioJ=Bk(t1q5$5VsADj5fd|=}MgcFh^``KMB%z-4T^mOIyX> z83x+NeX(emkQEFo0Z*;LIAK^ldV3U6?$I~mgsF1$$swF2f1Cua6XS(^*>Ir)ah1kC znJ%8Zycx$!){95}mnZ)HSPzCJdvGJe7C>H;DU8{yK;31tg!iU(m~Ay3=3TkX>Pw6u zbW0Jp5+HI^)#Ea`;NA-Z8|M9IxXT+tdWTJiNLi`~7CRjG7{Cp>YX z+!20IoBfTI4-sZt`6SkSuo$yu^l^XBb+UPXZ{r|X!rjg*qy_7uaq;^w+MJ_7e`h=r zhi_=bD#_(E-p?A2{nMj+pFXj@SISv_c`os@WFXym3KZM-GFj^+D2lqlr~K82rbku$ zXpkQyFO7q&TqUSJ{eYFbA4C7)M9HsbVb6&$=pVj-#vgFQKMvN=yw?xR z7CF#+xgP=p(+D;kn*%df@4~?Ys=ZJqM;=v^jEb?;+N z!F{50zpt?Sx+B2(;(qS2mO53WXRxaieSq^zz4|d4;(BSs_;vb(v;o_rm?tWM_$$KV|YR6Pzo{ganyI|7J)P^7L+BpT03e4Kr z#a4@VQJvm#7Bnu^rJ`Io zxMw)TjX%be))#ZpL;YF0dJh}sU57RG<#eZho4{6^0lec=J}Y`VNx3SM?XE~xSEb1^ zI*ND-+>1F!r19_6Le9D9IH(!4vb)0lDsOlYvtH8A`DzOcb>+omIVY5MJh=qxGLOIt z-NPc&VWE!TZ_`FHl{FbcU+5g!C5^!Zv0h!8+AXxJ z_{1%YJI)%Bad~g^G!Pmr0Im3wzk2rwhqN%vFCllR; z*>cFqQG9ogKfPF+!n7KsA*Xp5?0WuVLF==ggI0nAJoPZ+r5*({^F|LgTJYno{dx%hOfH1q zfpS)UHY2F;;cwcr`Zq>v?MNKpu z(wGM-$0y_8aXA>J7z1?j2cJD6;fa=+Wpgm+9L}bl?|K_Ej@)_ZGJ6)PL z_EHAB)Nnkx%a*-v7$kU$KEoP;5&w0iJSrKua(`!5qo`SMyF5P0P7S`#vf{L1?x`4h zVPQs}hnzx%Lm4DBBZJ9$33K?SBp6XV9A;=dz>(Ig`I7K6xWGvsdP;m?Uh-M25_k*$ zO*#m=p6lt#vj!%mwg}3ScH)Q2qZnV5Ou30u$tGbXTeLHr6={zGr-MRX0Qs1y#o%Xnv=JjHUD^?0h|aQ59aHxOkX>%4yBeqVC|-{+{2%@*~;8lal$6A>1s|o zaG#T4agGD6%q-(6x8MQm^>!rFqn~lyTLt@dx&<=oj{jQW{a-ckEfo;&8R1r0B8DF;(Bc@s{2ClEnk`bzSe+& zuM~wH!Bu!ym_sTjGpRIw9=he8WaAGw<CL4qAjCnKLoZ;;jQ3o`nvdMpK3{nA z;{p2i4g~K|S+wz7Nk0*_L5EbxCB1A*f8VZ za;hAbO2GyPP|q+Dd_UdhIqm`*@|0t<8f58%x-MLr){93b{lz(v|6%pxVW4|M50>Rh zkoJRQwy@EW>_+skf7@nIpZfqX^1Dn0`(sJ}sU2~ZPI%B@BhyvNXGx#B=|QtUUA({` zAg%z0OCE#MlP812w<poMKWUPs<>l*Rn=t$0N)m}()Gl03q z2JF&*ZusQ(UdWtO2h!QA*|%?TAelXzeH2H+=`+80*$p2!`|s<8Om;u3ey|E+T5hoW z5r_xdSL5|_4Q%zey|;ad&a~C&dAf{sxM)MUf(o6o9}P!^ z{dLwoBXlpnh~6#Nxr+}ca!QgxwRI*r)Ks8WSN*1%;$Ioo*)_+|uatO_`0Aq;S}wh*hyv6)$3{>tJH-aV|Ct7=aRzK0d-Cr=GVRN6IkvK+i3NG&lqpu zi}qpCU^y&|h5h(DmTErirBKHSWV>W$-Cu`N%2!xPB_%sBDKq_H4^c2*^bMO?DfsXblv+bCLA$^*$dUR~HA>&ZZ3g zDJ<^FWSlO(1#<3zFjx3L_&D=1NG%_1_3V|NRmzMmu=rICSwlXuM?r?LUV06Tsi}pQ zb7f!cU7ic44w=A|keOC(^3ql&`!B)DKY2K))d&oX z4MEdxBg-q-pqA&+&>3Ehe6J&%edh=ZSAN70{n_|&{wYk=K1Vs@b7`i|5t@|n8wDE# zJg6%ItD{m-GW|TWUG$a=HoXYD1yfWnnu~q&OStKMubFOy zBe)#+&1TiiM$LmZB>#M#sNK7k9aMhFj<40gRN_X%^w||2OkQHs@+3yLL_o&B^}^;?k@OVC}ZY-(qM7(U*_$57gh*f zwzTd*40bM~LCY6W&{2DoPt>REd9!et%weXwvyLCJcojR=ae@u~Q;avl09pq-(B%U7AxaJ{9}T{(m*qx(^HX8Dwc+_N;_%mr4C zd4;brB6)$M4H>&FKe){U{24hnADbebad-M@uUTpaM)xM*lKl!O%Q%s?pp9? zGk5XU<>Bnh3TMH|R}PzY-Q_IQpYx?MYV6qe;jrv{$)rxtDIt{%|R# z%VhJV)qD61^BBQl{~vYg9b~sYuVxozC(w>vvCMvQ7r)cqoRaHwY1QEbaQE=$FU~v* z8$86&Y1xZMf4*m5TRrI4XKx}Q>#}p-7EB%?WE9pjwtA8UKT_SE_9yIQdJ%$aKz9(l zTqB05>xQCH^Hi$6afD9fyP%{QouO22W0WiAP40lyDJnAn^0?>B)% zo*GyfNs-T_;ovb`5`CWL(5R<@RQG5HD5hU$nfF}4aQhLkxbzz5<@4|(HJFyVW`igu zkDYdsA=hJb=*|Wix+9#8Tjn-WsLpF{)aG7pZdEh8+iD1fHXw=LBb^Ybi^xh+d&iuPTeqkcmquE3<5&){cg8#{(gs$zm&t$ar zvoj;p*mg%pO8HTazR@SyfDB)hjm*MkI~6GEu)z~KLt)soAb2%mAa1{T1fHm$XO+)i z;ZB9Kl=9&*d_7Rel})nZ&E}n_(dN43kZ2CUJ;P{|!~pKugF|GLbsk*zMG9Wj<8VRP zur#VhQL~pCw^qiNWj7|*zDT{nF141SPSRzZy0n|WvSTk5Y;lB(LbiJ2qQBgpUGX?L z{1d*9R7W|h!&n_>PeZrl(cMpr>4mrgx5ot2mG$XR`fv(+^l%`BD*nO>)n4x0jA9($ zp#_2*2c;65;0lGY^Q}ivZ0ZH|o`DcQDucYfWb@NmKg*nd6HhBDQtgH$c)MvF_)q6x)W07r>8BBFetwv~D9#|`xn=NDp%MGv1o9mQtA#v#9hlg-vh!_f%zI)r zRe7vHdYr$_>`J%WPJ~(1es+ z=$LBBJsIgm`zzA<-)jTlitvoGf6^E{=za_)C3y++xGKHb@c=KxO%uLH!*Q(n34TCE z8Mk@DDwy=ci}Sb|3ZD|rV1M~k>h*}__1>JqhOP#-C4D=DB%Pr<8%>$yjlE3Y!Wd&3 zM6{yM5?lr?WZyQsL3euqdp9_kXeQ6M25aycBg3Jm@&qlH_hTOlRk>%;>p-kBAEe9E zVc3R2oU!H}aQ+>GX9hS?Yp65W2Mveat1H=(qd+z~_I!lfJ~Cb#Ex1g)ad2-k8h-MJ z2gg67<#!(#Gxjq+JEM&!KPtlSVo5CCXUgv%x0lVg+Jch;Vn{togyk;@zE#Ml|G-zV8ss?Kl@{4N;5U!!!<)GSF?P>D z+AVY@{fDTK@55Z~`nwix`Ga4A=hc$Zzx)$Th#CeJdJ`dZ>_c2UQH2f-8%JONTq2VZ z&+zM9Kd_c*5@||@GuitY)O9(Vt=G8)KLWq8x=B5T+luN*(>7Tgf%e&Z2yMuJU zMuJOn2p62>W9j8e;p{bAg>5JA;DUJ@AR=x(z0yfye!iOIAt5kDXW6mZkT@25YaG@!*YKQAnfhIjG~I^ z$;no1*3olp$(=B6qMYC=h*(ZT12XBERt}yPayxo!p3&&N+U(CmTO2h{AKhPN;GOXz z8nkmHyp&X|n=by$$(;>lX>r%^qHhc8Zh6E1H7bR1$e%EET$7u?A1XM6prTf&Z)q)lE)!4cCDk}aJ`oz6O z?22kN(zNS*)5@*9>c3(z{`#7;+%*rH`!-|4r|qonKsx*ES-@5etrx4mu46C5mO%E= zVb~O<1=h>lNY7SIU?Y4MDd_9s$);Fp_~J&&<({M;VMt;B&4k{@pS6>}`$FlP!BD%j z2Fk1|;J>H@Fn-*{a#kyFORomhZ2qeWM=}EF@X9Puy>3o;=m2znw~vu$^4%LO;whvVl}9Nx1A7M{0SMI9h87Ybc%q zH^V~6T*%{2c+~+u4ZbWk z%x4F*)s2Ij3c@{N;}UivMBqAy{K9*l1~54D1>3*cmZYc7pvp=S#q)`@%wQ?Trfi|S zqDhqOkc6?TbXo5BEL_-IkIVYhP^r%yXRR@W*B$S~XA1q;-JFxW^RP@f?idZ}-!_o@ zqCjvcv<1ubYwRUIoAzs)aK|IMa8A`noUOl^ZdVhn8Bu{6|0*cFa6Cl`C|;|#No4ZU zf{n0<#x;#;Y~!_j!N&sND!Ead=&%G!N-RNf&nR}`XA1hMYjA7+8$=c_zp_=GI#?=} zu$u6cgIDdBS;ABw`W9b_o4((~5%Uk@?3wYDU>w4K+%6`m?e$}pU(6Sg9W2B#bYB<;OEq*T&V3e?o8e>j9T~(e=k@-ReIlO{^%BRndU|B8U~VA z%UlZR2U@(b4E8?RMOOvdhwG7gR9Eoght2AwCy!e21=A!+he4FKcbAZ@OeEGaluVmD zQCH57>l%EP{YW{<93-2VTiF;&TatoF*Ye5!dInV$IgwLMH|5STr2X?o($nL&$!3?p zq4&E$9i1L@B77#r^1|Nncpu4Lm8h#cY(=`Y<)o#h2cuoKk%h!n?)sxWVu!JZXvO_k z{Oa*Zbi3;b#@Mc-M;fUd5hiTptmW*v^c-51|CE}gmx9L86442haC-VDkz`Dl zQexr-nzJT?Dt_71+ciIM?{9Aiw7$;lqJv=kxjL#Y?!%4kHk{w~cFfz8!ctGS@!Pk_ z(K&NB+Lfk4jozsgf9nL^DD7ruCcfl8EfK80+(Kz93wZD@k@grJ6&-r=2Q^1E(TB^^ zDWO@FDsF$q1yh9n_Y5hT-8PVQe2RiWDqD$s-g2@2k>Weo2GF?8uQ+p|qtowr&bXP*6SFRWH^9}@>6_#<_I47_lG%YcA@KOS=iwChWqg6p@@H^%*u-H z;a2}PG~trjcJl;wWMMCxyDOJ@97^HzE9%%7iTThmy&6yMA5AU-D-%DrG3IQ@<_tKE z%Z87m{DBY9qCJ#;h;Q(VHe6sD?@~cs$XLyq>_q)NgXrUbMzE%JKlwZu3eHjv)O#Wy zgeeE-n5IIzcOK5zycVqXWUzMwR+8%x2d2}01mC}F!}z8G_NE|(jefKfb!uxxehWYH zmI?N(<*Ot}2)q)>0YRjcNfjNi2?_O$&xY@=z(O zyjjw$#6=RGtbWN)`ko12_Xp8W$7CiWsRy7X1@j#Tu!Bn2!iV;tyi zi#rdT!aHHB@ZC)X>dd{xE^Zis$E*LL;mrtE6Jw4eo5R`LNe}RuO%%-Uo`aJ$b(z~w zbr2%+hZBF<+C4wG6PZHyZQmGlu2?{B!d)`#uLccRbr0># z>_w7cE5$Q%k74k*DEhg2F4VN$rrNggs66%wZZnW4RSj9v>bDVn&~=5SearZ3o3#a( z`+C;?Qw4+E`pIO`Cr}E{rREGfN?s)ear2_l{bv^bt_owO3$F7!3iUbJX|ddyE7veK zu#z8p`4O+s_XDTgOM@$Y67;-d0%>phhAUo3v(Pp6bm_h+JGyh1!2O&8=c6;hzAF`i zoEOn=FDW*_C=i!zI)mjGhr#QwR&eXeMf_rxiZ*)sTu<93&|NtLGs5<>+lMW%D@Rhu z#;WjF!~OAVv@>0>K7q3`cd$v3ciHG&TiCGdDS&VDX`GJ;;s!5A)eE~hU7r9Z`gVoa zG_WI4*nW}}`pZktt8mvhw6GcDV}t zvk|-Ct>Akz`1lrmRf6gL1%0@2V;*eK8U&C0mM|Ty%_4Udd32ID1|@gFL3ZURY}sZG zQW}2nt0s@Fx*5QNljft1iU({no=xd_XYlINB{1H_im>Mz*JD}^=hhj)`Llb#vTh%< z_;r|#v3{9W38m>`TA{AM+ZAw3Vv`4a@O~&{ zFv{7dz@_BoRmn7lv@%&CFFELQ3cb`)pdVLx?3bFupllV46-ko)hQzmW`;pED=! z4$dERdiviAN7^=XG<40-Cy7Q$xEL2fBi6?*w$f}4&m0iDJnY->&gdMuOC|&SOiu4(zVdU?0a_#1xwwT=`Ss|7O-#jIvCf*027ZwY?fl%4g@% zleaQ3>(l@;7iMK$vuSkq;Xb+@CPTS)0zaXm2K&riYP`n!^8r%Uyx%1QV%Phb?aNsD zwzZz^4H?R`-L~-?k7)@Vc8)5i<#BZ31zYdkMOudzz=i?^?$d^F!5!DbClz%wze%wa z-R4BMzRA%|eGw%U&SkHvMYO;46<#TQf!Cy`vlA)nF~m=Ysn3>&tG8WXXqgK5$hBbp zfu~HrdOBWJNUHsA;lTerdJ(R)sza9HM0PVz;Od>9!Z!ElQ1`_?R&MN3d;Bv;i$WKW zz7o=_drJ8BqreF7-%Dc(w^H7{4tm&d>5pis%NU% z`gE!DF+1^8Nyr6kfY8{JoXyn`I%2Six{V|#?Y#u*d5t3{orCm9`=Drweh@8I3*;s! z4}n8Jp0lv(HTY~*7x!C37i=+&U9Z~2%0A}6w&rZ^xc(;QVdDhP_LpKvNf>L4O~+P? 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 E0G+&=EC2ui diff --git a/examples/results/lbdn-mnist/lbdn_mnist_robust.svg b/examples/results/lbdn-mnist/lbdn_mnist_robust.svg index 27c7a1c4..5d4d568b 100644 --- a/examples/results/lbdn-mnist/lbdn_mnist_robust.svg +++ b/examples/results/lbdn-mnist/lbdn_mnist_robust.svg @@ -2,231 +2,219 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - + - + - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -234,186 +222,186 @@ - - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - - + + @@ -421,50 +409,50 @@ - - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/examples/src/lbdn_mnist.jl b/examples/src/lbdn_mnist.jl index 9c203abc..aa32626a 100644 --- a/examples/src/lbdn_mnist.jl +++ b/examples/src/lbdn_mnist.jl @@ -6,6 +6,7 @@ Pkg.activate("../") using BSON using CairoMakie +using CUDA using Flux using Flux: OneHotMatrix using MLDatasets: MNIST @@ -13,7 +14,7 @@ using Random using RobustNeuralNetworks using Statistics -# Random seed for consistency +dev = gpu rng = MersenneTwister(42) # Model specification @@ -25,11 +26,11 @@ nh = fill(64,2) # 2 hidden layers, each with 64 neurons # Set up model: define parameters, then create model T = Float32 model_ps = DenseLBDNParams{T}(nu, nh, ny, γ; rng) -model = Chain(DiffLBDN(model_ps), Flux.softmax) +model = Chain(DiffLBDN(model_ps), Flux.softmax) |> dev # Get MNIST training and test data -x_train, y_train = MNIST(T, split=:train)[:] -x_test, y_test = MNIST(T, split=:test)[:] +x_train, y_train = MNIST(T, split=:train)[:] |> dev +x_test, y_test = MNIST(T, split=:test)[:] |> dev # Reshape features for model input x_train = Flux.flatten(x_train) @@ -67,10 +68,9 @@ function train_mnist!(model, data; num_epochs=300, lrs=[1e-3,1e-4]) end end -# Train and save the model for later use +# Train and save the model for later train_mnist!(model, train_data) -bson("../results/lbdn-mnist/lbdn_mnist.bson", Dict("model" => model)) -model = BSON.load("../results/lbdn-mnist/lbdn_mnist.bson")["model"] +bson("../results/lbdn-mnist/lbdn_mnist.bson", Dict("model" => (model |> cpu))) # Print final results train_acc = accuracy(model, x_train, y_train)*100 @@ -89,6 +89,11 @@ for i in eachindex(indx) y = y_test[:,indx[i]] ŷ = model(x) + # Make sure data is on CPU for plotting + x = x |> cpu + y = y |> cpu + ŷ = ŷ |> cpu + # Reshape data for plotting xmat = reshape(x, 28, 28) yval = (0:9)[y][1] @@ -125,12 +130,11 @@ dense = Chain( Dense(nh[1], nh[2], Flux.relu; init, bias=initb(nh[2])), Dense(nh[2], ny; init, bias=initb(ny)), Flux.softmax -) +) |> dev # Train it and save for later train_mnist!(dense, train_data) -bson("../results/lbdn-mnist/dense_mnist.bson", Dict("model" => dense)) -dense = BSON.load("../results/lbdn-mnist/dense_mnist.bson")["model"] +bson("../results/lbdn-mnist/dense_mnist.bson", Dict("model" => (dense |> cpu))) # Print final results train_acc = accuracy(dense, x_train, y_train)*100 @@ -140,9 +144,9 @@ println("Training accuracy: $(round(train_acc,digits=2))%") println("Test accuracy: $(round(test_acc,digits=2))%") # Get test accuracy as we add noise -uniform(x) = 2*rand(rng, T, size(x)...) .- 1 +uniform(x) = 2*rand(rng, T, size(x)...) .- 1 |> dev function noisy_test_error(model, ϵ=0) - noisy_xtest = x_test .+ ϵ*uniform(x_test) + noisy_xtest = x_test + ϵ*uniform(x_test) accuracy(model, noisy_xtest, y_test)*100 end From 19441d6fba62144988c59e1b8e5183bc241b3ec4 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 17:24:36 +1000 Subject: [PATCH 28/38] Bug in REN makes it not deterministic on GPU to evaluate the model --- examples/src/ren_obsv_box.jl | 238 +++++++++++++++++++---------------- 1 file changed, 133 insertions(+), 105 deletions(-) diff --git a/examples/src/ren_obsv_box.jl b/examples/src/ren_obsv_box.jl index 185b7b5e..c70c0912 100644 --- a/examples/src/ren_obsv_box.jl +++ b/examples/src/ren_obsv_box.jl @@ -5,6 +5,7 @@ using Pkg Pkg.activate("..") using CairoMakie +using CUDA using Flux using Printf using Random @@ -12,7 +13,13 @@ using RobustNeuralNetworks using Statistics rng = MersenneTwister(0) +dev = gpu +T = Float32 +# TODO: Currently getting NaNs in gradient +# The loss function does not give consistent values for a given input +# In fact, the REN does not give consistent next states for a given input! +# This is all fine on the CPU, but kills it on the GPU ##################################################################### # Problem setup @@ -30,14 +37,14 @@ fd(x,u) = x + dt*f(x,u) gd(x::Matrix) = x[1:1,:] # Generate training data -dt = 0.01 # Time-step (s) +dt = T(0.01) # Time-step (s) Tmax = 10 # Simulation horizon ts = 1:Int(Tmax/dt) # Time array indices batches = 200 -u = fill(zeros(1, batches), length(ts)-1) -X = fill(zeros(1, batches), length(ts)) -X[1] = 0.5*(2*rand(rng, nx, batches) .-1) +u = fill(zeros(T, 1, batches), length(ts)-1) +X = fill(zeros(T, 1, batches), length(ts)) +X[1] = (2*rand(rng, T, nx, batches) .- 1) / 2 for t in ts[1:end-1] X[t+1] = fd(X[t],u[t]) @@ -50,122 +57,143 @@ y = gd.(Xt) # Store data for training observer_data = [[ut; yt] for (ut,yt) in zip(u, y)] indx = shuffle(rng, 1:length(observer_data)) -data = zip(Xn[indx], Xt[indx], observer_data[indx]) +data = zip(Xn[indx], Xt[indx], observer_data[indx]) |> dev ##################################################################### # Train a model # Define a REN model for the observer -nv = 200 +nv = 20 nu = size(observer_data[1], 1) ny = nx -model_ps = ContractingRENParams{Float32}(nu, nx, nv, ny; output_map=false, rng) -model = DiffREN(model_ps) +model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) +# model = REN(model_ps) |> dev +model = DiffREN(model_ps) |> dev # Loss function: one step ahead error (average over time) function loss(model, xn, xt, inputs) xpred = model(xt, inputs)[1] - return mean(sum((xn - xpred).^2, dims=1)) + return mean(sum((xn - xpred).^2; dims=1)) end -# Train the model -function train_observer!(model, data; epochs=50, lr=1e-3, min_lr=1e-6) - - opt_state = Flux.setup(Adam(lr), model) - mean_loss = [1e5] - for epoch in 1:epochs - - batch_loss = [] - for (xn, xt, inputs) in data - train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) - Flux.update!(opt_state, model, ∇J[1]) - push!(batch_loss, train_loss) - end - @printf "Epoch: %d, Lr: %.1g, Loss: %.4g\n" epoch lr mean(batch_loss) - - # Drop learning rate if mean loss is stuck or growing - push!(mean_loss, mean(batch_loss)) - if (mean_loss[end] >= mean_loss[end-1]) && !(lr < min_lr || lr ≈ min_lr) - lr = 0.1lr - Flux.adjust!(opt_state, lr) - end - end - return mean_loss -end -tloss = train_observer!(model, data) - - -##################################################################### -# Generate test data - -# Generate test data (a bunch of initial conditions) -batches = 50 -ts_test = 1:Int(20/dt) -u_test = fill(zeros(1, batches), length(ts_test)) -x_test = fill(zeros(nx,batches), length(ts_test)) -x_test[1] = 0.2*(2*rand(rng, nx, batches) .-1) -for t in ts_test[1:end-1] - x_test[t+1] = fd(x_test[t], u_test[t]) -end -observer_inputs = [[u;y] for (u,y) in zip(u_test, gd.(x_test))] - - -####################################################################### -# Simulate observer error +# TODO: Testing with GPU +xn, xt, inputs = data.is[1][1], data.is[2][1], data.is[3][1] +# train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) -# Simulate the model through time -function simulate(model::AbstractREN, x0, u) - recurrent = Flux.Recur(model, x0) - output = recurrent.(u) - return output -end -x0hat = init_states(model, batches) -xhat = simulate(model, x0hat, observer_inputs) - -# Plot results -function plot_results(x, x̂, ts) - - # Observer error - Δx = x .- x̂ - - ts = ts.*dt - _get_vec(x, i) = reduce(vcat, [xt[i:i,:] for xt in x]) - q = _get_vec(x,1) - q̂ = _get_vec(x̂,1) - qd = _get_vec(x,2) - q̂d = _get_vec(x̂,2) - Δq = _get_vec(Δx,1) - Δqd = _get_vec(Δx,2) - - fig = Figure(resolution = (600, 400)) - ga = fig[1,1] = GridLayout() - - ax1 = Axis(ga[1,1], xlabel="Time (s)", ylabel="Position (m)", title="States") - ax2 = Axis(ga[1,2], xlabel="Time (s)", ylabel="Position (m)", title="Observer Error") - ax3 = Axis(ga[2,1], xlabel="Time (s)", ylabel="Velocity (m/s)") - ax4 = Axis(ga[2,2], xlabel="Time (s)", ylabel="Velocity (m/s)") - axs = [ax1, ax2, ax3, ax4] - - for k in axes(q,2) - lines!(ax1, ts, q[:,k], linewidth=0.5, color=:grey) - lines!(ax1, ts, q̂[:,k], linewidth=0.25, color=:red) - lines!(ax2, ts, Δq[:,k], linewidth=0.5, color=:grey) - lines!(ax3, ts, qd[:,k], linewidth=0.5, color=:grey) - lines!(ax3, ts, q̂d[:,k], linewidth=0.25, color=:red) - lines!(ax4, ts, Δqd[:,k], linewidth=0.5, color=:grey) +function test_me() + x0 = model(xt, inputs)[1] + all_good = true + for _ in 1:1000 + xpred = model(xt, inputs)[1] + !(xpred ≈ x0) && (all_good = false) + x0 = xpred end - - qmin, qmax = minimum(minimum.((q,q̂))), maximum(maximum.((q,q̂))) - qdmin, qdmax = minimum(minimum.((qd,q̂d))), maximum(maximum.((qd,q̂d))) - ylims!(ax1, qmin, qmax) - ylims!(ax2, qmin, qmax) - ylims!(ax3, qdmin, qdmax) - ylims!(ax4, qdmin, qdmax) - xlims!.(axs, ts[1], ts[end]) - display(fig) - return fig + return all_good end -fig = plot_results(x_test, xhat, ts_test) -save("../results/ren-obsv/ren_box_obsv.svg", fig) + +println("Evaluates correctly? ", test_me()) + + +# # Train the model +# function train_observer!(model, data; epochs=50, lr=1e-3, min_lr=1e-6) + +# opt_state = Flux.setup(Adam(lr), model) +# mean_loss = [T(1e5)] +# for epoch in 1:epochs + +# batch_loss = [] +# for (xn, xt, inputs) in data +# train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) +# Flux.update!(opt_state, model, ∇J[1]) +# push!(batch_loss, train_loss) +# println(train_loss) +# end +# @printf "Epoch: %d, Lr: %.1g, Loss: %.4g\n" epoch lr mean(batch_loss) + +# # Drop learning rate if mean loss is stuck or growing +# push!(mean_loss, mean(batch_loss)) +# if (mean_loss[end] >= mean_loss[end-1]) && !(lr < min_lr || lr ≈ min_lr) +# lr = 0.1lr +# Flux.adjust!(opt_state, lr) +# end +# end +# return mean_loss +# end +# tloss = train_observer!(model, data) + + +# ##################################################################### +# # Generate test data + +# # Generate test data (a bunch of initial conditions) +# batches = 50 +# ts_test = 1:Int(20/dt) +# u_test = fill(zeros(T, 1, batches), length(ts_test)) +# x_test = fill(zeros(T, nx,batches), length(ts_test)) +# x_test[1] = (2*rand(rng, T, nx, batches) .- 1) / 5 + +# for t in ts_test[1:end-1] +# x_test[t+1] = fd(x_test[t], u_test[t]) +# end +# observer_inputs = [[u;y] for (u,y) in zip(u_test, gd.(x_test))] + + +# ####################################################################### +# # Simulate observer error + +# # Simulate the model through time +# function simulate(model::AbstractREN, x0, u) +# recurrent = Flux.Recur(model, x0) +# output = recurrent.(u) +# return output +# end +# x0hat = init_states(model, batches) +# xhat = simulate(model, x0hat |> dev, observer_inputs |> dev) + +# # Plot results +# function plot_results(x, x̂, ts) + +# # Observer error +# Δx = x .- x̂ + +# ts = ts.*dt +# _get_vec(x, i) = reduce(vcat, [xt[i:i,:] for xt in x]) +# q = _get_vec(x,1) +# q̂ = _get_vec(x̂,1) +# qd = _get_vec(x,2) +# q̂d = _get_vec(x̂,2) +# Δq = _get_vec(Δx,1) +# Δqd = _get_vec(Δx,2) + +# fig = Figure(resolution = (600, 400)) +# ga = fig[1,1] = GridLayout() + +# ax1 = Axis(ga[1,1], xlabel="Time (s)", ylabel="Position (m)", title="States") +# ax2 = Axis(ga[1,2], xlabel="Time (s)", ylabel="Position (m)", title="Observer Error") +# ax3 = Axis(ga[2,1], xlabel="Time (s)", ylabel="Velocity (m/s)") +# ax4 = Axis(ga[2,2], xlabel="Time (s)", ylabel="Velocity (m/s)") +# axs = [ax1, ax2, ax3, ax4] + +# for k in axes(q,2) +# lines!(ax1, ts, q[:,k], linewidth=0.5, color=:grey) +# lines!(ax1, ts, q̂[:,k], linewidth=0.25, color=:red) +# lines!(ax2, ts, Δq[:,k], linewidth=0.5, color=:grey) +# lines!(ax3, ts, qd[:,k], linewidth=0.5, color=:grey) +# lines!(ax3, ts, q̂d[:,k], linewidth=0.25, color=:red) +# lines!(ax4, ts, Δqd[:,k], linewidth=0.5, color=:grey) +# end + +# qmin, qmax = minimum(minimum.((q,q̂))), maximum(maximum.((q,q̂))) +# qdmin, qdmax = minimum(minimum.((qd,q̂d))), maximum(maximum.((qd,q̂d))) +# ylims!(ax1, qmin, qmax) +# ylims!(ax2, qmin, qmax) +# ylims!(ax3, qdmin, qdmax) +# ylims!(ax4, qdmin, qdmax) +# xlims!.(axs, ts[1], ts[end]) +# display(fig) +# return fig +# end +# fig = plot_results(x_test, xhat |> cpu, ts_test) +# save("../results/ren-obsv/ren_box_obsv.svg", fig) From a1808ee52124eba2e0080b0331b9cbafb5351618 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Wed, 16 Aug 2023 23:29:12 +1000 Subject: [PATCH 29/38] Working on GPU observer example (work-in-progress) --- examples/src/ren_obsv_pde.jl | 44 +++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/examples/src/ren_obsv_pde.jl b/examples/src/ren_obsv_pde.jl index d90374d6..da302abc 100644 --- a/examples/src/ren_obsv_pde.jl +++ b/examples/src/ren_obsv_pde.jl @@ -6,6 +6,7 @@ Pkg.activate("..") using BSON using CairoMakie +using CUDA using Flux using Formatting using LinearAlgebra @@ -16,13 +17,14 @@ using Statistics # TODO: Do this with Float32, will be faster # TODO: Would be even better to get it working on the GPU. For later... -dtype = Float64 +T = Float32 +dev = gpu # Problem setup nx = 51 # Number of states n_in = 1 # Number of inputs -L = 10.0 # Size of spatial domain -sigma = 0.1 # Used to construct time step +L = T(10.0) # Size of spatial domain +sigma = T(0.1) # Used to construct time step # Discretise space and time dx = L / (nx - 1) @@ -53,8 +55,8 @@ g(u, d) = [d; u[end ÷ 2:end ÷ 2, :]] # Generate simulated data function get_data(npoints=1000; init=zeros) - X = init(dtype, nx, npoints) - U = init(dtype, n_in, npoints) + X = init(T, nx, npoints) + U = init(T, n_in, npoints) for t in 1:npoints-1 @@ -62,7 +64,7 @@ function get_data(npoints=1000; init=zeros) X[:, t+1] = f(X[:, t], U[:, t]) # Next input bₜ - u_next = U[t] + 0.05f0*randn(dtype) + u_next = U[t] + 0.05f0*randn(T) (u_next > 1) && (u_next = 1) (u_next < 0) && (u_next = 0) U[t + 1] = u_next @@ -71,9 +73,10 @@ function get_data(npoints=1000; init=zeros) end X, U = get_data(100000; init=zeros) -xt = X[:, 1:end - 1] -xn = X[:, 2:end] -y = g(X, U) +xt = X[:, 1:end - 1] |> dev +xn = X[:, 2:end] |> dev +y = g(X, U) |> dev +U = U |> dev # Store for the observer (inputs are inputs to observer) input_data = [U; y][:, 1:end - 1] @@ -81,18 +84,17 @@ batches = 200 data = Flux.Data.DataLoader((xn, xt, input_data), batchsize=batches, shuffle=true) # Constuct a REN -# TODO: Test if we actually need all of this # TODO: Does it matter what ϵ, polar_param, or nl are? nv = 500 nu = size(input_data, 1) ny = nx -model_params = ContractingRENParams{dtype}( +model_params = ContractingRENParams{T}( nu, nx, nv, ny; - nl = tanh, ϵ=0.01, + nl = tanh, ϵ=T(0.01), polar_param = false, output_map = false ) -model = DiffREN(model_params) # (see the documentation) +model = DiffREN(model_params) |> dev # Define a loss function function loss(model, xn, x, u) @@ -142,17 +144,17 @@ end tloss, loss_std = train_observer!(model, data; Epochs=50, lr=1e-3, min_lr=1e-7) bson("../results/ren-obsv/pde_obsv.bson", Dict( - "model" => model, + "model" => model |> cpu, "training_loss" => tloss, "loss_std" => loss_std ) ) # Test observer -T = 2000 +Tmax = 2000 init = (args...) -> 0.5*ones(args...) -x, u = get_data(T, init=init) -y = [g(x[:, t:t], u[t]) for t in 1:T] +x, u = get_data(Tmax, init=init) |> dev +y = [g(x[:, t:t], u[t]) for t in 1:Tmax] batches = 1 observer_inputs = [repeat([ui; yi], outer=(1, batches)) for (ui, yi) in zip(u, y)] @@ -163,7 +165,7 @@ function simulate(model::AbstractREN, x0, u) output = recurrent.(u) return output end -x0 = init_states(model, batches) +x0 = init_states(model, batches) |> dev xhat = simulate(model, x0, observer_inputs) Xhat = reduce(hcat, xhat) @@ -186,9 +188,9 @@ function plot_heatmap(f1, xdata, i) end f1 = Figure(resolution=(500,400)) -plot_heatmap(f1, x, 1) -plot_heatmap(f1, Xhat[:, 1:batches:end], 2) -plot_heatmap(f1, abs.(x - Xhat[:, 1:batches:end]), 3) +plot_heatmap(f1, x |> cpu, 1) +plot_heatmap(f1, Xhat[:, 1:batches:end] |> cpu, 2) +plot_heatmap(f1, abs.(x - Xhat[:, 1:batches:end]) |> cpu, 3) Colorbar(f1[:,2], colorrange=(0,1),colormap=:thermal) display(f1) From be018976cccb5cac6c8ad599969aa6df280f512e Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Thu, 17 Aug 2023 18:12:15 +1000 Subject: [PATCH 30/38] Wrote testing scripts to help debug GPU training --- examples/GPU/debug_ren.jl | 76 ++++++++++++++++++++++++++++++ examples/GPU/failure_outputs.bson | Bin 0 -> 5651 bytes examples/GPU/test_lbdn.jl | 2 +- examples/src/ren_obsv_box.jl | 56 ++++++++++++---------- 4 files changed, 109 insertions(+), 25 deletions(-) create mode 100644 examples/GPU/debug_ren.jl create mode 100644 examples/GPU/failure_outputs.bson diff --git a/examples/GPU/debug_ren.jl b/examples/GPU/debug_ren.jl new file mode 100644 index 00000000..f790bf69 --- /dev/null +++ b/examples/GPU/debug_ren.jl @@ -0,0 +1,76 @@ +# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE + +cd(@__DIR__) +using Pkg +Pkg.activate("..") + +using BSON +using CUDA +using Flux +using Random +using RobustNeuralNetworks +using Statistics + +rng = Xoshiro(0) +T = Float32 +dev = gpu + +# Data +data = BSON.load("failure_outputs.bson") +xn = data["xn"] |> dev +xt = data["xt"] |> dev +inputs = data["inputs"] |> dev + +# Model +nx = 2 +nv = 20 +nu = 2 +ny = nx +model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) +model = DiffREN(model_ps) |> dev + +# Loss function: one step ahead error (average over time) +function loss(model, xn, xt, inputs) + xpred = model(xt, inputs)[1] + return mean(sum((xn - xpred).^2; dims=1)) +end + +# Get gradients +for _ in 1:10 + + train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) + + gs = ∇J[1][:params][:direct] + println(train_loss) + # println(gs) + # println(gs[:X]) + # println(gs[:ρ]) + # println(gs[:ϵ]) +end + +# NOTE: This only produced the NaN result once. +# I wonder what happens if I have everything inside smaller functions...? +# And does it help to push to |> dev on the original data...? + + +# Only X, ρ, and ϵ have NaN gradients. For a contracting REN, these are all that's used prior to calling hmatrix_to_explicit(). In terms of back-propagation, perhaps the gradient of hmatrix_to_explicit is NaN and so then the multiplication is too? + +# TODO: Write a script that traces the gradients back to the first NaN + +# TODO: Also need to sort out the forward pass... this is still not "deterministic" + +# function test_me() +# x0 = model(xt, inputs)[1] +# all_good = true +# for _ in 1:10000 +# xpred = model(xt, inputs)[1] +# if !(xpred ≈ x0) +# all_good = false +# println(xpred .- x0) +# end +# x0 = xpred +# end +# return all_good +# end + +# println("Evaluates correctly? ", test_me()) \ No newline at end of file diff --git a/examples/GPU/failure_outputs.bson b/examples/GPU/failure_outputs.bson new file mode 100644 index 0000000000000000000000000000000000000000..e3b04597e1bd41dca0df03037805521c50c9aca8 GIT binary patch literal 5651 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 ZzvyX3gSA?d&VKyvPmc2XR?b1&e*h|I?kNBO literal 0 HcmV?d00001 diff --git a/examples/GPU/test_lbdn.jl b/examples/GPU/test_lbdn.jl index 2017863e..e024c8b3 100644 --- a/examples/GPU/test_lbdn.jl +++ b/examples/GPU/test_lbdn.jl @@ -44,7 +44,7 @@ end function test_lbdns(device) d = device === cpu ? "CPU" : "GPU" - println("\nTesting RENs on ", d, ":") + println("\nTesting LBDNs on ", d, ":") println("--------------------\n") println("Dense LBDN:\n") diff --git a/examples/src/ren_obsv_box.jl b/examples/src/ren_obsv_box.jl index c70c0912..277489c7 100644 --- a/examples/src/ren_obsv_box.jl +++ b/examples/src/ren_obsv_box.jl @@ -16,10 +16,6 @@ rng = MersenneTwister(0) dev = gpu T = Float32 -# TODO: Currently getting NaNs in gradient -# The loss function does not give consistent values for a given input -# In fact, the REN does not give consistent next states for a given input! -# This is all fine on the CPU, but kills it on the GPU ##################################################################### # Problem setup @@ -37,7 +33,7 @@ fd(x,u) = x + dt*f(x,u) gd(x::Matrix) = x[1:1,:] # Generate training data -dt = T(0.01) # Time-step (s) +dt = T(0.01) # Time-step (s) Tmax = 10 # Simulation horizon ts = 1:Int(Tmax/dt) # Time array indices @@ -68,8 +64,8 @@ nv = 20 nu = size(observer_data[1], 1) ny = nx model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) -# model = REN(model_ps) |> dev model = DiffREN(model_ps) |> dev +# model = REN(model_ps) |> dev # Loss function: one step ahead error (average over time) function loss(model, xn, xt, inputs) @@ -77,27 +73,36 @@ function loss(model, xn, xt, inputs) return mean(sum((xn - xpred).^2; dims=1)) end - # TODO: Testing with GPU xn, xt, inputs = data.is[1][1], data.is[2][1], data.is[3][1] # train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) +∇J = Flux.gradient(loss, model, xn, xt, inputs) + +gs = ∇J[1][:params][:direct] +# println(train_loss) +# println(gs) +println(gs[:X]) +println(gs[:ρ]) +println(gs[:ϵ]) + +# function test_me() +# x0 = model(xt, inputs)[1] +# all_good = true +# for _ in 1:10000 +# xpred = model(xt, inputs)[1] +# if !(xpred ≈ x0) +# all_good = false +# println(xpred .- x0) +# end +# x0 = xpred +# end +# return all_good +# end -function test_me() - x0 = model(xt, inputs)[1] - all_good = true - for _ in 1:1000 - xpred = model(xt, inputs)[1] - !(xpred ≈ x0) && (all_good = false) - x0 = xpred - end - return all_good -end - -println("Evaluates correctly? ", test_me()) - +# println("Evaluates correctly? ", test_me()) -# # Train the model -# function train_observer!(model, data; epochs=50, lr=1e-3, min_lr=1e-6) +# Train the model +# function train_observer!(model, data; epochs=5, lr=1e-4, min_lr=1e-6) # opt_state = Flux.setup(Adam(lr), model) # mean_loss = [T(1e5)] @@ -108,7 +113,10 @@ println("Evaluates correctly? ", test_me()) # train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) # Flux.update!(opt_state, model, ∇J[1]) # push!(batch_loss, train_loss) -# println(train_loss) +# if isnan(train_loss) +# println("NaNs in training loss") +# break +# end # end # @printf "Epoch: %d, Lr: %.1g, Loss: %.4g\n" epoch lr mean(batch_loss) @@ -123,7 +131,7 @@ println("Evaluates correctly? ", test_me()) # end # tloss = train_observer!(model, data) - +println() # ##################################################################### # # Generate test data From 3aefe6bf30589fbdfdbc5bef64ae1f5c648e2160 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 12:07:18 +1000 Subject: [PATCH 31/38] Minor changes --- examples/GPU/debug_ren.jl | 10 +++--- examples/src/ren_obsv_box.jl | 62 +++++++++++++++++------------------- 2 files changed, 35 insertions(+), 37 deletions(-) diff --git a/examples/GPU/debug_ren.jl b/examples/GPU/debug_ren.jl index f790bf69..d0606493 100644 --- a/examples/GPU/debug_ren.jl +++ b/examples/GPU/debug_ren.jl @@ -41,17 +41,19 @@ for _ in 1:10 train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) gs = ∇J[1][:params][:direct] - println(train_loss) + # println(train_loss) # println(gs) # println(gs[:X]) - # println(gs[:ρ]) - # println(gs[:ϵ]) + println(gs[:ρ]) + println(gs[:ϵ]) end -# NOTE: This only produced the NaN result once. +# NOTE: This only produced the NaN result once (now twice) # I wonder what happens if I have everything inside smaller functions...? # And does it help to push to |> dev on the original data...? +# There is a direct correlation between the forward pass evaluating differently and the gradients appearing as NaN in that step. Investigate this more. + # Only X, ρ, and ϵ have NaN gradients. For a contracting REN, these are all that's used prior to calling hmatrix_to_explicit(). In terms of back-propagation, perhaps the gradient of hmatrix_to_explicit is NaN and so then the multiplication is too? diff --git a/examples/src/ren_obsv_box.jl b/examples/src/ren_obsv_box.jl index 277489c7..f21cb37c 100644 --- a/examples/src/ren_obsv_box.jl +++ b/examples/src/ren_obsv_box.jl @@ -34,8 +34,8 @@ gd(x::Matrix) = x[1:1,:] # Generate training data dt = T(0.01) # Time-step (s) -Tmax = 10 # Simulation horizon -ts = 1:Int(Tmax/dt) # Time array indices +Tmax = 0.1 # Simulation horizon +ts = 1:Int(round(Tmax/dt)) # Time array indices batches = 200 u = fill(zeros(T, 1, batches), length(ts)-1) @@ -74,35 +74,27 @@ function loss(model, xn, xt, inputs) end # TODO: Testing with GPU -xn, xt, inputs = data.is[1][1], data.is[2][1], data.is[3][1] -# train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) -∇J = Flux.gradient(loss, model, xn, xt, inputs) - -gs = ∇J[1][:params][:direct] -# println(train_loss) -# println(gs) -println(gs[:X]) -println(gs[:ρ]) -println(gs[:ϵ]) - -# function test_me() -# x0 = model(xt, inputs)[1] -# all_good = true -# for _ in 1:10000 -# xpred = model(xt, inputs)[1] -# if !(xpred ≈ x0) -# all_good = false -# println(xpred .- x0) -# end -# x0 = xpred -# end -# return all_good -# end +xn = Xn[indx[1]] |> gpu +xt = Xt[indx[1]] |> gpu +inputs = observer_data[indx[1]] |> gpu + +f_mod(xt, inputs) = model(xt, inputs)[1] + +function test_me(func, args...) + out = func(args...) + all_good = true + for _ in 1:10000 + out1 = func(args...) + !(out1 ≈ out) && (all_good = false) + out = out1 + end + return all_good +end -# println("Evaluates correctly? ", test_me()) +println("Evaluates correctly? ", test_me(f_mod, xt, inputs)) -# Train the model -# function train_observer!(model, data; epochs=5, lr=1e-4, min_lr=1e-6) +# # Train the model +# function train_observer!(model, data; epochs=1, lr=1e-4, min_lr=1e-6) # opt_state = Flux.setup(Adam(lr), model) # mean_loss = [T(1e5)] @@ -111,15 +103,19 @@ println(gs[:ϵ]) # batch_loss = [] # for (xn, xt, inputs) in data # train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) + +# gs = ∇J[1][:params][:direct] +# println(train_loss) +# println(gs[:ρ]) +# println(gs[:ϵ],"\n") + # Flux.update!(opt_state, model, ∇J[1]) # push!(batch_loss, train_loss) -# if isnan(train_loss) -# println("NaNs in training loss") -# break -# end # end # @printf "Epoch: %d, Lr: %.1g, Loss: %.4g\n" epoch lr mean(batch_loss) +# break + # # Drop learning rate if mean loss is stuck or growing # push!(mean_loss, mean(batch_loss)) # if (mean_loss[end] >= mean_loss[end-1]) && !(lr < min_lr || lr ≈ min_lr) From 6b0f73ec5c64a1e80ab4226f80773d6dfbb8d99f Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 13:18:33 +1000 Subject: [PATCH 32/38] Added another test script for debugging --- examples/GPU/test.jl | 98 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 examples/GPU/test.jl diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl new file mode 100644 index 00000000..ad5c06ad --- /dev/null +++ b/examples/GPU/test.jl @@ -0,0 +1,98 @@ +# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE + +cd(@__DIR__) +using Pkg +Pkg.activate("..") + +using CUDA +using Flux +using Random +using RobustNeuralNetworks + +rng = Xoshiro(0) +dev = gpu +T = Float32 + + +##################################################################### +# Problem setup + +# System parameters +m = 1 # Mass (kg) +k = 5 # Spring constant (N/m) +μ = 0.5 # Viscous damping coefficient (kg/m) +nx = 2 # Number of states + +# Continuous and discrete dynamics and measurements +_visc(v::Matrix) = μ * v .* abs.(v) +f(x::Matrix,u::Matrix) = [x[2:2,:]; (u[1:1,:] - k*x[1:1,:] - _visc(x[2:2,:]))/m] +fd(x,u) = x + dt*f(x,u) +gd(x::Matrix) = x[1:1,:] + +# Generate training data +dt = T(0.01) # Time-step (s) +Tmax = 0.1 # Simulation horizon +ts = 1:Int(round(Tmax/dt)) # Time array indices + +batches = 200 +u = fill(zeros(T, 1, batches), length(ts)-1) +X = fill(zeros(T, 1, batches), length(ts)) +X[1] = (2*rand(rng, T, nx, batches) .- 1) / 2 + +for t in ts[1:end-1] + X[t+1] = fd(X[t],u[t]) +end + +Xt = X[1:end-1] +y = gd.(Xt) + +# Store data for debugging +observer_data = [[ut; yt] for (ut,yt) in zip(u, y)] +indx = shuffle(rng, 1:length(observer_data)) +xt = Xt[indx[1]] |> dev +inputs = observer_data[indx[1]] |> dev + + + +##################################################################### +# Train a model + +# Define a REN model for the observer +nv = 20 +nu = size(observer_data[1], 1) +ny = nx +model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) +model = DiffREN(model_ps) |> dev +# model = REN(model_ps) |> dev + +function test_me(func, args...) + out = func(args...) + all_good = true + for _ in 1:10000 + out1 = func(args...) + !(out1 ≈ out) && (all_good = false) + out = out1 + !all_good && break + end + return all_good +end + + +# f_mod(xt, inputs) = model(xt, inputs)[1] +# println("Evaluates correctly? ", test_me(f_mod, xt, inputs)) + +f2_mod(model) = direct_to_explicit(model.params, true) +println("Evaluates correctly? ", test_me(f2_mod, model)) + + +""" +Some observations: + +- If I run it with REN it seems to work +- If I run it with DiffREN it does not +- When I run it with DiffREN and then REN in the same Julia session, sometimes the second run with REN fails too. +- This is the case even when running test_me() with 100000 iterations. +- I think the bug will therefore be somewhere in the parameter mapping. Go through line-by-line... +""" + +println() \ No newline at end of file From 754d0965a91d235ee58d6d23d887a677705f36c5 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 14:54:40 +1000 Subject: [PATCH 33/38] Added equality checking for ExplicitRENParams --- src/Base/ren_params.jl | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/Base/ren_params.jl b/src/Base/ren_params.jl index a6a73703..4219181b 100644 --- a/src/Base/ren_params.jl +++ b/src/Base/ren_params.jl @@ -300,3 +300,18 @@ function ==(ps1::DirectRENParams, ps2::DirectRENParams) return all(c) end + +function ==(e1::ExplicitRENParams, e2::ExplicitRENParams) + return e1.A == e2.A && + e1.B1 == e2.B1 && + e1.B2 == e2.B2 && + e1.C1 == e2.C1 && + e1.C2 == e2.C2 && + e1.D11 == e2.D11 && + e1.D12 == e2.D12 && + e1.D21 == e2.D21 && + e1.D22 == e2.D22 && + e1.bx == e2.bx && + e1.bv == e2.bv && + e1.by == e2.by +end \ No newline at end of file From cfa467c03fde9cb83e59c963a8644439333de941 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 14:55:20 +1000 Subject: [PATCH 34/38] Minor edits --- src/ParameterTypes/contracting_ren.jl | 2 +- src/Wrappers/REN/ren.jl | 6 +----- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/ParameterTypes/contracting_ren.jl b/src/ParameterTypes/contracting_ren.jl index 0d8ad285..60f81672 100644 --- a/src/ParameterTypes/contracting_ren.jl +++ b/src/ParameterTypes/contracting_ren.jl @@ -149,7 +149,7 @@ end @functor ContractingRENParams trainable(m::ContractingRENParams) = (direct = m.direct, ) -function direct_to_explicit(ps::ContractingRENParams, return_h::Bool=false) +function direct_to_explicit(ps::ContractingRENParams, return_h=false) ϵ = ps.direct.ϵ ρ = ps.direct.ρ diff --git a/src/Wrappers/REN/ren.jl b/src/Wrappers/REN/ren.jl index 2f2db282..9f080331 100644 --- a/src/Wrappers/REN/ren.jl +++ b/src/Wrappers/REN/ren.jl @@ -75,11 +75,7 @@ function (m::AbstractREN)(xt::AbstractVecOrMat, ut::AbstractVecOrMat) return m(xt, ut, m.explicit) end -function (m::AbstractREN{T})( - xt::AbstractVecOrMat, - ut::AbstractVecOrMat, - explicit::ExplicitRENParams{T} -) where T +function (m::AbstractREN)(xt::T, ut::T, explicit::ExplicitRENParams) where T <: AbstractVecOrMat # Allocate bias vectors to avoid error when nv = 0 or nx = 0 bv = _bias(m.nv, explicit.bv) From 52aac15e142bdb61b61fc5f8deb56998acb0a421 Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 15:30:42 +1000 Subject: [PATCH 35/38] Further isolated the error --- examples/GPU/test.jl | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index ad5c06ad..6a714925 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -9,7 +9,7 @@ using Flux using Random using RobustNeuralNetworks -rng = Xoshiro(0) +rng = MersenneTwister(0) dev = gpu T = Float32 @@ -68,21 +68,22 @@ model = DiffREN(model_ps) |> dev function test_me(func, args...) out = func(args...) all_good = true - for _ in 1:10000 + for _ in 1:100000 out1 = func(args...) - !(out1 ≈ out) && (all_good = false) + (out1 != out) && (all_good = false) + !all_good && (println(out .- out1); break) out = out1 - !all_good && break end return all_good end -# f_mod(xt, inputs) = model(xt, inputs)[1] -# println("Evaluates correctly? ", test_me(f_mod, xt, inputs)) +explicit = direct_to_explicit(model.params) #|> dev +b0 = cu(randn(rng, T, model.nv, size(xt,2))) + +f4_mod(b, e) = RobustNeuralNetworks.tril_eq_layer(tanh, e.D11, b) +println("Model call correct? ", test_me(f4_mod, b0, explicit)) -f2_mod(model) = direct_to_explicit(model.params, true) -println("Evaluates correctly? ", test_me(f2_mod, model)) """ @@ -92,7 +93,7 @@ Some observations: - If I run it with DiffREN it does not - When I run it with DiffREN and then REN in the same Julia session, sometimes the second run with REN fails too. - This is the case even when running test_me() with 100000 iterations. -- I think the bug will therefore be somewhere in the parameter mapping. Go through line-by-line... +- The difference seems to be whether or not I send the explicit params directly to the GPU? """ println() \ No newline at end of file From 8dd7ca4bc5689e7ae20693ec3dd1dd46f539540a Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 17:19:29 +1000 Subject: [PATCH 36/38] Tidying up --- examples/GPU/test.jl | 11 +++++++---- src/Base/acyclic_ren_solver.jl | 22 +++++++++++----------- src/Wrappers/REN/ren.jl | 6 +++++- 3 files changed, 23 insertions(+), 16 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index 6a714925..c034bd50 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -34,7 +34,7 @@ dt = T(0.01) # Time-step (s) Tmax = 0.1 # Simulation horizon ts = 1:Int(round(Tmax/dt)) # Time array indices -batches = 200 +batches = 20 u = fill(zeros(T, 1, batches), length(ts)-1) X = fill(zeros(T, 1, batches), length(ts)) X[1] = (2*rand(rng, T, nx, batches) .- 1) / 2 @@ -63,7 +63,6 @@ nu = size(observer_data[1], 1) ny = nx model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) model = DiffREN(model_ps) |> dev -# model = REN(model_ps) |> dev function test_me(func, args...) out = func(args...) @@ -81,8 +80,12 @@ end explicit = direct_to_explicit(model.params) #|> dev b0 = cu(randn(rng, T, model.nv, size(xt,2))) -f4_mod(b, e) = RobustNeuralNetworks.tril_eq_layer(tanh, e.D11, b) -println("Model call correct? ", test_me(f4_mod, b0, explicit)) +function f_mod(b, e) + wt = RobustNeuralNetworks.tril_eq_layer(tanh, e.D11, b) + return wt +end + +println("Model call correct? ", test_me(f_mod, b0, explicit)) diff --git a/src/Base/acyclic_ren_solver.jl b/src/Base/acyclic_ren_solver.jl index e5e40896..4605727f 100644 --- a/src/Base/acyclic_ren_solver.jl +++ b/src/Base/acyclic_ren_solver.jl @@ -53,12 +53,12 @@ function rrule(::typeof(tril_layer_back), σ::F, D11, v, w_eq::AbstractVecOrMat{ y = tril_layer_back(σ, D11, v, w_eq) # Reverse mode - function tril_layer_back_pullback(ȳ) + function tril_layer_back_pullback(Δy) - f̄ = NoTangent() - σ̄ = NoTangent() - D̄11 = NoTangent() - b̄ = NoTangent() + Δf = NoTangent() + Δσ = NoTangent() + ΔD11 = NoTangent() + Δb = NoTangent() # Get gradient of σ(v) wrt v evaluated at v = D₁₁w + b _back(σ, v) = rrule(σ, v)[2] @@ -66,14 +66,14 @@ function rrule(::typeof(tril_layer_back), σ::F, D11, v, w_eq::AbstractVecOrMat{ j = map(b -> b(one(T))[2], backs) # Compute gradient from implicit function theorem - w̄_eq = v - for i in axes(w̄_eq, 2) + Δw_eq = v + for i in axes(Δw_eq, 2) ji = @view j[:, i] - ȳi = @view ȳ[:, i] - w̄_eq[:,i] = (I - (ji .* D11))' \ ȳi + Δyi = @view Δy[:, i] + Δw_eq[:,i] = (I - (ji .* D11))' \ Δyi end - return f̄, σ̄, D̄11, b̄, w̄_eq + return Δf, Δσ, ΔD11, Δb, Δw_eq end - + return y, tril_layer_back_pullback end diff --git a/src/Wrappers/REN/ren.jl b/src/Wrappers/REN/ren.jl index 9f080331..2f2db282 100644 --- a/src/Wrappers/REN/ren.jl +++ b/src/Wrappers/REN/ren.jl @@ -75,7 +75,11 @@ function (m::AbstractREN)(xt::AbstractVecOrMat, ut::AbstractVecOrMat) return m(xt, ut, m.explicit) end -function (m::AbstractREN)(xt::T, ut::T, explicit::ExplicitRENParams) where T <: AbstractVecOrMat +function (m::AbstractREN{T})( + xt::AbstractVecOrMat, + ut::AbstractVecOrMat, + explicit::ExplicitRENParams{T} +) where T # Allocate bias vectors to avoid error when nv = 0 or nx = 0 bv = _bias(m.nv, explicit.bv) From 97ee129bf058871c6b71cf51b4c69ee108c4026d Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 18:15:30 +1000 Subject: [PATCH 37/38] Fixed bug by remove similar() for D11 --- examples/GPU/test.jl | 42 ++++++++++++++++++++++++++++++---- src/Base/acyclic_ren_solver.jl | 3 ++- 2 files changed, 40 insertions(+), 5 deletions(-) diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl index c034bd50..d6667647 100644 --- a/examples/GPU/test.jl +++ b/examples/GPU/test.jl @@ -67,7 +67,7 @@ model = DiffREN(model_ps) |> dev function test_me(func, args...) out = func(args...) all_good = true - for _ in 1:100000 + for _ in 1:10000 out1 = func(args...) (out1 != out) && (all_good = false) !all_good && (println(out .- out1); break) @@ -79,13 +79,47 @@ end explicit = direct_to_explicit(model.params) #|> dev b0 = cu(randn(rng, T, model.nv, size(xt,2))) +b1 = b0 |> cpu -function f_mod(b, e) - wt = RobustNeuralNetworks.tril_eq_layer(tanh, e.D11, b) +function f_mod(b, D11) + # wt = RobustNeuralNetworks.tril_eq_layer(tanh, D11, b) + wt = RobustNeuralNetworks.solve_tril_layer(tanh, D11, b) return wt end -println("Model call correct? ", test_me(f_mod, b0, explicit)) +using LinearAlgebra + +function f1_mod(b, D11) + z_eq = similar(b) + Di_zi = typeof(b)(zeros(Float32, 1, size(b,2))) # Using similar(b, 1, size(b,2)) induces NaN on GPU + for i in axes(b,1) + Di = @view D11[i:i, 1:i - 1] + zi = @view z_eq[1:i-1,:] + bi = @view b[i:i, :] + + mul!(Di_zi, Di, zi) + z_eq[i:i,:] .= σ.(Di_zi .+ bi) + end + return z_eq +end + +println("Model call correct? ", test_me(f1_mod, b0, explicit.D11)) + +f(b) = typeof(b)(zeros(size(b)...)) + +# function solve_tril_layer(σ::F, D11, b) where F +# z_eq = similar(b) +# Di_zi = similar(z_eq, 1, size(b,2)) +# for i in axes(b,1) +# Di = @view D11[i:i, 1:i - 1] +# zi = @view z_eq[1:i-1,:] +# bi = @view b[i:i, :] + +# mul!(Di_zi, Di, zi) +# z_eq[i:i,:] .= σ.(Di_zi .+ bi) +# end +# return z_eq +# end diff --git a/src/Base/acyclic_ren_solver.jl b/src/Base/acyclic_ren_solver.jl index 4605727f..df640c2a 100644 --- a/src/Base/acyclic_ren_solver.jl +++ b/src/Base/acyclic_ren_solver.jl @@ -25,7 +25,8 @@ Solves w = σ.(D₁₁*w .+ b) for lower-triangular D₁₁, where """ function solve_tril_layer(σ::F, D11, b) where F z_eq = similar(b) - Di_zi = similar(z_eq, 1, size(b,2)) + Di_zi = typeof(b)(zeros(Float32, 1, size(b,2))) + # similar(b, 1, size(b,2)) can induce NaN on GPU!!! for i in axes(b,1) Di = @view D11[i:i, 1:i - 1] zi = @view z_eq[1:i-1,:] From ae1f2452390ebd8ffa44104ac566f87d81ff477c Mon Sep 17 00:00:00 2001 From: nic-barbara Date: Fri, 18 Aug 2023 18:35:44 +1000 Subject: [PATCH 38/38] Pruned testing files, fixed observer demo --- examples/GPU/debug_ren.jl | 78 --------- examples/GPU/failure_outputs.bson | Bin 5651 -> 0 bytes examples/GPU/test.jl | 136 ---------------- examples/src/ren_obsv_box.jl | 253 ++++++++++++++---------------- examples/src/ren_obsv_pde.jl | 46 +++--- 5 files changed, 139 insertions(+), 374 deletions(-) delete mode 100644 examples/GPU/debug_ren.jl delete mode 100644 examples/GPU/failure_outputs.bson delete mode 100644 examples/GPU/test.jl diff --git a/examples/GPU/debug_ren.jl b/examples/GPU/debug_ren.jl deleted file mode 100644 index d0606493..00000000 --- a/examples/GPU/debug_ren.jl +++ /dev/null @@ -1,78 +0,0 @@ -# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE - -cd(@__DIR__) -using Pkg -Pkg.activate("..") - -using BSON -using CUDA -using Flux -using Random -using RobustNeuralNetworks -using Statistics - -rng = Xoshiro(0) -T = Float32 -dev = gpu - -# Data -data = BSON.load("failure_outputs.bson") -xn = data["xn"] |> dev -xt = data["xt"] |> dev -inputs = data["inputs"] |> dev - -# Model -nx = 2 -nv = 20 -nu = 2 -ny = nx -model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) -model = DiffREN(model_ps) |> dev - -# Loss function: one step ahead error (average over time) -function loss(model, xn, xt, inputs) - xpred = model(xt, inputs)[1] - return mean(sum((xn - xpred).^2; dims=1)) -end - -# Get gradients -for _ in 1:10 - - train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) - - gs = ∇J[1][:params][:direct] - # println(train_loss) - # println(gs) - # println(gs[:X]) - println(gs[:ρ]) - println(gs[:ϵ]) -end - -# NOTE: This only produced the NaN result once (now twice) -# I wonder what happens if I have everything inside smaller functions...? -# And does it help to push to |> dev on the original data...? - -# There is a direct correlation between the forward pass evaluating differently and the gradients appearing as NaN in that step. Investigate this more. - - -# Only X, ρ, and ϵ have NaN gradients. For a contracting REN, these are all that's used prior to calling hmatrix_to_explicit(). In terms of back-propagation, perhaps the gradient of hmatrix_to_explicit is NaN and so then the multiplication is too? - -# TODO: Write a script that traces the gradients back to the first NaN - -# TODO: Also need to sort out the forward pass... this is still not "deterministic" - -# function test_me() -# x0 = model(xt, inputs)[1] -# all_good = true -# for _ in 1:10000 -# xpred = model(xt, inputs)[1] -# if !(xpred ≈ x0) -# all_good = false -# println(xpred .- x0) -# end -# x0 = xpred -# end -# return all_good -# end - -# println("Evaluates correctly? ", test_me()) \ No newline at end of file diff --git a/examples/GPU/failure_outputs.bson b/examples/GPU/failure_outputs.bson deleted file mode 100644 index e3b04597e1bd41dca0df03037805521c50c9aca8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5651 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 ZzvyX3gSA?d&VKyvPmc2XR?b1&e*h|I?kNBO diff --git a/examples/GPU/test.jl b/examples/GPU/test.jl deleted file mode 100644 index d6667647..00000000 --- a/examples/GPU/test.jl +++ /dev/null @@ -1,136 +0,0 @@ -# This file is a part of RobustNeuralNetworks.jl. License is MIT: https://github.com/acfr/RobustNeuralNetworks.jl/blob/main/LICENSE - -cd(@__DIR__) -using Pkg -Pkg.activate("..") - -using CUDA -using Flux -using Random -using RobustNeuralNetworks - -rng = MersenneTwister(0) -dev = gpu -T = Float32 - - -##################################################################### -# Problem setup - -# System parameters -m = 1 # Mass (kg) -k = 5 # Spring constant (N/m) -μ = 0.5 # Viscous damping coefficient (kg/m) -nx = 2 # Number of states - -# Continuous and discrete dynamics and measurements -_visc(v::Matrix) = μ * v .* abs.(v) -f(x::Matrix,u::Matrix) = [x[2:2,:]; (u[1:1,:] - k*x[1:1,:] - _visc(x[2:2,:]))/m] -fd(x,u) = x + dt*f(x,u) -gd(x::Matrix) = x[1:1,:] - -# Generate training data -dt = T(0.01) # Time-step (s) -Tmax = 0.1 # Simulation horizon -ts = 1:Int(round(Tmax/dt)) # Time array indices - -batches = 20 -u = fill(zeros(T, 1, batches), length(ts)-1) -X = fill(zeros(T, 1, batches), length(ts)) -X[1] = (2*rand(rng, T, nx, batches) .- 1) / 2 - -for t in ts[1:end-1] - X[t+1] = fd(X[t],u[t]) -end - -Xt = X[1:end-1] -y = gd.(Xt) - -# Store data for debugging -observer_data = [[ut; yt] for (ut,yt) in zip(u, y)] -indx = shuffle(rng, 1:length(observer_data)) -xt = Xt[indx[1]] |> dev -inputs = observer_data[indx[1]] |> dev - - - -##################################################################### -# Train a model - -# Define a REN model for the observer -nv = 20 -nu = size(observer_data[1], 1) -ny = nx -model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) -model = DiffREN(model_ps) |> dev - -function test_me(func, args...) - out = func(args...) - all_good = true - for _ in 1:10000 - out1 = func(args...) - (out1 != out) && (all_good = false) - !all_good && (println(out .- out1); break) - out = out1 - end - return all_good -end - - -explicit = direct_to_explicit(model.params) #|> dev -b0 = cu(randn(rng, T, model.nv, size(xt,2))) -b1 = b0 |> cpu - -function f_mod(b, D11) - # wt = RobustNeuralNetworks.tril_eq_layer(tanh, D11, b) - wt = RobustNeuralNetworks.solve_tril_layer(tanh, D11, b) - return wt -end - -using LinearAlgebra - -function f1_mod(b, D11) - z_eq = similar(b) - Di_zi = typeof(b)(zeros(Float32, 1, size(b,2))) # Using similar(b, 1, size(b,2)) induces NaN on GPU - for i in axes(b,1) - Di = @view D11[i:i, 1:i - 1] - zi = @view z_eq[1:i-1,:] - bi = @view b[i:i, :] - - mul!(Di_zi, Di, zi) - z_eq[i:i,:] .= σ.(Di_zi .+ bi) - end - return z_eq -end - -println("Model call correct? ", test_me(f1_mod, b0, explicit.D11)) - -f(b) = typeof(b)(zeros(size(b)...)) - -# function solve_tril_layer(σ::F, D11, b) where F -# z_eq = similar(b) -# Di_zi = similar(z_eq, 1, size(b,2)) -# for i in axes(b,1) -# Di = @view D11[i:i, 1:i - 1] -# zi = @view z_eq[1:i-1,:] -# bi = @view b[i:i, :] - -# mul!(Di_zi, Di, zi) -# z_eq[i:i,:] .= σ.(Di_zi .+ bi) -# end -# return z_eq -# end - - - -""" -Some observations: - -- If I run it with REN it seems to work -- If I run it with DiffREN it does not -- When I run it with DiffREN and then REN in the same Julia session, sometimes the second run with REN fails too. -- This is the case even when running test_me() with 100000 iterations. -- The difference seems to be whether or not I send the explicit params directly to the GPU? -""" - -println() \ No newline at end of file diff --git a/examples/src/ren_obsv_box.jl b/examples/src/ren_obsv_box.jl index f21cb37c..a9b42116 100644 --- a/examples/src/ren_obsv_box.jl +++ b/examples/src/ren_obsv_box.jl @@ -12,9 +12,19 @@ using Random using RobustNeuralNetworks using Statistics +""" +A note for the interested reader: + +- Change `dev = gpu` and `T = Float32` to train the REN observer on an Nvidia GPU with CUDA +- This example is currently not optimised for the GPU, and runs faster on CPU +- It would be easy to re-write it to be much faster on the GPU +- If you feel like doing this, please go ahead and submit a pull request :) + +""" + rng = MersenneTwister(0) -dev = gpu -T = Float32 +dev = cpu +T = Float64 ##################################################################### @@ -27,15 +37,15 @@ k = 5 # Spring constant (N/m) nx = 2 # Number of states # Continuous and discrete dynamics and measurements -_visc(v::Matrix) = μ * v .* abs.(v) -f(x::Matrix,u::Matrix) = [x[2:2,:]; (u[1:1,:] - k*x[1:1,:] - _visc(x[2:2,:]))/m] +_visc(v) = μ * v .* abs.(v) +f(x,u) = [x[2:2,:]; (u[1:1,:] - k*x[1:1,:] - _visc(x[2:2,:]))/m] fd(x,u) = x + dt*f(x,u) -gd(x::Matrix) = x[1:1,:] +gd(x) = x[1:1,:] # Generate training data dt = T(0.01) # Time-step (s) -Tmax = 0.1 # Simulation horizon -ts = 1:Int(round(Tmax/dt)) # Time array indices +Tmax = 10 # Simulation horizon +ts = 1:Int(Tmax/dt) # Time array indices batches = 200 u = fill(zeros(T, 1, batches), length(ts)-1) @@ -53,151 +63,122 @@ y = gd.(Xt) # Store data for training observer_data = [[ut; yt] for (ut,yt) in zip(u, y)] indx = shuffle(rng, 1:length(observer_data)) -data = zip(Xn[indx], Xt[indx], observer_data[indx]) |> dev +data = zip(Xn[indx] |> dev, Xt[indx] |> dev, observer_data[indx]|> dev) ##################################################################### # Train a model # Define a REN model for the observer -nv = 20 +nv = 200 nu = size(observer_data[1], 1) ny = nx -model_ps = ContractingRENParams{T}(nu, nx, nv, ny; output_map=false, rng) +model_ps = ContractingRENParams{Float32}(nu, nx, nv, ny; output_map=false, rng) model = DiffREN(model_ps) |> dev -# model = REN(model_ps) |> dev # Loss function: one step ahead error (average over time) function loss(model, xn, xt, inputs) xpred = model(xt, inputs)[1] - return mean(sum((xn - xpred).^2; dims=1)) + return mean(sum((xn - xpred).^2, dims=1)) +end + +# Train the model +function train_observer!(model, data; epochs=50, lr=1e-3, min_lr=1e-6) + + opt_state = Flux.setup(Adam(lr), model) + mean_loss = [T(1e5)] + for epoch in 1:epochs + + batch_loss = [] + for (xn, xt, inputs) in data + train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) + Flux.update!(opt_state, model, ∇J[1]) + push!(batch_loss, train_loss) + end + @printf "Epoch: %d, Lr: %.1g, Loss: %.4g\n" epoch lr mean(batch_loss) + + # Drop learning rate if mean loss is stuck or growing + push!(mean_loss, mean(batch_loss)) + if (mean_loss[end] >= mean_loss[end-1]) && !(lr < min_lr || lr ≈ min_lr) + lr = 0.1lr + Flux.adjust!(opt_state, lr) + end + end + return mean_loss end +tloss = train_observer!(model, data) -# TODO: Testing with GPU -xn = Xn[indx[1]] |> gpu -xt = Xt[indx[1]] |> gpu -inputs = observer_data[indx[1]] |> gpu -f_mod(xt, inputs) = model(xt, inputs)[1] +##################################################################### +# Generate test data -function test_me(func, args...) - out = func(args...) - all_good = true - for _ in 1:10000 - out1 = func(args...) - !(out1 ≈ out) && (all_good = false) - out = out1 - end - return all_good +# Generate test data (a bunch of initial conditions) +batches = 50 +ts_test = 1:Int(20/dt) +u_test = fill(zeros(1, batches), length(ts_test)) +x_test = fill(zeros(nx,batches), length(ts_test)) +x_test[1] = 0.2*(2*rand(rng, nx, batches) .-1) + +for t in ts_test[1:end-1] + x_test[t+1] = fd(x_test[t], u_test[t]) end +observer_inputs = [[u;y] for (u,y) in zip(u_test, gd.(x_test))] + -println("Evaluates correctly? ", test_me(f_mod, xt, inputs)) - -# # Train the model -# function train_observer!(model, data; epochs=1, lr=1e-4, min_lr=1e-6) - -# opt_state = Flux.setup(Adam(lr), model) -# mean_loss = [T(1e5)] -# for epoch in 1:epochs - -# batch_loss = [] -# for (xn, xt, inputs) in data -# train_loss, ∇J = Flux.withgradient(loss, model, xn, xt, inputs) - -# gs = ∇J[1][:params][:direct] -# println(train_loss) -# println(gs[:ρ]) -# println(gs[:ϵ],"\n") - -# Flux.update!(opt_state, model, ∇J[1]) -# push!(batch_loss, train_loss) -# end -# @printf "Epoch: %d, Lr: %.1g, Loss: %.4g\n" epoch lr mean(batch_loss) - -# break - -# # Drop learning rate if mean loss is stuck or growing -# push!(mean_loss, mean(batch_loss)) -# if (mean_loss[end] >= mean_loss[end-1]) && !(lr < min_lr || lr ≈ min_lr) -# lr = 0.1lr -# Flux.adjust!(opt_state, lr) -# end -# end -# return mean_loss -# end -# tloss = train_observer!(model, data) - -println() -# ##################################################################### -# # Generate test data - -# # Generate test data (a bunch of initial conditions) -# batches = 50 -# ts_test = 1:Int(20/dt) -# u_test = fill(zeros(T, 1, batches), length(ts_test)) -# x_test = fill(zeros(T, nx,batches), length(ts_test)) -# x_test[1] = (2*rand(rng, T, nx, batches) .- 1) / 5 - -# for t in ts_test[1:end-1] -# x_test[t+1] = fd(x_test[t], u_test[t]) -# end -# observer_inputs = [[u;y] for (u,y) in zip(u_test, gd.(x_test))] - - -# ####################################################################### -# # Simulate observer error - -# # Simulate the model through time -# function simulate(model::AbstractREN, x0, u) -# recurrent = Flux.Recur(model, x0) -# output = recurrent.(u) -# return output -# end -# x0hat = init_states(model, batches) -# xhat = simulate(model, x0hat |> dev, observer_inputs |> dev) - -# # Plot results -# function plot_results(x, x̂, ts) - -# # Observer error -# Δx = x .- x̂ - -# ts = ts.*dt -# _get_vec(x, i) = reduce(vcat, [xt[i:i,:] for xt in x]) -# q = _get_vec(x,1) -# q̂ = _get_vec(x̂,1) -# qd = _get_vec(x,2) -# q̂d = _get_vec(x̂,2) -# Δq = _get_vec(Δx,1) -# Δqd = _get_vec(Δx,2) - -# fig = Figure(resolution = (600, 400)) -# ga = fig[1,1] = GridLayout() - -# ax1 = Axis(ga[1,1], xlabel="Time (s)", ylabel="Position (m)", title="States") -# ax2 = Axis(ga[1,2], xlabel="Time (s)", ylabel="Position (m)", title="Observer Error") -# ax3 = Axis(ga[2,1], xlabel="Time (s)", ylabel="Velocity (m/s)") -# ax4 = Axis(ga[2,2], xlabel="Time (s)", ylabel="Velocity (m/s)") -# axs = [ax1, ax2, ax3, ax4] - -# for k in axes(q,2) -# lines!(ax1, ts, q[:,k], linewidth=0.5, color=:grey) -# lines!(ax1, ts, q̂[:,k], linewidth=0.25, color=:red) -# lines!(ax2, ts, Δq[:,k], linewidth=0.5, color=:grey) -# lines!(ax3, ts, qd[:,k], linewidth=0.5, color=:grey) -# lines!(ax3, ts, q̂d[:,k], linewidth=0.25, color=:red) -# lines!(ax4, ts, Δqd[:,k], linewidth=0.5, color=:grey) -# end - -# qmin, qmax = minimum(minimum.((q,q̂))), maximum(maximum.((q,q̂))) -# qdmin, qdmax = minimum(minimum.((qd,q̂d))), maximum(maximum.((qd,q̂d))) -# ylims!(ax1, qmin, qmax) -# ylims!(ax2, qmin, qmax) -# ylims!(ax3, qdmin, qdmax) -# ylims!(ax4, qdmin, qdmax) -# xlims!.(axs, ts[1], ts[end]) -# display(fig) -# return fig -# end -# fig = plot_results(x_test, xhat |> cpu, ts_test) -# save("../results/ren-obsv/ren_box_obsv.svg", fig) +####################################################################### +# Simulate observer error + +# Simulate the model through time +function simulate(model::AbstractREN, x0, u) + recurrent = Flux.Recur(model, x0) + output = recurrent.(u) + return output +end +x0hat = init_states(model, batches) +xhat = simulate(model, x0hat |> dev, observer_inputs |> dev) + +# Plot results +function plot_results(x, x̂, ts) + + # Observer error + Δx = x .- x̂ + + ts = ts.*dt + _get_vec(x, i) = reduce(vcat, [xt[i:i,:] for xt in x]) + q = _get_vec(x,1) + q̂ = _get_vec(x̂,1) + qd = _get_vec(x,2) + q̂d = _get_vec(x̂,2) + Δq = _get_vec(Δx,1) + Δqd = _get_vec(Δx,2) + + fig = Figure(resolution = (600, 400)) + ga = fig[1,1] = GridLayout() + + ax1 = Axis(ga[1,1], xlabel="Time (s)", ylabel="Position (m)", title="States") + ax2 = Axis(ga[1,2], xlabel="Time (s)", ylabel="Position (m)", title="Observer Error") + ax3 = Axis(ga[2,1], xlabel="Time (s)", ylabel="Velocity (m/s)") + ax4 = Axis(ga[2,2], xlabel="Time (s)", ylabel="Velocity (m/s)") + axs = [ax1, ax2, ax3, ax4] + + for k in axes(q,2) + lines!(ax1, ts, q[:,k], linewidth=0.5, color=:grey) + lines!(ax1, ts, q̂[:,k], linewidth=0.25, color=:red) + lines!(ax2, ts, Δq[:,k], linewidth=0.5, color=:grey) + lines!(ax3, ts, qd[:,k], linewidth=0.5, color=:grey) + lines!(ax3, ts, q̂d[:,k], linewidth=0.25, color=:red) + lines!(ax4, ts, Δqd[:,k], linewidth=0.5, color=:grey) + end + + qmin, qmax = minimum(minimum.((q,q̂))), maximum(maximum.((q,q̂))) + qdmin, qdmax = minimum(minimum.((qd,q̂d))), maximum(maximum.((qd,q̂d))) + ylims!(ax1, qmin, qmax) + ylims!(ax2, qmin, qmax) + ylims!(ax3, qdmin, qdmax) + ylims!(ax4, qdmin, qdmax) + xlims!.(axs, ts[1], ts[end]) + display(fig) + return fig +end +fig = plot_results(x_test, xhat |> cpu, ts_test) +save("../results/ren-obsv/ren_box_obsv.svg", fig) diff --git a/examples/src/ren_obsv_pde.jl b/examples/src/ren_obsv_pde.jl index da302abc..1e138938 100644 --- a/examples/src/ren_obsv_pde.jl +++ b/examples/src/ren_obsv_pde.jl @@ -6,7 +6,6 @@ Pkg.activate("..") using BSON using CairoMakie -using CUDA using Flux using Formatting using LinearAlgebra @@ -16,15 +15,14 @@ using Statistics # TODO: Do this with Float32, will be faster -# TODO: Would be even better to get it working on the GPU. For later... -T = Float32 -dev = gpu +# TODO: Would be even better to get it working on the GPU. Do this later +dtype = Float64 # Problem setup nx = 51 # Number of states n_in = 1 # Number of inputs -L = T(10.0) # Size of spatial domain -sigma = T(0.1) # Used to construct time step +L = 10.0 # Size of spatial domain +sigma = 0.1 # Used to construct time step # Discretise space and time dx = L / (nx - 1) @@ -55,8 +53,8 @@ g(u, d) = [d; u[end ÷ 2:end ÷ 2, :]] # Generate simulated data function get_data(npoints=1000; init=zeros) - X = init(T, nx, npoints) - U = init(T, n_in, npoints) + X = init(dtype, nx, npoints) + U = init(dtype, n_in, npoints) for t in 1:npoints-1 @@ -64,7 +62,7 @@ function get_data(npoints=1000; init=zeros) X[:, t+1] = f(X[:, t], U[:, t]) # Next input bₜ - u_next = U[t] + 0.05f0*randn(T) + u_next = U[t] + 0.05f0*randn(dtype) (u_next > 1) && (u_next = 1) (u_next < 0) && (u_next = 0) U[t + 1] = u_next @@ -73,10 +71,9 @@ function get_data(npoints=1000; init=zeros) end X, U = get_data(100000; init=zeros) -xt = X[:, 1:end - 1] |> dev -xn = X[:, 2:end] |> dev -y = g(X, U) |> dev -U = U |> dev +xt = X[:, 1:end - 1] +xn = X[:, 2:end] +y = g(X, U) # Store for the observer (inputs are inputs to observer) input_data = [U; y][:, 1:end - 1] @@ -84,17 +81,18 @@ batches = 200 data = Flux.Data.DataLoader((xn, xt, input_data), batchsize=batches, shuffle=true) # Constuct a REN +# TODO: Test if we actually need all of this # TODO: Does it matter what ϵ, polar_param, or nl are? nv = 500 nu = size(input_data, 1) ny = nx -model_params = ContractingRENParams{T}( +model_params = ContractingRENParams{dtype}( nu, nx, nv, ny; - nl = tanh, ϵ=T(0.01), + nl = tanh, ϵ=0.01, polar_param = false, output_map = false ) -model = DiffREN(model_params) |> dev +model = DiffREN(model_params) # (see the documentation) # Define a loss function function loss(model, xn, x, u) @@ -144,17 +142,17 @@ end tloss, loss_std = train_observer!(model, data; Epochs=50, lr=1e-3, min_lr=1e-7) bson("../results/ren-obsv/pde_obsv.bson", Dict( - "model" => model |> cpu, + "model" => model, "training_loss" => tloss, "loss_std" => loss_std ) ) # Test observer -Tmax = 2000 +T = 2000 init = (args...) -> 0.5*ones(args...) -x, u = get_data(Tmax, init=init) |> dev -y = [g(x[:, t:t], u[t]) for t in 1:Tmax] +x, u = get_data(T, init=init) +y = [g(x[:, t:t], u[t]) for t in 1:T] batches = 1 observer_inputs = [repeat([ui; yi], outer=(1, batches)) for (ui, yi) in zip(u, y)] @@ -165,7 +163,7 @@ function simulate(model::AbstractREN, x0, u) output = recurrent.(u) return output end -x0 = init_states(model, batches) |> dev +x0 = init_states(model, batches) xhat = simulate(model, x0, observer_inputs) Xhat = reduce(hcat, xhat) @@ -188,9 +186,9 @@ function plot_heatmap(f1, xdata, i) end f1 = Figure(resolution=(500,400)) -plot_heatmap(f1, x |> cpu, 1) -plot_heatmap(f1, Xhat[:, 1:batches:end] |> cpu, 2) -plot_heatmap(f1, abs.(x - Xhat[:, 1:batches:end]) |> cpu, 3) +plot_heatmap(f1, x, 1) +plot_heatmap(f1, Xhat[:, 1:batches:end], 2) +plot_heatmap(f1, abs.(x - Xhat[:, 1:batches:end]), 3) Colorbar(f1[:,2], colorrange=(0,1),colormap=:thermal) display(f1)