From 1125a33e9b13a8898af1382a0f6cef8c0dc4f8f4 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Thu, 15 Sep 2022 08:58:18 +0200 Subject: [PATCH 01/26] Change default meta spec from `Any` to `Nothing` --- src/rule.jl | 4 ++-- test/test_rule.jl | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/rule.jl b/src/rule.jl index 5515460aa..b9b5db343 100644 --- a/src/rule.jl +++ b/src/rule.jl @@ -264,7 +264,7 @@ macro rule(fform, lambda) fuppertype = MacroHelpers.upper_type(fformtype) on_type, on_index, on_index_init = rule_macro_parse_on_tag(on) whereargs = whereargs === nothing ? [] : whereargs - metatype = metatype === nothing ? :Any : metatype + metatype = metatype === nothing ? :Nothing : metatype options = map(options) do option @capture(option, name_ = value_) || error("Error in macro. Option specification '$(option)' is incorrect")x @@ -582,7 +582,7 @@ macro marginalrule(fform, lambda) fuppertype = MacroHelpers.upper_type(fformtype) on_type, on_index, on_index_init = rule_macro_parse_on_tag(on) whereargs = whereargs === nothing ? [] : whereargs - metatype = metatype === nothing ? :Any : metatype + metatype = metatype === nothing ? :Nothing : metatype inputs = map(inputs) do input @capture(input, iname_::itype_) || error("Error in macro. Input $(input) is incorrect") diff --git a/test/test_rule.jl b/test/test_rule.jl index fd5d0a418..6ecdb9abe 100644 --- a/test/test_rule.jl +++ b/test/test_rule.jl @@ -333,6 +333,25 @@ import ReactiveMP: rule_macro_parse_on_tag, rule_macro_parse_fn_args, call_rule_ @test occursin("Possible fix, define", output) end end + + @testset "Check that default meta is `nothing`" begin + struct DummyNode end + struct DummyNodeMeta end + + @rule DummyNode(:out, Marginalisation) (m_x::NormalMeanPrecision, m_y::NormalMeanPrecision) = 1 + @rule DummyNode(:out, Marginalisation) (m_x::NormalMeanPrecision, m_y::NormalMeanPrecision, meta::Int) = meta + @rule DummyNode(:out, Marginalisation) (q_x::NormalMeanPrecision, q_y::NormalMeanPrecision) = 3 + + @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision))) === 1 + @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision), meta = nothing)) === 1 + @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision), meta = 2)) === 2 + @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision), meta = 3)) === 3 + + @test (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision))) === 3 + @test (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), meta = nothing)) === 3 + @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), meta = 2)) + @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), meta = 3)) + end end end From 952c22be90a0f0bdde9fd5114c2b27a3cef3cf69 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Thu, 15 Sep 2022 09:08:07 +0200 Subject: [PATCH 02/26] style: make format --- test/test_rule.jl | 56 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 46 insertions(+), 10 deletions(-) diff --git a/test/test_rule.jl b/test/test_rule.jl index 6ecdb9abe..5fbbd14ce 100644 --- a/test/test_rule.jl +++ b/test/test_rule.jl @@ -334,7 +334,7 @@ import ReactiveMP: rule_macro_parse_on_tag, rule_macro_parse_fn_args, call_rule_ end end - @testset "Check that default meta is `nothing`" begin + @testset "Check that default meta is `nothing`" begin struct DummyNode end struct DummyNodeMeta end @@ -342,15 +342,51 @@ import ReactiveMP: rule_macro_parse_on_tag, rule_macro_parse_fn_args, call_rule_ @rule DummyNode(:out, Marginalisation) (m_x::NormalMeanPrecision, m_y::NormalMeanPrecision, meta::Int) = meta @rule DummyNode(:out, Marginalisation) (q_x::NormalMeanPrecision, q_y::NormalMeanPrecision) = 3 - @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision))) === 1 - @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision), meta = nothing)) === 1 - @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision), meta = 2)) === 2 - @test (@call_rule DummyNode(:out, Marginalisation) (m_x = vague(NormalMeanPrecision), m_y = vague(NormalMeanPrecision), meta = 3)) === 3 - - @test (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision))) === 3 - @test (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), meta = nothing)) === 3 - @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), meta = 2)) - @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) (q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), meta = 3)) + @test (@call_rule DummyNode(:out, Marginalisation) ( + m_x = vague(NormalMeanPrecision), + m_y = vague(NormalMeanPrecision) + )) === 1 + + @test (@call_rule DummyNode(:out, Marginalisation) ( + m_x = vague(NormalMeanPrecision), + m_y = vague(NormalMeanPrecision), + meta = nothing + )) === 1 + + @test (@call_rule DummyNode(:out, Marginalisation) ( + m_x = vague(NormalMeanPrecision), + m_y = vague(NormalMeanPrecision), + meta = 2 + )) === 2 + + @test (@call_rule DummyNode(:out, Marginalisation) ( + m_x = vague(NormalMeanPrecision), + m_y = vague(NormalMeanPrecision), + meta = 3 + )) === 3 + + @test (@call_rule DummyNode(:out, Marginalisation) ( + q_x = vague(NormalMeanPrecision), + q_y = vague(NormalMeanPrecision) + )) === 3 + + @test (@call_rule DummyNode(:out, Marginalisation) ( + q_x = vague(NormalMeanPrecision), + q_y = vague(NormalMeanPrecision), + meta = nothing + )) === 3 + + @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) ( + q_x = vague(NormalMeanPrecision), + q_y = vague(NormalMeanPrecision), + meta = 2 + )) + + @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) ( + q_x = vague(NormalMeanPrecision), + q_y = vague(NormalMeanPrecision), + meta = 3 + )) end end From 471f70686dba79adce1cd41886717555be8176c0 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Thu, 15 Sep 2022 09:10:11 +0200 Subject: [PATCH 03/26] Update test_rule.jl --- test/test_rule.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_rule.jl b/test/test_rule.jl index 5fbbd14ce..3ebe49b4b 100644 --- a/test/test_rule.jl +++ b/test/test_rule.jl @@ -381,7 +381,7 @@ import ReactiveMP: rule_macro_parse_on_tag, rule_macro_parse_fn_args, call_rule_ q_y = vague(NormalMeanPrecision), meta = 2 )) - + @test_throws ReactiveMP.RuleMethodError (@call_rule DummyNode(:out, Marginalisation) ( q_x = vague(NormalMeanPrecision), q_y = vague(NormalMeanPrecision), From ecaca3861ca231f4dbfca3cfb7a83f59870275f9 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Fri, 16 Sep 2022 10:20:25 +0200 Subject: [PATCH 04/26] Fix meta spec in various rules --- src/algebra/correction.jl | 1 + src/rules/and/in2.jl | 2 +- src/rules/gcv/marginals.jl | 2 +- src/rules/gcv/x.jl | 4 ++-- src/rules/gcv/y.jl | 4 ++-- src/rules/multiplication/A.jl | 14 +++++++------- src/rules/multiplication/in.jl | 14 +++++++------- src/rules/multiplication/marginals.jl | 4 ++-- src/rules/multiplication/out.jl | 19 ++++++++++--------- src/rules/probit/in.jl | 10 +++++----- src/rules/probit/out.jl | 6 +++--- test/models/test_hgf.jl | 6 +++--- 12 files changed, 44 insertions(+), 42 deletions(-) diff --git a/src/algebra/correction.jl b/src/algebra/correction.jl index f5f025e69..bf3b272fd 100644 --- a/src/algebra/correction.jl +++ b/src/algebra/correction.jl @@ -26,6 +26,7 @@ struct NoCorrection <: AbstractCorrection end correction!(::NoCorrection, value::Real) = value correction!(::NoCorrection, matrix::AbstractMatrix) = matrix +correction!(::Nothing, something) = correction!(NoCorrection(), something) """ TinyCorrection diff --git a/src/rules/and/in2.jl b/src/rules/and/in2.jl index b675e3b89..38206e32a 100644 --- a/src/rules/and/in2.jl +++ b/src/rules/and/in2.jl @@ -1,3 +1,3 @@ -@rule AND(:in2, Marginalisation) (m_out::Bernoulli, m_in1::Bernoulli, meta::Any) = begin +@rule AND(:in2, Marginalisation) (m_out::Bernoulli, m_in1::Bernoulli) = begin return @call_rule AND(:in1, Marginalisation) (m_out = m_out, m_in2 = m_in1, meta = meta) end diff --git a/src/rules/gcv/marginals.jl b/src/rules/gcv/marginals.jl index 3b505b5db..e62541de3 100644 --- a/src/rules/gcv/marginals.jl +++ b/src/rules/gcv/marginals.jl @@ -1,5 +1,5 @@ -@marginalrule GCV(:y_x) (m_y::UniNormalOrExpLinQuad, m_x::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any) = begin +@marginalrule GCV(:y_x) (m_y::UniNormalOrExpLinQuad, m_x::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin y_mean, y_precision = mean_precision(m_y) x_mean, x_precision = mean_precision(m_x) diff --git a/src/rules/gcv/x.jl b/src/rules/gcv/x.jl index da7b6c69c..72201ac28 100644 --- a/src/rules/gcv/x.jl +++ b/src/rules/gcv/x.jl @@ -1,6 +1,6 @@ export rule -@rule GCV(:x, Marginalisation) (m_y::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any) = begin +@rule GCV(:x, Marginalisation) (m_y::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin y_mean, y_var = mean_var(m_y) z_mean, z_var = mean_var(q_z) κ_mean, κ_var = mean_var(q_κ) @@ -13,7 +13,7 @@ export rule return NormalMeanVariance(y_mean, y_var + inv(A * B)) end -@rule GCV(:x, Marginalisation) (q_y::Any, q_z::Any, q_κ::Any, q_ω::Any) = begin +@rule GCV(:x, Marginalisation) (q_y::Any, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin y_mean = mean(q_y) z_mean, z_var = mean_var(q_z) κ_mean, κ_var = mean_var(q_κ) diff --git a/src/rules/gcv/y.jl b/src/rules/gcv/y.jl index 5f40a31f8..f4124d815 100644 --- a/src/rules/gcv/y.jl +++ b/src/rules/gcv/y.jl @@ -1,6 +1,6 @@ export rule -@rule GCV(:y, Marginalisation) (m_x::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any) = begin +@rule GCV(:y, Marginalisation) (m_x::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin x_mean, x_var = mean_var(m_x) z_mean, z_var = mean_var(q_z) κ_mean, κ_var = mean_var(q_κ) @@ -13,7 +13,7 @@ export rule return NormalMeanVariance(x_mean, x_var + inv(A * B)) end -@rule GCV(:y, Marginalisation) (q_x::Any, q_z::Any, q_κ::Any, q_ω::Any) = begin +@rule GCV(:y, Marginalisation) (q_x::Any, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin x_mean = mean(q_x) z_mean, z_var = mean_var(q_z) κ_mean, κ_var = mean_var(q_κ) diff --git a/src/rules/multiplication/A.jl b/src/rules/multiplication/A.jl index f8115657d..de86c6d35 100644 --- a/src/rules/multiplication/A.jl +++ b/src/rules/multiplication/A.jl @@ -1,7 +1,7 @@ -@rule typeof(*)(:A, Marginalisation) (m_out::PointMass, m_in::PointMass) = PointMass(mean(m_in) \ mean(m_out)) +@rule typeof(*)(:A, Marginalisation) (m_out::PointMass, m_in::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = PointMass(mean(m_in) \ mean(m_out)) -@rule typeof(*)(:A, Marginalisation) (m_out::GammaDistributionsFamily, m_in::PointMass{<:Real}) = begin +@rule typeof(*)(:A, Marginalisation) (m_out::GammaDistributionsFamily, m_in::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin return GammaShapeRate(shape(m_out), rate(m_out) * mean(m_in)) end @@ -9,7 +9,7 @@ end @rule typeof(*)(:A, Marginalisation) ( m_out::MultivariateNormalDistributionsFamily, m_in::PointMass{<:AbstractMatrix}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_in) ξ_out, W_out = weightedmean_precision(m_out) @@ -22,7 +22,7 @@ end @rule typeof(*)(:A, Marginalisation) ( m_out::MultivariateNormalDistributionsFamily, m_in::PointMass{<:AbstractVector}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_in) ξ_out, W_out = weightedmean_precision(m_out) @@ -34,7 +34,7 @@ end @rule typeof(*)(:A, Marginalisation) ( m_out::F, m_in::PointMass{<:Real}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) where {F <: NormalDistributionsFamily} = begin A = mean(m_in) ξ_out, W_out = weightedmean_precision(m_out) @@ -46,7 +46,7 @@ end @rule typeof(*)(:A, Marginalisation) ( m_out::MvNormalMeanCovariance, m_in::PointMass{<:AbstractMatrix}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_in) μ_out, Σ_out = mean_cov(m_out) @@ -61,7 +61,7 @@ end @rule typeof(*)(:A, Marginalisation) ( m_out::MvNormalMeanCovariance, m_in::PointMass{<:AbstractVector}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_in) μ_out, Σ_out = mean_cov(m_out) diff --git a/src/rules/multiplication/in.jl b/src/rules/multiplication/in.jl index 23f8734a2..2fa29d7cd 100644 --- a/src/rules/multiplication/in.jl +++ b/src/rules/multiplication/in.jl @@ -1,7 +1,7 @@ -@rule typeof(*)(:in, Marginalisation) (m_out::PointMass, m_A::PointMass) = PointMass(mean(m_A) \ mean(m_out)) +@rule typeof(*)(:in, Marginalisation) (m_out::PointMass, m_A::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = PointMass(mean(m_A) \ mean(m_out)) -@rule typeof(*)(:in, Marginalisation) (m_out::GammaDistributionsFamily, m_A::PointMass{<:Real}) = begin +@rule typeof(*)(:in, Marginalisation) (m_out::GammaDistributionsFamily, m_A::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin return GammaShapeRate(shape(m_out), rate(m_out) * mean(m_A)) end @@ -9,7 +9,7 @@ end @rule typeof(*)(:in, Marginalisation) ( m_out::MultivariateNormalDistributionsFamily, m_A::PointMass{<:AbstractMatrix}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_A) ξ_out, W_out = weightedmean_precision(m_out) @@ -22,7 +22,7 @@ end @rule typeof(*)(:in, Marginalisation) ( m_out::MultivariateNormalDistributionsFamily, m_A::PointMass{<:AbstractVector}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_A) ξ_out, W_out = weightedmean_precision(m_out) @@ -34,7 +34,7 @@ end @rule typeof(*)(:in, Marginalisation) ( m_out::F, m_A::PointMass{<:Real}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) where {F <: NormalDistributionsFamily} = begin A = mean(m_A) ξ_out, W_out = weightedmean_precision(m_out) @@ -46,7 +46,7 @@ end @rule typeof(*)(:in, Marginalisation) ( m_out::MvNormalMeanCovariance, m_A::PointMass{<:AbstractMatrix}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_A) μ_out, Σ_out = mean_cov(m_out) @@ -61,7 +61,7 @@ end @rule typeof(*)(:in, Marginalisation) ( m_out::MvNormalMeanCovariance, m_A::PointMass{<:AbstractVector}, - meta::AbstractCorrection + meta::Union{<:AbstractCorrection, Nothing} ) = begin A = mean(m_A) μ_out, Σ_out = mean_cov(m_out) diff --git a/src/rules/multiplication/marginals.jl b/src/rules/multiplication/marginals.jl index 02d4e2e6c..63dec1a32 100644 --- a/src/rules/multiplication/marginals.jl +++ b/src/rules/multiplication/marginals.jl @@ -3,7 +3,7 @@ m_out::NormalDistributionsFamily, m_A::PointMass, m_in::NormalDistributionsFamily, - meta::Any + meta::Union{<:AbstractCorrection, Nothing} ) = begin b_in = @call_rule typeof(*)(:in, Marginalisation) (m_out = m_out, m_A = m_A, meta = meta) q_in = prod(ProdAnalytical(), b_in, m_in) @@ -17,7 +17,7 @@ end m_out::UnivariateNormalDistributionsFamily, m_A::UnivariateNormalDistributionsFamily, m_in::PointMass{<:Real}, - meta::Any + meta::Union{<:AbstractCorrection, Nothing} ) = begin return @call_marginalrule typeof(*)(:A_in) (m_out = m_out, m_A = m_in, m_in = m_A, meta = meta) end diff --git a/src/rules/multiplication/out.jl b/src/rules/multiplication/out.jl index 8da6a9595..f670e3c54 100644 --- a/src/rules/multiplication/out.jl +++ b/src/rules/multiplication/out.jl @@ -1,17 +1,18 @@ -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass, m_in::PointMass) = PointMass(mean(m_A) * mean(m_in)) +@rule typeof(*)(:out, Marginalisation) (m_A::PointMass, m_in::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = PointMass(mean(m_A) * mean(m_in)) -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:Real}, m_in::GammaDistributionsFamily) = begin +@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:Real}, m_in::GammaDistributionsFamily, meta::Union{<:AbstractCorrection, Nothing}) = begin return GammaShapeRate(shape(m_in), rate(m_in) / mean(m_A)) end -@rule typeof(*)(:out, Marginalisation) (m_A::GammaDistributionsFamily, m_in::PointMass{<:Real}, meta::Any) = begin +@rule typeof(*)(:out, Marginalisation) (m_A::GammaDistributionsFamily, m_in::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin return @call_rule typeof(*)(:out, Marginalisation) (m_A = m_in, m_in = m_A, meta = meta) # symmetric rule end @rule typeof(*)(:out, Marginalisation) ( m_A::PointMass{<:AbstractMatrix}, - m_in::F + m_in::F, + meta::Union{<:AbstractCorrection, Nothing} ) where {F <: NormalDistributionsFamily} = begin A = mean(m_A) μ_in, Σ_in = mean_cov(m_in) @@ -21,7 +22,7 @@ end @rule typeof(*)(:out, Marginalisation) ( m_A::F, m_in::PointMass{<:AbstractMatrix}, - meta::Any + meta::Union{<:AbstractCorrection, Nothing} ) where {F <: NormalDistributionsFamily} = begin return @call_rule typeof(*)(:out, Marginalisation) (m_A = m_in, m_in = m_A, meta = meta) # symmetric rule end @@ -38,7 +39,7 @@ end # v out ~ Multivariate -> R^n # -->[x]--> # in1 ~ Univariate -> R^1 -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:AbstractVector}, m_in::UnivariateNormalDistributionsFamily) = +@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:AbstractVector}, m_in::UnivariateNormalDistributionsFamily, meta::Union{<:AbstractCorrection, Nothing}) = begin a = mean(m_A) @@ -55,7 +56,7 @@ end @rule typeof(*)(:out, Marginalisation) ( m_A::UnivariateNormalDistributionsFamily, m_in::PointMass{<:AbstractVector}, - meta::Any + meta::Union{<:AbstractCorrection, Nothing} ) = begin return @call_rule typeof(*)(:out, Marginalisation) (m_A = m_in, m_in = m_A, meta = meta) # symmetric rule end @@ -63,14 +64,14 @@ end #------------------------ # Real * UnivariateNormalDistributions #------------------------ -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:Real}, m_in::UnivariateNormalDistributionsFamily) = begin +@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:Real}, m_in::UnivariateNormalDistributionsFamily, meta::Union{<:AbstractCorrection, Nothing}) = begin a = mean(m_A) μ_in, v_in = mean_var(m_in) return NormalMeanVariance(a * μ_in, a^2 * v_in) end -@rule typeof(*)(:out, Marginalisation) (m_A::UnivariateNormalDistributionsFamily, m_in::PointMass{<:Real}, meta::Any) = +@rule typeof(*)(:out, Marginalisation) (m_A::UnivariateNormalDistributionsFamily, m_in::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin return @call_rule typeof(*)(:out, Marginalisation) (m_A = m_in, m_in = m_A, meta = meta) # symmetric rule end diff --git a/src/rules/probit/in.jl b/src/rules/probit/in.jl index a0dfd092f..75da8e62c 100644 --- a/src/rules/probit/in.jl +++ b/src/rules/probit/in.jl @@ -1,8 +1,8 @@ using StatsFuns: normcdf, normccdf, normlogcdf, normlogccdf, normlogpdf, normpdf, logsumexp -@rule Probit(:in, Marginalisation) (q_out::PointMass,) = @call_rule Probit(:in, Marginalisation) (m_out = q_out,) +@rule Probit(:in, Marginalisation) (q_out::PointMass, meta::Union{ProbitMeta, Nothing}) = @call_rule Probit(:in, Marginalisation) (m_out = q_out,) -@rule Probit(:in, Marginalisation) (m_out::Union{PointMass, Bernoulli},) = begin +@rule Probit(:in, Marginalisation) (m_out::Union{PointMass, Bernoulli}, meta::Union{ProbitMeta, Nothing}) = begin # extract parameters p = mean(m_out) @@ -14,10 +14,10 @@ using StatsFuns: normcdf, normccdf, normlogcdf, normlogccdf, normlogpdf, normpdf return ContinuousUnivariateLogPdf(f) end -@rule Probit(:in, MomentMatching) (q_out::PointMass, m_in::UnivariateNormalDistributionsFamily) = - @call_rule Probit(:in, MomentMatching) (m_out = q_out, m_in = m_in) +@rule Probit(:in, MomentMatching) (q_out::PointMass, m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = + @call_rule Probit(:in, MomentMatching) (m_out = q_out, m_in = m_in, meta = meta) -@rule Probit(:in, MomentMatching) (m_out::Union{PointMass, Bernoulli}, m_in::UnivariateNormalDistributionsFamily) = +@rule Probit(:in, MomentMatching) (m_out::Union{PointMass, Bernoulli}, m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = begin # extract parameters diff --git a/src/rules/probit/out.jl b/src/rules/probit/out.jl index 2fc868e50..a052bf798 100644 --- a/src/rules/probit/out.jl +++ b/src/rules/probit/out.jl @@ -1,16 +1,16 @@ import StatsFuns: normpdf, normcdf -@rule Probit(:out, Marginalisation) (m_in::PointMass,) = begin +@rule Probit(:out, Marginalisation) (m_in::PointMass, meta::Union{ProbitMeta, Nothing}) = begin p = normcdf(mean(m_in)) return Bernoulli(p) end -@rule Probit(:out, Marginalisation) (q_in::PointMass,) = begin +@rule Probit(:out, Marginalisation) (q_in::PointMass, meta::Union{ProbitMeta, Nothing}) = begin p = normcdf(mean(q_in)) return Bernoulli(p) end -@rule Probit(:out, Marginalisation) (m_in::UnivariateNormalDistributionsFamily,) = begin +@rule Probit(:out, Marginalisation) (m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = begin p = normcdf(mean(m_in) / sqrt(1 + var(m_in))) return Bernoulli(p) end diff --git a/test/models/test_hgf.jl b/test/models/test_hgf.jl index 5b351471e..d101f063a 100644 --- a/test/models/test_hgf.jl +++ b/test/models/test_hgf.jl @@ -19,13 +19,13 @@ using BenchmarkTools, Random, Plots, Dates, LinearAlgebra, StableRNGs zt_min ~ NormalMeanVariance(zt_min_mean, zt_min_var) xt_min ~ NormalMeanVariance(xt_min_mean, xt_min_var) - meta = GCVMetadata(GaussHermiteCubature(9)) + meta = GCVMetadata(GaussHermiteCubature(20)) # Higher layer is modelled as a random walk - zt ~ NormalMeanVariance(zt_min, z_variance) where {q = q(zt, zt_min)q(z_variance), meta = meta} + zt ~ NormalMeanVariance(zt_min, z_variance) where {q = q(zt, zt_min)q(z_variance)} # Lower layer is modelled with `GCV` node - gcv_node, xt ~ GCV(xt_min, zt, real_k, real_w) where {q = q(xt, xt_min)q(zt)q(κ)q(ω)} + gcv_node, xt ~ GCV(xt_min, zt, real_k, real_w) where {q = q(xt, xt_min)q(zt)q(κ)q(ω), meta = meta} # Noisy observations y = datavar(Float64) From 67324402e88d2728da2813d7fab91cebe9648390 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Fri, 16 Sep 2022 10:21:09 +0200 Subject: [PATCH 05/26] Set default meta of average energy to `Nothing` --- src/score.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/score.jl b/src/score.jl index 925049ff6..26a66f599 100644 --- a/src/score.jl +++ b/src/score.jl @@ -176,7 +176,7 @@ macro average_energy(fformtype, lambda) fuppertype = MacroHelpers.upper_type(fformtype) whereargs = whereargs === nothing ? [] : whereargs - metatype = metatype === nothing ? :Any : metatype + metatype = metatype === nothing ? :Nothing : metatype inputs = map(inputs) do input @capture(input, iname_::itype_) || error("Error in macro. Input $(input) is incorrect") From 9f71f489dd81605a8c6a12c3e4c2cfc9879a5351 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Fri, 16 Sep 2022 10:23:34 +0200 Subject: [PATCH 06/26] style: make format --- src/rules/gcv/marginals.jl | 9 ++++++++- src/rules/gcv/x.jl | 8 +++++++- src/rules/gcv/y.jl | 8 +++++++- src/rules/multiplication/A.jl | 9 +++++++-- src/rules/multiplication/in.jl | 9 +++++++-- src/rules/multiplication/out.jl | 33 +++++++++++++++++++++++++++------ src/rules/probit/in.jl | 15 ++++++++++++--- src/rules/probit/out.jl | 9 +++++---- 8 files changed, 80 insertions(+), 20 deletions(-) diff --git a/src/rules/gcv/marginals.jl b/src/rules/gcv/marginals.jl index e62541de3..3d56b6c0c 100644 --- a/src/rules/gcv/marginals.jl +++ b/src/rules/gcv/marginals.jl @@ -1,5 +1,12 @@ -@marginalrule GCV(:y_x) (m_y::UniNormalOrExpLinQuad, m_x::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin +@marginalrule GCV(:y_x) ( + m_y::UniNormalOrExpLinQuad, + m_x::UniNormalOrExpLinQuad, + q_z::Any, + q_κ::Any, + q_ω::Any, + meta::Union{<:GCVMetadata, Nothing} +) = begin y_mean, y_precision = mean_precision(m_y) x_mean, x_precision = mean_precision(m_x) diff --git a/src/rules/gcv/x.jl b/src/rules/gcv/x.jl index 72201ac28..e7598db5e 100644 --- a/src/rules/gcv/x.jl +++ b/src/rules/gcv/x.jl @@ -1,6 +1,12 @@ export rule -@rule GCV(:x, Marginalisation) (m_y::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin +@rule GCV(:x, Marginalisation) ( + m_y::UniNormalOrExpLinQuad, + q_z::Any, + q_κ::Any, + q_ω::Any, + meta::Union{<:GCVMetadata, Nothing} +) = begin y_mean, y_var = mean_var(m_y) z_mean, z_var = mean_var(q_z) κ_mean, κ_var = mean_var(q_κ) diff --git a/src/rules/gcv/y.jl b/src/rules/gcv/y.jl index f4124d815..9941cc194 100644 --- a/src/rules/gcv/y.jl +++ b/src/rules/gcv/y.jl @@ -1,6 +1,12 @@ export rule -@rule GCV(:y, Marginalisation) (m_x::UniNormalOrExpLinQuad, q_z::Any, q_κ::Any, q_ω::Any, meta::Union{<:GCVMetadata, Nothing}) = begin +@rule GCV(:y, Marginalisation) ( + m_x::UniNormalOrExpLinQuad, + q_z::Any, + q_κ::Any, + q_ω::Any, + meta::Union{<:GCVMetadata, Nothing} +) = begin x_mean, x_var = mean_var(m_x) z_mean, z_var = mean_var(q_z) κ_mean, κ_var = mean_var(q_κ) diff --git a/src/rules/multiplication/A.jl b/src/rules/multiplication/A.jl index de86c6d35..0d305e032 100644 --- a/src/rules/multiplication/A.jl +++ b/src/rules/multiplication/A.jl @@ -1,7 +1,12 @@ -@rule typeof(*)(:A, Marginalisation) (m_out::PointMass, m_in::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = PointMass(mean(m_in) \ mean(m_out)) +@rule typeof(*)(:A, Marginalisation) (m_out::PointMass, m_in::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = + PointMass(mean(m_in) \ mean(m_out)) -@rule typeof(*)(:A, Marginalisation) (m_out::GammaDistributionsFamily, m_in::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin +@rule typeof(*)(:A, Marginalisation) ( + m_out::GammaDistributionsFamily, + m_in::PointMass{<:Real}, + meta::Union{<:AbstractCorrection, Nothing} +) = begin return GammaShapeRate(shape(m_out), rate(m_out) * mean(m_in)) end diff --git a/src/rules/multiplication/in.jl b/src/rules/multiplication/in.jl index 2fa29d7cd..98f9124ce 100644 --- a/src/rules/multiplication/in.jl +++ b/src/rules/multiplication/in.jl @@ -1,7 +1,12 @@ -@rule typeof(*)(:in, Marginalisation) (m_out::PointMass, m_A::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = PointMass(mean(m_A) \ mean(m_out)) +@rule typeof(*)(:in, Marginalisation) (m_out::PointMass, m_A::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = + PointMass(mean(m_A) \ mean(m_out)) -@rule typeof(*)(:in, Marginalisation) (m_out::GammaDistributionsFamily, m_A::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin +@rule typeof(*)(:in, Marginalisation) ( + m_out::GammaDistributionsFamily, + m_A::PointMass{<:Real}, + meta::Union{<:AbstractCorrection, Nothing} +) = begin return GammaShapeRate(shape(m_out), rate(m_out) * mean(m_A)) end diff --git a/src/rules/multiplication/out.jl b/src/rules/multiplication/out.jl index f670e3c54..36842571e 100644 --- a/src/rules/multiplication/out.jl +++ b/src/rules/multiplication/out.jl @@ -1,11 +1,20 @@ -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass, m_in::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = PointMass(mean(m_A) * mean(m_in)) +@rule typeof(*)(:out, Marginalisation) (m_A::PointMass, m_in::PointMass, meta::Union{<:AbstractCorrection, Nothing}) = + PointMass(mean(m_A) * mean(m_in)) -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:Real}, m_in::GammaDistributionsFamily, meta::Union{<:AbstractCorrection, Nothing}) = begin +@rule typeof(*)(:out, Marginalisation) ( + m_A::PointMass{<:Real}, + m_in::GammaDistributionsFamily, + meta::Union{<:AbstractCorrection, Nothing} +) = begin return GammaShapeRate(shape(m_in), rate(m_in) / mean(m_A)) end -@rule typeof(*)(:out, Marginalisation) (m_A::GammaDistributionsFamily, m_in::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = begin +@rule typeof(*)(:out, Marginalisation) ( + m_A::GammaDistributionsFamily, + m_in::PointMass{<:Real}, + meta::Union{<:AbstractCorrection, Nothing} +) = begin return @call_rule typeof(*)(:out, Marginalisation) (m_A = m_in, m_in = m_A, meta = meta) # symmetric rule end @@ -39,7 +48,11 @@ end # v out ~ Multivariate -> R^n # -->[x]--> # in1 ~ Univariate -> R^1 -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:AbstractVector}, m_in::UnivariateNormalDistributionsFamily, meta::Union{<:AbstractCorrection, Nothing}) = +@rule typeof(*)(:out, Marginalisation) ( + m_A::PointMass{<:AbstractVector}, + m_in::UnivariateNormalDistributionsFamily, + meta::Union{<:AbstractCorrection, Nothing} +) = begin a = mean(m_A) @@ -64,14 +77,22 @@ end #------------------------ # Real * UnivariateNormalDistributions #------------------------ -@rule typeof(*)(:out, Marginalisation) (m_A::PointMass{<:Real}, m_in::UnivariateNormalDistributionsFamily, meta::Union{<:AbstractCorrection, Nothing}) = begin +@rule typeof(*)(:out, Marginalisation) ( + m_A::PointMass{<:Real}, + m_in::UnivariateNormalDistributionsFamily, + meta::Union{<:AbstractCorrection, Nothing} +) = begin a = mean(m_A) μ_in, v_in = mean_var(m_in) return NormalMeanVariance(a * μ_in, a^2 * v_in) end -@rule typeof(*)(:out, Marginalisation) (m_A::UnivariateNormalDistributionsFamily, m_in::PointMass{<:Real}, meta::Union{<:AbstractCorrection, Nothing}) = +@rule typeof(*)(:out, Marginalisation) ( + m_A::UnivariateNormalDistributionsFamily, + m_in::PointMass{<:Real}, + meta::Union{<:AbstractCorrection, Nothing} +) = begin return @call_rule typeof(*)(:out, Marginalisation) (m_A = m_in, m_in = m_A, meta = meta) # symmetric rule end diff --git a/src/rules/probit/in.jl b/src/rules/probit/in.jl index 75da8e62c..e79941587 100644 --- a/src/rules/probit/in.jl +++ b/src/rules/probit/in.jl @@ -1,6 +1,7 @@ using StatsFuns: normcdf, normccdf, normlogcdf, normlogccdf, normlogpdf, normpdf, logsumexp -@rule Probit(:in, Marginalisation) (q_out::PointMass, meta::Union{ProbitMeta, Nothing}) = @call_rule Probit(:in, Marginalisation) (m_out = q_out,) +@rule Probit(:in, Marginalisation) (q_out::PointMass, meta::Union{ProbitMeta, Nothing}) = + @call_rule Probit(:in, Marginalisation) (m_out = q_out,) @rule Probit(:in, Marginalisation) (m_out::Union{PointMass, Bernoulli}, meta::Union{ProbitMeta, Nothing}) = begin @@ -14,10 +15,18 @@ using StatsFuns: normcdf, normccdf, normlogcdf, normlogccdf, normlogpdf, normpdf return ContinuousUnivariateLogPdf(f) end -@rule Probit(:in, MomentMatching) (q_out::PointMass, m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = +@rule Probit(:in, MomentMatching) ( + q_out::PointMass, + m_in::UnivariateNormalDistributionsFamily, + meta::Union{ProbitMeta, Nothing} +) = @call_rule Probit(:in, MomentMatching) (m_out = q_out, m_in = m_in, meta = meta) -@rule Probit(:in, MomentMatching) (m_out::Union{PointMass, Bernoulli}, m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = +@rule Probit(:in, MomentMatching) ( + m_out::Union{PointMass, Bernoulli}, + m_in::UnivariateNormalDistributionsFamily, + meta::Union{ProbitMeta, Nothing} +) = begin # extract parameters diff --git a/src/rules/probit/out.jl b/src/rules/probit/out.jl index a052bf798..907acd4f6 100644 --- a/src/rules/probit/out.jl +++ b/src/rules/probit/out.jl @@ -10,7 +10,8 @@ end return Bernoulli(p) end -@rule Probit(:out, Marginalisation) (m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = begin - p = normcdf(mean(m_in) / sqrt(1 + var(m_in))) - return Bernoulli(p) -end +@rule Probit(:out, Marginalisation) (m_in::UnivariateNormalDistributionsFamily, meta::Union{ProbitMeta, Nothing}) = + begin + p = normcdf(mean(m_in) / sqrt(1 + var(m_in))) + return Bernoulli(p) + end From b6f1ddcb918e20848a3f6234d35588f9a3f389ff Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Fri, 16 Sep 2022 10:52:47 +0200 Subject: [PATCH 07/26] Update gcv.jl --- src/nodes/gcv.jl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/nodes/gcv.jl b/src/nodes/gcv.jl index 40976cdb4..c806e0e43 100644 --- a/src/nodes/gcv.jl +++ b/src/nodes/gcv.jl @@ -18,7 +18,13 @@ const DefaultGCVNodeMetadata = GCVMetadata(GaussHermiteCubature(20)) default_meta(::Type{GCV}) = DefaultGCVNodeMetadata -@average_energy GCV (q_y_x::MultivariateNormalDistributionsFamily, q_z::NormalDistributionsFamily, q_κ::Any, q_ω::Any) = +@average_energy GCV ( + q_y_x::MultivariateNormalDistributionsFamily, + q_z::NormalDistributionsFamily, + q_κ::Any, + q_ω::Any, + meta::Union{<:GCVMetadata, Nothing} +) = begin y_x_mean, y_x_cov = mean_cov(q_y_x) z_mean, z_var = mean_var(q_z) From ce0326a7aa18e92a512cd34e886ab7cf632df689 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Fri, 16 Sep 2022 13:31:06 +0200 Subject: [PATCH 08/26] update: Bump version to 2.5.0 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 07e4badd0..37e1bdb25 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "ReactiveMP" uuid = "a194aa59-28ba-4574-a09c-4a745416d6e3" authors = ["Dmitry Bagaev ", "Albert Podusenko ", "Bart van Erp ", "Ismail Senoz "] -version = "2.4.1" +version = "2.5.0" [deps] DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" From cb44b8d3dfa46cdfe0300dd8c0f6b35617539df8 Mon Sep 17 00:00:00 2001 From: Albert Podusenko Date: Fri, 16 Sep 2022 15:43:55 +0200 Subject: [PATCH 09/26] Add average energy for uniform dist --- src/nodes/uniform.jl | 4 ++++ test/nodes/test_uniform.jl | 38 ++++++++++++++++++++++++++++++++++++++ test/runtests.jl | 1 + 3 files changed, 43 insertions(+) create mode 100644 test/nodes/test_uniform.jl diff --git a/src/nodes/uniform.jl b/src/nodes/uniform.jl index 9653f96db..95a1186a6 100644 --- a/src/nodes/uniform.jl +++ b/src/nodes/uniform.jl @@ -11,3 +11,7 @@ function prod(::ProdAnalytical, left::Uniform, right::Beta) # The special case for `Uniform(0, 1)` which is essentially `p(x) = 1` and does not change anything return right end + +@average_energy Uniform (q_out::Any, q_a::PointMass, q_b::PointMass) = begin + log(mean(q_b) - mean(q_a)) +end diff --git a/test/nodes/test_uniform.jl b/test/nodes/test_uniform.jl new file mode 100644 index 000000000..b7f41d9fb --- /dev/null +++ b/test/nodes/test_uniform.jl @@ -0,0 +1,38 @@ +module UniformNodeTest + +using Test +using ReactiveMP +using Random + +import ReactiveMP: make_node + +@testset "UniformNode" begin + @testset "Creation" begin + node = make_node(Uniform) + + @test functionalform(node) === Uniform + @test sdtype(node) === Stochastic() + @test name.(interfaces(node)) === (:out, :a, :b) + @test factorisation(node) === ((1, 2, 3),) + @test localmarginalnames(node) === (:out_a_b,) + @test metadata(node) === nothing + + node = make_node(Uniform, FactorNodeCreationOptions(nothing, 1, nothing)) + + @test metadata(node) === 1 + end + + @testset "Average energy" begin + node = ReactiveMP.make_node(Uniform) + for a in 0:0.1:1, b in 1.1:0.1:2.1 + @test isapprox( + score(AverageEnergy(), Uniform, Val{(:out, :a, :b)}, + ( + Marginal(Uniform(a, b), false, false), + Marginal(PointMass(a), false, false), + Marginal(PointMass(b), false, false) + ), nothing), entropy(Uniform(a, b)), rtol = 1e-12) + end + end +end +end diff --git a/test/runtests.jl b/test/runtests.jl index 571403e65..279aa18d8 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -272,6 +272,7 @@ end addtests(testrunner, "nodes/test_not.jl") addtests(testrunner, "nodes/test_and.jl") addtests(testrunner, "nodes/test_implication.jl") + addtests(testrunner, "nodes/test_uniform.jl") addtests(testrunner, "rules/uniform/test_out.jl") From cc8e31b1f6ac69aa10f3be3049c7ae8599c85fe6 Mon Sep 17 00:00:00 2001 From: Albert Podusenko Date: Sun, 18 Sep 2022 15:51:22 +0200 Subject: [PATCH 10/26] Update AE uniform --- src/nodes/uniform.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nodes/uniform.jl b/src/nodes/uniform.jl index 95a1186a6..787600043 100644 --- a/src/nodes/uniform.jl +++ b/src/nodes/uniform.jl @@ -12,6 +12,6 @@ function prod(::ProdAnalytical, left::Uniform, right::Beta) return right end -@average_energy Uniform (q_out::Any, q_a::PointMass, q_b::PointMass) = begin +@average_energy Uniform (q_out::Uniform, q_a::PointMass, q_b::PointMass) = begin log(mean(q_b) - mean(q_a)) end From a41b1b2e6eda36dd3eaca514e4c77a0246154871 Mon Sep 17 00:00:00 2001 From: LENOVO Date: Mon, 19 Sep 2022 10:56:32 +0200 Subject: [PATCH 11/26] add GPRegression by SSM demo --- demo/GPRegression by SSM_M32.ipynb | 442 +++++++++++++++++++++++++++++ demo/GPRegression by SSM_M52.ipynb | 428 ++++++++++++++++++++++++++++ 2 files changed, 870 insertions(+) create mode 100644 demo/GPRegression by SSM_M32.ipynb create mode 100644 demo/GPRegression by SSM_M52.ipynb diff --git a/demo/GPRegression by SSM_M32.ipynb b/demo/GPRegression by SSM_M32.ipynb new file mode 100644 index 000000000..2dc4d6e98 --- /dev/null +++ b/demo/GPRegression by SSM_M32.ipynb @@ -0,0 +1,442 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "using ReactiveMP, Rocket, GraphPPL\n", + "using Random, Distributions, LinearAlgebra, Revise\n", + "using Plots" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Solve GP regression by SDE \n", + "In this notebook, we solve a GP regression problem by using \"Stochastic Differential Equation\" (SDE). This method is well described in the dissertation \"Stochastic differential equation methods for spatio-temporal Gaussian process regression.\" by Arno Solin and \"Sequential Inference for Latent Temporal Gaussian Process Models\" by Jouni Hartikainen. The idea of the method is as follows.\n", + "\n", + "Suppose a function $f(x)$ follows a zero-mean Gaussian Process\n", + "$$\n", + "f(x) \\sim \\mathcal{GP}(0, k(x,x')).\n", + "$$ \n", + "When the dimensionality of $x$ is 1, we can consider $f(x)$ as a stochastic process over time, i.e. $f(t)$. For a certain classses of covariance functions, $f(t)$ is a solution to an $m$-th order linear stochastic differential equation (SDE)\n", + "$$\n", + "a_0 f(t) + a_1 \\frac{d f(t)}{dt} + \\dots + a_m \\frac{d^m f(t)}{dt^m} = w(t) \\quad (1)\n", + "$$ \n", + "where $w(t)$ is a zero-mean white noise process with spectral density $Q_c$. If we define a vector-valued function $\\mathbf{f}(t) = (f(t),\\, d/dt f(t),\\dots,\\, d^{m-1}/dt^{m-1}f(t))$, then we can rewrite the above SDE under the companion form\n", + "$$\n", + "\\frac{d \\mathbf{f}(t)}{dt} = \\mathbf{F}\\, \\mathbf{f}(t) + \\mathbf{L} w(t) \\quad (2)\n", + "$$\n", + "where $\\mathbf{F}$ and $\\mathbf{L}$ are defined based on the choice of covariance functions. \n", + "From (2), we have the following state-space model:\n", + "$$\n", + "\\mathbf{f}_k = \\mathbf{A}_{k-1} \\, \\mathbf{f}_{k-1} + \\mathbf{q}_{k-1}, \\quad \\mathbf{q}_{k-1} \\sim \\mathcal{N}(\\mathbf{0}, \\mathbf{Q}_{k-1}) \\quad(3)\n", + "$$\n", + "$$\n", + "y_k = \\mathbf{H} \\, \\mathbf{f}(t_k) + \\epsilon_k , \\quad \\epsilon_k \\sim \\mathcal{N}(0, \\sigma^2_{noise}) \\quad(4).\n", + "$$\n", + "where $\\mathbf{A}_k = \\exp{(\\mathbf{F}\\,\\Delta t_k)}$, with $\\Delta t_k = t_{k+1} - t_k$, is called the discrete-time state transition matrix, and $\\mathbf{Q}_k$ the process noise covariance matrix. For the computation of $\\mathbf{Q}_k$, we will come back later. According to Arno Solin and Jouni Hartikainen's dissertation, the GP regression problem amounts to the inference problem of the above state-space model, and this can be solved by RTS-smoothing. The state-space model starts from the initial state $f_0 \\sim \\mathcal{N}(\\mathbf{0},\\, \\mathbf{P}_0)$. For stationary covariance function, the SDE has a stationary state $f_\\infty \\sim \\mathcal{N}(\\mathbf{0},\\, \\mathbf{P}_\\infty)$, where $\\mathbf{P}_\\infty$ is the solution to\n", + "$$\n", + "\\frac{d\\mathbf{P}_\\infty}{dt} = \\mathbf{F} \\mathbf{P}_\\infty + \\mathbf{P}_\\infty \\mathbf{F}^T + \\mathbf{L} \\mathbf{Q}_c \\mathbf{L}^T = 0 \\quad (\\mathrm{Lyapunov \\, equation}) \\quad (5).\n", + "$$ \n", + "With this stationary condition, the process noise covariance $\\mathbf{Q}_k$ is computed as follows\n", + "$$\n", + "\\mathbf{Q}_k = \\mathbf{P}_\\infty - \\mathbf{A}_k \\mathbf{P}_\\infty \\mathbf{A}_k^T \\quad (6)\n", + "$$\n", + "\n", + "### Covariance function: Matern-3/2\n", + "The Matern is a stationary covariance function and defined as follows\n", + "$$\n", + "k(\\tau) = \\sigma^2 \\frac{2^{1-\\nu}}{\\Gamma(\\nu)} \\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)^\\nu K_\\nu\\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)\n", + "$$\n", + "where \n", + "$$ \\sigma^2: \\text{the magnitude scale hyperparameter}\\\\\n", + "l: \\text{the characteristic length-scale}\\\\\n", + "\\nu: \\text{the smoothness hyperparameter}\\\\\n", + "K_\\nu(.): \\text{the modified Bessel function of the second kind}.\n", + "$$\n", + "When we say the Matern-3/2, we mean $\\nu=3/2$. For one-dimensional problem the SDE representation of the GP is defined by the matrices $\\mathbf{F}, \\, \\mathbf{L}, \\, \\mathbf{Q}_c, \\, \\mathbf{P}_0$ and $\\mathbf{H}$. For the Matern-3/2, they are computed as follows\n", + "$$\n", + "\\mathbf{F} = \\begin{pmatrix}\n", + "0 & 1\\\\\n", + "-\\lambda^2 & -2\\lambda\n", + "\\end{pmatrix} ,\\quad \\quad \\mathbf{L} = \\begin{pmatrix}\n", + "0 \\\\ 1\n", + "\\end{pmatrix}, \\quad \\quad \\mathbf{P}_\\infty = \\begin{pmatrix}\n", + "\\sigma^2 & 0 \\\\ 0 & \\lambda^2\\sigma^2\n", + "\\end{pmatrix} ,\\quad \\quad \\mathbf{H} = \\begin{pmatrix}\n", + "1 & 0\n", + "\\end{pmatrix}, \\quad \\quad Q_c = 4\\lambda^3\\sigma^2\n", + "$$ \n", + "where $\\lambda = \\frac{\\sqrt{3}}{l} $. From these matrices, we can define $\\mathbf{A}_k$ and $\\mathbf{Q}_k$ in the state-space model. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create regression model" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "@model function gp_regression(n, P∞, A, Q, H)\n", + " f_0 ~ MvNormalMeanCovariance([0.,0.], P∞)\n", + " f = randomvar(n)\n", + " y = datavar(Float64, n) where { allow_missing = true }\n", + " \n", + " f_prev = f_0\n", + "\n", + " for i=1:n\n", + " f[i] ~ MvNormalMeanCovariance(A[i] * f_prev, Q[i])\n", + " y[i] ~ NormalMeanVariance(dot(H , f[i]), 0.04)\n", + " f_prev = f[i]\n", + " end\n", + " return f, y\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "@rule MvNormalMeanCovariance(:μ, Marginalisation) (m_out::Missing, q_Σ::PointMass, ) = missing\n", + "\n", + "@rule typeof(*)(:in, Marginalisation) (m_out::Missing, m_A::PointMass, meta::TinyCorrection) = missing\n", + "\n", + "@rule NormalMeanVariance(:μ, Marginalisation) (q_out::Missing, q_v::PointMass) = missing\n", + "\n", + "@rule typeof(dot)(:in2, Marginalisation) (m_out::Missing, m_in1::PointMass, meta::TinyCorrection) = missing" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Generate data" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "#generate data\n", + "Random.seed!(10)\n", + "n = 100\n", + "\n", + "t = collect(range(0, 5, length=n)); #timeline\n", + "f_true = 2*sin.(t) .+ cos.(2*t); # true process\n", + "f_noisy = f_true + sqrt(0.04)*randn(n); #noisy process\n", + "\n", + "pos = sort(randperm(75)[1:2:75]); \n", + "t_obser = t[pos]; # time where we observe data\n", + "\n", + "y_data = Array{Union{Float64,Missing}}(missing, n)\n", + "for i in pos \n", + " y_data[i] = f_noisy[i]\n", + "end\n", + "\n", + "θ = [1., 1.]; # store [l, σ²]\n", + "λ = sqrt(3)/θ[1];\n", + "Δt = [t[1]]; # time difference\n", + "append!(Δt, t[2:end] - t[1:end-1]);\n", + "\n", + "#### compute matrices for the state-space model ######\n", + "L = [0., 1.];\n", + "H = [1., 0.];\n", + "F = [0. 1.; -λ^2 -2λ]\n", + "P∞ = [θ[2] 0.; 0. (λ^2*θ[2]) ]\n", + "A = [exp(F * i) for i in Δt]; \n", + "Q = [P∞ - i*P∞*i' for i in A];" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Inference results:\n", + "-----------------------------------------\n", + "f = Vector{AbstractMvNormal}[[MvNormalWeightedMeanPrecision(\n", + "xi: [39.166220122121516...\n", + "f_0 = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "result = inference(\n", + " model = Model(gp_regression, n, P∞, A, Q, H),\n", + " data = (y = y_data,)\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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wKM5Zod6h+Ocr169+siRI9HR0Y8++qhGo5G6IteQm5t77NixwsLCiRMnhoWFSV2Oyzh+/Pj27dtLSkoSEhLuu+++ps/w8XBr1679+eefTSZTfHz8/fffr9PppK7IlZjN5hUrVvTu3btv375S1+Iavv7664qKiobbISEhkydPdlTLTtoj/Mc//jFv3rxOnTpt2bJl6tSpUpfjMnr16vX2228/++yzN9xIGW6ouLh42rRpJSUlERERn3322Z133mm1WqUuyjUsX75crVbHxMSsXr168ODBOG/N8re//e2FF15Yv3691IW4jH/+85979+7NyMjIyMhw7DLUzjh9wmQyhYWF7dmzp0ePHrW1tWFhYVu3bu3Xr5/UdbkAURQFQYiMjFy2bNno0aOlLsc12O12URQVCgURWSyWwMDA7du3Dxo0SOq6XEldXZ23t/ehQ4d69uwpdS2u4eDBgy+99FJQUFBcXNy//vUvqctxDV26dFm6dGlSUpLDW3bGHuHJkyfVanWPHj2ISK1WDxkyZPfu3VIX5RqwSkULyGSyhhQkIrvdbrPZDAaDtCW5nKNHj6rV6qioKKkLcQ11dXVPPPHEokWL8A+2udauXTt//vwdO3Y4tlln/DMUFBQEBARc+TEoKCgvL0/CesBzPP/886NHj+7atavUhbiMOXPmhISEjBs3btWqVQ7ci9S9vfLKKzNnzrztul/wK7169SKivLy8hx566IEHHnBgy844WEYul1+776LNZlOpVBLWAx5i/vz5u3fv3rNnj9SFuJKPPvqourp63bp1999//88//xwRESF1Rc7uyJEj27dvP3z4sNSFuJ4VK1Y03Hjuuec6der0pz/9yVFfmTljjzA0NLSgoOBKFubm5oaEhEhbEri9+fPnL1myZNeuXUFBQVLX4koMBkNoaOgf//jHuLi4rVu3Sl2OC1i9enVxcfEdd9zRt2/fH3744eOPP/7jH/8odVEuJjQ0NCYmJiMjw1ENOmOPsHfv3jqdbvv27ePGjSssLNy/f/+HH34odVHgzhYsWPD+++/v3r0b/8vVdLW1tUqlsuFbrvLy8osXL0ZGRkpdlAt49tln77333obbL7/8ckRExLPPPittSS7BarXK5fKG91tqauqFCxcSExMd1bgzBqFcLn/zzTcffPDBSZMm7d2795FHHomNjZW6KNfwwAMPpKamFhYWPvnkk15eXitXruzUqZPURTm7rKysZ555JjIycubMmQ33vP7662PHjpW2Kud35MiR3/3ud3379pXJZDt37hw7duyYMWOkLsoFhIeHh4eHN9w2Go0hISFxcXHSluQSTp06NWvWrP79+3POt2/f/sILLzjwu3xnnD7R4Pz588eOHYuJiRk4cKDUtbiM1NRUi8Vy5ccuXbpgLYLbqqurS05OvvaemJgYo9EoVT0uJD09PSUlhXOemJjYuXNnqctxPZcuXVKpVKGhoVIX4gJEUUxJSUlLS5PL5T179oyJiXFg484bhAAAAO3AGQfLAAAAtBsEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeLT/D/auulc0xF9uAAAAAElFTkSuQmCC", + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "slicedim(dim) = (a) -> map(e -> e[dim], a)\n", + "\n", + "px = plot()\n", + "px = plot!(px, t, mean.(result.posteriors[:f][]) |> slicedim(1), ribbon = var.(result.posteriors[:f][]) |> slicedim(1) .|> sqrt, label =\"Approximated process\")\n", + "px = plot!(px, t, f_true,label=\"true process\")\n", + "px = scatter!(px, t_obser, f_noisy[pos], label=\"Observations\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.7.1", + "language": "julia", + "name": "julia-1.7" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.7.1" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/demo/GPRegression by SSM_M52.ipynb b/demo/GPRegression by SSM_M52.ipynb new file mode 100644 index 000000000..cc4281306 --- /dev/null +++ b/demo/GPRegression by SSM_M52.ipynb @@ -0,0 +1,428 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "using GraphPPL, Rocket, ReactiveMP\n", + "using Random, Distributions, LinearAlgebra, Revise\n", + "using Plots" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Solving GP Regression by SDE\n", + "In this notebook, we use kernel Matern-5/2. Recall the definition of Matern kernel:\n", + "$$\n", + "k(\\tau) = \\sigma^2 \\frac{2^{1-\\nu}}{\\Gamma(\\nu)} \\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)^\\nu K_\\nu\\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)\n", + "$$\n", + "\n", + "and the state-space model:\n", + "$$\n", + "\\mathbf{f}_k = \\mathbf{A}_{k-1} \\, \\mathbf{f}_{k-1} + \\mathbf{q}_{k-1}, \\quad \\mathbf{q}_{k-1} \\sim \\mathcal{N}(\\mathbf{0}, \\mathbf{Q}_{k-1}) \n", + "$$\n", + "$$\n", + "y_k = \\mathbf{H} \\, \\mathbf{f}(t_k) + \\epsilon_k , \\quad \\epsilon_k \\sim \\mathcal{N}(0, \\sigma^2_{noise}).\n", + "$$\n", + "The matrices for the SDE representation of the Matern-52 are:\n", + "$$\n", + "\\mathbf{F} = \\begin{pmatrix}\n", + "0 & 1 & 0\\\\\n", + "0 & 0 & 1 \\\\\n", + "-\\lambda^3 & -3\\lambda^2 & -3\\lambda\n", + "\\end{pmatrix} ,\\quad \\quad \\mathbf{L} = \\begin{pmatrix}\n", + "0 \\\\ 0 \\\\ 1\n", + "\\end{pmatrix}, \\quad \\quad \\mathbf{H} = \\begin{pmatrix}\n", + "1 & 0 & 0\n", + "\\end{pmatrix}, \\quad \\quad Q_c = \\frac{16}{3} \\sigma^2 \\lambda^5, \n", + "$$\n", + "where $\\lambda = \\sqrt{5} / l$. To find $\\mathbf{P}_\\infty$, we solve the Lyapunov equation\n", + "$$\n", + "\\frac{d\\mathbf{P}_\\infty}{dt} = \\mathbf{F} \\mathbf{P}_\\infty + \\mathbf{P}_\\infty \\mathbf{F}^T + \\mathbf{L} \\mathbf{Q}_c \\mathbf{L}^T = 0,\n", + "$$\n", + "and the solution of the equation is\n", + "$$ \n", + "vec(\\mathbf{P}_\\infty) = (\\mathbf{I} \\otimes \\mathbf{F} + \\mathbf{F}\\otimes\\mathbf{I})^{-1}\\, vec(-\\mathbf{L}Q_c\\mathbf{L}^T)\n", + "$$ \n", + "where $vec(.)$ is the vectorization operator and $\\otimes$ denotes the Kronecker product. Now we can find $\\mathbf{A}_k$ and $\\mathbf{Q}_k$ \n", + "$$\n", + "\\mathbf{A}_k = \\exp{(\\mathbf{F}\\Delta t_k)} \n", + "$$\n", + "$$\n", + "\\mathbf{Q}_k = \\mathbf{P}_\\infty - \\mathbf{A}_k \\mathbf{P}_\\infty \\mathbf{A}_k^T \n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Specify model" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "@model function gp_regression(n, P∞, A, Q, H)\n", + " f_0 ~ MvNormalMeanCovariance(zeros(3), P∞)\n", + " f = randomvar(n)\n", + " y = datavar(Float64, n) where { allow_missing = true }\n", + " \n", + " f_prev = f_0\n", + "\n", + " for i=1:n\n", + " f[i] ~ MvNormalMeanCovariance(A[i] * f_prev, Q[i])\n", + " y[i] ~ NormalMeanVariance(dot(H , f[i]), 0.04)\n", + " f_prev = f[i]\n", + " end\n", + " return f, y\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "@rule MvNormalMeanCovariance(:μ, Marginalisation) (m_out::Missing, q_Σ::PointMass, ) = missing\n", + "\n", + "@rule typeof(*)(:in, Marginalisation) (m_out::Missing, m_A::PointMass, meta::TinyCorrection) = missing\n", + "\n", + "@rule NormalMeanVariance(:μ, Marginalisation) (q_out::Missing, q_v::PointMass) = missing\n", + "\n", + "@rule typeof(dot)(:in2, Marginalisation) (m_out::Missing, m_in1::PointMass, meta::TinyCorrection) = missing" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Generate data" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "Random.seed!(10)\n", + "n = 100\n", + "\n", + "t = collect(range(0, 5, length=n)); #timeline\n", + "f_true = 2*sin.(t) .+ cos.(2*t); # true process\n", + "f_noisy = f_true + sqrt(0.04)*randn(n); #noisy process\n", + "\n", + "pos = sort(randperm(75)[1:2:75]); \n", + "t_obser = t[pos]; # time where we observe data\n", + "\n", + "y_data = Array{Union{Float64,Missing}}(missing, n)\n", + "for i in pos \n", + " y_data[i] = f_noisy[i]\n", + "end\n", + "\n", + "θ = [1., 1.]; # store [l, σ²]\n", + "λ = sqrt(5)/θ[1];\n", + "Δt = [t[1]]; #time difference\n", + "append!(Δt, t[2:end] - t[1:end-1]);\n", + "\n", + "#### compute matrices for the state-space model ######\n", + "L = [0., 0., 1.];\n", + "H = [1., 0., 0.];\n", + "F = [0. 1. 0.; 0. 0. 1.;-λ^3 -3λ^2 -3λ]\n", + "Qc = 16/3 * θ[2] * λ^5;\n", + "\n", + "I = diageye(3) ; \n", + "vec_P = inv(kron(I,F) + kron(F,I)) * vec(-L * Qc * L'); \n", + "P∞ = reshape(vec_P,3,3);\n", + "A = [exp(F * i) for i in Δt]; \n", + "Q = [P∞ - i*P∞*i' for i in A];" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Inference results:\n", + "-----------------------------------------\n", + "f = Vector{AbstractMvNormal}[[MvNormalWeightedMeanPrecision(\n", + "xi: [65.85526392511194,...\n", + "f_0 = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "result = inference(\n", + " model = Model(gp_regression, n, P∞, A, Q, H),\n", + " data = (y = y_data,)\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "slicedim(dim) = (a) -> map(e -> e[dim], a)\n", + "\n", + "px = plot()\n", + "px = plot!(px, t, mean.(result.posteriors[:f][]) |> slicedim(1), ribbon = var.(result.posteriors[:f][]) |> slicedim(1) .|> sqrt, label =\"Approximated process\")\n", + "px = plot!(px, t, f_true,label=\"true process\")\n", + "px = scatter!(px, t_obser, f_noisy[pos], label=\"Observations\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.7.1", + "language": "julia", + "name": "julia-1.7" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.7.1" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} From e85f91848ec216ac8c4eb71b5b07849e30b4eedb Mon Sep 17 00:00:00 2001 From: Albert Podusenko Date: Mon, 19 Sep 2022 13:03:37 +0200 Subject: [PATCH 12/26] Update --- src/nodes/uniform.jl | 5 +++-- test/nodes/test_uniform.jl | 17 ++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/nodes/uniform.jl b/src/nodes/uniform.jl index 787600043..d424e4678 100644 --- a/src/nodes/uniform.jl +++ b/src/nodes/uniform.jl @@ -12,6 +12,7 @@ function prod(::ProdAnalytical, left::Uniform, right::Beta) return right end -@average_energy Uniform (q_out::Uniform, q_a::PointMass, q_b::PointMass) = begin - log(mean(q_b) - mean(q_a)) +@average_energy Uniform (q_out::Beta, q_a::PointMass, q_b::PointMass) = begin + @assert (mean(q_a), mean(q_b)) == (0.0, 1.0) "a and b must be equal to 1 and 0 respectively" + 0.0 end diff --git a/test/nodes/test_uniform.jl b/test/nodes/test_uniform.jl index b7f41d9fb..cebbcd22a 100644 --- a/test/nodes/test_uniform.jl +++ b/test/nodes/test_uniform.jl @@ -24,15 +24,14 @@ import ReactiveMP: make_node @testset "Average energy" begin node = ReactiveMP.make_node(Uniform) - for a in 0:0.1:1, b in 1.1:0.1:2.1 - @test isapprox( - score(AverageEnergy(), Uniform, Val{(:out, :a, :b)}, - ( - Marginal(Uniform(a, b), false, false), - Marginal(PointMass(a), false, false), - Marginal(PointMass(b), false, false) - ), nothing), entropy(Uniform(a, b)), rtol = 1e-12) - end + a, b = 0.0, 1.0 + α, β = rand(0.1:0.1:1.0), rand(0.1:0.1:1.0) + @test score(AverageEnergy(), Uniform, Val{(:out, :a, :b)}, + ( + Marginal(Beta(α, β), false, false), + Marginal(PointMass(a), false, false), + Marginal(PointMass(b), false, false) + ), nothing) == 0.0 end end end From 5b3041aecc1c5c00d7b667a36b9f6ddf8f4be5ed Mon Sep 17 00:00:00 2001 From: Bart van Erp Date: Mon, 19 Sep 2022 15:16:44 +0200 Subject: [PATCH 13/26] update coin flip demo --- demo/Coin Flip Example.ipynb | 757 +---------------------------------- 1 file changed, 7 insertions(+), 750 deletions(-) diff --git a/demo/Coin Flip Example.ipynb b/demo/Coin Flip Example.ipynb index d24b8fbb9..1bfce0d4f 100644 --- a/demo/Coin Flip Example.ipynb +++ b/demo/Coin Flip Example.ipynb @@ -27,16 +27,7 @@ "cell_type": "code", "execution_count": 1, "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "┌ Info: Precompiling ReactiveMP [a194aa59-28ba-4574-a09c-4a745416d6e3]\n", - "└ @ Base loading.jl:1423\n" - ] - } - ], + "outputs": [], "source": [ "using Rocket, GraphPPL, ReactiveMP, Distributions, Random" ] @@ -96,7 +87,7 @@ "text/plain": [ "Inference results:\n", "-----------------------------------------\n", - "θ = Beta{Float64}[Beta{Float64}(α=365.0, β=147.0)]\n" + "θ = Beta{Float64}(α=365.0, β=147.0)\n" ] }, "execution_count": 4, @@ -128,7 +119,7 @@ } ], "source": [ - "θestimated = result.posteriors[:θ][end]" + "θestimated = result.posteriors[:θ]" ] }, { @@ -138,734 +129,7 @@ "outputs": [ { "data": { - "image/svg+xml": [ - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ] + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" }, "execution_count": 6, "metadata": {}, @@ -883,26 +147,19 @@ "plot!(rθ, (x) -> pdf(θestimated, x), fillalpha=0.3, fillrange = 0, label=\"P(θ|y)\", c=3)\n", "vline!([θ_real], label=\"Real θ\")" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Julia 1.7.1", + "display_name": "Julia 1.8.1", "language": "julia", - "name": "julia-1.7" + "name": "julia-1.8" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", - "version": "1.7.2" + "version": "1.8.1" } }, "nbformat": 4, From f95dbe475d2dcd4e4dee6c87fcb2122e9946cf4f Mon Sep 17 00:00:00 2001 From: Albert Podusenko Date: Mon, 19 Sep 2022 16:34:25 +0200 Subject: [PATCH 14/26] Update --- src/nodes/uniform.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nodes/uniform.jl b/src/nodes/uniform.jl index d424e4678..57786d27b 100644 --- a/src/nodes/uniform.jl +++ b/src/nodes/uniform.jl @@ -13,6 +13,6 @@ function prod(::ProdAnalytical, left::Uniform, right::Beta) end @average_energy Uniform (q_out::Beta, q_a::PointMass, q_b::PointMass) = begin - @assert (mean(q_a), mean(q_b)) == (0.0, 1.0) "a and b must be equal to 1 and 0 respectively" + @assert (mean(q_a), mean(q_b)) == (0.0, 1.0) "a and b must be equal to 0 and 1 respectively" 0.0 end From 76309902550d04d54486a5e7b89d684af841759a Mon Sep 17 00:00:00 2001 From: LENOVO Date: Tue, 20 Sep 2022 17:00:29 +0200 Subject: [PATCH 15/26] update GPR_by_SSM notebook --- demo/GPRegression by SSM.ipynb | 388 +++++++++++++++++++++++++++++++++ 1 file changed, 388 insertions(+) create mode 100644 demo/GPRegression by SSM.ipynb diff --git a/demo/GPRegression by SSM.ipynb b/demo/GPRegression by SSM.ipynb new file mode 100644 index 000000000..f275af522 --- /dev/null +++ b/demo/GPRegression by SSM.ipynb @@ -0,0 +1,388 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Solve GP regression by SDE \n", + "In this notebook, we solve a GP regression problem by using \"Stochastic Differential Equation\" (SDE). This method is well described in the dissertation \"Stochastic differential equation methods for spatio-temporal Gaussian process regression.\" by Arno Solin and \"Sequential Inference for Latent Temporal Gaussian Process Models\" by Jouni Hartikainen. The idea of the method is as follows.\n", + "\n", + "Suppose a function $f(x)$ follows a zero-mean Gaussian Process\n", + "$$\n", + "f(x) \\sim \\mathcal{GP}(0, k(x,x')).\n", + "$$ \n", + "When the dimensionality of $x$ is 1, we can consider $f(x)$ as a stochastic process over time, i.e. $f(t)$. For a certain classses of covariance functions, $f(t)$ is a solution to an $m$-th order linear stochastic differential equation (SDE)\n", + "$$\n", + "a_0 f(t) + a_1 \\frac{d f(t)}{dt} + \\dots + a_m \\frac{d^m f(t)}{dt^m} = w(t) \n", + "$$ \n", + "where $w(t)$ is a zero-mean white noise process with spectral density $Q_c$. If we define a vector-valued function $\\mathbf{f}(t) = (f(t),\\, d/dt f(t),\\dots,\\, d^{m-1}/dt^{m-1}f(t))$, then we can rewrite the above SDE under the companion form\n", + "$$\n", + "\\frac{d \\mathbf{f}(t)}{dt} = \\mathbf{F}\\, \\mathbf{f}(t) + \\mathbf{L} w(t) \\quad (1)\n", + "$$\n", + "where $\\mathbf{F}$ and $\\mathbf{L}$ are defined based on the choice of covariance functions. \n", + "From (1), we have the following state-space model:\n", + "$$\n", + "\\mathbf{f}_k = \\mathbf{A}_{k-1} \\, \\mathbf{f}_{k-1} + \\mathbf{q}_{k-1}, \\quad \\mathbf{q}_{k-1} \\sim \\mathcal{N}(\\mathbf{0}, \\mathbf{Q}_{k-1}) \\quad(2a)\n", + "$$\n", + "$$\n", + "y_k = \\mathbf{H} \\, \\mathbf{f}(t_k) + \\epsilon_k , \\quad \\epsilon_k \\sim \\mathcal{N}(0, \\sigma^2_{noise}) \\quad(2b).\n", + "$$\n", + "where $\\mathbf{A}_k = \\exp{(\\mathbf{F}\\,\\Delta t_k)}$, with $\\Delta t_k = t_{k+1} - t_k$, is called the discrete-time state transition matrix, and $\\mathbf{Q}_k$ the process noise covariance matrix. For the computation of $\\mathbf{Q}_k$, we will come back later. According to Arno Solin and Jouni Hartikainen's dissertation, the GP regression problem amounts to the inference problem of the above state-space model, and this can be solved by RTS-smoothing. The state-space model starts from the initial state $f_0 \\sim \\mathcal{N}(\\mathbf{0},\\, \\mathbf{P}_0)$. For stationary covariance function, the SDE has a stationary state $f_\\infty \\sim \\mathcal{N}(\\mathbf{0},\\, \\mathbf{P}_\\infty)$, where $\\mathbf{P}_\\infty$ is the solution to\n", + "$$\n", + "\\frac{d\\mathbf{P}_\\infty}{dt} = \\mathbf{F} \\mathbf{P}_\\infty + \\mathbf{P}_\\infty \\mathbf{F}^T + \\mathbf{L} \\mathbf{Q}_c \\mathbf{L}^T = 0 \\quad (\\mathrm{Lyapunov \\, equation}).\n", + "$$ \n", + "With this stationary condition, the process noise covariance $\\mathbf{Q}_k$ is computed as follows\n", + "$$\n", + "\\mathbf{Q}_k = \\mathbf{P}_\\infty - \\mathbf{A}_k \\mathbf{P}_\\infty \\mathbf{A}_k^T \n", + "$$\n", + "For one-dimensional problem the SDE representation of the GP is defined by the matrices $\\mathbf{F}, \\, \\mathbf{L}, \\, \\mathbf{Q}_c, \\, \\mathbf{P}_0$ and $\\mathbf{H}$. Once we obtain all the matrices, we can do GP regression by implementing RTS-smoothing on the state-space model (2). In this notebook we will particularly use the Matern class of covariance functions for Gaussian Process.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "using ReactiveMP, Rocket, GraphPPL\n", + "using Random, Distributions, LinearAlgebra, Revise\n", + "using Plots" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create state space model for GP regression\n", + "Here we create a state-space model\n", + "$$\n", + "\\mathbf{f}_k = \\mathbf{A}_{k-1} \\, \\mathbf{f}_{k-1} + \\mathbf{q}_{k-1}, \\quad \\mathbf{q}_{k-1} \\sim \\mathcal{N}(\\mathbf{0}, \\mathbf{Q}_{k-1}) \n", + "$$\n", + "$$\n", + "y_k = \\mathbf{H} \\, \\mathbf{f}(t_k) + \\epsilon_k , \\quad \\epsilon_k \\sim \\mathcal{N}(0, \\sigma^2_{noise}),\n", + "$$\n", + "where $y_k$ is the noisy observation of the function $f$ at time $t_k$, and $\\sigma^2_{noise}$ is the noise variance and assumed to be known." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "@model function gp_regression(n, P∞, A, Q, H, σ²_noise)\n", + " f_0 ~ MvNormalMeanCovariance(zeros(length(H)), P∞)\n", + " f = randomvar(n)\n", + " y = datavar(Float64, n) where { allow_missing = true }\n", + " \n", + " f_prev = f_0\n", + "\n", + " for i=1:n\n", + " f[i] ~ MvNormalMeanCovariance(A[i] * f_prev, Q[i])\n", + " y[i] ~ NormalMeanVariance(dot(H , f[i]), σ²_noise)\n", + " f_prev = f[i]\n", + " end\n", + " return f, y\n", + "end" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Since we only observe the (noisy) function value at some time instances on the timeline, the data variable $y$ contains $\\textit{missing}$ values and this requires us to add update rule for missing messages." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "@rule MvNormalMeanCovariance(:μ, Marginalisation) (m_out::Missing, q_Σ::PointMass, ) = missing\n", + "\n", + "@rule NormalMeanVariance(:μ, Marginalisation) (q_out::Missing, q_v::PointMass) = missing\n", + "\n", + "@rule typeof(*)(:in, Marginalisation) (m_out::Missing, m_A::PointMass, meta::TinyCorrection) = missing\n", + "\n", + "@rule typeof(dot)(:in2, Marginalisation) (m_out::Missing, m_in1::PointMass, meta::TinyCorrection) = missing" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Generate data" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "Random.seed!(10)\n", + "n = 100\n", + "σ²_noise = 0.04;\n", + "t = collect(range(0, 5, length=n)); #timeline\n", + "f_true = 2*sin.(t) .+ cos.(2*t); # true process\n", + "f_noisy = f_true + sqrt(σ²_noise)*randn(n); #noisy process\n", + "\n", + "pos = sort(randperm(75)[1:2:75]); \n", + "t_obser = t[pos]; # time where we observe data\n", + "\n", + "y_data = Array{Union{Float64,Missing}}(missing, n)\n", + "for i in pos \n", + " y_data[i] = f_noisy[i]\n", + "end\n", + "\n", + "θ = [1., 1.]; # store [l, σ²]\n", + "Δt = [t[1]]; # time difference\n", + "append!(Δt, t[2:end] - t[1:end-1]);" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Let's visualize our data" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(t, f_true, label=\"True process f(t)\")\n", + "scatter!(t_obser, y_data[pos], label = \"Noisy observations\")\n", + "xlabel!(\"t\")\n", + "ylabel!(\"f(t)\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Covariance function: Matern-3/2\n", + "\n", + "The Matern is a stationary covariance function and defined as follows\n", + "$$\n", + "k(\\tau) = \\sigma^2 \\frac{2^{1-\\nu}}{\\Gamma(\\nu)} \\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)^\\nu K_\\nu\\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)\n", + "$$\n", + "where \n", + "$$ \\sigma^2: \\text{the magnitude scale hyperparameter}\\\\\n", + "l: \\text{the characteristic length-scale}\\\\\n", + "\\nu: \\text{the smoothness hyperparameter}\\\\\n", + "K_\\nu(.): \\text{the modified Bessel function of the second kind}.\n", + "$$\n", + "When we say the Matern-3/2, we mean $\\nu=3/2$. The matrices for the state space model are computed as follows\n", + "$$\n", + "\\mathbf{F} = \\begin{pmatrix}\n", + "0 & 1\\\\\n", + "-\\lambda^2 & -2\\lambda\n", + "\\end{pmatrix} ,\\quad \\quad \\mathbf{L} = \\begin{pmatrix}\n", + "0 \\\\ 1\n", + "\\end{pmatrix}, \\quad \\quad \\mathbf{P}_\\infty = \\begin{pmatrix}\n", + "\\sigma^2 & 0 \\\\ 0 & \\lambda^2\\sigma^2\n", + "\\end{pmatrix} ,\\quad \\quad \\mathbf{H} = \\begin{pmatrix}\n", + "1 & 0\n", + "\\end{pmatrix}, \\quad \\quad Q_c = 4\\lambda^3\\sigma^2\n", + "$$ \n", + "where $\\lambda = \\frac{\\sqrt{3}}{l} $. From these matrices, we can define $\\mathbf{A}_k$ and $\\mathbf{Q}_k$." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "λ = sqrt(3)/θ[1];\n", + "#### compute matrices for the state-space model ######\n", + "L = [0., 1.];\n", + "H = [1., 0.];\n", + "F = [0. 1.; -λ^2 -2λ]\n", + "P∞ = [θ[2] 0.; 0. (λ^2*θ[2]) ]\n", + "A = [exp(F * i) for i in Δt]; \n", + "Q = [P∞ - i*P∞*i' for i in A];" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Inference results:\n", + "-----------------------------------------\n", + "f = AbstractMvNormal[MvNormalWeightedMeanPrecision(\n", + "xi: [39.166220122121516, 1.76168...\n", + "f_0 = MvNormalWeightedMeanPrecision(\n", + "xi: [39.16622012212151, 1.7616896757961944]\n", + "Λ: [3...\n" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result_32 = inference(\n", + " model = Model(gp_regression, n, P∞, A, Q, H, σ²_noise),\n", + " data = (y = y_data,)\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Covariance function: Matern-5/2\n", + "Now let's try the Matern-5/2 kernel. The matrices for the SDE representation of the Matern-5/2 are:\n", + "$$\n", + "\\mathbf{F} = \\begin{pmatrix}\n", + "0 & 1 & 0\\\\\n", + "0 & 0 & 1 \\\\\n", + "-\\lambda^3 & -3\\lambda^2 & -3\\lambda\n", + "\\end{pmatrix} ,\\quad \\quad \\mathbf{L} = \\begin{pmatrix}\n", + "0 \\\\ 0 \\\\ 1\n", + "\\end{pmatrix}, \\quad \\quad \\mathbf{H} = \\begin{pmatrix}\n", + "1 & 0 & 0\n", + "\\end{pmatrix}, \\quad \\quad Q_c = \\frac{16}{3} \\sigma^2 \\lambda^5, \n", + "$$\n", + "where $\\lambda = \\sqrt{5} / l$. To find $\\mathbf{P}_\\infty$, we solve the Lyapunov equation\n", + "$$\n", + "\\frac{d\\mathbf{P}_\\infty}{dt} = \\mathbf{F} \\mathbf{P}_\\infty + \\mathbf{P}_\\infty \\mathbf{F}^T + \\mathbf{L} \\mathbf{Q}_c \\mathbf{L}^T = 0,\n", + "$$\n", + "of which the solution is\n", + "$$ \n", + "vec(\\mathbf{P}_\\infty) = (\\mathbf{I} \\otimes \\mathbf{F} + \\mathbf{F}\\otimes\\mathbf{I})^{-1}\\, vec(-\\mathbf{L}Q_c\\mathbf{L}^T)\n", + "$$ \n", + "where $vec(.)$ is the vectorization operator and $\\otimes$ denotes the Kronecker product. Now we can find $\\mathbf{A}_k$ and $\\mathbf{Q}_k$ \n", + "$$\n", + "\\mathbf{A}_k = \\exp{(\\mathbf{F}\\Delta t_k)} \n", + "$$\n", + "$$\n", + "\\mathbf{Q}_k = \\mathbf{P}_\\infty - \\mathbf{A}_k \\mathbf{P}_\\infty \\mathbf{A}_k^T \n", + "$$" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "λ = sqrt(5)/θ[1];\n", + "#### compute matrices for the state-space model ######\n", + "L = [0., 0., 1.];\n", + "H = [1., 0., 0.];\n", + "F = [0. 1. 0.; 0. 0. 1.;-λ^3 -3λ^2 -3λ]\n", + "Qc = 16/3 * θ[2] * λ^5;\n", + "\n", + "I = diageye(3) ; \n", + "vec_P = inv(kron(I,F) + kron(F,I)) * vec(-L * Qc * L'); \n", + "P∞ = reshape(vec_P,3,3);\n", + "A = [exp(F * i) for i in Δt]; \n", + "Q = [P∞ - i*P∞*i' for i in A];" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Inference results:\n", + "-----------------------------------------\n", + "f = AbstractMvNormal[MvNormalWeightedMeanPrecision(\n", + "xi: [65.85526392511194, 10.41977...\n", + "f_0 = MvNormalWeightedMeanPrecision(\n", + "xi: [65.85526392511201, 10.419773393295, 1.013605...\n" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result_52 = inference(\n", + " model = Model(gp_regression, n, P∞, A, Q, H, σ²_noise),\n", + " data = (y = y_data,)\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Result" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "slicedim(dim) = (a) -> map(e -> e[dim], a)\n", + "\n", + "plot(t, mean.(result_32.posteriors[:f]) |> slicedim(1), ribbon = var.(result_32.posteriors[:f]) |> slicedim(1) .|> sqrt, label =\"Approx. process_M32\", title = \"Matern-3/2\", legend =false, lw = 2)\n", + "plot!(t, mean.(result_52.posteriors[:f]) |> slicedim(1), ribbon = var.(result_52.posteriors[:f]) |> slicedim(1) .|> sqrt, label =\"Approx. process_M52\",legend = :bottomleft, title = \"GPRegression by SSM\", lw = 2)\n", + "plot!(t, f_true,label=\"true process\", lw = 2)\n", + "scatter!(t_obser, f_noisy[pos], label=\"Observations\")\n", + "xlabel!(\"t\")\n", + "ylabel!(\"f(t)\")\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we can see from the plot, both cases of Matern kernel provide good approximations (small variance) to the true process at the area with dense observations (namely from t = 0 to around 3.5), and when we move far away from this region the approximated processes become less accurate (larger variance). This result makes sense because GP regression exploits the correlation between observations to predict unobserved points, and the choice of covariance functions as well as their hyper-parameters might not be optimal. We can increase the accuracy of the approximated processes by simply adding more observations. This way of improvement does not trouble the state-space method much but it might cause computational problem for naive GP regression, because with N observations the complexity of naive GP regression scales with $N^3$ while the state-space method scales linearly with N. " + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.7.1", + "language": "julia", + "name": "julia-1.7" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.7.1" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} From e70b6731d735eb712dbf40df83a8de5c9cbf4faf Mon Sep 17 00:00:00 2001 From: LENOVO Date: Tue, 20 Sep 2022 17:01:05 +0200 Subject: [PATCH 16/26] delete old notebooks --- demo/GPRegression by SSM_M32.ipynb | 442 ----------------------------- demo/GPRegression by SSM_M52.ipynb | 428 ---------------------------- 2 files changed, 870 deletions(-) delete mode 100644 demo/GPRegression by SSM_M32.ipynb delete mode 100644 demo/GPRegression by SSM_M52.ipynb diff --git a/demo/GPRegression by SSM_M32.ipynb b/demo/GPRegression by SSM_M32.ipynb deleted file mode 100644 index 2dc4d6e98..000000000 --- a/demo/GPRegression by SSM_M32.ipynb +++ /dev/null @@ -1,442 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "using ReactiveMP, Rocket, GraphPPL\n", - "using Random, Distributions, LinearAlgebra, Revise\n", - "using Plots" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Solve GP regression by SDE \n", - "In this notebook, we solve a GP regression problem by using \"Stochastic Differential Equation\" (SDE). This method is well described in the dissertation \"Stochastic differential equation methods for spatio-temporal Gaussian process regression.\" by Arno Solin and \"Sequential Inference for Latent Temporal Gaussian Process Models\" by Jouni Hartikainen. The idea of the method is as follows.\n", - "\n", - "Suppose a function $f(x)$ follows a zero-mean Gaussian Process\n", - "$$\n", - "f(x) \\sim \\mathcal{GP}(0, k(x,x')).\n", - "$$ \n", - "When the dimensionality of $x$ is 1, we can consider $f(x)$ as a stochastic process over time, i.e. $f(t)$. For a certain classses of covariance functions, $f(t)$ is a solution to an $m$-th order linear stochastic differential equation (SDE)\n", - "$$\n", - "a_0 f(t) + a_1 \\frac{d f(t)}{dt} + \\dots + a_m \\frac{d^m f(t)}{dt^m} = w(t) \\quad (1)\n", - "$$ \n", - "where $w(t)$ is a zero-mean white noise process with spectral density $Q_c$. If we define a vector-valued function $\\mathbf{f}(t) = (f(t),\\, d/dt f(t),\\dots,\\, d^{m-1}/dt^{m-1}f(t))$, then we can rewrite the above SDE under the companion form\n", - "$$\n", - "\\frac{d \\mathbf{f}(t)}{dt} = \\mathbf{F}\\, \\mathbf{f}(t) + \\mathbf{L} w(t) \\quad (2)\n", - "$$\n", - "where $\\mathbf{F}$ and $\\mathbf{L}$ are defined based on the choice of covariance functions. \n", - "From (2), we have the following state-space model:\n", - "$$\n", - "\\mathbf{f}_k = \\mathbf{A}_{k-1} \\, \\mathbf{f}_{k-1} + \\mathbf{q}_{k-1}, \\quad \\mathbf{q}_{k-1} \\sim \\mathcal{N}(\\mathbf{0}, \\mathbf{Q}_{k-1}) \\quad(3)\n", - "$$\n", - "$$\n", - "y_k = \\mathbf{H} \\, \\mathbf{f}(t_k) + \\epsilon_k , \\quad \\epsilon_k \\sim \\mathcal{N}(0, \\sigma^2_{noise}) \\quad(4).\n", - "$$\n", - "where $\\mathbf{A}_k = \\exp{(\\mathbf{F}\\,\\Delta t_k)}$, with $\\Delta t_k = t_{k+1} - t_k$, is called the discrete-time state transition matrix, and $\\mathbf{Q}_k$ the process noise covariance matrix. For the computation of $\\mathbf{Q}_k$, we will come back later. According to Arno Solin and Jouni Hartikainen's dissertation, the GP regression problem amounts to the inference problem of the above state-space model, and this can be solved by RTS-smoothing. The state-space model starts from the initial state $f_0 \\sim \\mathcal{N}(\\mathbf{0},\\, \\mathbf{P}_0)$. For stationary covariance function, the SDE has a stationary state $f_\\infty \\sim \\mathcal{N}(\\mathbf{0},\\, \\mathbf{P}_\\infty)$, where $\\mathbf{P}_\\infty$ is the solution to\n", - "$$\n", - "\\frac{d\\mathbf{P}_\\infty}{dt} = \\mathbf{F} \\mathbf{P}_\\infty + \\mathbf{P}_\\infty \\mathbf{F}^T + \\mathbf{L} \\mathbf{Q}_c \\mathbf{L}^T = 0 \\quad (\\mathrm{Lyapunov \\, equation}) \\quad (5).\n", - "$$ \n", - "With this stationary condition, the process noise covariance $\\mathbf{Q}_k$ is computed as follows\n", - "$$\n", - "\\mathbf{Q}_k = \\mathbf{P}_\\infty - \\mathbf{A}_k \\mathbf{P}_\\infty \\mathbf{A}_k^T \\quad (6)\n", - "$$\n", - "\n", - "### Covariance function: Matern-3/2\n", - "The Matern is a stationary covariance function and defined as follows\n", - "$$\n", - "k(\\tau) = \\sigma^2 \\frac{2^{1-\\nu}}{\\Gamma(\\nu)} \\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)^\\nu K_\\nu\\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)\n", - "$$\n", - "where \n", - "$$ \\sigma^2: \\text{the magnitude scale hyperparameter}\\\\\n", - "l: \\text{the characteristic length-scale}\\\\\n", - "\\nu: \\text{the smoothness hyperparameter}\\\\\n", - "K_\\nu(.): \\text{the modified Bessel function of the second kind}.\n", - "$$\n", - "When we say the Matern-3/2, we mean $\\nu=3/2$. For one-dimensional problem the SDE representation of the GP is defined by the matrices $\\mathbf{F}, \\, \\mathbf{L}, \\, \\mathbf{Q}_c, \\, \\mathbf{P}_0$ and $\\mathbf{H}$. For the Matern-3/2, they are computed as follows\n", - "$$\n", - "\\mathbf{F} = \\begin{pmatrix}\n", - "0 & 1\\\\\n", - "-\\lambda^2 & -2\\lambda\n", - "\\end{pmatrix} ,\\quad \\quad \\mathbf{L} = \\begin{pmatrix}\n", - "0 \\\\ 1\n", - "\\end{pmatrix}, \\quad \\quad \\mathbf{P}_\\infty = \\begin{pmatrix}\n", - "\\sigma^2 & 0 \\\\ 0 & \\lambda^2\\sigma^2\n", - "\\end{pmatrix} ,\\quad \\quad \\mathbf{H} = \\begin{pmatrix}\n", - "1 & 0\n", - "\\end{pmatrix}, \\quad \\quad Q_c = 4\\lambda^3\\sigma^2\n", - "$$ \n", - "where $\\lambda = \\frac{\\sqrt{3}}{l} $. From these matrices, we can define $\\mathbf{A}_k$ and $\\mathbf{Q}_k$ in the state-space model. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Create regression model" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "@model function gp_regression(n, P∞, A, Q, H)\n", - " f_0 ~ MvNormalMeanCovariance([0.,0.], P∞)\n", - " f = randomvar(n)\n", - " y = datavar(Float64, n) where { allow_missing = true }\n", - " \n", - " f_prev = f_0\n", - "\n", - " for i=1:n\n", - " f[i] ~ MvNormalMeanCovariance(A[i] * f_prev, Q[i])\n", - " y[i] ~ NormalMeanVariance(dot(H , f[i]), 0.04)\n", - " f_prev = f[i]\n", - " end\n", - " return f, y\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "@rule MvNormalMeanCovariance(:μ, Marginalisation) (m_out::Missing, q_Σ::PointMass, ) = missing\n", - "\n", - "@rule typeof(*)(:in, Marginalisation) (m_out::Missing, m_A::PointMass, meta::TinyCorrection) = missing\n", - "\n", - "@rule NormalMeanVariance(:μ, Marginalisation) (q_out::Missing, q_v::PointMass) = missing\n", - "\n", - "@rule typeof(dot)(:in2, Marginalisation) (m_out::Missing, m_in1::PointMass, meta::TinyCorrection) = missing" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Generate data" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "#generate data\n", - "Random.seed!(10)\n", - "n = 100\n", - "\n", - "t = collect(range(0, 5, length=n)); #timeline\n", - "f_true = 2*sin.(t) .+ cos.(2*t); # true process\n", - "f_noisy = f_true + sqrt(0.04)*randn(n); #noisy process\n", - "\n", - "pos = sort(randperm(75)[1:2:75]); \n", - "t_obser = t[pos]; # time where we observe data\n", - "\n", - "y_data = Array{Union{Float64,Missing}}(missing, n)\n", - "for i in pos \n", - " y_data[i] = f_noisy[i]\n", - "end\n", - "\n", - "θ = [1., 1.]; # store [l, σ²]\n", - "λ = sqrt(3)/θ[1];\n", - "Δt = [t[1]]; # time difference\n", - "append!(Δt, t[2:end] - t[1:end-1]);\n", - "\n", - "#### compute matrices for the state-space model ######\n", - "L = [0., 1.];\n", - "H = [1., 0.];\n", - "F = [0. 1.; -λ^2 -2λ]\n", - "P∞ = [θ[2] 0.; 0. (λ^2*θ[2]) ]\n", - "A = [exp(F * i) for i in Δt]; \n", - "Q = [P∞ - i*P∞*i' for i in A];" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Inference results:\n", - "-----------------------------------------\n", - "f = Vector{AbstractMvNormal}[[MvNormalWeightedMeanPrecision(\n", - "xi: [39.166220122121516...\n", - "f_0 = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "result = inference(\n", - " model = Model(gp_regression, n, P∞, A, Q, H),\n", - " data = (y = y_data,)\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOydd0AURxvG39nrnc7RexcRUZDYjWDD3mOBqNHEFI1JjCYxlhgTE03UFBN7izHW2D47KtgbFnqT3o8Djut3O98fa04E7CCo+/vrbpmdnR3u7tmZeed5EcYYaGhoaGhoXleIlm4ADQ0NDQ1NS0ILIQ0NDQ3Naw0thDQ0NDQ0rzW0ENLQ0NDQvNbQQkhDQ0ND81pDCyENDQ0NzWsNLYQ0NDQ0NK81zOevora29vDhw1euXMEY9+rVKyoq6vnrpKGhoaGheTE0wYhw69atGzZssLOzc3R0fPfdd+fPn//8ddLQ0NDQ0LwY0PM7y+j1ehaLRb3+999/P/jgg4KCguduGA0NDQ0NzYugCUaEJhUEgOrqajMzs4eVLC4uLioqevKajUbjc7XsdYXut2eD7rdng+63Z4Put2ejOfqtCdYITchksnnz5n3//fcPK7B+/frt27f7+flRb/39/efOnfuICmtra4VCYRO28DWB7rdng+63Z4Put2eD7rdn42n7jcvlEsRjhnxNJoQ1NTX9+/cfNWrUW2+99Yhifn5+o0aNol7b2NhwOJxHFNbpdI8uQNModL89G3S/PRt0vz0bdL89G0/bbwihx5ZpGiGsra3t379/hw4dfvzxx0eX9Pf3Hz169BNWy2AwGAzGc7futYPut2eD7rdng+63Z4Put2ejOfqtCdYIVSrVoEGDfHx8fvnllyfRXhoaGhoamtZDE4wIf//99zNnzlRVVYWGhlJHLl++TD/p0NDQ0NC8FDSBEI4fP75nz551jzx2ZZKGhoaGhqaV0ARCKJVKpVLp89fz+qBQKOLi4mpra8PDw52dnVu6OTQ0NDSvNU25fYLmSTh3/vz4dybw24gxB9TfKaaOn/LFp4/aQ0JDQ0ND06zQQvhCIUly4tRou/c92WZcAIA+eO2q9f1792vXrl1LN42GhobmNYVezHuhpKWlse1591QQABDidZQcPXG0RRtFQ0ND81pDC+ELhSAIIOubuxIEHWFLQ0ND02LQU6NPhEKhuHXrFo/Ha9u2bV1v1cdiIHG1Dqp1UKMHHgPsXT31JRqtXMMx5wIAYKy+Ut1namRztZuGpnWwZMmSmzdvtnQrWhdGo5HeZvZULFy40OTQ2bTQQvh4tv391xeLvhT6mGEtaSjU7tr6T7ugxyzpZSvwpVJcrIJaA9TL7zHky61/LRwnbiMmeKC5UzM95t2goKDmbD4NTcvz77//Dhs2zMPDo6UbQvOysmzZstTUVFoIW4asrKwvv5vnMjuAYDMAQFOmGjl+VOrNlEYf5TBAehWOL8EFyocmtxL5hE5al5B/64Jepej7YfjIEKdmbD0NTavhzTff7NixY0u3guZl5e+//26+ymkhfAzHThznh5lRKggAXBs+Q8pJS0vz9/evV/KmDMcVk5Xax9fJ5gs9wiMBIAfgl0RjZynqZEOw6OVaGhoampaAFsLHoFIrEesBA1WCTajV6rpHdCQcyCET5c+S4lhjhFOF+EqZMcKBaGtJO7XS0NDQvGjoYchj6NW9lyahBv7TOINKX5tV3aZNG1MBmQbWpRqfTQVNKPSwN4c8mEsan6saGhoaGpqnhh4RPob27duP7D181697OO1EWI9Vl+SrflhhyoaVVo333SU1TZQw+XoFLteQI92RiEUPDWloaGheELQQPp6l33w/ftS402dO83i8qMVRdnZ2AIABThbiC6X1YkKfl7xavDYVRrmDo4DWQhoaGpoXAS2ET0RgYGBgYKDpLQY4mEveqGiWecwaHd6UDgOcIZheMqShoaFpfug1wqcGY/y/PNxMKkhhIPH+HDK+hF4wpKFpdqqrq+fMmXP+/PkXfN2PP/74t99+e54aMjMzMzIynrz8kSNHoqKinueKryr0iPDpwBj/Lx9fLX+MRGGAIiWUabFcA3IdyHW4SgtsAlnzwIYLNjyw5iIbLhCPHPKdKiRJTHS3o8eFNDTNyI4dO/7444+EhIRjx469yOtGRUWZm5s/Tw0bNmwwGAw//PDDE5bX6/UKheJ5rviqQgvhU4AxPlIAj1ZBtRFuVeLrFQAAjgIwZ4OXGMw5hDkbdCQuU0OZBtKqIb6EVBsg3AZ1sELsh7ssnS4i9STR24HWQhqa5mLDhg2rVq368MMP8/LyqPyg5eXlp06dCgkJ2b59u7m5+cSJE83MzADg+PHjTk5ON27cSE1N7dmzZ69evQBALpcfPny4e/fuW7du9fLyGjlyZEpKyoEDBwBg0KBBfn5+Op1uy5YtgwYNsrGxAYDTp08TBNG9e3cWi8VkMuG/gZ1UKt27d6+jo+OkSZNKSkq2bNnC5XKnTp0qEokAICMj4+jRo8XFxe7u7uPHj+dyubm5uQkJCSRJrlmzxsHBYcCAAQAQHx9/9uxZoVA4duxYW1tb6gYvXLhw7NgxFxcX6i7qcffu3cTERCcnJ+rqEydO5HK5ALBv377g4ODTp0+np6d/9913SqVy+/btBQUFISEhgwYNMp1+9uzZc+fOYYwjIyNDQ0OpDtm5c2dRUdEbb7zRp08fqtj58+dPnDhBkqSvr++YMWMIgkhNTd2zZ49KpXJzcxs9ejR1my0FPTX6pGCMj+TjK2XkwwrkK2FfLl6VRBarYKATet8PDXZG3aSorQVyEoCQBRYc5GuGuknRCFc03Y+Y6EUUq2FVChlfirUPjzs9V0KeKKTnSGlomoWkpKTMzMzRo0cPGjRoy5Yt1MGcnJzp06dPmTLFzs7uxo0bXbp00Wq1ALB69eqBAwfeuHHDzs7u7bff3rBhAwAUFxdPnz59/PjxHA6HzWafOXOmW7duJEmSJNm1a9czZ86w2eycnJwxY8YYjcY7d+6MHj2akqgtW7ZQY9DLly+/9957CxYssLW1Xbt27ZQpUyZPniyRSOLi4saMGUM1adOmTUql0svLKzY2NiIiotEgvSVLlsyYMcPa2lomk4WGhpaUlADAvn37RowYYWVllZWVNXduI6lPExIS3nvvvc8++8zZ2fnw4cP9+/enKl+yZElUVFRycrKlpaVGowkPDz99+rS9vf3ChQs/+OAD6tyvvvpq2rRpYrFYIpHs27cPAIqKijp06JCVleXo6Dh//vzFixcDQGxs7Pjx421sbNzc3M6cOaPRaHJycnr06MFms319fdPS0vLy8pr23/q00CPCJ+VEIVx5yFiw1gD/y8clagi1hr6OBO/JfHStuTDcFcm0EF8Cq5LJUGvUxRYxGhv7nS8hSUxEOgBC9NCQ5hUhtxZPiW+ijUdPwBAX4n3/Rp77N27cOGbMGA6HEx0dPXXq1C+//JL6llVXV2/atMnNzW3q1KmdOnXauXPnhAkTAKBTp07Lly8HAB8fn5iYmEmTJgGAQqFYv369p6cnAPTo0WP+/PmUVAgEggULFpw5c2bhwoW9evX66quv9uzZ8/PPP/v6+tZrhtFo3L17N4vF8vf37927d15enqOj47hx46ysrLRaLYfD+fbbb6mSMTExPj4+iYmJgYGBwcHBBoNh6tSpAFBaWrp06dKsrCwrKysAUCqVq1evXrhw4YIFC3755Zfhw4fDf8kDGnZCdXX17t27JRJJTEyMh4fHmTNnevbsCQDDhg1btGgRAKxfv57H423fvh0ABg8e7Obm9tlnnwHAihUr0tLSHBwcTFUtWbJk5MiR33//PQAMGTLEzc1t9uzZV65c6d69+/Tp0wHg7bffBoCkpCRnZ+dZs2a1EttxWgifiPgS8kJpIyqIAW5W4lNFuL0FGuaKmE+vU5YcNMQF5Do4VgDr08nhrsiS00gtF0tJjIm+tC/py0xeXt62v/8qryx/s1uvqAGve8yCFRd93vbF/Qg6CRs5qNfrt23btmLFiuzsbFdXV4VCcfbs2R49egAANXyhioWHh9+5c4d63alTJ9PBgoKCqqoqADA3N6dUEACSkpJ+/vln6nWXLl0oIWEwGNu2bfPw8Bg+fPi4ceMatsTf359Ka2NnZ2dpaeno6EhVy2azZTKZvb397t27Fy5cqNfr+Xx+cXFxQUFB3Th2AEhMTDQYDGPHjqXeFhYWtm3bliTJ1NTUum1uVAj9/PwkEgkAMJnMjh07JiYmUkJo8oZNSkrq3Lkz9VoqlXp4eCQnJxuNRk9Pz7oqCADXr19XKpXXr1+n3up0ury8vJEjR0ZGRnp5eUVFRU2cODE4OLh79+5MJtPBwSEqKmr06NERERGN/HteILQQPp6bMhxb1MjxKh0+mIdVBhjnTtjxn+sS5mw0xh1uVcKGdNzNFsJsGtHCS2UkAOrrRM9mv5QcPXZ06ifvCrtZMkXs//1+/Pd1qw/vPfQ6D/EFTGjxxe/Dhw8rFIovv/ySeksQxMaNGykh1Gg0pmJqtZrSCeo19UKj0RAEQS2nmRw2AIDH45nKqNVqPv/eT8OWLVvc3d3PnTtXUVFBDdrqUndgVPc1QghjrFAoYmJibty44e3tDQBt2rQxGusPpnk8npWV1c6dO01HWCwWQRAcDqduexrth3o3a2qz6b74fL5MJqtXxmg0qlSqhs2IiYkZNWqU6YhYLGYwGBkZGdeuXduzZ0+3bt3Onz/ftm3bCxcupKSk/PvvvxMmTFi1alXdU1489K/qY0itwgdyyYYz8jdleG0a9hSjqb7Pq4ImgixQjBdxoxLvzsGNutVcKsPHCh66SEnTmnnv4/cdP/S17uxg3tZa+pZ7pjF3z549Ld2o150NGzZ8/vnnWf9x9uzZXbt2UYO8qqqqI0eOAEBNTQ0VC0Odsnv3br1eDwDbt28PCwujhLAu3bt337ZtG/V68+bNlKzGx8evXLny+PHjY8aMmThx4tPacMjlcoQQNUy8cuVKSkoKdVwikZj0KSgoyGAwXLhwwdzc3NzcXCKRUOua3bp1o/I2kCS5Y8eORutPSkq6ffs2ABQVFZ07d65Lly4Nb+rgwYNUz8THx1dWVrZr1y4kJEQulx8/fpwqQ12uX79+O3bs4PP5VDMMBgODwaioqCAIIjQ0dOnSpYGBgenp6ZWVlUaj0c/Pb+7cuYMGDUpOTn6qDmly6BHho7irwLvvkvVSymOA08U4SQ6TvBufxnwerLnwjg9xohD/mYZHuaKGEnuxFCPAkY6v70jiZaSgoIBlyWYJ2aYjvLaSE3EnR4wY0YKtes0pLS09evTosmXLTEd8fX19fX13794dFBTk6Oj4008//fbbb4mJiVFRUdRUIQDY2dmFhYXZ2Njcvn374MGDDav97rvvBg4c+MYbb2CMNRrNwYMH5XL5xIkT161b5+zs/N1333Xr1u2nn3765JNPnrypTk5OkZGRHTp08PDwqKqqCggIoI4PGzasd+/egYGBXbp0Wb169d9//x0dHb1s2TKhUJiYmLh48eJx48YtW7asT58+cXFxcrnc1dW1vLy8Yf1t2rSZOnWqjY3N1atXZ8+e7ePjU69ARETEyJEj27Zt26ZNmxs3bqxdu5YaIm/dujUmJiYgIIAaeh44cGDmzJnJyck+Pj7BwcGlpaUajebGjRsrV67cuXOnv79/eXk5QRB9+vQ5dOjQ7Nmzg4ODtVptTk7OC9640hDUxBZhj2Tx4sVarfabb755wvIKhaIFY2oLlXhLBtY+aINtwLA/F1fr8Bh3gt+cTxEpVfhQPh7ojHwljWheNzuil/1DtbBl++3lpfn6rba2NqhHsOPH93OKVlwrGWbW55v5T/pdaM08Sb+Fhob+9ttvrSofoV6vVyqV9XYUUHN9SUlJY8eOTU9PT0hIsLCwMC0WDh06dODAgVFRUbm5uQEBAdQUotForK2tNc2dUkfS09MBwNvbm8Fg6HS6upOrWq1Wq9WKxWKFQsFgMPh8vk6n0+l0QqGwYW1VVVVisZggCIxxYmKiXq8PCgpSqVRcLpdaUwSAmpoahBD1L9Dr9RkZGUql0tvb21SJRqNJTEy0t7e3trbWaDT1/ll79+795Zdfjh8/npCQ4ODgYFrzq6mp4fF4pqsAQElJSUFBgY+PT90atFptUlISk8kMCAgwTeqWl5dnZWVZWlp6enpS8/+FhYV5eXkWFhYmla2srExPTxcIBH5+ftQ2kkczbNiwCRMmDB06tDm+p/SIsHHyavH2zPoqqDbCP9mkgIkmehLMZp5U9jNDFhz0dzYuUeMe0vqaF1dM6kki0vFFLDElJiYeP3WCy+EO6NffxcWl+S/4CiIUCu3N7aqTZRJ/SwAgdcbaMxUjN49s6Xa91rBYrIb76kzLYwBAEERISEjDE21sbKgdgRQMBqOuClJH6iZSZ7PZbPb9yQAOh0OtvZl+zesWqFebqYUIIVN0TD0ZEIvFdW+qYapULpfboUMHU4GGd0Qdp3YBNlothVQqlUql9Q5yOJz27dvXO2htbW1tbV33SF2JpbCwsDBF8bQ4tBA2QlYN/icb6x5UQZkWb8+CAHPU0+4p5IeBkBkHW3CQJQdhgCodrtLiah08ScIKWx5M8oa/s3CNFgY4199ZcbGUrNahYa7NK8nzvvl628G/eR3EpJ5c+vsPS+YuHje2kZg3mseya+vOYW8NLzyVxhSx1Pm1i79e3LZt25ZuFKjVah6P19KtaHXY2dlNmzat4fGhQ4c2lJmXHW9vb1Os6WsLLYT1Sa3Cu+9iA1lfBTdnQE+7JzLCZhPgY4b8zJCUj8zY9XzU7r3RGHFeLVwqxdmKR01Ni1lokjfak4O3ZZKj3OvvUEyW41o9OcYD8Z9h38YTkJycvO3AducZ/lSryTfs5y76clDUIHre9RmQSqUXYs8XFRVVVVV5enrWHSK0CD+v+nnlH6sQm8A6/MmHsz5874OWbU+rwtHRkdonV4+JEye++MY0N23atKmbYPX1hBbCB7hTiffl1I+OqdTiLRnQyw7aPVIFWQTykkCAOfKWINbjRmlcBvKWgLcElarhUhl5pxLqSW+damG0GzpZBOvT8DgPMH8wPCevFm9Ig3GeyJzT6NnPRdy5eG478X/aDQSbIfQxu3nzZteuXZv+Yq80RgxFKpyrgFyVtIK0PZEOAPfmBFgEsuGCnQBJeSDlgeCFpKLcsGnDr//+6TQ7gGARpM64YvMv5mbm41+/sX5WVhZJkl5eXi3dEJoWhhbC+1wrx4fz6stRtQ5vzYSu0kepIJeBOtmiTjaI+/T7g215MNiFeNMeXyyFS2VgbCx2CSGIcEBWXLw+HY9yQ84Pbg2u0OD1aeQYD9TkKQyFfAHoH2gP1pECgaBpr/IKQ2J8uxJuyXCBEusfuu0Fl6khUX6vn8VscBUhdxFyFyFxsw0af1n7qzTGjWARAECwGbaj3Vb+seo1FMKNGzdqNJq6gaM0rye0EAIAaI34cB6+XVlfhGr0eHMGvGEDoRZGi8pcYW0ZXy3jamt4qkq+Rs7UaxACCRvMeEwml6ciCI3InGFuwxBbMM2tGRJrhrk1PNl6opCFIhxRoAUcyCOLlI0PDYMtkYSNduaQfR1QG/MHqq3V4w1pEGaDe9ohdqMubc9Ez549v/x+nrGrHYPLBACtTK3LU5lCt2keAQZIluPTRWSF5vGF61Kjg9syfFuGAcCah9xFyEkA9gKwqDMTYKypNMpKDJWlhsoSskpGalXYoMc6LTbosV5HcLgEX0jwRQRfhPgiprk1y8GDaWlX96NYU1Mj5jua3rJE7HK5/Hnv+WUjMzPzwoULBoNh6dKlzs7OY8eO/f333/v167d37165XD537tzVq1d/+umnVOF//vknKCiIskbLy8vbsWOHTCbr1auXyVTaxJUrV2QyGULo+PHjvr6+kyZNokIiV65cOWTIkJ07d6pUqvnz5xcXF2/dulUmk3Xr1o3yywYAkiR37tx5/fp1gUAwZMiQdu3aAUB2dvauXbvkcnlkZCRl840x3rt37/nz5xkMRseOHamt6GfPnj1y5IhOp/P29p40aVKLz72/XNBCCIVKvOcurtTWlx+mLE+enL7CmB6Ym2FWnacQ2taI7VU8Sw1HXGnpUcS18LLmtrFAHAZgoxFr1Zg0kgq5QV6uy001VsmM8lKsUbEcPViOXmwHD5aTJ8vW+dG6KOXDFB/iYil5phj0jc2UuotgogfxV1JVSu4pH57aMbCThZMnAGCSrK2WXcTWKXI8wJmQNlH4jIODw4pvf/p47iy+hxgbsL5A/c/mHXVNNGgaJa0Kny7GJarn3ZhUrsblanwZY7OaAgd5hnNVumV5OqfiLnAFpJktaWaLzKXYzEXH4mkRW8vgaIClRkyDVkeqFEhdoy2UZaee52vl4QKdGamskjhXW7jJrb3U7h0l9h61OdVC13vRiYpsua9PfffLVx4Wi8Xj8fR6vbm5ObXsvWTJkjVr1owZM8bDw0OhUHz11VcmIVy/fv2UKVN8fX1v374dFRX1/vvvt2nTZs6cOenp6R9++GHdauPi4lauXNm1a9cBAwZs3LgxLi6O2l+/aNGirVu3jh492tXVtaioqH379hMnTvTz8/vkk09u3rxJudsMHz68qqoqJiZGpVKdPXu2Xbt2V69eHT58+IwZM/z8/GbMmDFz5szJkyf/+eefGzZs+Pjjj41G47Vr10aNGhUfHx8dHT1//nwej0eZnNFC+FS81kKIAS6U4thCXHdC0kqW6Zp33iX3nFpnyLUMQPZel616VJh7GJj3BcCSC8PdCHv+Y8ZepEqhL8jU5Wdqkq/UHN9OqhQcryCuT3uOT3umhW2jpxAIOksJP3M4kEvmNBZHo049x/gxWtne7DYPndtd4xc+Wq9Vpcbt5ZjzdHJt+FufVQ1515NHDPHCwqZYbRo6eGifiD537txhsViBgYEPi72moVAZ8N67OLOmCfbmihXFjkXXHAuvS8uSNVxxuaV3vpV3QrtuMnN3PbO+m8kDcAEkkHH+8NFfvhH7SQCDIrV64EcrQj3dLaru2hYlBl7b/LWP1bQ1J21GuApcxLU5NeUHS77dsVFtAN4L/D0wyIorNy15YZfjBXcX9XrAvsDFxSU4OFij0VCm1RTvv//+O++8AwBU6oaGfP3117Nnz6Y8tUNDQ3v06FFPCAGAx+Nt27aNIIioqCgnJ6fMzEzKiXTmzJnjx48HgDlz5vTu3ZvKI9i+ffvw8PBZs2ZdunTp6tWrmZmZdd1qvvzyywULFlDW3m3bth0xYsTkyZMTEhIiIyPrhnreunUrODh44sSJDAbDlLCC5sl5fYWwRIWPF9wP2pTUFPpmHHXLO28kmOmOnd93/Izj5NXZthEtaW+F+jo+0QwkwRdxvIM53sHUW2O1TJt2Q5OWUPO/LYjL5/p35Lfrynb1bzhMtOBAtDdxoYSMLcJ1N3Fgkjy49G2fWT5sCQcAHCLg5tfrzAOtAxcGAUKkznj9zxViKyddaER+EtnGHLWzRE7C55VDPp8fFhb2nJW8pCgUimvXrjGZzJCQkLo7zBqlSIV3ZuOqBlMLTw6BjXbFt5wLrzoWXWcZNAV2IRmeveM6z9Jw6u/oejSqqopjv87wne3L5LMAwFCrP7h8pnTt9VIb/xTvAQQmbcqSf3QMOnpoW/bRIne3gCE/rrsMbldvkw4CaGuBAi2eZbX7aWGILc1GfdTslzFdTtRIKr6GNNwSV4+bN2+mpqZu2rQJADDGJSUlDfd3h4SEEAQBABKJxNvbOyUlhRJCU+UpKSkmm+mgoCCE0N27d2/fvt3Qs+3mzZv5+fm///47ABiNxpycHL1eP3Xq1KFDh+7cubN///7vvPNOQEDA8OHD169f7+Tk1L9//wkTJpgM4WiekNdRCPNq8bkSnFEDlKuObVly2+S9NuUpaV59jvf4Ol/oujkTB1pAQxXkMtAAZxRo8YzSwpBY8kMj+KERgLG+6K466bJ816+kSsEL6spv15Xt6ldXERFAZynhJsJ7ckjZf+tMlfkZPDsepYJUIaNe4zzCnTqRYDOcRjrfOPSHa2iE1gjXK/D1CmzFRW0sUDsLMGtqN7hXnr37930852OBnxmQoE6v2fD7+p49ej6s8C0ZPpSHG53QfiwIY9vyZI+cs6655xUi21zHTrHd5sjM3J5wgbkh+bcvStqZUSoIAEwhSxwgKUy66h7WGwBIRJTYtgHbNt5vfhJWneefesj9wqIC+/bJvoPyrX3za/GxAuQjgRBr5CZsxsxfiMVmO7V8uGY9ay3TjCKTyTQajRhjqgeUSiV1XCgULlq0yOS4Rh2pV6epMPXaVMBUuUgkMpXR6XRarVYkElFeM/WqEgqFP/30U92N59RjWU5OzrVr13bu3BkeHp6enm5nZ5eQkJCSkrJ3797BgwcfPnzYlCyC5kl4jYTQQOIkOVwoJUvVAAAEJt3yLgQm7WHrlYl+g093+czA5Cj1sDmTbGOOujZQQQcBGu2OxOym+F1AiOXgznJwF0eONZTmq27Gy3euIjUqQVikIDSSYXHftMJegKb5EkcL8I0KDAAEg9kwqhTV2ajINuPUVjwwpVOhwWeKcFwxchJiTzF4ipGUR+c1fDwlJSUffznL6VN/KlBIX6N7e/rkxCu3G/7q6Ul8OA/flD2LBJpV53tnnXC/G6dj87Pdehzot1whrO/c8QwY9TriwW82wUQGnbZhSbnE+XzY9Kvto70zT3S78JOexUto+1auY1iSHJLk2JILnW2JdpZAvKIfGHNz84elhLW0tBQIBDdu3AgJCUlNTb1x4wZ1PCoqatOmTVFRUZSqFRYWmpub1zs3NjY2Pz/fycnp0qVLpaWlDUeZvXr1WrVq1UcffcTj8TZt2uTl5eXg4NCrV6+ZM2cmJCQEBwcDgFKpFAgE1OUiIiKoiBvqcoWFhQ4ODqGhoe3bt//rr7+Ki4sxxra2tn5+fl9++eWpU6eysrJoIXwqXn0hlGtxZg3OrIa7tWAyi7ErvRN+9Q89k3czcFSeYydMPfQZYHMmbmOOujWwNHMRobc8CE4zzBcxbZ3Efd4S93lLX5yjvHS09KcP2Y6egk59uYHhiAnP46wAACAASURBVMEEADYDDXJBHmJ8KA9jB3dduUFTruJa8wEAk5jUg7pUybO9t6Wh6o7MIaCRaUwS41wF5CrgVCEWsZCnBHtLkKcYWMSr+QP3/MTFxwnamVEqCAAsMZvvI7px40a3bt3qFlMb8LZMXPiQQN+HwTDq3PLO+2QcldQUpXv0PtZ7kVzi3GRNB3AK7BS7scqurwNiEABA6kn5bbnD1If6fOpYgkS/IUm+g50Lr3RI2Nwmed/lkCkVlp4yDRzIJS+WwpsOhK/ZK/hRGTFixIYNG1xdXTt37vzXX3/V/RNCaNGiRZGRkQEBASKRiArgBICvv/566tSpHh4e/v7+hYWF7u7uBw4cqFdtWFjY4MGDLSwsbt68+ccff9QzYAOA6Ojos2fP+vr6Ojs75+Xl7dy5kyAIFxeXNWvW9O3b18/PT6VSderUadWqVYsXL54yZYqHh4evr29+fn7btm137Ngxb968c+fOeXl5ZWdnR0REBAUF/fzzzytXrgwICCgvL+fz+UOGDGm+TnsleQVNtzHGlVooVEKhCrJq6sevi2rLOt5YbyPLuBwy6a7z/WwjCj3e+hAVdBehMR5NuS3hUY036NW3zysvHdUX5Qg69RF2Gcgwu5e6rFoHe3PIS9du7Jk/WuQrJLioOrHaJ2xoyrnd9oOkPFtBVWZN2enqd9dcYPBETxIzxmYgLzH4mSFvM8Sm83E9+Hnbtm3btyeW20TeT4Vcvi9v5bQf62YQVRnw1gyyuH5GtvpgAJkGF6qgUAVIVhhVfGSw/HQq32O/bd+LFh2ZDKYND9nzwY5X3y3hebi2b/XlfcstOplhEiovVXUZ+2W7AW8DgBHDoz/IBCa9M4+3v739jN5ydxVTzxJ4dx5s5xvsLEQRjsipsb2qL6nptgmtVqvT6UQiUXV1tVAorJsOsKysrKKiwtfXV6VS1XUEra6uzs3NtbW1tbWtH/W2bNmylJSU1atXp6Wlubm5maYQTPbZppIymayiosLT07PuFSnXbIFAUNfXt6qqKi8vz87OzmTgWVpaWlxcbG9vb3I9lcvl+fn5ZmZmzs5N+VDVemhW0+1XQQgxxlU6VKLGxSpcpIJCJagNjdwU06Btm7zHP/Vgku/AOwEjDIz7UlGqhr+zcUdr6NwgI663BI1yb3aL7YYYKopr4w+orp3ieLcTdRvCdvMHABLj+BI4lavKu3VJp1ba+4cILaU1ZQVXdq+qLMoUuXXIC5nOF4ojpQZb4VMETzMJ8JagUGvkKnoFn/qfnLqft5ycnB5DejnPCqA8XkmdMffHpFvnE0zzYEo93pJxb5r9YRSp4GIZzqjBfCYaoLs1pvSAZ3VasmefW66RMoGtzoj0JKiNuFQNRSooVoGOxHZ8cBQgJwFyFADvWWcgtEYo10Bu7t27V06pjYgIiNBJHFUGUBkBY2ASwGUiHoG5TOAzkZMAXIXIjg91//fn13+dcnGrpIcUAGTxlW26xHSZMBcA2lmi/k71HwpfdiFsWighXL9+fUs35FWDzj5RnxodyLRYpoEyNS7VQIkKax/nYW0ty+gZ/0OFpee/Uatq+Q/YomfVwL48sp8DCvhvl7pOpbiy+5fC1CtuLm7jPp/JJNyb6UYeAdPKzmzoNEn/icorJyq3Lye4AmGPofzgbt3tGO5i/h5BjyrdvZJiG8fe03+gXmOAy+V4Szajkw3uZPN4pzcKAwnJcpwsx1I+hFkTgRboxQt/a8PV1XXmlI9W/LSKFyIBElTXqr6b961JBWv1sCUDlz1EBTFARjVcKCOrdKiLlX6WPq59+r8M0pjoO3iX+xzqCczyfnHk89/MmcqAilRQoMKXyshCJYjYyElwb6RowcZmHNRwJhtjqNbjCg2SaXCFFmRaXKFFWgO24oKN0NWt/2QJC4QsxGcAnwk8JjAQUOqrMRBqIygNOLcW9ueSNXpwFiI3EQRIwFiReyv+b7/Pg6hoHcv2tre/W9s2crzY1ummDBcq8SgPhvUjd3C8zoSGhrq6urZ0K2iejlYthDIt3FFhjRFrjaA1gpaEKi2WaUD3NEnaEcZtk3a1Sdl/Iey9unOhFDdk+HQRHu1OOP1nHKZRVG149w2LrkJRb0l+2ZVeA3v+s/7vN8LfaKJ7ejoQhyfsOkjYZaAm5aoidnfN4U3CnsMdw/q8688+nIfvNLDCQQCdrJEn33imnPg5kQw0Rx2swZr7qHEeadBnnD8iL8q29QzCHXrsV5Eni1AHK+hs+4Jmg1stMz+YOXjA4JOnTrKYrIjFEaYkMgo9bE43NmoZgwFuV+JzpcAicC8LzdCyI4Hn9leau14JnlRoF/zYKFA+E6iAJgCEAcrUkFeLyzSQVk1W6lCNnhQxEY+JAUBjQEYMOowNRhCwkCWHtOQiay74mhFWHCx55Ew3iwAWgcT3QkqRvxkAIKUecpU4q0q/uphpeeeKKFBsai0ikIW/gDjxB4xbDAiVa2BtKtnfCT3aerfJ2b9//5q1a65cu6rTal3dXIcPGf7hhx82DFRpceqtItO8FLRqISxQESfLn0b0GiBQybqfX46wcf+AFfUGghggtggnV8PbXsiizuPtua1LrHqLrcPtAIBvLxQ4i9+dOf325ZvP04znBSGufyjXP1SXm6o4tavm2HZh14FDuwz0MRMdzsMN54HFLBjhimr0cKMCtmaCBYfsYIV8zVDDHBW1spKtM3oL/FhsW2bKvk1oo3jCihPpSbfj0hL+ktrPGNUn0Pa1fvJ3c3N7Z8o7dY/U6mFT+v0NLXWp0uGDeVhrhFE2Nf3yDvre+l+hffujvRZVmrs+w6URgC0PbHnov3dAYlSlw1ojAQBcJmYgYCOCyQAmAnhgXvNZ9KniTvy5X2fodQqunjTYBWKLB/6q0zG9ajLbnZoX98ZMJd9KZ8T/5uDcWtTfiXjCWYfnwWAwjJ84YfeuXVah9hYD7Qk2o6pQ8eOvy/5Y88fxo8efM3PCrVu3Vq5cmZaWZmlpOWTIkJiYGGoZ7+OPPxaJRIsWLWqim3hSsrOzS0tLw8PDqbe9e/eeNm3ayJF06srmpVUL4XPikn+py6Vfk/yibgeMItED31fqN8uAYbJX/UTzBcmX7Cbc/xngWHCLa6tN24laFraLr+WkeYbyQkXs7pIlU5zCIqd1Hn6gUpLdmJWJmIV62EE3KaRVw7UKfCgPOwvBQ4w8xWD5X1DGoR+n2Y2wkPhaAgB0geIThWsmd2BZYb43NzmV3P/rZ1+vORId7t40m0aagfLy8t/++C0lI7V92+Dp06Y3d34ojRG2ZhgbqiDGcLUCny3BgyTlMSX7PG+eyXbrtr//z02yF8IEgeo6jjblf6QyL+Pg8hjP9705Fi6AoeDg3dL4Qm1vG44FFwC0MnVNqjL/07W22UeG/G9mbNc5xbZtACChApeqyfGezf7ZmPf11/sP/dt23hsij/ub4p0GeaX/frNPvz7pqenPbAQfGxs7aNCgTz/9dNq0afn5+XPnzo2Li6M2y7cUJ0+ePHHixK5du6i3X375JbUZn6ZZeWWFsF3iDt+M4yd6ziuz8ql7nFpFiy/BnW1QJ5tGFl1spHa6qor7m9YxMBCjNaigCaa1g/noGeK+4xWxu1TLpw4K6ZkeNPy4wsrQ2OCZQOBnhvzMkMYIdxU4UwEXywAB9hCBhxjKc1PaxNw30SZJHdtV7z7uXnLt2vbVP82Jrl0d19Meh1mjVtUJAJCRkdF7YISwlxXXR3AnLX1N+NqLsRfqpg5vWvQk/NVYdEylBu/Px/bakp3Vu3xSLqV59d09eLWa2+qm7B7BraObpf3vyR4gcBzkJrssy/41h23DMmKoKjGYT9omI8Q3A0eXW/v0ivv+etC4VO9+AFCkxJvTYZg9ar4HkKqqqp9+Wu72dkBdFQQABofh/V5Qwqdx69atmzFjxjPUTJLkO++8M2fOnK+++goAwsLCwsLCvLy8JkyY8Oabb1IFNm7ceOXKlZCQkEmTJlEjxdjY2P3792u1Wi8vr/fee4/yGzp06FBsbCyXy42JifH29gaAkydPcrncu3fvnjt3buTIkYWFhdHR0dR1U1NTL1++HB0dnZaWtmfPntzcXHt7+3feecfe3r68vPzYsWMZGRlLly41MzObNm1aSUmJnZ0ddWJCQsI///xjMBiioqJ69OgBAIWFhUeOHOnYseOGDRt4PN4HH3zg6OgIALm5uevWrSsrK7OyspowYQLlFU7zCFppUIRWq127bu3386af37pUVVXxVOcSpKH7hZ9d8i7t77u8ngqWqWF9GplWhSd7ozdsG1FBKR8ten+67N98o8YAAICh5EDO8EHDnutmmgeGxNJs6LvSL9YiNtdx44eTk37xw427I1JwGeBnhgY6oZkB6C0PsOLBDRlWGh4oU50mk/a8v2FA6CpRyIvUOv3RfCpZcTPdyjMy9aN3raNdrTrbC10l1j0cBf2sZ8/7vJmuZcTwTzZ59MDOLTN7rZnU/tiqmZoaOQAkyvHpO/nL8lZsTf6EFFntGrLmanD0y6WCACAvzuZYPpCnnmclmrgqdtisPSM/3fvZ9sSQkI5bM8kj+TjLqt2hPkvbpO4Pv/ongY0AUKrG27IJhb652nbmzBkSk9Zh9g3/xOAyzUKsDx85/Gw15+XlZWdnU86iFE5OTpGRkfv376febtiwgfJC27hx46xZswDg8uXLMTExnTp1ioqKUiqVNTU1ADB//vwlS5aEh4c7ODj06NEjPT0dAA4ePDh27Njr16/36NFDKpW+//77JvPS5cuXZ2RkAEBcXJxEIomKigKA0NBQhULBZrOtrKwEAoG7uzu1C2L9+vV37twBgPj4+IiICCcnp8DAwPHjx2/fvh0AcnJyPv/88/nz54eHh1dXV/fp04ckSZIku3Xrxufzhw8f7uzsnJ2d/Wz981rRGkeEtbW1Yd07kX5MjrtQU5Z4Y+qfY74/ZO3u/yTncnSK3me+1XJEhyOX1rXJVujwxXK4VYnftEfBlo0PbSy5MN4TCf16LSz+esF3CwkBU1ujGRo15LtFL84a+GkhhGaSgZNEb46sPftv130fd/AMO+41Kp9h9eizrLnImgudrNH+4C7lF1Otw+/thdLJ9dj4oNyRGCECAJLkuNZAjnEnXqQv86PJzc9xcr4/nJUEWF755WpzXIjEeO9dvPGXb1NvbnMa6cwSOVYmXNn4frcec3b1zdn/rfJ2it+gf7q9q2c9xoy0xWEgoHIcMol7EcUGEldowNG3U0b6FlMyCqPWqKvSCq3sTCeGWIG/OTpdjH9Pw8NdHNT9lveKX9rn1PzYrnO0HKFMizamGaO9GZJmSHhQXFzMtxA8bCmSY80rSCx4tpqzs7O5XG69jYCurq6FhYXUaz8/P8oXu2PHjl5eXgsXLkxJSfH29h46dCiXy6UETCaTLV++PDc319LSEgAqKyt///33FStWAEBQUBD1AgAiIyN37Ngxc+ZMtVq9e/fuixcvAgClwUqlskuXLufOnTt58uTQoUNDQkIqKysbLgp+//33s2fPfv/99wGAz+d//fXXb731FgBoNJqtW7eKRKKRI0daWFhQWwlLS0snTJhAjQ5pnoRW86tWh0XffYPCeDad7QBA4gMiD8mhH6e+vfrcY08UK4ojYxfkOYVdDX4b/yd2pWq4WIbTq3FbS/SeLyF8SPoEcw5M9CKojA3RE6KjJ0TL5XKJRFJ3A2yrheCLxP0mCHsMrY3bP+jop6X27eL8x1WJHB57Yr+Zq3Z8PjAzIYMr5dZkKZDQN/9kue/b9yyeq5IrLRx90H89kKvA69PIcZ6EeetIxMRmc7CBNG31MNTqLC0tHn3KM4AxPpyHE2WGhINr2ywIorYVWoXZ6iuUPtvfFo3+ZLffR3oW77H1tAgiFjgKkA0P2fDAhocsOdBwFkRPQpbjtP4R68rYRZIgC51cU7C3oHvMgnrFeAzo74h8JbA7hwy14ut7Lgi9vmHg0U+O9v6mkmVWqYWN6WS0V9N/NkQikV6le9hfDSqDWPSM/3RLS0utVqtSqeraqcvlctMWeMrqDACcnJzMzc2zsrKGDBmyefNmOzu7iIiI8ePHDxo0KDU1Va/Xm7ISVlZW+vvfe2QPCgoyVRsdHT1v3ryZM2fu27cvICCAmqs8cODArFmzxGKxpaVlYmJiUVHRI1qblpZmygnVsWPHzMxMo9FItY1aGmcwGFZWVjKZzMXF5ZNPPvH19Q0JCRk0aND06dN5vFb6+Ww9tEYhPHshTjz6/j4rvr1QWXX3sWdZyTL7nF5wPWh8qldfACAxZCvgUhlZpkGh1tDXgeA+/F7NORDT4Hm2FUZmPxqCJxT3GSfsPpR9cufwE7PLHdrF+46RS5wecQqbL5z4y+mKuylVxXnWk/wkUufDy99P/P6E0EesrtCDjBn908665Ss0eH0aOdYDOTTmMPKCGT963JZ//7Yb7gYIYSNZtjdvwZSvmvwqp4rgegWuKsrhO4hQnf0kfE+zI6meRNsRjziXwpyDbHkg5SNbHkh5SMQCtRHUBlAZsNoICj2UqHCRCsrU+Jksu+vDY4KrELmJwF1MWD1BzC+LAF8b/u3zl3/4+cezh+PMJdK+ny9he4U3WthdBFN90O4cnKcEZbspHYU2Ucfn/NtjgYbtXKXFm9LJyT6EuEnHhaGhoeoateJulcitkfQRtUnyNwZFPVvNXl5eXC739OnTpry4er0+Pj5+7ty51FuTBTZJkrW1tRKJxMzM7PTp0wUFBfv27XvnnXeYTKaTk5NQKLx69WrDFfS6OcsGDBjw7rvv3rp1a/PmzdRiIcZ40qRJx48fp5xI+/XrR5IkACDUuMmJRCKhZmIBoKamRiAQUH40jT6pf/vtt3Pnzj1x4sTy5ctTUlLWrVv3bF30+tAahdDSwqKiVs0S/fd9woDQY4ZlVrLMPrEL4sM/zLIPy6rGqVWQXo0tuNDBEgVaoEdvhzPnoBhvojlmdVoEgsvndh9uFTHaLP6AbezcSoc28b5jy8QujzjFys3Pyu1egMyAT36rLskrSb9dxrG7yg+OrUW9JQ9YnNTq8aZ0PNqd8JS0sBZ+8dncijkVu7/Zw7cWqMuV06e8N+Gt8U17iXMl5LkSDABiG0dtaU3dP2lKVFLnRwXuC1koyBIFW4JVg32cIgJELKgT+YkAQE/iEjUUKaFYhUvUuFyNjE/s+mTGQU4CcBIiJwFI+c8S1CQUChfNW2h6m1+LL5bhFHkjLRCxULQnii3Ga9JwpesgI8EaEjvvaMS3VWLHah3elmmc5ENwm24Hqre3d/eePe5sS/KfE1pvgrT4dK4it6puNsGngs/nz5gxY9asWb6+vh4eHkajcdasWQihcePGUQUOHDiwePFia2vrHTt22NnZubq65ufn29jYODo6fvjhh0eOHMnLy4uIiLC2tl6zZs20adMAQKvVlpWVOTnVf/pkMpljx4799ttvL1y4sHPnTgAgSZKy1QaApKSkM2fO9O/fHwAsLS1LSkoahqlHRESsXbs2KiqKwWCsXr06MjLyYfdVW1tbW1srlUqHDh0qk8lMAag0j6A1CuGU8ZM/WzHXYbIXZRlcdCzfM6zfI8pbyjIiTi1c3+aD/brQu3dIBwH4StCbdkj0BEH/ZmyI9kKvjAqaQByeqPdoYbfB4vOHLU9/pZD63mg7Np3v8SSOehKps0Tq7AMQaoTTJfi3FLKnFLW3vP/F1JOwI5sc60F4iFtSCwmCWPHDz8uW/FhaWmpnZ9fkk9jXyslTRQAANuVpwXe2J5vzb+3Pth/ohgikzKspPy0f+PtbjbQKIQ8xtLdC3hJgPI0ksQjkJAAnAVC6aMRQpsYlKqjSYbXh3iBSbQQjBiEThCwQsZCQBRI2OAiQqKnzJTsJkZMQVWrxyUKcLK//mSEQ9LZHLkLYkU1WO/bVtUH9Tnxx9M1v5GYuZWr4JwuP84TszIyjx48CQN/IvlQg5TOzcf2GsPCwxG8uOQ73NPO3IliEuri26GRO0YmcFT+veJ6QyMWLFwNAcHCwo6NjUVFRUFDQiRMnTFOj4eHhb775Jp/Pz8vL27VrF4PBOHbs2FdffeXl5VVTU2NhYTF27FgWi7V79+7o6OiVK1eamZnl5+cvXbqUWr2rx6RJkwIDA8eNG0d5cDMYjHnz5nXp0sXX19dgMHTt2pUqFhkZuWrVKmdnZ09Pz9OnT5tO/+KLL8aNG+fl5cXj8cRi8SPkTSaTderUyd7ens/nFxcXt+xukJeFVuo1unT50l/X/s6WCqtLlA6+bwyas57BekCslHooVkOBCgtK0pekfPON6wc5jmEuAvCUoCd3aJSwIcab0UpWvJqQel58WKdVXjyiOL2bsHOvCh+dLvHLqME1D112qU+pGg7nk1wGjHAl2HX6lkWgtzyR2ytkT1q331Kq8K5sLC2+GZT4j0RRcqvNyMMW3XatXsxN3MtApMTGue+MXxoGcLmLUF8nwubVWpFJr8aH83C1rpEfijIN/JWJ37AyjtWc73Rt3fFeCyss3AEg/8hvp/as5IVKAEB9tfrjyR/9tfmv5/EaLSoq+mjmR/v27iONJMEgSCPp7uWx/IdlTZJmQaPRFBQUSCQSk6W1CZ1OV1BQ4OzsTGVBAgCtVltQUCASiept1JHJZLW1tXZ2dk/id1/3rJqaGldX1yfcmySXy3U6XUOn73qQJFlUVGQ0Gh0cHEwtf9l5TU239Xr97vPJdxiubL4QADRGKFBCkQoXq6DoP3viboaMObe/ORv2UbFL6NM2xooLo11Ja0FTP0u3Ahr9oGCjQXXlhOLUToa5jaj3aIVL+4JaXKiCAiUuUwP5yI8BieFwAS5W4bHuSMSqk/6QgcZ5IhfhK6KFpn7LqCIvxF0OvLODrVPdChiR5dYjrZa5P48c5Uo4109HeA83Eert0CqWTpsDjRGfLMTXK+qnsQWAKh3ekoGDrdAE7aXOl3879uaiu0bu5o+7+c8NoGZ0sBHnLku0ZJr/+eefz2m6XVlZmZCQoFar3d3dTTEpNK8Jr6npNovF4tp7JuZwCspxgQqqddieDw581MYcIh3AnENYyTL6xH4T33lGscPTfbvUNZVnV71fnH51GYGklrbrfl37nC5NLwWIwRSE9xOERapunK3e9ydic33fHBHctgsgQkdCgRIny3GKvP7OQgoCwUAndK4U1qfDW+5gGvHojPivDDzei3B+VbQQSGPuxbOaE/8EEYxbgaNznDpjhFKq8OF88i0Pwr6x/RFSPkQ4tPAscXPDZaAoZ9TWAu/PxfWMdczYaIKb4Z88xp/CTjgMIk8v+J7fy6ytGaWCAIAYiB8o0SQ05kr3lFhYWFBb3WlompbWK4QAkFVL5NWCowBCbZAt74G5A1FtceTpRfHhH+Y9pQoCwJGFI8kgleuIQABQFdUOHDXoWvxVahvQqw/B4HfoxQ/pqU68pIjdXX1wo6jncH5ohLuI7S5C/Z1wbi0kPUQRu9giMzbekkUOcyHc/3sg05HwVyY53pNwesm1EGvVuguH8i4eKefa3AqZlG/fgTqeKMfHCvEET8K2wYQnA0EPe6JzY84MryTOQjTVlziQi5MeXDUUMHGMF7E9i1zF7cQNrHrj0C9nH/TFR7rGgxtpaFoJrfrT2cmKHOKCOlghKe8Ba0WutqbvyfkJbcfmOTaSjf0REAg6MItVumLL0HsmkHx7Iaej+H//+1/TtbqFUSgUS378rt+w/u98MDU1NbXxQgjxAsNtZiy3GPepJvV6yTfRNcf+ImurCITcRCjKmZjVlujrhDgNVlvbmKNRrsS+HPJWncQXWiNszcR3FS9ujr1pMVbLqg9uKF4UXZGdcajzF4cilppUMEmOjxfCRE/UUAVteWiKL9FV+rqoIAWHgUa6EwNdiHphoVwGTPAkFDr8I6evoPMw7fUC/X+r0HqFTpVczeW+1u7tNK2cVi2EjcI06iJOL7rr0jnFu/9TnchnwngvwlpTyLZ84DvJMGdl5WQ1aRtbjOrq6g5dOh4oPSbrrL0suhMxok9sbOwjyrPd/C0nf239wY/GalnJkimVfy3T5acDAAOhTjbEBwGMthb1LUadhRDjjU4Xw42K+8qnM+K/M8mcl00LdXeTK7d8X7r0XazXFkxcubndZ2UWXqa/plbho4V4vAeql8eKgVB3OzTVD9nxX5wGGgyGH39e5hvs597Gc8DwqKyslvzEhlihST6EGeeB22cRMEBUUqpQrXaePHPEuNzvruVuycnZkpP1U/raX9bRI0Ka1kyrnhptCMK4x7kfFCLptXYTn+IshIIsINKR4DPB2t9fkVVlRTqbnuQN2ZrQyKeOtWmdLF2+lPmG0KqLPQDwpAKBk/iDzz5Mvp706LOYNo7moz6SRL2tvHSscuO3hNhC2G0wL6iLiMUc5kZ0tMFH8qFIeV/kLDnobS+8OQMMgEOt/stmTMJfmeRYD8K91a+WYb1Odf107bkDWKsRdhkoGflBrIx/vhQD3A+lzayBQ/n4LY/6IaASNox2R/YvPCjmsy8+O5R+QjrDg2ARxVny3oMir569bGX1GC+95sNBgKb5or05ZEY1BoDUs/tOrp7NNmfrFNrrFoHcmeu3Ss2zSiuuBk2w8QoknV6tOFqaV46X7DGt07U1bJ0qLnzmY3OcmrDiomgvNMT1XrolkUgUMya6cEO6qkChKVeVH823Vpn17du3GRv9Arl47ZLI774hDlvCUepUev0TOSITfJGo1wjpVxtFb45UXjpaPH989b9r9KV5TgL0ji8RbvtAh0vYKNoLLpXBlfL7Aqkn4e8snNlYTqhWgr4wu2rv6uIF49V3LkqiJkm/WMfpOvhAKaWC98lSwL+5jUTHOAjQFF/ixaugwWDYfXCv/Qh3ake5yMOc21myaeumF9yMevCYMNYDdbAmyrOSTq3/zGe2j9cM74CvAl2DS+J/nrQ26PN2Vvyh2jtMNvdSGah1IB2cvgAAIABJREFUjUVh0dC0Dl6mEWFgyj67kluH+v5IEk/UbCYBXaVEZ1tgPriM883Xi0Lbd1y7db1SWTsmcuIH733wyszbODo4JVbWySSAgSBRXaunx0MQvMA3eIFvGCqKlZePVfw+l2EhFXTqE9muqwWHcyT/vg2YhI0meuDNmQDo/rhQT+IdWTDKHbxb2nemLqRKobp+Wnn5OKmsEYRG2HzyC9PCFgDK1XjXXbLswcxK2QrYl0uOca+vgv7maKjri8hD25DCwkKejaDuOjnXQXAnJbEFmvIgBEJRzrDl0l/SfjZM/r2PmVW4tORU4sECUtLhy4/iPq4wdz9dzSqvLOs3oB+LzQYSI4R4XHqMCK0ky+nLQmlp6eTJk5up8pdGCO1LbgUm7T3Q/ycd6/FJOIUs1N4KOlg91PZwYNTAgVEDm7iJrYDpk98dM30c/z0hk88CjEsO5g0eMPjZqmJa2UkGxEj6TdSkXFFeOla970933/bjfbvvZnVQwb2fPDMOivHCmzMAkzjMBgFAbUXxmY0Lfk++4uJo9+1nc3r17Nlk9/b0YJ1Wk3xFlRCnTbvB9e8oGTiJ6x1smku4KcP/y8c64wOnpFbhQwV4lCvh+OCnrIsUvWnfYr9ajo6O6pJaTGLTfL46r7ZdULuWaU0DUE0Ry+YBWwq2gBVpqdhWZGUTPm9C3NzZ+667zPQx9Xz5kfz3+787ZNAzfjJfGUwWazRPiKurazPV/HIIoVBV3uPcsjNdPqvl17d+qIeTEIVaI3/zx/iLvqqEdwr/6asfP5v3OWaDQaUbNnDYj9/+8Fw1EgQ3oBM3oBOpUqhvnydvHHorf0WOQ1i6U5ciaZCByZGwUbQX3pIJBoyD2RWbPuhmN9jGo4+TpkI9/tPJP376zbix45ro5p4UrNNqUq6obsZrU66z3fx47bqaj55B8O/vhNeRcDiPvCWrP4WbUEmcl8F4D0JaZ7jCQCjKGQVbteTnicFgxIyL+XvbLtvhrgweszpJZrhcO+mnt1uwSXXpGtb1VvxaU+Jcg1Kvrzb4ONkYhPjXYmcL3/Ecxlmu7f1ffElnm4Skm7NmftxC7W0tNMfGcJpnowmcZZRK5R9//HHt2rWKioq///77EQv4T+UsAwDn8pQny7kMoz7q2Oxsly53AoY3WoxA4ChAHmLwkSDpCwzka7UoFAqEkMkysWkx1sjl188WXL0gLssotQnId+yY79ChmCvdmklyDn0htDpj3eleHjujxpC1LCMnMZ3zQp5KDKX5mtRrmtTrurvJbFc/XrtuvLZvEPz6PzTp1fh4Aa7Q1P/Yny/F18rxBE9kUSdGlEmgke7IpxVM82KMN27e+Ova35RKZccOoT8s+t7evpFctS2CXC7vO7hfjYOG5y/W12iLD5dGTl3p3TUKAI4UYIVKU7XQx2teyP3yd8p7kWErfljRck1uFdBC+Gy0UmcZhUKRnJzcoUOHTz/9VKvVPn+F9Qi/+odCaHPHv36aeAsOuImQhxi5ixH3if1FXxOaSQUBgCE2t+o5RNB1yN9JCkb2DafCa8F3dmhZggibNlPTTovC7ufKYXCZBmRcc0c90Z/fTLbmhvJCXU6q9m6SJvUaAHB9OwjC+1tEf0FwG/GAuavApwrJxIy7GkW1lasPk3Nv3IcB/pePi1Q42t1oxr2/nsokYLQ78moFKggACKFJMZMmxUxq6YY0ApPJPB97btOWTafPn+FJbETfTpE4+1B/6uOANmZwjObe1YnlkjbWAIANZE1s2ehVo1u0yTQ0D9AEQiiVStevX19TU2PKG9mE+GQel5Yn7+/7E7XAYMlFLkJwFSFXIYifILkETTPBY8JbbYR/cbrGOXcBjC2r7kpLE9uZs+6WKrnW90QIkxh0RpmBvTbVONiFaAJFwdhQWWooy9cXZGlzUnW5KYjJ5rj5s139hN2HsGydqVJqtbpeJEaBEscW4puZeTu/Go65KqaAVXu3plvM10H9onUk7M3BBhJHexJgvB/ZyCJgrCfh/gpZijcrTCZzyqQpUyZNAYCMarwjC1M5pAgEw1zRure2lm8aVn3kOrIUV+epx0z+JLxT4/kOaWhahFa9RsguyeyQsPlwn6UcPi/UAgVboYap3WhaCi4DTfBGf2eSdxUgM3eXmbs7ved1/qsonq2Aa80n9WTh9tRRLhYTd4ysMncuFNlXWVh5OFoSIvOrGTlKEnUIDXNwckac+tGD2KDHOi2pqjHWyEmF3FgtI2urDBVF+tICQ3kBIZSwbJxY9m6C0N7mo/7f3n3HR1Wl/wN/zp3eUia9FyAhhN4xgPTeQRHbuqira1lXXdff6urud1HX3VUsCIKIBUVARaQjoPRepCQkoYSQ3uvMJJnJ3PP7I5GilJRJ7pTP+w9fk5k7Z57cDPPx3DnlaZn3dQvjbdqy+fmXnq/j1voa29SJ0555+X9ZtcqL1bxhEuS3r84OmKLz6hRGRKLVvn/+a0J4n52yxA4GGh8uCIyuDJxRCnRvRyEaKdginbzZ1Cham9n4pYuvkk3qErz9zwd+xw71//Ff555/pyaoc5aJu8/6tOD6HLb7RFVVlbe3d05OTlhY2M2Oee211/79739f2aYkKSlp1apVt2gz/YcNBerg0N79O+i5Ry1k1Uomk6ntLo3+ik3kay7LMkyNf56cMwd/XPzXispSTvK+Ex9Kmv1nlb3GrzLLy1SoqyktzUh548tlms7eTCc3nSy6Lzb0qcQwUqiYXE5EvNZCnDO5ghRKpjEwvY9g8BG8jEzrJRiDZAFhsoAwUtx006wzZ87c/diciD92VngpiVPupss+NHDMnxq/iKqpLFv50vD456/uXVdyND8jb9ykR17uZGj8J2C1WpVKpUpGs6Pt4TdaXxtu6Ibvt2OlbFve1bkm2/IFcz172fZD1/Ob1oz+r7dG8XBHuyRzUZxHe/47dSfNPW9arfa2E+Tau0f4xBNPvPTSS42vLZff+veJGzOpD75Mbj7OeXv+A3sokX97iadVcCKK7XNn7NLDnOiHHJ5aTb0EUqnVpTrfUiIiWvxWt8g/ddME6YgocHrHrz9Im3nfvL7du3K7nYgEja7p6yRcUWnlF6so18LfXvK5cVKoomHGDKOwSVHJ/9ymUCgaJj1YbLUyzXXvdplGnqiuTPS7bpKln051X0chGCnYHDd8vw3TEyn5rrzG1bfHR9Cy8+JKv/H/r/DU4DNfHuz32JEqYWy4R//vbTv/O3UbbXHe2vt/ydRqte8vMGLKPcgFNjXM1sPv6ocaIxoXzvr70yfpPNvceGdVYbbgzTVXhtEzphnos2HLBqbSCFq9oNU3PQVFTpdNfEcu//Cs/Z0z4vrL4vFiXpCbdXUlASIikqll9bWWhtveIVG1hTU209VF1CqOVcX1GXXt8X4q/nA8Qwo6yrAQlujb+DeVCXRXNNtVwNf3eSoq53BkzuFDhWKWyXkXIQKP4pggrKioqKioIKLKysry8nKHtAnOj3P+2puvRyfEJAxI+MvkePP+L699tF8AmxYlrL4kni7jRMRF8Vcz0pnATpXUn6ts6tV5k42fLOXfZIj/PWX/NF3cVyAWXrMoTFjCwMrUiis/1pttZBMUmsbcrecsdu7Ck/9NK9iTXXqiIOOTC17KhLjBE68cH2VgD8TYf7WQNLTS5Cjm+8vFbF8VGxLEvs3X/ZT0lyGHFmgspRuzGsfUAEjLMZdGBw8e3LBt9OTJk4no3LlzMhkmNLi/dxa8+9nuFZF/S2QywV5b/+3SeY/7+9fEX124tYMX/a6j8NVFnm/hI8OirKW2urJalbFx94+ygxUDHh3/1QXRW8ki9BSqZaFaCtE2bv/EOTfXs2obVdt4rpmfr6R8y60+NQfc9UzyH1YKsjyvBJ+6stqcNTljHn+PiGwiHSvhB4p4RNyYWW/tLjrwbU1VSZ+7Rsb0u7rqTRdfNiNaqDHfvHVoEbWMzYoRPklvDLwBgSy5gm8VEsI7jR++739bRr9xpEg+KEjqKsHjOWywTFM0d0I9Jpy2TLudt/heCYHPdLiy/mZNgdlnj3ze0i1bs697V9XYaVM2L6yhwZaje/93r3cvb0FDVadNcX2nj3z8zV+1yYiMamYTyWyj5nYXrBbTwVVv5549qPcL6TTpzxVB3S9W8RwzdfBiQ4NvsKcgETHGBgXS6HCB4f3WUrc9bwcK+bacxi8Li2vp8wvi453o7j0v54T2Se8+66lEwaDwxI443m8t46QT6sFjWa11165CrfLT5OVdHhAoaGR83WXRzkm01x9b++G5gxtkckXHQQ9sj72r1xsnQi/vtNVUh08bYIzs9Ns2OVHpb5Z9aSKzTOcz7dXKkXSxmjIZdaijfgHs7limvMk3AN5KNjWKOf++Ua5uUCBdqmYNGzYFqKmfH9uYS8F3PDt187O5IX2258TOiMGfAKSEIISWC/QPrC22XJlBX5Ve1qtnbyLq7sd81cKqi/yj5yfzoCK/6QG83pb7w+vxF/cXTnvvYujkqZGC0UHbD1Ra+blKumymyybOGIvSUaSOkoLJ73bf9iX6skmRggb/AtoeY2xaFC1O5dU2IqLBweyjNPGwNSCk9++HHnx7ne97vf0VmLUJEsLHALTcwvkfTL9/hu+0MG2owXyxsvqHojd3fNPwUISOJZbus8pyoqd0bLgn5sGOqf/Z+sCDBReEkC8uiFF6NiSYBbc0DstqeWolna3gFVaK82advGhkKPNt2mJDOgWbFMkSfPDJ2350CjYzRlh+noucyxhNiRRWXRJjE0ZFZx/snvzNZu09jyfIMFcYpOLZM1qhdfr26btzw0/9q7qqN9tGqZKO7D587XIKF8+e0na8Zv47I30nr6KLKb382DOJQoSevsrgKzPEnJsPUTGVFqz5x5yF98YtvDd+89tP1Jqqci20M58vThM/vcArbTQqVPhLN2FqJOthbFIKqmQsKVh4IuHGKXjw0MHeSX0iu0THJnZ45V+v1tdjL1lHijawgYGNpz1MR9182dZsvr//E4lpG+vzLx8txvBRkAx6hNAqHTt2/Hjh0hs+FB0ZRbvFa++xlti8g8KJSCHQwADWz49+LqM1l7m3gscYWJiWhelI88twY7u1bsVz4/wn6LvMSSROhXtPvPvn6V7PbYvzESZGCOHa5k2+18qpf6AwIIDd7Fpoenr6w39+NPQPcTH+YdzOV3+/1vJ3y9tvvtWM14DbGR7KUiuovI6IaHgIW5TKU+x+Eb0eGLr/ra2+73TxVXrmqBmQHHqE0FZGjBhRn1Zbfalxbl/ZySLBovOLir9ygEygvv7s6QR2RyCrF+lAkfhesrggla/J5Ksv8cXrdwrRzNgjgIiIUdDQEKO2cLbuwqhQFtGcJWiCNDQugv25qzAs5KYpSEQfLvvQZ0KI2l9DREzGQmbEfLt+TQt/c7gJhUATIoQrt8eG05YcnhY7plbtE3/mux9z0SkEaaBHCG1Fp9NtXbt57pOPXF6dzEXetUvP0e9/WPGbRf8ERnHeLM6biBjnVFLH8y2kECi7LqMs7LrZqJpgdXnupWuj9GaUMhatp3gf1tGLNXEHqPMZFzUDr1lUhpFMI8MAd4fr5M26GllyGSeizt7seIl4qIR5DXh66uZnNkUMzA2IDtOhUwjtDUEIbahDhw67t+602+0NCyzYOf2UKx4ovOn0QMYoQM0C1EREms6JO9fU09Crj5ozTf7RnW/yVBIYhWlZrBd18GLhOtbckRf9e/b9+uIGTUjjGob22nqq5UjBtjAuXLhYJdbUcyIaH86WneNdOwcc73n/kAPvbgt5+6HOMtb8JWcBWgOXRqHNXVlmSMZodLjwYJzg04ReWlSvIazCUPBTrr3OXm+xZa+9HBDS0yc0+leH6eTUL0C4p4PwYg/Zw52F4aFCpL7ZKUhEzzz1TO2eirKjBfVmmzmnOntJ+v+9/H/NbgWaQK+gUaGNfyGjivX2YzvyKLXTBLtMqT+x4WzFrZ8N4HgIQmhvMQb2dFdhcpRgUNzqMCYI983/IVg+JuP93KzFRZ2i75/+6tW1TOUCxXmzu2KF57oLEyNZZ5/GhdlazMfH56fNPw6TDbR+WRp0RLf8rU8euPf+VrUIN9fbn2J+mTg4NJhlmSnTzPYNfLrnmVV7z5XYxFs/G8DBsMSaG3KV82YT6Wgx31cgWpo8T0EhUAcvluDDEnxvul5Mi7nKeXM2LTtvxTV8SRqvFzkRna3gu/L5452F/qeWG0yFwuwXhwS7/9VRvN9aBkusgVtRCHRHEOvjL5wo4ZnVlGPm5pskol5B8T4s3pvFGEiBedduIUDDkoJodz4noi4+7EQpP1bCld3umbn+icM/n+w5qiemUkC7QRCCxFQyNiiINWxBUF5H2SaeZ+FygRkUZFCQXkFeSuatJHwoup/BwXS6jJXXcSIaF8Y+Pc8TfZQHBjw+8OAHO+MXTYlV3bYFAIdAEIIT8VWRr4p190PqeQSFwMaG06qLnIj81aynkX7M57rIvglem/meNXnBc0K1eCdAe8BgGQCQTGcf1sm7Me3uDGEXqinXQgf6P94lbd2elHxpawPPgSAEACmNjxDkAiMipUAjgmlrjlitC0xJmBa1c1HDvHuAtoYgBAApGVU06JfFuHsYGed0poyf7jJDby5KPnjQiqkU0PYQhAAgsaEhzEfFiIgxGhcubM/jNSQ/1O/x7oc+3pdrk7o6cH8IQnBnWVlZX674cvXq1YWFhVLXAjelEGh0WGOnMFxHsXq2r4DnhvSo8I6o3LW2pBYXSKFtIQjBbX2weOGQScNe3/72Pzf+u9+IAd9+963UFcFNJfqyjr+MmhkTzk6U8rJafqjvo92Sv92RXiZtbeD2EITgnjIzM//34dtRf+kSODoicFxk5HNdnnv5L5WVlVLXBTc1NozJGCMinZwGBbJteVRlCDkfO9Jv/1dpFegUQhtCEIJ72rdvn7anN5M1vsNlark+wef48ePSVgW3EKBhAwKJiOzWOvuWN7L+2W/h3D5v/5wZkrH3wOlLWIAU2g6CEJzI4SOH+985MDoxpmP3uP/O/58otvzDTyaX0a96ESIpFLdc5xukdmcI81Kyr1+ekVO2tvdzIfF/Cr1s3nrvrvOJ+5ccKPx1p9BisUhSJLgfBCE4i3Pnzt31+9k0VRf1UreQ5+I++unTf77e8o2Qhg4ZajlRIVrtDT/aTFbLucpevXo5qFhoEyoZi65MNtVdDp0QIVPLZWp56LiIMl1dZuaFzGNHKqyNh7238P3oLjGJSd2iEmL+987/JC0Z3AGCEJzF+4sXeE8K1gTpiEhQCKGzOyxfubzFrYWFhb35yhtZ/0sp/j6r+LusvPfSly5YqtfrHVcvtIn6vDRdjPraezTRym2Gnn2OLt10yUpEX65c8d43CyP+mhj5l8TIFxOXbFq29JOPJSoW3ATWGgVncT7jvGao7sqPTGBMKVgsFq1W27IG58yeM3b02KNHj8pksoEDByIFXUKHDh2o6Lq5g6ZcOxs2wlSyWXls0+mAae8vWRA8O0ZQCEQkKISg2TELP1706NxHJKoX3AF6hOAsenfrZc6ouvKjvc7O6lmLU7CB0WgcO3bsqFGjkIKuolevXr61+tLDBQ0/lhwtLM9TWSP7Hur9SM8zX/+YYSotLVNcs6ezXKuorqq6SWMATYIgBGfx/DPPW34qKz9ZLNrEmgJzzpK0f/y/V6UuCtqbIAhb123pXds19V9nz/4rRZkVN+GNTVvzZWXekdlh/TqdWuMXlVB1oeLK8abMytjYDhIWDG4Al0bBWfj7+x/4cd/f571y+IPDwSEhr7+2ePTo0VIXBRLw9fVd/tEnJ0v595mNw4aTL4qHi8nQ8/5pm54e/uCrX74y0zbBqosyWLKrKzYVfLVum7QFg6tDEIITCQkJWbYIAx+AiKiHkU6UsCwTJ6Jx4WzZOd7Vx3ghduSo0gPaD/eXbnnr7I/JA+IHvvjjX8PCwqQuFlwbghAAnBFjbGIkLUnlIiejivXxo2155N919qz1j51JmNb36bffj8Q3O+AYeCcBgJMK0rB+AY2fUUOCWY6ZUq36lITJfU5+eayYN3QWwaNkVPHkCubwZhGEAOC8RoQyg4IRkUKgiRFsUzY/2XlGUNFZv7KL6y6L9Vh3zTPYOZ0q5R+etS8/L+ZaHB9bCEIAcF4qGY36ZYemjl4UrKGdxYpTXe/qe/Lz0lraU4BOoZsz2/jOPHH+afvaTLGwpq1eBUEIAE6tu5GiDY1ZOD6CHS/l+yLGeFXlhxac2lcg5luQhe6pvI5vyRbfTRZ353Nzfdu+FoIQAJwaY2xChNCwQ5NeTkOD2Ppc2bGe9/f9+XNR5OsuiyKi0L0UWGhtprggRTxcxNtn1xEEIQA4u0AN9Qto7BT282cip7WGITLRGpV7pMBCh4rwVaGbyDLxry6Ii1Ptp0p5e/7/DYIQAFzAsFDSK4iIGKNJEcL2PDqYeF+vUyuI8515vKwOvULXdqGKf5IufpIunquU4E+JIAQAF6CWsTHhjZ9XQRrqZmQfsQGcCVE5h20ibbjMOUcWuh7OeVoF/yhV/PK8KOF8GAQhALiGbr5XR80MD2EZJrY9bk6fk8sZ55eq+c+l0lYHzZZRzT9O56suinlSj3hCEAKAa2CMjY9gAiMiUgo0NozesvWrl6misg8S0fbcNh9bCI5yvpIvTROXnxNzzU7Rj0cQAoDLCNKwAYGNn1oJPsxHSSuj7u1z8gvGeU09356DUTPO7lI1X5YurrjgLBHYAEEIAK5kWAhd2Y5wXDhbJPaplWtiLu8jolNllFntRB+vcK3CGv5Nhvj5OTHb+dbGQxACgCtRXTNqxqhi/fzZByH39T7zFeOcc74lu12H3UNTlNTS1xni4lSeUu6kfxsEIQC4mG5GFvPLqJkhQWyTqneFYIi9vIeICmv44SIn/bT1QJZ62pItLjprP1vu1MN6EYQA4OxEUTxx4sQPP/xQUFDQcM+EyMa1ZmQCjQ9n/w6Y0/vkCoHbiWhXPq+yOu9nroew2vm+AvG9ZPvhIhfoo2M/QgBwatnZ2RNmTLQZueAlt5yrfGDW/fNe+VeAmvoH0sFCIqIOXnTMv2dhoU9M5t6LMcPq7PyHHLor1vGb9UBTiJxOlPBd+dxkc/oA/AV6hADg1O55aI5ikk/QgzEB0yKiXuj61Y7VO3bsIKJhIUx/ddQMvWm8u/vpVYxzIkop5+elWKAEMqr5klRxY5boQilICEIAcGY1NTX5ZQWGjj6NPzMyDPH/ev23RKSSseGhjZ9g3kpm79inkOuisg813LM1R7S70kexyyuu4SsuiMvPiYU1rnfeEYQA4LxsNhsJ113kZAqhpqZxY7pefhSsbXz0jgC2JHBWl1NfEedEVFpLGDXTPmrqaUs2X5zqwr1wBCEAOC8vLy+9TFtTaL5yj+Vo+aQxExtuC4yNDW8MQplAioQB5joxLO94wz2787nJ1s71ehZOdKqUf3BWPFwk2p14UOhtIQgBwKl9+fEXxR9fKtx0uWhvTt7S8738us2+6+4rj8YYWIJvYxZ29hVWRNwdf+Krhh/r7HxXPieijZs2Dp8womvfbn946g9FRUXt/yu4pVwz/zhNXJspml3q68AbwqhRAHBq3bt3P3Pk9ObNmwsKCwY9PKhfv36/OmB0GDtfSfUiJyJN9yFswwpj/pmykG5EdKKEJ6/7cMnqdwJnRvn6Rh06c/qOEUnH9h318fG5wStB01TbaHuueKaMnHlqYLMgCAHA2en1+rvvvvtmjxpVbGAg7SvgROSnETbE3D3s+Kojk7oRkcj5/Pf/G/9yV0EhEJFv78B6k23hkkUvv/hSuxXvTkROR4rFnXm8zi51KQ6FS6MA4PKGBJNB8cuXhT2HGS35ypxUIqqpLBUMyoYUbKCNMRw/dVyaKl3c5Wq+JFXcmu1uKUgIQgBwAyoZGx7aGIQqhXxXx5kdTn5NRGovo63aStdcwKspsHTuGC9Jka7LXE9rM8XPznNXnBrRFAhCAHAHPf0oSNN4u677mE6mi5asC4yxhCEzLn+dwe0iEdXkm0zbix57+DEpC3UpnOhYsfhBiniq1KkXC20lBCEAuAOBsdFhjR9oXK44Ej+985k1IqeRf3yzY8zstNfTM99Ilm+u+/7LtVFRUdKW6ioKa+iTdHFjFq+pd9sIbIDBMgDgJjp6sw5e7GIVJ6LSbuOnpH27NzsvKjJ08IMvDX7wpX4BwsRILEDaJDaR9hfyvfmesjqPw3qEeXl52dnZjmoNAKAFRoexhqyzydVnO41LTF5b98uu9cdLxGI3/YrLsc5V8oVnxV15npKC5JAgrKurmzZtWt++fZOSksaOHWuxWFrfJgBACwRrWU//xm7fpW5TJ1TtS8kqa/hR5LQ912M+2lvEZONrM8WvLogVdZ51ohwQhJ9++mlubu6lS5cyMjLq6uoWLlzY+jYBAFpmRKiglDEiqlV5XYoa3C19Y9UvS5+cq+QNF07hVzjnp0r5orP8VKknnh8HBOHKlSvnzp2rUqnkcvmjjz66cuXK1rcJANAyBgUNDGy8ndZt5v3lW47kXF2qdHuu828T295Kavnn5/naTNHi7oNibsYBg2UyMzM7duzYcLtjx46ZmZm3OLigoOD48cbZrAaDIS4urvUFAABca3CwcKLEbrJRtT64MKxn70vbioJnBGqIiAosdLKE9/LHqBkiIpHTgUJxVz6vF29/sBtzQBCaTCaNpnH+jlarra6u5pwzduP32aZNm64EYe/evd99991btGw2m2/WDtwCzlvL4Ly1jHOet37e9EOejIhOxE9/dPdrd+VMmBHVeAFsyyUepbA3XD6VkOTnrbCGbc4T8l1tUEdtba3J1Izc1mq1gnCba58OCMKgoKDy8vKG22VlZUFBQbf46z788MPz5s1rYsucc71e3/oKPQ3OW8vgvLWMc563ITo6YxJLanlVYJxEQGkZAAAgAElEQVTZGHVHwd6c4NGxBiIiK9EZi3BniMRBKOF5s9r5znw6XMRFzpVKSUpoObWa6/Vax7bpgO8Ie/bsefjw4Ybbhw4d6tWrV+vbBABoDYHRlUXXTifOeqrkm5/yrk4H2F8gVrv+5kEtc7GKf5jKDxaKovuuFNNcDugRPvnkk5MnT+7fv79KpXr77be/+OKL1rcJANBKXXwoVMvyLDwvuAdp9EMrjpwtH5joy4jIKtJPuXxqtNNd0W1TNfV8Wy4/Weo+2yc5igOCMCkp6ZNPPlm0aJEoiu+///7YsWNb3yYAQCsxxkaG0RfnORGd6TLjqeQ1kwsGJviQwIiITpbyPgE8XOcpWZhewTdl8yorIvAGHLPE2rRp06ZNm+aQpgAAHKWDF4v1YhlV/HLEHf1OfJZUm3qyLKG3HyMiTrQlmz/S2fnG+ThatY1vzuap5YjAm8Ki2wDgzkaFMcaYyISUzlOeLv9+VwFdmSqQa+YnS9w5HhqmyX94Fil4GwhCAHBnoVrW2ZuIKL3j2OjSlH5C/tFrwm9HrljrdtvMNiivoy88e5p80yEIAcDNjQhlAmP1clV6xzHPVKzbX8ivrMRtrqddee42mVzkdKCQLzorZlQjApsEQQgAbi5Aw3oYiYhSEqYkZu3upak+WHQ1IY4Uu9XG6wUWvixd3JYj2rCWXJMhCAHA/Q0PZQqB1ah9syIGPGnaeqSIm22ND4mctma7Q2bYRL4rny9N47lmd/h12hOCEADcn5eS9fFnRHS6y4w+Fzb09rbtK7yaFpeq+VkXH05yoYovTGnYRNC1fxFJIAgBwCMkBZNCYOU+UaW+MXOte0+V8cprJtVtzRFrXHNQiclGay6JX54XK6xSl+KyEIQA4BEMisZO4ZkuM/qlfdffn3bmX320ykrrL7tYEHKiU6V80VnxTJmLVe5sEIQA4CkGBzOFQLkhvUQmmy2evFjFC2quPppawX92nWmFBRZaliZidoRDIAgBwFPoFdTQKUxJmNo77bvBQWxn/nVzJ7Zki6W1zp4rNfV8Szb/KE3MwaAYB0EQAoAHGRwsKAS6EDPMpzJrjCKruJZlmq4+ahVpTSa3O2u+NKwU80GKeLgIe0c4EoIQADxIQ6dQFOSpcRO7p60bFkw7cq+bcJdn5rvynDFj8ix8WTpfmyma66Uuxe0gCAHAswwOFhQCS42fEJ11oL+mws4pvfK65NtXIF5ypjVZKq18baa4NI3jWmgbQRACgGfRK6hvAKtTGi5FD044v3VkqLAjl67tFXKitZlOsXNvrZ125PIPUvipUo5NBNsOghAAPE5SEFMIlJwwrcu5TfE6m5eSn7x+BkKVlZaliWV1UhVIds6Pl/AFyfZ9BVgsrc0hCAHA4+gV1DdAqPAKL/WNib28d1SosKuAbNcvvl1hpU/T7UXtvgypnfOfS/mCZHHDZXwd2E4QhADgiZKCmEJgKQlTE1PXhmopQkvXrsTdoNpGn57j2aZ2ykI7p1OlfGGKuC4Ty8S0KwQhAHgivYJ6+1N2SB+ZvT64MHlsOB0u5hV1v868mnr+xfk2HztjtfNDRfzdM/a1mVJej/VYCEIA8FBJQUwuY2c7T+6a9r2Xgg0IYNvzbnCYVaQVF8TjJbwtpu4V19KWbHH+GXFrtlhtu/3x0BYQhADgobyUrJcfOx87Mqgo1as6PymQFdbQhaobHFkv0obL4qKzYkq5Y0Zv2jmlVrLl58RFZ8XDRbzW3vomoeUQhADguQYHM65QpXcc0yV9o0ygMWH0Qy6/2SDNklr6JkP8OJ23+EppnZ1Syvl3l8S3Ttu/z5ZlVGNShFOQS10AAIBkvJWsl79wNn7SzA1Pnuhxb5y37liJeKiY7ghkN3tKrpl/fo5H6VkHLxappzAdU9yyQ1Fnp6Ianmfh5yops9p512/zZAhCAPBog4Po5xL/3NBecRe2JydMGx/OPj7Hu/mSQXHTLCSiyyZ+2cSJSMZYiJYi9Ewnvy7iauys0MKLa3klxn86PQQhAHg0HxXr4cdTOk8dvu+/ZztP8VUJffxpRx5Nj2rS0+2c55jpRoufoevnMvAdIQB4uqHBrCQwoUblHZF7lIiGBLHLJsoy3fZ54CYQhADg6XxUrJuRUjpP6ZK6nogUAo0Lp3XZ3IrBnJ4BQQgAQENDhEsxQ3yqso0Vl4moszeL1tHWHFzedBZ1djpTxldn8M8yZA5vHEEIAEBGFXUPUKR3GpeQvrHhnnHhLMtMZyuQhVKqtdOpMr4yQ3wnWUyuoM4+dFekePunNROCEACAiOjOYHYufkLs5T3quioiUgg0I5ptzuZVTrAfk6epE+l0OV+ZIb6bIqZVUldf9mw3YU4s62H89ehch8CoUQAAIiIfFYsL880K6x93YfvpxJlEFKqlQYFsbSZ/sCNjt5pMAY5hEymtkqeUU6aJR+tZV182M5op276/hh4hAECjO0OEtC7TEs5tFHjjOJmGmfX7f7MxBThQPae0Sv5tJn87WTxTxrv40rNdhXtiWTff9khBQo8QAOAKbyVFxHW0HPaLzD6cGXkHETFG06PZR2k81sBCtVLX5144UUY1JZfz9AoepKFuvmxihKBx/FCY20MQAgBcNSSYbUyYkpi2viEIichLwSZG0LeX+MPxTIePzFbjRLlmOlPOU8q5j4q6+bCRCYJeIWVJ+KsCAFzlrWTGPkMMxz7xK7tUaoxpuDPBhxXV8hUXxYc6CkopuizuoaSWnymnM2UkE6ibL82NY0aVU3z1iiAEALjO4FDZrvgJXdLX7x30zJU77wxmVTb6JlOcEysITvHp7TKqbTy5nM6Uc1M96+pDd8eyYI3UNV0Pg2UAAK5jUDD1oPHR2Qca5lFcMTGcCYw2ZGPnpCapE+lkKV9+QfwwlRfX0OhQ4dkubEyY06UgoUcIAPAr6enpRzds+OZ8bZddy2rHPnvlfoHRrGjh8wvirnwaHoJe4Y3ZOV2o4mfK6UIVj9Gzvv4szpvJnftsIQgBAK764MMP3lr6jnagD4XS1hVvxRdZkh54+cqjCoHujRWWnedeSt7Hz7k/3dsXJ8r5ZQiMv5q6GyUbAtoCCEIAgEZFRUX/XfhW9AtdmVwgooCBoWf+/XGXEXN8w2KvHKOV0/2x9OkF4pz39UcWXh0CIxd4dyP7QzzzVrrYaUEQAgA0OnbsmD7RpyEFiYgY8+7lnXPm0LVBSES+Kja3E//yAlVa+YhQD11z5uoQGBvr6tswBMZVzwSCEACgkV6vJ+v1Q2EsNj9e+9sjfZTs4XhaeVH8/jJNiWQyV42AZqu1U1oFP13OCywU78NGhwrRBnL13x5BCADQqE+fPrXnTHXltSpfNRHZqq3mUxVjB5WcudHBGhk92FFYc5mvuCjOjhVUbj0Gv16k9EqeXE6XTDzGwPr5s05OPwSm6RCEAACNdDrdimUrHnj0AUWYmhiryzIve29x3N4vz1mr65SG3x4vF+juGLYlhz49J94Tw3ycY3q4A9k5XayilAp+rpKH6airD5sWJahcZAhM0yEIAQCuGjRwYNrPqWfPnrXb7YmJiUqlMrMwPe7ijjMJ0294PCOaEM4OF9PSc3xkKPXyc4evDEVOGdWUUsHTK3ighhJ92JhQQSfpKmhtCkEIAHAduVzevXv3Kz+Gjpxq/fQ/yZ2n8Ztn3IAAFmtgay+LqRV8SiQzKFwyDes5ZVRRaiU/V8n91dTFh40IcdXfpVkQhAAAt6KM7qzVGyLyjmWF9bvFYQFqeiRO2FvIl6TzsaHUzegy+WG104VqfraCLlbxIA0l+LDhIczLA/LvCgQhAMBtGIdN6bd3/a2DkIgERncGs3hvtjZTPFXGh4UI4br2KbAlKq38XCWlV/EcE0XoKcGbTQgXtB6ZCR75SwMANIem153G9cv8qnNLDWG3PThYQ3/oLJws499m8gA1vzPYieJQ5JRtpovV/Fwlr7ZRJy/W24/dHdNO+986LQQhAMBtMLnCMHDcnVkbv0t8rCnHyxj18WM9jXSylL7N5P5qPiRIiNRLNt+upJZnVNPFarpczf3UFGtgEyOEcJ3Lz/9zFAQhAMDt6QZP8v/P476JD5ZTU3dPkDHq4896+tHJUtqUzW2cuvpQV18W1PbbL3CiAgtlmXmWibJMXCawWD1196WpkR568fPWcEoAAG5P5u2n6tRzbPFPqwImNu+JjPr4sz7+VFhDyeV8VQaXC5ToS2FqFiUnR12T5EQltZRv4QU1VFDD88zkpWSROor3pjFhrrf4ZztDEAIANIl+yBTbNwvCpk3MtbTk6UEaCtKwEaGUa6bUSr6nUCjKEn2UFKZl4VryUzO9gnspmOJ20WgTyVLPK6yszMrL66isjsrreHEtGZQsREMhGkoKFEJ15Co7PzgDBCEAQJOoOnZjMtl426llrCdv6e68jChcR+E6ZrXa5QplYQ3lWni2hU6XiyYbq7KJApGXkskFLhBdWcPFzqmmnmrsrKaeEyONnPkqRaOK+Sop3puMSiFA47DOpQdCEAIANJV+8OTaoxu6j+x5qtQBrQmMQrQUomV9iahx5Aqrs1OVjdeLgkhUZ288UsZIIyONjGvkwi97Y+Bqp8MgCAEAmkrbd2Tl5s9HagrTZIFXUsqxVDIKuOlmFgi/NoG+NABAUzGlStdvFD+yeWgIPjzdB/6WAADNoB8y1Xzoh4E+1lAd+mduAkEIANAMMmOgMjqh9uddU6MEmTtsNQEIQgCAZtIPmWLauz5IQ0nBCEJ34JggtFqtx48f37FjR11dnUMaBABwWur43txWV5eRMjSYAjXIQpfngCDMzs42GAyzZs0aPXp0SUlJ6xsEAHBqjOkHTzbvXS8X2JQoJuACqYtzQBAGBQUVFBScOnWq9U0BALgE3YAxtekn7BUl4TrWL0DqaqB1HBCESqXS19e39e0AALgKptJoew8zH9xMRKPCBKMKnUIX1t4T6g8cOPDGG2803I6Kirr77rtvcbDNZrPZbO1Sl1vBeWsZnLeW8djzpk6aVL7o/6mHzWJyxbgw+vJC855ut9tFUWyb0txZfX19s95vcrmc3e7adZOCsLCwMCkp6bf3L168eNSoUU0viIhqamrKy8sbbhuNxlu/D0RRxBulBXDeWgbnrWU89rwxY7AsOKrm1F51r2FRWhoYwA4WNePpnPMWL1jqyTjnDn+/NSkI/f39d+zY8dv7AwMDm/t6I0eOnDdvXhMPtlqtKpWquS8BOG8tg/PWMp583gx3Tqvevsp74FgiGhdF+bVitrmp2SaXy2Uy7BDRbAqFwuHvtyYFoUwmi46OduwLAwC4Ok3igMq1S6xZ6crIeIHRrFi2OJXX1EtdFjSTY+YRPv3008888wwRvfjii4899phnXicBAI/DmC5pomnvhoafvJVserRw22+kwNk4ZrDM8OHD7Xb7hAkTGn7E+wAAPIRu0LiCeb+3V5fLDL5EFOfN+vrzo8VSlwXN4ZggnDFjhkPaAQBwLYJGr+kx2Hxoq9foOQ33jA1nOWbKt2AgjMvAWqMAAK2iHzrVvG8jtzd+NygX2KwYQYVxMK4DQQgA0CqKkGi5f2jtmYNX7vFT010xgoDviFwEghAAoLX0Q6eY9qy79p6O3mxSJD5gXQP+TgAAraXplmSvKLZmn7/2zt7+bFAQPmNdAP5IAACtJgi6OyaY92381d1jwllnH1whdXYIQgAAB9ANGl9zer9oqrj2TkY0M4aF6ZCFTg1BCADgAILOS9M9yXzoh1/drxDYPR0EbyWy0HkhCAEAHEM/dIpp7/or8yiuMCjo9/GCj1KSouD2EIQAAI6hCOsg9wupTT7424d8lPRQvAxZ6JwQhAAADqMfOtW0Z/0NH/JR0kNx6Bc6IwQhAIDDaLrfUV9aYMvNuOGjPir2UJzgi+3snQyCEADAcQSZPmmiae+6mz3uo2K/68SQhU4FQQgA4Ei6OybUnN4vmqtudoCPij0UxwLV2K7OWSAIAQAcSdB5aboOMh/aeotjvJXsgRh7gi/6hU4BQQgA4GD64TNvOI/iWkoZuzuGDQvFh7D08DcAAHAwRUi03D/k2v0obogxNiyEzYoVFNioQlIIQgAAx9MPnV69+/umHNnVlz0Yx7wxrUI6CEIAAMfTdB0oVpVZs9KbcnCEjj3RRdbHH/1CaSAIAQDagCDoBk/61SaFt6CS0eQoYXYHQStv07LgBhCEAABtQjdofG3qMXtladOfkuDDnkyUxXuja9iuEIQAAG1CUGu1ve40H9jcrGfp5DSnozArBouxtR8EIQBAW9HfOc18YDO3WZv7xK5G9lSibFQYU8vQO7xKLWM+Su7wZnE1GgCgrcgDwhQRHS0/79b1H93s5wo0OFjo5cd35bPjJaLo+M9/FyAwCtRQuI6F61iYlvzVZDI5fkUeBCEAQBvSD51WuW6prt8oYi3p2+kUbGIkDQoSDhfRzyWi1QPWZfNWUriOhekoTMtCdUzR9hcuEYQAAG1I3blP5bqldReTVR27tbgRo4qNj6ARobKfS8WDhbyy2ZdanZpaxgI1FKlnEToK0zG9or0LQBACALQt/ZAppj1rWxOEDVQyGhgo9AvgqeV0ppxfqOR217xeqldQiJaFaClEw0K05CP1XhwIQgCAtqXtO7Jy8+f1Jfly/5DWtyZjrKuRuhpZTT1Pq6TkMn6pmjvzN4gCY35qClJTsJYFaylIwwzt3ue7NQQhAEDbYkqVbtB4057vfWb80YHNauSslx/18mNmG8+opssmyqzmJbUSRyIj8lFRoIYFqBv+y/zV3MkXU0UQAgC0Of3gyYX/ecxr3P2C1uDwxnUK1s1I3YxExKptlFnNc8y8uJaKashka8NclDHmpeQ+SuarIj81MyrJT01GFcl/HXtOnYKEIAQAaAcybz914kDzwa2GkXe16QsZFNTNyLoZG7PHUk+FNby0lqptvMpGJhtVWclk41aR2W53OVUukFIglYw0cqaTk05OegXpFUwnJ28l+SjJoGzRQFjngyAEAGgPhhGzSha/rB82ncna74NXK6cYA4sx0A27ZbV2Xi+STbzuIUZcJSOljGRuEnO3hyAEAGgPipBoeWB4zal92t7DpK6lkVrGSPbbuz0l/67AEmsAAO3EMGy6aecaqauAX0MQAgC0E3WXAaK1ri4jWepC4DoIQgCA9sKYfugU067vpK4DroMgBABoP7p+o+syztaX5EldCFyFIAQAaD9MqdINGtf0neuhHSAIAQDalX7wZMuxn3iNWepCoBGCEACgXcm8/TTdBlmPbpO6EGiEIAQAaG+GEXdZD7Vk53poCwhCAID2Jg+KEEJiLcd/kroQIEIQAgBIQjV4avVP3xJ34v2TPAaCEABAAvKYLoJWX5N8SOpCAEEIACARw/CZ1T99K3UVgCAEAJCIpvtg0VRhvXRW6kI8HYIQAEAijOmHTUenUHIIQgAAyej6j7FeTrMVZkldiEdDEAIASIYplLqkiaZda6UuxKMhCAEApKQfPLnm1D57VbnUhXguBCEAgJQEnZe27wjTbnQKJYMgBACQmGHELPOhraLFJHUhHgpBCAAgMZlPgCZxgGnveqkL8VAIQgAA6RlGzTbtXcfraqQuxBMhCAEApCcPDFd16G4+uEXqQjwRghAAwCl4jbmnetd3vN4mdSEeB0EIAOAUFGEdFCHRlqM7pC7E4yAIAQCchWHU7OodX5Nol7oQz4IgBABwFqoO3WTeRsvJvVIX4lkQhAAATsQw6p7qbV9hw9725IAgLCwsnD9//pw5c+65554lS5bU19e3vk0AAM+kTuhLckXt2cNSF+JBHBCEGzduPH369JQpU6ZPn/7uu+8+//zzrW8TAMBDMeY1ek7VDyulrsODyFvfxMMPP/zwww833Pby8po7d+57773X+mYBADyTpntS1bavas8eVXfpJ3UtHsHB3xFmZmaGhoY6tk0AAM/CmNeYe6u2LMc3he2jqT3CjIyM394ZEBBgMBiu/JiVlfXqq68uX778Fu2sWLFi//79Dbe7d+/+2muv3eJgs9nMGGtihXAFzlvL4Ly1DM5by9zmvMX2sNd/WX5iryK+dzsW5QKa+37TarWCcJsuX5OC0G63jxs37rf3z5s3b/bs2Q23CwoKRo8e/eKLL44fP/4WTd1xxx0PPfRQw22j0ajX629xMOf81gfADeG8tQzOW8vgvLXMbc+bbNz91TtW+/YeQvj/jGu0xfutSUEok8nOnTt3iwOKi4tHjRr1wAMP/OUvf7l1UzExMaNGjWpGgQAAHqnxm8LUY/imsK054DvCioqKcePGzZw58+9//3vrWwMAACJ8U9h+HBCEixcvPnHixIIFC4y/wFRCAIDW03RP4qK9NvWo1IW4OQdMn/jzn//82GOPXdeo3AHNAgB4Osa8xt5XteULdUI/fFPYdhzQI1Sr1b7Xa32bAABARJpud6BT2Naw1igAgBNjzGvs/VVbvsQ3hW0HQQgA4NQ03QaRINSc2id1IW4LQQgA4NwY85rwYOWmz7BPYRtBEAIAODt1fG+Zb4D5yHapC3FPCEIAABfgPXlu1ZYvuLVO6kLcEIIQAMAFKCPilFGdTfs2SF2IG0IQAgC4Bu9Jv6/+6RvRYpK6EHeDIAQAcA3ywHBN4kDTrjVSF+JuEIQAAC7Da8KDpv2b7FXlUhfiVhCEAAAuQ+btp+s3qnrHKqkLcSsIQgAAV2IYfY/l+M76knypC3EfCEIAAFci6LwMI2ZVrl8qdSHuA0EIAOBi9MNm2PIy6879LHUhbgJBCADgYphM7j359xXrlpIoSl2LO0AQAgC4Hk2PIYJah0XXHAJBCADgknymP161+XOx1iJ1IS4PQQgA4JIU4R3UnftU//i11IW4PAQhAICr8po813xwa31ZodSFuDYEIQCAq5IZfPVDp1Zt+ETqQlwbghAAwIUZhs+su5xal5EsdSEuDEEIAODCmELpM/XRiq8XcHu91LW4KgQhAIBr0/QYIvMLNu36TupCXBWCEADA5fnOfLJ655r6UixA2hIIQgAAlyczBhqGzaj4dqHUhbgkBCEAgDswjJhlryytOb1f6kJcD4IQAMAtCDKfWU9VrFkk1pqlLsXFIAgBANyEKjZR3blv1dYVUhfiYhCEAADuw3vqIzUndtpyLkpdiCtBEAIAuA9Ba/CeNLds1XxMK2w6BCEAgFvR9h8tNwZXb/tK6kJcBoIQAMDd+N79J/OhH6yX06QuxDUgCAEA3I2g9/aZ9WTZV29zm1XqWlwAghAAwA1put2hDIut3PSZ1IW4AAQhAIB78rnr6ZpT++ounJa6EGeHIAQAcE+CRu87+5nylfN5XY3UtTg1BCEAgNtSd+6j6tSzYu0SqQtxaghCAAB35jP9sbqLZyzHf5K6EOeFIAQAcGdMpfGb+0rFd4ttuVhu5sYQhAAAbk4REu0z44+ln70h1lqkrsUZIQgBANyfts9wVcfu5avflboQZ4QgBADwCD4zn7CX5Jv2rJO6EKeDIAQA8AhMrvD7/SvVO1ZZL6VIXYtzQRACAHgKmTHQd/Yzpcv/Y68ql7oWJ4IgBADwIOrEgbo7xpd89Apm2V+BIAQA8Cxeo+eoYrqUfPx/2LOwAYIQAMDj+Ex/XNBoy796mziXuhbpIQgBADyPIBjvf7G+JL9qy3KpS2kGW0FW7c5vHd4sghAAwBMxpcr/D/+ynNxr2rte6lqapL44t2TxSzJjkMNbRhACAHgoQefl/4d51dtX1ZzaK3Utt1FfnFu88EXviQ8pegxxeOMIQgAAzyX3D/F/7LWK7xZbjmyXupabqi/JL170N6/xD2r7jWqL9hGEAAAeTREWG/Dkfyq3fGHavVbqWm7AXl5U8uFLhlF36waMaaOXQBACAHg6eWB4wNP/M+1dX/3j11LXcp36krziD/6qHz5TnzSp7V4FQQgAACQ3BgU8/Zbl6I6qTZ9LXUujuvOnit9/3jB6jn5wG6YgIQgBAKCBzNsv4Om3atOOla9+j9us0hZjPrC57Is3jQ/+TTdwbFu/FoIQAAAaCTqvgKf+K9aai957rr4kX5oiRHvFdx9W7/4+4E/zVR27t8MLIggBAOAqptL4/e4l3cCxRe8+W3P6QDu/umgxlXz0an1xbuCz78j9Q9rnReXt8zIAAOBC9IMnK6Piyz57oy4j2XvyXCZrj7CoOb2/Ys0ibZ/h3pPmktB+/TT0CAEA4AaUEXGBz39gL8krfvc5a2Zam76WvbK09JN/VW763Pi7l7ynPNKeKUjoEQIAwM0IWr3fw/+wHN9Z+tnrqthE70lzZcZAB78G5+aDWyo3f65PmmR88G9MrnBw+03ggNTdunVr165ddTqdv7//nDlzSkpKWt8mAAA4Bca0fUcEv/SxPCii8O2nKjd+6rCNDEV7zcm9Re88Yz6yLeDJ/3iNf0CSFCSHBGFsbOzq1avLy8vPnj1bUVHxwgsvtL5NAABwHkyp8hp7X9BfPxSrywten1u5/mNbfmaLWxNrzdU71+S/9nvT3vWGUfcEPvOOIiTaUaW2gAMujcbFxTXcCAwMnDp16ldffdX6NgEAwNnIvP185zxXX5RjPrqj5KNXBa1B12+kpvdwmZdvU54uWkzWS8m1qcctJ3apE/r6/f7vyoi4tq65KRzzHWFlZeW2bdvKy8sXLFjw73//2yFtAgCAE5IHhntPfMh7wu/qLp6xHN1R9eajMm9/eXCkIihSERwlD46UGXzFWjO3WbnNymstoqmy7lJK3YXT9rJCZXSCqkO3oL9+KPPxl/r3uKpJQZiXl7du3brf3n/PPff4+voSUUVFxTfffJOfn69Wq6Oiom7R1BtvvPHaa6813B42bNj69bfaB8tkMjWlPPgVnLeWwXlrGZy3lnGH8xYUI5/0qH7cQ2JxjliSZy3Mrjn6o70om5urmErLFAqSK5lKwzQ6WWRn1ZQ/yEJiSJARkYWIqqtb9prNPW9arfK+i4kAAAZeSURBVFYmk936mCYFodlsPnv27G/vr6ura7gRFRX19ddfE9HChQvvvffelJSUmzX10ksvzZs3rykv2sBgMDT9YLgC561lcN5aBuetZdznvPkaKa49loBp4PDz1qQg7NSp04IFC5pyZP/+/V988cXWlQQAANB+HPAd4fr16zt06BAVFZWbm/uPf/xj7Ng2XyAVAADAURwwfSIrK+uee+6JjIycNGlShw4dPv7449a3CQAA0D4cEIRPPfXUmTNnysrKzp8/v2DBgobhMw6Rk5NTX1/vqNY8B85by+C8tUx2drbdbpe6CteD89YybXHenHqt0TFjxuTnS7QPiCsbPXp0QUGB1FW4nlGjRhUWFkpdhesZOXJkUVGR1FW4nhEjRhQXF0tdhesZPny4w9cvc+ogBAAAaGsIQgAA8GgIQgAA8GiMc95uL7Z58+ZHH31UrVY38fjS0lJfX1+hfTemcgM4by2D89YyOG8tg/PWMs09bxs3bkxISLj1Me0ahER06dKldn5FAADwWOHh4Uql8tbHtHcQAgAAOBX0ygEAwKMhCAEAwKMhCAEAwKMhCAEAwKM5Zod6h+Ocr169+siRI9HR0Y8++qhGo5G6IteQm5t77NixwsLCiRMnhoWFSV2Oyzh+/Pj27dtLSkoSEhLuu+++ps/w8XBr1679+eefTSZTfHz8/fffr9PppK7IlZjN5hUrVvTu3btv375S1+Iavv7664qKiobbISEhkydPdlTLTtoj/Mc//jFv3rxOnTpt2bJl6tSpUpfjMnr16vX2228/++yzN9xIGW6ouLh42rRpJSUlERERn3322Z133mm1WqUuyjUsX75crVbHxMSsXr168ODBOG/N8re//e2FF15Yv3691IW4jH/+85979+7NyMjIyMhw7DLUzjh9wmQyhYWF7dmzp0ePHrW1tWFhYVu3bu3Xr5/UdbkAURQFQYiMjFy2bNno0aOlLsc12O12URQVCgURWSyWwMDA7du3Dxo0SOq6XEldXZ23t/ehQ4d69uwpdS2u4eDBgy+99FJQUFBcXNy//vUvqctxDV26dFm6dGlSUpLDW3bGHuHJkyfVanWPHj2ISK1WDxkyZPfu3VIX5RqwSkULyGSyhhQkIrvdbrPZDAaDtCW5nKNHj6rV6qioKKkLcQ11dXVPPPHEokWL8A+2udauXTt//vwdO3Y4tlln/DMUFBQEBARc+TEoKCgvL0/CesBzPP/886NHj+7atavUhbiMOXPmhISEjBs3btWqVQ7ci9S9vfLKKzNnzrztul/wK7169SKivLy8hx566IEHHnBgy844WEYul1+776LNZlOpVBLWAx5i/vz5u3fv3rNnj9SFuJKPPvqourp63bp1999//88//xwRESF1Rc7uyJEj27dvP3z4sNSFuJ4VK1Y03Hjuuec6der0pz/9yVFfmTljjzA0NLSgoOBKFubm5oaEhEhbEri9+fPnL1myZNeuXUFBQVLX4koMBkNoaOgf//jHuLi4rVu3Sl2OC1i9enVxcfEdd9zRt2/fH3744eOPP/7jH/8odVEuJjQ0NCYmJiMjw1ENOmOPsHfv3jqdbvv27ePGjSssLNy/f/+HH34odVHgzhYsWPD+++/v3r0b/8vVdLW1tUqlsuFbrvLy8osXL0ZGRkpdlAt49tln77333obbL7/8ckRExLPPPittSS7BarXK5fKG91tqauqFCxcSExMd1bgzBqFcLn/zzTcffPDBSZMm7d2795FHHomNjZW6KNfwwAMPpKamFhYWPvnkk15eXitXruzUqZPURTm7rKysZ555JjIycubMmQ33vP7662PHjpW2Kud35MiR3/3ud3379pXJZDt37hw7duyYMWOkLsoFhIeHh4eHN9w2Go0hISFxcXHSluQSTp06NWvWrP79+3POt2/f/sILLzjwu3xnnD7R4Pz588eOHYuJiRk4cKDUtbiM1NRUi8Vy5ccuXbpgLYLbqqurS05OvvaemJgYo9EoVT0uJD09PSUlhXOemJjYuXNnqctxPZcuXVKpVKGhoVIX4gJEUUxJSUlLS5PL5T179oyJiXFg484bhAAAAO3AGQfLAAAAtBsEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeDQEIQAAeLT/D/auulc0xF9uAAAAAElFTkSuQmCC", - "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", - "text/html": [ - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "slicedim(dim) = (a) -> map(e -> e[dim], a)\n", - "\n", - "px = plot()\n", - "px = plot!(px, t, mean.(result.posteriors[:f][]) |> slicedim(1), ribbon = var.(result.posteriors[:f][]) |> slicedim(1) .|> sqrt, label =\"Approximated process\")\n", - "px = plot!(px, t, f_true,label=\"true process\")\n", - "px = scatter!(px, t_obser, f_noisy[pos], label=\"Observations\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 1.7.1", - "language": "julia", - "name": "julia-1.7" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "1.7.1" - }, - "orig_nbformat": 4 - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/demo/GPRegression by SSM_M52.ipynb b/demo/GPRegression by SSM_M52.ipynb deleted file mode 100644 index cc4281306..000000000 --- a/demo/GPRegression by SSM_M52.ipynb +++ /dev/null @@ -1,428 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "using GraphPPL, Rocket, ReactiveMP\n", - "using Random, Distributions, LinearAlgebra, Revise\n", - "using Plots" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Solving GP Regression by SDE\n", - "In this notebook, we use kernel Matern-5/2. Recall the definition of Matern kernel:\n", - "$$\n", - "k(\\tau) = \\sigma^2 \\frac{2^{1-\\nu}}{\\Gamma(\\nu)} \\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)^\\nu K_\\nu\\left(\\frac{\\sqrt{2\\nu}\\tau}{l} \\right)\n", - "$$\n", - "\n", - "and the state-space model:\n", - "$$\n", - "\\mathbf{f}_k = \\mathbf{A}_{k-1} \\, \\mathbf{f}_{k-1} + \\mathbf{q}_{k-1}, \\quad \\mathbf{q}_{k-1} \\sim \\mathcal{N}(\\mathbf{0}, \\mathbf{Q}_{k-1}) \n", - "$$\n", - "$$\n", - "y_k = \\mathbf{H} \\, \\mathbf{f}(t_k) + \\epsilon_k , \\quad \\epsilon_k \\sim \\mathcal{N}(0, \\sigma^2_{noise}).\n", - "$$\n", - "The matrices for the SDE representation of the Matern-52 are:\n", - "$$\n", - "\\mathbf{F} = \\begin{pmatrix}\n", - "0 & 1 & 0\\\\\n", - "0 & 0 & 1 \\\\\n", - "-\\lambda^3 & -3\\lambda^2 & -3\\lambda\n", - "\\end{pmatrix} ,\\quad \\quad \\mathbf{L} = \\begin{pmatrix}\n", - "0 \\\\ 0 \\\\ 1\n", - "\\end{pmatrix}, \\quad \\quad \\mathbf{H} = \\begin{pmatrix}\n", - "1 & 0 & 0\n", - "\\end{pmatrix}, \\quad \\quad Q_c = \\frac{16}{3} \\sigma^2 \\lambda^5, \n", - "$$\n", - "where $\\lambda = \\sqrt{5} / l$. To find $\\mathbf{P}_\\infty$, we solve the Lyapunov equation\n", - "$$\n", - "\\frac{d\\mathbf{P}_\\infty}{dt} = \\mathbf{F} \\mathbf{P}_\\infty + \\mathbf{P}_\\infty \\mathbf{F}^T + \\mathbf{L} \\mathbf{Q}_c \\mathbf{L}^T = 0,\n", - "$$\n", - "and the solution of the equation is\n", - "$$ \n", - "vec(\\mathbf{P}_\\infty) = (\\mathbf{I} \\otimes \\mathbf{F} + \\mathbf{F}\\otimes\\mathbf{I})^{-1}\\, vec(-\\mathbf{L}Q_c\\mathbf{L}^T)\n", - "$$ \n", - "where $vec(.)$ is the vectorization operator and $\\otimes$ denotes the Kronecker product. Now we can find $\\mathbf{A}_k$ and $\\mathbf{Q}_k$ \n", - "$$\n", - "\\mathbf{A}_k = \\exp{(\\mathbf{F}\\Delta t_k)} \n", - "$$\n", - "$$\n", - "\\mathbf{Q}_k = \\mathbf{P}_\\infty - \\mathbf{A}_k \\mathbf{P}_\\infty \\mathbf{A}_k^T \n", - "$$" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Specify model" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "@model function gp_regression(n, P∞, A, Q, H)\n", - " f_0 ~ MvNormalMeanCovariance(zeros(3), P∞)\n", - " f = randomvar(n)\n", - " y = datavar(Float64, n) where { allow_missing = true }\n", - " \n", - " f_prev = f_0\n", - "\n", - " for i=1:n\n", - " f[i] ~ MvNormalMeanCovariance(A[i] * f_prev, Q[i])\n", - " y[i] ~ NormalMeanVariance(dot(H , f[i]), 0.04)\n", - " f_prev = f[i]\n", - " end\n", - " return f, y\n", - "end" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "@rule MvNormalMeanCovariance(:μ, Marginalisation) (m_out::Missing, q_Σ::PointMass, ) = missing\n", - "\n", - "@rule typeof(*)(:in, Marginalisation) (m_out::Missing, m_A::PointMass, meta::TinyCorrection) = missing\n", - "\n", - "@rule NormalMeanVariance(:μ, Marginalisation) (q_out::Missing, q_v::PointMass) = missing\n", - "\n", - "@rule typeof(dot)(:in2, Marginalisation) (m_out::Missing, m_in1::PointMass, meta::TinyCorrection) = missing" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Generate data" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "Random.seed!(10)\n", - "n = 100\n", - "\n", - "t = collect(range(0, 5, length=n)); #timeline\n", - "f_true = 2*sin.(t) .+ cos.(2*t); # true process\n", - "f_noisy = f_true + sqrt(0.04)*randn(n); #noisy process\n", - "\n", - "pos = sort(randperm(75)[1:2:75]); \n", - "t_obser = t[pos]; # time where we observe data\n", - "\n", - "y_data = Array{Union{Float64,Missing}}(missing, n)\n", - "for i in pos \n", - " y_data[i] = f_noisy[i]\n", - "end\n", - "\n", - "θ = [1., 1.]; # store [l, σ²]\n", - "λ = sqrt(5)/θ[1];\n", - "Δt = [t[1]]; #time difference\n", - "append!(Δt, t[2:end] - t[1:end-1]);\n", - "\n", - "#### compute matrices for the state-space model ######\n", - "L = [0., 0., 1.];\n", - "H = [1., 0., 0.];\n", - "F = [0. 1. 0.; 0. 0. 1.;-λ^3 -3λ^2 -3λ]\n", - "Qc = 16/3 * θ[2] * λ^5;\n", - "\n", - "I = diageye(3) ; \n", - "vec_P = inv(kron(I,F) + kron(F,I)) * vec(-L * Qc * L'); \n", - "P∞ = reshape(vec_P,3,3);\n", - "A = [exp(F * i) for i in Δt]; \n", - "Q = [P∞ - i*P∞*i' for i in A];" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Inference results:\n", - "-----------------------------------------\n", - "f = Vector{AbstractMvNormal}[[MvNormalWeightedMeanPrecision(\n", - "xi: [65.85526392511194,...\n", - "f_0 = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "result = inference(\n", - " model = Model(gp_regression, n, P∞, A, Q, H),\n", - " data = (y = y_data,)\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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", - "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", - "text/html": [ - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "slicedim(dim) = (a) -> map(e -> e[dim], a)\n", - "\n", - "px = plot()\n", - "px = plot!(px, t, mean.(result.posteriors[:f][]) |> slicedim(1), ribbon = var.(result.posteriors[:f][]) |> slicedim(1) .|> sqrt, label =\"Approximated process\")\n", - "px = plot!(px, t, f_true,label=\"true process\")\n", - "px = scatter!(px, t_obser, f_noisy[pos], label=\"Observations\")\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 1.7.1", - "language": "julia", - "name": "julia-1.7" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "1.7.1" - }, - "orig_nbformat": 4 - }, - "nbformat": 4, - "nbformat_minor": 2 -} From a356f325b9371eee1465adab22497ff18d2a1c94 Mon Sep 17 00:00:00 2001 From: Bart van Erp Date: Thu, 22 Sep 2022 12:47:49 +0200 Subject: [PATCH 17/26] update demo with Plots.jl --- demo/Invertible Neural Network Tutorial.ipynb | 840 +++++++++++++++++ demo/Normalizing Flow Tutorial.ipynb | 889 ------------------ 2 files changed, 840 insertions(+), 889 deletions(-) create mode 100644 demo/Invertible Neural Network Tutorial.ipynb delete mode 100644 demo/Normalizing Flow Tutorial.ipynb diff --git a/demo/Invertible Neural Network Tutorial.ipynb b/demo/Invertible Neural Network Tutorial.ipynb new file mode 100644 index 000000000..5d2e3bc29 --- /dev/null +++ b/demo/Invertible Neural Network Tutorial.ipynb @@ -0,0 +1,840 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Invertible neural networks: a tutorial\n", + "\n", + "\n", + "*Table of contents*\n", + "1. [Introduction](#Introduction)\n", + "2. [Model specification](#Model-specification)\n", + "3. [Model compilation](#Model-compilation)\n", + "4. [Probabilistic inference](#Probabilistic-inference)\n", + "5. [Parameter estimation](#Parameter-estimation)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load required packages\n", + "Before we can start, we need to import some packages:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "using ReactiveMP\n", + "using Rocket\n", + "using GraphPPL\n", + "using Random\n", + "using StableRNGs\n", + "\n", + "using LinearAlgebra # only used for some matrix specifics\n", + "using Plots # only used for visualisation\n", + "using Distributions # only used for sampling from multivariate distributions\n", + "using Optim # only used for parameter optimisation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Model specification" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Specifying an invertible neural network model is easy. The general recipe looks like follows: `model = FlowModel(input_dim, (layer1(options), layer2(options), ...))`. Here the first argument corresponds to the input dimension of the model and the second argument is a tuple of layers. An example model can be defined as " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "model = FlowModel(2,\n", + " (\n", + " AdditiveCouplingLayer(PlanarFlow()),\n", + " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", + " )\n", + ");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Alternatively, the `input_dim` can also be passed as an `InputLayer` layer as " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "model = FlowModel(\n", + " (\n", + " InputLayer(2),\n", + " AdditiveCouplingLayer(PlanarFlow()),\n", + " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", + " )\n", + ");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the above `AdditiveCouplingLayer` layers the input ${\\bf{x}} = [x_1, x_2, \\ldots, x_N]$ is partitioned into chunks of unit length. These partitions are additively coupled to an output ${\\bf{y}} = [y_1, y_2, \\ldots, y_N]$ as \n", + "$$\n", + "\\begin{align*}\n", + " y_1 &= x_1 \\\\\n", + " y_2 &= x_2 + f_1(x_1) \\\\\n", + " \\vdots \\\\\n", + " y_N &= x_N + f_{N-1}(x_{N-1})\n", + "\\end{align*}\n", + "$$\n", + "Importantly, this structure can easily be converted as \n", + "$$\n", + "\\begin{align*}\n", + " x_1 &= y_1 \\\\\n", + " x_2 &= y_2 - f_1(x_1) \\\\\n", + " \\vdots \\\\\n", + " x_N &= y_N - f_{N-1}(x_{N-1})\n", + "\\end{align*}\n", + "$$\n", + "$f_n$ is an arbitrarily complex function, here chosen to be a `PlanarFlow`, but this can be interchanged for any function or neural network. The `permute` keyword argument (which defaults to `true`) specifies whether the output of this layer should be randomly permuted or shuffled. This makes sure that the first element is also transformed in consecutive layers.\n", + "\n", + "A permutation layer can also be added by itself as a `PermutationLayer` layer with a custom permutation matrix if desired." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "model = FlowModel(\n", + " (\n", + " InputLayer(2),\n", + " AdditiveCouplingLayer(PlanarFlow(); permute=false),\n", + " PermutationLayer(PermutationMatrix(2)),\n", + " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", + " )\n", + ");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Model compilation\n", + "In the current models, the layers are setup to work with the passed input dimension. This means that the function $f_n$ is repeated `input_dim-1` times for each of the partitions. Furthermore the permutation layers are set up with proper permutation matrices. If we print the model we get" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "FlowModel{3, Tuple{ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}, PermutationLayer{Int64}, ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}}}(2, (ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}(2, (ReactiveMP.PlanarFlowEmpty{1}(),), 1), PermutationLayer{Int64}(2, [0 1; 1 0]), ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}(2, (ReactiveMP.PlanarFlowEmpty{1}(),), 1)))" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The text below describes the terms above. Please note the distinction in typing and elements, i.e. `FlowModel{types}(elements)`:\n", + "- `FlowModel` - specifies that we are dealing with a flow model.\n", + "- `3` - Number of layers.\n", + "- `Tuple{AdditiveCouplingLayerEmpty{...},PermutationLayer{Int64},AdditiveCouplingLayerEmpty{...}}` - tuple of layer types.\n", + "- `Tuple{ReactiveMP.PlanarFlowEmpty{1},ReactiveMP.PlanarFlowEmpty{1}}` - tuple of functions $f_n$.\n", + "- `PermutationLayer{Int64}(2, [0 1; 1 0])` - permutation layer with input dimension 2 and permutation matrix `[0 1; 1 0]`.\n", + "\n", + "From inspection we can see that the `AdditiveCouplingLayerEmpty` and `PlanarFlowEmpty` objects are different than before. They are initialized for the correct dimension, but they do not have any parameters registered to them. This is by design to allow for separating the model specification from potential optimization procedures. Before we perform inference in this model, the parameters should be initialized. We can randomly initialize the parameters as" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "CompiledFlowModel{3, Tuple{AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}, PermutationLayer{Int64}, AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}}}(2, (AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(-1.6555202908557367, -0.5756409606687116, -0.30592300178927506),), 1), PermutationLayer{Int64}(2, [0 1; 1 0]), AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(0.8424832409704074, -0.4536358004893052, 0.9741008069461347),), 1)))" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "compiled_model = compile(model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we can see that random parameters have been assigned to the individual functions inside of our model. Alternatively if we would like to pass our own parameters, then this is also possible. You can easily find the required number of parameters using the `nr_params(model)` function." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "CompiledFlowModel{3, Tuple{AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}, PermutationLayer{Int64}, AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}}}(2, (AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(0.7296412319250487, -0.9767336128037319, -0.4749869451771002),), 1), PermutationLayer{Int64}(2, [0 1; 1 0]), AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(0.3490911082645933, -0.8184067956921087, -1.4578214732352386),), 1)))" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "compiled_model = compile(model, randn(StableRNG(321), nr_params(model)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Probabilistic inference" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can perform inference in our compiled model through standard usage of ReactiveMP. Let's first generate some random 2D data which has been sampled from a standard normal distribution and is consecutively passed through an invertible neural network. Using the `forward(model, data)` function we can propagate data in the forward direction." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "function generate_data(nr_samples::Int64, model::CompiledFlowModel; seed = 123)\n", + "\n", + " rng = StableRNG(seed)\n", + " \n", + " # specify latent sampling distribution\n", + " dist = MvNormal([1.5, 0.5], I)\n", + "\n", + " # sample from the latent distribution\n", + " x = rand(rng, dist, nr_samples)\n", + "\n", + " # transform data\n", + " y = zeros(Float64, size(x))\n", + " for k = 1:nr_samples\n", + " y[:,k] .= ReactiveMP.forward(model, x[:,k])\n", + " end\n", + "\n", + " # return data\n", + " return y, x\n", + "\n", + "end;" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# generate data\n", + "y, x = generate_data(1000, compiled_model)\n", + "\n", + "# plot generated data\n", + "p1 = scatter(x[1,:], x[2,:], alpha=0.3, title=\"Original data\", size=(800,400))\n", + "p2 = scatter(y[1,:], y[2,:], alpha=0.3, title=\"Transformed data\", size=(800,400))\n", + "plot(p1, p2, legend = false)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The probabilistic model for doing inference can be described as " + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "@model function invertible_neural_network(nr_samples::Int64)\n", + " \n", + " # initialize variables\n", + " z_μ = randomvar()\n", + " z_Λ = randomvar()\n", + " x = randomvar(nr_samples)\n", + " y_lat = randomvar(nr_samples)\n", + " y = datavar(Vector{Float64}, nr_samples)\n", + "\n", + " # specify prior\n", + " z_μ ~ MvNormalMeanCovariance(zeros(2), huge*diagm(ones(2)))\n", + " z_Λ ~ Wishart(2.0, tiny*diagm(ones(2)))\n", + "\n", + " # specify observations\n", + " for k = 1:nr_samples\n", + "\n", + " # specify latent state\n", + " x[k] ~ MvNormalMeanPrecision(z_μ, z_Λ)\n", + "\n", + " # specify transformed latent value\n", + " y_lat[k] ~ Flow(x[k])\n", + "\n", + " # specify observations\n", + " y[k] ~ MvNormalMeanCovariance(y_lat[k], tiny*diagm(ones(2)))\n", + "\n", + " end\n", + "\n", + " # return variables\n", + " return z_μ, z_Λ, x, y_lat, y\n", + "\n", + "end;" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here the model is passed inside a meta data object of the flow node.\n", + "Inference then resorts to" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Inference results:\n", + "-----------------------------------------\n", + "Free Energy: Real[29485.3, 23762.9, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6]\n", + "-----------------------------------------\n", + "z_μ = MvNormalWeightedMeanPrecision(\n", + "xi: [1.4511872274242995e-6, 5.189506596523623e-7]...\n", + "z_Λ = Wishart{Float64, PDMats.PDMat{Float64, Matrix{Float64}}, Int64}(\n", + "df: 1002.0\n", + "S: [...\n", + "y_lat = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n", + "x = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "observations = [y[:,k] for k=1:size(y,2)]\n", + "\n", + "fmodel = Model(invertible_neural_network, length(observations))\n", + "data = (y = observations, )\n", + "initmarginals = (z_μ = MvNormalMeanCovariance(zeros(2), huge*diagm(ones(2))), z_Λ = Wishart(2.0, tiny*diagm(ones(2))))\n", + "returnvars = (z_μ = KeepLast(), z_Λ = KeepLast(), x = KeepLast(), y_lat = KeepLast())\n", + "\n", + "constraints = @constraints begin\n", + " q(z_μ, x, z_Λ) = q(z_μ)q(z_Λ)q(x)\n", + "end\n", + "\n", + "@meta function fmeta(model)\n", + " compiled_model = compile(model, randn(StableRNG(321), nr_params(model)))\n", + " Flow(y_lat, x) -> FlowMeta(compiled_model) # defaults to FlowMeta(compiled_model; approximation=Linearization()). \n", + " # other approximation methods can be e.g. FlowMeta(compiled_model; approximation=Unscented(input_dim))\n", + "end\n", + "\n", + "# First execution is slow due to Julia's initial compilation \n", + "result = inference(\n", + " model = fmodel, \n", + " data = data,\n", + " constraints = constraints,\n", + " meta = fmeta(model),\n", + " initmarginals = initmarginals,\n", + " returnvars = returnvars,\n", + " free_energy = true,\n", + " iterations = 10, \n", + " showprogress = false\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "fe_flow = result.free_energy\n", + "zμ_flow = result.posteriors[:z_μ]\n", + "zΛ_flow = result.posteriors[:z_Λ]\n", + "x_flow = result.posteriors[:x]\n", + "y_flow = result.posteriors[:y_lat];" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we can see, the variational free energy decreases inside of our model." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(1:10, fe_flow/size(y,2), xlabel=\"iteration\", ylabel=\"normalized variational free energy [nats/sample]\", legend=false)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If we plot a random noisy observation and its approximated transformed uncertainty we obtain:" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# pick a random observation\n", + "id = rand(StableRNG(321), 1:size(y,2))\n", + "rand_observation = MvNormal(y[:,id], 5e-1*diagm(ones(2)))\n", + "warped_observation = MvNormal(ReactiveMP.backward(compiled_model, y[:,id]), ReactiveMP.inv_jacobian(compiled_model, y[:,id])*5e-1*diagm(ones(2))*ReactiveMP.inv_jacobian(compiled_model, y[:,id])');\n", + "\n", + "p1 = scatter(x[1,:], x[2,:], alpha=0.1, title=\"Latent distribution\", size=(1200,500), label=\"generated data\")\n", + "contour!(-5:0.1:5, -5:0.1:5, (x, y) -> pdf(MvNormal([1.5, 0.5], I), [x, y]), c=:viridis, colorbar=false, linewidth=2)\n", + "scatter!([mean(zμ_flow)[1]], [mean(zμ_flow)[2]], color=\"red\", markershape=:x, markersize=5, label=\"inferred mean\")\n", + "contour!(-5:0.01:5, -5:0.01:5, (x, y) -> pdf(warped_observation, [x, y]), colors=\"red\", levels=1, linewidth=2, colorbar=false)\n", + "scatter!([mean(warped_observation)[1]], [mean(warped_observation)[2]], color=\"red\", label=\"transformed noisy observation\")\n", + "p2 = scatter(y[1,:], y[2,:], alpha=0.1, label=\"generated data\")\n", + "scatter!([ReactiveMP.forward(compiled_model, mean(zμ_flow))[1]], [ReactiveMP.forward(compiled_model, mean(zμ_flow))[2]], color=\"red\", marker=:x, label=\"inferred mean\")\n", + "contour!(-10:0.1:10, -10:0.1:10, (x, y) -> pdf(MvNormal([1.5, 0.5], I), ReactiveMP.backward(compiled_model, [x, y])), c=:viridis, colorbar=false, linewidth=2)\n", + "contour!(-10:0.1:10, -10:0.1:10, (x, y) -> pdf(rand_observation, [x, y]), colors=\"red\", levels=1, linewidth=2, label=\"random noisy observation\", colorba=false)\n", + "scatter!([mean(rand_observation)[1]], [mean(rand_observation)[2]], color=\"red\", label=\"random noisy observation\")\n", + "plot(p1, p2, legend = true)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parameter estimation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The flow model is often used to learn unknown probabilistic mappings. Here we will demonstrate it as follows for a binary classification task with the following data:" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "function generate_data(nr_samples::Int64; seed = 123)\n", + " \n", + " rng = StableRNG(seed)\n", + "\n", + " # sample weights\n", + " w = rand(rng, nr_samples, 2)\n", + "\n", + " # sample appraisal\n", + " y = zeros(Float64, nr_samples)\n", + " for k = 1:nr_samples\n", + " y[k] = 1.0*(w[k,1] > 0.5)*(w[k,2] < 0.5)\n", + " end\n", + "\n", + " # return data\n", + " return y, w\n", + "\n", + "end;" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "data_y, data_x = generate_data(50);\n", + "scatter(data_x[:,1], data_x[:,2], marker_z=data_y, xlabel=\"w1\", ylabel=\"w2\", colorbar=false, legend=false)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will then specify a possible model as" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "# specify flow model\n", + "model = FlowModel(2,\n", + " (\n", + " AdditiveCouplingLayer(PlanarFlow()), # defaults to AdditiveCouplingLayer(PlanarFlow(); permute=true)\n", + " AdditiveCouplingLayer(PlanarFlow()),\n", + " AdditiveCouplingLayer(PlanarFlow()),\n", + " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", + " )\n", + ");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The corresponding probabilistic model for the binary classification task can be created as" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "@model [default_factorisation=FullFactorisation()] function invertible_neural_network_classifier(nr_samples::Int64)\n", + " \n", + " # initialize variables\n", + " x_lat = randomvar(nr_samples)\n", + " y_lat1 = randomvar(nr_samples)\n", + " y_lat2 = randomvar(nr_samples)\n", + " y = datavar(Float64, nr_samples)\n", + " x = datavar(Vector{Float64}, nr_samples)\n", + "\n", + " # specify observations\n", + " for k = 1:nr_samples\n", + "\n", + " # specify latent state\n", + " x_lat[k] ~ MvNormalMeanPrecision(x[k], 1e3*diagm(ones(2)))\n", + "\n", + " # specify transformed latent value\n", + " y_lat1[k] ~ Flow(x_lat[k])\n", + " y_lat2[k] ~ dot(y_lat1[k], [1, 1])\n", + "\n", + " # specify observations\n", + " y[k] ~ Probit(y_lat2[k]) # default: where { pipeline = RequireMessage(in = NormalMeanPrecision(0, 1.0)) }\n", + "\n", + " end\n", + "\n", + " # return variables\n", + " return x_lat, x, y_lat1, y_lat2, y\n", + "\n", + "end;" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "fmeta (generic function with 2 methods)" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fcmodel = Model(invertible_neural_network_classifier, length(data_y))\n", + "data = (y = data_y, x = [data_x[k,:] for k=1:size(data_x,1)], )\n", + "\n", + "@meta function fmeta(model, params)\n", + " compiled_model = compile(model, params)\n", + " Flow(y_lat1, x_lat) -> FlowMeta(compiled_model)\n", + "end" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here we see that the compilation occurs inside of our probabilistic model. As a result we can pass parameters (and a model) to this function which we wish to opmize for some criterium, such as the variational free energy. Inference can be described as" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For the optimization procedure, we will simplify our inference loop, such that it only accepts parameters as an argument (which is wishes to optimize) and outputs a performance metric." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [], + "source": [ + "function f(params)\n", + " Random.seed!(123) # Flow uses random permutation matrices, which is not good for the optimisation procedure\n", + " result = inference(\n", + " model = fcmodel, \n", + " data = data,\n", + " meta = fmeta(model, params),\n", + " free_energy = true,\n", + " free_energy_diagnostics = nothing, # Free Energy can be set to NaN due to optimization procedure\n", + " iterations = 10, \n", + " showprogress = false\n", + " );\n", + " \n", + " result.free_energy[end]\n", + "end;" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Optimization can be performed using the `Optim` package. Alternatively, other (custom) optimizers can be implemented, such as:\n", + "\n", + "```julia\n", + "res = optimize(f, randn(StableRNG(42), nr_params(model)), GradientDescent(), Optim.Options(store_trace = true, show_trace = true, show_every = 50), autodiff=:forward)\n", + "``` \n", + "\n", + "- uses finitediff and is slower/less accurate.\n", + "\n", + "*or*\n", + "\n", + "```julia\n", + "# create gradient function\n", + "g = (x) -> ForwardDiff.gradient(f, x);\n", + "\n", + "# specify initial params\n", + "params = randn(nr_params(model))\n", + "\n", + "# create custom optimizer (here Adam)\n", + "optimizer = Adam(params; λ=1e-1)\n", + "\n", + "# allocate space for gradient\n", + "∇ = zeros(nr_params(model))\n", + "\n", + "# perform optimization\n", + "for it = 1:10000\n", + "\n", + " # backward pass\n", + " ∇ .= ForwardDiff.gradient(f, optimizer.x)\n", + "\n", + " # gradient update\n", + " ReactiveMP.update!(optimizer, ∇)\n", + "\n", + "end\n", + "\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Iter Function value Gradient norm \n", + " 0 6.087938e+02 8.678361e+02\n", + " * time: 0.018999814987182617\n", + " 100 1.552913e+01 4.961002e+00\n", + " * time: 16.018999814987183\n", + " 200 8.852174e+00 3.512656e+00\n", + " * time: 30.923999786376953\n" + ] + }, + { + "data": { + "text/plain": [ + " * Status: success\n", + "\n", + " * Candidate solution\n", + " Final objective value: 7.114043e+00\n", + "\n", + " * Found with\n", + " Algorithm: Gradient Descent\n", + "\n", + " * Convergence measures\n", + " |x - x'| = 1.88e-03 ≰ 0.0e+00\n", + " |x - x'|/|x'| = 8.18e-04 ≰ 0.0e+00\n", + " |f(x) - f(x')| = 7.08e-03 ≰ 0.0e+00\n", + " |f(x) - f(x')|/|f(x')| = 9.95e-04 ≤ 1.0e-03\n", + " |g(x)| = 1.86e+00 ≰ 1.0e-08\n", + "\n", + " * Work counters\n", + " Seconds run: 43 (vs limit Inf)\n", + " Iterations: 289\n", + " f(x) calls: 740\n", + " ∇f(x) calls: 740\n" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "res = optimize(f, randn(StableRNG(42), nr_params(model)), GradientDescent(), Optim.Options(f_tol = 1e-3, store_trace = true, show_trace = true, show_every = 100), autodiff=:forward)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "optimization results are then given as" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "params = Optim.minimizer(res)\n", + "inferred_model = compile(model, params)\n", + "trans_data_x_1 = hcat(map((x) -> ReactiveMP.forward(inferred_model, x), [data_x[k,:] for k=1:size(data_x,1)])...)'\n", + "trans_data_x_2 = map((x) -> dot([1, 1], x), [trans_data_x_1[k,:] for k=1:size(data_x,1)])\n", + "trans_data_x_2_split = [trans_data_x_2[data_y .== 1.0], trans_data_x_2[data_y .== 0.0]]\n", + "p1 = scatter(data_x[:,1], data_x[:,2], marker_z = data_y, size=(1200,400), c=:viridis, colorbar=false, title=\"original data\")\n", + "p2 = scatter(trans_data_x_1[:,1], trans_data_x_1[:,2], marker_z = data_y, c=:viridis, size=(1200,400), colorbar=false, title=\"|> warp\")\n", + "p3 = histogram(trans_data_x_2_split; stacked=true, bins=50, size=(1200,400), title=\"|> dot\")\n", + "plot(p1, p2, p3, layout=(1,3), legend=false)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "using StatsFuns: normcdf\n", + "p1 = scatter(data_x[:,1], data_x[:,2], marker_z = data_y, title=\"original labels\", xlabel=\"weight 1\", ylabel=\"weight 2\", size=(1200,400), c=:viridis)\n", + "p2 = scatter(data_x[:,1], data_x[:,2], marker_z = normcdf.(trans_data_x_2), title=\"predicted labels\", xlabel=\"weight 1\", ylabel=\"weight 2\", size=(1200,400), c=:viridis)\n", + "p3 = contour(0:0.01:1, 0:0.01:1, (x, y) -> normcdf(dot([1,1], ReactiveMP.forward(inferred_model, [x,y]))), title=\"Classification map\", xlabel=\"weight 1\", ylabel=\"weight 2\", size=(1200,400), c=:viridis)\n", + "plot(p1, p2, p3, layout=(1,3), legend=false)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.8.1", + "language": "julia", + "name": "julia-1.8" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.8.1" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/demo/Normalizing Flow Tutorial.ipynb b/demo/Normalizing Flow Tutorial.ipynb deleted file mode 100644 index 0220cb70a..000000000 --- a/demo/Normalizing Flow Tutorial.ipynb +++ /dev/null @@ -1,889 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Normalizing flows: a tutorial\n", - "\n", - "\n", - "*Table of contents*\n", - "1. [Introduction](#Introduction)\n", - "2. [Model specification](#Model-specification)\n", - "3. [Model compilation](#Model-compilation)\n", - "4. [Probabilistic inference](#Probabilistic-inference)\n", - "5. [Parameter estimation](#Parameter-estimation)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Introduction\n", - "*Normalizing flows* are parameterized mappings of random variables, which map simple base distributions to more complex distributions.\n", - "These mappings are constrained to be invertible and differentiable and can be composed of multiple simpler mappings for improved expressivity." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Load required packages\n", - "Before we can start, we need to import some packages:" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "using ReactiveMP\n", - "using Rocket\n", - "using GraphPPL\n", - "using Random\n", - "using StableRNGs\n", - "\n", - "using LinearAlgebra # only used for some matrix specifics\n", - "using PyPlot # only used for visualisation\n", - "using Distributions # only used for sampling from multivariate distributions\n", - "using Optim # only used for parameter optimisation" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Model specification" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Specifying a flow model is easy. The general recipe looks like follows: `model = FlowModel(input_dim, (layer1(options), layer2(options), ...))`. Here the first argument corresponds to the input dimension of the model and the second argument is a tuple of layers. An example flow model can be defined as " - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "model = FlowModel(2,\n", - " (\n", - " AdditiveCouplingLayer(PlanarFlow()),\n", - " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", - " )\n", - ");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Alternatively, the `input_dim` can also be passed as an `InputLayer` layer as " - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "model = FlowModel(\n", - " (\n", - " InputLayer(2),\n", - " AdditiveCouplingLayer(PlanarFlow()),\n", - " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", - " )\n", - ");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In the above `AdditiveCouplingLayer` layers the input ${\\bf{x}} = [x_1, x_2, \\ldots, x_N]$ is partitioned into chunks of unit length. These partitions are additively coupled to an output ${\\bf{y}} = [y_1, y_2, \\ldots, y_N]$ as \n", - "$$\n", - "\\begin{align*}\n", - " y_1 &= x_1 \\\\\n", - " y_2 &= x_2 + f_1(x_1) \\\\\n", - " \\vdots \\\\\n", - " y_N &= x_N + f_{N-1}(x_{N-1})\n", - "\\end{align*}\n", - "$$\n", - "Importantly, this structure can easily be converted as \n", - "$$\n", - "\\begin{align*}\n", - " x_1 &= y_1 \\\\\n", - " x_2 &= y_2 - f_1(x_1) \\\\\n", - " \\vdots \\\\\n", - " x_N &= y_N - f_{N-1}(x_{N-1})\n", - "\\end{align*}\n", - "$$\n", - "$f_n$ is an arbitrarily complex function, here chosen to be a `PlanarFlow`, but this can be interchanged for any function or neural network. The `permute` keyword argument (which defaults to `true`) specifies whether the output of this layer should be randomly permuted or shuffled. This makes sure that the first element is also transformed in consecutive layers.\n", - "\n", - "A permutation layer can also be added by itself as a `PermutationLayer` layer with a custom permutation matrix if desired." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "model = FlowModel(\n", - " (\n", - " InputLayer(2),\n", - " AdditiveCouplingLayer(PlanarFlow(); permute=false),\n", - " PermutationLayer(PermutationMatrix(2)),\n", - " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", - " )\n", - ");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Model compilation\n", - "In the current models, the layers are setup to work with the passed input dimension. This means that the function $f_n$ is repeated `input_dim-1` times for each of the partitions. Furthermore the permutation layers are set up with proper permutation matrices. If we print the model we get" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "FlowModel{3, Tuple{ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}, PermutationLayer{Int64}, ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}}}(2, (ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}(2, (ReactiveMP.PlanarFlowEmpty{1}(),), 1), PermutationLayer{Int64}(2, [0 1; 1 0]), ReactiveMP.AdditiveCouplingLayerEmpty{Tuple{ReactiveMP.PlanarFlowEmpty{1}}}(2, (ReactiveMP.PlanarFlowEmpty{1}(),), 1)))" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The text below describes the terms above. Please note the distinction in typing and elements, i.e. `FlowModel{types}(elements)`:\n", - "- `FlowModel` - specifies that we are dealing with a flow model.\n", - "- `3` - Number of layers.\n", - "- `Tuple{AdditiveCouplingLayerEmpty{...},PermutationLayer{Int64},AdditiveCouplingLayerEmpty{...}}` - tuple of layer types.\n", - "- `Tuple{ReactiveMP.PlanarFlowEmpty{1},ReactiveMP.PlanarFlowEmpty{1}}` - tuple of functions $f_n$.\n", - "- `PermutationLayer{Int64}(2, [0 1; 1 0])` - permutation layer with input dimension 2 and permutation matrix `[0 1; 1 0]`.\n", - "\n", - "From inspection we can see that the `AdditiveCouplingLayerEmpty` and `PlanarFlowEmpty` objects are different than before. They are initialized for the correct dimension, but they do not have any parameters registered to them. This is by design to allow for separating the model specification from potential optimization procedures. Before we perform inference in this model, the parameters should be initialized. We can randomly initialize the parameters as" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "CompiledFlowModel{3, Tuple{AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}, PermutationLayer{Int64}, AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}}}(2, (AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(-0.8441782268187968, 0.07261586851734006, -0.5812091429879963),), 1), PermutationLayer{Int64}(2, [0 1; 1 0]), AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(-0.7407881512459824, -1.04813786514001, -0.03330211394919078),), 1)))" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "compiled_model = compile(model)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now we can see that random parameters have been assigned to the individual functions inside of our model. Alternatively if we would like to pass our own parameters, then this is also possible. You can easily find the required number of parameters using the `nr_params(model)` function." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "CompiledFlowModel{3, Tuple{AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}, PermutationLayer{Int64}, AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}}}(2, (AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(0.7296412319250487, -0.9767336128037319, -0.4749869451771002),), 1), PermutationLayer{Int64}(2, [0 1; 1 0]), AdditiveCouplingLayer{Tuple{PlanarFlow{Float64, Float64}}}(2, (PlanarFlow{Float64, Float64}(0.3490911082645933, -0.8184067956921087, -1.4578214732352386),), 1)))" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "compiled_model = compile(model, randn(StableRNG(321), nr_params(model)))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Probabilistic inference" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can perform inference in our compiled model through standard usage of ReactiveMP. Let's first generate some random 2D data which has been sampled from a standard normal distribution and is consecutively passed through a normalizing flow. Using the `forward(model, data)` function we can propagate data in the forward direction through the flow." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [], - "source": [ - "function generate_data(nr_samples::Int64, model::CompiledFlowModel; seed = 123)\n", - "\n", - " rng = StableRNG(seed)\n", - " \n", - " # specify latent sampling distribution\n", - " dist = MvNormal([1.5, 0.5], I)\n", - "\n", - " # sample from the latent distribution\n", - " x = rand(rng, dist, nr_samples)\n", - "\n", - " # transform data\n", - " y = zeros(Float64, size(x))\n", - " for k = 1:nr_samples\n", - " y[:,k] .= ReactiveMP.forward(model, x[:,k])\n", - " end\n", - "\n", - " # return data\n", - " return y, x\n", - "\n", - "end;" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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z0JRFHRdnxKUq1ar/N//+38Xtb39+/cD8IUvfGHK41/+8pdntFtRlEaB1gk//elP+eEPfzjlsYnnzDbyNts2vvnNb9LX17eo9gshhBBiY5kIGE3vT/yv//W/lmT78Xic17zmNXz0ox/FcRyeeeaZeZ9700038dWvfnVKvycIAv7hH/6B3t5edu/evSTtmkssFuO2227jqaee4pprruHGG2+c8W9igPO2227jmWee4Sc/+cmUbXzxi1+84PvE43Fe9KIX8dWvfnVKdlyxWORf//Vfpzx3ts8oDEP+5m/+ZsZ2Lcuas8+4lH1eITYiyfASYoN46Utfyj333MP73/9+brnlFt7znvewdetWTp8+zV/+5V/y6KOPcs8993DzzTcvavtXX301v/zLv8yf/umfomkar3jFK3jmmWf40z/9U9LpdGNVoYv1ute9jj/7sz/jrW99K//xP/5HRkdH+ZM/+ZMZnb5mXXnllbztbW/jnnvuwTAMXvWqV3Hw4EH+5E/+hFQqNeW5r3/96/mDP/gDPv7xj3Prrbdy6NAhfv/3f58dO3ZMCY4lk0m2bdvGv/zLv/DKV76S1tZW2tvb2b59O69//ev5u7/7O/bs2cM111zDE088wf/4H/9jztUzhRBCCCEmu/nmm2lpaeG3fuu3+PjHP45hGHzhC1+YEcRZiN/4jd8gGo3y0pe+lE2bNjEwMMDdd99NOp3mhS984byvvfvuu7n99tu57bbb+M//+T9jmiaf/exnOXjwIP/4j/+45Blds/nzP/9zbrnlFl72spfx27/922zfvp1iscjRo0f513/918bKle9///v527/9W173utfx3//7f2+s0vj888839T5/8Ad/wKtf/Wpuv/12PvCBD+D7Pp/+9KeJx+ON1bwBbr/9dkzT5Jd/+Zf54Ac/SK1W49577yWbzc7Y5r59+/jqV7/Kvffeyw033ICqqtx4441L3ucVYiOSDC8hNpD3vve9fP/736e3t5cPfOADvOIVr+Cuu+5i06ZNPPLII7z3ve+9qO1//vOf533vex+f+9znuPPOO/nSl77El7/8ZYAlm673ile8gr/927/lwIED3HnnnXz0ox/lzW9+M7/3e7+36G1+7nOf46677uLv/u7veMMb3sCXv/xlvvKVr9DS0jLleR/96Ef5wAc+wOc+9zle97rX8b//9//mr/7qr7jllltm3WYsFuMNb3gDL3zhC/nEJz4B1Dtkb3vb27j77ru58847+cY3vsFXv/pVLrvsskW3XwghhBAbR1tbG9/85jeJxWK87W1v413veheJRGJGlv1CvOxlL+PgwYO8733v4/bbb+d3f/d32b17Nw8//DAdHR3zvvbWW2/lu9/9LvF4nHe84x285S1vIZ/P841vfINf+qVfWnSbFuKqq67iySefZO/evfzX//pfueOOO/j1X/91/vmf/5lXvvKVjed1d3fz0EMPcdVVV/Hbv/3bvO1tbyMSifAXf/EXTb3P7bffzte//nUKhQK/9Eu/xF133cXP//zP8653vWvK8/bs2cNXvvIVstksb3rTm3jve9/LC17wAv7n//yfM7b5vve9jze/+c185CMf4cUvfnEjwLgcfV4hNholnFiWTQghlsEPfvADXvrSl/KFL3yhqRVwhBBCCCGEEEKIiyUBLyHEkrn//vv54Q9/yA033EA0GuUnP/kJf/RHf0Q6neanP/3pjBWChBBCCCGEEEKI5SA1vIQQSyaVSnHfffdxzz33UCwWaW9v5zWveQ133323BLuEEEIIIYQQQlwykuElhBBCCCGEEEIIIdYVKVovhBBCCCGEEEIIIdYVCXgJIYQQQgghhBBCiHVFAl5CCCGEEEIIIYQQYl1Z1UXrgyCgv7+fZDKJoigr3RwhhBBCrBFhGFIsFunp6UFVZXxvNZJ+nhBCCCEWo9l+3qoOePX397Nly5aVboYQQggh1qgzZ87Q29u70s0Qs5B+nhBCCCEuxoX6eZcs4HX33XfzkY98hPe9733cc889Tb0mmUwC9Z1IpVLL2LrVz3Vd7rvvPu644w4Mw1jp5qxqcqyaJ8eqeXKsmifHqnlyrJq30GNVKBTYsmVLoy8hVp+10s/bqH+nG3W/YePuu+z3xtpv2Lj7Lvu99ve72X7eJQl4Pf744/z1X/8111xzzYJeN5HenkqlVnVH6FJwXZdYLEYqlVrzJ+dyk2PVPDlWzZNj1Tw5Vs2TY9W8xR4rmSq3eq2Vft5G/TvdqPsNG3ffZb831n7Dxt132e/1s98X6ucte1GLUqnEr/zKr/A3f/M3tLS0LPfbCSGEEEIIIYQQQogNbtkDXr/zO7/D6173Ol71qlct91sJIYQQQgghhBBCCLG8Uxq/9KUv8eSTT/L444839XzbtrFtu/FzoVAA6ql3rusuSxvXion93+jHoRlyrJonx6p5cqyaJ8eqeXKsmrfQYyXHVAghhBBiY1u2gNeZM2d43/vex3333UckEmnqNXfffTef/OQnZzx+3333EYvFlrqJa9L999+/0k1YM+RYNU+OVfPkWDVPjlXz5Fg1r9ljValUlrklQgghhBBiNVu2gNcTTzzB0NAQN9xwQ+Mx3/f53ve+x1/8xV9g2zaapk15zYc//GHuuuuuxs8TlffvuOOOVV3M9FJwXZf777+f22+/fd0UmFsucqyaJ8eqeXKsmifHqnlyrJq30GM1kSUuhBBCCCE2pmULeL3yla/kwIEDUx575zvfyZ49e/jQhz40I9gFYFkWlmXNeNwwDLkRGCfHonlyrJonx6p5cqyaJ8eqeXKsmtfssZLjKYQQQgixsS1b0fpkMsnevXun/IvH47S1tbF3797lelshhBBCCHGRvve973HnnXfS09ODoih8/etfn/L7MAz5xCc+QU9PD9FolP379/PMM8+sTGOFEEIIIWax7Ks0CiGEEEKItaVcLnPttdfyF3/xF7P+/o//+I/5sz/7M/7iL/6Cxx9/nO7ubm6//XaKxeIlbqkQQgghxOyWdZXG6R588MFL+XZCCCGEEGIRXvOa1/Ca17xm1t+FYcg999zDRz/6Ud70pjcB8Pd///d0dXXxxS9+kd/8zd+8lE0VQgghhJiVZHgJIYQQQoimnThxgoGBAe64447GY5Zlceutt/KDH/xgBVsmhBBCCHHeJc3wEkKIixGGIbmKi+0FWLpKJmagKMpKN0sIITaUgYEBALq6uqY83tXVxalTp+Z8nW3b2Lbd+HliJU3XdXFddxlaujQm2raa27gcNup+w8bdd9nvjbXfsHH3XfZ7afc7DEPyVRfbC7F0hXR0+e/Rmt0HCXgJIdaEoUKNg30F+nIVHD/A1FQ2Z2Ls3ZyiMxVZ6eYJIcSGM70zG4bhvB3cu+++m09+8pMzHr/vvvuIxWJL3r6ldv/99690E1bERt1v2Lj7Lvu98WzUfZf9XrsqlUpTz5OAlxBi1Rsq1Hjw0DD5qkNnMkLE0Ki5PseGi4yUbPZf0SFBLyGEuES6u7uBeqbXpk2bGo8PDQ3NyPqa7MMf/jB33XVX4+dCocCWLVu44447SKVSy9fgi+S6Lvfffz+33347hmGsdHMumY2637Bx9132e2PtN2zcfZf9Xpr9Hi7aPHJkhELNoSMRwTJUbDdguFQjFTG5ZVc7HUlrCVo+00SW+IVIwEsIsaqFYcjBvgL5qsP2tngjeyBu6Ww345wcLXOwr8BtSUumNwohxCWwY8cOuru7uf/++7nuuusAcByHhx56iE9/+tNzvs6yLCxrZsfXMIw1ccOxVtq51DbqfsPG3XfZ741no+677PfihWHI84NZ8rbP9vZU4z5M1yEWMTk5Wub5wQqbWuLLco/WbPsl4CWEWNVyFZe+XIXOZGTGxVJRFDqTEfpyFXIVl5a4uUKtXH5Sv0wIcSmVSiWOHj3a+PnEiRM8/fTTtLa2snXrVt7//vfzqU99il27drFr1y4+9alPEYvFeOtb37qCrRZCCCHEpbBW7tEk4CWEWNVsL8DxAyKGNuvvI4bGSNnG9oJL3LJLR+qXCSEutR//+MfcdtttjZ8npiK+/e1v5+/+7u/44Ac/SLVa5d3vfjfZbJabbrqJ++67j2QyuVJNFkIIIcQlslbu0STgJYRY1SxdxdRUaq5P3Jp5yaq5PqamYunqCrRu+Un9MiHESti/fz9hGM75e0VR+MQnPsEnPvGJS9coIYQQQqwKa+UebX3eIQoh1o1MzGBzJsZQsTbj5isMQ4aKNTZnYmRi62/+/fT6ZXFLR1OVev2ytjj5qsPBvsK8N6VCCCGEEEIIsZTWyj2aBLyEEKuaoijs3ZwiHa0XPyzbHn4QUrY9To6WScdM9m5Orct6VguZGy+EEEIIIYQQl8JauUeTKY1CiFWvMxVh/xUdjTpWI2UbU1O5rCO5rutYrZW58UIIIYQQQoiNZS3co0nASwixJnSmItyWtDbUSoVrZW68EEIIIYQQYuNZ7fdoEvASQqwZiqKs6LK2l9rE3Phjw0W2m/EpXxwTc+Mv60iu+Nx4IYQQQgghxMa0mu/RJC1ACCFWqbUyN14IIYQQQgghVhvJ8BJCiFVsLcyNF0IIIYQQQojVRgJeQgixyq32ufFCCCGEEEIIsdpIwEsIIdaA1Tw3XgghhBBCCCFWG6nhJYQQQgghhBBCCCHWFQl4CSGEEEIIIYQQQoh1RQJeQgghhBBCCCGEEGJdkYCXEEIIIYQQQgghhFhXJOAlhBBCCCGEEEIIIdYVCXgJIYQQQgghhBBCiHVFAl5CCCGEEEIIIYQQYl2RgJcQQgghhBBCCCGEWFck4CWEEEIIIYQQQggh1hUJeAkhhBBCCCGEEEKIdUUCXkIIIYQQQgghhBBiXZGAlxBCCCGEEEIIIYRYVyTgJYQQQgghhBBCCCHWFQl4CSGEEEIIIYQQQoh1RV/pBgghLr0wDMlVXMo1p/GzEEIIIYQQQgixXkjAS4gNZqhQ42Bfgb5cBdd1aQMePjzCvq2tdKYiF3z9RLDM9gIsXSUTM1AUZfkbLoQQQgghhBBCNEkCXkJsIEOFGg8eGiZfdehMRrDiOnYWToyWGK367L+iY96g1+RgmeMHmJrK5kyMvZtTTQXL1prJwT0Nf6WbI4QQQgghhBCiSRLwEmKDCMOQg30F8lWH7W1xFEUh9D0AtrbGOJW1OdhX4LakNWvG1vRgWcTQqLk+x4aLjJTsCwbL1poZwT0lJAUMF216Wo2Vbp4QQgghhBBCiHlI0XohNohcxaUvV6EzGZkR0FJQ6ExG6MtVyFXcGa+dHiyLWzqaqhC3dLa3xclXHQ72FdZNLbCJ4N6x4SKpiEFvJkYqUg9yPXJkhKFCbYVbKIQQQgghhFgpYRiSLTsM5Gtky866uQ9abyTDS4gNwvYCHD8gYmiz/j5iaIyUbWwvmPG7eYNlytRgWUvcXJb2XyqzZcIBxEyNClCoOfNmwgkhhBBCCCHWr41W5mUtkwwvsSZIBP3iWbqKqanU3NlrUdVcH1NTsfSZl4VmgmWOH8waLFtr5gvuAXQk5s6EE0IIIYQQQqxfc80EOTZc5MFDwzITZJWRDC+x6kkEfWmkozrpiMmR4QI72xMkrPN//iEhQ0WbyzqSZGIz61NNDpbFrZmXjfmCZWvNhYJ7lqHiVL11EdwTQgghhBBCNGeumSBxS2e7GefkaFlmgqwyEvASq9pGK5S+HMIw5MhgiQN9eU6MlDk5UuHwYIltrTEub4thAafHKqTjUfZuTs16cc7EDDZnYhwbLrLdjE95ThiGDBVrcwbL1poLBfdsN1g3wT0hhBBCCCFEczZSmZf1QgJeYtWSCPrFGyrUeOTICA8fGaZoe2RiJh0pE9cLOD1WYTBf4RVx2NGWYN/W1jmDh4qisHdzipGSzcnR8pTg41CxRjpmzhksW2vmC+4BDJdq7OzMrIvgnhBCCCGEEKI5F1MTWawMSVEQq9ZCIuhipqFCjQeeH+LRE6MEwK7OBC1Rg1LNQ1NVXryzje1tcQBu2dV2wUy5zlSE/Vd0cFlHkkLN5WyuQqHmcllHkv2710+m3URwLx01OTlapmx7+EFIxanXPktF109wTwghhBBCCNGci6mJLFaGZHiJVUsi6Is3kR03UKihqSodCQNNVdFU6NIjDBZrjJVddrbH4CwUah4dlnXB7XamItyWtMhVXGwvwNJVMjFj3QV/JoJ7E7XjRso2phKSAm65vH3dBPeEEEIIIYQQzVmPZV7CMFzX93bLGvC69957uffeezl58iQAV199NR/72Md4zWtes5xvK9aJjVQofalNZMdlogb9uSqmNumiqyhkoiajZZttLRY6YHvNr3qpKMqGmJM+Pbin4fODBw/SkbxwYFAIIYQQQgixvixHmZeVDDhthMXhljXg1dvbyx/90R9x+eWXA/D3f//3/OzP/ixPPfUUV1999XK+tVgH1mME/VKZyI7LRE10Ta1nyqnnM+UMXcWzXUq2Swaw9PUTxV9Kk4N7ritTZ4UQQgghhNjIZp0Joqlc1pFccKBoJQNOG2VxuGUNeN15551Tfv7DP/xD7r33Xn70ox9JwEtc0EYqlL7UJrLjNAVa4yYDhRqWrjaOlesFaIpCoVoPeKWjEjQUQgghhBBCiAtZijIvKxlw2kiLw12yuWC+7/OlL32JcrnMS17ykkv1tmKN2yiF0pfaRHbccMlma0uMuKEzVLKpuT6BHzBUrOEF0DV+/Nb6hWy51VONHQByFYcwbH4KqBBCCCGEEGJ9mZgJ0p2O0BI3FzyNcXLAKW7paKpSDzi1xclXHQ72FS76niMMQ7Jlh4F8jWz5/D1MvrpxFodb9qL1Bw4c4CUveQm1Wo1EIsHXvvY1rrrqqlmfa9s2tm03fi4UCkB9KtFGn040sf8b8Ti0RDVuuSxDvhrH9kIsXSEdrUfQZzsea+1YhWFIvurO2LeLtacrxkihQr5SZWdbhJGizVCxRq7qkrB0Xrwtxe7OOMcGYKRQoS0ZlcDXLIaLNs/1F+jPlkgB3/5pHz0tCa7sSUk9rzmstb/BlSTHqnkLPVZyTIUQQgixGk3UW24m4LTY2smzTZfsSda3ZXvhhlkcbtkDXldccQVPP/00uVyOr3zlK7z97W/noYcemjXodffdd/PJT35yxuP33XcfsVhsuZu6Jtx///0r3YQ1Q44VWEDH+H+ngcus8QcB+s9yrL/+n4898uClbtqak5r4/7HnKI3B48dWtDlrgvwNNk+OVfOaPVaVSmWZWyKEEEIIsXAT9ZaXK+A013TJE6MlOoBi1d0wi8Mte8DLNM1G0fobb7yRxx9/nD//8z/nf/2v/zXjuR/+8Ie56667Gj8XCgW2bNnCHXfcQSqVmvH8jcR1Xe6//35uv/12DEPqLc1nrRyr4aLNI0dGKNQcOhIRLEPFdgOGSzVSEZNbdrUvSQbR9Awyxwv4/tHR+vvGDOj/KfRcw3DFXdL3XevCMOThwyOcGC2xtTUGQUD15FNEt18HqsrpsQo72hK8bHe7ZMZNs1b+BlcDOVbNW+ixmsgSF0IIIYRYTSbqLS9HwGm++lzR1hjVHPRlK/RkohwfLq37xeGWPeA1XRiGU6YtTmZZFpY180bbMAy5ERgnx6J5q/lYhWHI84NZ8rbP9vbzhfd1HWIRk5OjZZ4frLCpJb4kwZQO02y87wPPDzfel8CnQv09t8WiS/6+a1m27NBfdOhIxVE1nRAPAEXVUDSdjlSc/qJD2YWW+Oo8z1baav4bXG3kWDWv2WMlx3P5eZ7HJz7xCb7whS8wMDDApk2beMc73sF//a//FVVd+6PCQgghxFILw5AwDImZOqdGy+zZlERV1Cm/v5iA07zTJan/fK5Q46bLOhktOet+cbhlDXh95CMf4TWveQ1btmyhWCzypS99iQcffJBvf/vby/m2Yg2rFwdf/GoXa8WlmLfdzPtOLoO4nO+7Fi13qrEQQqx1n/70p/mrv/or/v7v/56rr76aH//4x7zzne8knU7zvve9b6WbJ4QQQqwqk+tqjZZtTo1UOJursW9zks5kdEkCThe6hwFw/YBU1GD/FR2N9oyUbUxN5bKOJHs3p9bN4nDLGvAaHBzkV3/1Vzl37hzpdJprrrmGb3/729x+++3L+bZijZqtsN7mTGxd/cFNWKlgigRxmrecqcZCCLEe/PCHP+Rnf/Zned3rXgfA9u3b+cd//Ed+/OMfr3DLhBBCiNVlel2tzmSE1pjFM/15njyVY3u7S2vcvOiA04XuYQCM8XuYlrjJbUlrXSecLGvA63Of+9xybl6sI3MV1js2XGSkZLP/io51FfRaqWCKBHGal4kZbM7EODZcZLsZn/K79Ta3XQghFuOWW27hr/7qrzh8+DC7d+/mJz/5CY888gj33HPPSjdNCCGEWFbTZyalozr5qjdr4Giuulo9mSjdKYvnBor0ZmLctqeDlri54IDT5LaYmkJPOsrxkVnqc43P7+lJRxv3MIqirOuZPZe8hpcQ081XWG+7GefkaJmDfQVuS1rrJto8PZiy0EKBi536KUGc5imKwt7NKUZKdn1u+3idrorjM1ReX3PbhRBiMT70oQ+Rz+fZs2cPmqbh+z5/+Id/yC//8i/P+nzbtqfUcZ1YWMB1XVzXvSRtXoyJtq3mNi6HjbrfsHH3XfZ7Y+03bNx9v9j9Hi7aPNdfoD9fxfUDbM8fvy/TsHQVQ1PpSUe5sidFR9IiV3HoGyvW7ycCf2pZGWB7S4RCzcb3PTxvYYkH09tiaCoJS0cNA06NFKYsjjZSLNMO7O6M4XneovZ9tWj2s5OAl1hxK1XPaiXNCKYsoFDgxUz9lCDOwnSmIufnto8VSQGFmrvu5rYLIcRi/NM//RP/8A//wBe/+EWuvvpqnn76ad7//vfT09PD29/+9hnPv/vuu/nkJz854/H77ruPWCx2KZp8Ue6///6VbsKK2Kj7DRt332W/N56Nuu8Xu9+peX5XGoHHj818bmWebf3gwYNL1pb2if/IgT3tsSd/+NCi32e1qFTmOpJTScBLrLiNWldqSjClyUKBSzH1U4I4C9OZinBb0mKkEOcHDx7k1Xu7aU/FJCgohNjw/st/+S/83u/9Hm95y1sA2LdvH6dOneLuu++eNeD14Q9/mLvuuqvxc6FQYMuWLdxxxx2kUvPdNqws13W5//77uf322zfU6p8bdb9h4+677PfG2m/YuPu+2P0Ow5CHD49wYrTE1tb6QM3B/gJDRZuOmMFw2aErFeXqniQAp8cq7GhLsK83zb89M0AqYhAzZ97zVhyfQs3l1Xu7ycSaS/CY3paJFRihPnXx9FiF7W1xrunN4Pghlq4Q0+Hf//3f18XnPZElfiES8BIrbiPXlZoIpjQzPXEpp35KEGdhFEVpfPlkYgufVy+EEOtRpVJBVad+N2uaRhDMPkBlWRaWZc143DCMNdHxXivtXGobdb9h4+677PfGs1H3faH7nS079BcdOlJxVE2nVPMYrfgkIhahppGMqoxUPCqeQsLS6UjF6S86XKfrbG5N1svKRMyZ5WzK9bIyC7kfm96WyRSgIxXnXNHlBsOgM1O/j5mYBrgePu9m2y8BL7HiLrae1VzCMCRbdlb9ihPNFgpc6qmfEsQRQghxMe68807+8A//kK1bt3L11Vfz1FNP8Wd/9me8613vWummCSGEEEtu+swkNwjw/ADT0qm5Po4fULZdHC8A6/xMJccPF13Optm2TLdeZ0ktlAS8xIq7mHpW83n48Aj9RWfBda5Wq9kuamEYUrZ93CBAVZRGwUSxuix2kQEhhFjNPvOZz/Df/tt/493vfjdDQ0P09PTwm7/5m3zsYx9b6aYJIYQQS276zCRDVXG9gKMjZWquR9n28YKQZCTHtb1pDE1rzFRqiZsLLmezkLZMt55nSS2EBLzEqrCYelZzGS7Wy/KdGC3RkYovqs7VajT9oparOJwaqzBWdvD8gCAIsQyNQtWlO7329m+9uphFBoQQYjVLJpPcc8893HPPPSvdFCGEEGLZTZ+Z5Po++apHf6GCqakUqh6mrnKwP09/tsqOjgQ3X9bemKm0kHI2C23LUs2SWm8k4CVWjaW4AIRhyHP99QJ2W1tjjfnMi6lztdpMvqhlPJNn+guUXY90xMC0dPryVRRV5akzWTIxQ4Ipq8BSLDKwnCTzTAghhBBCiOZMnpl0YqTESMkBJcTzQnJlm3TUYFMmQhjC6WyFmhfwxut6pvSvmy1ns5C2LOUsqfVGAl5iVbnYC0Cu4tKfr5KCKStVTGx7oXWuVpOJi9pwscaPT41R8wJ60hE8P2S4bNMSt9jbkyRbcddsUG89WcpFBpaDZJ4JIYQQQggx03yDwhMzk350bIyfnM1TdjwsQyMdMzA0FdcP0VSFHW1xHD/g2HCZq3rSy9LfX8pZUktpNQ2qS8BLrCu2F+D6c9ewWuvF+zpTEa7b2sKBvjx+CGMVB11V2ZSOsa0tSjpqYmjamg3qrSdLvcjAUlrtmWdCCCGEEEKshGYGhTtTEV64o4XnBwromsKuToNURMf2QvygHvAyNYVzhRpnstVl7e8v5TTJpbDaBtUl4CXWFUtXMbS5C/Oth+J9qajBjvY4mZhJEIYYmkrc0hoZbWs9qLderNaVU1Z75pkQQgghhBArYSGDwhFDI25pqCgkrXqAKTKpXJbt+kQMjSAIl72/v1TTJC/WahxUX7t3/ULMIhMz6ElHAQgJp/xuonjf5kxsTRfvs3QVU1fRVYWWmEnC0qdM31wPQb31YPIiA7NZqc9pIZlnQgghhBBCbATTB4Xjlo6mKvVB4bY4+arDwb4CYVi/x8zEDLa0xKm4Po7nT98YuapD0jLIRI0NcV+20ON3qaz/Iy82FEVRuLInBcDpsQpl28MPQsq2x8nR8roo3jdRvH6oWJtxwVgvQb31YLV+Ts1knjl+IBmCQgghhBBiw1jooLCiKLxoR4bWmMlzA0VyZRs/CLBdn8FijZipEzU1NrdsjPuy1TqoLlMaxaq12GJ3HUkLgB1tCfqLzqop3rdUZEWOtWG1fk6TM8/i1syvAMkQFEIIIYQQG81Cy5EMFWo8c65IxNQo2x6PncrSGjPoTkfpTEbGg13RC/b3V1OB94uxWsu5SMBrha2XE3ypLUWxu5ftbqfssi6O7fTzpCNprcoVOcRUq3HllInMs2PDRbab8Sl/ExOZZ5d1JDfESJQQQgghhBCwsEHhoUKNf/1JP4cGSwRhyOaWKCPFGiXbJ1d22N2ZYM+m9AX7+6utwPvFWK2D6hLwWkHr6QRfSktV7K5evG/t37TPd57ctqdjzQRMN2pwd7WtnLJaM8+EEEIIIYRYKc0OCqejOv/ydD9Pns4RNRRaYhadSYtN6QiDhRoVJyAZMdh/RTuqOndwZzUWeL8Yq3VQXQJeK2S9neBLZSOvIDdbQGi4aK+L82SjB3dXy8opE1Zj5pkQQgghhBArpdlB4VzF5YlTWXQVulNRGL8njRg621rjnMlWODRYJFdxaU1Ys77XerznXa2D6hLwWgHr8QRfKgspdreaAggXa7aAUE86SqHmrvnzRIK7q9NqyzwTQgghhBBiJTUzKHzoXIHRkk1P5nywq0FRaE9Y9OeqDBftOQNe6/WedzUOqkvAawWs1xN8KazWYnfLaa6A0MH+PCdHyly/LbNmz5OlDO5u1CmRy2m1ZZ4JIYQQQgixki48KKyAAuEcrw/HnzL+P7Naz/e8q21QXQJeK2A9n+AXa7UWu1su8wWENqUjHOjLM5h36E5HUaZdNNfCeTI5uAtQqnm4QYChqsQtremg3UafEimEEEIIIYRYuNkGzS9kvkHhjqRJW9xitOwQNbQZtapGyw5tcYuO5Nz3Nuv9nnc1DapLwGsFrPcT/GKs1mJ3y2W+bD9T02iJGgwUa1xuJ0hMO1fWwnkyEdy13YCjwyXGyg6eH6BrKq1xky2ZWP338wTtJjLgchWbhGUQN3WCIOToUEGmRAohhBBCCCFmNdeg+Z6u2IznNjubpCVucv3WFr77/GC9NlXUxNRUHD8gX3Xw/YDrt7bMG/DZaPe8K0kCXitATvC5rdZid4vRzEVzvmy/uKXRlYry/GABx/NhUsBr+koh2bKzKlJGp7N0Fdv1OTpYwgtD0hEDM2Lg+AEDhRojRZstrdE5g3YTGXBnsxXCEE6NVc8HzGImJbuyJuqYCSGEEEIIIS6deesIFypY057b7GwSRVG4ZVc7Y2WHI0NF8hWH+vTFEEWB3d1JdncnyFXcOe/L1tM972onAa8VICf4/FZjsbuFavaiOV+2n6IodKYs+nI6A/kalq7NOE+60xYPHhpZtVP90lEd2wsYKtrs6UqgjC/NG1E1LE3h+cESnSmLdHT2S1Gu4vL8QJ7hoj0zYFasoSsKzw/kuW5rZtWkzQohhBBCCCFWzoXqCJ8aKdAx/rzFLLDVmYrwhhf0cOBsnqPDRSqOTxDUA166qvLoiTFMLTfvfdlc97w7OxJsaYkRhJAtO6sqmWEtkoDXClkPQZ3ltNqK3S3EfBfN4VKN67a0kIoaWLpKOqrPm+1nez4v29VBOmbQn6tOOU+60xYHzuYZKNTIRA0yURNNYVWtfpiveli6RmfSYqhkk4maGLqK6wXkqg6dKQtL18hXvVkDVjXX5/RYBc8P6Uqdn/YZUTUsXWWwUOP0WIWa61/qXRNCCCGEEEKsQhdaJK4jEYFc/XkHz5UXtcBWZyrCK660uH5bC325Ko+fGMMNAroWsCr99HveQtXlzFiFR0+MrspkhrVIAl4raC0HdS6F1VTsrlnzjSa0+AaPncxx4Gye7e0xLF1jcyZGd9qaN9vvll3tdEw7T9JRna8/1c+Tp7Noqkp/rtqoi7W1JUau6qyKqX62F2AZKtdtzXA2W2O0bOPZLrqqsikdo7clQtH25qzhVXN9SrZP6yx/F4qiEDM1xiquBLyEEEIIIYQQwIUXibMMFRsYKTnzBsYutMCWoihkYgZPnc7hBQE7FrEq/cQ971ChxtNncgvKNBMXJgGvFbYWgzpibnONJuSrDgf7itiuRxiotMQsdFVpXMD2bk4xkLfnzfabfJ4cHijy8JFhAqAjYWBq5+tiFaseOzviTa1+uNwmpmxausa+3hRl28f1AwytvkpjxfYbQbzZRAyNhKVTdjxSEQMmf0mEIWXHI2Hpc36ZCSGEEEIIITaWCy0SZ7sTg+3hvIGxiKExUrbnXWDrQtlkzaxKf6EpmBcKmom5ScBLiCU022hCSMip0Splx2VzOspoxSEIQ+KW0biADeRt9l/RTr7qXTDbLwxDDvTlKdoeuzoTaJPrYukqQyWboYJNJq7Pe3G+FKYv0JCYo/D+XAs0RAyNra0xzoxVGCzWZkyJNHWNLS2xiwp4Nbsii1gf5PMWQgghhFhdlrp/NvkeZJsRo+IEuEGAoarETJXhUo0OoC1h4vkhA4Uq6ahJ3NJQOP++NdcfH7yffXAeLpxNdqmCZmJ2EvASYgnNNppQtn1Gy/X6VU4QomsqxniQavIFbK46VtPlKi4jJZtMrH6B1iZdfxVFIR0xGCxUSUYT816cL4WLXaAhEzPY053C9gKCIGSs4jSmRHanoqiqwp7u1KJXNF3Iiixi7ZPPWwghhBBidVmO/tnEPcjx4RLfeX6IIAiZvJLilpb6Go0/OjbKmdEKA8UanUmL9kSEbW1R0lGzqcF5uHA22aUKmonZScBLiCU0ZTTBrI8mjJRsyrZLytIYqbh0pyLErfMXswtdwKaPeNRcH11V6E5GGCxW6dIjU6b6mapCturSHo8sOhC0FCbaHYTwgi0ZTo+WOTZSouL4xEyNyzuS7OtNz/tFNjlglqs6bMpEUBWFIAwp2R6Zi1jRdDErsoi1Sz5vIYQQQojVZbn7Z4oCIQqhAooSUnEC8hWHbKnK1la4/9lBMokoLVGDsuNTHi2Rqzjs6opTc4MLDs7DzBkt0xchu1RBMzE7CXgJsYQmAjQnRkr8+3PDBGGI4/mcGatwLm+zrTXKttbYlAvhfBew2UY80lED2/PpSpuUbG/GVL+hYo2kpbOvN71iU7Wmt9t2fWpeQBCApiqAAk02bfqKplW/frwu70hydU8SQ1MZyNcWlP4s8+Q3Fvm8hRBCCCFWl8n9s21t9USBQs3F0FS2tcU4NVpZdP9sYttBGPKqKzuoOAGjJZsjQyWiusK5XBmATekIOdtHURTa4wZVN6A/XyUIQ27b08m+zfMPzsPFz2iBpQmaidlJwEuIZRCGoBCihCGWphI3dYq2RzjjeXNfwOYa8Rgo1BguOtTcgL2bk5weO7/6oaYoWIbOS3a2sqsrcel2eJ52227A0cESQ0WbzqTFdVszWLrG8eESoyWnqZGb2VY0dTyfZ/qLi0p/vth58lIHam2RughCCCGEEKvLRP8sYqgc7CvW72eCAF1VaYtbdCSNRffPJvf9VEUlbiocq7r4YUg6ajKcrwD1fmBXMsJgsUbM1Nm7OU6h6lJ1PXa0xQhCyJadC/b1pw/Qz7UI2VyWImgmZicBLyGW0MRoQkjIK/d0NgokVh2Po4Ml+vI1Dg8WuX5rC/Z4NtZsF7D5MlJ2mHHKtk+h6jJWdtjZEWNbW4yS7ZKvuHSnI7z08nYURSEMQ7Jlh+GiA4R0JC1a4uayXSyntxvg6HAJLwzZ05VgqGRzNltjX29qwZk1k1c0HSrUeOjwyILTnycCVWey9S/PjqQ163vNN810uGjz/GBW6kCtIVIXQQghhBBidbG9gLGyw2jJoep64zNWDFwv4Fy+Qq6i05YwF9U/s70AxwvwgpBsxcHxAkbLDumIgReEjXIwfgAoCpmoyVjF4TIlQdTQeW6gwLeeGSRiqE339WcboF/IoPjFBs3E7CTgJcQSmjKaoKokIvVpii0xk7ilExko0Z+vkhwukomac17ALpSRsrM9Tl+uSncqRr7mNAIvezdnGtsbKtR45MgIT57OMlq2IYS2hMUN21p46eXty3LRnN7uUs1jbPzLRVFVMlGT0bJN2fZJWPqiMmsWOz1t8jTLXNXh0GCJYs3jiu4E6ejU955vmukjR0bI277UgboIS50hd6HtSV0EIYQQQojVxdQUhos2xZrLlpZYIwhlGRpdeoQz2QpBGGJqC+8jFqouJ0bK1LwimgqOFzBScrisI15f4T6sz7uZWPzL0FU822W0ZHN0qESu4nJNr0Fb3FpQX3/yAP1iXGzQTMwkAS8hltB8mSTpqMn12zIkB3Vu3d3BlpbYnBewZjJSLEPlhTtasHR1RgbXUKHGN57u5+kzWTRNZVM6igKMlGz+/bkhxsoOd17bQ2Y8IDdYsIlHwou+oE5vtxsEeH6AGalP15z4MnH9oLEfC82sWcz0tOnTLDsSFsWqx7HhErbrc82WdCPoNdc003D8i7FQc9jenmo60CbTH6da6pV4mtme1EUQQgghhFg+F9XfVRQm1lBsbG/88cUYKtR46nQW1w9w/YCORIRSzeOkXeb4UJmdHTEYD3RZev29XS9AUxQG8jWGijZXbUrRkbRQUC55zdeLDZqJqSTgJcQSulAmie0GZGIGW1pi817Ims1IKdY8nstWp9zs92Si5MoOR4aKRE1tSmBoS4vGQKHKocESLUeGSZn1q/19z5zDMIyLnpo3vd2GqqJraj0Ipmq4Xn1evjE+nFJzfUxVpep4TReeX+j0tLkywnZ3JbG9gLPZKpahcf22DLY79zTTfNUFoCOxsEDbUi+zvJYt9Uo8zW5P6iIIIYQQQiyPxfZ3HT+kPWmiKgpDJZt0xMAcv2/I11zSEYPWhIHjh00H1Cb6/YWay43bWnmmv8BI2cbSVFqiBv25Gn4YsDUTBWC47JKwFLJVh7hpcDpboTNlsb09hjIpBCc1X9cuCXgJsYSWKpOkme20xS2eOpOlUHWn3MA/05fn+YEiqqLQnZ4WnFEUWmIW5/JV/v25IfZ0xdgG9GSi2L7SdA2sub5sprc7bmm0xk0GCjUsTSFXddiUjhG3NMIw5PhIGQh5+MgwbhA29QW50Olpc2WEZWIm+zansXS1Ps10UCcTM+acZmp79Qwvy5g67S0MQ8q2T83zyVUdaq4PLP8yy2vNUq+UuNDtTamLkK1weqyCqipsaYly047WDfVZCCGEEEIshYvp71p6vTh9a8xiuGQzVnYo1lx0TaU7VZ+RoSj16YnP9jcXUJvc749bOtvaojx52uZkoULF8Si7Pk7e5oYtKbAhE9E5ka1iaCqdSY0W3+S6LZkZ5U5Aar6uVRLwEmIJLVUmyYW2k4oajS+A6Tf73ekIj50cgxC2tkRnbNsYDzwpSv3LhApoyoXTdZsZvZmt3VsyMUaKNs8PluhMWfS2RKjYPsdHyvRnK2zKRElHzaa/IBcaVJwvIywTM7l+awvJ4eIFp5laev0x2w3Qx6+cuYrDqbEKY2WHiu3hBiGPnxzjph2tPNNfXLLgznqw1CslLmZ7nakIV4chpZpHoeYShAG5isMz/cVGUEwIIYQQQlzYxQ5mTvTpjw4X2dEWo228v5aOGsRNjZOjZaKGwYOHh6g5PlvbYkQNfd77hcn9/nzV4dRoFUtX2NOVBAXGSg4nRks8d67IZa31Qf+rNrexszNG3NR55MgIlj77LBKp+bo2ScBLiCUykf0UhPCCLRnOjFXoz1cXvcLGfCt19LZEefTE6Kw3+6au0RI3OTtWoeh4M0YoijWPcs2nK21QcXwsICREofkaWPMFp6a32/EDtrRG6UxZWLpG0faw3QAI2ZSJsm9zetYvyANn81y3VcHxwynZZAsNKl5wmqkXkImaF5xmmo7WA2jDpRqxiEm+6nKwr0DZ9UhbOjUXepJRBgo1/v8HBqi6HpszsSUJ7qwHS71S4mK2N3l1z96W2IbPuhNCCCGEWKyLHcxUFIXutMXDR4Z58lSWqKkRMTSSlkEQhnhBQLFWIl916UxaeAFsa6sPlM8VUJvo91ddj1OjVcqOS3cqStnxGSraZCsOlq7jBvX+4Y3bW7lyc0tjdfsTIxWp+brObOiAlxSTFktltuynnkyUm3a0kYoaiz6/5lqpYyBfI1d1MDSVMIS4pU0KGmlszcQ4PVrPPEpFJr1vGHIuXyNXdUlEdA4NFnixAc/0F9nanmhkWjVTA2u+0ZvZ2p2O6uSrHrYXUHU8Hj4yTDpqzvoFaekaDxwa4uhwCV1TZmSTLWTZ3qWaZjrxulTE5MRIiZGSQ8l2yUQN8jWXZMTkiu4EqYjBgb4CQ8UqO9sTs27LMlRyYy5nspVGG9f7tWepV0pc6PaWekqlEEIIIcRGdrGDmRP3T8mIjqHFKNV8qo7HuVwV1w/Z0R5HBba2xtAUhXP5CoWqy77eFOmoOWtAbaLff7Avx0ipRiZqUnZ8To2WsV0fPwzZlInQEa+3+dHjY7SnYlLzdR3bsAEvKSa9/kwEMMs1p/HzpTBX9tPx4RKjJYf9V3RcVBbP9JU6hgo1Hj85xqGBEsfVMjFLpzVusq01RiZmoqDQnbHoSUdwvICzuSptcRMFOJut0p+vYOoKXakIbXEDHDgzVqa/4LB3c5p0VG+qBtZE2+YavZlthZGJnwfyNdwgnPULMldxODpUYqBQY1dXgu5UdNYsnGaX7V3qL69bdrXz41MFftpXwNAUql7ApnSsMeIE0J22OD5SYqzszLie5KsOhwZK9OeroIRkouZFX3tWa/A+DEOyZQfbCzA1hZ5MlOPDpSUZNVtoIHOpp1QKIYQQQqwXuYqDj7+gfuTFDGZOHojctzkNQNn2cXyfI4Mljo+UMCYWvtI1VFWhS48wWKxxarTKvl5j1oCaoihc3ZPkQF+O02MVejMRhosO2YqLrkHSNOhKRogbgAO58Rkbs9Z8vcCgulgbNmTAS4pJrz+TA5iu69IGPHx4hH1bl7cY9aXOGpk4d3NVh550lNFyjaiuMlCoUax67N2cIh01qLkBd1zdTRCEPHUmx7l8FUKwfZ+d7Qk6kxGKjkfVqRdYz1VdRis1hgpVutJRXryjlTAMGcjXyFdcbM8nYsx+HBdTwHGuL8gwDDk1ViFfq6cup6Mmmjp7fTGg6SBPZyrCrbvbefR4ljPZMgEh6cjcBern05G0eOGOFk6NlelIWkQMrZ5hN2kll9a4ScLSOVeo1pc0Hm9Xvurw0zN5zuaqXNYRZ1dHfaXIi7n2rObg/cOHR+gvOo12xU0dVVGWJPC40EDmUk+pFEIIIYRY64aLNgDfPjiAE86cVTGfi5lFMdtAZCKiU6pBxfXZnIlSrNVXSJ9Y7R1FIRM1GS3blG0fwhDPD8hXnMa9wHDR5pn+Iq4fkq+6nBmrULI9oqZGJmqSjtTfyx3v73WlrFlrvjYzqC7Whg0X8JJpLevP9ACmFdexs3BitMRo1V/WAOalzBqZfO7uaIvTFjc5cPb8sr25qsvhwSLtCZNM3OKll7fTkbS4bU8nw0WHfNXhydNjdKeieEHIYydHefZckWs2gamqZGIq2bJDGMKjJ8YYKNhYhornh5wZq2BqGj2ZmUXwF1PAca4vyLLtM1pyIAxpT0SIW+eDE5OP55HBEmez1aaDPEOFWqOIfBCCqqpkYiZX9yQXdW5EDI1MzCBqaLPXBXMDtrbGiBpaIxhjGSqHBkqczVXpbYmyuyuJrqnomrroa89qDd5PdJ5OjJboSMWnBKIUFNoTFoWae9GjZgsZhVvqKZVCCCGEEGvZUKFWL9IOpCIGEctcUD/yYmZRzDUQ6QYBnh+QjJnUPJ+EVS8dYukqiqJg6Cqe7TJSrHFkqJ4F9sjREUxdJWHpjJYcQkI6kybtcater3j8d20xg6pbn96YtBSuitdnn/QXnBkDnrPNVBFr04YLeMm0lrVprilbYRhy4Gyec/kqm9IRwhDU8Y91a2uMU1l7WQOYC80auZipZ9PP3VTUYEdHnFMjZXJVFy8I6M/X2NuT4cWXnc9sa01YtCYsBvI1DvTniZo6qgpJy8Q06u9d831CNKKGRipqMFJySEdNrt+WGf/iK/PYiVFu3d055e9isQUc5/qCzFcdhoo1ejJRtrVFp2RNTRzPk6NlHjo8DIRNBXmmB4U6UxFqrs/geAHzxQSFmhnR2tOd4uqeJM/0F+vXlDGX/nw9s2t3V5JMbOr0z4Vee1Zr8D4MQ57rLwD1v0FV02e0KxUxuHV3x4wFCRaj2VG4parlJoQQQgixlk2UnHj48AgDhSrbgJipocwxq2K+PtpipwCamoLnBwzkq6SjZqMesaHWB4MrjoehaWxri3NiuMxQySYdMQjDkJLt89iJMQxd48U7U3Qmo1Rdjx8cG6Niu7x8dwdnszUSEZ1N6Qh92XpNsLLjk4kaDJVsDMWEODhuIAOe69yyBrzuvvtuvvrVr/L8888TjUa5+eab+fSnP80VV1yxnG87L5nWsvbMNWXr6p4kZ8aqfPNAP54f0JetYOgabTGNywCF5Q9gLiRrZKhQ40BfnqNDJSqOT8zUuLwzwb7N6aYCLrMtsztatvH8+rmaiZlEdI0X7miZdXuT2xoCNc/nio4UhCPsbE9i+yFnsxU0VWVHW4Sy41FzAxKWwYu2Z3jg0Ag/PjXGS3a2ETX1iy7gONsXpOcHdKci7OqMz1hdMgxDRko1To0HyK7fmkFV619OMVOjPVGvm/WjYxqvv7YbVVWXLSjU7IjWRK2xXGW8QL0Ssqujntk13UKvPas1eJ+r1AN7KZgRsJxoV3++yvVKC91pa0nes5lROClEKoQQQoiNbuK+6shQkadPZ0lbKtssyFddMon6vcxC+5ELnQI4cU90ZqzKQKFGZzJCW6JejzgdNWiNmTx7rsBVm1L0ZCLETY1TYxVGSw6DhSp+ENKZivCi7S1kYhN9SQVdBU1TOTJUomx7dKcitCcsbC9gqGAzVnEwDZXudJSUVW/bcKnGzs6MDHiuY8sa8HrooYf4nd/5HV74whfieR4f/ehHueOOO3j22WeJx+PL+dZzkmkta8tcU7aePpPl3545x2CxRl+2SnvCoiVmktFUhoo2lxn1C3cyFlnWAGazWSOO5/P/fnqOQ4MlgjBEUULCUOHYcJmTI2XuvLbngkGviXN3qFjl2FCFsuOSiZoYUQPXCxgq1lAVhWLNY9MF2pqOGnhBgBnRwYG4qTKSt0FR6EiYmIZG0fFw/YCQEE1V2d4W49RIhRMjJZJRA0vXLjh6c6GMtulfkKam8NSZHMeHS4Rh2HhuruJwarTCs/15slUXVVE40F9gW2sMgFNj9RUpK7bHiZF6YOnFO9swNHXZgkLNjmhNDsZkoia2F8wa8FrotWe1Bu9tL8D1537PlRxUkEKkQgghhNiIwjDkyGCJhw4PU3E80lGdRFQnYWoQwrPnily1WWvMQFhof63ZKYCT7+2u6E6gKgr5qkPZ8chVHDa3RKk4PnFLQ1WgYvskIwaXtcfRVYWutIXrhVzeGSdhnQ9SuX6AH4a0xU1GijahEpKJmViKwt6eNEf0ImNlh03pCB0Ji5FCFYBUVAY817tlDXh9+9vfnvLz5z//eTo7O3niiSd4+ctfvpxvPSeZ1rJ2zJWd4/oBuYrDoYECmqrSnYqgqyr5qkvN9dneWr9pPZ2tsFPXlzWA2UzWyNU9SX5wbJQnT+eIGgotMQtDV3G9gGzF5snTOVrjJj933eZ5L7aZmEFPJsq/PTNIEPh0p6Iw/nxTVzF1FVVRODNWYVdXYt7VCgfyVfygXmsKYLjsYKka6QiYuobrBeiqSsXxef5ckWPDRfI1l6rtgxJy/bZWbtrRNuv7TGhk5mUr5KouqqqwpSXKTTta6UpHp7Rr8hfkvs1pRktO43jabsBTZ7IMFW2SEYOoVZ92OVCoMZivAgqhAumIQdLSGSzWODpUpuYGXNWTWtag0EJGtJb62rPSwfu5gpmWrmLMEtC7VO26EClEKoQQQoiNZCKj6oHnhxoZVSXbw/dBU4AQKq7HqbEK6Wi9T7Qc/bXZ7u1ips6p0Spnxsoc6Mvz/ECRne0xeluioEBfropl1Pu8+zZn6EyZPHpijKgxte9raCq6qjK+OygouF6ANV5vd1tbbPz3CoNFmyAIAbjl8nYZ8FznLmkNr3w+D0Bra+ulfNspZFrL2jHblK3GKn5Vj5hRX60jauqU7Xrh9nzNY6TkQAKyZZdTWoV9m5c3TfVCWSO6qvDEqSy6ypQglWVodKeinMlWeOJUllt3d9CamHuKl6IobGmJ4Xo+AVDz6tM7Hb9euD5uGuzsiNOfr86ZsTTR1gN9eYaKNmeyFfZmoDNp0ZaIcniohOP55GsuqYjBwb4cJ0bKaKpKKmIQ1VS8IOSJU1nCMCQTM+YsEv/goWH6clWqjk/RrgcjD5zN8dTpHL9wYy9X9aRnvC4MQwxN5aqeJMeHKmQrNZ4bKJKruFy1KUV70uLwYBFNUeiMmzzdV7+mXNOTwgmgUHXRFIXtbVFGyw7Hh0sYqrKsQaFmR7SW+tqzksH7+VaG7Eha9KSjlEYgJJwyqXG1DCpIIVIhhBBCbAQTffKBfJWaF7CtNYaiKOSqDvmqi++7XBWHlKUzVnYo2/XsquXor812b5eOmmxthaFijc6kVS/Psr0+S2OwUMXQ6uVaNmdiZGIGuYqLqeVm9O3jlkZb3OLUaIm4pRO3DHIVmy49Qgg4fsi+3jQ72mKcHK1yWXsEzvTRkVya8hpi9bpkAa8wDLnrrru45ZZb2Lt376zPsW0b27YbPxcK9cLHruviuu6StaUlqnHLZS0811+gP19l1A8wNJWdrVGu7EnREtWW9P2WwkR7Vlu7llO55uC6LlZcJ/S9+mO2T65cI2Up5FRADWiPayi+T9m2iekaNad+DmWLFba1x9jTFcPzvGVta/2cypCvxrG9EEtXGiMkRwaL5EpVNqWjqAT1YYdJOuMG5/JVBnJlklY98BKG9aV0p28rZihsb7PwPcjWXCq1AE1T2ZQ02JKJoqoKZ7JlzmXLxA1mDZ60RDVedlkLPUmTHxwdhPwAO1siWJbBuSycGCmxKRNBCX2GCmXiOiQj9SmOHUmTrS0Rhoo2RwcL/PS0xct3d8wIthw4PUZ/tkSh4lJ1PdIRg7aoieMGnBor8ZXHT5O+ZfuUYNlw0W78Tbp+gKGqGJpCW0znmp4k7Yl6gGKsqDNYqJKMGGj4uG7AqZEithfU6w/ETE6OFGmPW+RLNdJRk+FCmWhrbEpNqZCQ4UKFHW0J4saF/7aW4m9wqa89e7pijBQqnBop0JGorwRpuwHD4/u9HOf+cNHmkSMjFGrO+Hvq2G7A8aEcI4UKt+xqZ3dnjCePwZnRIu3J+CVp11q1Ea/ti7XQYyXHVAghxEY2OaOqOx2hL1/FMjRURcHSI9hOQM12IQ5hWC/gnq86DJeCZUkCma0cR0jI6bEqfhBweXuC0YpDSL3e7o72BCdHywwVHK7uSaMoypwDvgoKW1sjHBsu4QchW1osbNcfr6GrkI4YdCQsRssOva1RXri9hcfPLNmuiVXskgW83vOe9/DTn/6URx55ZM7n3H333Xzyk5+c8fh9991HLBZblnalJv13aQQeP7Ysb7Nk7r///pVuwiXVBtjZ8z8rwI3jyTg3dk564ixJg7dnhiA7xOMPP7uMLWzO7SnqgS579t/vTcGRJ85xpIltbZ/4D3X8H0ANGKj/5w7gyBNHmtpW+/j/K+cO4ABXAle2jD8Ywr72WV7kwOXjgyHlY6f41hx/Mzug/oGZQFB/HcDV49v/8SPHZ31datrPuwGGoDpU/3knsHN8m3s75tix2mD9mIzrAKq5mU/rAEo55tyH2SzV3+BSXXss6vtB7vzpNfHz4+cW3bzFvSfw+MD557XnD0P+0rVrLdto1/aL0eyxqlQqy9wSIYQQYvWanFEVArqqNqb5KYpCZypCvlwfiS/YHiXHp+b57OpMLUtt09nKcZRtn9GyTSZq4gQhuqZijC9KNVu93flmTGQrLtdtSWMZGoWaR8zUCMJ6hlprwkBRaMzAaYnOXu5kugvVI16u14qlc0kCXu9973v5xje+wfe+9z16e3vnfN6HP/xh7rrrrsbPhUKBLVu2cMcdd5BKTb8N3lhc1+X+++/n9ttvxzBWV32xGZk5mkpPup6xcjFpomEY8vDhEU6Mltg6np1Ttn2eOJMloikcGS4BCvt6kiiKCoTkax61ms3N0XPEdlzHrXu6V+zCMnFcjg4X+e7zQ3h+yOZMlI5khLilNfaxL18jYem857bL8YJwWvbM+cyYVMTkpZe38fy54pRjkq+6PHuuSMVxcbyA3kyMnZ1xRko2qYjJLbva5/wcJs6rF92yHx8NS1dwvIAfHR/j2wf7yZZdUjGdZMSkPW412h2EISNlm+5UlDffsIWu1PntDxZsvv7UWQYKtfq0U8APQFPB0hWqbsi5XJXLOmO87cU7yMSMGZ/zhL5clW8dOEfE0uhJR9A1jdaYSSaqcy5X43tHhqm5Pltao7Qm6kUoY6Y263GdfI7aXoDt+Xh+QLbiUrJ9EpZOb0uU3Z3JWc/d1fw3OFdG4FLLVRy+fXCAVMQgZs7sKFQcn0LN5VV72nnskQd51ateRcVj2du1lq3m82q1WeixmsgSF8urr6+PD33oQ3zrW9+iWq2ye/duPve5z3HDDTesdNOEEGJDm5xRparQFrc4l6/QpUdAUTC183VXezMRelqT3HZFRyOwtFQmAj811ycdMRkoVNjRXq8D7PoBXhCgazojZYfu1Pn7JJi93u5c5WTaExZhCCXbJQgDkhGdK7tT7NmUJB0zpwSdmskCn6+Ex4WCgRfzWrG0ljXgFYYh733ve/na177Ggw8+yI4dO+Z9vmVZWNbMG3PDMORGYNxqOxZDhRqPHMvOWEXx+FiV0arP/is6LuqPet/WVkarPqeydn37lkHUNDg2XKYjFUNVFAZKHpmoia6p5GoBcb1+fK7ubcU0V6ZOz+Tj0pWJc9XmFp4+neVktkbWDtjZFsfQ64X2HR9esLWN9lSUBw+NkLd9trefTyHWdYhFTE6Oljk0VGXvlpbGMelIWJwcsxmtehiqQioeZVtnkkTUJB6xODla5vnBCpta4vN+cbWnYlPOq9ssk9O5GkcHS7QmTNIRAxSFia8a2/PxQo2oZRKPmFNeG4+EKJrOSNlDUwJKjosfhvh+iBeEEIZ4AdSCCg8fy7Jvc5r+okNHKo6qnb8k5asOJ8ZqKJpGtuKzs8NEV1X6Czb5Wr0GgWkaRCMmuze1EDU1YKKNIX6oEKCi6zqdCYtNLfHGSNfjJ7JUXZvRiofrK6RjFmXH43TWpuYrs567YVgfARurBsTH65dNP6YrOZLTsYTn+lz74ePjhAoRy0RRZ+5XxNIYqXr41DsqpmkSj6+e69Vqttqu7atZs8dKjufyy2azvPSlL+W2227jW9/6Fp2dnRw7doxMJrPSTRNCiA1vekbVtrYoharLYLFGJmrih2GjeHtXOsrLdrXPW094MaYHfmw3YLhoU7J9Luuor9LoB9Cfr9ESNRs1xibMVW93+iJEharLU6ezFGounckIXaloo06ufTZg/3ggbyHtnlhNcvI97rHhIiMle9573It5rVh6yxrw+p3f+R2++MUv8i//8i8kk0kGBupzXdLpNNFo9AKvFqvV5Cj94yfHyFUddkxaRTFu6Ww345wcLXOwr8BtSWvRN/3TI/iOH5CJGWxtjZGKGrQnDAbzDgPFGrmKQ9LSuXFbK/SfvqRFCCcHCExN4UBffsoKJHs3pynbPn25CvmKw9EgZFPKQtNUXrC1hVt2tZOvejMKOU6YnNJ73dZM45gcGSpwbKRI3DLoSUfZ1hYlHTVnvGauIvZzaYmbXLM5w0C+Rs31SUWMRt5VGAYMFqqASnfKIh2dehnJxAxSls7ZbJWYoZKJWXhBwGCpRqnmoqoaW1ojZGImfdkKY2WHiuPRmZwUXCLk1GiViuNxRVeKZ88VGC7VR3064hZ9+SojZZuuVIR01KBQc1EVpbH6Za7qkI6ZtMVNHD9sHI9MzODJUzb5qkPR9qg4Pr2ZCMp4Uf7BYo0gCMlVnSnn7lChxoHTYwDc98w5DMOYMUqzXkZy5tuP5leGlCwuITaCT3/602zZsoXPf/7zjce2b9++cg0SQggB1O9NwjAcXwWxXM9yiprs601xarTKSKnGUNGmJ1W/P7jQaoULHdQNw5AjgyUeOjxM1fHY2hYjaujUXL8RoOrLVbB0jYiuoilwdU+KTMycso35iudPLEIUhiHP9hco1NzGvRcs/p50ttUkm93exbz2Yo+5mN2yBrzuvfdeAPbv3z/l8c9//vO84x3vWM63XnHr9QSdfDOcqzocGijRk47SFjcbgRa4uGDLdNMj+Jau4ng+z/QX6ctVaIkbJKM67QmLfZvTbG+1+Fb/00uwt1PN9ZlODxB4fsCZsSpXdCemrEBy085WTo5EODVapmC7bG6Ncc3mDPt603SmIgzkazMKOU42OaW3O10/JpszESpOMB4A1KdMB5z+moVQFIV9vWlOjJR5+kyWs7kqbXGTqutxYrhCyfbYlI7Ql6vy4KGRGUGdmKkRNVVqbkAY1ovJu35I1NRx/ZCaG9KTibJnU5LnzhUZLtpsa/NIWPUvs8nz+UNgS0uU1qRVX/FxPAgDsL0tTlfKZLjoMlq28WwXXVXZlI7RkTQAZcqI0JHBEg8cGqJQdTibqxExVPwwpCNhEbd0MlGTsYrDpsz5c9f1Ax48NEyhUqUD6MlEsX1lyigNsC5GcuYbkRou1XhBb2ZKx0lVzh/byZ2SdFQya4TYCL7xjW/wMz/zM/zCL/wCDz30EJs3b+bd7343v/Ebv7HSTRNCiA1j+j3K5Puk0bLNqZEKZ3M19m1O0pmMsrNDQVdhZ3uCl+5s4fATJ+dNFFjooO5QocaBs3keODTEQKG++qIX0BiY39uT4sRome5UhBdub6VY83jqdJZc1cHU1QWvYj7b6o8TFnNPOtf2wjCkbNcHd48MFXjBlvSMjLilast6GUhfDZZ9SuNGtF5P0Mk3wx0JC9cPcb2A/nwF2/O5pjc9Jei12GDLbCYi+JN1piKzBqCWY2WuuT7T7rTViOJPBAgG8lUGCjVURSFm6o1jko6aXLPFYHt7nNNjFV67t5vd3cnGxbD57JlJhRxTEdoTJrqqoKAQUr8QT9RSg3DWNOBmdKYivOEFPbTGTZ48neXkSJnhYg1D17i2N8O1vRksQ50R1MlVXCquz/7dnTx5KsdAsUax6hIxNCKGTtQEVYH2hIWqqGxrjTFctDk9WuHKTalZ5/Nvbo2xrydFxQlwgwBVURgr12iNRxgr2+zdnKTixBv7HTNVTo1WpowIDRVqPHR4mIFCjba4SVTXiBga2YpD1fbrI0+mhmfXs8Wqvk/N9XnuXJF81WFba4xqDjRFmTJKc+BsHhSWZCRnJc03ItXiGzx2MseBs3naEianR6d2nBbSKRFCrB/Hjx/n3nvv5a677uIjH/kIjz32GP/pP/0nLMvi137t12Y8/1Ktxr3UNupqqht1v2Hj7rvs99rb7+m1lG0vYKTokIho7GxP0BGP0xrReX6gwE9OjbG1LUZLzOTq7gRX9qTIRFQOM/e+N7M69+Rg2cTzBwpVPNdle0sETYGhfIlS1ebqniSpiEFX3CBfrqErATvaIiTM1kWvYl6uObiuixXXCf2Zq4BbWojrupRrDgmz3ked7zOfbXv5qsvpbIVsxcV16yVb2mMGL7msbcr+L6YtF3vMF2Itn+vTNbsPl2yVxo1ivc7ZnXwznImaHBspcy5XZbhkY+kquYqLriq8+LK2RpbRXHOul8psQbDFmi8jb67P9OhwkYePDJOM6OzbnJ6SzdWZjJCvOpwarbKv12gcEwUFXVVoj5uYuspgwW6831zL7E60b7aU3smvafENTo/V6plOQYCmKHgBvGRn66xpwM3oTEV44/WbuXV3O9/86QBnshWu3JQkGTl/fKYHdSYKZF7emaQzafHkmXqgJGbWR2ySlomm0Sh6HjV12pMmUVNvrLYy23x+VVVJROrnUtn2iBj14/70mRynRusjKamIQc31OTlawdRUOlP1zMB0VOdgX4Gq49GZtNAUBV1T0NT6MsX5mstwyaY7ZaGrKkEYNoKPjVGaacdmYpTm6HARUOhOLc2o0kqZa0QqX3U42FfEdj3CQGVra5y2uMUz/XmePJVje7tLa9xsrHrTmYqsiy9RIcSFBUHAjTfeyKc+9SkArrvuOp555hnuvffeWQNeK7Ea91LaqKupbtT9ho2777Lfa8/k5d16oL5a+dn6Stlp4CYDMIBK/d/0FcLn2/dmV+ee/PxtwDaL+ir1IfVV2wH6602YaPMPHjw4534sZBXzNsDOzv/7Jx55dsbjc+339O0ZwGUAKvUdtID+czzev3RtmWyhx3yh1vK5PqHZ1bgl4LWElnLO7mozcTNs6RrP9Bcoux7pqEF3KsJo2cH3Ap7pL7C1Lc7mTPSCc65Xk/ky8jqS1pyfaUdo8eSpLIY2tZMetzTaEiZlx2OkVKNsx0mMZ2yFYcjxkTIQ8vCRYdwgnPJ+cy2zO1f2zMTSvCdGSjxwaARdrWdOhaj1z8UPGC05DBftRQdaFUVBVVUUFfZuTs/IPpse1JmcqdYSt3jR9lZcL8DUVWKmDoRU3aCxKkzN9WmLW9y0o42z2Wr9c/CCpubz7+pKkIkZU1Zpsd3xFRh1lUdPjGJqKumowdlsha1tMbwA+nNlEpZOruqSjhrEDJ1C1UVVYFtrnJLtcXlHkoihnZ9mGvozjk3E0Kg4PqA0NRV1NZu8ks+EiVpqZcdlczrKaMUhCOvTUbtTFs8NFOnNxLhtz9Kv6COEWP02bdrEVVddNeWxK6+8kq985SuzPn+trsa9UVdT3aj7DRt332W/V8d+T8/aMjSVnnR0yiris65m7/g8cTpLVFMpjA/y7u1JNQbeJ1bTvnFbK/25Kv35Kp7n0po7RHzH9VzV2zIlc6jZ1bl/5upuFGU8M+noMJ2JCKDwxJks0fEpigC261NxffZ0p/D8ANv3+bkX9F70gPBsx6LxO0JOj1XY0ZbgZbvbG33V+T7zydvb0hLjmXMFhoo2HXETBRgq2XSlolzVk+TMtG0vpi2TNXvMX723e8r9UbNW27l+MZpdjVsCXktoqecPrya2Vw8i5MoeZdejM1EP2nWlItRcn6rrU6h5nBgpkY7qDBftNTG96UIZeS/YkpnzM/WCkKipUar5lG2fRKT+56QoCttaY+QrLv35KvmqQ3Ri9cqRMv3ZCpsy9Tnss2UAzrbM7uTsmek6khYtMZOEpaGpKiXbQ9dUtrbG2NoSm1GAfTFmC4ZMNjmo05WypmSqJSydTZkoA4UalqYwVHLYlI4Rt7QZwatdXYkZq61Mn88/WKxNyd7qSFrctqdjygqMugpdqej5bLyhMsdHSrTHI40VampeDU1VyFXq289VHFriJqqqkBk/dw3tfPAuNsvVsub6419GStNTURdqruzDpa4TONuU2sm11Gw/wA9CyjUPQ1WJWxrb2+IUai6Koqzqv3MhxPJ46UtfyqFDh6Y8dvjwYbZt2zbr89f6atxrpZ1LbaPuN2zcfZf9XjmTV3qffG9yfKw6ZRXxbNmZscq5GwY4ASSjBglVY7TiU3GVxj1KxNI4ka3yyPEsENKZjGBpFnYOTmarjNlMmY3UzOrcJ7M1Hj6apeJ6jJQcDg8WuawdtrXFyMQj9RpeRr2PWgsCTo7VKDkBRdunOxXhwLkS+zanL3oG1L6trY1V7KcmDdik41H2bW3FnGVF87k+84ntPT9U4VzeIRk1qfkKuapD3LLY2p5A0ww6UnH6iw5lF1rGVyZfbFuaPeYTK6JfzLm6Gs71i9Vs+yXgtYQWEhRYS8IwpOp45Moup8cqdE4KnNSXuI3Tn6tQ9erF2jelo+zqnDtAs1o0k5F3oC+P7flEjJn7YWj1IEzV8XCDqZ9pJmZyeWeCIAypuQFncxVMtV5Ta1MmOmUK5IwMwD0d3Lang2zZYbjoAGE9qDVHkDRXcSk7Hi/Z2QYouEHQCEgoioKpq4sKtIZhON4Gm0LVxfV8qo5HIjLz4jI5qDORdTY5U21LJsZI0eb5wRKdKYvelggVe/bMtYk2dqcjTWVvTc7Ge+q0gxcE7GhPTDm+O9pjHB4scHS4yAu3t46vUFPP+hou1sjV6kHCLS0xru3NNM7dMAwbwbttLVNv0iaCdZd3JEGB48OlpqeiNmu+2nEDeXtJ6wTONqV2opaa7cGxkTK6qvDsuQKGrtIaN9mSidWXmF5j1zQhxNL43d/9XW6++WY+9alP8Yu/+Is89thj/PVf/zV//dd/vdJNE0KIS2apBiEXMltotvtOQ1PR1fqK5aamUqy5U+5Rqo7HSNFBTSqNurkTdaa2tsY4lbWnDJJfqL7wULHKyZEyUF9IKmbq9OWqnMnVF7ja0hpluGhzarSCZagMFqrkqx4JS6cnE2VXZ5zjwyVGS85Fl/3pTEUWnDTQzPYePjzC8+cKoIKpaWxKxxrF92H2+/uLactCazqLC5OA1xKa6wSdWNEhX3Xw/ABTWzuZEI0b7myF09kKhwaLeEFIVyrS2Me4qZGM6PS2xElENPbv7mT3pBUKV6tmMvIGCjUgnPWiE7c0kpbBWNlBnxaBD8MQ2/O57YpOrtuawfHrQcOHjwyTjs6c+jU9A9D1gxmBjp5MlC0tMVJRY8qX6cQXXtTU0WYbCVhEoHWoUOP7R0d44lSW0VJ95njV9UlFDF62q2NK4Gy2oM7kC/3ZbJl8zSUT00lGddIRg6LtYXvBjAv/9A5DM9lbzWTjJSI6W1vjnBorc+Wm1PiyzAY7O+LYrsfJkQo7O+LcsK2FqKljaCphGE4J3p0eq9AB+GGIbXuNYN2+3jQAoyWn6amozX4Gs2Uf/uRsjm8dqGcJXtaRWLI6gbMFKlVFoWT7HMqW0FWFbV0JMlETxw8YKNQYKdpsaY1iagrZstP43OJre8BICNGkF77whXzta1/jwx/+ML//+7/Pjh07uOeee/iVX/mVlW6aEEJcEku5WNlCZgvNdt8ZtzTa4hbn8hXSEQNdUzHUemAkDENOjdVrHm1ti83cPjNnI81XXzgIAw70FTF1lSu7k6iqSkhITzpKf67MaKleV1hXFXIVm4GCTcX22doW5fKuJNtaY+iaiqX7DOSrHOjL84qLLPvTmaqvYr9UMyA6UxFu29PBSNkmYqiko2Y9oWDSNMW5AlCLbctiajqL+UnAawnNdoLmKg6nxiqMlhyGijW6UxGeOpNbktTN5Tb9hvu6LRn6s1VOjtaj9jvbExhaPbUzETHZ3h4FFDpTzV2slnpK1kI1k5GnqwqZqMVQsTbjokMIUVOjJx1luFhflXF6oGNf7/nlagfyNdwgvGAGYF+uwrP9xSmBjqFilX97ZhDX89nWHqMtbjW+TJdiJGAim2tiKuH3Dg/x1Jk8ugqtCRMvCLELISdHylQcj5fv7mxMZ50rqNOZinB1GFKyXYq2T8w0SEd1MjGTnR0JNmeiMxYHONCX5+hQiYpTnyp4eWeCfZvT82ZvTV4t0fFm/zwVFC7vjNOfr3J8pNSoz6VQX3UlamkUbY/7nxtCV+tZcZM7K/uv6ODA6TFKOejPVTEMY0awbraRnJ0dCba0xPCDkBPDpfGVKrULnutzjfDFLI0gCBktO6RjJrbnE4Y0phdebJ3A6SNStutTrrkQBuzd1EIiWv9yjagalqbw/GCJhKXz5Kks5wq188HZ5Nqasi2EWLzXv/71vP71r1/pZgghxCW31IuVXUwJEUWpr9i+rS1KvuJwYrTCZR1xIoZKeXygNmbpdABRY/YQwPRB8umDoR1JCz+Aku3W72s8nxdsyYyvol4vebG1NcJgocqZbJkgDNm3Oc2W1hhjFRdTV+lKRWiJGZweqzYW2vIDGCrabGmJsbs7ueDPYbKlXNQM6jNPdnUmOTZcJG5ODXZdKAC1mLbMNgC9FAPpG5kEvJbQ9BPU0jWODpXI11wYL/S8lKmby2m2G+6YqXHtlgzPDxQp1lyOjRTZ0hJjUzrG1tYI2YrbdMR5KUdDFrNvuYpLvuLi+SFV1yNhzTFNT1fZ11tfCXC2i87mlig/c3VXY3rZfCmrTQWmVJXjQ5Upxz1fdTg2VCEIfALA8yBp6Y0v01t3ty9oJGByoFGjXoj9WwcGOZuv4YchA7kqp3NVIpqGYmiczVbxw7C+KImpUqh5HBoo4Pg+lq7NmZ47VKjx0OER8lWH3sz5jKzBQo2aG0yZGjuYr/JPPz7D0YEyKCGmoQAqx4bLnBwp87JdHU1k41WZr5aWpWtctSlFbyZGvuaMT5H0GSs7nM1W8YKQTMykOxmhK23O6KzcsquNbx+DyzsTREyTyzrjtMbPT3OcPpJTqLqcGavw788NcnqsHiROWBpbW2Ps6U7Pe65PHuEDKNXq02YdL+BstgKE/ORsjpGSTdzSaY3XV7JcijqBk/djqGCTq44vvuB6GLqKoddT5XNVh1RE50y2QiKis70t3viMT4yW6KBevLSnVUaghBBCCLF2zTZIDyz5YmULGcSeKzCiqyqZRk1ag758tXFv0tsS5dETo43tT8xCUqjXbUUNZwySTwyGPnJkmO8fGeFcoQpAOqLj+nBytIzjl/D8AF2rl7xQlfpgbNUNKNQ8dE2hNW6yORNltOzw4KFhOsdrEBu6ge36nBqr8NDhYTIxY1XdH69EAGqpp2dudBLwWmKNbJCzeR44NFQv1Je0aE9EGvN9wzBc9Ss2zpZSqyj1+d5eEDJcrKEoKnu6k6SixoKK1C/1aMhCTA602Z7PmbEKx4bLvGh7hkzsfPDiQisBTr/oXLnpwtlqzaSodqUi5Cp247hPXiWvOxWl5gVkqw6QaGT0PNNf5OqeZFMX4umBxmyxyi7gX396lmS0/p5nsxXGKg5qCOm4SUvURNcUPD/Edn28ICRi6rzs8k46U9as+zo9YIpS/yJ1/YD2hMVw6XyNgKFCjf/98Al+eHwUVakH8zIxi3RUoWi7/ODYKDXXw9TVRgBouoihoakKLbHZs/Emju+e7hT7r2gnX/Xoy1V57PgohZqHZWjsSEfw/JDBYpWS7bF3c5JspV7w/+ow5PuHh9CAL//4DH6o0pawuGFbCy+9vL1xvk6M5AwVajx9JkdfrspQoYbr+7TGDCqOz5mxKjU3mPdcnxjhs92Ao8Mlxsr16dCFqsuR4RJpy8DQFdJRA0NTGSjUKFY9rtqUWpKaWhP7YXsBLXGDra1Rzmbrqeme7aKrKt3pKKWaSzHrsSk9aYqzpRNtjVHNwXP9BTa1xFflNU4IIYQQ4kLmGqTvbYku+WJlC53ONldg5NreDFf3JDF1bUaQ7my2yrHhIhnP5HS2Qq5c40YVnjidxQngRTtaCcOQgXyt8bqRks2Pjo/WS9v4QX2RrKrLcNmlP1/j2i1p2uIWjh9weqzCQL5Gb0sEBYW9m9NUHZ+xksPpsQpjZYey4xPRNZIRA2t84aPOZISK4zXuD4AVnQk02UoEoJZ6euZGJgGvZdCZinDdVoWjwyV2dSVmzPddCys2zpVSm4mZ7Nuc5uSIwbGRIqPl+gptzf7BL6QY41L/Qc8MtEUwNY3HTozywKERXryzhc5kdNZA0YUuOs2krDYzQrCzI8GPjo/gBSHZioPjBYyUamSiJijKlAKUiqI3zqPrtmYueCGevv811+f75wrsagM/CElFDVw/oGh7lGoumqqSDsHQFFAUDF2hNW7Rl6sXek9F9XkL6U90Ago1l1Oj59OWdVUlbup4foHeliiPHB3midNZLK2+6qcbwFCpxplsQMysTzX89+ccLm+PY+n1IpfT1dx6ttm+zXNn4018nqpa/+yeOp2jaHvoqkoqYaCpKpoKXXqEwWKN02M1dnbEeH6gwMG+HMcG87wiAd2pKKGiMlKy+ffnhhgrO9x5bc+UOmQH+wrkqg5BEOIFAZtSUVAUkpGQoZJNGEKuYs95rlu6iu36HB0s4YUh6YiBaekMFev1DzQFWgyrsXCCpasMlWyODhfpbYkuWSHLiZFGS9fY15tqBC0napx9/9goLVEDU5t6nZi41vXnq/Ne41Z6WrMQQgghxFzmG6Q/Nlyi7LjzDsYutIbuYrKJFhoY2bs5xfHhEg8dHkLTVDpiOoRQtl0KdshjJ8YYLNSwDA1TU4kZGg8dGebIYJFURCeRjKAQcnqsQs31GCkGDObr2VoRVaMlanBypMRAvsZ1W1uImxonhst4YUDZ9vD9AF2FsYqNH4RsaY1SdusrNm5rjdGXq3BksMTZbLWRoOAHIe3xCPt60+zqWpk60SsRgFrq6ZkblQS8lonjh+iaQncqumSFxC+l+VJq6ysQKiSj9QL1nalI03/wCynGuJR/4HMF2noyUW7d3cmPT41xaKCE44WY+uwR+6W46FxohCBXcTk5UuGQW0RVlfGAl83OjgSWoeGMpwtPFKCcfB51p+e+EM/IuAIO9ucp1eorswTASMmmJWZiqgo1NyBhKZQdF8c3MfX68fLD+rz/mhtQc/0597ORoeT5PNtfpOy4ZKL1tGXXCxgt1+jPV4kYGudyNQBa4haKqhL4PjXXp1hzUVWLrpTJSNGhYHs8dmKUW3d3zlk0v5lsPDh/HmaiBv25KqY2adqdopCJmoyWbba2Rjk1Wqbi+MTNelAnZmoEisaWFo2BQpVDgyW2Tyq0ObHthKVzarTSCFZOnEPpiMFYxWFTOjXnuZ6O6thewFDRZk9XAkWt/y36YX3FzqFCjVTExNImbdfSOTVWYW9PZskKWU4faUxMuhaMlW1yFYc9XSni1uy1Jtx5ss2WY1qzBNCEEEIIsRQuNEj/3LkCI0WHauuFVzBfiMVkEy3kHqUjadGWMIlZBroKFdcDHdoSFprmM1JySEcNrt+aoOb6fPfQEE+fydIWN2lL1O/fHC9AVxVSEZOy63N0qEjM1DB1DdevB6hsN6A9bnE6W2Ws7BDRNc7ZNcbKDtZ4eYyxsk3N97m8I8G21hhRU29MbYQQS9fIlT0GC1Uer2Z55OgwL9/dMWV2xaUkAai1SQJey2StLyl6oZTa4ZLNrs4Uu7uTC7qhXEgxxqU0X6CtJW7ykp1tDBZr3DJ+AV3OG+W5RgiGizZPncni+CGOH7A5EaXoeJwcrXBipMzO9nhjBGQiwDD9PJp+IZ4oRj9UsDkyVKQzaVK2fXJVh75sFXP81NQUhVOjZcbKDhW3nsVTqIUYmkoQho1tlWsuuqbQEtPn/Axh/PxXVY4OlSk7Ll3JSCPoYxkaLVGTEyNlnuvPs6MjNt72+nvkq/XaaumIOf6lqaNrKldvTnFooMTjJ0e5tjeDpqkEQb0ofiZuNZ2NB+fPw0zURNfU+jmpTlrWWVfxbJeRYj2oY+kqqYhZjwxOUOpTKLNVl6NDJa7f2tKYBuj4AXFNxwsCDH1qJ2giS09VFaqOP+u5nq96WLpGZ9JiqGQ3VkZ03ABDU0haOlXXp1DzSEbrQcRs1cHQVHZ2zlx5Z7FmG2m0dJWxssOJkTKmptKRnLnqaOM4znGNW45pzdOnK6+G0UAhhBBCrE0XGqTf2hZjqGhzaqzCVZtSM+6VLmY1veXMJspVXEq2x82XtQIKruvCudNEDY1czWdHW4yy41NzA0DB8wNcLyQM1YmuPEEYEioKyaiO6wdkyy6PnxxDUVV0VcFQFZSwvjDU8aEShapLoEBXOkLJ8dAUhXzNRVdUIobKzvYEmZhJyXYZLtp0JKEnHeWZ/gJl1yMdM+lIWPTlq/zw+BiOH3DbFZ1Sy0o0RQJey2StLyk6caM7XKzx7LkCmahBImKgKTBcar5e13QrFQi8UKAtataDKumYuSSR+wtlmswWmDrYV6BQdXnR9gwH+4oMl23SUYNNqQinsmX8MODy9voyvhNZW/OdR5MDACMlm5+eyREzDSxDwfVDzmYrqGE9SytbdinbHq1xi+50lGzZoWT7ZMsupbSLEoaMVV28IKA3FaUjYVGounOuOJiJGaRjBt8/NkJvJtoIdk3sa9726EpHGCvbxE2DVESvB28snapTr6mlKWA7IYWqSzpqsKUlhq4oPHZqjIeOjBCOj/xc1hHnll0Ly8abOA81BVrjJgOFWqMAKIDrBWiKwmjZqad0q/XnMy02ZegqihJSmRS4mth2EIboan0Ey5p03k1k6QXBzMKgE2wvwDJUrtuaadTOKtsufhjSFrfY2RHnXN6m5Hg449NE2+KRxnVnKU0eaXx+ID9egN8nbmlEDY1nzxWImVOnt4bUg6Q96eiMc3M5pjVPDqCtttFAIYQQQqw9F7x3MHQ6khYxU1+WYuZLmU00+b4kP14yJWroaKpCqEMFyFbHZ2NoKkW7vlgSgB+AqSlUXW98JoyCqiioQNXxyddcwjCkOxUlFTOo2B59uXom178/O0DJ8THHy5YQQlcygq4qtEQNio6HqilEzXqpjNOjFQC2tkQ5Plqh7Hp0Js73BzuTEcqOx2C+tqprYYvVRQJey2S9LClq6irDRZvnzxVAgba4xfVbW7hl1+JuHlcqELhUgbZmpkwtZqrW5FGkuKWzr1dp1L3SdYWorlF1AjZlIiQjRmN54bnOo+kZNJ4fUqx5DJVs2mIWPS0REpZOvlyf0lh13XowTNcwdYWuVBQvV6kXRM/VGFYUNE0hbuqczlWpeD66Vi/cPtu+KYrCzo4EuqaSq7pkxuuPOX5AvuYSN3S2tcV47IRDCFzWkeQnZ7Pkqg5uEGISYnshthtiaSE96ShnxyocHiri+yEv2J6mNW4RhCElu17gsj1hNX1OTj4Pt7bEKFbrxyYdMTBVhaFiDcvQ6clEiBgqA/kajj8zE8v1AsKwvoLpxLkzse2jw0VaYyYDhSpdej3DLQxD8jWX7mSEku1yeWdq1nN9ttpZtutzsD9Ptuxgqiq9LVH29qQx9fpo2nDJ5vJlCqJ3piJcHYacGi3TmYxyTa9Fa9xkuFjjR8ezPHR4iBftaKMrVa8NN1yo0AFc2TPz3Fzqac2TA2iZqCmjgUIIIYS4aM3cO7TGTW7a0daoN7XaVtMLw5AjgyUOnM0zUq6hqQp+EHJmrIqpK2xKnx8k9YMAQ1fr0xUnlU9JRHSipk7F9QmCAFAxNIWIodWz6l2flqhJKmqgKfWyKIYGiqUDIY7r4/oKA8UaW1vjbGmLMVxwqHkelq5SGx/czlddYqZOezIkQGGs7JCOTL3PMnQV3w5Jx4xVXQtbrC4S8FpGa3lJ0ckBkxu3t+AHULJd8hW3EfFfjJUKBC5FoK2ZQNZip2pNH0VKR0329RqNIuHFmsehgQJ+EHI2V5n3PJqtXtfRIQfLrAezvKC+vZa4ieu5ABSqPp1pC0MFxw0ICeken9pZqHl0JExSkXq9K1SFiKEyVnZpjVtz7tvmTJSrNiXJVVzKTr0ml66pjaKUuqbQlrDIV12u3JSgWHM5OVbC8wJKYYjrhRi6gmmonBgt8+iJMSqOS9wy6MtW6UxGyMQsOhILX/V08nmYqzrs7IgzVLAZKFQZLtpETY0bt6W4/apOnukvcl9xgELNhcnfqWFItmKjqhqXdyYa587kbZdtH11VOVeoEjd1Kk49sKooTJmGOd3089XzA87mqpRtj8FCjSNDJXa0xdDVeiBxqFgjc4G/nYupbxWGIc/0F/GCgH2T3mNTOsZtV2g8djLH4cEijl9fPGBHW4JSrl4nYrrZRkxDwsa5ro7Xhmh2WvNEAK0jYXFspCyjgUIIIYS4aM3eO+zqSrCrK7HqaogOFWp8/+gI3zs8TNH2aIkadKWitCcMijWXBw+N8LJd7fSk6v1XTVVxXJ+87U0pn9KTjnJ8uEzZ8Sja9UWtdE3B9XzK9kQ935DhYo2qG+IGAS1Rk2TEoGS7tCcjaCro44kFbfF6VtxgoUZfrgrUg4dX9WTobYny6IlRSjUXzw8wp9VGc736rIaEZZCrOqu2FrZYXSTgtczW4pKic005SkcNetILDy5MtxKBwIsNtDUTyOpIWoueqjXbKJKC0igSbmoqe3vS3LKrnaipz3seTc+gKdU8xioO21pjDI5Pg8tWXLa2RsmV6qM3ukZ9xZSqg+2GbEpHuWZzksODFXKVIomITtH2iFoGuzrjxEydoZLNcMlmX0+KU2OVGfuWiRns6U5zdKjAlckIXhBiqGrjC/TkaJkbtrXgeAHZisu+3hTtcZMfn8kyXKiRjOhETA3HDbCVgDAMMXUNVVE4NFjE9UNetKOVTMxc1GIH089DXQMFaEuYdCQtQkKePVdiUybCrs4kB86MggkVxydUQkZKNl4A129NsG9zesaKOeenARbqyzBXXBKWRm9rlD3d6XnP9cnn64G+PMNFG9cPSFg6nakIUdOj5vl859Agl7UnuLI7zU07W+bc3sUWiJ8vKysTs7j5slYGCzYvu7yTzpRF3IBvHZt9W6am4PkhA4Uq6aiJ5wecHju/iqcfQERXKVRdutMXbttEAM0PkdFAIYQQQiyJhd47rKa+xVChxgOHhnjiVI4gDNndkcAJ6pn6zw14mJpGf77KN57u54XbUlwFxA2NIyMVeluijfIpAFtbY7TGDcKwPihZtF1qrsdAwUFRFTIRnXTMxPYDCjWXuKmTjhkkLJ1CzaE9aRIEYHs+2bJDVzKCqirELI3LOhJ0piK87poetrfXB+nPZqsc6MvVA3CTa+yGIbmqw6Z0DE1lVdfCFquLBLwugbW2osOlWElxJQKBiw20NVtz6AVb0os+bs2OIm1vj1/wGE3PoHGDAM8PaItbWLrGUMHmXKFK2fZpS9QzcDJRi7ZEhJip0Z602N2VxFBVzmRr7O5KcuWmFMeGS2RiBhGjftlIR4x6kXsnmHXfJncURkp2o6NQdjxOj1aImTpX96RJR3We6S/Sl6vQlrS4aXsbA4UqharLUNHGdgPcoF6UPWpqZAwTBejLVzk5WubaqLHoxQ4mzsMjgyUeOjxMb6vSWCVmckDz5svbaI1q0N/PQKGKH9anc96wrWXO2lAT275ua4aaW195MmJoc9Y9m+31t+5u54uPnSZbcUhFdfyQ8UxEnf5clSNDJU6NlomZGighN+1opSsdnbKdpSgQ30wdC11zSMeMeuag6876vKFCjQNn85wZqzBQqJG0NAo1n5ip0Z2KoGs6/fkamgJPnc6SiRkXbNtEsFhGA4UQQgixlNbibJ2J+5bBfA1dhXQygqqp+J5H2fYYqdh0pyJcuznFmVyNk8NlrmqtD35vbY2RjOgYmoofhNTc+kJXL7msHV1VODpU4lyuSsn2yMQMYqZKTyZK3DKoOh6qoqApCrYboKseUUNnaybOWNUhCHQGCjWGSzapqEF3MgqE7OpMYekqJ0fKRAyN3pYoQ4Uq/bkqwyWPnnS9NEuu6hC3DLa2Rhgu2qu6FrZYXSTgJWa4VCspNhsIvJipWNMtJtDWbABwcya66OO2lFM9p2eLGaraWIkwbulsykDUVNm3OU3KUqGvn+6UxYt3ttESM4lbGoqiMFa2yVVd9nSlaEtYnBwrY+rn921itUE3CEhFjFn3bSJo8+iJMc5kqxSr9ZVhANqTIY+eGKUnHWVLS5TNmQig0JE0GSnafOaBo4wUbRRVwdJVkpZBzNRwfB83UEGBgXyNyzt8FOXiRnrOZqtAOGWVnckBzYG8zeuu6ebb/fDu/bvQNI2OpEVLfO4VCuHig92mrtEet+jaHcHQVAxNxfMDDvYVGC3baIrCUNEGpcgz/QWeOp3jF27s5aqeNLB0BeKXogbe5MDb7q4kCnB4qESx5tGZNElFdZxaSEvU5OqeFLmqM2/bJq4LNdcnHTE5PlKU0UAhhBBCLKmlHqRfyvua2Uzct9Qz26v4YUix5nJqrEzJ9mmNmdhuQMwy2JyBKzvjkB1kV2eamy5r49lzpVmDex1Ji2zZ4ehQie8dGaE7afCjkzlOj1bIRA0w9XrZDlWh4niUbbisM8G+3hTP9BfJlm16M1Gu3ZIhamgM5KsUHZ/nB/P84PgIJdsjYWlsbY2xKR3lyu4UPzmb48hQiUzMpDsZpSttkq24a6YWtlgdJOAlZliplRRnc7FTsZZCswFACOc9blXXw/ND8hV31i+4pRpFmp4tFre08ysRagr5qktPJkZPS5TQ96gCva0x8jUXVQE/rK/GeS5fI2npdKXN8cLoU1ccnFht0FDVOc+JoUKNZ/qL5CoOharDqZEKlqlx/ZY0iYjJuXyFJ06OgQI72hO0xk02Z2J0JOtZXMmITlc6gq6qZCsOZccnZmiUbZeSHVLzAhzfJ1912dmeIAxDBvK1BXUgJteAKts+bhA0pl5ODmgWavVU611dCQyjuRGli+3U2F6AEwT0pmL1lXQIOXC2PL5qo0fN9dBVlfaEhakqnBit8P/78Vl+61aTrnT0/L4lLcpOvUaWoc3ctwtla15sDbzZAm9hCGeyFTRFJ1txAIV9vWm2tcbIxOrn3Fxtm35dsN2AXMWlWHMpOzIaKIQQQoils5ABzPn6fgu9r1lMP3LivkVBYbBQo2z7FGpufeVxXSVuauiaSmvCIGYatMQtyML/x95/xEiW5em94O9cfa9pczd3D/fQkVpVZqlWVV1VfC3Yr8k3/UBgBkNiQHAWgwG4aIA7ckeAQC+44YKbITdcEQTmARy898gmq5qoLtGiKquyRMrQyrW5abv6nntmccw93CM8ZEZWZlTaB0SmKzO7+pzz/b//942TDNe2+NZLnft+ZrvqcloqWpsjOvWAL52GwTRlfZjQrti4tskozIgyyVrb54unm7QqLq+twY9v6LRGhZ6fTVKJaQgGYU4uJe3AJsokt/sxSV6y1vL5v37lFJvDhL1pimUIQHym1XVzfDYxJ7zmuAefVpLi3XgarVjHvedxA82rqzUcyzz24f6oBGCn5t73uA2jlB/fGOKYgh9c2cW1zGMHuKdRRTpOLXaqGbA3SfloZ8pS3eVkyyNK76TpnW4HXNmLuXgojfOtU01OtwP2pinLdW0yuTWKWLY8FOi0wbpH4Bjc7Ef3XBOHz1+n6rJraON8KUu+f7mHYwntgyUVrmXSqjicWdDH78OtklGcU3MtLMPEsQwavkNWpES5xDAEcSYpZMnWKKHiWoyTnP/y7tZjE6NpUdILU3ZGKYM4o5gRee2Kw5l2QO1AvaYAGIQZgzgB1ANVXk+DrL372gtTSW+azkzdJVXXJi00ieXZJucWAm4PY350bcDff9MjLUr6YXZn30rd3rdQcTmz4FN1j1fmPco19TgKxONUkoFrslRzqbo2SS7JZMn5xQq1WUvi/RSR93supEVJnGvyc14NnGOOOeaYY445ftV40NwPeKx1zZPOI13LIM1LbvVDokyyF6YIwDYEKEWUSgyz5Ho34ktnWwSOQQzkUgcGPYzcOzw3PdWu8HuvLPPOrSHb44Q0l2RS4XsWv3VugdVmQJhq7+Avn2ny5qkWNc/i7Rt9LNNgEheM4owTdR+EoOYpdqcpSsEoyoirHv/rW6uM4uKZ8cKe47OHOeE1xz34tJIUD+NptWIdxv0Wyr9YH/KDy106NQfXNu8ZUB6VAGxVnGOP2+4k5m+u9ilkyRsnm7QCF1Nw3wHufgPN41R57laLZbLkVNtnqa59vCapHjjagQtDKMrynjTOQileX6mTbZR8tDXBsQRCCG4PIhCChmfTqbrc7Ef3XBN3n78wlQzijKprsjXM6U7SGUlj0PQ0WfXh5oSzC1XOLlT45fqIUmniKcxybNPBs3Ub4SjO6E0zkkLiOyYnmz7DOGdvmtKpuQf78N7GkO404VsvLj1wYjCOc27uRZRAp+rieDaZLNkeJ0zigvOdim7fjLUv1b/97hW6YQ6K+/p4PS2y9u5rL5clYVYQ55LAtggzSTNw8GbKOscyCWyT24OQYZQzjnNu7IWUSrFU87Atm7wo2RpFjOOcC0vBI6s1P44C8TiVpG0Y2JaJYQiaFWdmWq8Ofn+cavBBz4XXVutUXBPf1v96YfaxqoGfdMvBHHPMMcccc8zx64MHzf26kwTHMh55XXPce8VZwbsbQ652p3zjhQ7PL1ePnZc0fIu0kHQnGTXXoh9mCHQKo2kowkziCRNTAHemXdiPOB+8e256ql3RvluTdKbQimgGDotV59hk+UGYMYpzqq7FzV5E03dgth9itr7oRxknGnU2hhGjuHimvLDn+OxhTnjNcSw+bZPGp2GcP4wyJBLXMmj41rEL5aIsGYYZ68MY2xR88XSVtCjvISYehQAEPVi8slrj2m7EME7Zmyre3xwzSXIWqy63+hE3eiF13+Z0O2AQJvzt1T5fOdd6oJn5k1R5jlOLNXzroErimIJ3buwRohVehqmVNYfTOC9uT7BmPlG9MCXJJQqtAGtXbYTg2Gvi7vOXlyW5LJmmBWkhaVccNkcxdT/AsU0WTMHGKOHmXshq0+NE0+PDbQvHEOxOM3phStW1MQBTCKqeyZlKwD/8yinGqaQfZbQCm2vd6CDtzxSC9WGCYxr8yVtr9/WBuj2IsC2TspSaOBICzzBxLYPdScL7myO+erbNX13t0gGmacGJho8A9qYpf/HhLv0w4+9/YZWluvdUydq7yeeKa6GAKCsoTAPftlg69D6ZLPFtixJtNHq7H+FYBqVSOJaBEALXNlm2PLbHMe9uSP7w1eVHVms+qQLxOJXk4VbbhmthGdqjbP+8HKckfdhzYbnmMU5y/s5LSwghnpisetKq6pwkm2OOOeaYY47PF5RSDMKMH1zaY2sU8/JKDcPQ85n9ud8HW2O6k5Qvn209cF0zCDMAfnB5j+1RzEsnahjCYBhl3OxH9KYZu5MRN3shXznb4sJSjbWmf2S+MYqLgzn/9b2IpZpLkkviLGWSSGxTUHFNznaqJEVJmEoMYLXhP3Q+uD/PWaq73OyFXO+FLM2KzUWpiDPJa2sNvvFC576dM/tF0IppUZQltnX0M/c9gve7OeZhQ3N8XMwJr18TfBILrU8jSXEfH8c4vztJAfhv722TKYFjGtQ9iyu7IYs1hzCTVFz9vjd7MVFecG4hIMwkSV5S9e4lJh5GAAJ896PunQWyYdAMHExD8NObfdoVF98xGcY5wyjjyu6En98eUndNbGvIzX54UDG5e1H9qGqh+10DdxOC+98PwoytUUIdENw7+Hq2wfcvdTm7WOHLZ1pIBdMk14mBns1Xz7dZawYHn3P480dRTlpIPFvvh20YlKViGGVUHZtC6gEsl5KsMABF1TEZJzlhqgmxxapL4BisNHyu7k1nPk9oX7G6xzdfXOLCUo3/8u4Wnm3w3saEMMtp+s6Bkml3kvD9S11eXW3wwkoNOHqvxFnB5iDmtdUq729OuLg7oe5a1H0b0xBkRYkAwrTgWjekY8Naw0MZ+tF5qmWyPY65uDPl7MaIvzO7X55myumRa28QYQBhJmk3HdZawQGBpJRilOS0fJuGp9sEN0cxr642uNYN2Z2mNDwbZxZgkJdglJJTreCx7uknMeI/TiUphE7EHMc513sRFzpVPNsgTIt7lKT75+z2QB+3Ts099nP2nwuZVKw0jv+bh+FJ1XmfBb/BOeaYY4455pjjV4f9sf/y7oSf3xpQdS2KUh34kYKeNzV9m4+2xshDyxal1IF3rCEEvWnKdz/qshcm/Pz2kIprU5TQCixu9mLCvNDdFTWH63tTbvRDPMvg5ZU6b55q8frJBkt1bWfh2iYvrdTpTlKEEARCsNIUhKlWz/u2wHdMwrTgRi/iPPDy6v27d5RSXN6Z8u76iL0wOZgj96c5F7cnRGlxYIlycjavvN9c0TGF9lkNM6RUZIU8SICHOx7BZanmYUNzPBXMCa9fA3ySC62PmzL3pHhS4/zdccIPL+/hAnXPxnMddicx/+ODLtd6E84uVmj4Du3AoeKY3O6HVF2dKjJJC/JSj0THERP3IwC7k/TYBfL2KOZqN2SSFpxf8FgfxCRSUnFsXNPgRi+mN01pBTaebVD37GNJrEdRC72qFO9vTh7rGtCE0/FVE4ViZ5QxSQtONDyq3iH1V9PnRi9kd5zx6mrjQHp9+BrMi5Kr3ZAkl5xsVQhcg7pvc6U7wTNNdqcZcSbZHid4Vk4JrNZ9DEN7CAi06sy3TXIpudCpkEpFmmt12ommz9eeXySTiqwoGYQ5YZazXPMOZNGubbLW8LnU1QP088tVupP0yHYmmeTSzhTfNrjVj9gdpwfHb6nu8tJKDdfS21vO2u2EEHcU4ELQClwGcc6V3SlfPN26h6xVzCY0M8N4zxIH5A3wSCTy4WvvzdNN/uOPbrEzTjAFlKUikyWjJCewzVmkcwXPNslkyclmQOCY3OxH9MOMSZJjmQanmgGWBXX/kzdxv1+btG0aNHxbtzXO0oTuVpIevraGccbFHZ3s+OJKlYZ/9Nn0cQM1nlSd90n4Dc4xxxxzzDHHHJ9N7BNA37vUJc4K6r5N1beoufaBJcZra/UD0qvq2SigO04pldLeWtOUfqi9Y8OsYG+SEp6UnGz6VB2bumexOQx5f6Og4pqcagfEueTmXsTWKGEhsBmXijgbsDNOuL4X8r+8uXqwhjJtwal2gCkEpmlgGgIpSzZHMYMopz/NMAzB+U4FbnPfYuLuOOGvruzx/UtdJmlBy7dZrvv4jsHWKCKT8OapOiuNAFNAd6rXRcfNfXbHCe+uj7jdj9geJeRSrwWe79SoeNZB8Xal5jFNc55bqs/Dhub42JgTXs84fl0XWk9inF+WJX97rcfGMOY84DsGkzTn6m6EErp6kuYlpav42e0BYSbJcslC1cWzTaqOiW3cWSgfpyK7mwB80AK5U/P40bU+Uiq2RprsasyIo0GkJcVCGJQKdicpZxcr9yyqH0Ut9NH2mJu9kKIsH+sacK07LWR3I0wl25OElm/jmEdVdneTgbksj1yDaSG5PJxydXfKe5sjXlqucapdoV1xMITB9V5ILiVV18QQgkyWKHSrYCOwsAzB7iThpZU6r67WDog8haLq2bx4iMgbhBlFqWbbescDYB9ZqWj5NnthwuWdKT+/PTxyr1zfm/LR9ogolSzWXM4uBhSlYhznxJmkH2asNn2yQgLHkVIKqRRxVtAPM5Jc4s184JJcUpQlN3vxQZtlXijCtKBUCoSi6TuPTE7vX3utisP/wxD8f3+yzu1hTGCb+LZFy7c12dXW72ebd0jjZuDQ8O0jKZSgmKTFr6xydj+V5JunWvcNjbj7+dapukzigqvdKWkueeNU44D0ehqBGk+izvsk/AbnmGOOOeaYY46ni6fVDbNP2nz34i7b44SlmsskLZBSYQrBUtVld5pysxdhCkGhFHuThDgr+PHNPhXHYHeSYZuCMwsB7cDmxl5ImOYMwpR2YGOben5sGQa704QTpo9AzYiiGCEEVV+TaGFaME4kP7s9oF1x+JO3VllrBlzpTmgHDrcGEe3AQSCoOObMVqWCbwueX2rwh68s8N9u339fv3txl5/eHFIqxQudKlmp2J7EDKY5vmPS8AVpAXXf0p/hWsfOfQ7P6V5YrmEIwe4kZnuU8u7GgLOLNfYT74WAZsWdhw3N8VQwJ7yeYTxLC63HHWQe1zh/d6y9sL794Q6eqTjvwXubY8JMEWY5p9sBaaHYHMQkmUShDugLIRTb45hOxSMrJNME7TlVlNiGeCAh8KAFclEqar5FnEm2xgkLVYe0KJGlbqXzbWOWdOgTpZIwlVRd68ii+mGtne5MmdSpObyx1nysa6AZ2Kw2fKZ7HDkeAFkhGUYZLy3XD9o/D2OfDExyyYdbk4NrcJzkvLcxYneS0qnZrA8KNoYRsiypBzauZZAUkppr4TsWcVZgGAZLVZtBVBCmku40pTk7v0t1j6W6d99rpxnYLFZd3r7Rp1M9qvbZrxIt130MAe9ujI7cK0oppkmBIQzyMscUQh9npVswdevplE7NZaFq0x1rRVaSSxzHIMokuxNdnZumOYUsefv6gN8432KtGfCL9SHDMCPKC5q+Qy4Fm4Mp2+OEE3WPpYqH55hPRE6/strg//0Nhx9dG3B7EFKiaHg2J1uVg+OmlLqHNK64JmEKmZRsjRJeW208lcrZ3fd35T5v+Tht0vd7vr2wXCMtStYHMa5t8sUzTdK8fCqBGg+63xSKolTsTTN2x8nBdj/tFtY55phjjjnmmOPp4ml1w+yTNlujmDSXnJ4pqIZRxijKmaaS1YaHkvDL9aH+u6LkeneK71qc8G16YYaUJQLB7X6MgV5P1DyLy7sh64MYWSrivMSzdWhSWZbUXIvNYUyhoOVZTNOCKCuI8xJdvzb4q6t7fPPFzqxgPOTi7pTuKOa6mhLYJpZp0qm7BI4ukP7mhfaB39jd2J+H7YwSLAMaNQ/DNPBMaCibq92Qjumy0vDphenBOua4uc9xczrdfWAT2CHX9mJu9kPOdyqcbPu8tNKYW0LM8dQwJ7yeYQyjnPVBSMWxGMY5tmFQcc0Df5zPykLrSQeZRzXO3x98bg9CbEOwVHWggPV+xOY453ynihAGJ+oe1/em7EW6zcuzFZvDgu40Y6XmYgj4/pU96p5FITVZ8tJKbabuOR4PWiDbhkFg2yiRMkkKwrTANo2DFjfdemVyouFRqDvthYeVZQ9r7dRkS8Eba41jF9udmsvl3QlrTZ3QeJhcEELw8mqdt6+iSbN65VA7ZkLNtViqa3nzNCkOlEEV1zxoHUtyebDYR8BPbvT5xfqIrCiRpVY/TRJJ1bUZxTpd8MJiBd8xqXs2uVSM44xhkmPNzNVX6h6/eX7h4PweVtUdR5y+vtbgh5e7bI4SOhWHEk1KhamkGdgs1V3ivGBvmrJSv0NKhKmWUVddk1I59KNcq4ykJEwL7UeA4PpeSJx6bA5jCOBKd4Jp2sS5pCw1CVJzdLVsexzxvUuSV1drjOOc9WHMuYUA2xTc7CeM4pxTLZ/AtVkfxbyx1uDswpOR08sNn7//5v3JwLtJY9cy2R2n7IxjBnFOzbU43Q7oTtKPNaE47v5erd3/efOobdL3I5KagcPraw1cy2BzFFPbsWgG9lMJ1Ljf/TaKM272YjZHMWGaEzgGG8OE19bqlIon9hucY4455phjjjk+WTxKN0zLP34MP4zDpM2Jhp4XerO06aq0uZlGjGK9NkuzEqmg6lgMkwzLNFiZzfGkAsc2MBD0I22ZYZp6bqT9VxMMQyElyFIHDo3igou7E/phRs2ztKWHLDANg8AW+JZNmGk/rb+5tkdW6G3dHEQUZYlSghKJJRX13OLsQoWvPa8TxvM8P3Z/9+dhjcBmYxRjHxIASMVsvlRQKh0Cdtgm5e65z3Fzuv3ugwuLVd44lTGIcv7o1RWWG9489GeOp4o54fUMY2MY88HWGAMDqbTBX7viHBglfhYWWh+35fJhipDDg8/5xSr9MKeYeS01A4ervYRRlNMObEoUFUcvjrOipCgVlqm9pQzDYJoWdMOUF5aqSKVoBTZxXvK//2LrvvG/DyKkKq6JYejkFs8SOJaJLBVJrlNMclNxsuVTdS2iXJIVkkGUkc9M7/f39UGtndujlOos7e5ujOKM692Iq90JUVawWHXvIRr3+/XPLlS42kuIMkngmLxyokYrcLnem3C7HxFmElnOrrHAQQh481TrwCfKs00ubk/40fU+ealm5uiCpFAMwpT+NOO1k3WskeCNtQZXuiG3BjG5LLEMwXLN58WVKrZl8JWz7ccyBX91tcbXn+/w3Yu7XN6dMkkLClkSOCZV12RvknBmocowzo6QEnlZ6rRKy+BEw2NjFLM9jikVeJbBYtUlLUqu7YWM45yWp89vlBb044ysKGkFNqZpstbyeHGlRt2z+HB7QpJJqo7J+cUKUS7ZCzMGkZ4grTYDTEPQDzNdDfOsJyanH0Ye7ZPGP7y8xw8ua++FZuDw0nKd5YbD3gN8Fh4F97u/r/emdNABEqvtJ1OQPYhMbgYOXzzdotad8I0XOpxqBU9lcnTc/TaKM95dHzNNM/ISLizWWK55B8+wN081n8hvcI455phjjjnm+GTxqN0wX7vQfOh77ZM2napLmEqyomSS5lhCcKuv2wxrM9P6sSyQZcn13lT7prZ8OjWXnUmKZQieX6qiFNzsheyFGVVHz3WiXJLmkrpnERU5cVYgS0WhwEoylALLNFBKEdgmYa6VX4FrYprQD0O+/f4OqtTrgHbFIcoKkqIksE1eX6vjWhZ137qvZ9c+9udhTd/BMgzymRk+gDnrgMkKSZLJI0nbcO/c535zOiEEVc/Cd0ykUjRn1h1zzPE0MSe8nlHsjhPevt7X0bA1l6brksnyiFHivofP015oPWp74tNquXzQov5wxSBwNPHTHUdgg2XoPvJhlBLnLoNQy4VfWq6RK4jTgkyWvLZa56e3hvSmKShFXiragQvolrdr3Sk3eyHfemmJ19caR4iBBxJSKEaxpOZpU/yiLKl6Oj3QNHTSnmMabE9SBPDB5oS8lIzjghdnyjIhnAe2drYrNp4tSAtNRu1jf5E+iFKqrsXpdgXLEPcnGtX+fxTTJOeXGyNGcc7Pbo1ICm2gebIVAIoPtsa0KzZ/97WVA7+qKMv5xe0hSSZZbniYM3m0Y2niMFMlu+OUopBc2wvxHIOXVnT/fqkUSSHpTjJOtf1jCY6HEaerTQ/XFCSFxLcMpCnIi5K3bw7o1FxeXq0TZQa9MMU29aBszQbrfQN6xzBwXZOmb2MaBmme051k5GVJZEv2uQwDgzjXpFpewltnGrxyQid1vrs5ZnsY8/NwgCEEZ9oVVuouKA9FyWojwJwlVk6S/CAk4ZMkpzs1l0Zgc26xwkrDw7FMrQRFt3U+aevzg+5vvx0QD+HDzTEnWpUnIqIepm5MCz0JO9UKntrk6G5VXKfmcr0bMYhSHMug5ducXQyoevaBR8XtQcRqw+fa3vSR/QaPw36s+a86EXeOOeaYY445fl3xqLYDo7jy0PdKi5JemLIzSumFCVujmMmOxDY1CdWpuvTjDLPU6xZZKkZRRlKUTNOCm/2Imm8TJwW5VLi2iVRQcUwqrs0ozulNUqapDmiyDD1HdiwTF4FnGRS5ZBxn1Fyb8axzpD4ryE6SHNcy2BolFLLEtkw828I2DYowZWOUMAhzzi1W2JkkNH2HL51t3Xd/9+dhhlAEjsXWMGK5rufgnmXodsukYJLmnFusUXG0eCArdKfIq2t3bDOeNIxsjjmeBuaE1zOI/YVmXpY8v1RjexzrRELbxLWMA6PEqmtwolEhySWDMHsqC6jHaU98Um+bx/H7OlwxEEJwph0QxtnB7xueza1BxPY4oe7ZOJZBocC3DMZxyWozoBE41D2b55dr5EXJC8s1tkcJUV7gWSaLVYdxrL2petPsCFl0P6+xOCu4uD0hLyS/cW6BMM355caYrVFCxbU42fQZJQXXexFN3+JE08c0IC2gHTgoBd+7tHfwWfdr7dw3dT9MuCkUN3sx0zTDsQxWGj51T/fU3000dicpADf6ISv1Cmle8rPbOu2lkCVLs1bPvTBjko451fJ55UQdwxBsj1JeWqmx1gx4+3qP7iSh4tkodUd9l+aSimtTdU12JwmOZaCijNdO1ElLkLPI4ZpjcnE3ZKnu0vCPPpYeRpxe35uyMYxoBrotcRjnOJZBxbNZqLpEheQvL3apOhYbo5i6b2GbJu3Aoe5bbI20OboQgoWKg2Pp83d7kBDmBasNj+W6R15oyfdSw8F2bNoVG0MIXl9rIEu9jWFeUPNtRknOYJrx9qSPZxss1TzCtKDiFLQrzkHk8n5Iwic50A+jnM1hzJmFyj2TjI/T+vzA+3vmCLc5ip+4pfpJgiueBg7fb5d39b1VdS1WGv49MeNLNd3S8BvnFuiF2SP5Dd4PP7i0x+Yke+pJu59VPC3z4DnmmGOOOea4Hx7mhevZJt1pQnei1w7DKGOxbh07Ho3jnJt7EVEuUUqhlGCa5gxm/lumEEilGCcFpdSdJLZlUMzmuplU7IwSlILtUcJayyebdRos1T0GUcbOJMEUgqprgYKsUASOYLHqohSM4pxpLInyEt82qDgWvSjHEvnMO9ghKwqSQrFc98ikYm+akktF3bUYRBk3ehEIxb//4TVuD1b4jbPNY49NM7CpOBZ/e61HXkh2xikbo5ilqsvyzCLEMpl1Rgh+cXvM9iRhGGXUXIuTrTu2GZ/WnG6OOWBOeD2T2F9oLtc8Fiolk6Q4YOpty8C3DN7dGHKi6SOVoPte8lQWUI/bnvgog8zdqpbH9fu6u2LQDBxeOVGDLYiLElBYQqu9Xlqp0Z1k3B5G2AZUPYczCz5FqchLSVnCyVZAmBYMwgyplFYllSVxVrJQcSgV96hh7iakrvem7E0yokwS5QUbg4SslLR8G8OEoijJpKBTcYlziWubVBwLqeBEUy+qG759hJh6UGunEOII4VaUis1RTF5Cy7c50w6O+DrtExyDMOPDzTEAp9sBwjC50p1SKMW5hYB31od0HIsXliqcKkp2xikLVZc3TtaJsnJWESt4dbXG31zdYxQXBLZJnOf4WKRFiW0aNHwb24BxIjm74FLzLH6xOYISnaqoFBjQqXq4lskoLo4QJA8jTquuzS/XR7Qrtm4PrHsIIHBNfNukH6b84rYm65oVm0IqTAs2RxFSgmEIFFCWilIp0rxgfRCRFJK6a7Fc83FNAykLAAxhIoRuDYxySS5Lbg9iwrxgqeoyjLVxqWEIfMPENAS5LMml4vLOmFdPNAgLyUrdo+Kan/hA/yT34cOgZvfG3jQlcHSM9HGTw1yWT6xae9zgiqeJ/fttrekTZQWn25UD0vgw9o9d3bcfyW/wOOyTztd70yM+es960u6D8LTMg+eYY4455pjjQXiYsmhnnHBjL6KUkmXgv723zVr73rFbKcXtQURRwt4kxbMMGoGNZUJelMSp5Ep3wtmFKo5hEMkSzzEJHItumSKVou7ZTOKcpCxJi4L+NGEcZyxWPYRQhGlGWYJpCiZpgQAsU7BU97AM3cbo2yaWaWAZBo4pyEvF3jjBtgwuLFVRpaKXS2quSSFLetOcKJM4lkGYFsgSCqm7MQzgb671yfKc40be7iRlEGVMU4llwHPLFXqTnM1RzK1BzNl2wB+/tgoCfnF7yCQtaPk2Ly3XWaq79MKjthmf1pxujjnmhNcziMMLWNOweP1knZu9mF6YUqQ5aS4JM0lgW6w1/aeygHqS9sTHla8+id/XcRWDhm8TAV881eRaP+Z3nltkpe6xNU6wLDAAwzC50Amouja9MGUcF7QDh8Wqyy/WBwyjHKlKKo6te9LLgt5MlvzR9pi3TjePkDJLdY9vVh3euTnge5dTap7FyytV3r6pEyDDrKDpObyy3KBEMQhzQHGi7vJbFxZpBM6R0AHgHuXN/Vo771GATTPCNOfCYo2zi3cUKfvYX6R3Jxmbo5j67Oe745T1QUTFsSiUbvGbxBm90KHiWqzUXaJMEmYl/uw9NoYxu+OUEp1KOUryg2SZhYpDK3AwhaA7SXAtg8WqVq8JBKVQCKFQgIHANgSZlPcQJA8jbAxD0Asz9qYpphD0jQzTENQ8m07VZRgXgMJzTF5eabAX6mRFUxhMi5wXlip8Ya3OD6/ssTVLoimBc4sVlNI+BXmpMGZjcGAbbE9LtkYJ7YpDLhX9MKPh2TBT19mWwXOdKrf7MdMsYxjlLDdcrndzfrY+4JUTdU41g1nS470D/dNUvzxNGblSiss7U97dGHG7H3Fpe8LmIGaleVT9tA/7MVVrd+93p+Y+MZH0cSGEYKnuslh1sQxx7PE/fOxaFeeREygP7+9h0tkw9fn5LCbtPi18XF/HOeaYY4455nhUPEhZNAgzfny9R+DaLNVcGEHds48dj4ZRzsYgouGbbI10NwUKfMeadQ5I8hJWGy5705RJqnBNk7KEwNHFzzDNkQp820QAO5OUKJOsDyN6YcogLvAdE9c2cE2DVCocQxClklYgWB8l2LbJK50qG4OYONf+uqap9ykrdMK85xhUbIsbg4hpXCAEDCNFqfTcpFBQdW3WWr6eh44TTqPnJPvYX/eVSvGtFxe51U/ohSmtik3NM8klfOVsi3/4G6f4y4t7jOKcEw0PxzQP1jJ322Y8ahjZHHM8bcwJr2cQdy9gG77D6yftAwPF9zaGxJWS19bqBwvcj7uAepL2xMeRrz6p39dxKhDX1A/sXphyql3hmy906BxaiI7jnNuDiM1hzPowwjEMXlypoRR4jqA7zZClpBW4KGCUFLSqLqdaPtvjhFv9iCQ/mty4O054d33Edy/usj1OWKq5mIYgSnU641rDY5xJelHG2XZA3bX4+cYQA8Fay8c27yVzHkd5c1gBtjtOCByD5ZpH1btXMbS/SAd1kKjy3uaY24OU63shdd+enfOMpNBGmbYh8GwT2zLIihIBpLnk7et9irLktdUa28OYK90prmlQKIUhdIXKFJCXildP1A4UP19Yq5NK3dKojS8F68OEvUmGYz56MMD+dg7jHFUqTrYDHMMgLxWDKGMU5yRZMdsnReCavNFsEKaSvCzpTVNu9yMWqy5nOxW6o5RO3SXOdJrkrWFCf5qSyxLb0NfV7UHMOJaz1E2TXJZkeYlnGawPdCvo+U6VqmfTqUtGuxk744RpWmAAUgl822KS5aTy+NTRp6l+edB9WKqSm72QtVYwk+cfr9Ta364j5ve+jWEIxkkBo/jAO7AZOHoiCKw2/EdWrT1ov7/1UudTaX97XAn+3aT0w3y5hlF+QDrvt4Hu47OUtPu08LR8HeeYY4455pjjUfAg65Gf3OyjEHz1bJOKYxKhyamznnPPeJQWJaM4J8pKTrV9wlSby++HhgWugW8b5CU4loVtZqSFpFSKum9rpdc0xVQlpSrZmaS8sFTnq+cW2BrGXNqdokqwTYFAkOTaID6wBf0wZ3eSEOcFy1WXaSoZxjmFlLQrLlXXIi8lW8OImqfnZtMyJ891cqJvm0hVkEsoS0mrog3rSwWTtOB0S88vRnFOx9FfH173VVyLRuDoubMsZ+b0iklScKuvE6zPPqJtxsPCyOaY45PAnPB6BnHcIkyg+70nKmd3knKmHej+70P4OAuoJ2mLepyWpEGYPZHfF9yrcMrznAXg3EKV10/fSfzbf91Kw+P55eqRh21WSL53aY/rXZ3y15xF/kZ5gWeadKouQuhe+X6UHyG89hULW6OYNJecbgeYQnCrr5NXAttknBY4lsE4zjUJU0iWaz6TJGcQ5izV7z2uj+vrtL/YbgY2G8OEq90JFde67yK9U3NJC70fu5OUqqerVLks2R0nTFKJKSDNJJOyJMokBoKFwGGx5iIEWGbJudnC9ctnWwyjnF6YkuQlSSZxbYM4K/AdG8OA692YvCwxhMFS3b0zOCql/x2DBxI2Zcm17pSGp1sohQJhCBxDYJs2u+OEXphxoVMhcCxswzhIhBlGGZvDRE86Vmr89vlFfnZryMYw0tW0ikPDt7jVixjHGUtVTWpYFggDmr5N4Br0pinTLEcJWKhqkrQZ2ERZQXecYQAnGh5nFyvYhmB7FFP3LF5eqbFQcenU3INr8zj1S5wXvLcx5Gp3et+00IddF8fdh7uTmHc3tM9cieK/vFvcl1jbHSd896Nd3rk1oASeX6pSSEUyTpgmGbYpyKTixl7Ec0uCvUlEB3h59dHk6fv7PYwzqq5FxbQoleLKp6z6+ThtlY9CXKbF0Rjvu/FZSNp9mnhSX8c55phjjjnmeFIcpywqZsTN62tVFIIwkwdlp+PGo3Gcc30v5Eo3pOaZmMLAs0xaVY/TbYPbg5BJohMVA8ei5liEuUQIgSF0Sev8YgXXMrjdj3Btk6+ea+E5FlXHYnuUMHVMppmkKEsqjsk0KdibaoP7sgQBRG5JXkgqrskwLtkaJ3iWiWMZOJbJWsvndj9mlBWcaLisDxVpIcmkLl5bhkHgmPSmKf1IJ457QnHCh61RQqehzfv3132urY3o94muZmAjEMhS0QszJrMAsMddH87H+Dl+lZgTXs8gHrQIu74XYZsGz3Vqxy7CnnQB9aRtUY8qX72bUFOoI5UEzzbIwvv7AR2uGIRxyk//6gNeXKlhz6J7j1tc3f2w/eaLHQwBP77Rpz8z+W8FDp2qJmaUUkSZpOqad7bzkGLhREMbWHuWiWEI2oHLzV5EJXDxbYtxkjNOcqZpwal2hbWmx89uD9kax3TuUjR8HF+nR12kNwP74Hh2AhtlWNQ8m2t7IbYhMAVksmSU5NQ8G88qkUrw/uaI0wsBp9oBy4cWrqfaFV49Wec77+3QjzIUJRXb0ukylkFSKKquRZwXXN+bMkoyzi9WkaX2g3Jtg4pr3XOOH7Q/N3ohuVR8/flF3rk1YmeSsFL3ME0DWWqdkVIKqTQZVXHvnLcbvZDuNKXqmliGQStw+PLZFgtdh7++2uPDrQkvr1RZabh4tkF1drlME8nZdoXffX6RQZyzXHM5s1BhcxhzsuXz01tDskKyO0mJ81xPECounapLWpTUfZfrsxjqc4sVHEsTIfsBBIfVL6M442YvZm+asDtJdVroi0u8frLxWATQ3ffhjV7Ijb0QxzJ463SL5bp337aysiz526t9ruxOKaRiseJgGgamAWfbgT5HgG0YXN2bUPNNnluoMh3y0Mjr/XOhtyumLBU3exFFWWIZBu1ZRfHTVP08iQT/Udv2XOtojPfd+HVLLfok/OTmmGOOOeaY42G4W1l0rTvl2l7IzX7I9d4Ux4AvGzBOchoV68h4tDtO+NmtAeWsOOtbJoYwCLMcOVacXvBp+g6BbWEZYNsCYRgsVi3OLAS4tqW7GUzB+jAiyUtaFZePtqcUSncJCENwaqFCP8wYRhmTOGea6bFQ6O5JTAGTpODD7TFVz8YxTYSCwDFo+DoQSSm9ZvMdlySXM59Vgelqc3xLwN5UJ0GWCuqeyTDOwYcfXt5lmikWKg62KUgyyTs3h4RZcTAvW6i4nFnwZx5iBjXXumd9qJQ66KTIixJ7lor+cTEPu5njSTEnvJ5R3G8R9txSBc8WuPbxD5YnXUB9nHSNR5GvHibUirK840k2e8BWHItmYB/Z7uMefLksubg9AeDbH2xj2/Yjt4Mt1T3+zktL3OyF3OpHgKBT1al9SS4ZJTmOaXCy7R8s2A4rFpTSscSZLPEME9M0qDoWcS45u1ihVbGZppIvn2myVPeIUq0G823zqRs43u/6ON+pcqoVUCq42YsOjmc3zKj5BjXXJi9K0rzEMASeMKm5NlEmMYWgNUtsqXk2/TA/cp0No4yruyFVz2Kl5RImEtc0SApJxTG53Y+YpgXVGel0qxexMUgwhU54cW3B9jjhZNPnD19bOXK+7rc/J5uacHluqU7gWPzwco9umOKautrVrtgkeYkh4HTrjnn/5lC3oA6ijEbg8P7WmO2xw5l2wBdON6l6Nj+7PcC3LeoenGz5SCmBLs8v1XjzzALNQF8b4yTnN84tUCqdZllxLLZGEb1pRqkEVcfS3hDA9jghzgqqrk1SlDQDB8sQXO1OuNkLiXOtstonu95dHxNmOQ1P+0sMw4y3b/TZm6Z866Wlxya9vlVzGYQZ3/2oC8DLKzWMWVJk4JgsVl2u7U35Hx+WfOOFDtNU8uHWiO98uEtelHSnKSu5Tq2suBYIwYm6R5gVvLRSoxfmfPOFJc4tePz51UfbrmGU89H2mN1xQlGWs/ANfR1uj2MswzjWN+9XiceR4D9O214zsFlt+Ez3NMkv7nqfX7fUonks+RxzzDHHHJ8W9ovdu+OEi9sT7a9ac6l6NmGiUxrfuTXkrTMmliEoZMkwTLm0EzKMUr5wskl3mrI1TjlRd2l4Nr0w4/JuyYWZZ+6FpSrnFit89+IuF7cnhDPz+SiXjOKCKM2RZaltJFBUHAvbKLnRj3BnBf5pojtJ9q0OSgGWEFQcE1lKxokuwPu2gUIwSQomacmJhkuclaSy5I9eWmYvLFjvh2yNYsZxgRIQ5wVpXuI7Fk3fohU47EwSaMN3PujyPy726VSdgxZMBby0XMOx9bxsaxQxijKaFYcvnGxyZiHg+l7Ald0xnZpHP8zYGidEaUEhtbfvSys1skLe/8Q8AuZhN3N8HMwJr2cYxy3CGr7FX17ce+qxrx83MU0IQTOwD7Z1GOVHFoz7hNov1ocMw4woLw4WvlkuudqdcrodHDwwj3vwVV2L3jQDVdABVps+qdRkQneS8NbpFnXfPnaxepg8e36pjgAUgn6k5bqWabBS8xACXlppHBy/w4oFQ0C74rA91gbtOsHFYXMUURQlSS451Qr0g1nB7iThpZU6r67WeG9jzJXuhCiTBI7Jc53aY6t47sbd18c4zrndj/jR9R6Z1C2Hm4OEVQuW6z7dMGcQZ1gmeJbFJMlRM3+tdtWnXXFoB7ZWqLV83t+a0A+1gkWhuLgzYRBlrDS06kuoHAT4rsnWMAEUphBYpknVNRjEOaM45UTDZ7XhMk4lhoC/vbZHkku+8eLSkfN13PVeliX/2zvrbI9iWoHL331tiUu7EXvTBIXCFAZ1XxNZwzjDsQzSvOSdW302RzHLdY8LnQqWYbA9Tg58qM4tVkgLSc21eftGD2GAZwoQ8NbpJo2ZOftxKX2FHHNtr6QfZpxuB6w2fExDsDNJiFNdbVttevSjjFIpKq7NWafCuxtjdicx5xerqJn5fZjlVB2LrXHKJMkZxzm2JRhEGbZp8L9+ce2x2xuFEER5wdmFygHZNYwybvYjNgYRW6OESdLle5d3EUpgmzrp50TTY5Lm9MKMJJecmfk12JaBTLWabrGq/RkeZ5uSXHKrH5FLyYm6r5M7Adc2WbY8tsbxsb55v2rsT5T3nxU74/S+vlyP07b38mqdt6/CrX50JKXx1zG1aB5LPsccc8wxx6eJ/aJULiUvLNW42Qt1a16U8MUl+GhrzPZEFy/rvs13Ptzhl+sjTAGBaxPYFjt5wuXdnJpv4ZkGMlPEueSka/HSSp3nl6ss1z3+67tb/Pf3t/nZ7SHZLLncEoJEllhGzDjNcU2DuuewULHZHWdkhUQCpRBopyxACXzbwDIFqdTthEopbFNhGYJUSpxCUBQO4yQjySSmYfDVcy1eXa3TC1Ou7U740fU+k0Ti2QZ136bp28SZJJ+pqpNc0nRt2lWHa119XJq+zfYkZaXu4ZgGdc/i8u6UE7nP//zaCkIIVhouP7ic8tdXe4ziAoWiHdh4jkm74gCC713ae2J7innYzRwfF3PC6xnHca15n1Ts68dJ13gYMy+E4NXVGj+43GV9GHNuIcA2tUH6KC042fKpeRbvb2r11vcu7d3jc/TXV/tEac43nlsAwBSCimvRLBx+crPPuxujIy1k+59997aleckk1a2Lr56oYxiCslRM05xmxeXV1doB6RJnBY5xR7Fwph0wiQt2pykNz6bhW+xMDG70QlZbASdbWtl1+FzoE7n/n9m/p7S+PVzN+vnt4ZFj1pumfLAxgDo0fYuo0At5xzRxTN2zbxoCwxSUqmQQZQctnZ2aR7UfsT1K6VRdwkyyN9WEkjUzMg8c3b4YpeXM70u3NjqGYG+aoUotDRdCkBQlddfmVNtnL0z5/uUuN/vRsefrsN+VTguMZ0EBHgtVhxeWq7y6WicrJNujhFfXGry2Wuf9zQnrg5APtsZM0oLVhsfJtk7qBK0+2Z2m3OxHXFis0K44/M6FBfKyxLMNGq4J6zeoHwoCOC6l763TTd481eQ/v7OOUoqkkBRK0QwcSqloV10KqbCMO+1s+xOGa90p64MI2zTZHEY4luBmPyKdTZTqvkXVsxknBT+43OW1tQYvrNQe65q4u61sGGW8tzGmH6YMoxylFK4p2JtkFCUsVW3GiaQdOLQrLv0wJc11y+ZZxyQvSkwhGEU5r601aQY2RVE8cBsOE8w744RpUtCu2Adk16EL+FjfvKeBJ5HGP6ov1+O07e23fZ5bqLI5yX6tU4s+buFkjjnmmGOOOT4O9otSy3Uf20z52+sxe5Mc3wKWYJTkXO3FLNVc/uTNNWzLYG+aUpSKwMlnYWE226OErWGCYwkooShLkqIkL0vWBw2W6w7jWBcnzyxU6FRdRnHOz273STJFkkuWai4VxybOYlzLxDJgfZJiKN2+6FlawZVL3XWRFop9/bNUkOUlxewHhUSHI+UKyzQYJTkotC+qY+KaBjf2QqappOGa1Jw7FjL7Q65jCvTUXOBYJi3f1qa1QJQV7CbFQRr77iThLy91eX9zzCDKqHsWrmUCOZ4lGEQFbWHwwpkqJ1vBE4fSzMNu5ngamBNev4b4JGNfnyRd41GZeccy6dR033iYyTvKqrrHmbYmwNYHIdM0v+fBBwLLANM0uD2MuDD76TDKeH9zTFKUSMWRFrK9acpra/WDB+nhbdtXRA3jDNc2Z+2idVYaLu9vTg4WvLYh6IUZe2HGa6s6oe61tTo3+7qlrTvNONOu6DZIy2SSFqRFeXAugINjs1K/8/nXulN60+ypVC3uN1gsVh3Wmj6U8P0reyzWfFYbHgitNhlEGZ5tcrLpU/VmLWajmE7VI8ryWTumxY2e9oKSpU5v7EdalbRUd7mxVzBJc2zDIMoKbMOi7nnsTnTyoWUaxHnBSddjbdaeOIoLRrFWM919vvaPx+Fr6sWVKsasBTDMCkZRznNLVdJCstL0eX1NK+WW6h439gImqeT1tQbb45TtUazN8mfKp4Zn05tmWIbg9bUmZxcrPL9U42p3QlCzie86rncnje7fFy+t1PjDV1d4f2t8ENOcSclP4xzHEHTDlBON4MBTDDRBO04yfnhlj6prsTGMsYQBBixWHMZpQStwaHg2VVdX2N7dGD22if3htrLAMbnZjwjzHKkUUpXUPJswLVBKJ2japoFplNwaRDzXqRKnkmmWMwhTlqsOvSjDtS1WGt4jkRV3k0ZxWjCKMxSKmnev8vJu37yngSeRxj+OL9c9fhaHPAlzWeIY97btff2FRcKcX3tvinks+RxzzDHHHJ8WDpuxrw9iolSia486OEmWClSJQs+F7VlyeNO32B6ljOOcTtWlGTj0wow0l3iWwalWgGMa3O7H7E1SbvYidiYppgEN32aSFtzuR6AENU/bn0wTiQIsQxDncpbdpDAMMJUBCHxbW3TkUqc7SjXz9ZptcVHq78dpzjgtCByDpu8winJu9EJcy2R3nHK9N2VrnOFaBvXApV11Z+ni2rIEoFB36u2lUjqZMStwLYNTLZ9r3YhGAAuBwzQrcC3Bj673mKaSr5xtsVh1Waq7WIaBIfQ29aOcky2eOJRmHnYzx9PAnPD6NcUnGfv6OOkaD2Pmr/dC/vZaj6+cbTOOdZLhF0+3SHJdJbENg4prIoSW8N4a5ExSycmmf2RfclkilTZaHEQ5GHqRqRfzWs1zdwvZ9V7If39/m4pjcm6xemTbXlutc70XslL3+MrZNp5tHiQ53r3g3ZtmbA0jQCew1DybC4sVLENwrlPhG893eG6pwigujpwLgO9+1P1EqhaHyZc4K1gfhEcGi/0Wtv40hQAu70xRCCqOljhfziWWITANwTSTuLZJlEs6VRfPEby3OeUPX10+UE5d3p0cKH0MQ3G67VPxLJ1UOU0RQJxJwkwSZSXTNJ+1wLk0AovVhk/gmNzoRRSF9v6KcskkyVlr+pxduHM8vll17rmmAsc6MHffHMWUSh0xd98/HpO0oCwVC1UXzzaZxAU7k2TWPmsckFjnOhVeW6tjGMaBIuVWXycPSqVI0pxbvYjAsTjZ8tkdJ0eI0P0W24pjMYpzlmompmFQloqNUUxrZvq5788wijN+fnuIIQTtikMhQSjFbpjg2yYCqLk2naoLQlDM/L/2puljD/KH28oWqy79MMObTYgCxyLKJb5rkWaSqm0yTaVO+hkk9KOM5YaHExpsDiMudad0qi6/db7N7zy3+FCy4jjSqDdNMQ1Bd5JiCqHJ75kX3nG+eR8XTyKNf1xfrsNte+MkP/AkzKVkHBe8eIyfhX6ufj5a+eax5HPMMcccc3wa2C9K3eiG/OhGjzAr8GwDYzb+GIag6jkkecnfXuvTrFgIDLbG6UEfxjiRSKXwLEFaQMW3KYHlmsutfsz6IGNjECGEYLXpIZTg5l5IP9KEk2ObmIVEKcUkyUnyEssUuKZW/q80HHbH+UwtfsenqyglWaGJLmvWDCJ1zRaBJqkMIcjLko1hzGLV4We3hozTnKpt0alajBPJxjBmEKXUPUcXpQ+RfXXfInBMTEOg0O+dFiW70wwMOFUPyIoSxzSxTT23tQzJrVng0ELgHhxLIQT9MCNMJb7zZKE087CbOZ4G5oTXrwHu15rzWYh9fRAzP05y9iYZv1wfcbMf4pja2NwxTVab/j3vleQSA91eePeDzzYNLMPQD39ZggFRqn2UGp59bAtZ1bX45fqI3z6/cGzVYLnmMYpzPNukGdh896PhsQve19cas1cpxnF+oFh4fa15RLFw97kYhNknUrW4W72S5CW3+yFfPNWm4t5pYQvzgmDWnldzTfamOWE2YrnmsVh1Way67E5SdsbaWL5T82gGNmEmyQvtR7bc8Fmqe7x5qsFixeXi7oQkLZhmWqW1M0qJUh2pbBpgCAizgjCTGOjKlCEMLNMgKUp605RpKonSglSWvLcxohdmnGkHB8fjZi+657g1fIfXT9qEaYVRnJHkJW+dbtKuukeOxzDOuLgzZZIUvLhS5fWT9TsBCWmOLGGl7vGN5++QHvuKlHdv9ZkO4dLOhN2pbtlbrCn+4sNtupOMum9zfvGoB5MhdFrnOMlJC00cCsPgtdUaDd+ZXTWKG3sRu5OU19eanG773OrH7E5iMpkihKKGzemFQCuGlGIYZ6zUfO3d8JiD/OG2smt7U6K0oOLpdMy8KPFti+Wqy8YopkQTfIFrs1RXLFZcUlni2oKVhsfvXOjwmxcWHklldj/SqFNzeX2tyc9uDygVB0Tn/XzzPg6eVBr/uBXG/eP73qY248+kpOJYpCW0AwelOPCzaPlPT7n2LOGzMD7NMcccc8zx+UIz0Cr573ywTX+a0ao4Ol19ppwaTFM8x6FVsZkkel5oGopJnBM4JqUyKMoc0xTEuSZ+2oHDNC1ICm0YvztJkSVMsxzDEKAE4yRHyhLHsJClopCKrJCYpjFTkQmkLDFMg7IULNVcNkcJk0TiOwaOCaXUxJQhwLUEErBKsA0Bhjjw4jpRd5kkBT+40qPqGDRnc/04VxSlouFbRJkkLgqSrCCeqcQqjsla08e3TWqeTXeSYggwgMms60IAwzjjRCPAtgSyLFmctWsC5EWJO1ujOabBJMnJyxKR80ShNPOwmzmeBuaE1zOOz3pqxf2Y+f0EukmaYRuCTtXDsw2udkN+fL3HN15YOrIY2lfenGrtExpHH3wV12Sh4nKzN6U+axPLy5JCljiudWwLmSEEaSH1YHQMDlcNHrbgvdCpMoozvvb8Ir5jPZJi4ZOoWhyroAlT3l3P+dntAV883eTWICbMC5aqLnGqB6iVhsdau8owLqi7FoYBTd9mpe6yPoxZqnoHSrtTzQDLgrpvH+x/u+ry9RcWkUqxMYyRk4Qf3+4zSnJMQxykME7TAoGYHRfFOMppBy6OCRujhJ1RTF7q9Ji1po/nGFzvhnQnKW+dapLJkklaHHvcBJrE9G2T9WFEJtU9x6NTdZnEBVe7E0ZxxgsrNc4tBpxbDMhleeD59fxy9ch7L9U9vv7CIn9+FQLHolMzOdMO8GyTd24NuNWPWKw61H2LhYpLxTUPCJRGoA3tM6kJ0Z/dHtCPcjKpK3HTJOfSzpjlmsuZhYCGb2MZukU0zKT2PzOErrLlkmGcUXFtlhvaCPRJBvl9Eu9vr5pc34voTzNkqeXrq02fimMyTgu6kwTXMlGlbjd8/aQmd6/vRTy3VOHvvXHiwPj+YbjfPSSE4MxCwN40pR+mnF9oUPXsI755T8vX6Uml8Y97ry7VPb7xwiL/8ce36EeadJcKTjR9zrT1Od4n1752ofmx92uOOeaYY4455jgeh4UBjqkL51q9JBBKHPyN/kJgmgLLFBiGwLVMfNugZ+kWQ1lK8lLgoYu1Fdei5trEWcHOOGFjEDKJc5Sh3zPJJEWpmKYFUioUElcZTFMJAjqBiRAwSTX51fBtSgW+Y3KhU2FzmDBNC4pS4dgGRlGy3PAoEQymKcymJbJUB/NB17LISsn6IOa3zi2w2vK5uhuSlzo8yjZ14mOYaqV5lOki7gtLFSozX9tOxWV7GJGUuiiYFzpZcmeSUHFtziz4mLOCtQIMA6quzTDOWLY8EIJsZl1iGeKJQ2nmYTdzPA3MCa9nGM9CasX9/Gz2E+havkNclHiWSdW1+OrZJt+9uMdPbvb5rfML+I51xND4N863eH9zcs+DTyA43fa42p0iyxJMTWjdr4UMtPTXtUzKUh277YerBo+24FX4jvYyetJjc7/PfxQ8SEHz/FKND7bGXNyZEmWSxswryZyZAPi2pU3VleBmLyRMc24hKNHH6NUTNToNH9vQmTGTtLhnu/ZJlF/eHvK//3xCUZR0Kg6hbRJnBVLp5L394z1NC5Qs2ZukvL85ZnOYsBdm2KbAmxmVD6KcUik2hophmPL6yQY113qk4+aYgp/fHjGKtUIsyjRZVvcslIKf3R5qY/wF3YbqOyZrLe359WByRfHKCU3ATJOCvVlL3uXdKZujmFOtgMWqx5kFn6Wax+Yw5ounW6w0XFYaHkVZ8t/f3+aX6yPSQns2pLnkK2c0yfbLjRH9MCMvJFXXYhDmlGVGd6LTIE80Ak63PQZR/rEG+aW6x9/7wgoIxeXdKasNn1GcUXFMEILFisP2KEGqklGccbpdRQjoTlJOtn1+8/zCI5Nd8GDSqBk4vHWqxTu3+6RSIbLiwDfvaZL3T0oyP8m96lgmCxWHbzzfwbaMI+3ZcMfPYhRXnsq+zTHHHHPMMcfnCY8SPnO3MKCQitv9iDfWGgzCnGlSIJWJiR73m4FNWJRMkoKKY9EObEZxTuBYpLlkrRVQSJ2SmOQlrimYJBlbY2190QszEOCaYlbYlPi2pQO2VEGcFWSFbkWs2halAjkrgJ6dkUh6XSTo1Dw6NYdxLHFtgyQvuNYNaVUcxrGeH5uAZNbSWIISglSWoNCElGWQFTpA6WTTpztJCbOCLC8YJRLbNHBsPXe50YvAtAkck36U0gxcFmsOi1WHK90pJILVRsCZBZ+Gr1Or2xWHW/2IimNyZqHC9W7IziSh4dkM45x2xaE7SZ64eDkPu5njaWBOeD2jeFZSK45j5sNU0gt1iuEoLVipewfKq2bg8pvnW1zcnrIzSbBM4x5DYyHEsQ++QZTzxdNNWp4Jm7cYxumxLWSgj980LbjQqTBNczrKfWDVQKcXPjk5ddygfPjYnLE1IbPvWxY4xmNXLfbVK52qqw2yD3mgnV3UCprLuxMdtewFpLlknGTg6gX9NCnYGsV0pwlJXjJJclQJpilIMsnvvbzEK6sNbvTCB25XmBWMkgLHNnFti3FS4DmWTt2UekJRlopOzcU0BMMw5+ZeSFYq6p6FQOjAgDCn4Zt4toUwBJe6Ia2Ki28bx1Z7FIppUhyoj5RSbAwjXMvk3c0x/TBjEufsTFJKpehUHdJC+0T1o4zVhs8fvrp8X3JlX67dqd5RB/WjlNv9GNuEhm9p6bsQbI0ixnHOK6s1nfw5I1D2J14Vx+S3zy9gGFrh9faNPu9tjbANQVqWVGyLqmtzdkEQZxOSXNKpOZxsBri2QT/KDwISHuX+vt+k0DAMfvP8Akmu/R7CrGBrHBM4JqNIslC1EQptXm9pD4knNRd/GGnk2gavnKjz9ec796gknyRR8Um24X738ZNUGNOiJC8Vy3V9nd+NO+Ta8YT7HHPMMcccc3we8EmlJh8nDNge62RvgccrJ6p8sDXGQCueAGqexXCsfaeWazoZPCokyViSS0XTtdmcJOxMEspSsTuRJLnEMk1aFQsjFthC+9aWChxLE1WlUsgS8hKKEixDz3tkWRLnCt/WrY+WbaByCUKw0vC1Cktoe5DAtlioeshSJ3eXCkoFtqWLvEppD7JhpOfPlikQCApZ6sTwQhHnkiSTmKZJ3TdYabgYZQmkTFLJuxsjOjWHtWbAN19c4rcvLGCbBt+92GVjEPHSSpUoVwwinUB5quVzvTulKE0avsUrqzWu7Ibc6ofYpj6XH7d4OQ+7mePj4hMlvL7//e/zr//1v+anP/0pW1tb/Of//J/5kz/5k0/yIz83eFZSK45j5pNcEmUFaS6oujZn2sGRfViq+WSF4mvPLdIInHsGvwNPpfURV7oTokynzT3XqfH6yQZNz+DPN3/OH766SpQrfnZ7wCDKsU1TkwVhxvYopV2x+Z1Xlnl/c/LQqsHHkdQ+aFB+ba3Ote6U//HR7kz5JFCqpFCK0wsVTrbu9TK7H9KipBem7IxSBnFGMZMStysOZ9oBb51uklyTTBJt1B44FiuNABJoVhwudaf0pynDMMMwhE5ZMaHmmXSnKf/nu1uM4pyXVhvHEi37E4v1QUzFNVmquaSFJMpLfMug4ZtUhY1UJVEqaQY2ptAeUb/73CJb4xTXNHjn1oCskLi2BRgIoZhExUFs8gdbU15drR25ptJCHhlgXQv+S5hzcWdMXupKXMOzGSgFKBxDYJkGNc/mi6dbLMwqUNujlJdPqGMnWvvERC5LNgYRCrjeDSnKklagU2nGqfaeWvZtdiYJV3ZDTrV83Jkh/j5JfTgkYaHqMIxyvntxhxKdyLgjUwAankXF1UThuxtjbvdjXFvL3L/2CCbxD7v+9tMr9ycSH22Pubgz5qPtKeXMvHS14fPSSp23zjRZawZPTDY96j10dvHo755m2/aT3sdPUmF8dHJtXpWcY4455pjj84mnmZp8ZXfMzV7IV861WG34vLs+ukcY0PAdlmouu9OUslTYpskgyonSEk5of2GBbvsbJjnp7hTXMlhteuyMUz7cnWAagqbvIITidj8myUtatklRaKVWJjVhBRCmEgOFVJroMmbqL1kqhnGOgUHdNzndrmBbJmGaE6eSwDa4uD1BoWgHDoutCmkh2Rgl9GZhUL5tgICqYyEBlJ7njOOc3bxgua5T1UdRRm+SEeeSQupinFsqTjZ9FiseZaFbGt863cR1HE63ff74jRO0K3fEAF9/fpH/4xeb/MVHe5RKIYRCKYEhBM8tVTmzUGGSaMuRUy2f19bqnO9UWWv6jzRvfBjpOQ+7mePj4BMlvMIw5Atf+AL/5J/8E/7BP/gHn+RHfe7wLKVW3M3MD6OcXCo6DZcXlms0g6OEXJJLHMtgqe49mKwT+/+Z/Zs98/Yffst1F9vWSqr9xfytfsQ0Lai6Jp4t2BlnvLZWZ3uUPrBq8KSS2t1xwncv7rIzSmgENk3fwTQ4aDvVrwGFQAlI8oJBlOtEw1RSlnBuscLrM1+pBz3Yx3HOzb2IEuhUXRzPJpMl2+OESVxwvlPhrZNNLMtge5RybjGgYkN8Dc62K1zrail2XsJqzcWaGfxrY3nJMM7ZHCX8v373/ANT7M4tBuxNE2QJcS7xbYOsKInSgkbgkOdaXSeEIsokjmWS5oqKoycdhiFoVTzyQjLNcizLoV1xyEuFbRpsDCLeOt08QtJ8sDUml6U2t6967E4TfnJjwLXulMCzOL9YxTYMwrSg7jnYpqAXZghgoeJQ82wMIR5IEk9mCq//45cbTDIopCLKcjzbYhDlNHwbc5ZsiRA0PJtb/ZDX1uoHKsH1QUjgmGwMY0BHVVc9C2/mpRBlEjET/GRScaMXYgBnFnw6dY+3TrXwLINpmvPexngWAX1/0udhbc/feGERxzIpFbx5qsHJpodlCE7UfVbqLjXfwRTQnaZ8sDk5lmB/VDzJPfS027Y/jjT+cSuMj0quNfy578Qcc8wxxxyfPzzN1ORclkwSyaXdIRd3JpxdCFgfxLywXDsy/lZcE9+22BmNtQfvYpUwLxhNdNp6P8ywbJtOTad5O6YuWI7iAs82KWSJb+sCelYoLNOgaRkUJcSFBEpKBFKVqBKUAmEKLEPgO4pSaruQElClwrHBMgymaUEWZURZwSQuiArJiYbgTNunU/O0+btSvL7a4Oe3S7rTDG+WpD1OCwLHouIY5KVikhS6cG0KrnUjBNowfhzrgnaSSWxP4M5UbbHcT40WnF+sIJXCEMY9cyGlQKAQSoES+muhvbt++8KCns8/ARn1qKTnPOxmjifFJ0p4/dEf/RF/9Ed/9El+xOcWz1pqxWFmPsklb18fsD2O7lnsPYoB4eEBcqV+Z4C81p3Sm2Z87ULrns9+VSlu9kI6NYc31hq0K7qd7fDC/63TzQc+qDs1lzdPNXl3Y8T2OMEyBI51/wWvUoq/urLHT28OsQzYGMVYhsFCxeV026Mfpvz397epuBa/93KHrVHKextDzKpBxTa42Y/52a0+H22N+eHlLl9/vsPXnj9e1aOU4vYgwrZMylLiWQYIgWeYuJZuj3x/c8QfvLLCa2t1vndpj71pilHZP8ZKDzKG4ETDo+E72gfLEuRSk16Bk5FLTVINwuzIsRpGORuDSBtbSkXFnbUy2ibGjASapBJERi/McSyBZ5tICe2KQ5jlDGNt+OlZWnlVSIsoL+hUXJRSVD2LTGriLS1KVhoe36w6TJOCOC84v1ilkCXvb04I84LVpsfNfkReKIZRxjDUSTGViqW5UVVy4PaJJom704TdcXrPdbA7Tvjrq10WgVFcsFjzSWTJMM7IZU6SFYRpwcl2gGMIklxvp20anO9oonJjGPPTmwOGUc4k1dW0+oyMi/IC2zIwcsk00yShKcAUkOQlo6hgsVpS8yxagUNHuQ9tW35Y2/O7GyP+449vsVhxycoSxzDYC1OUgi+dad01QbSeSpv045BGn1Tb9seRxj9OhXHuOzHHHHPMMcccx+NppiYfTh9frrnkpQIF22Odlh045p3iutL/sQxtqq4L7BX2bAEMMA1dsFyoOCgEO+OE3XGiE6sdi7WWh2+bWIYJSrcInmh45LJkcxhrawskYTn7KKFtPIQFSgkqriCV2qrBtwVJoZVejmUQpjnjpKBUsDuKSTLJ5iDCNg0Wai6vnqhT9WxeXKmR3B7Rqtja81Xq/YlzhTAkC1UXw1B4lslEFJjCQAjtG5ZkpfbKtU0miW61rFl6LizLEsMQxJlu09yf6zum4N31EQrF//TS0j0WLDf7Ee9vTvjWS53HntM8C37Uczz7+Ex5eKVpSpqmB9+Px2MA8jwnz/NPa7M+E9jf//3/V2xYrTlc703x28ERM3aFojuOOLdQpWLzmTp2VUdQdSy+fKbODy9n3Nwb06l6uLZBmpd0pwkN3+Gl5YBiJrE9DKUU797qM45i3QoJoCSBBWdaLrf6ER+s67/d32+lFO/dHiBlzusnqrNjVR55zXu3B3z9hUWqs2rH3Z/dnaR8uDlmcxSTSYlQiqbr8cpqnQtLeqC++zhf2ZnyV5d2KJWiVXWxLZO8KNkdTZnGKSsNmxu7E9442WA4TdjsTzFFyaJvsd6PoSywDMGZlssgzvnJ9S55nvP1Fzp0au6RzxpGGZv9Ka+fCLi+F7M3iWh4NrZlUBQlsihQQrBad2gHFl+70NL7M5hSB7Iio+oIHBNUWTIMEwx0Skzds/FNgfIN0jzjex9tY5kGudQeAqsNH8uEj7aGCKHDAPKiJM8KarbgRNWiG2ZEmWQcFbiG4EzLYyFw2RIpy1WLM02XLCsopR58sxxsU+CbgrIsqDk2qw2XSZJjihITSZ7nDKOMURTz3EKAb8N73SlJnrFScQizkk7FYpoUqLJAlpDlJZkryGVJ3TWpegZFUaCkYGeUcGtvyvekxDLEwb69dKLGh1tjrnenLNqwWrUJiwLPNGjN2g1TWeKbBq6h2ByGuJbBgm/TrHgsVSw+XB/wf/58nWs7YwLHYClwEQLGacG7t3t6gqRKaq72UxjHBcM4I8skQpXsjiSoki+fbtJ0NYm9VLHZ6E/YG1do+NpUNS0UriUOvt/oT1iq2FBKDjtFjeKc/iRmGGUsP7fIWt2hH2Zc3R7RDBxGoXsPGX348+5WZd6Nu59Xh9HyTb52ockorhzZ3rvvoWGU3Xf7H3d7nnQb7gf9HDv+WXHv57QOnh292T1zvu3z8mqdlm8+8FjNcRSPe6zmx3SOOeaY47OJu4krpdQR/9lO1X2k1GSlFDf7EWGWU/ds8lIRZzmeo601RknOzX50MMaHqSQpSs52KuxNUjJZshem7EwS8OCF5SrTTBDO0hV705RclrQr2qTdsQwyqQBJnpdkhfb28myDONNjPEqhMjlLgtQ+qGXJzKPVAUqkkkhlYZtandadphRSYRoGplLEM6P5UpUMYkWhFDXX4sxChVbFpRnYnF2o8OJKnTgrMA3BIC5YqbmUZcnF3ZBBnNP2HeJCopRO9RYonQKeFmRFyfPLNU62AwBM06AsFWle8vb1AaMkO2L0/8JyDcMwqHp3hVY9oY3Os+JHPcezj88U4fVnf/Zn/Mt/+S/v+fm3v/1tgiD4FLbos4fvfOc7R77vAPHw3r/rANMh/PnVX8FGPSFc9HYyhH2ac//7t7ce/NoH7Xc4+/kncazqh78ZwaUtuPSAv//6vgVXCWSzr/fHghEsV4HhJgCvAMw4hjfah99lD/bfZ+cWb+88eNu+sP8Zhz9zdvtc+un6ke3df83S+DJ/rw0c+dz7YLB35Nvp7NuvHn6aWMB+QaZ53JskR3+Xw3MtoHXc3x6CB0zgr//yo4Mf7e9DDFwALtgc7PcXVh/yfgBbG0RAA/iSAYzu/Gq6Bz+ZXRdfmZ2bP2x37/zBPcdreOfLUm/r33zvIgAvAy+fe4TtYXqfn2fQf5+of+cndeCv//K9+77T/rGJ7vq5DXzFmv3B7hYpUAF+f/8FWzfvec2jfN7duPsefFzcb/ufdHs+TRx+dkz34O27njcf91h9nvCoxyqK7nflzDHHHHPM8WniMHE1jDJu9iP64R3/2ZbvYFk8NDU5TCUb/YhpJtmdpKR5iVSKTjXCd0zCtKA31Sb0Vc8iL0vyokQpxesnm5xfrDCOC5JEF0gWqy5lKOlUHbrTFMcyaQcOhdIdDlle4lgm2+MUVZZEmeRqd0rVNbWxvGtiCO0Blkk1S09U2r/L0ImKFdcCpZClQhg61TmXJb6jVWOpBNsQGAIcUyedT+KcXpgSuBbLdZe6r8m9Zc8myiRSwbmFCp5lsDNJONXyubyrA8DivCTOdNfFSt3FMAwmSYpUAilL1Kyk2PJtbYOSFFgGLNf9I0b/96jlZnhSG51nxY96jmcfnynC65//83/OP/tn/+zg+/F4zKlTp/iDP/gD6vX6A1756488z/nOd77D7//+72Pbd5QXh5VHhxU3L6/W71EB/aqhe97zexQUj/s3h7EzTvn2+1usNn3MY/5OKsXWYEp7ePHgWD3KazaHMX/w6gmW60ePmVKKH1za43pvyum7lHTDKOdntwdYpsFCxdFRxMBC1ca3La51p8SZZHnWdnkYgyjjw60xcV7yxskGrm1yZWdCWZaME8lS3cU1TbJScmGximMa9KOMF5drGIbg7762cmTAGUYZ/+29beqejhNW6ErZOC4AhWXq6tLfff3o6/avq8q5L/Lu1oQfXtatjp2ai2UIilIxjguqrvYnaNcc/u9fPoUhdHVHofjx9T4/vt5jmhazKpdJ1bVZrunPmWYFaa4l1FleYlra06sZ2Lx1qsnWKOVGf4oARrHEEoow0xWzlYbHyyt1HFNLpk+2Av6fXztLp+YyinO6k4wfXumyVHPJpeJntwa0AwfD0NXCa90p3WnGG2sNUqlTGwPbpOKa5CWcbPicWwx4++aAaSr53ecXjqZ5onh/c8KtfohvKX7D2eSac54Sg6TQFbIbeyFb44iK7fDG6QYV26IXpkSpxHX05GJjELM3STBMg0GYg4ATDY+KbTFOc651p6B0OtA41co+xzSYpJKylAi0/Hy15fPls21eW60TZyWboxjPMpGqvEcpaQqDpChYbQQEzp3rb3MY8/0rXZK0oFBwdqHCSsOnXdGx0+ZM9v6lU62D9FRAK/SS/J5r7zjc73n1OLj7mr4bj7M9n2U8jWP1ecHjHqt9lfgcc8wxxxyfLewTVzvjhGvdkDAvaHj2gf/s7WGEgfanXWncaWnb98e8sjumU/O40Qu51osIbEHFtcmKkrbvMIy1+bwzs/UYxRm+ozstRklOu+JwdiHQFhqlwp5ZwGyOUiZZSaFK+pOMolRIJRgnBbIsuT2IKJUmZALLpBE4DMOU9YFuLZSlxLEtlALfMql6JqOkIMtKTMCzBDXfRgFpXqAUuJZJWZaYBiS5wjLAMkwUWh3m2IKsUDOLiwxDwIWlKoVUbIzimTJMz3t3JoleRwmFaxu0KjbjqKAPNH2bpCjxLHAsizSXhGnB1e6EL3S0Gm2cFNQ860i40r7R/91quX08qY3Os+RHPcezjc8U4eW6Lq57L0lj2/Z8ITDD3cditW1zolX5zKVWPE7qSsd59MVqxVPYtk0qxbHeZWlaYFn6+Owfq0d5jf475+DY7qeF7I4TrvQilmsBwrAO5NZRKrm2NyUsQKYFiYR0FiOMKFmqw14odQzxJOdM+845UUqxFxUME8nZhQoFgsAwMU0Lw1BM8wI3KfFsaFVcHFsPUMK0qAYewzhDYh65DhbrFmvtmjbI9hwmSc7NfkovTMmlJr5eXKlRYhx7L21NMs4vNTBNkz9/d5vNcU7gmNiWgWWb9GNJzbf46tkOpnXnfG0OY350c8T2RCez2KYgLiSTTNENM2SpyArFiZaHY1uM8hRPKQLHZpCUXOrG1DwLw7RRssQw0ZU9VxDYBuNE8tFuSN23WVuo8g++dBLbtvnh1SEbw4i0kNwapFzZS3j1RBVhWiSlwDNNQCEsC8eBD7sRRS7JSoVl2QwnOTXHwrBNdqMCw7T4yvkmzWpwcI70uVbUfIcwm6IQ4IASJkqYuA44ts3mOAVsTNsiynW1bq1dI8xyLu1OmWaKnXHCNC2oOBa2bRHnkt1pTtPXkybfdYhzCYYJAnKlKCRkJeTSoOFbeLZFrgw2RxnnOtANcxIJpgnnFu94QVkWBJ7D9V5IIgU70zupkMMo472tkL2wwDUNOjWfWuCyOU4ZJhLHshjGGaYwyBEI0zo4Hruh9tZbrAeP/Hz5OM/uu6/pe0zfn2B7PsuYj3OPjkc9VvPj+avFn/3Zn/Ev/sW/4E//9E/5N//m33zamzPHHHN8htEMbFYbPt/+YJtSqSMqH08Y2AYYhsntQXQktEkIwUrD5QeXU35yc0BvmrI3yWgGNnkJdc9mreUT2CY7kwTXMlipeySFZH0YYRuCl1ZqgKDuzdYLpoExm0b0pimtqk/dtRhMM62uSnIMIViuOcSFIs0ktlEyiCS+Y1J1HQwB3Ymel2VSm8abpsCzLbJCUcgSgcB3TO2b5VlkuVZXpYUkkwqZSgqpcG2TwNGm+EVZYgoDKEhzST/MWGn6vHKijlKKH98YoJCMYl10P90OiHO9/lit++yFeh8EgqIsSQtJnBUoNCGn0C2MAOc7VTZGKWvNo/OqimuyWPUIe9Mjajl4sPfyw5IXnzU/6jmeXXymCK85ngyftdSKT9KA8FGSz863/YM2u0d9zeEH9WGybm+acWlnzErNRxi6GpEXWjadl4oLCxWu90MQgrPtAAXsTlNGcUGn5tAPc6Kk4NYgpOrY+LapY4UHMU3f4c3TLfYmGaMkx7UNBlGOZegB9/RChU7VRQGjJGel7mEKjn34HzbIfm9zzM44JkwLXMskzUsCx2CSFPzXd7f5n19fYbnhH3l9PquwvLLapOpa/Oj6gO1xgixLXMuk5llc6NS4sFS7c+xQfLA5YnMYI4CKbdIIbNJcMU5yxlGOBAJLkBeS22HOKM2xDIMLnQrNwOZWX5txvrhcZZpJXqq4nFkI2Jtm9MKUSpSRScW3Xljm77yszTCPXlsejmny4+s9fnR9QLtiM4wymr7NKMkJHG1Q348y4qKk7tnUPYumb3GyFfB3Xl7CNgx+eGWPpZo+Joel9bksKYqSYZxTSgGBTp4s1H41rWSUFCw3XF5ba3CyGRz4NbxzK0JKxW4U41gGnjQxDA7SJj3L5FS7gmUKap7Nej9mkOT4tsB3bIoSbEOSyQKlBJ5jYhk6fef6XkS7YlNYBst1/1gp+HLNY0PG2KbJjV5Ip+pyYy9imhUIAZ5jsdxw8WwLz9ITw7pvY5v6OsyLElmqT81kfW76Pscczw7efvtt/t2/+3e88cYbn/amzDHHHM8AhBCcagdkRam9W4sS2zLICx0IVPUcLnQCNofxkZa2/Tl63beRpc/eJME2dZr0QmBzfjEgcHTLoGsarA9i/uCVZf7w1RXyUpMsWSH5y0tdPtwa0whsKrZOysbTSnuAvWlOnJUkuSQtFFXXpOHbqLgABZmURHmBYQreONkgzSR/m/ZJsxLLFpjoNO9+pL25bMOgFIppIgkcWKi6mELQnaREqfbgQoFl6ND5NC+pejaOKRjEOQaCaVrQ8G3OtQJMQ3B9L6biWCxVXW4B01QSF5JBlNGuuNRcxe40YXeaUXEMTDFLZZx1XfieyXOdGgsVC8o+XzrdYu+j7j2KK4HgzIKv/YJH8YFabn8+VvdtTrZ8dsYprqWLtFd2Q97dGLE3TQ9Cvu4WPjzu+myOOZ4UnyjhNZ1OuXLlysH3169f5+c//zntdpvTp09/kh89x6eET9qA8FEWwS+v1o/44wgheHW1xs1eyC83hpyo+wcpjXcvnO8m6wLH4uruhJ+tD7BMwQtLNaquzfogRirF5Vnb4tmFCgjd8NjwbMJMUvW0EXiUFyRSspFr3yrHFMhS8fqZBi+u1Fipa4lwWepWx7IUSKVYqjmYhmB3mlKxLU63ArrT9L5VFNs0ePlEjV/eHnJpR/tA5bJEzVrlCgkbw5hhnPEPv3r6COllH6qwnF6ocqodsDtJifMSVZZM0wKpNBHXmZ27aVJwvTvVSTOOhSEErmXhO4AqNTmYFWSGoB/qCk8pS6Ky5L3NMWfaPrapo5hv9mOeX6ry6lqdhu+w2vKZJgWDMGNnkvLW6QadmstfXty759pabfp844UlfnKzT5RpefT6MOZUK5hVs0pWai6nWhVeWK7SDtyDVJndccabpxo4lt7/TJb89OaA6SxhMsoK9qYpvTBjEpWwAD+61sf3bAwhSHJ9bNaWaygFl7tTirIkyyWXdqZ4tkHdtfEckzhPyIuSimsTZgVhLnFMQZRLap7NH77a4LsXd9kcxZRK4Nq6GlaWFgrt5xBmiroHzy1VON+p8qPrvQdKwV3b4CvnWuyOMy7vjrm6NyFwLE61KgjA33+tEDR9hzArqHs2y3WPXEou7Y4xEJxqVfiN862PlZTzsErfcfg4iYpzzDHHrwbT6ZR/9I/+Ef/+3/97/tW/+lef9ubMMccczwjqvs3ZxQp5oRjEGcWsKHqiEXBmwdfz7WF00NJ2eI3x2mqdm/2QSztjmoEBccYwybm0M6VUOlG7O0lJC8ntYcIv1se8uqqLtt1pSpZr9f2H22OyQjEOE2jAUs1lc5wzTXOkKilLsA1tf7IxTCnKEkFJlCtMAVXHxDYFN8YJlikQroElBAihC4cSsqLEMgW2YWCagsWay9mFgK1hwiDMaAQOzcBme5jqz1QKIQRiVuSuOha2J4gKbYT/y80RV/dCLBPqvkOn5rJQcbm4M+ajrQlRJqm6Fo5lUEhwLIFrmeyFGWWpjffPLQSUSrE+ShA44INr319x1fAdnl+uUCp1oJZzTJ08LwT86HpPhzjlJf1pxsYwIi8VzcBhpeax3HDuET7MC5tz/KrwiRJeP/nJT/jWt7518P2+P9c//sf/mP/wH/7DJ/nRc3xKeJoGhPdbID9sEdzyjxIAu+OE9zcnxLmkO8m4vhdRdU1OtwNeWmkcLJz3B9JhnNGpumSyxDIAAVIqKrbJKC6wqwaGEHiOwa1+jCl08uQ+HNNgkuRUXYNxUtALM95Ya1LzLaZxwcYwxrYMOjUHgaAZODR8mwuLVXphnY+2R1zcnrI7yRAIlus+S3WXYZwd+/A/rEhbH0T8cn2AbZks1R0miSQvSsqyZJIULNQcLm5P+K/vbvPHb5w4OFZ1z+FKd8L5xSpV10IIrRwahBk/udnHNg3ysuTy7pQXlmqcWQgI04IokzMVmaThO5gGyBLyEkwDCgVWqTRxphQIgUFJlitu9WNqrkUrcAHFuU71wD9rHOfc7MVsjmLCNOd7l7tc2p2yPojukVoDtCoOv3V+gZ1JwutrTfamKVvDmJ+vD6m4WjZ/ZsE/4s+1fy2+earBWjPg57cHXOuGbAxjLEP7GBgCPNviTCugP40ByAuJSgWGECjAs0wKqVVtTd/Btmz2JgmjpCAtDJyaTgqaJgU745RMZjgmJBlsDBM82+DN0y3+/hvaQ+5/e2edSVpQdSxcy6DmO3QqNr0oQyH4/ZeX+XtvnGAUF48kBV9rBry62mCt6RFlJafbepLz/saY3WmqPTNMA6kUu5OU84tVfutCm6vdkGlWUpaKUZzx/ubk4P570P15HB6nxfluLNU9vlVzP3Nt23PMMYfGP/2n/5Q//uM/5vd+7/ceSng9q2ncn9c01c/rfsPnd99/Ffu979/bn2T4FpxuOES5TVJIPMtkseZgIIjSDEeoI8nc++nNozDh+u6EUkoWApvFwKc3zehNYt6JUuqeTadqU/M9TjUcfnFrj7+6tIPvCG4PEgpZcrLp89zpJmGW88vbuiUwSXPSPMMzDe37K8G0TIpcMY0TpFK4hkHds/BMAyEUl7fHpIWkE9jEuaRiG+QlRJkCFIEpMEyD0+2Aum8zjnOu7o4pSzjVdFmsOPiOiSwkwygDpRCGQBYFpQm+qUDAy0sBX39Odzv85GaPzWnGyZZPGKeYpkHVMTi/4PGL9RHXumNWGz5t3yCwfNaHKRYK0wQhJEVR6HVJkmPM6IDAgtWaw/XeFP8u32KFIs1yvvl8mzdONsmkYhLn/HJjyCTJ6VQ90kJxbWfCpe0JCMGrq3Vc02BvEhKlGa+cqDKMYt691efrLyzqDqXHSLN+2pjf48/+fj/qPnyihNc3v/lNvcid43ODe+KCZ+bp+4b6nm2QheVDDQgftkB+0CL48MV/WLG11vQ536nQDzO2Rym+bfHqau1gwT2Mcj7aHjOMcm72IoqyREpFb5oROBZFWTIMUxxT0AszokwCirhUfLQz4dxihcCxyGSJaQimiaThWzimNo8cRprAenW1zu4k5WYv5rmOjvgVQlD1LCquiSxLvnCyhWeb9MIU09BVnuNULYf3r1N1SbKStFRYZcmtvRjfNTX5CAzjjDgtqXsWgyjnvY0xLy5pldfmKOL6XsSlnSln2gHPdWokheTH13soBL95vo5rmfzs1pAPtsbsTVNW6h4lCsMACwMhQJaKVJYkeUGSy9lQKShm1S3LNLAMQZrrqpllwGLNwbVMfFu3aY7ijHfXx0zTjLyEC4s1lmseV3ZDru1NWax4VI7JY/AdC8s0ON+p8lsXFri0PSHKy9kEwzoycMMdM8xMKpbrDpe2x1zaDVmq2mQSCllSlEpL0U2Ba+vXn+9UaFQDnl+uUHNM/n+/2GRzFPPlVouiVKiinHk6mAyjnIprMopzhBDYlmCa5AxnIQ01z+Trzy/xtecXWap7/O6LSwyinLdv9EEIFqsOnmXQCzNKJfji6Sa/dWEBwzAeSwouhKBT08q2aZLT8B1eXa1xaxDTDzMmSU5ZKlbqHq+u1Xl/c8IozjjZ9I9tSQYemcB6Gi3On7W27TnmmEPjP/2n/8Q777zD22+//Uh//6yncX9e01Q/r/sNn999/1Xt9zLACKrofwDJoTDsu9OY9yPMbHQ6+FfXDr3Z/ZLGd9c5v/91Bs9XZl+XwEC/7NTstf+3teEjbLUEnoQsSB/429997mGvn8BQH5zfr3NXdDxol3v48plDP9ufL6/c/V7Joa8HAPzFX/wF8OBU+3AIf3Ooi8ab/WOoP+qrFnz15P5v+/oY70/ftvR7TIfw53clVcPD06w/Kczv8WcXj5rGPffwmuOp4rABYVGW3OzF9EItAbYMg4pj0QzsBxoQPuoC+WGL4Pu1Vy7VPO1n1At5f3Ny8F4bw4gPtsa4lqAduNiW9oOKMknVMfEch91JzKRbkM1IthMNl+1xwvZY+1idWQiYZpKGbxMm2kNrrRlgCNgLc5TSaqe6b9GbZny4PeHsQuWIhLdZcfnmCx06D1G13L1/m8OEK90JWV5SFEorwnKbhm/j2RYVx2YQZ/iOx0rD5aPtMTe7Y9rAasNnoeZzZTfkVl+rnDzbIHBtvnq2STPQI+aXz7a4sRdxeXdCnBXYhsA1LXxfG372w4wkl0SZJC8UtgmKkhIQYp8EnZmrG1DzbZJcUnMttkcJjmVwbTdkexxjGtpQ9MxCQNWzObcYcGlnzJXuhK9U2vcofA6bW+4rkRarDpYh7iG7Dv/9KMr49gc7jGJ9frYnKUlW4tkGjmEQ5ZJxL6IT6O33HRMh0Mo0pRVe21nK2zcGVBwTxzIwDAOUvh/2JhmWYdAOHALHZBAlTNOSRmDz9984wTdeXGKcSLZH2lz1f3lzlYWqyzu3BvTCFJT2evjSmRa/89ziATn0OFLw3XHCuxsjbvdjbvUjFio2i1WP55eqXFiskknJ1ijh1RN1okybn55pB0RZyTjJsQ2DM+2Am/2IH17eIy9LxnF+3/tzXzn4Sbc4zzHHHJ8ebt++zZ/+6Z/y7W9/G897tPbiZzWN+/Oapvp53W/4/O77J7nf3UnKDy/vMU4yFisugyjnJzf6XN8LcSyD850KFU8HRElZ8sapJn/02gk6NRelFLd6Ed/+YBvXMrjRi/FtA1nCej8iKSV5IdkYJBiGQZznVBydGG4aWmG1VNWp2WcWAgLHxhAwyXKWKg7Xd8f8XrPL/+dKwOmFGrZl0psmbI0TxqH2pPVsPb90TGaFUYltGHiODiNqejaObRKm2ui+kArLZNat4bHaDBjGKd1JRiZ1e+JrJxo8v1xjoeISuCZhUrA1itkcJQzjDNuE0+0qr55o0AzsWTr6gF/cHrBQcciV4sJiFc82UUoHRlVsi+404UTd46OdMWEqmSY6XKpE4dsWrmmQl4p2xeb/8voK9s57vPmb32C1XaE7SQ8UV/uChdWGVlx1ano9cHeSdphJfnprAKXi9jDCN02ysuR8p6r9i3NJVJS8ebLJKM74g1d1V8Onifk9/uzv96Omcc8JrzmeKvZVJ79YHzKc+Vftt3llueRqd8rpdkBWyGNff/cCGcGBQmyx6tKdpry7MeItQ5BJ9cD2plH86O2VzcDm2m5ELktWaj7uTKEWOBYN3yYtdFxwzbWpejYLVZudUUqYSeqejWMbbI/19y8uV2l6Njf2QlqBzSQpUCgWK86BIWc/SilKRd2zGSf5fb2JDhN6SikGYXZAgCmlDvZvFOe8tzlkmhTUfYtpUmCbgmlWsDVKONHwcUxBmBbUfZt2YPPL9RFLVZM2EDgmFdPiK+ccXj5R44OtCcMo5bfPt6h6d7ah4Tu8ccqm4lpc2h6zXPcJsymDOENKcC1BM7AoSklSgGUYlOgYZlmWlLPT7toGtmlQ82zGccE3Xuhwqh3w89sj3rnZRwioeTauZXJrECEENAKb0+0KN/shL5+oU/PsI8fmbnPLR1FALVRc/vrqHhe3J5xqB9imQZxL1ocxaVFiOQZV19LqvFmETzfMaCiDXGrSZxjl2JagHdgoBGlRksoMx9Str3FeYBk6vbIoFZZh4ZgFRQH/5d1tfr4+xrMNXNs8UEr9znMLfPPFDt1JBig6NZdWxbnnOt5v7313fcSVrvZtCBxtQvr6yQZLde+AQN4YxiAUaS65tJtxtRtytTvlS2daOJbBiabP6YUKP7rew7VM3t0c0w8zCllimQbtisNixeGdWwOWai4vn6jfl8D62oXmY9+DvyoF15N4ic0xxxz34qc//Sm7u7t86UtfOviZlJLvf//7/Nt/+29J0xTTPGox8KyncT8r2/m08Xndb/j87rtlWUwz9dTGSqUUH+0MGKWSZuBztRfxy40h3UmKRLA1zRkkYxaqLjXXpBG4tKs+J1qagHlvY8zGIOLWMGNrFCNLxYVOlZpns7pgcLsfcbkbEaUlrgUKi1bVJUewO86peRZRlrAzySgQCCNBIDCAK90YmefQhL1IooyUxZpLP1ZIZRIrXeguUTM7C20DIYUJCJK0xBIG41wRCIUwDOqByzDOyWWJYQgaVZ964HBrmJApQaEMZKm4NUzZiwsMYbBcc6n5Ni3fZqVl8tbZRaZpzgtLNSxTCwXCRKe8245NIUxSKcmVgSN0ynfVE4yijDOLNU40PN7ZmDDNFBKDRuBQ82xsSxepx3GOaZqkpVbMBZ6+1lfbNidalQfOlSSSTAk810EYglyVZCVUHBslTDIM0lKRKwNXmJi2QZalTPMS27apeM5n5r76vN7jvw77/ajbPye85niq2DeI/8HlLuvDmHMLmkTIipJRWnCy5VPzrCPKqsM47AE2TvJ7FGJCKC5uTbiyO8EyjQe2UqWFOtJeeTf2W9rSomQY5QzjlDPtgEGc49omQghtOu7b7I5iNocJvmOwENgEjs2plsGVvRDLtqh7NkJBKrWBu20JVuoeoCcLdd8+aHfzbIOW7zBNJe3A4esvLD6UvDuuxTNwLHphSqfqcqU7JSsUjcAGBLlUTNMCA51805tmOJbAMgStwGF9EDNNCt44UT2iahboxMCTTY/1fohU927LOP7/s/dnzZZed3of+FtrvfOez5wnJ8wACaA4SKpBVWWWVHZLoWh32xd90RF9o8v+BPowfd8RHdFhh7tDltthu1gWS6UqskgWARAggESOZz5nz++8hr5Y+xxkApkgwAkguZ+IJIjEGfa8/u/zf4aWw2nJvNZ86+aAXhLw4wcTxnWLsQLnPFGojSOQklr7NhglhCd8lCBUklAKilrTGEPVWh6OC+6cLVnUmpujjNsbGVGoOJ5XLErN6/s9rg1i7pwveedoxhvXBqRR8Mxwy6cpoOJQXllaR1kAOCaFJwk3OzF5Y6lMRSCgNN6O7clFaLT/91Z7oksJOJ5V1NrQiQKuDVLUyrIZSMGDccHd85xOHHB7M8MCB+OSWhs2uzEbWcj9i4Kzpa+A/tbNEXEon1BKvXqtd0XQXLbfPPU1Ii7/Z/Vn9Z8vCeSDack0b6hby0u7Xaa5ZlzUPJwUFI3m//JPbvLnr2xjHVzkNeNlS6mNz/dKQhpjOZ5XnMwqzpbVExXhj7/3LwmsWdn5wu/B3wR+mSyxNdZY40n85V/+JW+99dYTf/dv/+2/5bXXXuPf/bt/9ymya4011vjtwX98/5zDRfMrOysv5/s4ULxzOGdSNBSVBudwQtCJ/Ey2N0gIpCCLJEezig9Olvz44fTK9fHtW0P+80eGdw7nGOt4dbdPoKBqNaM0JFUK43wwexaFOOfQrkZbw+lSs6xbkkCuFpyWWemD3G8M/dKtG4dMy5aqNbTW+VIoCVpAbSwS0M4SCMEgi3h+s8OjacG80rhVDMYgiwgETIoW6yBWCucsPz1akNeajdQrs6Z5zaRomRQtm92I1oRIHO8eL9johPzL13b48HTpF7Arwqu1Fil8/u/FsiEOpG94XCGSvtXxj1/Y4k9e3ODBuORsUfFwWoATq+gUyJuWLA7oxorTRUMXGKQfkwc/z0XzuKOnEweEShJIT6T1kpCzRUUcqKvb1mqLEoJZ0fLG9eG6eXGN3yjWhNcav3JEgWK7FxEqQd4YFrUmUJK9fsLtlYrmWaqOywywWht+erggbz4OAp+VDe+uwuef3+rw3Gb2KSuVtwGugicbTSR/fqh3HHhSprWOl7Z7/PToyTDvQRpw/8JykTd0tOLeuPC0ghTs9xPeuD4giwMEPgvrL17d5cYw5T9+cMZ//6NDIiU4XdQY53zAfRwgEez2Yh5OC2Zly3NbnWduzp5l8bx/kXP/vCAJFOO8YbsbYZxjUjTs9WOq1jAvW6xzzIqaIFRsdSIejJecLRqMdahnOEu7SQgClnX7xAHonOW94wXH84pBGrI/zOglIefLhlGnZVYbBknAN24MOF/W/OTRnLNFRdlY+rG3+2nr0NoSRgGTsgUE7xzNiZRA4hikIZOiodWG21tdtjsRDyYlf/1BTRJIH6Kea35wf8JWL2KzE39KGXdJEhnreGGrw70L+PB0yemi8g2ascK5mDtnOTdGGaHywfM7vZhZ1dAYf1+LpmVVtnMFH1UvKBrD+aKm0Za8sTwKCpSUdJOQnZ4PIf3oLOfaICWQkoeTgkpbbm5k7PQSTuc1rXU8v9mh0JaH04I/uD7guc2PlVKvO8c7h4snCJr9YcrN0cfBpz96OGFetuz1H7cXLnlwUfDqXo/3T+YUjaZoNbu9BIQnPa+1CXndcjqvCZRkuxczyRvOFw2LWnNjmF69JhOpiAPJB6dLZqVeDaafxscE1iVZKD5XsP5nWZx/VfhVZImtscYaH6PX6/HGG2888XedTofNzc1P/f0aa6zx24Gzhc+ZunuxZLvf+ZWclc45Tuc1Z4uKvLar2T7g/VOvfE9DBQEsKk3TWp7f7XK8qLg/zvnJo+kTsQidOOCfv7hJox0fnC744GzORhZhLDy/1eWD0wXzXGMdnC0rrIOqMYxzP/ca62/LqBPiHIRKUFnHrPCZXC/vZEwry+mioW4NCIuxYC2+sCr2ecStcZSNoTWGXhqSRQGjLKIxlnFeMy9b8tX1Ty8NOJ7VNMYyTL0tsWr8bRymisY48lrzcFwQKMHX9nooJSkaw/4g5aPz5ZVTIZSSMJAMZcjZvMI6CTisc7Sr9vleHPDmDb8Uvj5KuT5KGGYxbx/OOJqXZFHAcBWzsaw0oyyEii+k4Puki6ITKzY7MUezgq0s4njmA/5xDmv87YrDgL1Bsm5eXOM3jjXhtcavHLW2xKHi27e6VK2ltZZQSjqxV00Z656p6ogDn5v04WlO3rRXF+jgmJUaJbwdblq1SPGklep7H5wzyEIOx0sfcnnnnIvScJ77+uLPCvWeFq2/8A4lX9/v8dbBjEeTAikEcSDoRAqdBijlCRelLlVE/jYMs4i81oyymJujjFEnYtSJGOfNys4Yk0aKurXcOVtirWN/kHJ/XIBzfH1/+NTN2VVzZFGz3UuoWs3pvAIBo07Ig7HgncM5SSAZJCHb3ZiyNlRa008Cr1RzjnHesh0HXB9mOOfY7MRc5DU/uD/lzxLIG0MnVVdZV0rAZidmVrTsD3w98qxseO9oyY8eTqhay1bXEzqjTsjuIKETdZiXLVVreX6ry9eu9YmU4gf3J5wvK4SU9OKAdmVtjCOJ1o6tnlc7/ejhDGs94VlpQyAkF0XLjWHKsjE02rLbj3n92oCXdjIejEvSKOCPnt98QnF0qeJ573jGg3HBsjYoActKk8aKN/Y9qeTrqBcI4XMZpmXDbi9hI42QCprGUdSaorWM0ojBKpcqChSdJODhuOC90wVRqBhFCuscoRBM8ppF1RIFgjRSfOPmgFEWU7aavYGiEyta422t3UgRBorBirTMa0M3CdjpJbx3POP+RY629oqgOZmX/H//8ZCyNT5jqzY01vGHzw2vCCVtLYtS88Hpgh89nJBXLa113NzIHmPuBMnKQlm1lkcTT0A/9sL7VOqZWL0ulBTUz7Akf0xg+e8epJ8/WP/XiXWW2BprrLHGGmt8NpxzvHvoM3FubWRI5eeKX+asvJzJPjhd8M7BnHHRsN1LKGp9taD2Td5+oTgtGmaVRiA4ndc8HBe8sP2kqnyYxXzn1W2sdTyYFIRSUTSa5YXmdF5jnSfRJIJWa2ZlS6W9UktJX7I0qzTGWOIwoB8H1KvCK+fAOEGjDdOyQQmBXSnGQiWotF/KCykJhOPeRcFGJ+YbN4e0xvLjhxPmpb4i5wIpWFSasrGkgWDsPFGmnaNdXSPhfFFSnYTsNhYEpKHkvaM5f/T8Jv0kfCyrVdKJFHfOcp7b6tBPQ8rWsqg1SgjiMOBPXtjg5V1fAXA5g/3RCyNubWbcv8iZl36ZO680r+31+K++vssPvvfOF3qtPM1FcWOUrNRkJTdGKaM0Yl62TMqWXuxv1+NZtGus8ZvCmvBa41eOS5lrrS3d5IupOoZZyCAL+Zs759wYplcX6FVrmZcNQkq204Ci1lfkgBCCOFD8xw/OeH6rw+2R/yAdpBHnRcnR1Dc4vLDVeWao9+Wm4j/dOed45kPoq9YghbfiBYHgL1/bodaOo3nJbj8hUZLTvOH+uKCfBE9cvDvnmOaajU549Vgsa03RGKrGrA73kkEacrqoaR5Onro5mxYt7x3NOJ5X/O2dCw5nFWVrCISgn4Y+L8s4okD5ZsDEk08PLpao1WN1PCsJlGB/lBGHPotplAb88IHl3aM5f/Y8/MP9MaNuxu3NlH4Scras+fatEa213LvISULJByf56nHxZNf1YcrxvORs4QmeadH456lq+Yf7E25sZHx9v08cSr5/d4wTwlsbLRBJ+nGAto6bGwnH84rWaGoNSkKiFLU2THKvoHL4w7+Xdnl+O6ObRHztmh8AHk3Kq4P9UsXzaFJwtqjRxjHKAj46KyjqlutRh+NZzVY3ZpBG3jpbtmx1Y7Io4N644GJRkyhFlEkWtS8eCIKPB61+ElEbw9G8Ig0Ur13rkoQBp6vHQUi/pdzpRbyy28VaKBvDWd4gAbsabI7ntQ8aDSTWwaJq/eCzeg89GBfs9FLeXL1GH45zvvfhBeO8pjWOedkgEXSTkLcPFrx5w9/Gtx7NyZuWnV5MXhuklJxOC1rjeH5LsNHxtleAxljSMMCurLcA270YKQQni2qlrvS5c9OyYasXEwWSk3nzqVyuxwmsS1XgFwnW/3Xicav0VyVLbI01fhfx3e9+98u+CWusscYviGnRcjgr6cOnyn5+kbPycWX1bj/m5kaH43nFeFkxKVpabQkDSbQikoy1HExLrHNo53AOPjpfcn2UXi31Ltvf51WLUgIl/WwppWS6rGiNIwolrbWcLWryRmOdW6n1/RI7VJLG+sZ4ISyDNML/+Jo7FzlCKFprr9IiBL5l24dGOIyFAIcKBMb5RaOxlqNpSSAlL+92CQPJxbLlfFFhrKVqW4oawsBb/ypt0MZdZXxJAUFrOJ0XzKsWib+tRe2XtcJJjmYFgfLRFr6B3Bc6GesdGbOiZW+Q8KcvbV3NOpcz2P0LPwPtPrfBOG84mpd8fT/m37yxx0b2i9EBlzmyj0dF3NzI2OnH/lowkBgbs9VJePPG4KlxGGus8ZvAmvBa41eOzxMW/ixVhxCCF7a7BEoyLVuGwhME47zxKqVexLV+SqXNFTlwKZVe1Jq9QUIWKQp8EPub1weXv5l5+exweCEEUSD48YMJs6pltx+z0YmYFw13zgu6q/a957ezFdnQItPItwtOSwIpuDZMry7eJ3nDtKx5ZbfHuGgYJCGLsuXtwzkO2OpGFI2XQZetQZQtUHxqc/bWwZS/ev+Medlysayxzt8vEQjK1lDNDQJ4dbfH6aK+OkCHnZiBg9Z4Jc5L2x1ev9ajn0XgLO8eLalaTT/xqiVtHAfTnLNFxU4/4foo5c9e3lrdhhl/9d7plY1xq2vZH6aMOjE4x92LJYeTCiccG1lEPwnoJgHH84p52bLRifm//fFznjQ7y3n/eE4/Cdnsxlwsa+oWGuOw1j+XEskgC6m0YZI3zMuWLFKoOOD1a30GaXT1nO30Eh5Ncu6epdTa8tfvn3G2qBH4jIXdfrIqHBBEYeAHpabl/rjgzf0+m92IvNGUreHV3R4XeUPetFhnmVeaXhKw2fUkTyC8Te/F7YxhN6OoNbv9hGnRsJGplcXWYqyjtYazTf7QSgABAABJREFURcO3bo6otOHv714wXw2IaSC5aAzWOZaNJm8MSgoCJQmlJ4HHecOyNrx5PSJvDBfLmr9+/4xp0bC7es1O8oaybf1QldfcuyjAcaWMtA4mRUOzIlvzxrcGPbfZZacfk4aKWdUySkMGycfNqRudiI1OyNmi9fl5dUsgJdcGGds9X8KQhsHnJrA+ORA96z3468SlVfrzZImtQ+3XWGONNdb4fUStLa15dqZmEirOlhWn8/rnnpHOOd46mHE8K9kbJIDguc2UnxwoLlaN3qHyRM+y1gTKE0pla5iVmmsDv4hc1oYfPZjyT58bAXD/ouRsUXL3ImdatHQjxYvbGWEgOJkX9JKA1joSJWiFIG8u5ytHax1SeUug0yBCRxYpBklIXvl5OZJyFSgvrsi4ojGUjcE5X8bkmxfBCUEa+tiG79+fUFSaF3e69FZlT1tdQVW3PJzWaAMOUMZRaI21YPGKsgAHUiBwHM9qBpkljQImhaFsDfNKEynB7a0u37414r/82g6DNPhU5MUb1z/tFnkaKRUpybdublx9bdu2/KLY6Sf8i0+0yg/SgFmp13PUGl8ZrAmvrwh+ly6yfllVx/Vhytev9Ticlnx4mjOvWvTK5ubsKizyMXIgrw0n85JhFhEFT17QCiF4cbvLrGz4s5e3SKPgqY+vtZbv3xuTRIrdfsKy8WospGSz6w+uD05zXrvW580b/asw/cYYlrXmxjDjz1/5WKb7yUywWeXJg7I1dOMAswpv3+nFbHVjTpc+kPzRJGdaDBl1Ik5mJf/hrWOmK5WTFII08hlY9erfs0j5n5kE/MF2l4NJxaRoiAPoRAHnSy/DzmvL33w0pp8EHM0qikaz2YmIViFei6olS2LGRcNOP+Y7L398X74lBR+eLnh5p0s/DblztuRkUeOcJ4C0cRjnGKQB47zl2iChlwTEreXuRUGjLf/V13e5Pkx583rFf3hHcWsjQ+D4q5+d8mhaUGtLXmsv8TaSKBBkUYDNQrSBYSdkoxMxWGUfXDZ3LivNjx9O+NuPLjicVJzMK6JQooTg1kZGL/YZDRZHLwlY1pqNldW0aCy3NzJmq43mKIuYlw0WQdk6HBAoQTcJSALFIi8BkFLw7dtD/u7umJd3uvz0cHGlhopWaqh5ZQiV5Ju3hnx4umSQRdTaMCsb+knI/jBlIws5XTScziuyWLE3SOnEvlb6aF6iBBxOK6bFgjtnSx5NS7Y6EdZBFEiUkvRUSNl4FdrhtEQAoywCIZiVNaeLhn6iGKS+DbRu/XtlXvpm0lEnIgkVN0YdBmnAtGjJooCDScEb+12KtnNVSZ1FkvsXBa/tDXh9v3c1aD2NwPrk8PS0geg3+Rn3yXDVT+JSdTovW356uA61X2ONNdZY4/cP8SrM/Vk4mVfcOy8w9pRAiaeekZfXMz89nPE//PgAYxx3zpYY46i0oW4ts6pFOIdxXr0/SELyxlBpPyNHAYRKsT9MaY3l7nmOEL4IaVw0LMuWg3HJstacrpbMYaCotaMbK4R1LJuPbZJSSq+wxzBKQ+IwoG4148KyrBsejS3GagB2exGagGXTooTPd7UWf1sjb2u01lG2fpm62fEtheNlg8FxOKuu7IyN9tcuSgqEdAgHVoCxIAVcPtLtpWJMKn9dUWkfWWEc3Tjg5ihlXmnOFxX/cG+Mc47/+hv7/IvXtj/XXPXrnsGeFnC/Vsuv8VXCmvD6CuB3sTnsF1F1XB6SVWvoxSHjfEYvUewPvGf90aTkaFaxrDXfuDmkE3tyqzGGSdny2m7f/515Ml/Iqzd8e6LfMn0a9y8K7pzlvLDVoZ+EK2m1lxo/GBdY51vqzhZeYfPmjZC89gRG1Vr+xWvbbHQ/rlq/vMCOQ8kb1/u8d7Lgg+MFxnqSKI0USajoJf7AGSQhy8owq9orlcnffTRhnNfs9FN+ejhDSIFu/IFsLdStoWgVN4cp07zlzW/0mZUtj6aaQRJiHAxXwZFCQqMNB9OWZdUSBp6ATFYEYRIpXt3rkYaK1hiKxnA8q64C/QMl2RukKCl4brPDsjKepFOSvDEkoSQLQ5IwoBMHXOQNrXYEUnC+rPnu+6cMU09YxYEgrzVny5rDacW9i4JAeqF4IP3Gq6gNVWMZZAELo68GokeT0qu+qpZaG+5fFJznDf04IF7lGmgHs6rl/kWOsY5bmx2U8JtDY32ldLNSCI6yiJd2uuRNy7tHc45mFUoIRlnIMOswr3w74jANr4iSThSyP0hXtlz1BAF6qYba7CQMs5Bu7Em2P31pk1mpeftgSmMc290Ibb1664OzJW/uD7g5zCgaTwpfNps+mhT0U2+RTVaEzdmiYphFxIH//fOqpWg0CIguN5fOcv+iIFDwyk6PjU68akWq6VrHvG4IFD4/rROx24/47s/OOZgWXOQ1988LHk0r3rzeY6eXrkoSiiuyeqefsNNPvtDw9PMaf36d+Dyq081OfFUAsA61X2ONNdZY4/cNw8zPN8tzbx18/ESf5A1/f/eCLA7Z7cekYfCpMxLg7YM5P7h/wd98eMHRrKQbBSB8tIN1zrf5CUESq9X8oIhDb/Hb6sT0E99AfrasyBtN0xpmlebeecFmLyKSkuNFycWyQQroxgHTSiPQRMq3aieBpG7NqpzJN65LBEoJZmVLWHtlf6UdznmyS+KVbQ8mFUEYYq0jCRW5NUj5cWi9lMI3LwaKfhIyq7zaPw4lvSShaCzjvMFay7TUhGHAZiYYFw3WAgKcNf63+Uz3q8d5VjWESrCsNbGS9JLQz3uhInOOqjEYa/nZyYLnDmb8y9d2Pvdc9WXOYGus8WVjTXh9yfhdag77pEptuxd/7u3D46TfZUPj2bJhrxeTxQGRkmz1vAIprw21thjnqBvD0cw3kuwOIsSqQ+9xfFZm2OVtvneRs6xbbgx9SP6l9ck5H8A/XrRUxnpiAe/n70SKs4Xl5Z3epw6RJy6wNzu8stPlcFySRDVpoGiMZaMbk4T+NkVKct5W1G3IrGgpG82D8ZIsCshrTdlarLOrzZvfLuXWErWGURpQGcvJomGzE/Gdl7dXGQHwzsEcpQTO+QaXZa2JV0RbWWtmpb8/gRRMy5ZOqPjxoylH85pO7GXewyyibs2VOma4Ij3ujwseTQpmRUMcKp7bynh1t0egvMXug5MlAoV1sN1NSEPF8bzyJNWyZqPjSZtAeEl76xzOCaJQ4oDGOozxW6JQSc6WNQfTEm0dndATcedLn9PVKstOP0ZbBw7KRtNoy/myYpCF9OJVRXLow+UvFYLOOapWc32YstVNruT6wyQiChWbWchF3tJLA/b73oLbWk+oPv78XhKgrbEEUnC2rHlpu0cSqqucrG4ckkWK908WnC9qHLDbjwmkYKcfs2haaiN5YavLtKj56HRJax1a+2koDn3uQ60Np4uaF7d8fsOybjlb1NwKFWEkWFYts0rTasvNUUreWrpJyBv7PR5OApJQMSs9kTfIQpJQ8v/+hwP6acgLWx12egkbWcw7hzN+eH/Kc1stG53oqTbg35bh6eepTvtp6ANcy3Ydar/GGmusscbvDT45u792rccP7sCDcXHV0lg2mh/cH+MQ/OFzQ7qxn4cePyP/5sNzGm05nJa89WhG0XjSZrZyaSghrnJ3rfMqpzQIiEPhs2iVJIsCpmWLQxArRaAEWRTjBDwsCg6nfhZ1zqvwo8CXLVnrlVTDNEAbSKOQ/UGCEoLGQtO25K0lCzzJlrcGbSzWOj8vK8GK76JoDLqxdKOAcNUsbl3Iom6x1tG0Pl+ss5ohytYSB4JW+8zYSFmUkuz0EywVEsHRrEIIyGLlZ2TjUDi0dYRKoK2/P8Y6Qil9Vpjw1zNFq1nUelWiZNAWFrXmRw+mfPvW6LdmDltjjS8Ta8LrS8QXaQ77quOXUal9kvTTNkCJBRtZuNqU1H4jpCR/cGO4ak5p+eBkyTALeWN/wK2NjPPlxza7S3xWZtjjt/loWnG+aHifJbc3O3Ti4EqFtCxbzvOWSms+OFkwSCLiUH6mPfOTF9idKLjKpTpfNmx1I3Z6MZd7nWlZ82BcEkrJf/zwlFo77pwvKRrLydxnUkVK4By+5XDVoqekoGgsgXG8dTAliwJe2+uzrFt+erTgHw9mmFXd8qLyxJTAZ3sZHML4x8tYx4/ujflPrSZvLbV2DJOIRaI5XzYsKk3VWt68PliF/Hu11m4vZpw33N7o8IfPjRBC4nB8dKYxKwVVqS1JoPzrOsx4+2DGvNRkK1Jxb5AwXmVNGWOJpGSnl5KEgnltuD5IeTAuKBvDRhZyrZ+wqA0Hs5x2Jfd2QjAtNKFUVK2mEyuWtcFYn2N1e6PD8RyMtcxLzc1RBjjuXeSEgSKx8MJWQmsshzNfCw0gpKSfhtRas6wkZP4xb4z7FIGSrh7b05UC643rfUL1sZVOW8vDcUlea5xwCAS9OOLlnS7/5s39K7vt2bzir352Suv8z7p7ntNogxKC1vgA/7a1nOcNZ8uGvNbMK19/nUaKk0XNMA1wAk6XDceLGikExjlujlKcEyvyV/DPbm9w76LgwbjgxjBFb6QoGbA/TNnrx7x7vODGMONfvLbNqBP9VpM9n6U6vTFK+bu7F+tQ+zXWWGONNX5v8LTZfb/nz7jnN7scLhrO8xq9ijb44xf6DLMnr0mEEGz3Yn5wb0InDjiZlTwYl8QKitZQNhpj3Kqp3JCEAWkoqIxlpxPxyl6PvDE4Z1lUhtYZhoEiCSWDNFq1u1uUEj5kHh/rEEhJax1Fa7DW0baOidVEgWRetVwbpgySkFJr5pXPS+3HId3Y347LeIjtbgxC0OoW0IzSgJPcEAcKIdwqB9bn58ZK0hpL01hc4EuDlPS5XiawLMqWbhKQN/42CSeQCoqmJQ4VUgj6qaJspLc1WouzbmWBVLSXmbOrwHeH42hakYWeKMtCRSdSTIqG94798/ZFZ5KnReisscbvOtaE15eIL9Ic1o2+uheav4xK7Wmk36RokFLw4laX02XFqJPw8m6HSCo6scJYxwdnC77zyjY3RxnDLORsUfPdn5158qHjP7yLxnCaP52U+uRt3roR8dHZkjvnS5xz7PQTzhcNlTF0YkUaSTY7Pu/pf//wjK9f6/Ha3uBThN4nD5LvvLLFO4cLHk1yHF5ltdWN6MTBVdXxtKj54YMZvVjxxvUBe4OUi7wmrzT3xwWzsiWLfeWyXSmYBD7Mv12pnPaHKUezklAqRlnIR2f+gl4JQT8LcA4mZYNr/NCia+sP/cZXQv/o4ZSjWYMQ8Nxml+1ORBgoJmVLpv33LCrN3fMlu/306jkuGs0L2116sQ8W1fYxZVUSMqs1e/3kyn5aNJZYSXb7Pufr/rhASUkaBqSBf26dgDCAWaFZNpq7xucwxIFESclyJenuxj6XallpkkiR1z5kXq8CVwV+2FpWmlnVcnOUXuUmBIHfkL243WOnH/F3d8ekUcDtzQ7vHM4ZFy2DNERJAc6XFOz3/VARKUUcSEad6NMEivT37YXtLqHywZ3Xhxn/+GjKJK+Zli3dKGAjixE47l2UKOmz2HYHCafzir/+4JzjecV2L6KqIxZlybjwG9JYKYR0VK1jUfn3iTZuVRQQst2NUUrw0dmSsjFkoSJUimXdYqzj0bRmmAXsD1JKbXFOkDeG5zezlQ205M0bIQLfePTcprd1CiF+q8muSzwrx+JkXn/uUPs11lhjjTXW+G3Hyazk3//kiKNZxUYnZLuXEEjB3Ysl28Br13p8+/mYWltmRcP3Pjxnp5c+9WeN85afHs3pxoo7ZzlFo+nFIdYYtHY0DprKEEhDFBjSKKAXB7R4xX0agnOKD05zekmAwwfGCwDnqFet6a1x9GNFbfz3ldqTac752VE7R4hDrpob51W7shdCNwnoJT7nyzjvbNjoxsQrJX67Ot/HRUvVWqalIA0VjfbL0zTyijOHJAphq+dbrMva0ksjXu3H3DnPqVo/XzfGMilr6tYQKoWSrHK4WqSQtNYr1VoHkRTESmKtz8T1S37h2xxbyzANaYyjEwdEgaQTB1jr+Oi04PX9weeez54lTnhtN/vVvKjWWOMrijXh9SXiizSHdaOnf82XjS+iUnvaB/LTSL9QejVXYx2jLKZoNJFSdFcZSrU2DNOIm6PsarPxhHpjvKAPzKv2qZlhz7rNf/TCBvOq5eGk5CJvyFY5W6eLms1OzF+uvPJ3zwtujDL+4tUtpPzYJvmsg+T1/R7fujXk27c3+P7dMdOioWwti7qlWvpspF6i+Ndfv8b1kT90tnsxtza7vHeyxDpP+DgH2jqkgMvrbm0dSSR4frsDCA6mBXmt6SaKXhxw73zJtGwx1rc5KiXY7Hrr59GsQq/CxVttMM631eSN5sOznFd2e+ysAvVHgWTUjdjrZ8yq5kod89JOn6/vC/7Xd0/5n945JgsVFsfJ3GcibXcTbm9kV49xexlgsGo8VKvsro0sBOGVZhfLhuNZjZSCXhysAutjHk0K4siHmIZK0pj5irgwJJEiDLxyyTqotEZJgRLQGE+yvbzb49W9HjdH3gp4SXZMi5ZITalaw/4w4Y39Ae+dzHz+g3NY6xhmEa/t9WEM+4P0aiP2OIFyMC346LRgWtT83d2Lq+d/pxdy/2LJ+ycLsiggUgJWBNL+ivh753DBdi/m7YM5RaPpx4qDcYVx3pa43Qu5c16QVw26tlgkKpIIB3Go2OwmhEpwOPNNmqNORKMtkxVxt91L6MUB7x0vyELJtGq5NkgJA4E2ligJGabCE621uXqv/S4SPU+zYn7eUPun2aLXWGONNdZY47cJJ7OS/8f/fpcfPpxc/V0/CXhhu8vXdjoAvHe04F++3kUIP1tFwdPPyFnZ8I8Pp+S1bxKUArJAMS9bFpW9ihlx+HD2trEY2/D8RkocBUxLjXWWfhKulsANlXYs68Av7QJJGqqrOAYpBRhHa7wdUAm/TAW/6IyDgCSUbHVjnINSG2KlUAI6SUgPP4JOq/Yq46upP55xjPUh9bPSz5dZqIgCxf7I53OdzkvSwBdGaePY6ERcHyQkUcDtjZSPzgtGWUQgBQJB2Vp6SUAgfVxH1Rpa42itRQjv3sgiRbMi8TpRQBT4ZWbRGKTwC/w0ChgkAXmjvShgu8u0rH+u8vxyEX8wLfj+3QmtMU8sru+cLTifF3z1vURrrPGLY014fYn4XbjI+iIqtad9ID9O+jnn2/ca4w+Yadmw1Y3R9cc1yZ9lUbwkH87nHf7Td9/mX7+xx1Y/+9TtetZtvjHK+NOXNvlPdy748HTJKAvppRG3Nzt8+9aQmxt+CHhxu8OsbJmV+uo+fR6V2xvXB+ysSI2DScG0DKhbQ6AEb+wPrsgu8Blh+8OEfhIwL1siJehGAbOqxVh/qIeBD9C8bP2LlORkXnO6rHFEFE2Ntn4oCKQ/RLWxTPOWjU7gFS6rNp5aW7I44PogoTWOi9y3Bz631bkK1O+lAf/s+RFJqK7UMY02/PX75/STAGNjZpXPGZgVLZFS/JNbKcPs4+c9lJKy9YH4cuRfH/OqpRsHFI3GOMdWL2KYhiSBZJjFaOszqBZVS639a+TWKEQCQvgQ+lYbwkBStBatDWWlCQPJ9WGH/+rrO/zX37juh4XHqpIv8clA86/v99CrzVwnDFg2XqXWrsoQvrb/pFpQrKyGPz1cfOr5//HDCQ/GOe8czqm1pWwu7Z2KOFIIIdjqxhxMC+5fFBxMC25tpHx4umRaNtwYpggpiULJRuZbFmvtCBVsdiJ6ScgoC1f3R+Cc5cOzJf/NN66h94e8fTCj1oadXkxjHErC6bJmoxNzeyNb1WtLT9AGEl23T1SS/6Y+g77sltrPE2r/tM+cNdZYY4011vhtwum84v/1g4f857sXq/M2QgLzWvOTgyll1fDHERzOyqvZfZj5OfOdgxl7g4RoNccA3Dv3i77NTkhrHFkUUNSavNWsVpyfQqvhg7Mlr+522cw6PLfd5XRekoQBRWOo2sa3OSrBRhZxbbfLpGiY5IKqtYCjNn5ecFzm2zo6UcgwCwmUZFp4QmuYRljrVWBCwEYaUTWaad2irXdJVNqSrMYcAUjpZ7tOFLDVTeglCgcMU8nZQrLRCQiVxAm/KD6cVdTaUmuv2hpmIaMsJlCKu+dLlPBkn78dYJ2hn4aM0hDnLAhP6r221+fWZsr5suH798eM85ZACeJQMUj9PGosvLCV8vJOz2e/fsZC8moRPyl452jOpGhWRUaWThxciRPun8/Zhk/Fwqyxxu8K1oTXl4gvcpGltf4Sb+mz8UVUak/DJel3Mq84W9aM8wZtLK1xzMqGeanppSFS+Ga/z8rNAq7ypcA3FD7ta552m6dFw/1xwThvGKwa+V7a6fP69T4vbneQ4uML/k/epy+icvukpWpWtPzHD0/ZG3xaJj5KI/b6iSeHhKCbBjjnaJwlVT5Ms9KGLPRvY20cW92YWVHjHCxXkvL5aiN2bZiyLBtO84ZlrenGir1uDJS+LVIGKKlQCqpGMy4a9nRKrCQXbY0keYL4cM7x9uGcg2mJXanPBI5uHHJzwz9fk6Ll5oa7ekySEM6XFUVr2epEOAT6wlE0vonxwbjCWsd2J2K7n/LCdpf3TxZIAf004mxesqxa5rUfaPpJyMT6psxKW9LAexaDQKKkLxZQ0mcftMZeNRF+Mmfuk3lcr1/v8+FpzoNxTqi8ffGFrQ7LmVffPY5nPf+tsUzLhvdPvMT9tb0urYFl7S2YL25mFNpyOq8ZdgIWtaYxFuv8IDXMImaVphMHGOvQxsvck9CXCdwYZSuiXBBIrxjc6IQszj0xeGszoxurqwbJvPafIWmoeHm3yzCLcM5vJ4/nFYPYbyAvK8l/U0TPV6Gl9ueF2n/WZ84aa6yxxhpr/DbAOcdbBzM+PMmRAnZ68ZVTYTOQzIqGw3kJW74B/XLOPVvUzIqWu+c5PzmYMcwi9noJ3STgg9MF+8MU5+Dd44Vv6l42XHInl6TXJZUigED6Nu6H04obGx3yquXhuGCQhmShJAkFi9KgpGNZtTy8KNDWsduPGectFoHVhtpZlJQI4RfFvTTgxkbKbj/hcFpxsazpRJ6s6kYhy0YzrRqK1hAHknmpkThCpa5mn0AJpBVsdiI2OxFJqLix0WGcNxzNfAxFEEhubXQ4W1ac5zVxoPySNg24yFtO5zUv7fQYFw2vXesxKzXzssVYy3bil6/G+iVlGikCKfmnz21wfZQiELziHNu9mP/hx4c455VseWPoJQEvbnf5+jWfEVubZy8kH1/Ed+IAIWC3F3O8qFhUmjeu96+uk7a7CUy9qm07WueUrvG7hzXh9SXid+Ei65dVqQ2zkE4U8L+9d0IaKQZpRJSENMbSGMPJrPKVw0VDFMinWhR/2ds8LRrePpiTt5pBEsIqkN06y8msZrsbP6FS+uR9+qIqt8ctVXEgiQP1qcdvWjTcv/D5XW71dVLCsBOxqDw5lDeetEsihTaWojHs9ROqVhNIwRvXBijlq5nnVcuy1rRakYaKurWESpCsrLJ7/YRlC1WrSVcV0to6jHU0zlC0hn4S8aOHUw6nJY2xaGN5/2SJMY4wEAzTiGEW0WqLnjtmecNbB1OuDRI2uzGni5If3J8yL1uEFPzo4YytbkQ3lRQzxwenBXXb0mjoZyG91NdRZ5FiWjRsdyPySjMuakZViBTQS/w/57WmaS3aQQiMsohhJ+LPX9nB4fjeB+e01jIv26cq8L7zyhbfvDnkrUczjud+oLk5Snnjep8XtrtcH6Z0QvgPdz79evrk8++cY1lpfno052xRk4WCspW0xtFZNTXOVkUIe/2Yk3lJL/U5aJGSLOuWMBA8v9XhfNmwrFqK1lBpQycKUEIShz7P7HJ3GihBoX3Lj5SCRvvRcpBGVw2Sjba8fTDjZF6ysXr9CSG4vZExL1vuXhS8uN0lCeXnIpd/FfgqtdR+Vqj9b5J8W2ONNdZYY41fB6ZFy4enS8DRTUKfa3qpbBKCThJS1TXgrX1xIJ84p791a8TpvOZ4XvKTg6lvHgwV37w5ZJK3vH/i80Mvi5Uuia7HdUNKgHYgBHQjb1v8hwcTBmnE9aGPXljWxjeUa69oOlvWZLEiDnxObWth4sCtsrdaY+klvmn61mYHKcAYHwDvHSSw049hDvOq8fcbgRC+LTJYZYkBdJOQwmh2+jHb3ZjjuV8YbvW8Mv54XnHnbMHxrGRSNN6qaVjl8ho6kSKNAx6MC1pt2OomjLKIqvVN77NSc20QczyrOFtqtroxUggOJgWhFKhVlpeSgj95YZNACa4PPRE2yMKryIl7F/kzF5KfXMROyxbrHN0kouccj6YVPz2a8+b+gG4SEIeSGqj1WuG1xu8m1oTXl4zf9ousX4UVSAhweKJAgI94ApJAst1L+NatIX/5tV2SUP1CVqdP2qUug8TvnC24HWbcHxfkrWanGyOAaWE8eQEczwuEgD+44Q8FVs15j9+nX0bl9rTH74qAa1o6ccjGasNUa0vVGGpjyBtNpCRKKmZlw3vHC25vdri9mTApGy6WFbeTDkpKunHAZieibA0n85rX9vo8nOREYcCNQQScsdGNqeYNoZUsqxZWgZ5aGx7Oa3pxwNmyYlLU3NrMSMOAo1nJndOcQDrevD4iDhXgSZfNTkS1ImnGec3ZsubeeY61jlubHba7MQ/HOXfOlpSNxjmBkH4DN7Ut42XN2aLiHx9OubGRIoUP7tzsRVjnKLXlIq9JQsXr+wMWlSaJJNZCEkqySOHwGQ7g+MH9CTu9mK9d+5i8yWLFlvMW0zunC66PUlrjAMEoi3nz+oCXd7sfK7ZWeWefxOPP/6VS8Gha8tF5jgTy1hAIyGtNJwpWbTwBy6rFdSMmZctWJ+H2Zsbd84y3D6ZI5ygbTRZJ0iBCW9/+s5EFnC+bq6aiS2jjkEDdePtibcxKvu8zJLpxgIsco06EkoKzhVcNJqFaheuHSCkYZgEfnCyRK8Lvj57f+LV9Bv2y+X+/Djwr1P6rvHRYY4011lhjjc+DWvvlaBxKRmnEtKwZqsgP4vhc1cvTbjNLGKQB3/3Z+RPndBpKKmPQ1ue1TvOG//W9M7qrLNXzXHMp7/ITlYcSPkc2kAJrV2H1kQIBR9OSTqQ4X7YoJUkCycRarPWzgnXQCRWVdozblu1ezI6KyGsDzge9DzuxJ4YEPLgocXgF2+my5uYwu5qlH00FJ/PKk1idGOMsoZR0whXhFYfUxt/qjU5EFga8sNMhi/wl8+m88hmpeUsa+dbEurVc5A1J6EuNslAyXy2sF3VLIL3rIFSSg0nB6aJCa3MVA1Jr58uYkpBBGtBPI17c7vBffn2Xw2m1WgrGJKHyhVw/ZyH5yUVsqHyr5bRoV0H+NQ8nBfPSt1luZwEDIA7Ws84av5tYE15fAfw2X2T9Mio15xz3znMOZxVvXh+Q195Gp1eHw/6ww3YvxOFJoy9avQvPtkvtDWLOlzXvHi84npb00pBGW47mFWVrcNby0XlJXhveO15wMi+5MeqQRorrK+XP5X16msrtMo+stX77FErxVJXbJx+/7W7MvfOCSdkQSri9mXFtEPNwUiKAk3lF0UpCJRjECoMPLQ+kBOe4yDXfujnkH+6POZxVbHdjolVG07z2m6TntzLEioCpWwMRbHdjlrVj7hxl60m1ZaV593hOFinqAH56NGenF6Mt3N5MVy0y4JzgLK9BOM6WDYuqxThH0/qw0tev9RkX3k53c5TyDw+mGOdoVxusWjsclsgJxnr1eCnLRidkWRtO5w17g5i81iwquDZM2MwinHXkjWFZa+5dFCShb65JQsnpEl7d7dGJFfNKc5HXT5BXs7Lh/kXJo0nB3YucqjX8s9sbvHG9TxwoThcVP344ZZiFV4TPZbbBybymk7ir9+jjttw7p0smZY02DmctYagolr4wQArJtGzoRCFS+sHz0aykFwe8eWOAlJI3rvf5x0cT/vFwzjRvkeIy6B8fuirBCoHAE2JyFcw/K2sCpZBS8hevbJHG6qnvx+ujlH/1+i7Hs/oJgv2bN0fs9iPunBY8nORYZ5kWDe8cLrxK8ddAev2y+X+/Ljwt1H6NNdZYY401ftsRB5cLQcGwE1C15mouCZQve1qs5rWv73sr3uPn9OVckLd+nowDyT/cm/DhiV8a+pIiuNcaEuNzVWMFFk+6RIHy80triJVkkre8dzjneF4zK1uiUNKJFIvKFw+NshBtnVd7tRZtfRaqtRU3RilJpOiEAdcGCR+d5fzNnQsC6YPznYDWhMRKIqSg1pY0VNwaJZwtSorG8Ob1HrV2nOc1w1UmWS+WKBVTr/Jm0yjg0aTEWMfRtOSiqOnGIY32CjjjIAokAbDdjVjUhvOlJ7/K1vDRWU4WS5SQjPOGSdGw1YmYli2hlMShIq9rqtbSiUO2ujGv7PWQQnA4rXjjev9TM9vPE0V8chHfib3l8iePpkSBb0YXzhAqyfGs5MFZy7/swiBd55Su8buJNeH1FcFv80XWL6JSuySi3j2a8eNHU7a6sf+Q3+2RRV510okV1sKjafELtcSdLWq+d2fyTLvUG9f7KCF472gOEoxxlI2vPq4t9NOQJBBcFJr7F/5wfH6ry796fZedfnKlHKtawyCJOJ4XPL/VZVa2V3lgrbbMqpbX9no02vzcx++D0zl3zhd04pD9QcrtTZ+LEAUzJkW7amkUDNOARWPpRpLnt3t0Ism9i5JO3PJ//Wc36EQBf3f3gqIxLGxLoCR7/YRbo4xp2fBPbm9wkde8/XAMq5fdziBiUjQUtcHimJYtzjm6cUDVOl7a6dKJAo5mfit0YyMhDRXLWnMwKThf1iigE4coCRdtQ6Mt//hoRhQqntvskEVejv73d8eMlw0I56XU2oIQ6NZL4ZUv4aEbhz7M3kRICdf6KX/20hYfni65vdXhdF5x7yKn0Qa3arNsjUQpwbLSzEpv5Wy0w6zys7SxvH0wZ1k35LUmUZJQwvHMk51vXB9wezPj/kVxpTA6W9S89WAMwP/8zhFhGF7lTG33YvYHKf/Djw84mlUUjSZvNIvKkIaS1hiklMShoBf7DIm69tvRNAr4L17Z5uXdLgDny5o7p0twftOa161vdAQi5WhXhQWdJPC20qKhbDVRoNjtRvzBjSH/5g+uAXzm+/Fr155UPV6WD8zKhhuj7In3ytmy4ls3R080W/4qyPhfNv9vjTXWWGONNdZ4Np7mcHhpp8uds5y6NdzaTDlbNlwsa6ZFw6LSdFacx8GkxAj5RLHUJx0RR5UhCiXDNGRWtaRRwKs7XarGcOdsedXMGAWXS1+/qMSBFBAqSWt9mHzRmtXsZrjIfRZt1fqIBm8bbIlDv/BttGNRG17b63FjlHE0K5lWLfOyoZ9GZFFA0xhC5R0bgzSgaA2Lys/DL233WFaGk3kDApaloSgb2AbtHIMs4v5Fy8G05OZGh51QMSlaHkxK6lbjECuXhZ+J0jAAHLW2DFNPkKWRYqsb0Ut8YZTGcjAtEMCZdTTGMczgdFGv3AkKYy3aWfLa8OZ+n/vjguNZzV+8unVVuPR55rCnxs1cuWl8eP6l2q41DvfUaoE11vjdwZrwWuNXgi+iUns8D2CURWx3EgIJx7OSRal580b/yqNetfoXbol79/BJu5Rzvh1lkIYczUo2OxF/8drWKnBScjD12U1lYymalr1eQmMs3UTTS0JubWRsd0OOphWBEPzkYMbDSXklt15WLSfzmqIxtMaSRYrK2VVekuCv3z9/ZibRdi/mmzcHxIFknLe8vNNlsLJM5rXh1kaGdTmHE0sYCEadmK2+JJL+flXa8eJ2h2EWEocBf/byFq2xHM8rhmlINwlRwucgDLKIP3t5C4DNNIDDQ47nJXkLCMcwi9jqhgghKVatfUezikjBK3sDdnsJJ4uKu2cWbR2zsmVatmShYq+foJTBWEcSKq4PM5atZrmoeWG7c9VKeFn33E9D8hUJpYTybTRS4oQgDRS18QTYpPSPSW00333/lEnRst2NyRtDpJT/OY2mbA2dJOD1az3y1vLToxnny4ZZ2fCD+xfEgZeDB0qw1485nFa0xrKsNdbBw2nB4aTk27eH7PR9e+IHJ0t+/HDKvCjZBvaHKbURT+RMZbHizvmSybIhjQN6cYDWjknhScMocHxwuuTVvR57/YRJ0ZCFij95YYM/fWkLIQTWWv6nd45ZVC3/5OaAO+cFZ0uJXFl8F7XPhvjG9QH3xgXGWpIwYHeQcHujwzdvDnnzxuDq9fVZ78fHCXbnHH/13vSp1sKRCfn7e1PeejTjua2MOPDP6ev7PaJA/VKK1N+FltrfR3zZjZprrLHGGmv8fDzL4XBtkPDqbpcfPpjSmoZurDhf+MzWUSfk67tdYMm9cc7DmW9LrFqDc/hip8R/5letYVrUDLOI5zYzzpc1p4uKxnjl0CiNcK4F52fF5ao4x+EjM5yAvGlxOPb7CUfzilnhZ852tR9u7ceZUtqBay2h9AvRWdHy0UXOMA1Z1posUmx2ury826XRlneOFoyXtS/C0oYXt7ukaUgUBJzNS3b7EcvakIaKXqLIK3/7DicVKjBEgY+D6EQBZ4uah9MCgePmKONkFQuxrFoEEPe9lbHUhu0s9jlpwnFzOEBbOJqXPLwoMNaBhdxqtroRcRBQNg3GOoyFxlgCIRjnDXnjZ6N3j+c8v5Xx3Fbnc5+1n4xLyRtD1Vpe3esyLVoOpxXdWGGc826ajoTzg3Vo/Rq/s1gTXmv8yvB5VGqfzO0B2Oz5lridrvfa378oefNG+NS8rC+Cw1n5hAz7UnWljcVax9mi5sbIV/u+fTD1ap9QcbqoyaLAtyiWLaNOyM1R4q2ORPyPbx8yLVouli1I6ESSYRYj8WHzSgp2+jHGwfVhh9ubKf0kfCKTCLi6aJwXDe8ez3k0rcgrzcGkxFrHMAu4yDXzskFKaLSX9+wPMv7s5W22uxFFY2mtzx9IQsnBrKTWlr1Bwr94bedq2JmWzVNVd//Hb1zjPxz+mP/7X7zED+7N+OHD8SrTKeLDsyXDLMY6x7TSnOUto0VNZzMjVIoPTxeAz8yKGkkUSM7zhrjS3BilpLFvy9nrxfzt3THj3CvtgJWkOqJsLY1xPvg+9k07kfKKo24SMJARZeKJHuccF3lDN464vZFRa5+Z0A0V10ddzuYNpTZezi4lzhn+7qMJm52AbhRwuGq7PFvUpKHibFFzMquYlw1OCDq1IlaKo7bk7+85bm2kXB+mvHUwY1Y23N7IKKc+mPTxnKm3DmaMlz7ktZ+GKCmotJfehwqkUPjFpuN4WnEyr3luI+O/eGWHP3t56+q5+OH9KX975wIBvH+eM142dKOAXhr6Nh5tqFvLS7s9XrnWZ5w3/NlLW+z2k6fm231e1eizrIWzsuHtg4XfZlrpK7al4McPJ/zHD87Y7sXEofyFWxV/Ffl/vw6sCZ1n46vQqLnGGmusscZn4+cVwvzJi5tsdCL+4f6Enx7NyWvNtUHKiztdvr7bgaOH3NrIuDeuqLXhZOGXp9pYosSfydpYlo3hxtAvw5QU1K3hdO7D4m9tpESh8tm4ZcOyMkgJoRKE0hf55LXBGEdnmCCEzyNtzZMh9wAK3/ZonQ+IjwIJEsaLmr+/OyaJ/MLVOQik5KJsGSQBWnui52hW8WBSYozz+bTW0UsCNjshlfFLay7b2CUMUm+TDJQiCgWg2OundCOFEoo0NGhriALfsB3kNRudCGsds1LTTUJev9anMg5tLFvdmG6smJaaRnulVtFalnXNsjaESqCNRaxmVCVbtPbz/aLSOGu5tdHlhZ2M68Ps584ln4xLiQJJYwy9OCSLLa/t9Xhpp8tmN6YTK4zW1Ofr0Po1fnexJrzW+I3iaRfXtzcyFqXmNG88EbGsOFv4zKZfpiWufSxI/PEWxigJqbThwbjgf//gnD99aZM7ZwGni5rNbkRRa2bGMa80SvqQzaO53xJVjea9kwXOCQaJIgkDam1YlC1x4LcyX7s24J/e3iAKvC3zMgL0MpPog5MljyYlB9OCB+OCtx7NaIxltx8zSEOWVctfnyxotSGNA0ZpyCCLSALJotJkUbBqbZR0k4/VL3n9pBru86juLv//Ti+mMl4tNcgiv21yjkD5np1BEjEpai6WFbuDmFnRUmnLKzsdfnZiSALBbj9GOK9IK1vDjY2M2xsZ3TigGyuOV42X4GXsGysio2y9Is45S7PK8HI4Gm0JFPRjRd5oJoWjEwYE0svbG22JpMBg0RZe2e1yumg4mpe+QrtsAEc/9dJ766BoNFI4zpc153m12qo5skhhnUA7RyAkxlo+OFlStoYkVFwbpE8Ivt1Klh8FkrcezShWSsRBLySUktO5J8B2wphlZVjUGoTk9mZGFCj+8PkN/ptv7V/VgZ/OK/76gzOmRcOtjQznYEpL2WrMql2oGwcs64pKW26OMsrWsDdI2Rv8ckTD06yFDsf9i5K8abk+SLkoGqxztMYr+h5NSkIl+fbtIXVrf6FWxa9iS+2a0Hk2vkqNmmusscYaazwdzjneejTjaFZybeBJICmeLIQ5ntX8n7+5zzduDPjvfvSIThR4QicJcFZT4ud1KTyJFSnJ4dQvYyttUEIwLvzMHim4c7pkUTVoC/1E0ktDZnlLGkr2hykXecjZoiaUcFG0tNYSKUUSSkIlOV80q6KdpxMul8EGDjD4+T4yjsoJmrxh5HwO76gTMStbKq0ZJL6s6XhakTeaYEW0pZHEOTieaY5mJYMkRCmJXP2WTuib4o1z3BomV6HxL253OJGC8dKroy5ywygLiZRiUbU02hNbSaR4ZafLX762Q63d1VL6YJrzvQ8vME4gV8H9ee3Jr0aDFAIpHR+eLGmM47BbMkpDhJTcOy9463BOqCRfv9bntb3+z51LnoxLWbAsNVjYG/qstcfb5+t2lRW7Dq1f43cUa8Jrjd8onnZxPVxd2N4fF1wsGs7zmknR8rXP8YH+WQiVpGy0zxxoWvpJiLGOBosUPlxynNe8e7Tgmzf63DtfcrZoOF3UCGCUxYw6IYGUnM9LpqVhpx9Rt4Z+GrHRiUEI0kgxK1usFStlSsnl3ZsW7VUeWRL6IPG/fv8M5yzWOd45mDEuGoZJQNla0sAyLnyWgsPRzyLSSHE0Lam1IQsVVau5d57zjVvhFZn2LEXM51X51NpRNAZWuQQNFiUE2jjCwJNTy7phVmmmecskr3z2k4Vrw5RaW05mtd/KCT+QbHcjhllEXmtubfhmx3sXOVmk/KaraEFApARJGNBaSyA8ASak5GhWsdOLKVrNstREgSSLAsrWcDCtUQrGRUMcKpyr2esnXBvGpJHkhe0u7x7OMKtg/BujlKIxHExKHk4K6lajrd/qSQHCOSIl/JBjHXEQs6gaLhY1jV69Xp3X2M+rlvuTnIu8pjGG80VNICWBFDStJYwl2tlVCKxgkElaY9nsRvzxC5uMsohF7aupR53oSvXYassgjTCWVSGAJFRQa8OsbOnEPtsuDeXnsvt9XqXS06yFee0zNIZpRLNqUwqE4KOLnKI1PL+ZkTeaqrV0n9Kq+HnxVWqpXRM6z8ZXsVFzjTXWWGONT+P94wX/09tHlI3h7vmSLArY7MZXJMfl8nVWarI4ZNSJuTHMUNK7IR5cLHgR+A9vH7GoQTvLH9wYMkhDSm05Ol2w2425tZHRiRT/+GhOWbcYfBSB1opp3lAbP3+NGk0g/VL0dO4jRDY7vnHwbFHRtJZFrdHWsor3QvCkyuuTNJh1PhvMWgtSeCtezzJIw1U8ieRoXvrbY/3yapiGTKuWaaGJArEi8xy51HSTgK1ODORcHyYcLhqmRUurLZ1Y8XDi28R3ejFFpZkXJdpYpkVLP1HUWnB95G2H1/oxZWtojPPt7vgz9HzZEAcKZ1sqjW9xdBBKP2tbvN1xVnm3STdS1MayLL3N89XdHrUxTIuWDz/nXHK5+P7mzQFbnZhH04Kv7fWulq2Xt+1sWbHNOrR+jd9drAmvNX6jeFZuzzCLGKR+AzQpEv7NG3tXfvVf1GJ0rZ/wg4dz7l3k1K3lZF5jnQ99r1rDII1oDdy7OOabN4ZsdCPOlw3bvRgpYLPjL94abWm0o9aaaSGwTrDRCa9qnMXK4raoWrI44HzZ8P27U4QEbS2B9If7VtffvzTSxIHkR/en3B8X9OLAZ4CVLXmliQNFHEqUEMyKlmXVUDSG2jiyUBEHiu++f0Y3DXh+s/srUcTEgSCLFOBWhKSkl4RMcl9ZrZRkmEU+o6DVnOUN+4OUzU7EomrZ6saUjfaSd+etnfcvSnb7KdOy4bW9Aa/v93jncMHBpGCUxZwv5zgn6CUhO72Yexcls7qhMRBiWdYtVet/ppSSfhpgjWNWNcxLwc1RSicMmJQ1Va1ZbKRYB/vDjM1OxKzSBFKy3Y2unqONbujbsoVYBeP718O8MVTWXk1VDyYFkZRMy5bJqpggW71c3zlcsGgMw9Q/HnXjGw1rY5Gr2mdtLHGg0NZR1IY4VFwfZYyymDRSXBTNVRj7perx1d0uj6YlD8Y5+/2ELFIsak2sFHntq6tf2O6y3Y24Py4/0+53Oq9469GMD88WFI0hixQvbfeeyPj6+L33aWtha7wlM1AB53nDXj8B8XF+RxRIFo2mNfbqPfB4q2I3+vyvwa9CS+2a0PlsfFUbNddYY401ft/x+Ix893zJf//DA35yMGOQhiShzy2dV5pFqXnjep9eEl4Vwjw+k7erQp9JXvJiB5/FGknyGs4WFdNlQ9loxCpXNQkVF8uGedkAflHXGEvV+LyvNFR0YsW9cUk3kry81yOvDfvDhMY46tZgEbTWZ3wZ+2li67NQax92n67slNo4QikpGsNk2bCoNcZ662A38gVLdhWQb50n1ZSCvDG0xiGdn2eO5jXGgbE+VqWbhLTGt1n244Ci1RwvfTxK3mqO5oJeHHB9mPLHz29ezbqPz1R5bVhUmt1ezPECWtNQrxauUggQPmNYrBom40AyKTVpqBglIWEomdeavX5M3mi+1u1xvqw/11wihGCjG/Pnr2zx3Z+dcX9cfFpRn0Yw5fdyvlnj9wNrwmuN3yg+K7cH8B/k1wZXZNcvYzFa1JqfHc9552hOGkhGnYRe6ompSd5St5atXkgXPxRc5F7dNUg8AXW29DXBea0x1lFpC64lChV8otFESYESAivwP2dZ8vxmlzAIabXlcJrz3pEmCCR9G3DaWmrts6niULJsDM45mtawO0zJogBrHUVr0FaQxiGbgVcKhYFiVjb85zsXlCsyY6uT8OaNAdtfQF3zOJzzBN+7Zs60qBmkEZ1YMSsk46LGWIiV4mt7PZQSWAvfvDUgry2LquWV3S4PLkoqrVe2SN9G+IP7Y759e3QVcv61az2e38r45q0h/+NPjvi7exeEQvhMBuXVcn0lSFbtj5W2SCnoJgG1dizqlkRJxkXLh+c5m1lEpCTL2vDhac7r+322eyEn84osVF5BFqirO/loWl6RkK0zSARRINHGsawMgfQkRzcI6KQBs6JhnNd8dJ7z9b0MgKJp2e1lOOB0WXN7s8PNjZTvfXiBtZZhFjEtfQOkEgCOThywN0jIIkn5CXXWpeoxixO+dWPAybzi/qRcZUX413HetNwcZnxtr8f9cfmZ5ObpvOL/8+NDPjhdYO3Hu9KPznLunuf8n765/8R752nWQikExsLhrGKU+sw0bR3takCe5s1VFsYlHm9V7EZPb158Fr7slto1ofPZWDdqrrHGGmt89fD4jHyxrPnPH41Z1i29OKCfhEgpyGtNazyVdH9c8OJW52oGuZzJPzyds6gMy6bFrYLiB0nIuDJsdiPO5jVxKNnqJmxkHZR0/PDhjEXV0o0V3TjkfNVMroQgDCRprOgmAeO85SLXxGcFoRLc3Ojw7tGCRaXpxYpF2ayaAj9Wdn0W8XXlunN4m6ISdGOFUoKH44KzeU1et8SBotYOJRy19oqrUAlwAmMMTghC4Ykzax219j/YroqoZlVLYwyNtpSN4ScPZxSNZrlSrA3TkCxSlK2hn0SMsoDX93vsDlKEEE/MVJX2SrM4VAxiRSgjROkfawcopagaP18pJXGrZWwSKkbdGOdgUbXs9GL0iiD8onPJZynqX9vN+P7RL/oqXGONrz7WhNcav1F8kdyeX9RidLbw+Unny4qtbkQ3CpHSh2YWTUsWBWz3IkIluVi2bPViBqm3Dr57PKcTh1hrOJqvlD2Rz6AqaktjDcZ6UutaP7lSoJWNobWWeaWJlCALA39gu5U8Wwi0tcyWrd/YpCHHShAoiTZe0rysDXnjSRIlBbOiQTvHKIvoJ+FVdsFGFhJIkFKwqPwGaFo2/N3dCx5Nyi/UoHf5WP3/3jnmotRX+UxBIOhHIQbLvDJI4OZGxkY34tVdnx/wcFxc2d7iUHF7S3Ayr67aX7LIW/BGWcj3PrjgPK9QUlw1/f3xixsczyvKRnO6rOklAV+/1mfY8UH5d069OikMJLOy5WzhD+dOHLLRiSgbw7LWaOvVglJAFgWA4PXrA4ZZyF//7IxJUdOJQx96v6hR0lsFo8DXXxvnEHjyRkmHFNA6y/miWQ1yinnZ8rPjBbeBXhxSacusaumEAbc3PRF2OC354DRnQwj2hylni4qq8fkNaQiTZcNbB3OEgG/eHF2psy43rCfzimml2ep4G+jJoubyRdRPQr6236eXhp9J+Drn+N4H5/z44YQ08nls0WrrOisbfvxwwkYn4r/99vUnXhOfHIQabUkCiRLw+n6fYRZxMCk4WVQ8nFiKxmdXfHSe89xmxiCNfqtbFdeEzmdj3ai5xhprrPHVgXOOD06W/PX7Z5SN5uZGyr1zP0NmUUDVWmZVw043YZCGzMqWUF1GMAjevD68mg3fuN7n/kXO+6dTBknAsvFthfO6JQl8dIaSArVS2jfW8rWdHpNSM142NNrw3GZK/kDTXc1icaBojGWcezteYxwfnufsdkPOlzXg6MYhtTE0xl4RXWqlvvqsk9as1FlBIEgCQdEYlFAMUoO28ipvVEpPMDXGUrcW6/zjFgjnFVzOUV8+ntoxL1tgZZNEcrasyMKAUHnHxfmyomz9XL3di73SvTQkgWSnF3Mw9eTjTj95YqZ6NMk5nlcsasP+MGaYhtw7X65mUT+HLWtNIDXPbXWurJRp5P+7kgLhoGwdVWMIpM89+0Xmkmcp6rXWX/AVuMYav11YE15r/MbxeXJ7flGLkXOOdw/nAGx1E+6Oa17a7TArNZ1QMq00tTZs91JwnvC5vZnRiRU0sNtPcdaSRQly5fkPlURJwcNJwemiQiBYli3TwOcsLauWi9wHbjba8Px211v8WsOiagmUZG+Qsj9I+V/fO0VJT3QJxJWCLFSS1vo2mVpbJJC3hm6k6EQKIQTGOiRQacMwi5jlDe9rn6E0SCVS8IUa9E7nFd/74JwY6CchcRhxL/P3sW4dudBIIUkCyf4g4b/+5nX++IUNBILDWcWDccHpvObWpsJav43KYnXV/iKE4B8fTvjv/uHAE3dpyG4/Zaev+PHDCWeL2tdUr6TjW72Y3UFKJw6uVHWNscShpNHOy88l1K3BWEGkBP0kwuI8UZaF/NELGzy32SENvQopbzQ/uF+w2YlojWO89NJ74WCYRqShIa8NtbMoadFWEEqvrDICsjjEOEhCcRXmeb6sSZOIvX7yRPDnn7ywjXWghGRZa6aFBgHPb2a8uN3DYfnJowm9JOJPXty8eh6GWUgnCvjf3jshjbz18bmNjIui4WK1Mf3L13b4P7xx7altjI9jkjf88MEEpeQTaqVEKuIg4dG05IcPJvzFq9tsdJ9UA35yEJoXDd/78JwHq7yyR+OCqvUk43Y35voo5XhWrmwSPSZFe2Wz/G0bntaEzmfjq9qoucYaa6zx+4bLyIK/+tmpbzjvxSxqw+GsoBMrRmnERd5QtZZJ0dCNvRJpUWmq1rA3SNjpR0xyPw9ZB6/udXnveE7ZGv/3mz68fdhNOJiV9NOQsjVIIWi0odIWJeDaMObuWc79cUmlDVvdmLw2FE1LXhuc8I2KzvnZ9ngBJ8sxSkIWKZwTCASdWFAbb+uTsMq0ejqU8PZJpaAxDueEtxnOLbV2bHVjWmNRQhIpy8J5FwP4f7bu0woyB7QrZduibCmtIFotR/cGEXnjc8YiJXFCkDcGJYV3VQhvRTTW8eHZgm/fHjHqROz0E153jmXdMq80/ThgXhk2s5BeGmLKlqq1pKEkjQKiQGGtD5Bf1C1xqLBWE6+iTKQQLBvNc5tdOrGiqH+xueTLVtSvscaXgTXhtcaXgp+X2/OLWoymRcvhrKQPq0wAx7V+ijbF1e+Z5A2N8W2AgYK9lVKrEyv2egk/OZiy2XFcG6QfKz6cIwokm52EQPrNUNkYpkVFpf2Gp5dFWAcbmffY3xil9OKQQRbSjQPOlzWBEixrTbbKVWiMJQok1lmcdQghOJ5VBNKHxyspcU5gnaNofGtkJw5ojeV0USNzH6wZBf7QU0KA5KkNet95ZetK+RUpwVuPZsyrhm0gjSQfHuWEgeQ7r2zzcFISKEkaKCrtA9b/t/dO+NnxnCQMiEOJXuU8nS4qOlHgib2+b38RAr5/b8zDScluL+aVrS6NdZwsK04XlVdb5Q2BFNTGoI1hUkBr5lwfZQRCMC0/lo2Ply2DVZZXawxF62ucX1y1Fz6aFIyLkE4c8u7RgrOFV4z9+cvbfPdnp3x0lrNcteHEgSBSirC1XN/IOJtXHM5K9EryL5VASMFOJ+L2RsrFsuZgUvCN/R57QFFrumnMzWH6RMtNHEr+ye0Rf/riFn9z55yfHS9IAkWpffbD5fZwVjX8+58cUdTmyoYqBDgE1lrq1tCslHDDNKDS0M8i9gaffi98EmeLhou89q2ST3nfbHYijmYlZ4vmU4TX5deMOhGn84pHU98IeTqv+eh8TGsM1/oJ3TikEynSMGAQCw5mJX9/z/BPbw9/462KvyqsCZ3PxlexUXONNdZY4/cNl86Ho1lJ3RpubWQoITiaFhzNapLAxxEM0gglW7pJSL2y083KlkEaoI3jf3n3hPOFJ7y2ez5AXluLcz5oHqA2htNlTdkYwtQvfo3zxT7jvOZgWmItzCuNXYWtR4EkjQTnS0NtLEkgCKWg0mJFOjkEglZbcufn9MZYQCARtM4rsQAi6ZehZnXfBZe5W4I4FDTaoa1D4omyunUczkq2ugmDNOB0WTMt7Uqx9aRVUjz2Tyk9yRateKNSW2oj6HUjX9rUSXCuIlB+sdxPfQHWdjelGyta46haTRL6/LBLxdXpvOKv3z9nVjbcHGXs9GJ+9GDKyaIiChS7XUWpNXljGEWKWaU5X9Y4HL0kpBMJytbxaFLSTwO6ccAoi7i96Rf2v+9zyRprfBGsCa81vjR81pahas1Vw6EDOrG6aiSEZ1uMam2vgrRDuWq6CyS3NzucLmrGeU1jvKpqsxPRiUM2Vxf+AsHuICI7VVzkLRsra12rLdOyYaubrAiQlsb4OuEwFGz1Unb6CfuDhINpSWss758sOZyW3NzIrtpxnIPtbkysJB+eLQkUDNOAvPFbKSklWeSotSWMA17e7jAtNUWr0bWvcL4x7NCNJT96MGXZaLpRwEYnIlKCB+OSotHsD1LOV/ljlw16bx/O+X/+/QOvdLIObRwPxwWvbK9yqWp7FUgupaKfhtw5zdnpx+z2EuJA88HJgrNFw/4g4dW9HpudmEEakNeWb97okIYhYeDl13dOlxxNS3qx4vowRSpJonxO1z8ezADYziLePVmwqFsWpUYIP3w8HJf0V0NaJwvRxiGlV3PVraYXRywqTRxKNrOI40XFyaLmDze7vLTd4W8/GnPnfMGNUca1nq/kTkJFEkkuFg1S+IHpMpMqCiU4Ac43Ujrn0MZvGO9dFJwtaurWsJkFvNyBk2XDaWE4nJX86Ytb3NrsPEGKjDo+JP8Pn98kixWH04q3D2b0U9jpxVjnN4hvH864yBu+eXPIsta8vt/l3aMlD04WPqtNSfb6Ca/vd1eKsSfJ3aeVOVx6aJ9FO6wixfj0fvNjPG4l3h8kdGLFuGhodUA/jXh1t8ekbBnnDYtVrl6kBN+8OfqtbTFcEzo/H1+lRs011lhjjd83OOd469GMo1lJFilaa4mVz3za7XslVq0dee0XhEoK9oeJbxpfVowXDTv9hK1uxIenSy7yBmMtjbbc3Ei4c5azLFuuDTyBEknJuGyZFn5J3IsD3jtaIIC750smhZ/btjohO72Ecdlwvmo5187RiwM6kWLZGEptru5HFEi0FRjncM7ivIOQSAlq7e2MSkAgJWAxdkV0reyO7vLPijyzOF8uJTwJltc5ceCXsg6BEIIsEpSNfYI8k9LngWnns17TCMCQxQpdOoy1OA0n84pl3RIpX9oknI8UCZQAIQgUNLUnArNIEa/myEuXyu3NjKKxCCF47VqfzU7E24cz8tbQCRWjzJcsOcdVbtfLu10kkuO5bxbX1vD6tT6v7/cJpOTeRb6eS9ZY4wtgTXit8aXiaRftZ4ua79+d8LOTBR9dVip3Ym5vpr5JhGdbjOLAe9sBsliy0Ym85Lsb89xmxigNwDkGWUwn8jXCnVhd3ZaqtfzZy1u8d7xgVmlU45v+rg2yq98/ylqU8qGXwyyin4ZEgaLVho/OPUGy0Qmxq8PreF4xL1v6ScDX9/uUtWGc1yRhQCAtoEkDL+ceJCH7w4RQgpKSUudY59jpZez2U0ZZwHvHc2ZFSxgIdvsJ3TigXYVxZqFiXjecLiSNthDDvGo5nVeMi4bvvLzNbj/meF5yPK8IhONbAhpjyOsWJQQOx2TZUraGjVUz48GspbWO3V7Mw2nB8bxmpx8jheRsWfA///SUWxsZAq/YejQp2e5FxIFahfx71MbhrCcLT2cVea3Z6kY0raVoDc562+EwjcgiRaMtx4uaOBD0UkVjDOOyIVk994ezkvMVObk/jPnhwynvHs+RwM+O5vzD/QmhEHxtr0upHUrkTMuWQSxpnW/rDKUgCgRRoNjuJkjph6eiMQRKULd+Y/dwXEIHtrsRs8pwPK/53ofnfEcKGmMZZBGv7/c4WzScL2uyKPBKtmUDOG6NMhACa30N9rVBwqxseOvRjItlzThvSSLJa3s9pPCqvkobjmeNbzR6jNz9VJmDlAyykM1O5MNjFzU3N9RVk+jqBc75smazGz+z3ODxIW2YRtw5z3m0CoHtJwGPpgXdOOSPXhhR1JbWWqQQTIqa/m95nfWa0Pn5+Co0aq6xxhpr/D7ig5Mlf/WzU+rW0FrHwbSiaAzXhxlZpNjp+hwpEYsrBb0UAucsd88LuknAP39+k5+dLvnoIvdFS9ZxOJ3zo4cThHPUxnI0rWEHDhclURCwqDQXeUOsJEII0lARKMF2J+Rg5meXF7a73B4lvHu8pF5ZH421LGooG71aPProgLo1VzldSkiktNTGYd3HM45zXmkFnpxKQl+WZI1nu4rGIBAIAa3xbYeB9AHwxkLZ2lWDo6Q2hlY7AgnO+rFoZYZACEkgHNvdELFSgi2LlkKDdpZhGlFrQ9la7Mo1UrQ+J02uzr2mNeSVZpCE7PVSBmlw5VJJQsnbBwsu8vqqMGmjE/HHL2wxKxtubWRMi4Yf3Juwtd1lkIU+bN9YtLE8H3W4vZlRa8fNjYzFyqmwnkvWWOOLYU14rfGl4WkNjN044GLZYJ1lf5AwzhvSQHI0K5iXLW/e6NNPwmdKeYdZyP4gZXnu//32Rsai9KHogzig1IYXd3pMioZKw3YvxFqoWn2l5PjOy1tcG6a8czBjb5AQBepKYeac42xZc2sjY1LU3Bx1kBKWlebd4wWBFGx2w9WBLrwySSk+OMvZGyT8t9+8zluHMz46V9zYiAmkZFlpHk1LEm3Z6cf0khCH489f3mZ/tODdozlZFJCEkmnR8mhSYXH0kphB5tVE1lkskMYBZaNZ1obWGByO+xcljTEMkpAw8LL0QRqx04uZVy2kcOdkycG04kjUKAHjoqUXKQIlqbRlWjSEUnC0qNHa0boWQYwSXik1mVUM05BBJ8S0YJ0lVsq3IWofHAq+5vrSzmidY5CFSCWv6rO1sRSNptWarW7MRd6QBJLO6nXRtBZrINeGvDHMSs0wi3hhK+N03nBRNKhLG2Rec35RMExDjhcN2jiUlAig0hBIOJ5VDDshwyxCAkhwSDY6ilnZMs41oZR0koA49MPNrY0OJ3nrrY7TkrcPZvzrN65xbZjwzuGCD04XvH+84GBSkkaK80VFLwl9KKmS4ByBkkRKsdNTHM0KDqYVjbHcGD5pReyvmiWtc0SrcNNPljnU2jdU/s2dc5T0toGzRY12jv1BShj452BS1GjreHW3R60tk7z5FFlxOaTFgeKdwzl5q+kmAf00QAo/qL59OOPWZsb1YQpAXmviQP1O5FutCZ2fj3X+xxprrLHGbxbeHnfG8bzi1kZGorx97mhWUjSG/VXEwkVekwTKzztKMM5r5pUhDRV//vIWlXa8s8q57aQB2lqqueF0UbPTjRilIZO8AuDBeY52CovDWggywXMbKbNC01rHed6y2fHZXn/zwTml9vEUftnrMFagncGALxyKAqxzNI1XmHdiX2ykTYuxDovzO7pPhNaHAtJAUbQWIRxyZXUMpKNZqb9iJUE4gpXyS1uf1eqzvAStc8SBwBmfB2ucV3hlsfJRH63FWa//so6rBmqHo24tEkFlvKItrz2hp42hblvuXRQgBHsODmYl3/3ZOTv9mHHecLFsKFvNMI2uWtuPZyVpGLDZjfiLV3eYl76R/NZGh34SwOp3XCr9k1DyaFLw5y/trAix9VyyxhpfFGvC69eMpymY1h9Sn75oT0JF2Wr+050xRd3ynVd22OjEXm1S+83JpGz42fGSrV7E8BlSXiEEX9vv8/078GBcsN3v8PVrfT48W3B/XBAqyYvbKd++NUII34zyaFp8SskhhOBi2axun/oUKfbm9QF/d/eC00XJ2aLlcFrw0XlOEvqQeRdA3hhO5xVVa7DWcbao+cnBjCwMGGQhTWtZaN/GFyjhCbw0Ylm3nC4aTuc1//qNPZ7b7PDDBxOOZuWVsm27lzBMwyuSQQqff+BW0u5hJgiVIq8NF3lNJwowzts8wQ8aW92EO8clpHCaN4wy/7uVgHnREMkEYywOyKuWUCmqRmOtY1pqnMgpGo0xlk7if943bw1ojeXtAz+ctMYTLXv9FIS3O1baq7l6cUgcBrTa0EsjOtaxWGVBTCpNN40YZRHX+hFpGPK3d88pG0MWSlrr5e7NKj8NfGjpbj9mUbV+OFvd12WtMc6x2YkIZAD4rLRaW6xz7A8SBmnMsmw5y2ufz6Z9a5BdhZtudGIGif+4VBKe28xWrTwlu4OEm6OUHz+aMSsbdvsxe8OEdw8XTPL6Su2VRIp+EhCHitf2+nRihXU+dNVYB9Yruqz1LZ1JIFcWxI/th58sc5hXLT89XJA3LTeGKdOyJQkltTaczr21II19MGyjoZcELOqW//Hto6cWGtTaUmvDNNfkrWanGyOAfhoxKRpGacDxouL+Rc7+IFkRqjnXRxnOeTLzt/3zbU3orLHGGmus8VXB5blfNpqdnl80ylUD9tG05KPznNO5dxYIIQkkXBvE7PZTemlILw64yGte3O7y9/fG1K3mWj9FKsGk8OqrUArmteZsWSNWxE8cKkIkzjpKbchCRWugNpZQwqL2+aTVSgUfSkkaKWgsxjgcDiUB6ZVYXrVu/d8LQRxIXwoUKdLV7NqaJ+MWJJ6cmlaaSIBiZW9chcS7VamQFH6WCpT089Tq67R1RKvCIa0dWRygtcUZixCSWAm6sWJZ+WXr5S/tBj6rtjG+adsBVWuxFgapd1W8dzyn1o5OrPjD2xv80QsbxIHiztmC+xdL7l8UGGu5uVL3Xz6mu0HCw0mBdY44kOz0Y7a6MYEUV/NT97HynMul4k4/Xs8ma6zxC2JNeP0a8TQF07Ma836f8KwGRhAEEpSSPJgU/MH1ga9LHheM8wZr4XBW8sb1Pn/8wuYzH8NLu9bzm10OFz574MYo5Y39IS/sZFwfZlfKsKeRkc45QiX5+n6Pj04LpmXNee6eIMW2ezHvHM74X949JQ2Er1PGh3MuK2//u7mRoYQ/4DY7IYvah1qWbUsvDggD6YPSJdwYpEjp1T9la3hpp8u8ann3aMFfvLLFd17Z4nzZMisb/ubDcz48XbCoDbOqJQsDglVrzUVREQlfkRwFktZYWmOoLVwbplf2TYHg1kbCewerTVsoGWQRH50bLpYVkRJoLHcvcnpxQKCU/1nWXQ0QaahYVC3agLOOWdUSKcWoE7E9b7h/sSSUEEjFyaLyGy4JjfbZWZ2+pBsrLrS5ytWKQ0E/Tmid5Zu3hoyXNT89mpPXlrLRCPC5EVIQSi9tn5QtXOS8fq1PEiq6ccDZosJYhzYWJS4tlYLGGEadmK1OyL2LgtZY/vmLW2x1Y/7+7oRJ1bCZRQRCUmnDsl6ipGCzE/q8BqBsDI2V5I0mDiTWOn5yMHuChMor41s6a03VWoxrKVrDRd7SjwM2sojDaQlAow1ZpDiYNjx4UBIr6YNfQ7UKTI3Y7EQ0xj1R5oCA+xcledOy20tACIZCULaGP395m58ezXHOsT/IMNY3BfUTH85+mU91WWjwF69us9NP/ABqHSfz8ko9CD57rqwNk1ITKcW0aPnofMGds5JWGyyOf/+Wvvp8G6Uf21h/k1gvGNZYY4011vhdwuW5f2szQ1s4mhV0Tcj5oiEJFRudaHU+t3TCgL1Byr96Y4/nt7pXeVL//q0jxrkvz8niAO0A7cuQpPTEUGstrXZkq1lHG8ei0aSRxDi/mOvFCgi5WDYsK03RenLMOTDCkteg7WpPZ7zSSgmoV9+vrUMJH5taNoZae2KsnwSUq591qRW3fBw0Lxw0DpIAHzWhHXrV6BgHkqq9rGH0v1sJ/wfhbZ1x4Ek3hb8tQgp6iV86TouW1ho/g2MIpVeeZXFIoC3Lur0qNRpmIdu9iFpbzpeGWEn+ya0Rf/Li5lWJ0XNRh58ezRnnPurB8WSuqoMn4ibWpTlrrPHrx5rw+jXhaQqmp11g/j7iWQ2MrbFXSpxx3pDXPiNrkIbktaHShrNlxT97buNzPXZ//soWectnXvx+clvytGykYRbxwnaX68P0CVLMOSiblrOFoWkN46IlKoS3qwWCZaUZdkJu9BMa7UPnB2lEZ6BY1oazRc24aNjtxSB8VtS0bJBCUDaG46rmveM5Z4uS/UGH57cztroRN0Yp98cFPXz+wKJuKa0jDgWxUkSBXDVMSopGMy81G1m0ak/8+P4rKa9k2xd5jZAGKSEOFIUwXCxrlqXmxe0Oo07I+ydL0sC31PSSiFD5OmmlvKpnVjZMiobWeqn2pAg5mlV8a6dL2TiOFxXTomGjEzKvIgLlf78EGu2f+0gpHxhqHaMs4mRWUdSGqjWkUeBzG4QP+78+SDlZ1szLhqJuub2RYZz/WdOiZVq2OKDWBiUhbzRpqEhDtSo3cHSjgF4cMOrEvHG9z+myojUWKyxYx6gTrWJRvYIM4M7ZgkllfdtmFDDNG84WNX9wc3BFQl0OcKcL33jUGksWBeAEAse7x3POlw3dWBGHioulH1x3ujFl69s7l7VmlEXs7cX0Vmq+WlsaY0nCj9V7wzS6Gp4iJVlULZ044J+/sMnJouI7L2/z/knO8bzg+a3u1Wugsyo0uHeR8/bBnH/RixlmIVudhO+XE7Yfa3HsxAG3NjI+OFsgheB8WVPc1wyykG/dGrHbT574fPuzF0ef+/PgV4X1gmGNNdZYY40vG7/qxcvluZ+GAbc3U2Zlwwenc8rW0ksDUiu5sI7nt7v809sjGmMpG8tuP76aV/cHKf/5o4urWWpWNoRKrPJKfQN401rMJbuEV7Nr65ewOJ8LJoXvUzxdVGjtWO1scUCzSoS/JKwcXiVv3MdqK//4eDKtsJf2R5gULcb63ymAVZzWp+p1wiDA4bDO+JB35aMyokBQtX7WQvifaRxI52hxxKFvMY9DybATEqxKrS6WNbNKkwaSXhIALZvdkHntmJcNnShAIhhmAUkgSaOAvX5CFisOJr6k6iyveevRjD+4OWCQ+kWhf84hUZJHk5JOrEhChYQr18pGN6Qxbl2as8YavwGsCa9fA56lYHraBeZnfYA9fmgqzDO/7rcNj1+0P45QSYJVxpI2PhAbvMWomwSIGoZp9Knvexa8Nenzb0SeRVKezCuq1rLz2PM1LVo+PFtQNIbzZYO1ltoYqtbRT0I6ccTZomZvkCCAadlwbZBdZYG9uN2lNZ7Iaa3jIq8JpKSfhixKzbxqGSQhVWN4cFHynz8akzeGYRqSRop52ZLXhlEn5MYwRTvHomzpRoqtfsKoE3EwLYmk5JW9HlVjsM6xrDWd2H//3390wbvHC/7VEN47WVAbQSD9ob8/ypiXDZOi5WhWrbZgDUsp2erF9OMAY32QehpKskhxMq/44YMxWRysnkfHIA0JlGTUkfTSgM1OxK1Rwn//40PeOphhrLcVFrVhkAYMkoBp2XB7s8uyar2NLgtRlaBcSeEva6AXjeHaIOHhuGRetdw5XdJJAspVO6UUvtdzUWkWlaETWbSSPBznFI2X54+6Ppi9k/jH9ZWdHifzmlEWMClbXt3r82Bc8GCco7WGDV+9XTS+jUcIL+8/nlekJwHWCS7ymjiQTIqWbhwyTCMulg1x4JVbs7JFasGRLflnt0fEgR+ItLE8d31wJcmXEmZFw71xyb96vc8wC5kWvimoan2+g7aWMPj4Nd4Y65tJV9aCYBUyO6sadvvpUz9vOlHAu0cznt/KeG6rw5s3BnzvwzMOZiU7veQqA2zZtLy43eVaP+H9kyU7/Zhv3RxQto551RJKye2NjPvjgndXGSG/KawXDGusscYaa3zZ+HUsXuJAXp37l/mr//BgTFEbxkWDALIo4Gt7XW6MMvJaczAtrpqdzxY186rlYFry/skCu3ISYN1VMHwvDnz8hnOIVRzEpb1QON9IWLWWo1mFwJNblzlbgiczt1ali6ziuBCrP6ECo8GKj4mwWPmGxLI1WD4muj4Jh29UHGYh/VhxNK9ZVi2BkjjnIyCqFWEXAKHyRVBC+u/VBoJQULaWOAy4uZGtIkgkalrx5vUhs7wESorGriySviArCSX7g4TjecMgULyw3aFoLCeqpheHNMYyKWvuX5S8eSNEIOjGfi7TzjIrWx5O/MK0lwS8uN1dXRtyFUuyLs1ZY41fL9aE168Bz1IwgSdhdnrJE4fR0/CpQ1M4+vgw6v2N325Z6+OHd+cxn3onVmx2Yu5fLOnE4VXeFPxqZb1P274BX4ikfDQp+P69MVVreXErwyLIq5aTRYPFDxNFo2m04WRh6MQhtzdTcD5TqtIGIQQvbHfY7MYrsk/w0VnOvPQWtXHRcLasaYzBWEfVGEwcECqvOosCr95qV+ThZifm27dG/OlLmz6EU1vmZctbj6Z878NzPjrLfWVyKDmeldw7L2jaFoC6MSz8/yVQgrDW5I1BSUk3CVjWLaGSKAGttit7pmJz1bB4kbc4Z+lGXi3VtIa7FwU3Ryl/8coOgyxiXrY8HBf87DSnmwQEQnA0rQgDvx+8yBvOFhX9NGKrE/Huqv66bL2V0llHN/Jbs7q1nC0r+kmXYRaiBDyaV2xo31S43cvoxYoPT5eczivmRcvZssIufCV2Lw7Z6sU4B+8czrh7njPKInCCadkwLmpubmTcGKXMqpZ/fNTgjCed52VLP0vIooB+EqAU1K1jVjbcv8hpjcFnihl6sUIIyagDaRgwzn04/XC1BdzpJ8xKzevXerx/uuTDsyWv7fVIQ0VjLK0FaQ03R9nV1vBS+u4zHz4uBXDO20r3+gmdWFE0Pu/NWzk/TTBPi4b744KLRcNZXoEQfG2vz+v7Pf6LV7b524/G5I3G1O6qqfTWRsLhtCKLFdcGCW8fLRjnDXpFtG10Ira7MYezkv4v9S79/PhVLRjWWGONNdZY4xfFr2vx8vi5PzI+jkEJyc0Nn7E5LzVBIFZNjBG7/Zh66XM8D6bl/5+9P4uRLLvPe9HfWnveO8acs+aq7q5u9sBBIkVKIiXKOKalc4xj+OHA9zwYMGBfwLBswNCTDeNewH4RDAOGn2zYD9e4uIAPDAM2bJwj2aKPRVqUTIrioO5mT9Vdc+WcMcee11r3YUVGZVZlVXezq0g1Oz6gOjszph079o7139//+38f373Ro9KaFzeb3DyccjAurFJLCAJHMi0VRa3wHIlBI2a6qloZpIDaGOrKqrnUab13AfIBo/n5KOKx35UViiGENaIXAgLPxZ15uz6s5zoJDbOxSFhKfOt5hVXvT8t65mI7U5tpg+sIAkdQKvvXstb4nkPk2ymCwHPIKm2nB6qasrav7zuCXAt81zDNbdjQ/qTEc+CZ1RghJI606n0NKGNr08NpwbRQNAKXaVGRlpq8KrjYjTjTjmxzt1bUSnMwKfjs+e6J65lFaM4CCzw9LAivp4BHKZiOEHoOB9OCoj69lXHqolmUAHzr2gFf/ZT7sWb7HzWvfuQr9d7+BKXt4qe0eays91Hk1aPwqO7buW70gUnKTuzx2r0hk0Kx3vTxPXsahZ5DHLhsj3KKsiYrawZpzfMbLS4uRxgDr94b0puWpEU9T+WrNbx8psW0tN26TuSjjeFWL8WVAne2qG60wxlZ4jEqaq52mjiOYDnx+YXLy6w1raHl0fbvjXJ+eGfAIC0424l4c3vM27tj9kYZWamREo6slgLPITfWv6E3LVFKUyrDuW7EK+faDNKSN8yYyHfISkXoOTyzllCUiu/e6pNVirPtkMh3KWvNsKg5141ohS5v70y4vBrzJzf7VEqx1gw5047pJhPu9FNKZeXmrhQ0A4/Yd3l1a0hVKzzHYVJY765KaSLfQQpB6EkmpeJwWuI7kk+fa/PG9piVRsiFboSUcPMg5U4vY1LWlLPuYSNw6UQ+7ciln5V4QtKMPHzXJvykpUIZTeS4BI7kB3eHZEXNpZUEDwWUuI4lmdptb+7T9u7+hEpphmlpRwjQMz0/FFrRDD06sS2CfNdhvemT1YbQdThUJctJwPPrgnuDjEFa4cgax5GsJAFC2ONca80wq1lrBdw6nLI/sWEEh9OcbuQzLGoSz+XiUmw//xlBvNr0HyKYB2nJ6/dsCmPkSlYaAd3YmxfmL59tUSrN7jCnHXs0Ag9HWsI99l0iv+K9/SlZbdM//dB2OXdGOcO0YjmRPzHC60k0GE7Dwg9sgQUWWGCBD4Kn2XgRQvDSmSa3Dif897cPmVYVrdBFIJgWNbU2eEiu7U04mBSsNHympWKc1eyOcwZpxZl2yJ1+hhSQhC71rP5tRx4Hk5K0sl6iTgWOPDJ9t+N2R6orV95XZh3huJLrxP449vPo3dazECAX8D0BSIKZTYbzPmSX3ceQFVZNbrCeY64UuK6k67uM8xpZKQpl8AR0Io/Qc1FaMchqamWTGjGG3XExu86AbuQxSGvM7HffdahrQ1YqEAJlDFIILi4ldGJr9RC6kmbosT/OCVyH0HeYlrYBrY3mT24OMBiUgjd3xzR8l3bs04lc7g1yHEfy0pnmqTXLwph+gQWePBaE11PAoxRMRzhK2juSsh7HoxbN2HdIgVFefuzVCo+bV++nFT93oUM39hkXNYdp+UhZ76PIqxfW41Nf93Hdt/f2J6Rlbc3AT8FxknKQVvSmJe3Iswktvpl7KEW+y7mOVcG0Yp8LSzEvn20yyuo5wdAOXPIKzjZjAk+y1U8BWEo8SqUIXMnuMKdWhvOdmP1pTuy5eI4gqxVK28X23iDjpTMtBIL12RjjEY6Oo7v9lEle86PtEeOsIquULUCkQQgHIewCPylqlJYEjjVrP0wrNpohjmPNQLPKel6posYBtocZkecQuJJm4BJ5DkkwU4K5DhutkG7ksTPK+b03tvEcSVopzrYjrh9Mub4/ZX+ck4QuLaATB3QSH1da4rOXljjCRlu3Qts5K2pt02o8B6MNAk1vWnJ1vcnllQb9rOLKakJ/WvHe/oR+WuJ7AlHaQklKOyqblhVFbfdDEkDkSYpKE7rW/2wjCGf3NVxejlhKAt7cGRG5AujzzGrCqLQkXeI7aKAVeXiOZJhWrLcChnlF4Ep6aUk3sT50RhtqrVlKAiplaIYuoScpa824qGjH3qwL20Ybw/awoDctSMua//PV7Zm/miTwHIpZKpLrQFEb7gwyLi7FPLvaxHMkNw+nc4K4m/gnCGaAW73UpjAmPnuTgs12zGozYLURcPNwys6w4KtXV/nR1tiSRdn98/BsJ+T/9+1bjIuac537Y5KhtMfD3UEGRnLp4a+3p4KP2mA4wnGC60iNuDXMFn5gCyywwAILPBaParwYDNNS4buSa3tjPnu+zdIxf8wPgr1Rzo+2xvSmFfeGNvmvVAatbZhS4Du0Qo/AFdztTfnR9ojQldS1vV8zcPn+7QG9tORcJ2KtEdJLKwZpwcHE+qqGpUNVW5uNvJwpvGx4NGBTER0pwGiyWZjhcSLrcTgixRCzWswReI5LrTVSGpRmVkM//onEbMwwqyzJp7QdcxTYbVtqBATzsCaNKyXLDZ+9UY421iaiEXj4rg1cun5Qs5x4bHQibvdS1lv2c/FdSW0MXmS9alcaAVobmqEzV9QjBCuJz84wRxlDVSuksB5if3Kzz91+ymorYKXh008rBmnJ1jDlcOry3FqD1UaA7/50wn0WWOCTiAXh9RTwURI3HqdWAFht/HhqhT9reL959dX3kfU+Vjo+SnmwnHi/7tsb2yP2xwUXl+v57P1xHCcpi1pjDGy0QnrTkkFWkvg2xa9WhmlR43sOr5xtc6YTcfNgysGkZFJUdCKPYV7RDH2e32jQCo9ey3aTJlkNGpaTADQkocPO2OB59rmVMmwNM/KqZpTXaAyR5/K5i50Tx8MgrXhrZ8jeOOdOPwOjiXxJXs1ij42VZCMsKyGFoNa2mycQaG3oJh5aG24dTmYm8p7dz7VikFYcTq3aZ5RXLCcBZ5cinllpsJwEVErxo60xk6JCG4MGmoHHq3cHDLKKyHeIPBcpBWlZszexEvu9SUGpDN3QZZjXM4NVm4RYa80w03hljTa2yGmGkvPdkL2JNRe9tBwjTModV7DeDCmVYlIo1CxWulaaUQ6hazDCRmbfPkyJQ5ez3YhO7FPVmrv9lHcGE37jlU26SYDnOGD0vGoLXUl/WrLRCpFC0Aw9zi9F3O1ldGKfflpaY1WsMi2vakplcIREaY0COo7kxsF0RvymrDZ8GqE9zm8fpEyKklrb42x/nLM/KVlrBnzufJeVJGB3lOE5Pl+6ssxgWjPICsZlRaEePo/WWj63DiU3DiY0Ao/DcUnoCO4MUgLXZaXhgTmpiPrchQ6/9sLqQ+dhf1oenVQ8+A0lZn//SeK0BoMxhmmhZqlTGk+KUxsMRzhOnvemJTcPpviu5KUzbc514oUf2AILLLDAAo/EaY0Xa3OQcTi11hSTrGYlCfjK1ZUPvIYcr3VXmj6XV2N8xyZf3z7IqNCsRyHKaPbHBYfTith36EQe07JmUtT0puWsJ2t9XOPAZbMdsJTYpuSllQSB4PWtAWutiDTPgYrawMwDHs8R1herFidGB99vtReAmv0MHUugaW0oaltrtyOfSV5T1NX77gtlIKsVCEvASQFIgak0k0LRDAUvbDRphh43DiZc37freW2sut+RAkcICmXrGW2sJ5oyBoHhTNc2y3/uYpdSwSCr2OxEPLuS8K33DqiUVc6fbUeU2jCtas52I0JXsDXIWWkF1EqjtLVoubKS4EhJN/bJq4haafpZRTvy8F3xvk24BRZY4MlhQXg9BXyUxI33UysEnqTM6p+JL8r3m1c/InAeHC1qR+5jyatbByNWZ487evzNgylvbg+tT9MDEEJwcSlmf1xw+zDlU5sPj00eJykHqSWu1pohStu0xnFRkdYGRwgaoY+vNJ+/sMQXr3T5zvU+r94bzRRams12zMXliHZkt+WZ1QbDrOTLz66w2gi5O7DeV9+7PUCbWcqf1gyyiqKyZpq+M+voOZJ+WvLdG33WmuG8iMorxe1eSlpoHAFe4NpxtNBhWkpSFLVmplqC0JMUyo45ehJqI618vLJJhJ4UrLRDVhu+JWnGBb1piSMEm+2I9VZIpQx3ehmt0OV2L6OflsSeRCAw2pDVCiFtAaU1aAzujGhLS8UwrylrbX+vNVltDVTz2uBJYVVipZoZ13s0A+tT9o23D2gEDr7ncLuX4rsCgbRk3NAqxYQQoEFIgTZWCi+AwbTCmXmixb41ug88h9VmwLv7E3aGhfVZSwJu7g+gAXd7GQhJqQ2RPyX0HDbbEdOi5gsXl3h+s8HvvQH7E7uP7g0y9sYF3dgjCV1KDbEr8T1JI/C4supwfX/CjcMpm62QmwczdZor6UQuUkiUqXlhvcHetOTOIOXTZ9tcXmlw83BKreAvfmaD4ex74eg82h8X/P5b+3MFZFFpitqqKO8OpgBIIWlFgrd3J+xPSi4uxTRD77GKqFIZVpsBUgh2xzmdWRd0nNf0s5LYt+EEZI8+95/kuOCDDYZhVnGrZwvdqtYM84oXNpqU9enBH8cvKFabAbvDwpK0xsx97zqxv/ADW2CBBRZY4FQ82HgZZiWv3R0xLSs6kW8bLhruDlK+8fb+B2qcaK359vVD7vYzLq/Es9dxiT2HS0sJu6MCT0qK2oYnDVJLGvmOQ1lr7g5yHGGbiqHnUFSanTKnrDWN0JsTY46wjdBm4BMFkvemdvF2hB1jBJvgmFc2/fDDtLSO7isFGCOser42FLUh8g17o4xJrvgwVzRaG4wxeI5AIujGPnqmpHtvf8LnLnS5strgYFLiSGF9RUc57chnteHbsUxtKGtFK3IRxirlx3kFEWhjKLVhtRHywrpVzb+42aIZeHz/dp939ieEnsRoARIOJhWB5/D8eosXN9uzejaiVrapCsJe03k2SGhvlNOK3Mc24RZYYIEniwXh9ZTw4yZuvN84ZFHpR45DfhzxfvPqp40ttkKXd/cmrDQCpoWyyYdHPmBCsNoIYQDDrMLkmtfuDfnBrT6v3huy0gg42424uBTTOUZ+Rb7LStMn8l1uHE7nKX9HyYadYyRlJ/Y42405mJYsxT5pVdNN4pnXgWZ7WHB5JeGLV7qstyO+cBlu9aasNgObCjNLajRYFUpeKYZZTeS7fOXqCt94e5+DSUHiOzbdz5HsjHLAem21Q49hXtOJPDRwda1JpdSJC/G8ssqm0JFoAy4CbSB2HUsEZTVa31foFLVGGUFVaaQwNHyXUV4ihbTRyp7LWjMg9iW11qy3Iy4vR1QaurFvlXaJz9605Ad3Btzr21GwtFQ0fBcwlMoQ+S6eW1Nrq5IbVzV1bYg8ybSw5vyhKzFHJvWhC9qakmKgFbk4wiqs0lJRGUPiC9ZbEWe6Aa/dHXHjICP2HNaaAf2sYpJX1Np2Ft2ZLN9z7GuktcLRhkrPvB1mMEASevSmOWmh6cYuf5rW0LCm/rk2CGO4fThFCEF/WrLUCFAa/ujGAYfjkjOtiHPdmINxzt7YJnk2AnfWaRVsNMOZSSy045nPVq3407tDrqwkbLQjVhoB7+yOrcm9lLRDj960tMaooTtXYw2z+sR59MjE0XFOVZdIKYk9yZlOZIvjmf/WOKu5sprgO5JRVvHG1ul+d0uJz1LisT+uuNu3fmJ5NSPqZ/HljxppfNIpVscbDK/dG7I/LqiUJvatL91S4gOCb75z8NBFxoPKz2mp6M/2me9K9iYFt3op7cj7SH5gCyywwAIL/OzieOPloh9z6zBjWtoAIoNVr290Ij610eRWL33fxsneKOfb7/X4vTd38Ryb/tyNrBJ7e5TTCBwSz6aat0KP/rRCSIHnSqvmrzVZWVPVmmmlCBybAl7WNhl7kJX0U7i0FFv/0aziykrE9cOMyHeBAk8IlJhNF8y2S84M56tHsF6nDSbOhFgIDNpIXGnJNE9Av1CnPpc89jzHb3Zh5pM6G2l0JEnoIYRBmYpKGa7tTbi0HNEIXYZphfINzcCbN07BXh/YRqdNh29GLtd2J/zqJbi2O2a5GfPiRkQ78rh5OOWFjTZffX6FL15Z5g/fPeC7N3sUdc1S7HN5qc1aK6CoFT+4MyCvNBvNkN1xxrobzi1PAHwp6GcVK0n4kQO4YOE1usACHxQLwusp4sdJ3HjcOCTA/iTnylrniXxR/lnHgxftgWe9if77O/vc7Wc8s9qgHXssJf4JAivwJAWwPcz57q0hb+9OyMuacV7NVXa7o4xfuLQ8f0xeKZaTgGfXGnz7+iGv3h1S1IrAdXhmNeHLz96XoB+/wAYISodxUZFXNVmpuLAU87/9/DnW2xFgPYQ6sTf3uYKTUve0rKmU4bs3+nzpmaU5UVrrIVtDm+qXBC6jrCJwBYPMRjELKWj4HheWIipleHN7yOWVmEsrySxu2aGf2gQ9Y2wBobSVdrvSkFc2EACgqBRGSzzXjjuCsdJzY2iHHpudCFcK7vQzlIZn1xLaoc/htOBMJ6RWhr1JgTGCN3fGZLWiFTgsJT6b7ZBrexN2RjkXl2JcYcf8pJSM8wpHQORb+b0jBZUyFLXCEYKy0ra4MZZoagUuoeewNy7QBhLfoR14TMoaV8a8cq7F+N2KQVoxzCrq2djdUfdQG4PR4GPVXgbwndnYYa2JPIkxhrxWnG1FTMuaoq7ppdWMOIF27DEdloBBIqkNNEOPLz+zzHsHU97aHuNJON/tkoQuZ9sRWaXYGeVobQhcyWozJK0U48ImAF1eSbjQjTiYFPzxjR6fPtdhsx0yyCpqrfFce777jt1n1cxc9TR/qseO73ox/3VvQq01secRutaL4sh/a2+c86OtIV+8vMQPbvcZ5dVDI8P745xG4HIwKew46dh2Ti8tezQCh61hQa00yIdTZZ9WitVaK+RXr67wb/74Nv20pBW5KANnOwkXlyNaoXeqOuvBEfKyVkzLap6+1ArcEwTjB/UDW2CBBRZY4JOD43XhW9tjtoYZ7dAjrzWDrMQVkk7kkZaa1Ubw2MbJ0Tp5pz/Fk4K1RsDBpOQ7uyOKyqrTC6UZ5zbQZ1zY+sIVgsh3GOcKhcF3HHzHIa0UhdJMihqt4WBS4AqBlIJRXjEtKoZZza2DKYdpRSs46lbZZMbjq12tLVl1dI8HV0JPCpS+T5CBJbx8B6S0iv9aG9abEZ3EZ5ANHvlcx4kuCTgSGpFLqazDhMbYxEdHUCtwpeTiSsw0r9keFCzFPllhzerPtEMmZc3hJAchiX2H2HfYH5e0QpeXN1uMswIYcnEpptDwzu6EQWbHFl8+20JKyXPrDe70UkZ5xWY7xHecedPdGMMb2yMOJgVX1xtMivq+Ct61YUd745xm4PLKufZHJqaedPNwgQV+lrEgvJ4yPmzixiPHIUu7fLSiR49D/izhwYv2UV7x6o0hr28NmRQlw6zmXj+lFTXnypSXz7boxD5FZZfNP7094Pu3h0SeYK1l1TcH0wKlNNf3U5qBx5euLAN2Ln+lEXD7MCXxHX7pyjJSWi+rSVHx+r0RK41gvoicUPD1UwaZ9aM634344uWlOdkFD5OYo7yaS93boUdRCVbbATujlG+8rfjq86v82gurfO5Ch3uDjOv7E97YHvHt64fkpSHy5Vyp1o08bvczDscl+9MchOBTGy0iX1Jrw+G44DCtMMbgSklWaSSGKHAp6opiFrdT1IZaGELpsN4KON9NuLKasDfKMUKQ14paG1YS647WjnzKWuM6kqU4sF2wg5Q/vdtnmJc2DTEJONeNiH2X51YNu8OcvXGOkIJhXhM4grRU1otB1mitMVKQVRqMoRF7aAOeI8nLiqwUCKHQWPl94js4UnAwLVFjSz5utkI2mgGHkwKNja7OS0WZ1zY00dguY6U0ziySuxG6FLViktcIBMO8IvE8Li97XNudcuMg5XBSsNwIwMB6M2CzHYMQZJWiO1PaKQP9aUnsO2gD+9OCJLCEUuS7bLYjtocZ46Lmy881caWkVIqqNniuwHMcVpshoe9gZulInmO7j0dGqaWy+9yTtkQ8LQDjcT6Aaakx2tAJfVzXeagYK2s7MjstFHmtHpk2tZwENEOX794aUFQ1FzrW0+JgWtGNfF7aSGDnNm9ujdjsJvNi8GmlWIFNVlpJAtavWuWc58i5mhI4VZ11fIR8kJZc25twr5+zIwoCV5IENjL9iGB8XODIAgsssMACn1wc1YV/cO2AN3dGCAPKGEtGSMM7u2NcZ0o38nFdTm2cHF8nr6w0uNfPeWtnxM6woFAKDMSBYwN4ihploBXadcp3JVmpUMY21gLXodaGyHOYFDboxoYNHVmmGK4f2ImGaVFT1AqMJazAqrjUA5tosCb1joDAFRTVMfUXgDAPEVeuA77nkJcGY2wNc6ZrG6UgcB1zoik7C7iewxFwthPOEh8FnjL4rrAesRqmhVV2RZ4d0SwqzWfOdfjM+TZff2OXH22N2JtY5bcx0AwEjcBlXNS0IpdLSzEvn22z3Z9C7y7agCNs6NBaK+BXn7vf8B6kFVvDjEvLyUNTOMftUQZpxctnm9zu5RxOC+qisjWn5/KLV5Z4br3xIY+uk3hazcMFFvhZxU+E8Prn//yf80/+yT9he3ubl156iX/2z/4ZX/nKV34SL/2xxKnjkMLQghNKo59lHL9oH+UVr94Z8u7BGIALnRhH5OxNCpJDl+fWG0zKmlu9lFbosj/JWQWu7U9wJWy0IhCCtZa9YM3rGlMr3t2bcGU1IS2VTdEzMMorLq80Tlxwr5rg1Ivx91PwHZcan+tG7E9ybhxOORiXjIuSbuQzLKxx59X15lw6/fq9Eb/2wirdxKeb+Lx0psUrZ9s0fIfQc2hFHr7jUCnNj7Zs8mPkWhKsG3v86d0B9/opVa1ZbQW0I59bvZRhXqGUnnsKeK4knKU0NkIXz3NZSUIurcT8/MUuAsHzGy2b+Be6CGHjo4dZxc4gY1LWXFxKiAOJFC5XVgW3ZuOgy42AvFZEMy+6pSTgymrCe/tTqtqOLhppx1MdKRgXilprItchciUayCuNUhrlObbLaAyB53CmHXD70KbwgMR3HAqjKGtNf1rQy2vEjMwCqGc+a0dpQ66wJv2bnZBOZA3ms8oa8buOZKMVcqEbM8hKfuXqKkoZbh1OkUKBb9/LSivkdi+nE/v4ruRwWpDNkhOlhMRzraKwvu/H5zvSKoe0DTZIApc7/cyaqs6IrNizZv7DtOJM25AEDstJwPYwZc2x6Y8brZAkcB4ZgPE4H0BL3AiiwHYqh2k9L8ZcKTnfTai1ZpRXnO1Ec+N3T8p5F/PonPzURpPX743QSrA1yhBCsNwIeH6tQSe0qbJbw2xOMD2OiHsS44JFrSm15lwrtmlSD+A0ddbRCPnuKOf6/pRpVdGNfSZ5SeBKDmcG/Wmh6ESPDxxZYIEFFljgk421VsivPb/KwSS3ATiDHEfaJqHvSEqluTNIkcAoq9hon6znj6+TZa0ZpiW3ehmeI1iKfUpl2J8URK6cqZYUUtgkd4xhohS1sbp2z3EolcIYgyNsurfv2EaONoasrGfNdEsWWe9KTTVrGsuZkutB90uJTbc2gJS2vjKzsPJKPTzSqBRkpfWNdSU0I5fQdXivP6FWZvY8swTHWZLjkTJfCkh8iSvFLBDITmooIwk9F88V1DPPreXQpaw0m+2Iz1/q8vbOhMC1YUalsmRfXmk8R9BNbIKi1hrXcfj2jR7TrOCXZolXzcjjmbUGse+cSFN8P5/l4/Yo/bTiymrMxeWYSVExTO3n/cvPrnwk0cLTbh4usMDPIp464fVv/+2/5e/+3b/LP//n/5xf/uVf5l/+y3/Jb/zGb/DGG29w4cKFp/3yH1s8SKY4KP7oG6+z2vxwccYfVxwtKoEneW9rSj8rcIUkiRykY8mdrFQcTkuSQc7ZbsjOIMOVgs2WDwPoTQrWOjF5rVHamr9fWIrZnxb0dM7uKGd7mPNzF5Y41434zo3DD30x/igF32lS48R3iVyHrWGGJ62B/UYrPDGOedrrCCG4tJLw4pkO7+6P8RyrDLq2N2FaVawlAXuTgs12zGrDZ3uQ008rLi7FKG3oTUvW2wFSaHZHNXltpeFSStZbITDixc0mWS1ZadiibG9U0k08uonHD+9UvLk9AqyC6d4gI62sN9d4lhT54maLWllj/SsrDS6txNw4mLI3KWiHHv6MSHp3f0Lke3xmPUFp7HvNKpYTb24keqYdcOMgZVIoIt/BcwS+61DUilpZJZaUAmqDK62yKgk9q2JzrRrSdyWNwCWrNLWxIwCuAMcRyJkH2NX1FsuJzw/v9Ak9h8+cb7PeinCENZxvxz6//OwKrhTc6qUMZkauvbTg7qBgkFU8v960zy3lrHMq58Wa0mbeKQXmx8FKI+DuIKOsNWml7P4JPcpacf1gykrDJ/KducLzXNemNL61O2G9GXC+E5OWjw7AeJwPoFWGGYwRLCcBF5ZiS2opPfO2MNwb5IyykmxP08/uk3FHo8NHpva+57Dc8JnkDr1pgTGWGLrdzxCdAA87KnpEML1fofhRxwXfz//wNHVWJ/Y40474vTd20Maw1gxpBopbB9a7zxiDJyV3+ylFXdNJgk+EwnaBBRZYYIEfD93E59nV5ol15WjNCIXEkyClw51+ynPrJxus89rXlby7P8FxrOeV0vY2A9S1phQQ47LZDtkbF6SlIq80WaWs/5W2aq9KaYSAJHQJPatm1wZL/pRWuZ8VCldYlbcy4M70VVqDEeAYWzMqbUmoo83VZkZuGfAc20gsaoPkGGHFLAzc2Bos9Bx+/kKXKysxr28NkXL2fAL0jFk7Ir2Onjv2XSplGGU1jrDq93FekfguWsNKEnC2G/LymTbTUnG2HfHtGz3e3hnTniVfSyHRRhAHDqOs5kLo8tKZNv/++3eteq6uaYUSVsF3JePZKORSwzu1Sfa4OmM5Cfji5WXu9rMT1wAvn+3w0hlrgr8zzH9sz62n3TxcYIGfRTx1wuuf/tN/yl//63+dv/E3/gYA/+yf/TP+y3/5L/yLf/Ev+O3f/u2n/fIfaxwnU6rq/SN7f5ZwtKj0piWH04KG79GbVnPlhiMtcRD6VnYceHaxPteJ+cUrHb67DUWtuNvLKZSaE17N0GM18WlHLv4g41efW+Pzl7vsjoondjH+KKnx3jjHGDjXiazPluucMNw//jp5pehPyxPKsY12wB9c2+f7t/pIKWzSS+iRl5rlRsDF5YhpqemlJWc7IYXSnGkH3O1nZJWiGfoUtpk3L1iWm/b4akUBXg2TsmYp8dkZ5yDgvb0pzdClUj6vb43YGxXUWhM41uSzrBQ/vD1gq59hjGGYluyMMiptt7sZuGSVYpxXZGXNSsPn2bUWgSuplCL0GgzSaj469trWgMNJjecI+xk5Es91CB2HQV6RFoostIbktdZkpSbyHZqBQ6UNSmkMNmFPYLuQzSBilNuEy9CzJvyB6zApakJPstwIubwS0ww8Bln5ULjE7jBjUtTc6ad8fgUGackw1+yOyrkS6lObbVabPpudiJ1RzjAtCX13frwaYxhmNjHoFy51ee3eyCYvLcezhMOKflqy0vBZb4WsNAJaocfW0Jr/n1+KWWsFBK5kXFYU6tEBGI/zAYx9iZQCgyD2rZ9GY1a0GWO4eTilFbhc2xlhhE038kPvVFP7slLcPkzRYO83617vjHKmWclnsOOoRwTTj0NIfRg87n0/Sg0nhOD8Ujw38i1niryNTsCtQ400mmbksj3KeeVshy89s/SJUNgusMACCyxgYYx5qB57HElx2rpyZBswyEoaoc8zqzFbg+whUuJk7VvOya5SKaZFbdMFlaYZukzKGt8TtEOXduRx+zDFGKixhvDOTHFVKyjLmmbg0WoErLdCylpxr58hjKEy1hPMcSRZXqNmS7DivjLeHHl3Cfu3cmYLcaTs8hxpvVkF1lJDGara4Lq2wWjd7O2TudJ67Ba1phV5pGVNWdvbnJnSS89GHJPQJnBjYFRUSCGolMKV1ragFVk/rEvLCUVta4utUcY7O2PWmwGNwNYvw7zEEZLn1hpEvrUweO3ugDv9DAlstiL7JoG9YcHmUkI/q9DG4Dv3P+sPWmc8t97gufXGiQmQslb8aGv8kT23nnbzcIEFfhbxVAmvsiz53ve+x9/7e3/vxN+/9rWv8Ud/9EcP3b8oCoqimP8+GllVSVVVnzjC50Ecvf9Pyn5IPDjT9Hn13hCtKhLfI5AGoRVSCsq6Yq3pc64dsjPOubwa4zuSrzzbpeHbBaiqKwZ5xUYzwPOsl8E4yymLEs+RXOiEXFwKqOsaB4UvDHlhPZgeRF7a2x3UYz8DYwyv3e4xSjMuLsXWPcgoYhcudgPe2hmTFiWhE5N4gFYn5N95qSjLij9+74BRXs6VN42ZeXYrEATdgP1xia5rxpnCEwEXO01avmSQVRhd0wg9+llFfwIrieTKcptxURP2wMzG2sZ5zXg2sqXrmkBKqlohhWYyzSkCSR3AS5sJP7pbE3uGix2fVugxKiqEEISe5GBccG0351w34tNnm7bocGBUlESuw9WVmMh3eG9vQsOXfOW5JYrazN9brTR3+hlbg5TIEShdsxx7hJ7kaL32XBBCU/uCcNYRbAeWSIxcgUTjGk1egi8MtYRa1aw1IwJX0AwcDic5Va0AQeJ7TLKCpVDyS1c6/PpLG/iupKhtWuNRKl9RFHz73QOqqkLPPvdAGDYaHlopdkYZDopfutxBaM3FTsDB0Of1rTG+Y0DX5IWil5Yopfn0+Q4vbjTZG2WEDhxOCw4mtvALPIfItd+bOwPDL//ceT59tjHfplboMsrrh7bxtOPxhfWYg1HKrYMRqw0b+FBUmv1JztU1e1zePhg/dFsrdCmqGqENCEXkeAgBrgtR4rI/KXhrq+TXnl9lMMkIXYHWitgxIPT8fr1JBj5sNDwSz35vHZ3TNw4nREvx3FsLwGDYH6VcXm7M7//j4HHvux35vLAeU9f1icfEnuDyckhdG/p5xbTQOFLyc+ebLCeWZDyYFPzc+SbdyHni38GftO/2j4IPu68W+3SBBRb4qPiDdw7YGpcfiqRoRR6XVhKq2lil9Mw2YLMdc3E5IvFdru2PudNPAeYk2hGh8ofvHvDu7piDccEwrwgcQeS5FHVNXhkOJ4X1Vy1rHCnxHEFZWzUX2vJLzdAj9GyzrdBWnb7phkzzijuDnKxSqJmSqqgUzdDFlQ+PJM4hLJknjUFrq9yKZk3EorapiUJAWVmvLIS1cvBd6ylb1gYpDT+4M8R3BbXS1OqYb5cBo44mECBwBJdXEvbGxayZaUcNBS6eI3Clw/nliM12gBBwZaXBKK8YZdabqxF6VtEvHQI3ZG9ilflnOiGv3h3SCB2agUte1Qgx5+MYVxXuuMA9xRrhkT7L1emq+yMyc2+U8813Dp6I59bTbh4usMDPIp4q4XVwcIBSivX19RN/X19fZ2dn56H7//Zv/zb/8B/+w4f+/nu/93vEcfzUtvPjhK9//es/7U34ieIKcMUDDLyyfOyG5uxnDVcjYGJ//R/ffHN+l7+81n/f5/8f37w5///W7Gf6iPu2gD/6xusfZLNZBbLBw3+/CFyUwN1Hv84ZgPH97TnCyuwfwKdi+JXjE8H9HdK+TR/8osusxYetIoLZTx9+ceP01/zznd1jv+1Dd/aYIeRDeAZ4Zv30xzL/XGYfgjN77JGQpmd/vIj9W3nztk3tmd3sMfucQ/jys494jR8b+SP+fp9Yp3+PP/nWG499li+48IVN+/+/vnRg/6d97DX6b5D27Xv5kg9fujS7yRzan0cZBv0t3vme/YzPAISzf8ehgDH8j2++/dhtej8E2OOQwf13u/rgnU65LQS+euSnWp68+7OzDy29fhuAL3mn3+/ow01v/oDfvXnypkedG6vAZAC/+97Dt30YPPJ9D+C726c/5uLR/0jux0/lzA+f88D3/vCjfR7vh0/ad/tHwQfdV2n6qG/ZBRZY4JOI496q76fW2p+F4dw4nLDaSk4lKVYf4eMauNYGoBm6QGPe4EsCh2Fa8f3bfbaGOZj7JNcRibbRDtgbZdwbWPuLTuSRFYphZkk3YwylMghj30/sCevP6ljC6ChERxmbNKy0ZpDWpIXmTt8ubNVRN3FG9JTKMMkfdOuyy6ElfizJpbCeW4EjaMceUtjkRqWrufF8NSO+Qk+y2vQpa3CVQiJohNZ/9GBcUqr7qq7Ecyhn2ySEQGlNI/RIfJckUGhtrPdqO5p7yS4nPq+cbfMLl1dohS6t0OV3Xt9hveWzNUgZTEuiwCV0JUII2qFHb1pyr29V+xeXYvbigmqsuXE4tSVrBwbTip1RzUtnWqw2g/l2HuFUn2Xn0ar7J+259eOo2RdY4JOOn4hp/YMnsDHm1JP67//9v89v/dZvzX8fjUacP3+er33ta7RaD17+f7JQVRVf//rX+fN//s/jeZ+cL7G9Uc6/+94dru1O8BzJ/qTAdQQXujHtwGVrlBN4Lp873+bLz9ni42CU8sff+gajpRd4Yydla5TeNx4whtoYupHPb/7aczy73mB/XPDm1oh39sa8tTOmVprz3YgrK00CT1rlS+Tz5WdX3tdD7c3tEf/2u7eRSJSxEvFu7NntjTyUMby9OyLxLRt1XIWyN8nZGRQ0QoeXzrTmCphpqfjerR7TUrEU+8S+Qz8tudtPmRaKlcQnCV1++dlVYl/y+r0Rb++MOdeNSKua5SRACoHWmte2R1SVJq+UVXw5hr9xZcr/92aLw7ym6bs8u9bgM+e7aDRnOzHjvOYP3zugPy1pBi5KQ60107LiTDtie5RTK81GK+KXn10hrxS3exnjvKLWmlrDn3t+nc9f6vDW9pjXtoZobdge5lZ2XSl8V+BKyZl2zOEkQwhJN/YJPAcpbJiAEIKqVmSlYrUVkpWKVuhyr58xLCoavofnCK4fTK3UHtsJU9rMtyNwHTbbPp893yEtFc+sNhjl9bwYPdOO+NQZ+13zrWsH85TMSVERSvj1pX3+z94Kq82YRuBSKc21vTGNwOPls23akfWEemHT+jQcTApAsNLw54XwIC353de27ThDXrOa+Ce+D/NSsTXM+PMvbfAbL2+8bwF0dPxuDbOH3sdKw2eYVQ+pwuBozNLeNs4qXr074N4wZaufs9YM2J/kvL07JS9rYt8lDhxWGgGb7ZDfeGWT79/qc6YTMS1qbvcyq2LTmqrW1HXNVxs73AyvsNSI59uz2gweu71PyqPw+Ht78H2fdt8/eOeAG4cTLpyiPLvds8qzr1z9aEazj8In9bv9x8GH3VdHKvEFnh5++7d/m3//7/89b731FlEU8Uu/9Ev843/8j3n++ed/2pu2wAIncJq36qPUWsYY3tyy3x8XlmKkYy+XjpMUf/juwQnrgePPt9oM7pMSywlC2McP0pLX7g252894ZtWOvRWVnpNov3p1hZ1hwXo7pHvgMy4qO0aIHWXUBoKZj2ttbG+p0jax8YjDkoK5jYf1zxKzhENQWs+IK/u7MOC7gkoZstr6nR4fchDCqq3ApjcePY/vSZ5fb7A3LpnkNY1WwDCr8R3JICvnITxZaVVnRxMBa82Ag0nJciNAj+3YXSNw0FpgHEvkucKgjK3XXEew2QrZn5S4MyIMaRVOzcjltXsjytrQiT1i3+V2b4rvOBxMSvqp9ZANPJdu7NEIrA3H1rCgETisNgOu7UnUbC7zKF/yaFSzVNbg/jSl1PuFVh3Hk/bc+rAqswUWWOApE14rKys4jvOQmmtvb+8h1RdAEAQEwcMXPJ7nLS4EZvik7Yuzyx7/+xcv8zuv7dBLC14402Gc1+yNcrbHGc3A5ReurPDLx9IrFXa1Xm0nfD6OuXmQsj3MyGuFAJbigMh36DRC+pniW+/1GWYlZ7oNlpsR7+5NudmbcndUcnk54dJyg1fOtdnsJo9dQPZGOd+7PeIwVaw1XTpBQKk02+OKUT7l5bMtPEey1IhPGlrOioT1dkKlBWc794srgMpoSiPwPZfXtidstEJWmwEXll2uH065MypxJxVXNyvWZIhwXFpxgOO6VKUhq23RMswVa82Y7VFGnmuEdKhmngVh4LIeWOKl04z4pefW+OObPQol8DwP13FJq4LhbMwyqxRZpdgbK7Layqc1JX+6NQYEldJoJI3IJ/QcfuGZFTY7EcNC85/f2GN7nKOUsUbzjsNhWhN7gtrAuBL0pwX3RiVC2FG+Z1YbfGqzye1eZj24HMkbO2N2DzK0gU4SsZz4HEwKgsBnKfY4mBQU2pAEHiGCVuSx2bZE2d5UYQzsTmvWjxUL13sZB6n1ENsZl3STEL2fktWCRmI/k1IJhoWh2/DQQnN+qUW34fErL2xwvhufKHrWOslDx8lKy6WTxPzhjQHnOxFGuvdHCIyhX5ScWWoyyjXTCrrJw+f7UZf63iDjuzd6VFo/9D4OM2Vl8u2Ht+EIq76PMYbff2ufUam5vNrmMNUMCk0vNTQjH9e1xeJmO2KcV+xNamot8TyPQgnaScTLSci0UBxOC67tTuZm/eeWWriue2J7ziw12OwmH7jL/uNi1f/gZq2vXFjiMFPc6hcPFI8F7STilQtL+B/i+X4cfNK+2z8KPui+WuzPp49vfvOb/OZv/iZf+MIXqOuaf/AP/gFf+9rXeOONN0iSR3/3LLDA08CjFFyP8lZ91EjZIK3YGma04EQTBO6TN//9nX0urSRcWr6v/np3b8StwylfuNydp3MfkRKBK3lnd8zdfsa5bsTzGw1cKXEDOSfRvnOjxyAtOdeJONuN6KXW+wtjR9XAqrEE4DrWdmpc1ehZWI7v2hCdUmnKShF5EikMnsMsGGhGYhnbBzYwX6/NsX/HYW8XCAG+BM+1/llbQzv214zs6KAU0qaehz5C2v02KRSNQCKlw3LiWcJMSFYbPtNCYYwdq4w8q8SaFIqsrvFdSeRLhlmFJ+39z3YjQs9lnFXc7acoJfAcWG0GRJ7Dj7aG/MnNAWtNa2Jf1oqdUU5ZGxxH0AxdpBB86UrASiPGEZbUyirFpaVoZlg2ZL0d0FF2XLSoNe3o9EvlR4VWPYin4bn1YVVmCyzwScdTJbx83+fnf/7n+frXv85f/st/ef73r3/96/ylv/SXnuZLL/AzhPV2xP/y6c35F7vrCFqRy0oS8sq59kMpN4Fr/7+oNO0o4NPnPVaaAbcOp4yyimFecpjCH984RGlOyIyTwOULl33OdEK+f2vAzqigHXl858Yhd/vZIxeSI8lypTXPrTXZGWW0Qo9wlty3Nym4dZjSDB2eXWudamiZV4r9SfHQoug5EkcIDsYFRVXTje3zhp7Ds6sN7vam3OxnfO9mn89d6PDps23+wkvrbA9zfv+tPW71bGdpoxWykvgobYh9j61Bijsr5ALfYSOJWGmEdGLvRHfy4nJMK/TopxW1sobxaVnPUm8MeVkjfJdBVvH27pira01WEkv27U8KZFYxzms2jGFnWLDZicgqzb1hSuK5OMIq9iql2R0VKK3pxB6dyLfqt1oxLWvu9HPOLcX86nMr+K7D3X7K//mnW9w6TEkCB2XgbNcWnlYJ5zLMKpqhw1IcWJPXorbm8Y7tql0+RV7+3Vt93tkdsZIESGk7sjvDDAcfmpD4DpPcRmOPiprOTEofOPLE8fAoQkcIwZW1GM+R9LOSJSFOGNomgcezawnjoj61ADrqUt/tT3lje8QgrXhurclyonGk+6Fl8se7j7Fv99337/QxxtCJfBLfUCirwjMIKq2520s50w65fjCdS+qTwOH6fk2tbEomQDN0kM7p2/NnKT1oUTwusMCPh//8n//zid//9b/+16ytrfG9732PX/mVX/kpbdUCn0Q8SsH10pkmP9oaf6iRsqLWVOp0AsJg2B2WjIuazXY491GqlGacK97ZG/DWzogrKwm+4xC6DqOsYpCXbA1znllt8PxGg3Z0MvF7rRlyp58xykqq2o6mVcpQ1IphVuEIQehbYk3YB4ExuFJgjNUnVQqkMPgzf9TetKSqFY6UmFnKo+8IBIa8tuRWNTOkd4UdgzyqZBxhb3ccSegKam3HGhPP5fJqwiCriH2Hz5ztIKVglFe8tTOinM00FpUirxSB6xB4NiTHaIh9h9V2wP6kBCxpVSmbGCkkJL7LchIwSGtcWZMEHq4jGeeK0JHsjDM8V7La9MhrQ+g5xL6D79qadFJUbLYDpBR224Uhq2r6U8P5pZBu7LGchNzup3ZkNPQZFYqWZ995ViqE43GmExK4DsOs/kj1ymmeW8YYm5A9U8V78nQl2ePwYVRmCyzwScdTH2n8rd/6Lf7qX/2rfP7zn+cXf/EX+Vf/6l9x+/Zt/ubf/JtP+6UX+BnCh/lib0e2q78/yYlDO9J1Y3/KtKrpRB79WYfv5mHKzYMpn7vQPfE8o6zi5kGKsAYJdJMAV4pHdgKNMdw8mPLm9pBubNVF47xmZ5QReS5CCsRslPEXn1k51dASoD8tTzWiTAKHJPB4/d7QphkeI1YwhrSqWYp8ilqRVdatdKUR8KnNFue7Md98Z5+0tH4F+azgaQYOL5/tcHU1gv6A33jpDL5vjeLvDTJKZe5Lpg+mlEoR+w7DVLE7KXCEpBu71LPnq5RmPQiQCHZHlrSL3JPx2ysNn7v9Ka3QxXXguZUG0ez9hK7g2t6UXlbw0kaLtFQsNQOyUiGFoJ9WrLdCfvW5Fdbb0fztn+vGXFxJ8BzbcYx9yWv3RuyMctabAZ4jWU4C0qrmYFowymouLTdoRS7nuvFDx88or9gdZmwPcs62IzxH4jqSSam4tjeBDWs0XxmH3XFB5El2RgVZpfnWuwf4rg0YMAamZX3q2IQxhsR3Od+NmBaWzFOFOWFo60o5P86P43iXOvFdJHZEYGeUMc5rXjnXoh35H0omf7z7KIRgpRFQzzwram2QEsaTitfujXCEoBt7/Ne39/ji5SWkEPPuda2NHVPU1rAX7nfGP8z2fBiPlSeJRfG4wAIfHcPhEIClpaVTb/+4hhN9UsMlPi7ve39c8K1rNuzHWkW4FJXm+t6AW/sj8lpxph09FBQEsJZ43OuNORgldGK7NjkoPDFTPumT3lbTUrE/TlmJHHwBRtUMs4o3tsekVU0nkOyPppRVRVYqEt/hcxe6vLyRILTmmbUGrhAYdTJAJXAM0zTn+t6YaVGTFfbxrhRIo3CkoOHZCzfHGKQU5JUmcAXKgDZ2FFBgiF1rFj/IKktaAcIBx4CDQQqIPeZjkJFr4xcLDZFj33ckDKULjlA4xsF1QLqCjZbPauxitKKoFNO8oBP7dAOH51dj0lKzPcyRBjJpMFphNBhdU2rwpCQUgrXEYeJCK3KpZu75ke+QeBJlBHcHKaEj8T1JKxAMphl7gwlSCq6uN5jmJeutiNg1TLOSYVrwwnrM3V7KO7tDBIJnlgLyWjPMJI6A/+nqCrXRiFmYVFaUnO8GjLOaaZ4B4EnDc+sxz601mBQ107ych2H9OHgwsGeU1dzup7aJXGtGecVz6w3SvPixXqfhCxqzOdQHQ3k+KD4u5/mTxuJ9f/zf9wd9D0+d8Porf+WvcHh4yD/6R/+I7e1tXn75ZX7nd36Hixcvvv+DF/jE4INc5H5QVcjR41qhz42DCQeTkklR0Yk8hnlFM/R5fqOB0obX7g3ZGxVstu1svcFw6zBjWlacbUccpiXa2LG40zqBRx3FN3dG/PDugNUkZLnps5S4HE4LbvXGVErjSkHkOTyzmjxSLfIoI0qBLTAqbYsUMGhjGKYlb+/aEcJn12LSsqZSim+/d8jtwyn/8yubXN2wxpVHXc9BVlJpw5m2ldO3fEnah27sIRyXaVHP0126ic+vXl3hv721x86oYLUZ4LuSsp/hSEFRG2Lf5XLsc7efsjspkAJ2RjmjrMT3LNHzytkmW4OMyHN4Y3tEViluHaa0Qo9mpVlrBhQ15FVN4DhIKfFcw9W1Br7jzDtgtdb4rjM/Vu70UwaZLRRceZ8YurgUM87qWaFnuLKaYLDqshc3PX7+Ypc/vtl7SEl39NkrbQhcyeGkZFoqlNY8u5Kw3Z8CsD8q0cJhsx3Sm5aEnsvzGw3WmhF744z/+uYeAsMvXF7mXCc+MTbx8tkWO8OCe/2UXlqyPypYbwWc78Sc7UY0QhcM3DycPmQ6qrXm29et0vDySkylNcpoOkFAK/TYHefcOsx45ZyHQDxSJv/gueY74gTRGgcO682AWhumRc24qOlNK9bbAVdWk/lr7Y9LWqHLSiNglFccTEqmRcUzK00uLQXwgEH88e05vg1Hkd+lMoyyiju99FRPlCelsno/9d2fJeXZAgt8nGCM4bd+67f48pe/zMsvv3zqfT7u4USf1HCJj8P7ft+glvGHCyU6cg7Obv7gxN8F8EtHy8S9O6TYwJrPwP2wniN3lqND+uAeowMbgFLeeDjn5QjPA8+fzhXPUDzuxmNQwEe7mP1/f/547XCc9CuAwbFkpQEc3TWa/WvzPujD5vvcpfu4G3uWxcshu24/k89LrKnZI8KZ7Mv25pu8BvxGZ/b3JvMwrL+81gPdgx37MX7vfUKNPiiOAns8bBAUR9vrAxn8ybeuPZHX+Sj4OJznTwOL9/3xxQcNJ/qJmNb/rb/1t/hbf+tv/SReaoGfAB68YGxHLsOs/rFVER/GSPTD4MvPrfAnt0a8em+E5wiyWs8VNO3IZ1LUdGKf3VHGtGjQCN25D1En8im1wXUk3oxMeVClUik9V9t0Y4+VRoAr4eb+lN60pNvweGGjiRSCrFKM0or39qa8sJGf+r4eZ0Q5KRSXlmKWGz5ZZTtCezMl1dlOyM4w594g4+ZBao1Kbwnu9XP+n79ymfV2NFeu5JXiuzd77IxyWqEHxzqXD6a77I1yfrQ15nBSUGtNO/RYb4YsJz6d2EfOPuN398aM83ruciGEXcfX2iFgCByXrVFKb1oySCtakUcrtKOMg7QkK+tZEo4ltLSx+913HEsAYT0k7g5S7g1SfnC75G5/ys4o5+3dCfvjglfOtvBcZ26C/tLZFtd2x9wbZNzp2ZHHZ1cbfPFKF991+OGdwUNKummhuNufMi1q0krxxs4IR8ByEtCOfZ5ZT4CUJHBRQjLJStY7Mb9wqUsnDjAY9scVkScQSO70UkLPvo+LSzGvb414c3vEZick8qyh6yizxN07exM+fabDlbWYvNIPmY7ujXK+/V6P33tzF88RHE4LYt+a5h+pszqRz+G0YFooGoF7ajT1aefamXZEI3DZG+dc8hM8KWmEdti1GTgM90rWWgE/f6GDlA5FpSzRuRJzMClohR6/enWV/XFB7EvWmyGJJx66sDjanlFW8caW3YbDacHB2Jb+ke9wMC7wXclLZ9oPkYUfJrb7UXha3zULLLAA/O2//bd59dVX+da3vvXI+3xcw4k+qeESH4f3PUhL/vPrO7RCj9h/2Cdpf1zwnZs9vnh5idXGwz7BaakY5RW//vLGXOEFsNOf8v3/8U0O2ldZaSbzgKFbhxOu7U15YaPJ2U6MMYbv3x0QOpLdccHhtCBwBc+uNgk9u2amlWK14aOxo5QXjwWkjPKKW4cpb20PeXd/yjir0NiUQ1cKJnlNVlvDekdY1X/sO0zymrTSSMBzrCVHXtbUxvpVVbVmUljFjyOt7UCtsEp/o9FYhZfA/pPCJjIGQvMPfk7z//oTSaHtVsae5PxSwpWVhN7Uhib5rkMncnCkVcF7juTycsIzawn7o5zrh1MqZVBKUxtYSXzWWxG1Uvzp3RGBJzjfiXFdQey7ZKX1Vu2lBRvtiM+d79AMXbaHBXd6KeO8Ii0Vd/sZnznf4ZWzLVqhN6u9Sn5wuz+3h9AYluIAY2wKJEBWa37+QpfQk2wNMr724gZv7di6bL0V4ksQW68SXfocSPnEA2uOQrje3Z3QjFxcx1pIXFiKaIbuUw/IeRw+Duf508DifX/83/cHDSf6iRBeCzwd/DRGfx68YCwqNXt9O6P/YS8gP6yR6IfBajPgC5e73OpNWW0GhJ5DEthiaFLUlDMzyluHKaVSGByGackoq/AdwaSs2WhF88fAfZVKXine3L7vCYGA1UbI9iBFG8O4rOhoj1boIYC0rHluvUml9WN9lR7lJfTymTYXlmL2JwWrjYBhVqH1EN+V3DqYcv1wiu9IlhKPwLVKrW9fP6AVufw/fuECa61wrlz50pVlvvH2viXVZoboaanYm95Pd9kfF/PPZSkJONOKcR0YZCWDrGalGeA7Du/sjLhxMMVgFWpSCNJKoY39cslLzbW9EWmpWGuFx/zN/HmCzjCv6U9L8lLTanrktWKzfXK/55WiqDTfvdGnn5Y2ZTKvSYuab713wA/v9DnbjWhFHq6ULMXWq+xcJyYOHLSxXm0/2hrz0pnmqUq6w2nB7V5KUVvV2f4oRxvBKK8pasXKzLT+2fUGZ7oJ7+5N+My5Np3YFtBHZKnvupa07KXsT3KSwKMbe/SnFYfTgovLMe/tpUzLmqsbLQbTkruDlO/f6dNPC371+bUTIQxH58id/hRPCtabIUob+tOcYVpTK8P5pRjPldSFJWJPi6Z+1Ll2/WCCQMzHE31HMkxr7vSn1EqTlppLKz5ZZUh8wyAr2WzHNGYGsFvDjJ8TXa5uNLk3yHlvf0zcPXlRcbQ9K42AH9zuM8orAtehN6kYFzUYYyPYHYnrCK7vT4l9h07s/1ix3afhaX7XLLDAJx1/5+/8Hf7Tf/pP/Pf//t85d+7cI+/3cQ8n+rhs55PGn+X3rVCURhAGPkI+vD4sNSVR4LEzrlltnbQyMMawN7Vr5coDt210bejCpZU2W+OSMqspKkUtHHzP4wf3xtwbVYSeZJgpvIbLMFfUCpLAp9QSXYPvuZSlpt2wqcau484DUopa8YPbI/bGOSAZ5AqNJHQklYZMGZRw8GY+r8oIIt8jq22oTans9iohKHODIxwcRxAGHtOqxHVdpBRkhUKXBkc6KKMpajsGCVYopYHEl/i+S+xqwNY/pRI4AqTjMi0N+9OKcaER0sVxJI7vs5b4dDXUSvP2fsqNfs65ToSULpeXIpYSn0mpSIuatDa4jsunL3TJKsVm2zbODtKaRmAJIOm6fPp8h3ZivyfOLnmcWUqYFoqsrPnjGz2acUArDmdkYcbBJGdnUrI/Lrm4ZFO0kQ6R54Ax7I5zNtsxSeSTFgrP80iigE9fWKaXaVsXzOrhrIa96ZMPrIlDw3IjZq1934YjCZw58bnaStgal48MK/pJ4M/yef40sXjfH1980O1fEF4fU/w0lAoPXjAWlebd3Ql744K1ZsDnLnQIXOcDX0AeGb1/GCPRD4vQc+jEHpHnkAQuw6zk1mHG4dSqlqZ5zSSvefXukNh3OZjk3OpN5wqrFzdORvseqVTySj0UM3xxOWJvnLM1sj5V46JmlFXktbIjkSsxrpTv62P0KC+hIxLqYGJJMAHc6aW8vTemqKzK5+ZBRuBJOqGHBq7tTXjt7pA/96n7+/AEqdYb08J2GI8MulebAb//1v59Mg9YbvrsjHLOtSMOpyU3D1LakcvepEBpQ2umCDLAUuTjOtDPaxqh4t39KStJwMXlGKUN47wmrwocKelnFY6EvXGOe2Ti3vC5cMxfy8yKlaJW5GXNMLcKrHbocX4p4mBcWN+xWvOFS12EgB/c6ZOXis9e6HK+Gz9EbjyopAs8SxyO85r1ZsBmJ7IGrcqQzcg1pRSswPPrTdpJyDt7E5xjo5TWsNYa9Be19R5rhT6+K7ndT9kdFHRij9u9lGlZsd4MQQiWYo/lps8kr1hvRbRCGxrw4DlyZaVBb1pRa2vSutGKyOsp01KxN8mJXAcpbELmzcPpCZXYBznXlmYqtW9dO2BUWD8535W4riW239uf0IqskvHicvTQ2ORxheLtXsoqoIyhKGoblR15GGOPtYtLMa9tjchqxblORF4r7vQzVhsBa42AvWnJrV5KO/J+rNjuB/GT+K5ZYIFPIowx/J2/83f4D//hP/CNb3yDy5cv/7Q3aYFPGE4zBT+OotZcWIqJPPch9fzeOH9IUf0gvnJ1hWnFPBXZdTSfvdDm2u6UYVYySDWHkwplbFCPIwWyqHj3oLZG866tPxuBR60NX7i8xN7IWhv8aHvEzjCjEXjsT3KyUuM5YBxrwG6MoRVYNVBW2fpCCMm0rPEdq4yy79HaLxgB4LA9sNvRiT1812FHZeSVRgqDwaq5EPanMRBIa1hf1oq6svOJUgoS39aaZa3pZyWgEY5ksxPQinyeWU1Yb0a4DvzgzhBlDKHr8PLZNq9vDUlLhRQ1L52xKeWV1tbDy5PcHaR8+ZlVENY7txV5+I7gD989JHBPKvUEgkZg68zn1htEnsvrWyP2RjmlUiS+SzvyqWrDtKxtk1RpNlshw7wiCTwuLkdgONEMFEI8th5+ktdTRa0pteZcK8Y5hZj9cdIaF1hggQ+GBeH1McRPQ6nw4AUjwLv7E2pjeGG9wd6k4G4/55VzrQ98AXk8He40v66PepE7SEtqI2mHPjujlKXE5/V7Y6ZlRSfycR2XvNK0Ipfr+2Mrz449upFPXitCT3DrMKMVebQj/4RqJvSch2KG25HPc+sN7g0yMIZRXjEpa853k/kYpdJmrhDrT8tHqvNO8xI6TlRd2xuxPcp4d29CXikizyXxXYSAQml2xzmR51DUinf3x/zcxe6J5zsi1Q5GCX/0jdf59Zc35t3N/rR8mMyb+WLtTUuWYp8bB1P2RjmTosZzJO3YY5xZpU7gOzjCRjpvDzOWkoB27BJ5Lo4UvHKuxa3DjLv9lP1JwSgtGWQVS4mPQLAzzLm2N+bZ1SaBJ9kb5/iOpHIEw9KOBqw1AsAwSGviwMF3AoZ5xbW9CZdXEjqRz4CSyHOIZx20I3LjxsGEd3enfGqzyY39lEFWMOxZn6rLywmuK2iELpHn4AeSWGkMhmlu/TDuDXK2RiXMTGKP4ErBKKvIKk0rdClrjedKQs+hG/m8tzfBkYZh5rIU+3b2037YNAOPstZstkO2htn8mH8oQTGxxGPgSoQQbLYsAdkJfW73U7qxj1LmoWLt+PMgrMLxaPwzCRzWmiGDtMBzJCuNgE+fayOE4O4g40/vDDAYJkVNO/J4+Uxrni714Njk0TH62u0ekwFsDTI8z+OZ1SbnuhHfuXHIWjMkLW16VDu0x73W4LuSrFIUytAOPXrT0o5nhu5HLgSf9nfNAgt8UvGbv/mb/Jt/82/4j//xP9JsNtnZ2QGg3W4TRdH7PHqBBT46HuV/CvfVxS9stOdpjacl8a42g4dqsiMIIejELj+4PaDWep7uHPsutw4z9scZW8OM6/sltdIEoUcz8HAd24DaHuasNgOmRTVrTke8dKbFzYMpW8OUsvaR0ja/hDTUGsZljda2xnCEIJECrQ1CgBD2p+e4+K6gFXlsDXKKqgYBjjSzsCOXrFLkdUUSuCS+oFC2Gae1Jq8Mnisw2hD7DnmtKWuFmNU1xtgEbzPbhkIZpqWmVgppYJwrRlnFSiOj0gZh4JnVBr20xJV2/0SuZFhYk/ZPn20jhL3snM6mLN7ZGzPMqvsWC52I5JjFwqM+yxc3G/wf371DL7V1hDJwZbXBz1/o0k8rXrs3YG9coJThwnLCs2sJrpQPNQPh8fXwafhxp2vej5g9zYZigQUWeDJYEF4fM/y0lAoPXjBO8vr+BauUD/kHfZALyOPpcKfhx73I3R9bU8///PoOpREUlWZvnPPavTFSGM62I0ptOJiWdCKP5djn5uGUK6sNrq43yErF9f0paVXTTwtu7Kc8uy7YHxfzhdJz7MKVlTUg5l2rpdiqkyqtWak1n7+4xFormEuW7Wie9dE6vsh/UHXe0cL8mXMtbhxMeXtnQuBIOzo569R5AgptKJRiklrPg9P2oS3i7GfTif0TcdzHPxdjbIJgJ3bZGmYcjHI7VlhrhDEEnosj5CyBEJTWVMpQG2g4kiurCavNcL7ItyOfV855XFlNuHkw4Q/fPcB3JMuNgMSX5JXhnd0JW8OcFzebvLDRZq0V8Ptv7zLJrbIrLa3C7sbBFImwEn7XIfQcrqw0uHEwJfIdru9PiHxrMN8IXYaZNVd/9d6I53tNOpFHJ/a5sJyAMKw1At7cnjDKKkLXHn9ZqZgWNdGsCDFGc/MgJXBcdoc5q42T55rRmrSo6SQB4ewxrhQ4QlDVBqUtEXYcpdK4jqQRegyycv55PZigOCceJ3Yc1JU2aCH0HL50ZZkvXOpythM/VIAdPU9RK97bn84Vjq60KZat0OFH20PGuaIZuKSVYinxubrWQADbg5xO7GKMmKeEnjY2eXSMfuXqCr/7HnztpU2S0KcTe+yOivl7GeUVtdL4oX2cI61xfllrlDZEnsM4r6i0np83H6UQfFrfNQss8EnHv/gX/wKAr371qyf+/q//9b/mr/21v/aT36AFPnF4nP/pcQXXWitkrRWeqp7//bf2H5qYeGH9fojCaU2To1pmWiSc7cZ84609stla5QiolCGtFCsNn9CzCdJffnaFvFIMUkuA9NMKKaxVwbYyOEJSKIXAoLRVXY3zmmmhQBgC16Hhu0ghScsja4cKpSHwbIMNIWztYWCc2bW2FXk8t5YwLTSjomKSVaSmwpUerViSVYZaWbLNm5UOBuu/hRBIYWu7aaFxXYfQk3Rin7JWbA9zJqVNC29m1laiFXksJwHbw/ShBpYxhvf2J4zz2tY9gUviuOjZ3x0hEIjTP8vI41w3YpjVRJ7kV55dwfccPDkbDxSC80uGzXbInX7K+aUYpQzjwvoMP0q59ah6+EF8lOmaD0LMPlhPLbDAAk8GC8LrY4Zh9tNRKjx4wVhpfeKC9bh/EHywC8in0e3YG+V869oBAdAKPcLAnxUXJfvjnJWGz2Fa4jqSjVbISiPgnd0x57rRrFBxWOoGJIHLrV7KziDjvf0xzcjlubX7C6UxhsR3+R/XD3GkRGlLWCwlPoEr2enlvLjZYq15n+x63CL/7odQ5wkhkFLSCDx8V1JUhkoZBIa8vk9ulSXcHeW8WKgPtQ+Pfy6V0tzqpdzrpdzpZ2RVjTYQe5ZcmmT1rPtnODNLuqyUoagVWVnRDD0+e75DI/S4vj+ZL/ICQa00r94dMsgqLq8kPLPWoFaGQVoipZWvn+vGfPX5FYZZjUSQVTWeI7jTT2fSfkHiO5TKxnEPsprdUc67+xMmecUwt53F5cRns2O9r7S2Bq+rzYDIc9gd5RxOSjt64LlzBVqtpowOKqalsiMFszDzt3bGOI5L5At2xjnJoct6M6So7fkxyWsKpelE9hFlpRhmJSuNgKxUYKCqNcExQnGYV2y0QhwBvrRE6s4wJytrPCnm50hnVrjf6tkQgLSoqbThufUGX7qy/MhjJ3DlbATZdqg7kY/nelS15vrBmL2RHX/oxj7rrZBaG3ZGOeOs5sJSRFUbJkWFMoa8Ugg4dRTkqPM5za0R/VrTn/tfHD+uPClxHWm/U6QtniPPYVzUSHmfAPSkfCKF4KKzusACTwfmmMp1gQV+WniU/+mDBMeD6vnHTkyM0nnY4qOaJkejdpvtiGbkcmE54t6gYHuUEflWed8MrZ3G4aTg2l443zZHCg4mJWfatqYcFxWBK22dIO6byWttqIxBAGc7Pq3IQ8iaflqRBBJHOEzKmtiTxxqcLlJoilqjNBxOK7x+RuLasJy8UhggLWq0lkgpEAK0gZktGEpb0st3reF7XWtyDYGGtNKsSEsO7Y0LtDJUquZ2b8rnzndphC4XlyNGWUU/LckqO3kwLRx2Rxm3BxkSO1J5s1KomYos9lwMhkvLCZvtkO1RPt9fKw1rQv+dG4ccTEre2R3ZVOiVeB5wdPQZLzcCslrxa8+v2eCAJ+B1/FGnaz4oMbuwVVhggSePBeH1MUNRm5+KUuHBC8YHL1ir2qpFvJn644NcQD7pbseR+m2Ul6wCse8gpB1le3atwfX9KeutiOc3GviONbAfZBW11jQjn35azhUlndinHXlcWk643Zvy1atrXN1ozLdxf1zQT0smhcKVyi7EwO1eSn9q/Y+KWjEtayLPJubtjjLGRY0zG317Z2c8X4Q32iHTQn1gdV5Ra2Lf4UwnYHtQkJbW2wnsaFjg2sInrzSjrKSs1WOf77TP5Yd3+gyzirSsmZQKg0FrQ39Gpm40fe6Kgn5a0M9qoklJN/FxJBRVTaUMF5csESOE4HBSnvDMevXukLuDjM1WyJlOZEkrbWhFHsOsxJGSYVoxzGo6scf5bsKf3h0wLSwJFXqScW6LQWXs42ql+f7tPgfTAgdLKi4lPmlR890bfRqBw4tnWgjhzEIMZmOOh1OKWrM7yri80uCVcx7rrSOytOLuMCWaHcrLcUAz8SlrzSitiFyrWBqkFa4jeWGzSeC65LU1sXel5Ewn4coqXNu1Bv9743yuNBzmFYnncqEbc+MwBQx/cG2folZMcsXuKMdzJV9+ZhnHcebH5qSouX4w4bnVFn/x0xtI+ehzrR25FLVib1zwwnoDMbuv70qMNvTT0o6Cxh5q5hEWuJK9SUE/q3jpTJNre1Z1tz+2XmQPXkgc73xWVcUy8AfvHPDKhSXWWuGJ8/3iUnxyPHO2LUuxz3BaUhk434kBc+oIwofForO6wAILLPCzjUf5nz64bhw1Zo5SqwdZOR9ThPsTE7cORqzO7v9+TZNJURF6Dr/0zCrTQvHmzpDbvZReWloP0lLheda76iiB+N39iQ0gMhoHybW9KaWy6YlmVsILsL5cBqS0acYGwaTQuFLQnAUjTYuKaWEnCGoDo6zGkzbV0XFsI3J3kOM6lqA7047Yn+RMCkVWKjxXnrBowL4kpdJUGqsa8ySmMriObVjeOkw527UBQ71JgSchCiQrs0ZvO/K5uBzx7esZ9wYZ/bQgLe3Y5LRUaG3wXYfz3Yj1VshhVvLmZAzGcLuX8hc/fYYvXl6mFXmMsmoeeGMtHlybwj1ImRQ1L59tnUjYPLoGCT3niTT/n9R0zQclZhdYYIEniwXh9TFD4IqfilLhwQvGJDjmJ+SIeXJbEjgf+ALySXc7jiTnq40QBidv812HTuIzykp8x5l3gzxH4kpJWtZzRcnx7XOlYKUR2LHEYyqW1++N0Mbwa8+vcLuXczgtGOcVw7RkkitWmz7TouZPbvZZbQYsJT4brZhBVrE9yNkb2/EuW1IItoc5a82AwJV87kLnfRfowJUkgctaKwYtuN1LUQISz8FxIK+sMel606cT+/xoa3zCz+moGDwtCEYIwUtnmvzBtX3u9jM2WwF5qShrRVrO5Pm+i5QOq02fStno66yqcTPBqKgQBl461+Z/+8I51tsRxhg+e77Da/eG7Ixyikpx63BCw3fpJj7744JJUc+7fKEnqVSGK62aC2J+4XKH//b2Dt+92SP2HFwpmRSKXlqyFHv4vkOFJW8Cx6FUimbo0whcfCnZn5SkpeZ2L+NzF7rzFEgxGye4pzI8x5kfi460xZIUFa3AYzVxgAmFVuTjksR3mBQ1kefw5z61RlHbFMmdUcqllYS01HOfrNiX3DpM+cpzq1hC64B39id0I4/1VsRaK+DuIGOrn7LZiRjnNW9sjdkapgyzmrJWvLUz5qtXV3l2rUleKQ4mBeeXEr70zNJjyS6AYVYTuJK1pjWEb4ceviMZ5RVbo4KVRkDiWwJwkJasu1atdzSKcGUlYaXh8/KZDl+43J2HQRydEw92PoPEpejDjcMJh5madz6PzvdbvdSmjaYVd2eed93E51MbATd7GbJWuC6Mi/qJFIKLzuoCCyywwM8+TvM/PY7jjZlBVvL2zoQz7YjlxJ97Ux49z1EtOcwqVlrxY5smw7RiOQlwpSAJHALHYaUZELsOh5OS3rRAzVT+se+wFAdcXo75k5s97hxmGKzCC2OIPElWalsdCmuJICU4jpyp0SVg05krbUjzI/W1Ztb3pFZWEaaMVVEFnkAbCF3J2XZEJ/HYHef4rh2/zGszM8m/v68MVuUFIIUhNwZnZuex1gwZFTWHk4J26CKEwHNtTRj7trYaZjbgqNaGFzZaTMuKcZ6itKGoFJEncSXcPkzZGqR0koCVxGecV0yKmnf3bVP4V6+ucLefMcqrOdlkMJxpR2wNpkzL6kTIzdNoYj1JH9APSswusMACTw4Lwutjhnb001EqnHbBeL4TczAueGt3wlor4Fw3JC0+3AXkk+x2HEnOA8+leOC2JHDYaIa8tTuiVIqjQz+ZxSC/sT3ixc3WnASBR+/P4wtfEri0Y5+tQc7r94a0Y58Lyy5KCV7cbHIwLYl9ly9eXqYROPzfb+9wfW9KrZVt282MtwyG/rQgLRV/7vnV9138OrHHs2sN3tuf0kk8RrnPtLSqqkpbEm0l8fnCpWVePNPi3iDl2u6Eu/3shPfAmebpC7PvOqw2bfF2r5+yNUwpakM78lhrhThSUFSKC0sJoevw3sGUfOb79HynyefOd/naS+ust6MTBaZVLdXsj4vZ+KXi9a2hfb1GQDO0CqPDSUEvreilFZFvyZVG4BJ7DlJImwroW5+KSimGeU0SeEghUBoST4BwbBJnoRDCEml5VZOVLisNO6hwZN4uhSBwJZ+/1OXGwZQ7/WzWMa0ptaERepjZSGMj8Ci14DCtUEpzqze1BvKdiC89I/jG24pbh/b4aIYuvWnJ9f2CpcTjl59dnhE/HV67O+RgmuPI+dArm52Idujx397aY1xWdCOfbuSxNcrZHeb83hs7DLKSC0vJhzpHitkI5efOd7kzsOOQ49x6yCWBw5XlBoVSbLRDqtqmYnYiH1cK0pmS7Ihce/D1Tut8GlUDcGEp5la/mHc+HzzflxrevKu8nPg0I4+/8FKL892YVuQ90UJw0VldYIEFFvjk4sHGjOdIrssph9Oc1+5qXjnXOkF6BZ6kwE5WvF/TZKMdcq4bszfOGeeKaVWzmgRMS8WkrFHa4LkONw4mbA9zNlsBiW/9rCqlSXzHEk5gR/t8iZ6praNAojXEvosj7Zo4KSr6aYUnQRuNPDYCqcxRaWnry1pbIst3BL7nkOvZqKOxCjB7X0PoSjxHzLxpLQT2dg04gGOtwQg8h3ORx7So2WxHdJLQjj7OGn211ry1M+bm4YTVpr1te1TRDj0cKTicVhgEjdBjd5QzrQztyOA5kshzmZQ1682QYVbynRs9Bml5gmwSiGMjkwU7g4xLywmuFE+lifWkfUDfj5hdYIEFniwWhNfHDD9NpcKDF4yl0pxfsuqUwHXe1xTycc/7JLodR5LzojrFoB3Betvn3sBle5gTzAzO80rdT8cRkJbqfffnaQvf4aQEDBe6MdrA4bTA9xxe3Gxx83DK3X7GxeWIWwcpw6wi8R0C30UKKCrFMKuZlDX9rOJ3X99ha1g8dh8KIXjlbJubB1P+6L0C1xFcXrHdvkluo7CvbjR56WxrHsX9zXf2AXPimLlxOGEVeHd3QrcZzfd9Ud8vWg6mJePcfrZiZmC/1PBQxhB4DpdXEtqxRyN0+dqLG7y42aKbWNPPBwvMopa8tzdle5hS1rYDWSqDKzWDtJqPxE7LmnFe4cmY59YS8lrzR+/16E9LXj7TJK8NWWk9KFaaPsO8xgCTsqZSCtf1CKRN/bs3SBFCUGtD6DssJQG11rx2dzQ3b1faFny+I+3optHEnsNKI+BOP6UT+7RmfnVypvxzJLjCYW9iUzePjuWjc+StnRG3e1Zu3wgcQk/wo60xYvbZPLfemB/zWVnzB9f2aQYu//fb+4zLiuXYZ1JYVZ3RVo2YV5pJrvifX95g6UGz/MckBx2dG4En+fTZNtNCUWlNWWl+tD0CzNzAvhN53DrMOJwWpOXMI2y1dSrZBe/T+eThzudqM+Cz59uc7YSAYKVht7NU5ql3Ohed1QUWWGCBTwaOr4m+I3jt7vBkY8ZAHMySBPOKm4cpV1ZsreA5ErT1q/Qdm16tDXz2fIc7/ZStQfZQ0wTg/3p1m9fuHSIF7I0KJnnN1jDDkYJObJtyO4OUg7FdX/NKzRp1hk7k089KVG2bcMIRKAO1srUpRrDachhMrQ+t7whqZRiXgJAIrCpMCktM+Y4lzapZjWMpJsjLmp62xJqt8yyJVSuDBo5WQzH7jyNBAonvUmobLOM7Ak8Kaq3nPqyhZ73AlDL88PaAH94Z4LuSSVGxu1+QV5q1VoArBKEnyCtNMaudHAGTQtGpbbhO6Ep8V9IMPe70M7TRrLdOpr7a0IAWN/ZT3tsfc7s3ZaURPJUm1sIHdIEFPt5YEF4fQ/w0lQqnXTC2I5dhZhfuvLKEkedYs+kPeiH5JLodR2OX1/cGrD5wm5nJvX/l6iqt0LNpg7P99plzHf7CS+vsDIsPtD8fXPimhfVq6kQ+CEFZq/l45HGpc+zZdEuDIfIdpBSUtVUgaWNmUdGGwBGPNcE8KuK0ga88t4rvCP7Tq9sM8xpXytmC3+DFM7ZbOckrDsYlsin41OZ98i4JXKrIgwH8H9+9zYWVBoHrcLYTE/uSt7ZHM3LQPufRGObuKCMta5YbPo6AYV6x0gg534146UybTuzd98e40WeQFlxeaYCA9/an1Frz0pkW37s94HBa0vQdjIG8rumn1pNrkFasNmy6X15bxZorbYdTGcNyIGivJGhjE/4Mhr1hzp2BpqptMdaJAxxpO47jomQC8+L12u4ENTNvdx2XGwcTDicVeVnzxSsrXF1rzUjPgnGuEKIimn1bVrViVBki16WbeAymFXd72XzMb60V8pIx3Dqcstr0+fTZNkuJT1Hrhz7Xo2N+Z5jbfTsuuNObEjiSg0lJpW3XNXAdJqXCdyU/2hpx42DKcvP+cfF+yUEnRpKXk/lIrzGGndFJhaPA5ZVzHpO85sZByrNryWM9wj5M5/Nx27nR/skorBad1QUWWGCBn208uNbUynDnMOXccsQgs821OJBzaw7PEbx2d8D2IMNxbKqy0ZovefDqnQHbk/up2mfa0dxb6sGmyTNrCb/zug38CT3JLDSRstYcjgs81yErNY1Q0ggcm77o2KCfQtkmVKk0EnAdiXAArAK9NoadYU4j9FhtBuRlTeA5nPGtT+z1/TG1wvp9CVt/Bp7AN4JRoai1VbUXStIKmDf7XAlFBUocKczsPnSkNbEPPAelDLXRSASeI9ifFFTKMMoqskRTKcWZTsyvv7xO4ttxyciTnJv5s95TOWlZ05vY9TcJXIapVdEbDUJYf+JBZqciVhoBniOptWGYlvNU9EZ4cnqlHfk8uy5oRi5fvbrGWit4Kk2shQ/oAgt8vLEgvD6m+GkqFU67YKyU5s3t8Y8V1fskt+vlsy0ORikwU2sFJ9Vav/zsCquP2G+f2ny0QuY4Hlz4jpRQnuudSNw7Go88uuDvZxVCgi8k46LGdxyKyiqnpLS+VRiBkJJLy6ebYO4OM75zvc+d/hSNoR16nGlH/K+f3uR2L+NsJ5qrrQTWy+BWz+6PC8vxifczzEre2J7wGWySYDe2I4zv7o241884TEtLLiXWB2taWBN+B80gLUh8mzyUBB6R73C2G1PWit9/azBX9Ly9O+ZMO2QpsYbuR8SglA5nOiHbQ2vILrDdvZ1BjsawlAS8cqYFUsyTP5UxLDd8292UDqOiphW4aG2YlrUda/QcSt/gOQ6uI2yKY2g9tKaFJduGeYXriLlp/MG0oFKw1vKJfZf9ScFm246rXliKkRIOxwVaVbAMO6OClVbEUuJxt5+TVYo/eG+Pt3ZHnGlHnO9GvHZvxCiveOVMe04UuY58pLnpKKu4eZCyPcjYGxW4UmCAbuzjOpJaGZss2fC508949e6Qn7+0hBCC3WHG77y2Qy8t2GxFnG1Hp5Jrj1KGCgFLiYeUgrS4r3A8mBScW4r40pXlx3qEfdDO5yir+OGdwY+dcLTAAgsssMAC74fT0vSu7Y15fXvIO3tjNtohzdBjOQlYij12Rxnv7EzJas1GyxqiH05LiqKEDry2NeTKWnu+Zl0/mHA4Lfnq86snauGjZuRS5NGKXPLa2jNobcjKmkqDoMKRgsCTCARSgFagHevVtZL4HE5LSmWVVMZA4oPrOQSuYH9cMC0V46xEA0ngsdoIGBc1yoCZjTNiDL5ribuyVkigxhJvDU/iSUHoOYyqaua/ZdOzA9cqtMA2CGsNaaFwJUjhsDJTaNlAI0U39jnbjgDD9jDj333vHoFjVV1lbbh5mKKMVe3X2jAt6lnN4OA49cyvrEJhCFxDN/IJfEk39rl+MGVnkM1U8h77k4LPX1x6aJ/vjwueXW2w2rSNxUFaPfHroYUP6AILfLyxILw+xvizolT4qFG9TxJrrZAvP7fCd3dglFccZPWpaq3T9tsH3Z8PLnxJ4CKFYJJXZLUm8VwuLt0nl44u+AUCre3vQtqCoaw1kecQuS7KaISQRN5JZdjRKNgbW0P+3Z/cZWuYEXsOgSO5Q8qPtkYsxT5rTZ9K65lSDPKqZm+cEwcuq0Dk3T/dDYZbhxlpWYEPUgq0MbZ4aoZ8+3oPow2d2Jv5Y7mc7YbcPswYFxUCKJQi9l06sc/ZbsRGO+Cb7xyc9Mc4mNCblrx+b8T5pYhKKZQrrdm769IKXSLfZZxVljhUdkxysx3iuhIQ8zFHV1pizHMlz603uDfIeG9/wiivUUojHclK7NEMfQ7SwqrHAoey1vSyCmMMrdAlmKkPD6a229qJfJSyHlIG6E1LpoVCGc27e1MS30UCrZkqKvJtyubeqEAKw9luwsWlBtOi5vfe2GGcWwP/lSSg1oaLS/E8Pei0z3VvlPODO31KZburgeuQVTWOkIzzCiEsodwIPTTQCFxGeW3J2arm//NHN3l7Z0wn8jiclCw3Ai4uxQ+Rpo9Shn72fJdff3njAyscH8RjO58Y9sYFV1Ya3OmnHznhaIEFFlhggQUehdM8JYdZyd1+BlgFea0MkSvZHqYMMxdHChxHEAmHvNY4jubCUkyWHSmhZ6nfQjx2zRqkFXd71kLhzZ0JeVmT1XpuEWEM1DNVutaGflFT1jXGCColCHz7WlLYf0obcGwCZCPwKGuolEEKg+d6OEIgjGFrkJKVChAkgXXyKmvNNK/xHDsuKSRIBZEv8TyXUa6QAtzZ7Z7rAIZaH1N4CZsMeeSahYTIsYov3/XY7ERcWk7YGRUorTkXWmXX7d50FmakaIYu682AonLZGubklbL1jXQwGrLKStJ8Kbm4FNGKHBzHYVyUjHKbEvnMapO1ls93bvT55jt7/MLlZdZb4ZxsEkIwyiv+r9e2n2rDfeEDusACH18sCK8FPhKeVFTvk8Rq0xqS//rLGyicp6J+O7Hw9VOMgd1xwdW1JheX7xMcR1LnlUbAvX5K7DuzMTVB5Dr0psXcsFwA662A9uyxx0fBdocZ/+5P7nK7l3J5OWaYVby9N2Z/UiKM9aa6vJzwi88sW6Lv2EJ8rhvxnRuHJxQ4R2OY7dADbdN/jhIqj/wram0424kY54pJbruAZ7sReeWTlWpuYP/iZpuXzjT50db4pD8GdgQxciXDoua9/Sm7w5x7KkNIW2RVtaE/LQk9aRMfY7sfetOCQVrx2QuduVJuOQm4dTghCTzc2ePbkc9GO6Q/LYk9h15ashr5dBKPW4cp1/YmTIsapa08f5AJpoXimbUGjdDj4lJC5EtGeR/PtW6s47yi1Iq7vZxaKy4vx9zspfPP1JOSnWGJ7wqeWW1weTVBa831/Sl6ZhBbKU0zdNkZ5Yyzk5HZxz/Xo/NnlFX8wqUOr94dcqefMsg03UhSaDNLofRpBQ77k4rzSxGNwOG1ewN+97Udfnh3QDIbC80qxSiv5695nFzrxB6eI/nUZpPLKzGh55xIW/ygCscHcVrnM3Bsh/h2L6WdRJxfivnOjcMnknC0wAILLLDAAqfhQU/Jo+aeUppznZj9Sc6kqDGzdObb/ZRhWrLeCllrhVxda+A7DgbD92/lIKGf2dRAgaDUiqq2iutre2M+e77N0iwE594g442dsQ31qTXDrELOvGGVsuQRxjawBmkJMwLMaEPo25+9rLZWDcISY66AWmnSWRPMEQLXsYmLtdLktbL1UyNgf1KCgLVmQFYqBmlFqWdjiBK6kceV1Qa9tGBa1GhjTfF9V+IKiZ45eBWFVdXr2Shl6DkoZccft0YF3djwP31qnec3mtw6zMhKRTf2QNiEyt60Yinx6cSSqjZWjR/5jLOK7WHB1BjOdFxWOiG9aY1BY4ShUIalJKTWmt7MkL+bBFxejWlHPr/2vMMf3xzwzu6Yorb7yXMcpkXFvrYeX0+74b7wAV1ggY8nFoTXAh8JTzKq90mjE/t43tObpz++8H3uYofv3uhTKYXnSJQ296XOkYcxdiTvC5eW+N6tHoXSKGVwHUmpNKIWrCQBL55pzf2VjpRhviP41ruHbA8zLi/HjIua1+4NyStNJ/KolMKRkpuHU0LP4X//4gUurzTmCzHA3X7Gu/tjVo1VHaWFsubugQsaurE3J5Y8KUkCFzWyvmKXlmPyWlMrTa0Nda0YZhXPrCX8L69scmklOfU4SAKH5SRge5jiScl7+xPAau67oc/uKGecV+S1InAdayrvWal7VtfErkNaWENTgeDCUsh7+xNqpbjTT+lPK6Qw3DhI7fMKwbRU5AO7n1YSn2FaErkOCoNS9jOZFDW7wwJX2uSjy6sJrpRUtUYbg9KGg3FpY7IjH99VNNOKJLD7cqUZcJja8YFm4HKhG3O7nzKt6pnCseKtnZJKGdYaAXuT4kRk9nFz0wcTPz9zvsOkqPjmOwf004rAc3AcSehJ9icVzdDhpc0WpdL87ms73OmntEOHThygDUwLm9QJcKuXzu97b5Dxg9uDU0eO56lHH0Ix+qBB/mozONH5rKqKZeDycoNXLiyhDU804WiBBRZYYIEFHsSDnpJzj9XYpzEbqeulJWlREzg+vpTsjgrWWyHnO9F8PayURmkNEiZZxav3hgzTkv1JaddwV+BLyUoS8JWr1irj+v6EWmli30Fpjec6aK2RGJQNTMTMyuSjdVpjDeOL2lCpGq1BOuAKge/aWrJUBqkMQmo8V1Bra0gvHGbeuZp2CKEv0Qaq2eSA25QMs5Jm6FLUmmdXGyw3fJtenSsEBiklie+gjGEpichrxU7PpjS6QBx7+I5DWilqpXCExHUkV9ebTAvFq/cGVEpzOC1wpAADaVWz7gQ0Qp9RZtVpeVUjZ7VMpTWuI6i1baJ+4dISYFX03djjT+8NSQJr13FxOZonZ3bigF96Zol396YErkta1ry9O2KQVlxda7KUaJLAfeoN9z8r0zULLLDAB8eC8FrgI+FJR/V+3HC08HUTn7VmeKrU+Uhhtd6KWEoCxnnJrV5KUSpq7VJUNb4juLya8OJma+69dWSCCXCnnxH51pfq+v6UvNIz3yVpyRql6EQuvbTk29cP+eLlpRO+SxvtgD+4ts/3b/WJfAcBNgo6dbjahgvd+AGiyufmgWSSVyzFPlobDiYl47ximJU4UnJ1ozWX+Z92HBzFRg+zknf3xkyKik9tNNkbl9zqZxSVwpn5SKSlTcvUGrTUNAMXYwTXdsc8t95kOfHppxU/d6FDWSv+29v7TIuaSWGN+i8sRWy0QoyGW70pfzzKSAKXVuRSK2vU6rjQTSLSqqaXFqy3AqZVxcGkYCn2uX4wZpBVuFKS15qtQcZ6K8CRkpfOtJDaHsPX91P6mfWhYNa97U1L2qEltJqhS+g59LOSduTRDr35mGQSOOyOMjZaMXmlGGW1TSTybAeyHfn8+subGASv3xtS1YpSGYracHE55nPn29TGeor1pgWXlmObYKTtqGc78hhmFZ6jOJwU9KYlRaX47o0etdZPZOT4ccbzv/bCKoO0YpqXfO9bb/CVqyv4vk9/Wi4SjhZYYIEFPiF4XGrw08SDnpJHHquu46KBduxSKEVZWyJMA75rSZh39iZUtUIb+7dJXkMD9iYFWT1TamlFw3eZlDWFrnlrd4Qyhs+e7zCYlqw2Al69N6RWmvWmT6kM2himpSKrZmONypJc830FM38vCF1B4DlIAa3AZVzUpJXGKE1aW0WT79kGqiMEzkztPi0UketyZdU2RfNKQW1TJj0pqKXgVi/lzZ0xWhukFLiOJJFWeVZVdrwxTW0yNNjmXqZsI9F1YL0ZozX0s4LX7g0ZZBWDtGSlERI4kkob9ic5lbK+qu3Iw3UEZ9ohtbZ1TMN38F2HX3p2Bc8RRJ47OzZgnNU8v9Ekqw0XlmJakfWiPX5M9aclb+6MyOuYy8sJUgjWmwE745xxfl9N/9NuuC+wwAJ/trAgvBb4SFhE9d7Ho6TOu6NiTgZVStOMfCKvJK/sfaTwCH3Bs2sNGoHHtKhPmGCWyqC1lZ73JiWDtKQRuXNCy5GQVWZmBB/x3v6UW4cpl1cbwH2Cohm6eE7MJFekVWWLL1VDG9rRSSVc5Ds8t95gUtS8sztiOCNmNOAJwfmZR9k33zngq8+vPvI4aEc+V1YbvLs3xnMdamNYafjklULPEoLq2o5QWv8Gj0lR0wp9PNeSSz+80+cLF5d4ZrXJRjvgW9cOZr5nkiRw6IQeaa15b2+ClNaUdXdUEHk1G+2AsrL+FaHn2nSg2mWrn3F3kPFC1OJwXLLccLnTy6mU4qUzHRqhw94o53YvoxN6PLeaMEgLAP7/7P1JjF3Znd6L/tba/T79iT7Yk0kms5WypGpkSS7JvlXX3b2GH1CwcQEPHuyBUfDAqJE9MWwDRg0MGIU3KMMGDJTx3sTwu3hvYpct3WdJLpUslfrKviGZ7KKP0+++WW+wTgQjyCAZJINkMHP/gESSjDjn7Gadvdf+1vf//hfn65i9EBBEWck7KwOSrNTloUCWK+bqDrYpWR/HNF2LNCsZRilXt1LGSU5ewuY7se4c1QuxDX3uQHdX+uqFWRquyUo/RqGdgYtNXbJgGxJpSHzHpOGaONPS2LZnAXoCPI5zXEuyMgwxpMQ0Ss7dVXJ8xvJ5f23Mn3y0xTcv6/Ddhz2QHDavr27fcY1B1eGooqKi4vPCw7oGP03uvtdYhi6ru7o5Icp0mWHbs+j6DottlzQvuN0P6U1SvLbBJCkYhKkOWc9y/nIdlCqREgpV0vEd7cgqCoQpcQzJIEz404+3+HBDxxNsTxLCtEAI3dTHMg3sQhGlJQLt6gIwmDq+lBa9FDpeIi9K4qxkGOa7/x4V0ywtUSBLk7woKYUgnwbb+45B3bG4vNjio40xW5MJoygjSArCNAf0Ap0l9UJ0qSBMcpJM0JrmhkVJiSUFptT3Z8+xMAodsN9yLSxTsj4MmcQ5P/hkG2/qKMtLPb+1BViGoGYbZIUO7LcMqRcz85I4y2m6Fg3XnM5Dcy1GSknHs7FMQcuzma3bmFLsE7sGoV4o/tn1HhujBMcQhHFBkOSc7Po04B43/Wd9wb2iouLwVIJXxRPxrB9kn9eq4WE5yOq8Iwatj2KubgZM0oxTHY/FlktelPSClDAtSLKSW4PwnhDMfpDS9izGcc6V0Zi8VNTlnX0uSkVWKJquRde36IdaVIH9GWtvnGgB2uKflSVvJRk/ubY9/bccz73TceZk1+evvL7Ij65u83/+7DYb4wRTaqFkYabOF062ONnxdy3j33h59r7jwLMknmVyebHGy4t13a7bNBgnOe+vjggS3SlwnOQIqX83K0sWax6mYXC66/O1i7OcmfH57odbRFnBXMNhdRjR8RwsU1KqjKtbEaYBTc9kGGvX21agSwsXGw5zDRvHNLClnIo72qHYT1Li3OTsbI3ZmkVSKKK0wLcNLEPQ9iw+3gyoW4ANC02blXEKCE60HG4PEkZxRpIXeJZBP0yYqbssNh3WRtqJFaY5W5OESVLQ9CxOtHXWRJTpbLM/u7bNb16a3x07bd/mjeU2SdbTE/ai5PYw4VTH49xsje9+uIlScHUzYBznbE9SbvZDTCmxDEGaKwZhyomWj28bLNxVcrwzeVwbRHywOmIrSLg4/+Dg1UfJ6zvoe1F1OKqoqKj4bPO8mxjdfa+xTckgTFkfx9Rtg65vs9R2GSQZybbOuVpoetim4KONCYaU02Y6BivT0r5RmJOWKR3fIi0UYaab7iy0HPpRRt01+fH1beJc0fUsllouW5OUYZyRZrqhjmlIHEsglSLMd8Qr/X9DQlFqISzJit0/i+l/O24whe7kaAqdtepZAsc0QEDbsxBS8NHGmLVRPM0KK8gKhY6z12KbtHXXZyl18544KzGlYK7hkJUlJzo+ozABMjqehW3bWIZ28W+OYwZRTs2xcG2JZegGRLf6ESfaOg6i4VjU5kw2xwlCSixTd2wsS2h79rQiQDEIdZmpZVpkecnNfoDU7SXvmUsOQt34aGUYcqsf49mSXpBwsx+R5oV2kbX9fW76umt+rhbcKyoqHkwleFU8Ec/yQfZ5rho+CW1fZxF86701gjRHlbCZJLuW9LwsmG+6vDRf49fOzewLEt95/YmOz1aQ0nC0GJRkJZ6treyDMKPpW5zoeISpzsNqTF1WB2Vr7WSEdXwbSQlbK2xMYoy42Ce2gZ5gzTcczs3U8B1zOvEpuL4d0fSsXcv4cBqSftA4WBvGNFyTMzM+3ZpDP0yZpDnjOAMd+YBrGJjSYDK14ruWZBDlnO3W6PgWnm0yjHJuD0LOdHVo/5XNMS3XIk5zbvQjJkmGQBFnhg6dVdqNlqiSUZTj2RltXyCFwDYEi22XVxabDMIcwxCcm/WpOaYWBIuSMC24ujlhYxSz1o94fUk75m70I2bqNo4h2ZykND2DQQgrwxgpFHGmKFXMKEp1uUFR8qtnuszUbdbHyT6nVd2x+LWzbb7z4RY/ud7jK+dn8Gw9URtEKS/N1/Esg2GUUSoddHttC6I0pxdot1/LM3dD/IMkRZUKIQS2IbnZD1lSHhembj89JlLevjWkH+t8M8vSrcgf9kDyKHl9Ow6vvVQdjioqKio+uxyXJkY795q3bw35zocb5GVJ3TaxTMlS26PtW6RZwUcbY9K85K++vsD1XowxTZUfxTmuKVnuuMAIzzHoBSm2FFiWpOPbzNUdPMtgaxKzOoxJc8WZrsf2JMU0JN3p4lWSFdRtg4nSmaiFUlimwDEkSV7qcHpDkGQlZalLG3cwBZgS0gKK6b8VhQJTd5uMUl0H6ZkG4yijUIKVQUwQa2dXgXZuGdPsMKWYfqagKLSY55qShqMFvjQvkUDLtYGIXpiyaFugdPfqYZhhGZJOzWKu7mAYku1Jyu1+xK1+zEvzdZbbLklWsD5KqDsGv3quqzthlyW/vDXk2mbAfNNhoenCdAzYpsQ2JVIIbvWjfXPJubrDp1sha6OQ1UFMoRTzDYe6Y1F3Cq5sBvz5rSFN18S3LcZxRlaWlXO8oqJiH5XgVfHEPIsH2ee9avgkiGkJ4CjKWB3GOJZB0zVRCsZxSqEEptQdflzLuMchtldULMuSG72ItVFEVhoUpaDpWby61MC3JB+sh7x+osmZGR94eMbaXMMl2YKvvTRHt+HvC7r/zgeb9MOUhmfS9mysaeAoSreevr4d8epygzTQbbcXWwePg9dOaDfYdpCglMKUglGkSyqXGg6DIJt22xFIKRmGerJ2Ya7OQsuGaaegvfsy13AQQnKrH5HmJcMwwzYkWaEwpSRKM9K8pO6YtD2LMNElhfr1Esc0WGp6lOjQ+n6Y4Fk6L6Lu7AiC6G6ItwQfr0+4sjHmy0uwPUlpeA5128KxJFFWoFBESU6QFczULJ0hAWxNEvJSsTVJ2AxSTnU8uGue3/YdfuN8hw/XJqyPY0xDOwJnpuJglBWc7Ph3BMRRzEcbY+JcZ4Jd2w4J05Ky1HURhdLhr1881WA7yNia6M9dbvsopXhvdcQnWxMMIdjItfB6uxFzab7BIErv+0DyKHl9dfvg36k6HFVUVFR8NjlOTYzmmy5vnRZ8sjnh4kIdEGyNE3phynagm9ac6visDmMmScHVzQApoFT6Fu2YBrPTbVxueWQqYant0qk5uKaEaQOaUqFd+DWbmbrDxxtjrm0GJLl2rhelIswKHeWQl0ySEnfq+MrLEpSgLBXlXVV3Ei1W7fzzjtsrK3WgfglIdMfGum0wjHOiVHdezEqQUmBMP19Mxa5SQFnq/K+2b+tSRwVxoTCkoFtzmK07jKIYgCjLGYa68+MwSnEsiW+ZXF5sAgLfkiy3PJabLhuTGMfUApgQ8OpSgy+e7ILQeV62IXnjRItRlGEaOifVnjZtGsYZNdvi/FyNlWHEr5zp7M4lP94YcWVzzDjO8W2DmmPimCZCCBzL5FTH59NewPtrEy4t1DCEbkD06XZQOccrKip2qQSviiPhaT7IHpdVwyeh4ZrYpqRmmxgGRHmBIQRzTY+5us04zrnRC3XQ6AHcERUdilLxvY82ibKS5bbDudk6AvhgfUK3ZvG/vra4m+/lmBJbSrYDnaVgGTr3aicbIZkuJ841HOZadwTDfpDywdqIYZizMohZH8XaOeZazDcc2p7NdpDQC5xdy7hSOovrlaUG52a1QLPjVtscJ3z3w00+3Q7wbYNS6W6PhimZn1rp07xAISjKkrprcnmhQZyVuyt0gzAjyQp+dqPPJC2wpGBlklAU0ymhANcS+LZBWpRIIcgLhSkEQijyQgeeuqYW4QxD6tLBEy1+dG37nvwxhcKQEt+WmIbAMPQxtU1JP8pYHyd0PJtXlhucaHtYUnBlK8CUgiDVYfqzdQeFFpkGUUZ/scF8Y3/nIX38XQZhxuvLbWbrOsPiF7eGbAfJPWN+TjnkBQgFozgnzUpKpVull9PihzQvudVP6PgW/TDhZzcGLDYdrmyF/PzGACmgW7PIC0XTsxlEKe+ujDg/V7vvA8lR5fVVHY4qKioqPns8zyZGB8VdpIXCNASLTQ9DCpbb7q6D25pmZa28vcovbw3phwlzdRfb1CV/QZqRFSnMAALqju50uCN2KaUYxhkN1+JmL2CmbnNjO2AcFTiWJM4L0lxRliUI7Sw/P1vj2uaEAiiKgrJQFEpRqP0h9js5X4luEolt6BytrCj1eyowDeh4FjXHxLdNDEOypRRhWmBMc7rSvNCOMKnFM5QWwqTQDrNeViKUPkYbo5T5psAyJa8stoAehhC0fBuldBRGyzOZb3icn62xPk4YRCnzdZeWb7EZJBSlQkoI4oLXTzT5rVfncCxz95zEmW4UkOfQj3QTJNOQLDZdznR9Gq7FrUG4u4D6zYbDibZLL8jYHMd0fO2S74cplqGfL2quyWzdQVBye5Aw39BdKCvneEVFxV4qwaviyHhaD7LHadXwIA6TKxZnBYWC8/M+jmlSlGraoVACuhytF2b3Fbzgjqj41uk2v3Fhlj/9eJPbg5i1qRj1+okm/+tri7y63Np9TZoXbAUJH66NaXomlmEwU3M4M+PRdC02JzFz3Btaf3sQ8t7qCNuArq/zw2wp6QcJUVJwquuRFQWrw5iL83Vu9QP+5KOIQZSQlWpfuakQYp8L8P21ESAwDQNhwOXFBr0wZRzllKqkW/NoOBa9MOdkx+Vkx2N9lOiW4KOUG/2QczM+5+fqbE8SgkRnRxgImq5BkOW0PYumZ9ILMlQJxrQFuG3qsPdT3RpfONnm9RNN5hoOt/rRvsyIYZRyfTticxzx7sqIKCvYGpcwr8svXVs3IFgbxoyuZvzvX1gCBH/hgp4d7y2JDNOc+YbLJC4oS8XqMGQUZbxxsknLsxlGKR+uTVgZRtMsDpuWa3NrEHJiT5v0HfJS0fZN4izHNiWeJSlShTIUhgTfMkgLiLISK9FhIeujmP/89poWL4cRddckzApmajYnOx6eZbAxSdgYJbRr5oEPJI+S15fn+aG+OxUVFRUVnw2eVxOj+8VdnGy75IVibRTR8mxqjrHr4AaYxCkKxTguaHkWUgqEEDo8XVqsD0OYgZptMkwUtilZHUXUbJMw1ftiGoKaYzCJMz7tRUihaDi6y2JR6hytOCsZxblutmOb9MNUL/pNHdkPwpDguwaWlAgEltQWtJ2ySYUWw5baLmFa7AptngU5AkNCWoIxVdGkqecQ/TAlzUs825guxurc04/WJpyfdcGAbk03HVJKEaY5lgFpWfLOypAkVwRJziDIGMcZkySn49kIBAtNExD8j4+3+cbLcyxOF1P7QcpMzZlGbtTJyhJLThdhhSBI8n3jY2fu2PQsNsa6OmKu7hAlBcM4w7dMUArH1Iu5XzzZ5i+9Ms+JadnqcV0Ar6ioePZUglfFsedxVw0HYUpB8VTLpg6bK+ZaeqIVpoXOR9i7LUpbvuuOed993GFHVPyLl+b42kszXN8OGSc5DUdnZO04u3a27XsfbaGUzuvKihLDhNuDgM1xzHzT5UTLhgH7jk1Zlrx9a8gkzjnZdWl5Nte3Q8KsoGabTJKMGz3datuUkqJUfOu9dbKi5EzX56W5Bo4l7yk33RHszs36oBSmAZO4pBemNNXOrE/gWRLDkMzVbUwp+dG1bZK84NOtkFGc0/UthrHOkujWbWq2yc1BRJDlzNRtPASLLRfH1JPOmmMxW3O4OF9HSkEvTPlrry9zabG+u9+vLTe4vh3w9u0Rvm1we6BFqbRQeJaBY0q2xtrmn5QFtqEnaL5tMElzRlGBa+vAfUMKFIqbvYgwzVlouJSlYmUUEWYlZzqe7ia0HXG6C2/fGnJrEHFhrsbFuQZJXvLx5ohrWyGzdfueBwfL0FkXUVpwYb6BFIK4H2Eb4NkmSimgpCgVtmmgkpxxnNNwLeIsxzKN/Sm403HVci3WRxENr37gA0kVPF9RUVFRcT+eRzfe+8Vd/PJmn2+/mzCIU8I0Z7nlMbfHXa2U4kYvYqZmYwrBrWHMMMroeha5gjDN8B09H7NNgzdP6MiHm/2IXpBqUcx3WGp6REnOn13v7wbOg6JbszEEDGNJw9XC0+YkxjV1qP3GONm3wCmY5m2JOzleO4H1UVKSm4osVziWxBDa9RVlJd2arYU0SzesMaUkzDMyQ4DQHRzZI6wJ9BwvyhSmBNMQNB0L0zDI8pLbYUgQJ3z5DCw0Xf7ixRk+XJvw0+s9VgYprpVgSIlj6d/vhwlJrmi4FreHEU3XZLZR51THvyciYd/4mKkhxB5H/X3GR9u3ONXxePvWgHQqpJ6e8dmcJIyilFGUUXNMTnU8/srri1xabBzZ2KqoqPjsUAleFceeR1013BwnAPzXd9ZIlXhq4faPkivmWrrb4M1eyPo41plYps4aGEQptmlwquPthrwfRqSTUnJuTxj5Xu7uzjiMMq73QnpBiiEkvTBlvunw1Qsz/GR1/z798EqP73+yRZznvHt7zHLbZb7pMI4LJnFGUcLNfshy02W27hBnJY4pWGx49KOM91ZHvH6iydmZe8tNhRCcna3xylKLK5tj3jhZJ0xLskJ3ClIorm0FLDRcTCnYDhLmGy55afJhNkaguwvVHZNhpLel7pq8stRgFGV06w5hlgNaEApTxemuw6+c6dD2bYIkR0rBfPNO+ev6MOJH13psTBLWBiG3BjFZXnJutsZiy9HhsFnOuRkPmNCbZNQ8gSEEM3WHrrKJshzTtHbHaJBo637b0+JmWpbM1xxs02AjSPEsQ3c8ClNuDyJOdjwuLTQwp9ke52frfLQ+4ZONgF89Z+9rz11zDDzLJM5LWr5JM7DIy3BaqgpJofAsiUAxSTIMIcgKxRdONPAsyTjJCWKdNTaMMzbGCWdnDGwp6EcZ3nQc94P0njFYBc9XVFRUVBzEs14UuV/cRS9IePu2Xkiq2wamIbm6FbIdZAzClIsLNeKsxLdNTnV9lps+tfUR766MWB1FWFKiBFhKK09b45g3TnV440SbOMv5s2s9NicJYVLwsxs9wqRAoLOxilLt5ncqpY+J7t6ckeYFTdem6dnahZ2GpNOyRbiTH7avK6OAUikmiQ6Ub3smtiV1J0el6IUpn26nWFIvvmVFSaFgGOvSRlXq99G1BJBNt2++7tDwTCxDEiYFhSrwbIOabRGkKQCTJOcnn/ZZGcY0HB0IP0oKLFFQKIVtCPpBhmNJLs3XWG77CAGjJD8wIuFxxocQgl8/1+XnNwZc29bufs8yWGw4GEKw0HBp12x+49zMNKutoqKi4l4qwavi2PMoq4Ybo5jvf7yFAzRdC9exn0q4/aPmirV9i8uLTZJch4v3wpQ8yTClZLHpEWUFSV7yJx9v3lMS+Djbe3cZaNu3aXmWzq8oS7K8JC9LbHO/I+y7H25ysx9gG5KLcw2u90Ju9kLans25OZ+Ob9GbJKRFyYX5Budma/zkep+u7+BYBs60NO56L+TNE60Dy033Tnqub+ttbLrWdNKTcKrjY05zx3aObT9MkVJwou6xGST4tsHZGR/DkIzClDMzPiuDmJm6zdWtgK1JjBBwqlPbFbsOWkF8b2XIf/rJLVaHEd40aF2gaHkWjmlwpuMxCFKGUUpr+pqGZ3Ci4+M72k4fpSW2JZitO2yMY87aNbJCH1/LtHazPk50fU53PG70I7bHKavDCNOQXJircWmhQdu/U45bd0zOdH1u9AJeWWrQcPesiCuouSYd36Y31qKUbaDLAabisGlIkqKkZWhXV8u38B2buptSc0zWVcJw+vujKGMYZWyMEiZxzuY44b+8s3rfMVgFz1dUVFRUHMSzXBQ5KO5iEKZ8/5NttiYpyy2XUsFs3WF9rB1cUaaD3b95eZ5THZ8fXdvGsSRfOT/D6Y7PL2/1+WQj0MHurn7PlxbqfLod8NH6mH6QMoxzPFPSDzLioqTpmtPGOmK302GYFFimpO1ZKDXNKFXQC1Mc0+Bkx6UfJMiiRArIC0VeatFrL0kBvi2wTe3gqvsWcVKQl4qaoztSrw1j0kIH0KfT9ysU5OXUOYYujbQMScMxcGyDr5yfpVuz+PH1AXleIqXQrwX86VwoV4qrWxNqtokCSqWX3sK0YBhlyGm2WM0xKdCOd4TAfUBEwuOMj4WWx+98+ST/6Se3uDmI8C296LfQdHAtg5NdnzdOtqo5SEVFxX2pBK+KY89hV4UA3rk9YhSnzKFv2kKKpxJu/6i5Ynv3YRClLLVdpBCUSrE+jBmGKb6trfZH0YHyoDJQIQR1V3/li1JNw0H17GqvgHd+tk4vyHAsgwtzdTZGMSujiKtbIae6PrMNh6xUvLRQJy/VrrCz8xkt16IXpASJXjE8qNz0QZOekx2PH13b3ndsLalFnLTUORpv3x4yW3dIi5J+mNEPh8w2bF5bbrHQdPnxpz2kkPzq2TZN1yJI8ntWENeHEf/pJ7e40dOrhrZlMAhTklzh21pA2gpSZmsOn26HZNNwfCn1hM41JRuThI5n0fZ0+P0vbg74dDug5phIIZjEGVFeUrO0gNX2bdq+zcY4xjYFJXBpobErpu09Vy/NNVgZxlzbCrkwV9s35i/M1Vhuuby3OqYoCtq+zSDUeWXSFCS5ouPrcsikUCw2Xdq+RbdmszaKOdX12Ap0OcAoztgcxfSCjMWWy4W5Op5tPnAMVsHzFRUVFRUH8awWRe6e5ygUH66P6YcpC00H05CM44ymZ7HYdLg1jGjYJic7Lm+datOp2bv5nboRT8p2oPO1Gq5BVuiSw+0gox8V/PmtAYaA3zjfxbMsNsYJoOdAO5UIpVGihMQsS9KsYLMop2KWwhQQp1CgkEKLWKVSJHm5K07dnZ6p0B2s55su7WnW6nYBsixpuSZXNiPyUlEWumlNMc3rcgxBOq1jFEK/d7du85cuzxMkBUWpyxClEDQ8E8+yMASkZUGaZgC0HIuigLVhwo1+SJKWCMCYLpSGmY4MMYRgHGfEuT4XD4tIeJzx8epyi3/wmzY/utrnZj+gRNFyLU52apW7vKKi4qFUgtdT4DAh5hWPxmFWhfpByu1ByFzdhcH+1x91uP3j5IrdvQ9RUWBLCQKW2h5vnGg91Cl2WHYmX1Gqy/vuDge9Uwaq33MY3RHwfNvYFUbm6w5nZ2t0azaTNOfVxQbro4i0cOjWbOKsxJS6NNOZHgt7OsnMyhKRcd+Q2vtNetZHyT3Htubobbq+FTCKM/phxnLLY77pUrNN3l8dsjVW3OqHzNQd/vobywihLfm3BuE9Y0UpxY+u9lkZRpyb8XFtfSn0bZOWZxFlJbZZ0gsyLi3UubI1YXUcQQeKvCQrCzYmOf5U+Gp7Dg3X5Iun2tzsh6z0I5SC9XHCpfkGZ2b8XQfXMEr55a0RSpWM44wfpgXLrXs7NzqW5NWlBic7PsMou2fMA3i2Xt11LYONcUJWFGxNdL7Z2Zka3bpNsTlhvuFSd7XoNo5ygixnseHQck0GoV69nW/Y/MWLc9SnbrKHjcHqOldRUVFRcRDPYlHk7riLICnYmqRTN5QkLxWGEBhSIKVkvu4SJgVZqUgLtbsQeXVzwvc+2qBUOier7enIBD1/AkpFnOmmM0LCrUHCUksgpc6/Gic5NcckL7V41Q9SsqKkVOAIobs8S8gKiPOSMM6Z8W18x9SRCanur3xQfr0hIEp1xIBeJGVaemhzoxfTj1IMoRCGJC9LpCnI83K6fzrrq+aYuJaJZQgGYUa3ZnOzrx3mCw2HXOkA+rRQBFnJmbYP9PEcgyBRbEwShlGGY+hmQyaC1ACV5qR5ySTJKUudG7rDTkTCbM09MLPtccbHQsvjf/uiW807KioqHplK8DpiDhtiXvHoPGxVaEeEciyT5IDXP2lL7L0P+FGaY0lxqFyxu4WBb7w8yyDM2BwnjKKcn97osdg62g6Ubd+iZpv8z6vbGFJSlOVuV5/T0zDRC3ON3e6MSa52RSYhxK4wsjFJaLm69fUkzdkYp3TrLp5tkWQlNUd3fVwdhiyYrs6rKvRnmVI8NKT2oEmPbYh7OisJITjd9XlvZcTmJNHlqrZBmpfkSvGFk21sy+BUp8Y3L8/tvuf9xsogzLjZD/AtA9u8I6y5lqTpWWyOYqI0J0wNilIx33RYH4QAbIxThBFNSy8F47Tg1iBk850Y25Astzx+/fwMb51p8+NrfbKiwDJ0uP/GOOKHV/sIFL96tsvmOOXmIGRlEOzr3LhTfnl5scU3Xp5lGOUH7sc3X57nndsjPjCGbE1SFILXlpucn6vTcE3GcUaharpcU0F76nC73gvZnqRsjBM6voVtSF5ebN5zLu43BqvrXEVFRUXF8+TuuIusKFFKR0JkeUmYafezO11wsw3JdpYgcXcX4eYaDjN1G9+xGIUJa+MYiS4NdAwt4NweRgSpwncMpBLEacEgTJHoEkTfMknygvlprun3P9kiKxSmFLoM0THJSkWWF0zigs0g5UTHpe3ZjKN019W1N79LCu3ssqQgzkvirGASpdQcm5Mdl5ZncWsQo1SJNPQcxjUMfMdgFOVEaYEphW7aU7cwDEkQ51zbCjGlpGYb3O5HlKUW+LqexSDOOOn4fPlUE1Zvo5RAqZIkL8iLElPoTo4KRVmis0WFrhgIEv07WjQs2RjHNBzzyEsNK3d5RUXF41AJXkfIo4SYVzweD7rZ7az2JdnBgtaTtMS+5wFfSraDlK1Jus+ZBftzxdK84DsfDPYJA3XHRCkI0pytScJHa2MmcYNzc/4+hw88vki3OU7ohymTpMCUBbN1BwXc6IVc25zwxdOdfeGgjin2rZTuFUZ6QUqY5LqMcb7Gr5/r8u7KeHeSeWbGYxRlrI9jWq7FINIriJvjmHbNeaSQ2o1RzNu3htzshdph1nCYrbucmfGwDEnTNZkkJrYpmcQ5lilZbLqc6fpYhmQUZ7vh+MB9x0qSl5QoPMvUQp/cEb0E8w1nWgKZYJuSD9fGJEXJqY4LDFlsuaRFydY4ol1zWGx5nGh7u9/3q1sTtoOUb7w8x19/c+mOK3GScG0roO4YfPlMl05NlxxOkpwgzeiHCdc2Q15aEGyOk93ySynlffdjvunymlJM4pxxnLE2ipkkOde2Ak53fS4vNvn6RYd3bo92y4EbrsWF2RqmFJybq/HaUpP3Vocs3OfadPcYPMx1ruM9uNtoRUVFRUXFk3B33IVv687MRVFyexyz2HSZ3+NMTvOCMCs41anR9nW+5qdbASvDmPMzPh/mOTXbpOYYTOIcQ+h73s1eiOtYCARCaPdznOnF1SDJaTom47xkpmZzZsbXHQWnWax118AxdHB+mhdAQpgWjCOd4WoZBoYoKNUdsWsnd0ugG/nY0+6LtmnSrZnUbO0mMyU0bBMlBK5jUKqdssYSU+oMrjjLGSUCgcQQCqUUH22M+cKJFllRsjKK+XgzZ7Hp8NJ8k1eXGzRtSQhIIchKhSH0n4OsxLckEkGuCh2GPw3an204FEqxHSQYQuBYJl85362C5CsqKo4FleB1RDxqiHnF0bOz2nd1Y8DcXT97kpbY93vA3wpSVqeunwtz9XtyxRZbDt/7aGvf6zbGEf/X+xsIFL92bobT3Ror/Yib/YBJku86fHZ4HJFuZyyWSvHNl2e50YvZDhLysqRmG+SlwUzNZq7hkOfast/y7m0M0PZtmq7JxjjhytaES3NN/vobixiGdlztzVR7dbnBJxsBN3oBlqFdSC/NNx/J8bP3OF+cr2tRaZLQC1L6YcJC02Wc5Fyab/DSfB3fMfeVaRalOrQ46JiSlmsxdnP6UYZjyt3vpW+bLLUcBmFKnOtui9pRpi+Xs3WHQsHaKMGxTF5bbiCFPj/3fN8vz/HNy3MMwoyNUUxeliw03N2ywb3C4tpAZ4k0PJOL84cL+N0Yxbtj7PJiiy+c7NALUlZHEZ5l8Npyg4WWx2zduacc+I0TbV4/0cQyJFc2J4d2Kx7mOve1C+1DnfMXlaqcs6KiouL5sxMV8f2Pt/jZ9T7Xt0MGUYYpYJzmpLnOEk2zgmvbIadnfH79fIfNccI7t0e8vzrkFzcHJLkWnRZbDpvjlFGUYxt6LjGOMsJMzxsc28C1BJOkpONbFGVJL0wJsoKarQUwhaDpGCw0XWxTIqXAlDrQPsl0QxshJUttj9Ndj+9+uMkg1p0eTQkSgZD6PpPkWvAypnm0pmHg2gbrowQBCClRCjxbEqYlQZSjlEAIpTM9hcCSBmlRoJRgEE7LLU82+bWzM1yYb/DLmwMGYUKQZhSFzi8VwELTxjAk76wMqU0d9WmuKJXCMiU1RzBJCkrgtaUGF+abTJKMYajzQL/60mx1X6yoqDgWVILXEfGoIeYVR8/uat9Ii1BhWuA6B4fb94P0UA+rD3rAf325ufNbDKOUrUCv6J2frXOy4/HOyoi1YcTlJS2IKBSb4wzPEggh2ZwkLDYdFtsea8OISZJyfTvijZN6JfFxRbq9Y7HmmLR8W3dnLEosQwKKcZwzCDPqtth/7PaIWElW8snmmOu9EMuQzNVTvvfR9q4QszePLC1KTnU8Xj+hy+lOtL1HEgH2Hue2Z3OjH5IXiigtiLKStWFMv5Ox2HC5uNBgue3d8x6PIg62fR12ujVJ8fNyt3TTnq7Cro9SXlls0q3ZuLbkVj8Gpddfl5oug6Qk3ApZGUSsDhNO7Nmeg77vnZpNkutST88279oW3UHz7EyNG72Ab1ya59Ji/aHH7n5jc77pMtdw+HQ74N2VMfNN94HlwEqpQ3dBPex1bhjVHnoOjpJnKUBV5ZwVFRUVz54HXeezsmS+6bDYnudGT997h1HGxxsTZuo2SsHprs/vfOkkQojdxbWOb9NwLUa9VEcy5CWjMGWcZLScadMcUzJOc0pMZuo2/SDFlJK6a2JK+MWtmKJU3B6GhGlJVpYUcUmSBbuJ8bahnVG2JTg/W+e3XlskiHM+2RhRKKXFLgGG1OIWsNsop1TQcE1+7VyXJC9p+zabo4Sk0LlZhVKsDBOKspx24dYlkbYhaLgWcZ4jkTRcg3GSwbQpTt2xqDsWLc/k062QjzfG/OmVTZqO5MuGFssc06AsASFo+RZxpvPGHNPAtSSWUSAlWIbBIEqxDclryy1OdX1Kpefa1YJQRUXF8+ZzK3g9zgPSg17zOCHmFUfPfNPlaxdn+fEajOKMrSi/J+j7Ox9sHvph9WEP+Odna4yijK9dnMWzTUZRxs1+yHc/2uAXNwfUHIu8hNNdjyQvuNkLqDu6hXUvSAnTcjcvqx+lrAwjzsz4u/lXe7sKHpa7x6JAZ0jsUJSK7angV7fvjNe9ItYHa0PeWx2TFyWnOz7L066Sb98esDmO+ebl+SPtxLRznB3T4N2VEUGW063ZLDQcxtPywlKVXFqsk+QFSqkHCjMPY6/AByGOKZnEBdtZQpgVnJ7x+ebLc3y0PmYQ5BRKsVhzINVdGs1paeokybm+HbDcdnWexZSDvu93B+zevT2mFMzWHeabD3eB7pRivL82ouNbcNev369T6EFi+2G7oAohHuE6d1D87tPhWQpQVdl6RUVFxbPnftf515YbvLsyZhRlvLKk71NLLZfr2xFb45jbgwjPNvnNi7P8xvkZ5psu3/lgc3ehCPQC2NXNksWmyydbAVGu868mie7SWJSKtmfpLEwECIFhCHpBwiDMaHsW5+fqLLX0QlMvSHQOaFZSKl0GaUpB27cIUzjZ8TjddvnW+xusDRMsKXAMobteTzs6WoYO3jcEFKXgVMdnvmHz0nyTt063efv2gD/87lWubIwpCh15b0ldupihA/NNQ1BzDGqOg2+bGBLG6xm2KcmneWdCCFqezZunLGquwc9vDDjZsiHTHaTXxnr+MI4yfNtkoWkiBBQl5KXCs/R5+KuvL9KuObtz4B9d237g/bhySVdUVDxLPpeC1+M8ID3sNQ96mIUny4960XjeN7K5hgPAX3l9kQJjdxs2x8kjP6we9gHfs02kgF/cHDCMUlzToG5bNF2Ta1sT3l0ZYpuS1WFE07X0yqDQ3RM7U0Hh062QK1tjbvRCZuv2vq6Ch2HnuA/DlLzQwfo7pXN7edBYnG+6fKNuM0ky4kzRrVlsBykfbwaESY5AcW1zgmkI/m+/cvLIAkSTXAejDgLdQXC+fkf0afs2Ddfk440JeQlN13qoMHMY9gp8t/oBwzhD4nKqU+PXz3ewTYP3V0esjyJavs3etzWklrdcy2AUZQRJsU9UPOgY3x2w+7iC3c616P3VIb+4NWC27jA3zTnbWw77KCL7YbqgwoNFu/37/Wy+789SgKrK1isqKiqenEedIz7oOn99OyDKck60/d33aHk2b5y0CJIawyglSgveONFCIfh0K+B2f/8i5plujXdXRqwMY0ZRBqWi7VvEqf582zQQAhaaLsMoY6nhcqpb041hogzXMnjtRJN3bo8BwbkZn9v9iDhTWIbClpJSlfTCjJZnMggz/h///RNKpTtQW5bBrGOxPUlICx0Ir1SJYwoKJKYBMzUH2zJZaOn5bV7Ar55pk+UFq8MY1zR0J8iyJB/GSENSc0xsy2Cx6RKkBSsD7UBrGJL3VkaMk4Iz3WkHaQWTqKAoFWdmarAGhhC0PZvLC3XeWR3TDzPGSa5LJaWeY5zq+FxearLQ8siKcncO/KD7ceWSrqioeNZ87gSvx3lAOsxr5hrOkTzMPg+OUqA6Tjeytm9jWfp4P+7D6mEf8G1D8Iubw933D5IC25LEeUGQ5GxNUmbqFg1Xr7JtTxJAECY5Hd+m7du8NC9oeAbfuKTdUw87D3vP286q2sogIs1LbvYirm4Gu+Hoe1+zdyzuZHjtZRjlDKOM2brN1U29Wqm7BOWkRUmQFKyNEpbbHl+5MPu4p2cfjqm7GN4Rl/bvd14o2r5NVpS8dXqWW/3ogcLMYbnjUmsfWOo3W3P5cdRnru6wt2m4awiQYCGR4k7pAdz/+/4oTqr7sfda1PFt5moupoTVYbivyyM8ush+GMfeYUW7ne6fT5NnLUBVZesVFRUVT8ajzhHvvs4DOqKhLJmtO1zdDNicxMzVHfphilK6u6FtSmzTwDUN3l8d88fvrOHaBnFacLMf8Sun27tzuuW2y6tLDf7k4y3yssRAYEjJjG8DEUGSEZcCpeBEx+Ubl+a5vNykLBV/fmtAy7MJ05LtIMEyBLcGCVIKbANypbtglyiEKgik4NPtkKIseWm2jmlKVAlxUeDbEpWWe8LrBagSxzTxbYMoLfjRtR55ofhwbYwUUCpFw9VdIJGCtmNjSkGSg2NJwiRndRgzTvT8reGadH0bU0pu9KbzhhMtTClZH0W0fXtf5+qaY9CuOdjGhExC27Mx5DQbzNDZqUstl5Zn8t0Ptx56P35NqXuybSuXdEVFxdPmcyV4Pc4D0qFfc3nuiR9mnwdHKVAd53Kf+z2sKqXbKduG5OONEV881aJbd3Z/ftgHfGDf+9ccg27N5uc3+pRlyULTISlKPMtkEqeYQoAUbE6S3TyqzUnCxfkmlxYbDx0ne8/bdpBwfSvEMg3eONHgZMfHNgU/vNrnex9t8GvnZlhousRZwfo4xjYk800tbNQO0CX2uq16QcIkzkmKgpptUXcEdbvgei/k//vz25yfrbHQujdP61Fp+xYzvsOfjrfxLAMFuDtB8koxiFIWGx6mFDQ9i28u1I9MpH1Qqd8bJ1t8/5NNbg8jFuv6YCVZQS8uONH2yfKCUZQzDFOKUoe5TpJ8N4x+Rzjbu62/eWmWd1fGjyzYHTTxn2nYuptl3WFjkuxmwKF4LJH9YY69oxDtjopnLUBVZesVFRUVj8/jzBH3XueHUbbbOTovdCZmkpW8tzrkylZAnBaEic6U6tRsZmq647IU8OaJFt2aza1+yOow4odXC/7ChRnavp7vn52p8ctbA8ZJhi0lhhRsBzEAZaGQQtKPUuKs4I/fWWFlFGFJuSueCSHIi5LeJGMYJhgCbMckK3Q+l0KR5CV5ocsc86Lk5kA7/g0JoyjHkoIZ36JQIA1B07VQZYlpmqSqZLnlUCjBRxtj3lkZ4BgGlqGjNeJczz1MKai7JpvjhOW2Sy/QNjXfNjhTc7k5iBknBWujCCkF25MEUwouLdTpRxmXF5r4tiS669w5poEhBBdma9Rck1Ip4qwgSguUevD9mGlny/dWh6yPIsZJzrnKJV1RUfEM+VwJXo/zgPQorzlsWdBx4SgFquNe7nPQw+ogTHcnT2lWMkkzZusuX784u7vfh33ATwu1PzdL6DymrFCAAKVbZddqNr0AoORsu0ZvkrE5TgjS/NBiwd7zNld3WB8mlEBZFlzZCKddBn2++bLBn3064KP1MWlRkOaKJC/ITcmPrm1jG5Llxr1CwI7bam0UEeclSVHQ9mx2avqEkMzWHTbHCT+62ud/++IBE5xHZHOcEGUFwzDlp5OEtmfR8m06vkValNQci4WWDYjdjopP20WjlGK2bvPmyTa/uDUgSHMwIcxLllo+p7suH6xN2BjHustTUeKYBhfmanz1wgyWIXnn9oCrGyGDKCGbtinfyR156/S9rrIHcdC1aCf/bSNI8SyDzUnM5lhP8g87nh7V4XmY61yWZY9+wB+RZy1AVWXrFRUVFY/H484Rd67zWtjS+Z4t18J2LYZxykfrI1YHEQ3PomYbSAllqdiapAwC3ZHw/GydKM15dxSzPdGLU9n7lyUAAHPiSURBVO+ujEhzxW++PEfHt8lLhSEEea4YZSlr4xhr6rWSUlAUJVFWkhglVzZD5hseb55s8ee3h/z8xoDLS02djxom7Bi+5XQ/DENgCEFR5hSlIi0UhtR9cEoFTc9iFOXkhSIrFaUC3zJouia2aVB3DPK85N3VMUGSc3VzQpgUFIbCNCXFNK8LFBvjFAHkRcEoyuj6Lp5tYBqC1UGIZ5n4tqRUYElBFOf88uaArFQ0HJOFlr0vjzRICpK85NxsTWeeCn2vMw3JYstjru4QpDmb4+TA+/EgTPlwbcLGOGJrkuBaBhfmGszU7H0RDJVLuqKi4mnyuRK8HucB6VFfc5RB3k+Toxaojnu5z90Pq4Mw5Z3bdyZPrilRAm73Q7774eY+se8wD/j9IL3nYdi3DRaaDnmhGIQpcV4iheDSQoNSlaR5yeYkph+6vLLUOpQoevd5C5KC/lT4ck3J+jjedfm0fYe/cKHL+ijh1aUmH65NMCUsNL1d0e7a9oQ5tOC03NVOoLZvMVtz+cF4m1Ipara1K3YppQiznE7NxjYEN/vBE5/THQEvygveONXi2mZIqRQrw5CticHF+QanOi69IOP15dYzKQve66AbxRkCRZSWYMIXT7YxTINrWyHDMOVM12ep5SGloCwVq8OI//dPb+PZkhu9iKzQjQlemmvgWHKfoLzYOrwIftC1aMdJdr0Xsj1O2QoS+mHGK4vNQ42nx3V4Hofr3LMWoI4qg62ioqLi88bjzhEdU2JJwSeb47vyPfVCTZQW2JaBKhVhWtDxbaQUDIKErThnsemAgB9c3aY7FVkuzNUpSsXHG2NsU/DqYouf3exzs69LDVVZUhRgTW8raVGSFtMQeNskTAt+drPP5cUGl+YbvLc6YqYW03AtgiRHCR06v9O8xTJ090chtBhXKmhYFoYUZEWJa5k0XIMgKwGBIWGx6fDGyTb9IMUxDT7ZnJCV0PEsbFPSqdkMwow4zlgdRMhpJqxvGwRJzomOxyQpGMUpcSFBgWEYfOlEHaZdwsdxhm1ItoIUU8LXL86yHaSoPfENuutjiULxxok25+dqOlRfSmqOQang1iAExD3345u9gO9/sk0vTDGmxzHJS24NQtK83BfBAJVLuqKi4unxuRK8HucB6XFe8yzcJ0/KUQtUx73cZ+/D6hnL53ovvDN5AtbHMcstn8tLDa5vh/eIfQ97wD/oYdgyJA3XwjUEpinwTYO6axGmOaXS3XgajsWvn5vhS2c7jyUsZqW2yNuuFqXans12kOyGqHuWiSlTVgcJeVlybra+T9z0uj7RAN5fGbHU0du9U8r3rffXuNWPWGrpyWRWarHLNQzangVKUE5t+o/LXgHv3EyNmZqNISSDMEXgsDKM+XR7wvooouFanO76bI6TJ3ZLPsjVdLfzcb7h0q1ZvHd7CMCtQUC35gOKpbbHGydau68dhCmjOOdWP5y2LTdYbHj0o4z3Vke8fqLJ2Zk7gvI36jbDKD+UaHS/a1Hbt2l5uilDP3T5a68vcna29tDx9KQOz8e9zh1VZuCzFqCOUzlnRUVFxYvE484R275F23P40yvbnGp7u9fXOCvpBSlZoZjxbcI0p+6aZEVJWYCUElMIXNOgKBXDKOfsTA3XMnAtg5cXmnyyOWI7SPnWB2tMogxTShxbYBqCUXwn37RQilIJPFPqvKxcMYkzPt6c8NapDluThE82J1xeaOCZkq1CoZRCCt1xMUj0PmVFSV6AIcE2dc5YlBV4pcSUBr4lKFXJiY7Pl093cGyTzXHMaKKdYQtNh6LUrrC5hoNSis1xQi/MMA1B0zXJigKBwLf1/XF7krAxTinRnSY3g4y5usPZrk+cl4RpzkzdYb7h8PqJNr+4OeBGL2Ruut9ZXjKMM7o1m7OzPo27GiHFqe6EPtew992Ph1HG9z/Z1vO1hk2YFtRdk0GUMY4ypBC7i7M7jrLKJV1RUfG0+FwJXo/zgPRZXdU/aoHquJf77H1YfX9tzNrUAp/mJYMopeZYnJnxkELeV+x70AP+wQ/DkpptcmVzwkzNolQwjFLano1pCFbyGMsUXNmccHrGP5SIc/d5s6TENKT+N2lgmZI8yXZD1OOsIC8VW0HMYtO7V9ycTjRWhtG+/b24UOdrF2b5//z8NmGcERs606Lj28zWbIKsoOOZtFzrnnP6KILG3QJey7N582SL91bGvLMyJEwLLENwebHF2VmPrUlyjwPvUXmQq2mu4RzofFxq+czXLeKr1znZrvHWmS7f/2SLlncnYF8pxfVeSJgVLDVdPtyYMN9s4NomjmXojK1eyJsnWsw3XD5YGzJJMoZRdih31YOuRQBBmvPKUutQYtfzKkE+yszA5yFAvWhl6xUVFRXHgUeZI949hzg352EZOkOrKwSWKQlT3VzHNARt3yTKCmZr2s2VF4pCKYqiIC+0O9sxBeUd4xKWITjdrbHQdPjOB5vMNhwankUvSNmalLsuMmC3RFEpdFYnCkNKhmGGZUi+eKrND69tEeclM9M8zbJUlFKRxDlKKQypQ++lAN+SgEABliHJipIwz8mn+1sU8MNP++RlyTjKSAu4uFDDswyirMQQAlNKZuoOaV4yjnMsKUlyvd1NV+e05oWi7lmMk4Igy/Bsg36QMIwyllsudUcLhKe7NUxD0vQsvvHyHG/f6DEZwMogwjRNLi82AJ0ptpe9z0Cdmr17P762HXCrF9ILEro1iyjT+bWnuh6b44SbgxDPMtiaxARJjbpjHvnz1PPuFl9RUXG8+FwJXo/zgPRZXdU/aoHqRRAGdx5W/+SjLT5YHYEE2zBYavmcmfF2rdWP60a7+2E4DUravsWprsf2JEOKkhMtj7RUbAUpHc/mteUmgyg9tLhw93nbCcdfG8U4piTLS0wpsQy5e9xn6w79MLmvuAl65XHv/goh+O3XFri6GXBla8yJtodnm0hgmOT401XSk53avnP6qILGQcJr07XwHYPFlkvTNRnHOS8vNujWbJRSTyTGPMzV9MVT7fs6H+VUHAzTnKyArFT7tjtICnpBSsvVuWNZUe6+hxCClqsn00FSkOYl762OiTPFhbnaodxVR3kteh4lyE+jqcXzEKCOQzlnRUVFxYvEYeeIaV7wnQ8G++YQLU+7u/NCEaQ5eZJRFIqOb5HkCiF1c5utaTleqZi60iHMCkxTUncMDCl2PpBBlLLU8qnb+j50esanF6YsNl3Gcc4kVjtJDkx7DJGXinGSgRB0fYdSKbYmMRvjhDQrSYuCpbZLmOXEWckkyglSnZ9aFAqh9HsJITClIM0LTCGJ0hITQSkFSa7Ii5K5hkNWlGyNU0ZRRn+sg+jrjknNMRmGKUrAyY7P+jjm8mIT15QMoozllodtCjYmKSfaHmleko8UvSBDqZJhlLMxivFtg27N4exMDcc0cKalkl+/NMsfX4Hffm2JmmuT5gXf+2jrvvOO15YbDMKMUsEXT7V5f3XIn13rkZclpdIu9PmGQ80xEUIwSnI2JymmIYizAgFH+jx1nLrFV1RUHA8+V4IXPN4D0mdxVf+oBaoXRRicb7p88/IcW0GCa0lank3NMfaFdD6JG+2gh+GNUcz/84fXSbKC7TDVYZ9NlzNdf9oCWh5aXDjovO0Gl49j0rzkVKcGaGGo5du8caLFj65t31fcBL3KePf+LrQ8fudXT/KffnKLlWGEP12l63iWFru6/r5z+jiCxkHC645wNDctNy0dsKfbdhgx5n4re4dxNb19a0ia39/5CEzdc+qe7d5bXppkxa7ouINtSMZxRloUfLI5IS9Kzs36u68/jLvqqK5Fz7oE+Wk6yp6HAHW321MpRT9IKwGsoqKi4gAOM0dcbDl876Ote+YQa6OYKC1ouCavLHXIS4UpBVc2Jvz8Zo/tcUqpYBxn2kFvCkZReqfLc5jS9mrYhiDJin2u/s1RipQCexosb5uCmi0ZGxKlCkA7u1CQq5JxDpYpwFOsDCImiY4kaHsWgzAjTLWrbGuS0JvoZjVKgSn160p0ltUw1mV9cw2LpaaLQnF1I9CZWaViHOd4tsGprsdH6wU3+hFRXrLYchHAOM2xDYOZmokX6w6KaamYq7uc7Ph8uDHGNSXDKNP32RmTt28PKJVCCkFRKlqehWdL3l8d8ZcuL+zO93fuXQtNB8vS/3a/ecdiy9ntOr0jLnmmwcm2R80xaDoWTc/ad88/P1Pjw/URaaFLMtu+dWTPU8e5W3xFRcXz43MneMHjPSB91lb1n4ZA9aIIg52azcX5Blc2x9Ts/WLXUbjR7n4YTvKSs7M+nemK4E7Y586xfRRx4aDz1nAtzs/VeHdliBQCyxSM43z3uM81HG71o4PFzallf7nlHbi/ry63+Ae/afOjq31u9gNKFC3X4mSntntOdx72/+SjLVaHEa8sNpBSC1QPEzQOEvB2hSPHZDNIWGr51Jw7woxjSQa9jJv9cPc99opu91vZswz5UFfT2igCBFGWAzpQ1jLkvs+3DMlcw7k3s22nvDQviLOCxaZLnBW0XL2sm07bqKd5yfVeyJlujbprHrgdDxL0juJa9KxLkJ+2o+x55iZWq8kVFRWfRdRULAKdTznbNJ9ozvugOeJryw3eXRkfuChyztYNekZRxuY43m28s9BycFdN4jzGMCSOKQiznDJRlErR8QyiXDuroiRjcxJjm+auq7/pWtzqR8w3HNJCUXe0i8owDGquSRAXu9teKih2HVrgmrok8WYvRAFpXhIkOQhdOjmKctJC4dvaOZWXOrDekZCXJYVSuLbBWyfb2Kbkz28P8RyTCy2XJFc0PJO5unbvd3ybUZSS5gVBUlAqhWcZLDRcxokWxoZRyqWFJmdmfEZxxs1eCEoxinPa06B73zJwLIljGqRFyVLTJStLouyOm+1B5+7ueceO8+tucenT7YBBlNJwTOK8oMX+uaVlCJqexTcvLfCNy3O4lnEkz1PHvVt8RUXF8+NzKXjB4z0gvQhh9I/C0xCoXgRh8FHEvqPIAXBMPcEwpaDm3CsqPaq4cL/z9tuvLnKq69P0rHu29X77uznS4aSvLN9f3Jxvunzt4gyb4zogmGvYdGo6u2rnYf/jjTG/uNGn7pjkpdp1r+0c7wflot29bVLoboe3hxGdmsOZGW9XlBxGusX1yjACoWh79q64ADxwZe/V5eZDXU2GFEgh+cGVHqbUoa2mlMzUHE63LSy0OLg3r2J/ZpvBlc2Akx2PV5d9rm9HrI9jWq7FINLBr+ujCMuQvDRf2ye27t2OhwmgT3otetYlyMe9qcXjUq0mV1RUfBbZFfJ7Y5rAH7+9Srvmc37e50Tbf+x53f3miHsXRRAwSfJ9C07nZ2vcHoQ0HJtb/XB38e0bL89jWwajOGMUZaR5oSMF8pJhnKOmIlVZKmzT5CsvNTk765NkJZ9uByy1XFqX5vnJ9R46WQuSNMeWksyQQIEUYEiBY4ip0FMyTAqaQuBakmGcE2cFcw0HQwqGUYZSirIEQ0pavo1lCFAQplqwGkUpCr2fjtIREY4pqbsWTqFI8pztICXNFWe6Hjd6YBgw23AoCqU7cvcCllseryy1AXAtSZTlfLA6ZhimWIakW7Pp1myubgV4tknTM5kkOXFeMExyTrR93uw4TJL8oQtOe+cdSim+88HgQHHplcUGK4OIUVzQ9kzWxzFtz8YyJWlWcG075PSMz196ZY6FlvfIY+h+HPdu8RUVFc+Pz63gVaF5GgLViyAMHkbsOyrnRtu3WG55vLMyZKnlYhvGrsPrccWFRz1vO/v79q0hn2yOCdMC3za40K0RDHTHn4N40DGAOwKTa0nqnknDsVgbxYyjnNdPNHdFrwcJGnefiyQvcCwDISWvLzd2s9WGUcqf3xxyaxBxYa7GxbkGSV5yZXPM5iTGkvKBK3tXNydYUjzQ1ZTmJXlRECYZhiGZqdkI4Pr2hE83S/5y/Y44eE9mW6Ez205PRcduTWdWfLIRcKMXYBn6HJ1s1/BsC8c8WPx5Fg0ennUJ8nFvavE4VKvJFRUVR8FxC9jeJ+TX9LxkZRDxp9cGWIbk1aUmlxebj70wetAccWdRJMkLrmwGbAe6s/TOglPLNbjRi1BtKNFdGNu+zbnZGmlR0vIsJknO7X7I9z/eYjtLqdkGLdckSksUcL0fIK9Cknfo1uzd+R7ofK6PN8a0csX6KCbIclxL349Od2sMk3IqWikSo8QxDbKiJEgKFFAqBQiKUotaSmn//HAqwgkhdHA9OlQ/z0tcCxqexdnZGlIIVocReaGwpGCUl6S5oulZKIXOMEWxNU7IS+3w8iyDL55uIYVECkHbt/j5jQHbQULHt8mVXnwUQlCzDN1tstQZZ75lYElBkOZsjCSmyX0XnA4anw8Sl6SUvLbc4uc3+tOumCbjJCMOCqK04HTX53e+dPJIxa69Y+iztrBWUVHx5DxVwetf/st/yX/+z/+ZX/ziF9i2zWAweJofV/GYvAgC1dPgQaLRUTo3NscJozjj062At28P6XgWC02P+aZDkhePLS4c9rztTFY2xgmTJNN5FAj93wM+8kHH4G6BKUgLbEPnSMxPuxRd74W0ptkNDxM07j4Xoyjj5zf79MMMy9A2/A/XJtwaRJzseFxaaGAauoTwrF3j/dURG+OEL5/p3HdlbxhmtD2H9XF0oKtpfRSR5CU1x+Q3L81zox/SC1LyotTOvFK3KZ+t2/fd7h2b/95Mi1Mdj9dPNDk/V+dE26PlmXz3w60jdVc9zgPTsyxBfhGaWjwq1WpyRUXFk3LcSqLvFvKHQYwFDOKcU22PfpQyCDM+OWIXq2NKkqzkk/UBeVlOHUEWWV5ydWvC5jDCcy3ePNFipu4QZwXro5jtSUqSF1iGg29JfnFryPokQaIQGARZiW1KTnU8NsYJYVaw3HT5y68u7DrVAf73Ly7rBcGNMQrFlY0JF2YdYJPLi3V+uTIhL3S2lmVIhNDurTTPMKS+H3R8HZo/iFLivNwtE8xLLX6VWYEUAikFUkoMQ9IPU9yBQcuzWB/FTBKdL7bTI1IKGCcZjilo+w5SCrq+jZSCSZLTrbm0PYtPtwNMKTjZcbk4r934V7cmBFmBa0qkhDQt+WgQMVNzeHWpQduzSYuSm4MQCYyijMXW/nN5v/E533QeKC4tNF3OzPqc6tQIk5xBZCKl4FTH49fPdY9c7NoZQ5+1hbWKioqj4akKXmma8ju/8zt85Stf4d//+3//ND+qouKxOEg0Okrnxl7R6FfOtFkfpqyNYz5YH3F7YPL1i3N87eLsU5vY7kxWPlgb8t7qmHzagvqled2V59PtgDm0KLfcvSM2POwY3C0w1RyDmZrD6jBkoeHu60hYc4xHFjTmGg7fuDS3KxwNehkrQ+3surTQ2HWOwbQDom/x/tqIQh38fjsre+fnfeK8ONDVZJkGTgkLDZeaY9L2LYKkICtLLCm14HX7BsMoY87e//l3j6H5pvtAAeoo3VXrw+iBGWsP4lmVIL8oTS0ehWo1uaKi4kk4jiXR+0oLgRv9kAvAXM1GSZOu0K6gV+oNtibJkblYW55JkhdsjBMuL9QR0xxQx5SoUtGLMl5uesw2bKQQu3ORa9sBSV7yycaYm/2Q2/0QyxB4poUQECQ5yjJQStCtOQyjlFvDCCHEvtiKUsFbp9u8dbrNGyfb/L9+eB2KDID31yb0g4yiLJFC0HANSqWIMp3XaZmSrCj4eHMMSpcplnvmIjvh+QooURhKUHe1w0qViq0gpu05LDVdrm0FDKKYubpNmpdsjhOkgOWOhyG069yZjhNTStKsZEBGzTa52Y9QKM61PAyp52XXeyHbEx3qvxWkmAIuzdfo1rSr3xUSS4KUBjf7IRcX6rvbvTlO+P6V/oHj8/p2QDLd//uJSzM1h2++PIcQ4pm4Fz+LC2sVFRVHw1MVvP75P//nAPzRH/3R0/yYiooj5aicGweJRostj5eSOmlesDaMafnWfcsJH8RhHD07k+lBmDAIM1xT0m449MOE91ZK3jjZ5HTXJxrA+ysjljp3JggPOwZ3C0wCwZkZj1GUsT6OaboWaVYyjFI2J+VDBY37rSK+ttzgrdNtHVAvFBfntLPrbuqOpSeacUbLu39O2om2z3zDPdDVNN+0+dG13q6AIYTYFyqf5YoUuD2IME3rgRO3h7nvjspd9d7K8E4XTcvAs0zGbs7WJD30A9Ozcni+KE0tDku1mlxRUfG4HLeS6J05xc2+ntvMNRyCpKAfZiC1GTzKdD5WkGRkhTpSF+swynFMyXzDYSNIabmW7mycZKwMY2brDrYpCdOSunOna/NCw+V2EXKzF3Grr4UsAwUCslLp0j1DMkoyZnyLfgmTWHdWfNC849fOdfnWO7cAyPICz5ZMknJ3G9q+xSQuKZUiTgsMQ5BmJaVi2pVRd0Is0S4thEAKyEuQBszVHTKlxbTZmsW6mXB2pka3bmNGOUIo0qJEKXjjZIsTXZ+P1sdYpu7+vD6MUQLeXR1SlApD6PyuxZa7e09q+zYtTy/cLTUd/n/vr1OgcCwt2GV5ySBKqbs2F+Z8VgYRgzCjbuvx9v7K/cfnjtC4Poo4N1u/r7i010X3tPksLqxVVFQcDccqwytJEpIk2f37aDQCIMsysix7Xpt1LNjZ/8/zcVBKMYwyklzhmGK3XO5unvRYBXFKlmU4NRNV5Pf83DEUWZYRxOnuxOAgBmHK7d5YZ2CUBTsLfjUTaqaBI11WehO2RvV9jqWHsTlOeH9lxMow2g11XW55vLLc3BXPlFK8faPHKIyYqznc7AV0PQPXEvimxcYk4cbWhFcXfQBW+hO2RuHudjzsGNQtiaFKJmFMc3oMmrbkjeUaN3rRtI14RpKlnJ+pc6Ljk2Y5m8PgnvO2OU74/sdbjOKUubqLY5kkWcmVjQHXN0d86WwH3zJo2wZJmmHY9zpqDArm6hbDMGapae3vvIlicxRybqZOzQJhG3ztQpthVNs3loZRhi0UcZLi3/UZozjjytqIl4E//XiNt28N7znmj0rHO3g7hBCHGrsbo5j/88c3WOmHnOn62KYkLUpGUUKWG9xWBW/fMPj6pdlnPsG733fwSff5OFGzYLlhc217gtf1HzjmHrRv1bX98DzqsaqOacVx5TiVRO8VfgZRyofrE8ZxzmLLoShKkHC9HzGIC5JMdxj8eGPMxfn6NHfrcC7WBy3UJXmJYxm8darDzYGOExjHGWleUncMzs7USMuSrNj/Wa5lUJTQ9k1OtD1u90PivEQpnQVas7XgFaY5timQEuquySjK+MXNwcGRDeMYgLarj/uJjkdSCD7dDihKhZrmdJmGxLMNolQLXYYQCKGQQotc0hAUSqGUoiiZlkEKWq6N75o6UB+FZemFk61JytkZn//7X1igW3PYDlI+XBuRTTO7pBBM4ox+kNELUjp1G982saRgO0joBylSCEw55s2T7V0XW901WWi5NHyLpmtRlrAdJJhS7nasrDsWtwYhSV5Sn85/VobRfcenFhojLMM4VuLSZ21hraKi4mg4VoLX7//+7++6wvbyrW99C9/3n8MWHT++/e1vP+9NeGF4kmM1AyT9B//8p99/76Hv05z+P3zAz3/w3XcebePuem+AyRb8+Mq9vzMHMIAvS3TS61RPvmADMcSfTt+r9z4/+O77+177oGNgAr/VBHqrhL39/34eOG8DNjBcJRjCRw/ZF2fPtu5I3vPT/1+bbsODjqUAviT1D6Or9/58DpgM4I8POEZ7ud9nmMDL0z+fDK5AcP9j/ix5E3izgw772Hm23zG4xTC58vB9fpp8Hq5Xc0A0OPjfDzPmdvg8HKuj4rDHKgzvd+WtOGr+8A//kH/1r/4Vq6urvPbaa/zBH/wBX//615/3Zh1bjktJ9N1llXN1h3GUc2VzwjBMCZMMLBhEKbZpkeYlXc9mEKb8/MaAU11/18X6IEHrQVllcw2HKM2J0wLPNHhjuUmYlmRlSZqVvLs6RAgwpcS6y+EdZwVhmrM6ikEpDCmJ0ows08etLJXO3EKxXSransWJlsv7KyMGYbLPnbTjXnpvdcTmOOG1ky2YrGEakqQEzzaRAkql864arhaQPLMkV4q8UCi04KXQZZdFoXSgvVA4hu7E6FoSiaTpaTFupmajFPzG+S5RVhBlikuLDYQQvDRf18etH6IUrI9iLMOgU7c50/UJ04LVQcTKKKJmm2wHCcMoQwAX5hu7ItTqMGa25vDW6TZNz97XAVMgCJL8Hkdy9pDx6ViSXz3XYWOUHitx6UXoFl9RUfFseWTB65/9s392oCi1lx//+Md8+ctffuSN+Sf/5J/we7/3e7t/H41GnDp1it/+7d+m2Ww+4JWffbIs49vf/ja/9Vu/hWV9vurP73UA6XDTzUlM07X52sXZfS6bJz1WSin+5KMtrm1POH2Ac+NGTzs3HuacGYQp//WdNZqudY9jCPQK4SjO+CuvLx7K4fUo27UxTvnWu6sstz3itOSnN/t4ptydvJRK0QtT3jrRxF5/h1H3Ff7Kmyd2t+MwnzVTc0jzknGS3XtePJtXlhq8vzJ+4HmzDHHPMRrFGe+ujAnTTK/eFvDKUoP1ccz6MGax7XFupnbP533tpVmAfe63JC+mEx490TzIDbeXu8eabUl+eWPAta2Akx2HN7mOd/YthDQeaSwcFTsux81xwn99Z43bg5CllocE4rykKMGQgIIoK1lo2/zFi3NsjtIHOgIP4xp8FD5P16snPXafp2P1pDzqsdpxiVc8Xf7jf/yP/KN/9I/4wz/8Q7761a/yb//tv+Wv/tW/ynvvvcfp06ef9+Y9dw4Sgo5DSfRBZZVKKU60PXqBFjGyLIMGeIZknOb4tsmJjodnSj5YnzDfdGh55oGC1nLb41THJy1KfnytR1aWLNzlprq6OWGmbjOJc272I/789pBL8w3OzPh0fBulFGsjh/dWR7y61KTmGPu2/+pWwOog4oO18XROlZKXikwp8iCh4ZpMYNrx0GSp6XJlK+T2IGK55dKtZfdkgrY9iw9WR1ya82ACpzo+wtDB8tuTmCgpGChFURYIBNIQ2Ahqtq79HEcZQsD5rkeUlWwHKXXXJEhyLEtiSIltCm4NYyTatdX0LK5uhyw2bW71AwZhm07N3ifevHWmzfc+3OSXtwYsNl0mSa4zv8KUtm9zfq5GWSpu9CK2JhmOFeiSSgRnuzVOdTy2A929Ughz33Hcm2+V59rVbx1ifOoS0NaxE5c+r824KioqDuaRBa9/+A//IX/n7/ydB/7O2bNnH2tjHMfBce59QLAs6zPxIHAUrac/K8fisCil+GC9zzApODt7xx5tmuC7Np9uB3ywHu7Ln9rhSY7VG6e7bEcF1/vJXVbthFbN443TXWz7wTfT2abJiW5DB2i6+3MMlFJsBHqCMdv0DzUO+kHKyjhlrllDGvu/ugKYa9ZYGacEGdRcG8uySApBzbNp11zWRjHzljUNEC0Q0sQ09fssd+r3bMfDjsFXL80B3JnkRnqF8Px8m9eWG7y7Mn7oeXtlqUGqBK5jI6RAobjeDxinBQsNn1Jp671lW7x+0keJIUrAKCn3fd7e1cSlTm1aLhLx42s9DHP/JPtqL2I7Kg7Mt1ruWnzjFXN3n/r9mKu9mLmmx+muDz0Q0kAY5j3HvFN7ut/LvQ8UW5OUd9cC0rwgKmLSvCRMcqQQGIZeWS5LRd23+emNMXlZ7juHe48BcGAw7YOO02H5PFyvlrvW7pirru3PhsMeq+p4Phv+9b/+1/y9v/f3+Pt//+8D8Ad/8Af8t//23/g3/+bf8Pu///vPeeueLw/KiXreAdt3l1UOwpTrPV1OmOa6fHBjkgLQCzPadY/ltosUgo0gZaHh4JiSTzaCe8oDN8YR/+3dddIspwTSvOTifIOZWomUBgo9b/mza9u0azZ/4cIMv3K6zc9vDHhvdcTWJOGtUx0cS3dE7NYspBSESbF7j1ofx1zbmvDJum6ik2QlhhQ0HIMoLUgL2A5yTAkScGo2XzrTYbbhsjGO6QUp79we8fqJ5j7Rq+aYpEXJMMpoAXGWM+c5dGsWN7dDhlGGFII0L1HobolSwEzNpuXbCAFRkpOUCtcxsBJJViiUEhhCLzje6GnHlm9LhGGQFiU/u97DNU0WWw6/cqa7K9jsiDc7f7/Zj0iLktv9iElScKrrs9B08W2TUinmmwWuLRlFOQ3P0o60OKPumgjEoUsQl1seV3sHd7XeOz4rcamiouK488iC1+zsLLOzs09jWz7THLfW0y8Kzyvn4ihyAI46QPNRSiAWms6dyfRMjTNdn3GUszFJaDkm/ShlpuayFSTMA68s37sdhz0GB1nHD3vezs36+1a5g6RgO0hoezYIQZrrnAxLSoQQXJirM4xSvnZxFs82DxQXhBC0fYuf39Dtzc89YiDwzorqx+sTvv/xJoUqSfOST7YCvixhGGW06+Y9x/xpcnfZiW+bXNkY69XdlSG+bVJ3TWqOSU2abI9jJknBbN2m41sHlm18uh3w9q0hCO4JpvVtg9m6w9WtCT+8YvA3vrCIlFX4+v2oJvwVn1fSNOWnP/0p//gf/+N9//7bv/3b/OAHP7jn91/UrNbHydq7Xz7l1Y0BW6OQV5YbbI0Mrm+N7nFBtzybywv+rtvmabA3q3MwiXhvdUyY5TQdk07boW5BGOk8q1cW65RCkqYZhSFZalicbPlM0kznhUYJZ7o+AhhFMdc2JogyIy9KojTnZNdjcxSwNQqpuyZxVnCrHzKMcooiYxjUWW65fPl0k+vbIVc3J/zy5hYvLzT4wnKD33pllo1hwsowYnvqpPWkYr0fkGY5M57BWCrUNCxVGYpptj0Nz6LtWniuyWo/pOEY1G2JZ0hGacqN7TFNp4lAMIwyPl4fEyUp79zqcboLkyAlzkqyXFGzIMkgTXNKJXAsScsRKAWGUIiywJZQr9v4hnb6d1yDjm/h2SZxlvPu6piyKPEckzgr8VE0bBe/ZrE1jlnr5/z4ygZdz7jHJbxQt3htoUZaFORZzvlZj5ZrAgJUQZYVqKJgHJaEac5XL8zSrdt6XI1DpBC0PZtRGO8ex/Nd7UjueMa+7+GleZ/tIH1u4/NZ83nO0/y87nu13y/+fh92H55qhteNGzfo9XrcuHGDoij4xS9+AcBLL71EvV5/8Is/QxzH1tMvCs8z5+IocgCOMkDzUUogDhLbXl1q8snmmOu9EMvQ+3JuxiMY6EyKfpDes3+HOQYHPewf9ry5lrFvlTsrSvKyxDItXb4XZyw23d0yBv06hWebLLbuf+yeVCjdHCf84uaASZLT8R2arolBCSW8tzrm1RMGbd9+bmUngzCdrmDrZggKhSkhiHOiRK+oe5ZBmOYPPAafbI4BwWLzzu/sXeUPk5xrmyGTNOPNk21OtL1jUa5QUVFxPNja2qIoChYWFvb9+8LCAmtra/f8/oue1fqoWXsH5VPOTf9/de0BPx/Aj1efaFMPxU5WpwV8AfQfyul/Nvz6ef17v2Lc0H/YudXF+r8dOWZvlqG5814Od34B/X4wfW8Dvrx37Xx7k3Bbv/YCcGEnxWQbJtswmf717nCT/+PEYfaymG4wQB+2p7mmarq/8Z3sTwt4FXh18c6rf7u7cecv7Qd9TvKgH+7yN7oH/f60/HpnB/s9fvwnB+fE7vzK1737fKy75/+bqySb+q87447+4TJgf/Y/v/fcx+fz4POcp/l53fdqv19cDpvV+lQFr3/6T/8p/+E//Ifdv7/11lsAfOc73+Eb3/jG0/zoY8Nxaz39ovG8cy6OwrlxVAGabd96pBKIu8W2tCg52fF4fbnN+Xkf2zC4saknWd96dxXLsg50HT7OMTjseXMtY58wV3PM3U5EUV5Ss0y9ajzd14ed732t1aOUufrBGUoPEkr3fmcvLzXIS1gdhizVLUghzHKu90KarvlIZSePW9J8t3ins8MiDEPiWyaG0O3P00IvbY/jgtmaw6+fn+H6dkChDn5f1zII0wIQu8LkINQlHkGW03ItDAEfbUz41rtr/ODKNq8uNbi82KqcqRUVFfu4+1qmlDrw+vaiZrU+an7co2R47nQJflgH6qNmJ6vz3dUhm+MUz7qT84lSrI9j8rzgL9ZW+VlxirfOzFKb7stOhmXHdxhECSfaPoYQBGnBT2/08U2JYxmEScHbKwMuztcZJwVbkwTH1DmHtwYhjmGQlSW+ZbDY9HjthM7pKhWsDCJ+4/wMTc9mHGXc7oesjuLdhbF3bo34ZHOCUALPlmwFqS7zzwrt9FIgpZ5vX5ivYwjBiY6PAi7O1fh0O2KSpJQlfOlMh+vbAde2QpY7Hq8vN6EsMNfe4QfREr+4PSFIck60XRAC15KsDGKU0vfSUikmSU7NNvBsk9MzPpaUvHmiBQLSouD6dsQ4zInznCgvWBsmeJaBbQgmaYEhBfMNm4Zr8cVTbaQQB2a8bo4T/ts7a/zkeo+5hkPdMcnykmGcYUhJmpfUHINCwZdOdfblnh0mO/busX7YDukvOp/nPM3P675X+/3i7/dhs1qfquD1R3/0R/zRH/3R0/yIY89xaj39IvKoIs+z4lHFi6MQzh6nRPJ+YtvmOOG7H24yCiPmgOW2brt9VK7DRzlvQog7wtxOJ6JxshtcuzdI/0Hne19r9TDTrdWjnEsLjXsmdg8SzvZ+Z6WQnJnxGEUZG5OECzbUbZO1QYQpBUtt71BlqU9S0ny3W26n7HO2pjtl5YXBIMqp2ToI+URb0vEcllsu17cCJnFGy7v3eMVZMX0QE7t/vt4LCbKc+bpDlBV8uq3blL80WyPOSwZhxicbo8qZWlFRAeiYC8Mw7nFzbWxs3OP6ghc/q/Ww21lQ7MunvBvXMdiKcgoMbNtm7iGZoE+LN053udqLWV2ZcKbrkyPJ8pJBlFFzXc60beivsj7OGCYFnmPvzzM92eZH17Z1XqhjkqmStISGZVEKgZIKz7HZDguCNNevzwsKJCUGG0GGaUjivGBlPKKfFHR9B9OArXFKWkKSKz7dCrBNyatLTVo1h5V+yEaQkeSQlgWlEISZIsoURSmwDEFSKP2Qkym2goLltgtCMo5zXMfmtZMOH65NWBlG3Bwm3BplnJlr8vJinZZno4qcEJhkoJCUQhAVkJcK05KYls7KNC2LpmPQqinOzdYYxznnZut8vDlhMyy4MFcjLxUfrIVEpWIQl3R8C2nonK+4hLwAqcBzHHzHou65DKKUAuOe8bbctfhrXzjBICn4cG1MM1dYhsF8q07LN/lwbcQkVSy1PWre/vzYvePuYeN471h/XuPzefCiXIueBp/Xfa/2+8XlsNv/VAWviuPTevpF5ahzsI6C55nHdpgSyYPEuL1i214H05muTzQAQ4gjdR0+6nm7uxPRj6/1yYoCy5AUpXro+b6ntXrDYRzr1upJXvLGidahhbO7v7Mtz+aNk01ubE0ghkmaMUlKTrZ9vn5p9qHn/ElLmu92y+2sbtdsE882EBg4lsGZmRo1x8Q2BL0wpVQwU3cYRBnLbXWg6PjSXAMEXN2cMFt36AUpLddCCNgYJQzCjNNdLTrGeUmQFrzScNmaJJUztaKiAtu2+dKXvsS3v/1t/tbf+lu7//7tb3+bv/k3/+Zz3LLny/N2px+W+abLb16a4/p2wDDOMdIcU0qWWj5nZjyatiTs69+Ls5Jbg3DfnGOu4XCrH+0ublmGxJRaNLNNySjJOT9XZxxlrA4j2r5AorsJR1lBP8iYrdv4nkVWpmyOEz5YHdIPMroNh5ZvUhQ66D1ICv7Hx5u0PJtSleSFQqHnB0mmOyZahnY8Z0UJClzbRCnYnsTUbINRlFEo+HB9zKm2j2MJvnphhleXmvyPj7e4uFDHnOZVjuIME9icJCy2XTbHklIJojSjKLV12jYlWV6QGJK5poNv6UWk7SAhL0rOzfrUHJN+mCKl4NyMz9vJiF6YM1u3yQpFmJaUpe4qfW1rwrnZOkGSPXB8LLQ8/o9fO81/eXuNfpix2HLo1mx6Qcooyun69j53/A7HZdxVVFRUPEsqwesp86JMeo4zR5mD9aQchzy2B5VIHkaM2+c6vOu9j9J1+KjnbW8novmGe+jX3a9s+OXFOklWcKsf4ZiSXzndIcnLhwqlB31nW57Na8sNoqvwymKTuBB88/Ic3fuUTD5s2x5FXLzbLbfzQCEF1B2Tm/2QU22fmZpeyU2yAkMIRlHGl850SPPyvqLjGydbAGxPUq5uTQiTnIZjMowyVoYRbd/SoblCYBuScZyRl6pyplZUVOzye7/3e/zdv/t3+fKXv8xXvvIV/t2/+3fcuHGDf/AP/sHz3rTnxnF1px/ExYU637w8z7u3hyy2XGzToOYYCARFoQOB3zzR4lfOzuw2iwFIC7249tpyY3dxa67h0PFsbva1I6tmW7y61CRItCusF6S0fJtCQcuzSDM9hwmTnEGYUTiQFSCkYMa32RinrI9illse4yRlM0goSsXJtkfdNXUZn9AuZSkFQggEiqRQOKbEt00sIYiLkjQvsEwDz5S8fXvIj65ss9T28CyT69sRhhQkWYnpyN3ogPOAbxlYhkHLszAlFEXJJNVdostSkBUlbd9itmYzTDIcw+D6dsiZGZ/6tJzQkhLTkGQlnO7WuLIxZhKX9MMMywDD0NvecC1KpfjRtT7/yyvzDxwfCy2Pv/7m0u5c6fYgwpaSlxcbqOnx3ctxG3cVFRUVz4pK8HrKvEiTnuPMUeVgPQmHES/evj3kLSlIp5Otp7WNB5VIHlaM2+dgUsU9732UrsPHPW+Hed2Ok21jlPDxxpiF5n7RqOXZvHmqhWMZrAwjGptj2p79UKH0ft9ZMZUHs6Lk4nz7UELPUZQ03+2W2/tAIRA0bAshBUleYkvBxjjGsXSo/1df0qnADxMPv/HyHD+8YnBtK2R9HAOCmmNwfra+K/qlRbnbMfOwY0QpRT9In9t3tqKi4unzt//232Z7e5t/8S/+Baurq7z++uv8l//yXzhz5szz3rTnxnF0pz9oW9840WJ7kk7nDwZlCRvjkPduD/kNC24PQ6IrULNNhIBJkt+zqLY2TLg9CLFMgRT6v/NzNRquhSGh7Zko4MtnOnRrNu8xZr7hMAxT3l8boxQ4liQtJLMNHwTULIM4y7nVC1FCYQi43Y+Ipo4uxzQYqQzLlAggKRQg8C3BYstjruGQFyVZqTCkIC8UozxHCKi7Fie7Hsttl7VRyOZY39NeX24SpAW9MOW81DlgoyRntu4wV7dxrIjrWxMmqV6wNqSgW3PYnCSM45ysKBlGGZ2axdu3x9op51p0azY3pvmf7ZpNmORsBQkqB5UL5ho252Z8slIRpcVux8kHcdBcKc0LvvfR1rEfdxUVFRXPikrwesq8SJOe444QgrZv7d7YB2H2TB+gHyZeuJbkOx9s8MnGGNOQz7TU8VGcRHsdTP4BV4Cjdh0+bn7Zg16318m2NUn4aG3MhbkG5+Z8Wt6d17Q8m18506axbvKbl+Y41fEPlbd24Hc21eJg0zvcd1YpxcYoZmuS4tsmCrUrmu1wWOHobrfczgOF60heWZohSkvWRxH9KKPhmHzlfJevvnSn3PJh4uF80+VvfGERhOKTjYD5hsV7qxLLELv7srdjZpgeboz8yUdbrIzTZ176W1FR8Wz53d/9XX73d3/3eW/GseI4udMfxt3b+ul2wKdbAd50jvDyQpONSc5//2AdheA3znc42fb3Lar95qVZ3jrdJslLRlHGzV7IyjDig7URm+MEwzBwzIL3VkfM1BxGccZCw2Esoe3bnJnxcE2TG72AhmsxSbUw5RiStXGMaxlIQEqhnVuGZJLk5EqBgqWWi2Ma2Jae4ygUwyjHkgJDSt482SJK9bbpBTKIshIQnJutM0kKRlHGte0Ax5RkRQESCgWFKpmr29Rdi8uLJnMNiw/XJpRK4VsmYZozinVo/cX5OuM4p+GarA5DRlHGmRmPMClYG8Zc2ZgKbrbB5YU6/TBHKcVSy0NIyWLDZq7uEKT5oVzUB82VXpRxV1FRUfEsqASvZ8CLNOk5zjzP7Cx4cB7bMEr5eD1gbRRzcb7OYst7pqWOj+Ik2utgOtPZX5L3IrgO73ay+bbJSj/iZj9gkuS8cbK5T/RKMl1ucKrjH1p4O/A7KxRN4GsvHS63653bIz7eGPHR+ojbg4jllseZGW/ftj2KuHj3Su7eBwrHKmh4dWZrLm+cbHFxob5vHBxGdJRS8hvnZ4izkkGUUncstoOYjmczTPLdjpnAQ8fI5lg3ML+2PWGuWXsupb8VFRUVz5vj4E4/LDvb2g9SvvPBJgCX533iazeQQmdZebaBUorNccZiy9u3qPbuyphvXp5DCMFiy+XiQp2P1yd876NN5hpwpuuT5opPNsd8vDHR9wkF800fISRLTX/XSZzkujTfcwxqjsV4M8CSAs81yQswpcQUkJcFNdvAMiQt3+LsbI22ZwGCT7cDgiSn4VmcbHu8utjgZzd12eZOZ8Vxoh1ZQphcmKtzexCy2HRZHcZMohwsuDjXYJSUBFmBaUjysmRjlBJlBUstl5cXGkRpiZSKN092qNkGb6+MWBvFzNcdrvcjbvZDujWLC7M+13shSVayFaSUSvDGiSZnZmr4jokl5W6XyluD8LGd9nMNhy+eanGi7QFKO8Nr9rEcdxUVFRVPm0rweka8SJOe48hxyM66Xx6bQnF9O9rdtpZnY8ijC4E/TEfIR2mOsNfBdKMXMgcUSpEk+bF3HR7kZFNKsdj2WBvqFuPXtyPeOGkhEA8V8B50bO/+zhoU/OC77+hMqwewd6wuNFwuzDa4OQhZGQSMomxXkHsccXGvcLXzQHGU15S9Ql9ejHT3qkHEma7PS3MNLEPy6XbwwDGilOL9Fd0m+HTXRxr6u3KUTREqKioqXhSOokvzs0IInSUVZjlnZ2rsNJgMk1Lnb3k2AtgOEoKkoO6YDyzPv9WPAMWrS3fuF79a63J5scF//3ADUwpeX67z0xuFnsOYkoZjcaMXcrrr41mG/gwUeVESpSVN1wSl2ApS0lzhWMbUYZXx3uqI+bpD07PYniTc6EXM1gvans27q2PGUUbL1ffbLC8xpcQy9IKTaxk4psGl+TqXFhp4hoLtVX71bIdxqrjeC7ndD7nZCxnFOedmfL55eYFCKf7HR5t0fJuiVEgpOdP1GUc5G5OEMMnphylLbYckV7w012Cx5fLh+pgkK6g5Fssdb58DPJ5mhD1oMex+85fnvThcUVFRcdyoBK9nyIs06TlOHEXw91Fwv2ynICnYmsQgBDN1m5pzR3R60hD4w05cHrU5wo6w8faNHpMBrAwiLMs69q7Dg5xsQojdyWU/SlkZRpyZ8TGneVYP6uz4sGO79zubZdlDt++gsXp21meS5ARpRj9MuLYZ8tKCYHOcPLG4+DSuKTtC31un29wehFzdCBlECeM0Iyke7kwdhDrwvgn3lHAeZVOEioqKiheBwyxaHadtOCjnMytL8qLEdi0QkCeZ7oQ4xbUMtiYJG6N49zPKsuTjjRGuaRAkhQ7CnwpqTc/m187O8PMbfW72Imq2QS9ItTtLQMM1EALitKBQiq5nExcFWakolM6UdEyTUqXkeUHdsbi82GQY5VzfDuiFKXJ6/ymUIkj1PXgY5dRdk65vM4hSllr+7pxtYxxxbSsgL7XLLE1zWsD7a2POzTV5danBMMywTYMvnqrz5TMdOjWHfpjS9HQH5eu9kJZn0Z7e2z9cG3NtMyQvS4K44GTX50zXp+VZhFnBjV64TzzcOVcPWwy73/xlseXszkGe1+JwRUVFxXGjErwqjj1HEfx9FNwv22kYpWyME12ydkAb6McNgX8UV9vjNEeYb7p8/dIsf3wFfvu1JWqufexdh/dzsu1MLj/dCrmyNeZGL2S2fv+A+qflGDxorO5s2/VeyNpAt29veCYX54+vuLi3Y+Zry61HelhL8nLfg9DdHGVThIqKiorjzHFw2zzqNhyU87nTZTAtSgRgCh2O3g9TLEMyitJ9YlGSFWxPMq5ujZmtuViWpGYbLDZdZuoONcdgoelyZtbnZKfG+ihiZRhzaxBxulvjrZMt1scpN3oBcVbg2AZkIA0wBFiGJMwy0qKkbksaroUpJTM1i5s9QAk6NYuGa2IYkrVhTNM1KEvFlc0JSdul4TmcmdHOqkGY8MOrfeqOwULDxbNN4sSEMWyNE5JihBDQC1JeW25yaaFB29fzTcuQWIaBYeqfB0lB3TVp+zYXF+rcHkRYpsuXz3aZ37Mwe6brM5wuEA2jFO+Q+b53z18cU9ILUn5+s8fWeymzdZs3T7afeHF4EKYUFFVFSkVFxQtPJXhVHHsepVzvaXNQtlNeKBabLi/N13cnQHt5nBD4R3W1PW5zhJ2/LzQdLOt4Znbt5UFOtrZv89K8oOEZfOPSPPNN98BJ2pM6Bh/UefBBglzLszg7U+NGL+Abl+a5tFh/ISaQj+oic8w7JSIHcdRNESoqKiqOI8chiuFxtuGgnE/fkXRrNmvDiCgtEELw7sqIQinSrOBWP2ap7bLQ6OicrvUJK4OQICloeTnDseL9cYJpwKlOjZMdn7mGxUzN4Zsv69yv24OIq5sThmFGWpac6nic6nhsjhNu9APCROd6bQcJN3oBUVpQtw2ivMRKc272ArYnKb1Qd0hM8pIFx2S+6dAPcrYmMRJIckWuBBfmfOqOxSTJ+LNPBwgUXz7Tpb5T8liUWEAvSAhyxULdwTIFF+Zq++Z6NcdgpuZwexBgCElW3pmLWoakUIqTDZ/5prPP9aznLHVKpYizkluD8KH5vnfPX4ZRxiebE3pByiTJ+Gh9wpmOx+lubd99+36Lwwc5/3YyOP/rO2ukSlQlkRUVFS88leBVcex51HK9p83d2U62Ifj5jQFXtyYopQ7lrnoYj+Nq+zw0R3iYk21zknBxvsmlxcZ9xaQndQw+qPPgg8aqEAJTCmbrjp74vgBi1+PQ9i2WWx6TLaadKe/wIjRFqKioqHhSjkMUw95tONP1CdOSUZxhTTOmrvfCA7fhoJzPUsFc3eH91REbo5jFlse8pQPsr20GDCLdcXEYpWxNMnKleG25yU+uD3n39pjZhs1szdalhUnG7f6EK5vwv7wyvxumrh3Fzd25lWXA9z/aZmMS88VTHd5dGbIyjGDaFbsXZCRZgW0Z2JaBYUjSQpGXJb1JgpCCUZyTlwopdZdv2zRYbDqcn60zigsG4RjLENiG4PVzM7v3/EGY8t7qmC+g51ZJKZhtOFzrhfzi5pAvn5U0PYsgKciKkpm6zcY4oh9mZHlJUSrirGBzHLPc9vBsAxTsvSEqpUjygm++PM9bp9ukhXqom2rv/GUYZbxze0SQ5bRcC1MKarbB+jjlpzf6fPlMZ58wd/fi8EHOv7pj0htHzAJN18J17KoksqKi4oWnErwqjj2PU673tLnb9fLGyRbbQfpI7qoH8biuts96c4THdbLt5VGP7c4K6M3tMQBXtyfM36fz4FzDeSpj9ThkwBwWIQSvLDf58RX0w9KeY3XcmyJUVFRUHAXHIYphZxscU3cN7AUp+bQLYrdmM1d37rsNB+Z8mhZnZ3SQfMO1mCQ5kyQnTAtarsnNQUj/vQzTEJxoe0gp8W3J2lALQAhBzTYZxzmOpRO2lNq/zTtzq41RzJ9+ss23P1jHkoLb/ZiNcUyaKyxD4CoDIRRpAcsNh5mazSTOycoSQwjivMAWBg3HpGabZKUiSDI2xykGgqVWTqkUUgh8y2S2brMwFXKU0gH1Yaa7NNYdkyjMaXoWl+YbvLc64t2VITXbohem5NPPDNOSU22fvLzj1nppvsnXLupcrfvNWd442aJbf3AznB125i+OKflkc0KQ5czX7wiWvm2SZAWTON/NE9v52d7F4YOcf1GW84MrPZIk4S/VwbcNxBE2YKqoqKh4XlSCV8Wx5yhEjqfNUburHsfVdrcosvACuYgeRdB50mP9KMd2ZwX0Vj/gw9UBv2bCOMrp1ksMad47Ebw8d+Rj9ThkwDwqO50sz83UWRmnn0m3YUVFRcX9OA5RDElesh0k9CYZUV7Qci1s1yItStZGMcMwo1u37tmGnftxqfRi3v+c5nxmJaiPFa8vtwBdWvjLWwMMAR3fRgH9KCWOimlgvKBUMNtwaHg2aVGQFyVxXjJTdzk3UyNI83sEtx0x5lY/wjIE83WHa9sBozhjxrdZanmUSjGKc4I0x5QCWwpOtl2SrGCziIkyhTctrxfTn8cZbE4SnR/WcPEdizgr+HQ74Pp2yEzdZqnlEyQFvSCl6ZhQ3unmaJsGZ2Z8bvUD/uxan5MdjxNtD4VkO0gpy5KFlsNvnJ+l6Vn75jKzdedI5oc785dekOqume6duZJrSTzLYJzktGvmvjyxvQtuLc/kux9u3eM+BIEpIZ9GEux1aFcNZyoqKl5kKsGr4oXgRSjXO0p31aO62l5EUWSHx9n2JznWhz22aV7wvY/0pLBmm0j0JHBjHDNKFG+cbOoW7XdNBI9yrB6HDJgn4euXZgkyXghnWkVFRcVR8SRRDEfl6LUNwdY4ZZzknGx7d4QRaeCYkluDiFIpbOPOe99zPxaKJiAFeFOnlGebSAFXtjIEgpZvgdBlgaYhqEuLMMvZGMckue4+eHbGRyAI05w0L3nzRAvfNrk1CPcJbnvLMM/N+mwHCWFakGQlCw2XMCsYJTmzNRvfMXc7MH60kdH2LUZJzjDWIthON0fLlORFwc1ejGtKOp5FmJbUXV1i+spig5VBxNu3xyw03TsdKaeC1zDOmG/Vp90cDdqegyFDPEsySXJMQ3K663O64zOIUm71I765sD+j86jmhzvzl5/f7JHlJS13j1tc/f/bu/fYOK77XuDfmdmZ2Qf3wceSFF96y3Ik2YnlxJFjx1aTuvIN0iRtjRoXTZ02KZDADpIaLfICahtN4aJwUBRxm9ooILTow+lF67ZIblKrN5btNNe1nMS3smIrkmyJMimKy8c+uI953z+WuyLFJTlLcndnd74fQIZJrnbPHK72/OZ3zvkdQAmI6AkrKGoWbAcomRYEDcsm3DJFs+bqQ8OyyydihhXAAQqaja7wtafngTNE1K6Y8KK20Q7b9eot8L3W87hdKdTspMhWbq/bTNs32tdu+vbAUBRnJnPVGdB00YDllIO8/i4VVxYMXJot4tCIDAHCikBwK96rXqgBs1nl3xFrdRGRv6w2seLAwULJxNszBezpjyAeWh6GN2TyylleSxFYLCV13X7CmuOxpgMAfnhuBu/e3ltN4jlO+UTCvoiMomFhrqAhIgegiAJCSgCZoomFkoGibiERUhAKSHAAZEoOtiVC6FIDKOgrk35Lt4KGF4vBv5XKwbIdBCQRYQjIlQwkQjJ004IIIJ3XsaBZyGsGFElEMCBCFAQ4to28Vk6wZYp6tdbWVFbDq5fmMNITxvaeMBLh8mnEPx2fx5tXcujrUiEJIhZ0ExCAsCJXT3Nc0EzkdBN7kxG8Z6wHiixCFkVEVAmCIEAJiKuuglotZqknpqrEL5dm8/j51QUEZRFdQRmGaSNd1NHbpeKWnhCuZDRMZopILZSQCC0/sXoqU6q5+lCWRAREsfpeWVp8H+CBM0TUvpjworayVQmlduBmpVCzkyJbGYy3MqGzXt/KUjloTXapyGsW8iWzXIMEAAQBiZCC2bxW3i6gBmoGgpt9r3qhBgwREdWv1sSKZlo4P53H+FwesiQiKAs4eXamOn5u9eSVbjlIRlWIgoCruXLiQw6I1eRIPKygN6JAt5xVx+OwIqEAIFvScXm+gKF4CG/NLCAekpErGpi3HWSLBjJ5A5N6CYOxIAbjMgq6hatZDb1hBZIkoGRYyGgmInIA23vKy4aWrlSv1sqcLyBd1JHsKp9ouL03hOlsCROZImRJhCqL0Eo2rmSKMG0bWd2E7QgIySLUgFQuUC8IUOVy8iYgAYmQDAcOIADdEQWO46ArGMBUtoRc0cTB4RgGYkFs7wtjuDuMvGbAho2ZnAbEgANDUcRD5TFWNy2kCzr2D8RqHj5T7yqoja5w/x+HBpEu6jg7lUPJtCBLErbFw9jeG0IsKMOwHRwcjuG9O3oQlKVlSbTVVh9WTpt8ZzYLhAFZvBbP2I6NS7N5DHeH4TjOigOaiIi8jAkvIg9bb6VQM5MiWx2Mtzqhs1bfTmVKmM1ruJrRMF/UYSzWQoEKLGgmgqoCUzNgWHbDDk7wQg0YIiLamKUTK29OZfGzySwKuonBWBB7B6LoDsvV8fOufX3LVhVvxQSQGigXp++JyEjlDMzmNZiagYAoYls8jGRUBiBADYhrjscAkOwKYjJdxG07ezGb13FuOofJdBGCKKBLCSAeliHLEnTLxsXZPGIhBcOJEHYluzCd03A5XcT2njD2JKOQJREXZ/PVleqpnFZN+qQLBs5eXUCuaGLfQBSJsIJbdySQ1028M1+EYgiwbQcBSUZ3WMXcggHNtBAPK+gOKzAsG5PpIhwAt26PQ11cAaXI0mKSx0YyqiIelBEDML2g4dJcAbv7IuiNqDh6QxKCIOCW7T04dSEFzF9BQBSrpy5OZUqIqoFVT1quZxXUZmKqgXgI//N9Y/jfp6cwXzAwGFfRE1GgGeX+T4QVvH9Xb82/v9rqQwECxnqCuJjKLj7SgWU7mM6Vt3sapgUbDr572mybkhlERAATXuRh7XQyXSOttVKoWUmRRqzG8kJCZ7W+zRYNXJopwEb5KPZ4UIYqlVd4vTGVwXB3tDxTvhjcN+LghM3UgCEiotbrjwVxV0TGuas5FE0TYVWCYdk4n1pAT0Sp1n36r7fnkC7oWzoBtDSxcXA4ioIegWHZkKXy6YmXZgvViZqrWW3N8ViVRejF8kmFd+3rwzvzBdgOYBoWQrKEwXgIyS4VogBMZUuQRQEfuWkEh7f3YDJTxFvTBaSLGnK6Ac26tpoawLKkTzKqIlcycSG1AM20cWg4jkRYxQf3JfHqpTlMzBcx1BuCCAcLRQOCUF7BFZQllCwbogBsS4SQLhqYWdDQ16XCcUzEQxLm8gJs20IyogKCAAFAPChjdkFHQBRwaDiB7ohSjQt6QhJOvXQG2ZKBmaIJRRJxYDiOke5ybbHrVznVM/m1FTHVQDyEj9y0rZosnEgXXdULXausw3zBwLtH48D8BHKaiUtpDRdn8lACIt4z1o2BWLCt6ogSEQFMeJFHtXMR9mZqVlKkEauxvJrQcRwHl+cLkAMSbNtCMCACgoDusAJogCJJeGsmj739XbAsp2EHJ9R7cAEREdWvkZNr09kS/v3MFL57+gpsx0EsFEAiXN5aWNlStysZweX5ImzHxkAsVPN5NjIBtDSxcWm2PH7HguWTCS/NFpZN1Kw3HmuGvWw8TnapuOfAIC6kFqCbFpJRFUpAWjzRUIAgCNje24WeLhU9XSoODMVX9DEAPP9makXS54bBLmiGhXfmi1ADIm4Z64YiieWTFZUAggERb0xlkdcs9EQUJLtUqHIAtlPeziiLgJrT4ADI6xbyhoWQGsINg13IFU0s6AYCkgA5IFbH0p3JyIpJq8ppw8cODsKCVG13Kqfh5NnUpk5i3qqYaqP1Qtcq67B/IIxTL/0Mv3RgEC+dnwcA3DgYhbi4xbGd6ogSEQFMeJEHtfvJdM3UrKRIZTWWungqUWWWOKJKNYu2e6nt9UoXDEymizg0HMWF6UK19kllhVdvWEEkKOBj7x7CjdviDVt5WM/BBUREVL9GTq5NZ0t4/s1pvPL2HGzHwXAiCNsRkCka0HQboz0h5A0T01kNSkCAJApbPgHk9tTgtcZjAEgtlLCrP3FtNZhtY2dfBMmogkuzRczmNeQ0EwFRxGh3BHJAQCx0beyutZp6Pq/XTPrEQwpuGo1DlSVMZoqIpnJIhBS8e7QbB4aiKOgWvn1qHJcCBQBAtmRClgQIQrlvDNNGRJEgCsCR3b0wbaecGIuq5dXbi+01NQOWDQzGgrhr7+pxZSKsQJavXctWnMS8lSvcN1ovdLVkmWmai88LFAwTO3oj1WTX0tdkHVEiahdMeJGndMLJdM3UrKSIGhChGTZ+cimNvG7CtG0ERBG9ERXbe0MIiGLdwbhXEzqVQHQkEUZYCVSD47xmAgFgpDsMSQ5gVzLakCDv+tUGldouGw2siYhopUZOrlVimalsCUpARCwUgOOUT/GTJRmZkoGZvI7BqIqr2SL29HdhWzyMq7nilk8AuVkFtOp4rFsAgFio9mqweEjBoREZec2qToQBDnIlc914YK2kTzyk4JbtCUSvBnDXviRGu8PVNjuOg3dtS+Dt2QJ6wzI000amaCCiBiAJQKaoAYKIoXgQR2/ox0S6hAupXLk8wZL26ma5JteB4Tj2DnRteZ+uxSsr3NcumeG0vOwEEdFWYMKLPKXVhczb0VbMNq5HNy2kchrG5wrY2RuGIpePwb6SKSBT0JGIKLh5JFF3MN6Mttdr1WDeMIAr49jVH0FOdxoSiK622uDAUBTvGUv4vp4dEdFWaPTkWiWWSYRkTIgCEmGlPFZK5RpRYTmAXMlAMqpgvmigryuI23Z144WfW3VPALnZkllJbFQeezWrrXhszfFYcBADcMeevjVXg3UtJm0cx8HF2byr5JybbZSJsIzR7vCyeE8QBNy2qxs/vTyP8bkCBmMq0kUTmYKOBd1EUA5gIKbizr1J7BssT0xdn8gTAGSKBgYTIRwajm/od7yZk5i9usJ9KTUgeCIpR0S0WUx4kad4oZB5O9rsbONaHMfBmckcosEARrpDyGgm4kI5EIoHZbw9W4AoCjgwFN1QMN7Itm/EasG8EwAKAGYWtOrWjq3kZrXBYJwruoiINqvRk2uVWCYRUiBLIrrDMjTdRrqoI6LIkERAK9mYmC8iqgZwaCSOgXio7gmgerZkrvXY5OIYbDvAzaMx7OgNYUG3EJaAMzPX6llVjHSHcCG1gDeuZDHWG0ZIDtS9Orsy1p5P5ZB0VJi2Uy2VAAdrJn0G4iHcd+sI/ter7+BKpoigLGIgHsQOOYBIMIDdyQju2NtX/l16cGLNqyvcl4qHvJ+UIyJygwkv8hSvLPNuR5uZbVxL5cZgd7ILhmXj0lwBc3kduZKBgCRidzKCRFiGEliZpHQbjDeq7RtRz9aOrdKo1QY86ZSIaKVGT65VYhlJAHoiCqayJYz1hpBaKI+dmmbDtG2ElQA+uC9Z3VJXzwTQ0kmSZJcKywEWSgZOT6SRypVwdH9/dZxda0Ll7ZkFdIcV5HUTc3kdqZwGAOiLKugNBRADkMppGOqRl43ped3ATE7HdE5DMqqiJ6LUlUQSBAGDcRUvnUvhJ5fmEVIkBGUJUVVGSJEw3B1ac6x911Acn71LwX+9PVcu+m87SIRkDHevjDG8NrFWaZPXEnFLtUNSjojIDSa8OkSn3Ni2wzJvv1l6YxBRA4iHFrf42TZkUURQFjGRKa64MWjnwwfcbu3YKo1YbcCTTomIamv05NrSWGasO7x4OqCJwZiKZFTBxHwJYUXCkd09+MCevhX1tNb7nF86SZIIKbgwk8dcXodp2ZBEEZPpImRJxCduGQaAVSdUui0Zz5+dQZcq4cBQFLOLCTkIAkRBQE+w3Dc/PDeDg6NW9Xn6o0H0R4Mo9pi4NFdAWAngtp292DvQ5Tr2rIxR0WAAshTGQslCcTHpNhQP4ZcODKw7Vg3EQ/jozUOu4l8vTaxVeDERt5TXk3JERG4w4dUBOunGljNK3nP9jYEgCOgKXvvoyGvmihuDTjh84PpAVIKFH518fcXWjq2w1asN2jnZSETUaI2eXFsay6SLOnYlI5jOariaLWK+aCCqlld2fWCDEyiVSRI1IOHMZBZ5w0Q8KEMJytAtG6kFEy+dS+HgcBzJqFpzQsWBg/G5EgIiIIkCLs9rKBomRrvDcABML2iYyWuIo1wI/t/PTCGiBrBzcUx3HAeAgG3xIK5kSrg8V3Bd/H1pjHBoOA4A1Ym0gCgglSthKqPhxm3OujGCFxNZ9fB6+72elCMiWg8TXm2uE29sOaPkLRu5MeiUwweWBqKGYTTsdbZytUEnJBuJiBqpGZNr18cyiUgA0VAX+iJBHBqJ17Ua6nqaaUMzLaTzJvKGif6ua5/nQVHCUDyIc9MLOD2Rwe27e2tOqOQ1C7N5DX1dKmbzOoqGhb6ICggCBADxoIz5ggGIQESR8f8m07h9dy8EQUC6oFfLG5iWDdt2kMppGO0JY99gdN3214oRlk6kiYLQFjGCX3g9KUdEtBYmvNpYJ9/YckbJOzZyY1AyLKQLBmRJhAMgokooh9BlPHxgua1cbdApyUYiokZqxuRao2IZNSDCsh1czRYRDysrns+0HCTC5dMJKxMm10+oGFa5jpgDEQLKK77kJZMqiiSiULIBERBFAZppQVxMdr0+sXxVWcm0MD5XwAs/TyERltftOx5QREREzcKEVxvr9Btbzih5Rz03BtPZEk69PY+zV3N4a2YBYSWA3oiK7b0hxEPl32fRMGFaDjIFg8lMbO1qA95IEBG504zJtUbEMomwjL5IEKeK80h2XbfN3nGQLuoYjIYQEAUEZanmhIosiZAEAbN5Hf1RFXnNhGHaUBfHDt2yIUnlBJhtO1ADEizbxkRaW7GqTBIE9EdVFHXT1UQrDygiIqJmYcKrjfHGlprJzY1BZYttuqBhKB7EXF5HKCDiSqaAbNHAoZEYHMfBKxfTUCQBL52fhhqQ2rbm3FbaqtUGvJEgInKvHSfXBEHAoZE4fng+hYlMEf3RIOSACMO0kS7qiKgyBuIKgHLCq9aECuDAtAHLsrG3vwvvzJdwJVPAQCAIB0CmZGBbVAZKQF43sDsZQWpBx+yCjnhwydi/mGDbFg9jrDfsaqKVBxQREVGzMOHVxnhjS8221o3B0i22O/u60BMxyl9r5W0P80UdPx2fx3zBgADg4M5eDMSCbV9zbittxWoD3kgQEXW+vQNd+OC+JP7vW3PI6yYszUFAFMuJp54g5gtG9bNeEISaEypHdvVgdkFHpmggGZWRLgRweb4ACALiQblc06sExMMqPjDSjf88P4vpXAbbe8KwHWdZgm17bwghOYDZvF5zovX608QPDEV5QBERETUcE15tjDe2VMv1QWWztgtev8U2sRiwVgrbWraDs1cXMBwP4gN7ktXEWSfUnNtKm11twJNOiYg6nyAI+MCePuiWjauZEuJhGV2qDEkEUjltxWf9ahMqqZxWTYT1dimwHQcA0NMlozJM3LGnD0M9XQiIIi7N5pEpmZB0s5pgq5QsqHVqM7D2aeJTGY0HFBERUcMw4dXGeGNL11srqGx08Fhri20irCAekpHXLMwVdORKKbx7LLEiodMJNee8hCedEhF1vv5YEEdv6K9+1qeL+pqf9bUmVK5PhClSOWbULQcSLPzo5OtIRst1wvYOdOHo/n6cmchgMB6EEpCqh9KsNtE6nS3h+bPT1aRcIqRAElFd2X3Xvj68ZyzR0gOKak0UEhFRZ2DCq83xxpYqKvWzMkV9WfKzWdsFV9tiKwgCuoIBZBYD8WiwdjKLNee2Fk86JSLqfFvxWb/aymLDMFY87tBwfHEbpI7+qATbBkqGWXOi1XEc/Of5Gfz4UhoBEZjIFBEQRfRG1MVtlzrOTOZwdH+yZWPTahOF+wfCLWkPERFtLSa8OgBvbGlp/awdvde2tzZzu+B6W2zTRQO9XSqkVUrKsebc1mvHYsxERFSfZn7WL51ofWc+j/F5AyIEjHZHcNuu7mUTa+euLuDFn6dgOw7iSwrrVw6y2d3vrsh9o6w5UZgtQF3/KYiIyON4Z9khKsHOYDyI7ojCZJfPXF8/a6nrtws2SmWLbTyk4OJsHnnNhGU7yGsmLs7mMRgP4vD2bqRyGpzFGiEVla0Qw4kwtxIQERF5WH8siANDUSTCCkRBhO0AmWJ5tdZ0tgSgPK6ffieDnGZiOB6CKksQBQGqLGEgGkReN3A1o0M37Zas7L5+ojCiBiCJQnmisDeCbEmvPo6IiNoXV3gRdYBa9bOWatZ2wfW22ALAybMp1pwjIiJqU9PZEl74+QwyRR0jiVDNEgqyJGImX0J3SIZuOwguDU8EAYmQgqlcCdFQoCUru9ebKEx2BYE0yidYKlwpTUTUrpjwIuoAq9XPqmjmdsH1ttiy5tzmtOoUTiIiai0vfP67LaFw47YoJFHAQCyEqwslqAFxWVsDkoB0QUdfl9qSld3rTRSqsggNgGZyhRcRUTtjwouoA6xXP6vWyUmNtFY9Edac27hWnsJJRESt45XPf7clFHb2haEGJPTHJCxoJqYXNMSDMhRJhG7ZSC1oiKoBHBqOt2T8X2+iUDPsxccxNiEiames4UXUAdarn+W17YKsOVe/SnHdC6kcYkEZI4kwYkEZF1I5nDybqtZNISKizuKlz383JRQqPx9OhKGZFg4MxTAYC6JoWJjNayjoFoIBEXfuTWLvQFfT2r5UZaJwOleqWVc0tVDu03iIdUWJiNoZV3gRdYhK/azT72RwPpVDQbcQViTsSUZxaCTOFUBtzAuncBIRtRMvbP/bCl77/HdbQiEoSzg4HMPMgoZ0Ucfuvgh29EawUDKQLhoYjAdxx96+lv1OKhOFMwta7bqiIQVIoy3fM0REdA0TXkSdRqj8Z/EPY7W2V88pnK042p2IyEu8sv1vLW4Tchv9/G9Uwq+eEgqCICyr21n5XRwaTqz6u2hmonKtg3b2D4Rx6kpDXpaIiJqICS+iDlHZ8pAp6hiIqbBsYEEzcGYig1SuhFvGehALyW090+1XXjmFk4jI65aOhUtX7Sw9QbDVSa96EnIb+fxvZMJv3ZVR15VQqKduZysSlau1zzTNhrweERE1V8MSXhcvXsQf/uEf4gc/+AGmpqYwNDSE3/iN38DXvvY1KDzel2hLLd3y0B2W8VaqgNm8BtO2oRs2Xrk0h1MX53DjthjUgFQNILtDtQNo8hYvncJJRORVXtv+V0u9Cbl6P/+bkfBba2VUreTUWgfZbLRftpKb9hERUXtqWMLrzTffhG3beOqpp7Bnzx68/vrr+J3f+R3k83k88cQTjXpZIl+qbHkIyiJen8ghrxtIhBQYloAr6RLmFgyUNAsHtyWqhW5nFjTcsbu71U0nF7x2CicRkRd5ffv3RhJy9Xz+NzPht5UnLrdDopKIiNpTwxJex44dw7Fjx6pf79q1C2fPnsW3vvUtJryItphm2tBNG/N5A3ndwEA0CAjAlWwJlm1jrDuIK1kN4+kCRnpC2NFbDiDfmMy2uunkQr1bSIiI/Mjr2783kpCr5/N/Pq83NeG3VSujvJ6oJCKi9tXU/S+ZTAY9PT3NfEkiX1ADIkzbwVSuhERIAQQBJcNGrmQgosiwISCiSMgVDeQ1qxpATmaKrW46uVTZQrI7GUW2ZOCd+QKmsiX0RFS8eySBZFRtdROJiFpq6fa/Wlq9/dtNQk637BUJuRWf/+kCsiUDu5NR3L3v2la/jT7/ZjiOg/m8jqlMCfN5HY7j1P0crWg3ERH5Q9OK1l+4cAHf/OY38Y1vfGPVx2iaBk3Tql9ns+XVJ4ZhwDCMhrfRyyrX7/d+cMOPfRWRgb5wAD8tlDAQkSA6gGNZEGBBEQXkNBO9YRmyYMMwDTgWoEoOTNN/fbVRXnhfdYck3LE7gQvTMn42mcVsoYR03sJ/XdBweSaHG4dinkh8eaGv2gX7yr16+4p92lherNXazO3fGzlNcDP1GN1sIWx2vcetKjKvSAJMy8FUtoh4SEFElSAsOWK61YlKIiJqX3UnvB599FE89thjaz7m1KlTuPXWW6tfT05O4tixY7jvvvvwmc98ZtW/9/jjj9d87ueeew7hcLjepnakEydOtLoJbcNvfRUAcG8CwJJ7vJt6azzwymUUFv+3st7Sb321GV7pqwCAgSVfL8wApy60qjW1eaWv2gH7yj23fVUoFNZ/EG2YF2u1Nmv790YTPZtNyK23hbCZCb+tKjI/nS3h9DsZXJ4rr1ruj6ro6wpie28I8ZDCOpVERLQpdSe8HnroIdx///1rPmbHjh3V/5+cnMTRo0dx5MgRPP3002v+va985St4+OGHq19ns1mMjo7innvuQSwWq7epHcUwDJw4cQK/+Iu/CFnmgL8Wv/aV4zj4zv+7glcvzUESRZi2jVROg2Fb2N3bhYJpoz+q4uBQ+d/S+FwBO7pDyL/9E9/11UZ44X3lOA5e+vkM3p5dwFhPeNkMuAMH43MF7Oztwp37+lpaz8sLfdUu2Ffu1dtXlVXi1BherdVa7wmC9dpMoqfRCblmJfy2qsj80r7cNxCFKAjIlAzkZxeQLujYOxBBybBZp5KIiDas7oRXX18f+vr6XD12YmICR48exeHDh3H8+HGI4tpLkVVVhaqu3I4jyzJvBBaxL9zzY1/dccMADEfAVLaEREjGvkEHZ6dyuJTWMRBVMdIdRdEUyoFvJIR3jXTj1Nv+7KuNamVfzed1TOZ0JGMRiNLyj28BQDIWwWROR94AuiOt/33yfeUe+8o9t33F/my+9Wq1Nqt0RWX7d6YYgWY6UAMC4qHy9r+NvE7l7+i6jtPjGWQLRWzvCZenHBwL4QCwvVvF+FwBp8fn1px0KLetG29MZjGZKWLWsiFLInb1hHDjUAzdIamuNjqOg0zRqF5nIiRv2fOvto04XdAxMZdDf0QGbAvXV+3qj8iYmMthJhtBIlx7RZrjODg9PrekLwWEA10Yny9gPm9gOpMHHAsf3NuHdw3F6+6XzfLrdnNet7+uG/DvtfO62/+63V5Dw2p4TU5O4u6778bY2BieeOIJpFKp6s8GBwcb9bJEvtYfC+Lo/v7qzLZpORjrjWAgHoQaEJHTDWjWtZnu7lDtArHkTV4/gYyI/MtNrdZ2L13xH//xHwCAJIBieuXPkwAW0sD3XG4vX7p3oRHb0rfq+WttI64892obh2MAfnTy9XWfe2lfygB2A4AEIFH+Xv7CxZZu1/frdnNet//49dp53e3LbemKhiW8nnvuOZw/fx7nz5/HyMjIsp9t5AQXIi/bSPHaRqlV2DYeCiBTNFe0rxOy+37S7ILEROQ/jazV2q6lKyrbad/9/rvwf86mMJQIQaoxxluOg8l0Efcc2IaBWGMPEEnlNPzw3AyyJR3JriBUWYRm2EgtlBALKrhjb9+mDzFZbRtxuqDj+69PIRaUEVZWTsAUdAvZkoFjBwdXXeF1NavhuTNXPNGXtfh1uzmv21/XDfj32nnd7X/dbktXNCzh9alPfQqf+tSnGvX0RJ6xVacUbaVahW3XKnRL7aGZBYmJyJ8aWau13UtXhIPldmqWUHPSQdNMyLKMSFBp6PU4joM3r84jo1nY0XettlUgAISDCi7O5vHm1QK2dUe2ZPLt+t9PXyyA4Z5oeSwKKivHonx5LOqLhVd9/UjQ8URfrqdd3ptbjdftP369dl53+3Lb/oYlvIj8YKtOKSJyo1kFiYnIvxpZq7XdxUPemHRIFwxMpAvojwZXfN4LgoD+aBAT6QLSBaMhk11bMRZxAoeIiJqhsyMToga6/pSiiBqAJJZnKnf0RpAp6nh9IsstvLSlKieQ7U5GkS0ZeCddQLZkYHcyirv3McFKRM1RqdU6OjpardU6NTWFqampVjetYSqJnniovIoqr5mwbAd5zcTF2XzTJh3c1HPULbuh9Rw3OxZ5pS+JiKizcYUX0Qa1eoaV2kMj6rvVqtPWyrpxROQ/fq3VWkn0VEoZzOQ1KNK1w2CaMenglXqOmx2LvNCXRETU2ZjwItognphH62lkfbdaddqIiJrFz7VaWz3p4KXtgJsdi1rdl0RE1NmY8CLaIK/MsLaKl06m9CLWdyMi6lytnHTotHqOnMAhIqJGYcKLaIO8NMPabF48mdJLrq/vVnlvRNQAdigRXJzN4/WJLI5G1ba5ISEiIu/gdkAiIqL1MeFFtEGdNsPqFlcurY/13YiIqNG4HZCIiGhtTHgRbYLfZli5cskd1ncjIqJm4HZAIiKi1THhRbRJfpph5cold/xe342IiIiIiKjVeLdFtAUqM6yD8SC6I0pHJrsAdyuXdMv2/cqlSn236VwJjuMs+1mlvttwItyR9d2IiIiIiIi8gAkvInJt6cqlWrhyqaxS3y0eUnBxNo+8ZsKyHeQ1Exdn8x1b342IiIiIiMgr/H1XSkR14col9yr13XYno8iWDLyTLiBbMrA7GcXd+1jYn4iIiIiIqJFYw4uIXPPryZQb5af6bkRERERERF7ChBcR1cVvJ1NuFk/QIiIiIiIiaj4mvIiobly5RERE1ByO43C8JSIi2gAmvIhoQ7hyiYiIqLGms6XqimrdsqFIIoYTYa6oJiIicoEJLyIiIiIij5nOlnDybAqZor6sZuaFVA4zCxruvoEHoBAREa2FpzQSEREREXmI4zh4fSKLTFHHjt4IImoAkiggogawozeCTFHH6xPZFScmExER0TVMeBEREREReUi6YGAiXUB/NLiiXpcgCOiPBjGRLiBdMFrUQiIiIu/jlkYiWoEFcomIqBO063immTZ0y0ZQlmr+PChLmMlr0Ey7yS0jIiJqH0x4EdEyLJBLRESdoNHjWSOTaWpAhCKJKBkWIurKcL1kWFAkEWqAmzWIiIhWw4QXEVWxQC4REXWCRo9nm02mrZcsS4RlDCfCuJDKYYcSWfYzx3EwnSthdzKKRFje8DUQERF1Oia8iAjAygK5leA6ogawQ4ng4mwer09kcTSqtsV2ECIi8qdGj2ebTaa5SZYJgoCDwzHMLGi4OJtf9jrTuRLiYQUHh2Mcj4mIiNbAddBEBIAFcomIqDM0cjzb7OmJlWTZhVQOsaCMkUQYsaCMC6kcTp5NYTpbqj62PxbE3TcksTsZRbZk4J10AdmSgd3JKO7exxXXRERE6+EKLyICwAK5RETUGRo5ntWTTOuOKMt+vpGVZ/2xII5G1bYsvE9ERNRqXOFFRACWF8ithQVyiYioHTRyPHOTTNMtu2YybaMrzwRBQHdEwWA8iO6IwmQXERGRS7xzJSIA1wrkTudKK7ZiVArkDifCLJBLRESe1sjxbDPJtM0ky4iIiKh+THgREYBrBXLjIQUXZ/PIayYs20FeM3FxNu/5ArmO42A+r2MqU8J8Xl+1fgoREXW2Ro5nm0mmcSU1ERFRc7GGFxFVVQrkVk6PmslrUCQRu5NR10ett0I9x8OvdxQ8ERG1v0aNZ25PTwSA+by+bKypJMsupHLYoUSWjT2VZNnuZJQrqYmIiLYIE15EtEy7Fcit53j4ehJjRETU3ho1nq2XTAOA599M1Rxr3CTLvDreEhERtRsmvIhohUqBXK+r58SrVE5znRgjIqLO0KjxbLVkmpuxph1XUhMREbUjJryIqG25PfFqPq/XfRQ8ERHRWq5PprmehNmfxNH9ybZZSU1ERNSuWBWTiNqW2xOvUjltQ0fBExERueV2EiZdMKrJssF4EN0RhckuIiKiBmDCi4jaltsTrwCBR8ETEVFDuZ2E4VhDRETUHEx4EVHbcns8fDKq8Ch4IiJqKLeTMBxriIiImoMjLhG1rcrx8PGQgouzeeQ1E5btIK+ZuDibr5541R1RXCXGeBQ8ERFtlNtJGI41REREzcGi9UTU1tY7Hr5y4hWPgiciokaqTMJwrCEiIvIGJryIqO2tdjz80psKt4kxIiKijeJYQ0RE5B1MeBFRR7j+ePha3CTGiIiINoNjDRERkTcw4UVEvuImMUZERLQZHGuIiIhaj0XriYiIiIiIiIioozDhRUREREREREREHYUJLyIiIiIiIiIi6igNTXj98i//MsbGxhAMBrFt2zZ88pOfxOTkZCNfkoiIiIiIiIiIfK6hCa+jR4/iH//xH3H27Fn80z/9Ey5cuIBf+7Vfa+RLEhERERERERGRzzX0lMbf/d3frf7/9u3b8eUvfxkf//jHYRgGZFlu5EsTEREREREREZFPNa2G19zcHP7u7/4Ot99+O5NdRERERERERETUMA1d4QUAX/rSl/Dkk0+iUCjg/e9/P77zne+s+lhN06BpWvXrbDYLADAMA4ZhNLqpnla5fr/3gxvsK/fYV+6xr9xjX7nHvnKv3r5inxIRERH5W90Jr0cffRSPPfbYmo85deoUbr31VgDA7//+7+PTn/40Ll26hMceewy/+Zu/ie985zsQBGHF33v88cdrPvdzzz2HcDhcb1M70okTJ1rdhLbBvnKPfeUe+8o99pV77Cv33PZVoVBocEuIiIiIyMvqTng99NBDuP/++9d8zI4dO6r/39fXh76+Puzbtw833ngjRkdH8fLLL+PIkSMr/t5XvvIVPPzww9WvM5kMxsbGcOTIEUSj0Xqb2lEMw8Dzzz+Po0ePckvoOthX7rGv3GNfuce+co995V69fZXL5QAAjuM0umm0QZXfTWVFv1cZhoFCoYBsNuurf6d+vW7Av9fO6/bXdQP+vXZed/tfdyV2WC/OqzvhVUlgbUSlMUu3LS6lqipUVa1+XbmInTt3buj1iIiIyN9yuRzi8Xirm0E1VJKSo6OjLW4JERERtaP14jzBadDU5yuvvIJXXnkFd9xxB7q7u/HWW2/hD/7gD3DlyhWcOXNmWWJrNbZtY3JyEtFotOYWSD/JZrMYHR3F5cuXEYvFWt0cT2Nfuce+co995R77yj32lXv19pXjOMjlchgaGoIoNu2MHqpDu8R5fv136tfrBvx77bxuf1034N9r53W3/3W7jfMaVrQ+FArhn//5n/HII48gn89j27ZtOHbsGJ555hlXyS4AEEURIyMjjWpiW4rFYm3/5mwW9pV77Cv32Ffusa/cY1+5V09fcWWXt7VbnOfXf6d+vW7Av9fO6/Yfv147r7u9uYnzGpbwOnToEH7wgx806umJiIiIiIiIiIhq4hp/IiIiIiIiIiLqKEx4tQlVVfHII4+43g7qZ+wr99hX7rGv3GNfuce+co99Ra3i1/eeX68b8O+187r9dd2Af6+d1+2f625Y0XoiIiIiIiIiIqJW4AovIiIiIiIiIiLqKEx4ERERERERERFRR2HCi4iIiIiIiIiIOgoTXkRERERERERE1FGY8GpDf/RHf4Tbb78d4XAYiUSi1c3xlL/4i7/Azp07EQwGcfjwYbz00kutbpInvfjii/joRz+KoaEhCIKAf/mXf2l1kzzr8ccfx3vf+15Eo1H09/fj4x//OM6ePdvqZnnSt771Ldx0002IxWKIxWI4cuQIvve977W6WW3h8ccfhyAI+OIXv9jqpnjOo48+CkEQlv0ZHBxsdbPIhy5evIhPf/rT2LlzJ0KhEHbv3o1HHnkEuq63umkN56fY04+xpF/jQr/GeIzXyvwUe/k5lmLCqw3puo777rsPn/vc51rdFE/59re/jS9+8Yv42te+hp/+9Ke48847ce+992J8fLzVTfOcfD6Pm2++GU8++WSrm+J5L7zwAh588EG8/PLLOHHiBEzTxD333IN8Pt/qpnnOyMgI/viP/xivvvoqXn31VfzCL/wCPvaxj+HMmTOtbpqnnTp1Ck8//TRuuummVjfFsw4cOIArV65U/5w+fbrVTSIfevPNN2HbNp566imcOXMGf/qnf4q//Mu/xFe/+tVWN63h/BJ7+jWW9Gtc6NcYj/GaP2Mv38ZSDrWt48ePO/F4vNXN8Iz3ve99zmc/+9ll39u/f7/z5S9/uUUtag8AnGeffbbVzWgb09PTDgDnhRdeaHVT2kJ3d7fzV3/1V61uhmflcjln7969zokTJ5y77rrL+cIXvtDqJnnOI4884tx8882tbgZRTX/yJ3/i7Ny5s9XNaJpOjz0ZS/o7LvRzjOeneM2PsZefYymu8KKOoOs6fvzjH+Oee+5Z9v177rkHP/rRj1rUKupEmUwGANDT09PilnibZVl45plnkM/nceTIkVY3x7MefPBBfOQjH8GHP/zhVjfF086dO4ehoSHs3LkT999/P956661WN4kIQHlM4HjQGRhLkh9jPD/Ga36NvfwaSwVa3QCirTAzMwPLsjAwMLDs+wMDA5iammpRq6jTOI6Dhx9+GHfccQcOHjzY6uZ40unTp3HkyBGUSiV0dXXh2Wefxbve9a5WN8uTnnnmGfzkJz/BqVOnWt0UT7vtttvwN3/zN9i3bx+uXr2Kr3/967j99ttx5swZ9Pb2trp55GMXLlzAN7/5TXzjG99odVNoCzCW9De/xXh+jdf8Gnv5OZbiCi+PqFVI7vo/r776aqub6XmCICz72nGcFd8j2qiHHnoI//3f/41/+Id/aHVTPOuGG27Aa6+9hpdffhmf+9zn8MADD+BnP/tZq5vlOZcvX8YXvvAF/O3f/i2CwWCrm+Np9957L371V38Vhw4dwoc//GF897vfBQD89V//dYtbRp1iIzHY5OQkjh07hvvuuw+f+cxnWtTyzWHsWRtjSX/yW4znx3jNz7GXn2MprvDyiIceegj333//mo/ZsWNHcxrThvr6+iBJ0ooZuOnp6RUzdUQb8fnPfx7/9m//hhdffBEjIyOtbo5nKYqCPXv2AABuvfVWnDp1Cn/2Z3+Gp556qsUt85Yf//jHmJ6exuHDh6vfsywLL774Ip588klomgZJklrYQu+KRCI4dOgQzp071+qmUIeoNwabnJzE0aNHceTIETz99NMNbl3jMPZcjrGkf/kxxvNjvMbY6xo/xVJMeHlEX18f+vr6Wt2MtqUoCg4fPowTJ07gE5/4RPX7J06cwMc+9rEWtozaneM4+PznP49nn30WJ0+exM6dO1vdpLbiOA40TWt1MzznQx/60IrTcX7rt34L+/fvx5e+9CXfBFwboWka3njjDdx5552tbgp1iHpisImJCRw9ehSHDx/G8ePHIYrtu1mCsedyjCX9hzHeNX6I1xh7XeOnWIoJrzY0Pj6Oubk5jI+Pw7IsvPbaawCAPXv2oKurq7WNa6GHH34Yn/zkJ3HrrbdWZ13Hx8fx2c9+ttVN85yFhQWcP3+++vXbb7+N1157DT09PRgbG2thy7znwQcfxN///d/jX//1XxGNRqszv/F4HKFQqMWt85avfvWruPfeezE6OopcLodnnnkGJ0+exPe///1WN81zotHoihohkUgEvb29vqgdUo/f+73fw0c/+lGMjY1henoaX//615HNZvHAAw+0umnkM5OTk7j77rsxNjaGJ554AqlUqvqzwcHBFras8fwSe/o1lvRrXOjXGM+v8ZqfYy9fx1KtOyCSNuqBBx5wAKz48/zzz7e6aS3353/+58727dsdRVGcW265xZfHCrvx/PPP13wPPfDAA61umufU6icAzvHjx1vdNM/57d/+7eq/v2Qy6XzoQx9ynnvuuVY3q2345Wjsev36r/+6s23bNkeWZWdoaMj5lV/5FefMmTOtbhb50PHjx1cdEzqdn2JPP8aSfo0L/RrjMV67xi+xl59jKcFxHKeRCTUiIiIiIiIiIqJmat/CA0RERERERERERDUw4UVERERERERERB2FCS8iIiIiIiIiIuooTHgREREREREREVFHYcKLiIiIiIiIiIg6ChNeRERERERERETUUZjwIiIiIiIiIiKijsKEFxERERERERERdRQmvIiIiIiIiIiIqKMw4UVERERERERERB2FCS8iIiIiIiIiIuooTHgREREREREREVFH+f9+yRD9joGp1QAAAABJRU5ErkJggg==", - "text/plain": [ - "Figure(PyObject
)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# generate data\n", - "y, x = generate_data(1000, compiled_model)\n", - "\n", - "# plot generated data\n", - "_, ax = plt.subplots(ncols=2, figsize=(15,5))\n", - "ax[1].scatter(x[1,:], x[2,:], alpha=0.3)\n", - "ax[2].scatter(y[1,:], y[2,:], alpha=0.3)\n", - "ax[1].set_title(\"Original data\")\n", - "ax[2].set_title(\"Transformed data\")\n", - "ax[1].grid(), ax[2].grid();" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The probabilistic model for doing inference can be described as " - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [], - "source": [ - "@model function normalizing_flow(nr_samples::Int64)\n", - " \n", - " # initialize variables\n", - " z_μ = randomvar()\n", - " z_Λ = randomvar()\n", - " x = randomvar(nr_samples)\n", - " y_lat = randomvar(nr_samples)\n", - " y = datavar(Vector{Float64}, nr_samples)\n", - "\n", - " # specify prior\n", - " z_μ ~ MvNormalMeanCovariance(zeros(2), huge*diagm(ones(2)))\n", - " z_Λ ~ Wishart(2.0, tiny*diagm(ones(2)))\n", - "\n", - " # specify observations\n", - " for k = 1:nr_samples\n", - "\n", - " # specify latent state\n", - " x[k] ~ MvNormalMeanPrecision(z_μ, z_Λ)\n", - "\n", - " # specify transformed latent value\n", - " y_lat[k] ~ Flow(x[k])\n", - "\n", - " # specify observations\n", - " y[k] ~ MvNormalMeanCovariance(y_lat[k], tiny*diagm(ones(2)))\n", - "\n", - " end\n", - "\n", - " # return variables\n", - " return z_μ, z_Λ, x, y_lat, y\n", - "\n", - "end;" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here the flow model is passed inside a meta data object of the flow node.\n", - "Inference then resorts to" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Inference results:\n", - "-----------------------------------------\n", - "Free Energy: Real[29485.3, 23762.9, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6, 23570.6]\n", - "-----------------------------------------\n", - "z_μ = MvNormalWeightedMeanPrecision(\n", - "xi: [1.451187227424307e-6, 5.189506596523602e-7]\n", - "...\n", - "z_Λ = Wishart{Float64, PDMats.PDMat{Float64, Matrix{Float64}}, Int64}(\n", - "df: 1002.0\n", - "S: [...\n", - "y_lat = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n", - "x = MvNormalWeightedMeanPrecision{Float64, Vector{Float64}, Matrix{Float64}}[MvNorma...\n" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "observations = [y[:,k] for k=1:size(y,2)]\n", - "\n", - "fmodel = Model(normalizing_flow, length(observations))\n", - "data = (y = observations, )\n", - "initmarginals = (z_μ = MvNormalMeanCovariance(zeros(2), huge*diagm(ones(2))), z_Λ = Wishart(2.0, tiny*diagm(ones(2))))\n", - "returnvars = (z_μ = KeepLast(), z_Λ = KeepLast(), x = KeepLast(), y_lat = KeepLast())\n", - "\n", - "constraints = @constraints begin\n", - " q(z_μ, x, z_Λ) = q(z_μ)q(z_Λ)q(x)\n", - "end\n", - "\n", - "@meta function fmeta(model)\n", - " compiled_model = compile(model, randn(StableRNG(321), nr_params(model)))\n", - " Flow(y_lat, x) -> FlowMeta(compiled_model) # defaults to FlowMeta(compiled_model; approximation=Linearization()). \n", - " # other approximation methods can be e.g. FlowMeta(compiled_model; approximation=Unscented(input_dim))\n", - "end\n", - "\n", - "# First execution is slow due to Julia's initial compilation \n", - "result = inference(\n", - " model = fmodel, \n", - " data = data,\n", - " constraints = constraints,\n", - " meta = fmeta(model),\n", - " initmarginals = initmarginals,\n", - " returnvars = returnvars,\n", - " free_energy = true,\n", - " iterations = 10, \n", - " showprogress = false\n", - ")" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [], - "source": [ - "fe_flow = result.free_energy\n", - "zμ_flow = result.posteriors[:z_μ]\n", - "zΛ_flow = result.posteriors[:z_Λ]\n", - "x_flow = result.posteriors[:x]\n", - "y_flow = result.posteriors[:y_lat];" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As we can see, the variational free energy decreases inside of our model." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "Figure(PyObject
)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.figure()\n", - "plt.plot(1:10, fe_flow/size(y,2))\n", - "plt.grid()\n", - "plt.xlim(1,10)\n", - "plt.xlabel(\"iteration\")\n", - "plt.ylabel(\"normalized variational free energy [nats/sample]\");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If we plot a random noisy observation and its approximated transformed uncertainty we obtain:" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "sys:1: UserWarning: The following kwargs were not used by contour: 'label'\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABMwAAAHeCAYAAABnkpdUAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3gU1frA8e/s7GzLpgdIAqFIR0GaBVBBEVEQUVRUVEDA3riKeL3+UBD7RUWv9aqAV7D3gqgoKAoqINhAQHoJJJCebbMz8/tjyZIlCSRIIIH38zw8urNTzpxN2MM773mPYlmWhRBCCCGEEEIIIYQQAgDb4W6AEEIIIYQQQgghhBB1iQTMhBBCCCGEEEIIIYQoRwJmQgghhBBCCCGEEEKUIwEzIYQQQgghhBBCCCHKkYCZEEIIIYQQQgghhBDlSMBMCCGEEEIIIYQQQohyJGAmhBBCCCGEEEIIIUQ5EjATQgghhBBCCCGEEKIcCZgJIYQQQgghhBBCCFGOBMyEEEIIUet+/fVXRo8eTcuWLXG73bjdblq3bs21117LkiVLDnfzDqqFCxcyceJECgoKDvq5R44cSfPmzQ/4+ObNmzNy5MgaH+fz+Zg4cSLz588/4GsLIYQQQtQnEjATQgghRK164YUX6NatGz/++CO33norn3zyCZ9++iljx47ljz/+4IQTTmDt2rWHu5kHzcKFC5k0aVKtBMwOF5/Px6RJkyRgJoQQQoijhv1wN0AIIYQQR67vv/+eG264gYEDB/LOO+/gcDii751xxhnceOONvP3227jd7sPYyn3z+Xx4PJ7D3QwhhBBCCHEISYaZEEIIIWrNgw8+iKqqvPDCCzHBsvIuvvhiMjMzY7YtWbKE8847j5SUFFwuF126dOGtt96K2WfGjBkoisK8efO4/vrrSUtLIzU1lSFDhrBt27YK13nzzTfp0aMHcXFxeL1e+vfvz7Jly2L2GTlyJF6vl99++42zzjqL+Ph4+vbtC8CXX37J4MGDadKkCS6Xi1atWnHttdeyc+fO6PETJ07kjjvuAKBFixYoioKiKDGZWdVpR9n9tW3bFqfTSfv27fnf//63j56Opes648ePJz09HY/HwymnnMJPP/1UYb/c3FxuuOEGOnTogNfrpWHDhpxxxhksWLAgus+GDRto0KABAJMmTYreU9nUzr/++ourrrqK1q1b4/F4aNy4MYMGDeK3336rdnuFEEIIIeoaCZgJIYQQolYYhsG8efPo3r07GRkZ1T5u3rx59OrVi4KCAp5//nk+/PBDOnfuzCWXXMKMGTMq7D9mzBg0TeO1117j0UcfZf78+VxxxRUx+zz44INcdtlldOjQgbfeeotXX32V4uJiTj31VFasWBGzbygU4rzzzuOMM87gww8/ZNKkSQCsXbuWHj168Nxzz/HFF19wzz338OOPP3LKKaeg63q0LTfffDMA7733HosWLWLRokV07dq1Ru2YMWMGV111Fe3bt+fdd9/l//7v/5g8eTJff/11tfrw6quvZsqUKQwfPpwPP/yQCy+8kCFDhpCfnx+zX15eHgD33nsvn376KdOnT+eYY46hT58+0SBfRkYGc+bMAWD06NHRe5owYQIA27ZtIzU1lYcffpg5c+bwzDPPYLfbOemkk1i1alW12iuEEEIIUedYQgghhBC1YPv27RZgXXrppRXeC4fDlq7r0T+maUbfa9eundWlSxdL1/WYY84991wrIyPDMgzDsizLmj59ugVYN9xwQ8x+jz76qAVY2dnZlmVZ1qZNmyy73W7dfPPNMfsVFxdb6enp1tChQ6PbRowYYQHWtGnT9nlvpmlauq5bGzdutADrww8/jL7373//2wKs9evXxxxT3XYYhmFlZmZaXbt2jemXDRs2WJqmWc2aNdtn21auXGkB1j/+8Y+Y7bNmzbIAa8SIEVUeW/a59O3b17rgggui23Nzcy3Auvfee/d57bJzhEIhq3Xr1hXaIIQQQghRX0iGmRBCCCEOuW7duqFpWvTPY489BkSm9/35559cfvnlAITD4eifAQMGkJ2dXSFr6bzzzot53alTJwA2btwIwOeff044HGb48OEx53O5XPTu3bvSQvYXXnhhhW05OTlcd911ZGVlYbfb0TSNZs2aAbBy5cr93nN127Fq1Sq2bdvGsGHDUBQlenyzZs3o2bPnfq8zb948gGgflhk6dCh2e8Xytc8//zxdu3bF5XJF7+urr76q1j1B5DN68MEH6dChAw6HA7vdjsPhYM2aNdU+hxBCCCFEXSNF/4UQQghRK9LS0nC73dHAVXmvvfYaPp+P7OzsmIDXjh07ABg3bhzjxo2r9Lzla4YBpKamxrx2Op0A+P3+mHOecMIJlZ7PZot9fujxeEhISIjZZpomZ511Ftu2bWPChAl07NiRuLg4TNPk5JNPjl5rX6rbjl27dgGQnp5eYZ/09HQ2bNiwz+tUdbzdbq/QV48//ji333471113HZMnTyYtLQ1VVZkwYUK1g1233XYbzzzzDHfeeSe9e/cmOTkZm83GmDFjqtUvQgghhBB1kQTMhBBCCFErVFXljDPO4IsvviA7OzumjlmHDh0AKgR/0tLSALjrrrsYMmRIpedt27ZtjdpRds533nknmhG2L+Wzusr8/vvv/PLLL8yYMYMRI0ZEt//1118HvR1lQa3t27dXeK+ybfs6vnHjxtHt4XA4GkwrM3PmTPr06cNzzz0Xs724uHi/1yl/juHDh/Pggw/GbN+5cydJSUnVPo8QQgghRF0iATMhhBBC1Jq77rqLzz77jOuuu4533nkHTdP2uX/btm1p3bo1v/zyS4UAzIHq378/drudtWvXVjrVsjrKgmhl2WtlXnjhhQr77p3hVtN2tG3bloyMDF5//XVuu+226LU3btzIwoULK6wourc+ffoAMGvWLLp16xbd/tZbbxEOhyvc19739Ouvv7Jo0SKysrL2e09VnePTTz9l69attGrVap9tFUIIIYSoqyRgJoQQQoha06tXL5555hluvvlmunbtyjXXXMOxxx6LzWYjOzubd999FyBmCuQLL7zAOeecQ//+/Rk5ciSNGzcmLy+PlStX8vPPP/P222/XqA3Nmzfnvvvu4+6772bdunWcffbZJCcns2PHDn766Sfi4uKiK2FWpV27drRs2ZJ//vOfWJZFSkoKH3/8MV9++WWFfTt27AjAk08+yYgRI9A0jbZt21a7HTabjcmTJzNmzBguuOACrr76agoKCpg4cWKl0zT31r59e6644gqmTp2KpmmceeaZ/P7770yZMqXCVNNzzz2XyZMnc++999K7d29WrVrFfffdR4sWLWKCa/Hx8TRr1owPP/yQvn37kpKSQlpaGs2bN+fcc89lxowZtGvXjk6dOrF06VL+/e9/06RJk+p8PEIIIYQQddPhXnVACCGEEEe+5cuXW1dddZXVokULy+l0Wi6Xy2rVqpU1fPhw66uvvqqw/y+//GINHTrUatiwoaVpmpWenm6dccYZ1vPPPx/dp2yVzMWLF8ccO2/ePAuw5s2bF7P9gw8+sE4//XQrISHBcjqdVrNmzayLLrrImjt3bnSfESNGWHFxcZXew4oV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QB588EH+9a9/8cwzz9C1a1eg6swyy7I4//zz+eqrr7jrrrs49dRT+fXXX7n33ntZtGgRixYtwul0Rvf/5ZdfuP322/nnP/9Jo0aNeOmllxg9ejStWrXitNNOq3Y7hRBCCFE5wzCYN28e3bt3rzLzKCsri27duvH1119jGAaqqkbf29+YYsOGDQwcOJBTTz2VadOmkZSUxNatW5kzZw6hUAiPx4NpmgwePJgFCxYwfvx4evbsycaNG7n33nvp06cPS5Ysickg+/nnn1m5ciX/93//R4sWLYiLiyMzM5Nbb72VNWvWxIyDvvjiC7Zt28ZVV10FUKNrXX311fzvf/9j3Lhx9OvXj99//50hQ4ZQXFy83371+/2ceeaZbNu2jYceeog2bdrw6aefcskll+z32P31WUZGBnPmzOHss89m9OjR0emNZUG0MkOGDOHSSy/luuuuo7S0dJ/XXL58OWPHjmXixImkp6cza9Ysbr31VkKhEOPGjdtvm8urzti1vFWrVtGzZ08aNmzIU089RWpqKjNnzmTkyJHs2LGD8ePHx+z/r3/9i169evHSSy9RVFTEnXfeyaBBg1i5cmXMz6YQYi+WEKLOmD59ugVYixcvrvYx4XDY0nXdGj16tNWlS5eY9+Li4qwRI0ZUOObaa6+1vF6vtXHjxpjtU6ZMsQDrjz/+sCzLstavX28BVseOHa1wOBzd76effrIA6/XXX49uu/HGG63q/pWSn59vuVwu64ILLojZ/v3331uA1bt37+i2sjZMnz49us3r9Vpjx47d5zUGDhxoNWvWrML2svO1bNnSCoVClb5X/lr33nuvBVj/+Mc/YvadNWuWBVgzZ86MbgOse++9t8I1mzVrFvM5vP322xZgzZs3r8K+I0aMiGn3nDlzLMB69NFHY/Z78803LcD673//G3Mdl8sV87n6/X4rJSXFuvbaaytcSwghhBA1t337dguwLr300n3ud8kll1iAtWPHDsuyqj+meOeddyzAWr58eZXnfv311y3Aevfdd2O2L1682AKsZ599NrqtWbNmlqqq1qpVq2L23blzp+VwOKx//etfMduHDh1qNWrUyNJ1vUbXWrly5T7vr7IxaXnPPfecBVgffvhhzParr766yvFZmer0WW5ubpVjtbLz3XPPPVW+V16zZs0sRVEqXK9fv35WQkKCVVpaalnWnrH9+vXr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PS+88AIANpuNp556it9//51XXnmFr7/+ukIdOJ/Px5QpU3j11Vf59ttv2bRpE+PGjYu+/9hjjzFt2jRefvllvvvuO/Ly8nj//fdjzjF+/HjeffddXnnlFX7++WdatWpF//79ycvLi9lv4sSJPP300yxcuJDNmzczdOhQpk6dymuvvcann37Kl19+yX/+85993uf+2vvkk0/y2GOPMWXKFH799Vf69+/Peeedx5o1ayo93wMPPMDKlSv57LPPWLlyJc899xxpaWkAjBkzhtdee41gMBjdf9asWWRmZnL66adXer7333+fW2+9ldtvv53ff/+da6+9lquuuop58+bF7DdhwgQuvPBCfvnlF6644gouu+wyVq5cCcBTTz3FRx99xFtvvcWqVauYOXMmzZs3B8CyLAYOHMj27duZPXs2S5cupWvXrvTt2zemv//66y/eeust3n33XZYvX85FF13Ezp07Y9qRn5/P559/zrBhwwAoKSlhwIABzJ07l2XLltG/f38GDRoUXXzjvffeo0mTJtx3331kZ2fHBCoPpA8mTZrE0KFD+fXXXxkwYACXX355hZ8ZceQq9OkUBXRCusnO4iDZhQF2FgcJ6SZ/rdnOlP97l+FnT2Hmf+aSs2Enik0hMSOJ9E5NaXRcFqrDTrDQx6LXFrFy8XryS3Vsig1NrRhuUJTIQ+LKgmlwdK34Luo+mZIphDjkyhdqLwnq+HenfSe69l3svrxCfxiABLeGffeXcX1aabNsamppKEyBTycUNnFpKnYtslBAgS+EZVlkpbhrXosrNxc++ADWrQOnE9q2hVNPhSZNauVe6puyYFnQMGMWZygM6AR047DUP6tL04qFOOLceSc8+uie1+PHwyOP1OolW7VqxaPlrwmMHTs2+v8tWrRg8uTJXH/99Tz99NPR7bqu8/zzz9OyZUsAbrrpJu67777o+1OnTuWuu+7iwgsvBOD555/n888/j75fWlrKc889x4wZMzjnnHMAePHFF/nyyy95+eWXueOOO6L73n///fTq1QuA0aNHc9ddd7F27VqOOeYYAC666CLmzZvHnXfeWeV97q+9U6ZM4c477+TSSy8F4JFHHmHevHlMnTqVZ555psL5tmzZQufOnenevTtANDAFcOGFF3LzzTfz4YcfMnToUACmT5/OyJEjo9lVe5syZQojR47khhtuAOC2227j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uUxaj6ix2rFjB9LS0jBs2DAYDAbs2rULTz75JO68805ERkY61uvevTtee+013HXXXZDJZJgzZw5effVVdOnSBV26dMGrr74KnU6HCRMm+PBoiIiIiBqOxwpmmzZtwrFjx3Ds2DF06NDB6TkvzTNARFRvRosN5wuNMNns0KkVUMplsNoFCo0WGC02hBq0Hi+aaQ0KtLKqnFq3VW3t1tJnyPEljVIBvUaFQqMFBr/qLf3KzFJR0xfdMYncpdFosGrVKsyfPx8mkwlRUVGYMWMGnn32Waf1Dh8+jMLCQsfjZ599FuXl5Xjsscdw+fJlDBw4EJs2bUJAQIC3D4GIiIjIIzxWMEtKSkJSUpKnXp6IyKMKyyww2ewwVBrMXaWQweAnR2G5BYVlFmgNni+EVC22sPjSsK61u23V7rMVhdWK7rIGHZsAUuPWr18/pKWlXXW9ql92ymQyzJs3D/PmzfNQZERERES+5bGCGRFRU2Wy2lBikgogrujUCpSYLGhlZeuhpqqhuttW7T5b/udrGbSe77pLRERERESew4IZEVEVLWUwd29PZtBYNHR325q6zxIRERERUdPFghkRURXNfTB3X01m0Fh4qrsti2RERERERM1H9VGKiYhauIrB3MvMNpfPl5lt0GuaZnfMitZVhUYLNCoFArRKaFQKFBotOF9ohNHi+pibC3e725qszTsPRERERERUOxbMiIhcMOhU0CikFkcWmx1CCFhsdhSWW5r0YO6VW1epFHLIZDKoFHIY/FQw2ewoLGves266093W3gy62xIRERER0bVhwYyIyIWKwdwNWhVMFhuKjVaYLDYYtKo6j3HVWLB1lXN3W1eaendbIiIiIiJqGBzDjIioBs1tMPeWMplBbSq62xYaLTD4Vf/OqMwsFUWb8u+ZiIiIiIiuHQtmRERX0VyKJ819MgN3GXQqaeKDcovTLJllZluT7m5LREREREQNh10yiYhaiOY8mUFdNMfutkRERERE1LDYwoyIqAVh6ypJc+tuS0REREREDYsFMyKiFqSidVVhmQUlJgvKhdRN06BVwaBTtbjWVSySERERERGRKyyYERG1MGxdRUREREREVDsWzIiIWigWyYiIiIiIiFzjoP9ERERERERERESVNIsWZjabDRaLxddheIzFYoFSqYTRaITN5np2u5aAeZAwD5Ka8qBWqyGX87sAIiIi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bxU33HCDsFqtXj/G+vrpp58EAHHw4EGXz3fr1k2sWbNGCCFd75966imxfft2kZ2dLTZv3izi4uJE+/btRVFRkTfDbjDbt293vG+dOHFCrFq1SrRr107ceeedTutVzoMQQixatEgYDAaxZs0asW/fPvHAAw+I8PDwJpsHd+9pm9v5cLV7ueeee05MmjTJsf6JEyeETqcTTz75pDh48KD47LPPhEqlEv/7v//rq0NoEO7cx1TNxdKlS8XatWvFkSNHxP79+8Vzzz0nAIjVq1f74hAaxFNPPSVSU1PFiRMnRFpamhg7dqwICAhoceeDEELYbDYRGRkp5s6dW+255nouXO0zjTvX/UmTJjnNsvvbb78JhUIhFi1aJLKyssSiRYuEUqkUaWlpdYqNBbMm5o8//hDDhg0TwcHBQqPRiOjoaPHII4+I06dP+zo0r0pOThYAXP60NFOmTHGZh82bN/s6NI/6n//5HxEVFSXUarXo169frdNvN1cVU0lX/ZkyZYqvQ/Oamq4DycnJvg7Nq6ZOner4e2jTpo0YPnw4i2V/YsHMt9x5jzp58qQYM2aM8PPzE8HBwWLmzJlOXwJW3PdV3qa8vFzMnDlTBAcHCz8/PzF27FiRm5vrxSO7dg888IAYPHhwjc9XvpaVlZWJkSNHijZt2giVSiUiIyPFlClTmtwxV5aeni4GDhwoDAaD0Gq1olu3buKll14SpaWlTutVvabb7Xbx0ksvibCwMKHRaMQtt9wi9u3b5+XoG46797TN8Xyo7V5uypQpIj4+3mn91NRU0bdvX6FWq0V0dLT44IMPvBxxw3PnPqZqLl5//XXRqVMnodVqRVBQkLj55pvF//3f/3k/+AZ03333ifDwcKFSqUS7du3E+PHjxYEDBxzPt5TzQQghNm7cKACIw4cPV3uuuZ4LV/tM4851Pz4+vtpnoO+++05069ZNqFQq0b1793oVEmVCNIOR4omIiIiIiIiIiBpI8xn0iYiIiIiIiIiIqAGwYEZERERERERERFQJC2ZERERERERERESVsGBGRERERERERERUCQtmRERERERERERElbBgRkREREREREREVAkLZkRERERERERERJWwYEZERERERERERFQJC2ZERERERERERESVsGBGRERERERERERUCQtmRERERERERERElfx//9T8EsrJwp8AAAAASUVORK5CYII=", - "text/plain": [ - "Figure(PyObject
)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# pick a random observation\n", - "id = rand(StableRNG(321), 1:size(y,2))\n", - "rand_observation = MvNormal(y[:,id], 5e-1*diagm(ones(2)))\n", - "warped_observation = MvNormal(ReactiveMP.backward(compiled_model, y[:,id]), ReactiveMP.inv_jacobian(compiled_model, y[:,id])*5e-1*diagm(ones(2))*ReactiveMP.inv_jacobian(compiled_model, y[:,id])');\n", - "\n", - "# plot inferred means and transformed point\n", - "fig, ax = plt.subplots(ncols = 2, figsize=(15,5))\n", - "ax[1].scatter(x[1,:], x[2,:], alpha=0.1, label=\"generated data\")\n", - "ax[1].contour(repeat(-5:0.1:5, 1, 101), repeat(-5:0.1:5, 1, 101)', map( (x) -> pdf(MvNormal([1.5, 0.5], I), [x...]), collect(Iterators.product(-5:0.1:5, -5:0.1:5))), label=\"true distribution\")\n", - "ax[1].scatter(mean(zμ_flow)[1], mean(zμ_flow)[2], color=\"red\", marker=\"x\", label=\"inferred mean\")\n", - "ax[1].contour(repeat(-10:0.01:10, 1, 2001), repeat(-10:0.01:10, 1, 2001)', map( (x) -> pdf(warped_observation, [x...]), collect(Iterators.product(-10:0.01:10, -10:0.01:10))), colors=\"red\", levels=1)\n", - "ax[1].scatter(mean(warped_observation)..., color=\"red\", s=10, label=\"transformed noisy observation\")\n", - "ax[2].scatter(y[1,:], y[2,:], alpha=0.1, label=\"generated data\")\n", - "ax[2].scatter(ReactiveMP.forward(compiled_model, mean(zμ_flow))..., color=\"red\", marker=\"x\", label=\"inferred mean\")\n", - "ax[2].contour(repeat(-10:0.1:10, 1, 201), repeat(-10:0.1:10, 1, 201)', map( (x) -> pdf(MvNormal([1.5, 0.5], I), ReactiveMP.backward(compiled_model, [x...])), collect(Iterators.product(-10:0.1:10, -10:0.1:10))))\n", - "ax[2].contour(repeat(-10:0.1:10, 1, 201), repeat(-10:0.1:10, 1, 201)', map( (x) -> pdf(rand_observation, [x...]), collect(Iterators.product(-10:0.1:10, -10:0.1:10))), colors=\"red\", levels=1, label=\"random noisy observation\")\n", - "ax[2].scatter(mean(rand_observation)..., color=\"red\", s=10, label=\"random noisy observation\")\n", - "ax[1].grid(), ax[2].grid()\n", - "ax[1].set_xlim(-4,4), ax[1].set_ylim(-4,4), ax[2].set_xlim(-10,10), ax[2].set_ylim(-10,10)\n", - "ax[1].legend(), ax[2].legend()\n", - "fig.suptitle(\"Generated data\")\n", - "ax[1].set_title(\"Latent distribution\"), ax[2].set_title(\"Observed distribution\");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Parameter estimation" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The flow model is often used to learn unknown probabilistic mappings. Here we will demonstrate it as follows for a binary classification task with the following data:" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [], - "source": [ - "function generate_data(nr_samples::Int64; seed = 123)\n", - " \n", - " rng = StableRNG(seed)\n", - "\n", - " # sample weights\n", - " w = rand(rng, nr_samples, 2)\n", - "\n", - " # sample appraisal\n", - " y = zeros(Float64, nr_samples)\n", - " for k = 1:nr_samples\n", - " y[k] = 1.0*(w[k,1] > 0.5)*(w[k,2] < 0.5)\n", - " end\n", - "\n", - " # return data\n", - " return y, w\n", - "\n", - "end;" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "Figure(PyObject
)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "data_y, data_x = generate_data(50);\n", - "plt.figure()\n", - "plt.scatter(data_x[:,1], data_x[:,2], c=data_y)\n", - "plt.grid()\n", - "plt.xlabel(\"w1\")\n", - "plt.ylabel(\"w2\");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We will then specify a possible flow model as" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [], - "source": [ - "# specify flow model\n", - "model = FlowModel(2,\n", - " (\n", - " AdditiveCouplingLayer(PlanarFlow()), # defaults to AdditiveCouplingLayer(PlanarFlow(); permute=true)\n", - " AdditiveCouplingLayer(PlanarFlow()),\n", - " AdditiveCouplingLayer(PlanarFlow()),\n", - " AdditiveCouplingLayer(PlanarFlow(); permute=false)\n", - " )\n", - ");" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The corresponding probabilistic model for the binary classification task can be created as" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [], - "source": [ - "@model [default_factorisation=FullFactorisation()] function flow_classifier(nr_samples::Int64)\n", - " \n", - " # initialize variables\n", - " x_lat = randomvar(nr_samples)\n", - " y_lat1 = randomvar(nr_samples)\n", - " y_lat2 = randomvar(nr_samples)\n", - " y = datavar(Float64, nr_samples)\n", - " x = datavar(Vector{Float64}, nr_samples)\n", - "\n", - " # specify observations\n", - " for k = 1:nr_samples\n", - "\n", - " # specify latent state\n", - " x_lat[k] ~ MvNormalMeanPrecision(x[k], 1e3*diagm(ones(2)))\n", - "\n", - " # specify transformed latent value\n", - " y_lat1[k] ~ Flow(x_lat[k])\n", - " y_lat2[k] ~ dot(y_lat1[k], [1, 1])\n", - "\n", - " # specify observations\n", - " y[k] ~ Probit(y_lat2[k]) # default: where { pipeline = RequireMessage(in = NormalMeanPrecision(0, 1.0)) }\n", - "\n", - " end\n", - "\n", - " # return variables\n", - " return x_lat, x, y_lat1, y_lat2, y\n", - "\n", - "end;" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "fmeta (generic function with 2 methods)" - ] - }, - "execution_count": 19, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "fcmodel = Model(flow_classifier, length(data_y))\n", - "data = (y = data_y, x = [data_x[k,:] for k=1:size(data_x,1)], )\n", - "\n", - "@meta function fmeta(model, params)\n", - " compiled_model = compile(model, params)\n", - " Flow(y_lat1, x_lat) -> FlowMeta(compiled_model)\n", - "end" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here we see that the compilation occurs inside of our probabilistic model. As a result we can pass parameters (and a model) to this function which we wish to opmize for some criterium, such as the variational free energy. Inference can be described as" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For the optimization procedure, we will simplify our inference loop, such that it only accepts parameters as an argument (which is wishes to optimize) and outputs a performance metric." - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [], - "source": [ - "function f(params)\n", - " Random.seed!(123) # Flow uses random permutation matrices, which is not good for the optimisation procedure\n", - " result = inference(\n", - " model = fcmodel, \n", - " data = data,\n", - " meta = fmeta(model, params),\n", - " free_energy = true,\n", - " free_energy_diagnostics = nothing, # Free Energy can be set to NaN due to optimization procedure\n", - " iterations = 10, \n", - " showprogress = false\n", - " );\n", - " \n", - " result.free_energy[end]\n", - "end;" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Optimization can be performed using the `Optim` package. Alternatively, other (custom) optimizers can be implemented, such as:\n", - "\n", - "```julia\n", - "res = optimize(f, randn(StableRNG(42), nr_params(model)), GradientDescent(), Optim.Options(store_trace = true, show_trace = true, show_every = 50), autodiff=:forward)\n", - "``` \n", - "\n", - "- uses finitediff and is slower/less accurate.\n", - "\n", - "*or*\n", - "\n", - "```julia\n", - "# create gradient function\n", - "g = (x) -> ForwardDiff.gradient(f, x);\n", - "\n", - "# specify initial params\n", - "params = randn(nr_params(model))\n", - "\n", - "# create custom optimizer (here Adam)\n", - "optimizer = Adam(params; λ=1e-1)\n", - "\n", - "# allocate space for gradient\n", - "∇ = zeros(nr_params(model))\n", - "\n", - "# perform optimization\n", - "for it = 1:10000\n", - "\n", - " # backward pass\n", - " ∇ .= ForwardDiff.gradient(f, optimizer.x)\n", - "\n", - " # gradient update\n", - " ReactiveMP.update!(optimizer, ∇)\n", - "\n", - "end\n", - "\n", - "```" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Iter Function value Gradient norm \n", - " 0 6.087938e+02 8.678361e+02\n", - " * time: 0.018522024154663086\n", - " 100 1.552913e+01 4.961002e+00\n", - " * time: 13.670244932174683\n", - " 200 8.852174e+00 3.512656e+00\n", - " * time: 26.077553033828735\n" - ] - }, - { - "data": { - "text/plain": [ - " * Status: success\n", - "\n", - " * Candidate solution\n", - " Final objective value: 7.114043e+00\n", - "\n", - " * Found with\n", - " Algorithm: Gradient Descent\n", - "\n", - " * Convergence measures\n", - " |x - x'| = 1.88e-03 ≰ 0.0e+00\n", - " |x - x'|/|x'| = 8.18e-04 ≰ 0.0e+00\n", - " |f(x) - f(x')| = 7.08e-03 ≰ 0.0e+00\n", - " |f(x) - f(x')|/|f(x')| = 9.95e-04 ≤ 1.0e-03\n", - " |g(x)| = 1.86e+00 ≰ 1.0e-08\n", - "\n", - " * Work counters\n", - " Seconds run: 36 (vs limit Inf)\n", - " Iterations: 289\n", - " f(x) calls: 740\n", - " ∇f(x) calls: 740\n" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "res = optimize(f, randn(StableRNG(42), nr_params(model)), GradientDescent(), Optim.Options(f_tol = 1e-3, store_trace = true, show_trace = true, show_every = 100), autodiff=:forward)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "optimization results are then given as" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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lfb9iIi76XZLCShpaWl8++23XHPNNVSpUiV/u9Vq5eabb+bvv/9mx44dBY459bYSVzZs2EBWVhbXXXddge2dO3cu04osV155ZYHHbdq0ITMzkwMHDuRv27JlC1deeSW1atXCarVis9kYOnQoDoeDX3/9tdTngtxPWTIzM7npppsKbO/SpQuNGzcu1P7DDz+ka9euVKlShaCgIGw2G3PmzGH79u2lPuesWbO48MILCQ0NzX+O5cuXl+k5RESkoPPPP58nnniCHTt2sHnzZq688krefPNNzjvvPK655poSj+/Tpw9r164lIyODv/76i99//53rr7+edu3akZSUBOSOLmvUqBHNmjXLP64sr0k1atSgd+/eRZ6/VatWtG3btsC2G2+8kdTUVL777ruydoeIiHjRmbwG7dixg3/++Ycbb7wRwzDytzdu3JguXboUaPv1118TERFR6DlvueUWAJYvX+6eCxI5AyqSSUA5evQopmkWuSpl/fr1ATh8+HCB7aVZwTLvmKioqEL7itrmSq1atQo8zlsYICMjA4Ddu3fTrVs39u7dy8svv8zq1avZuHEj06dPL9CutPJy16tXr9C+07d9/PHHXHfddZx11lnMnz+f9evXs3HjRoYPH05mZmapzvfiiy9y++2306lTJxYtWsSGDRvYuHEjl19+eZmzi4hIYU6nk5SUFI4dO8aJEycICgqievXqJR536aWXkpWVxZo1a0hKSqJ27dq0b9+eSy+9lK+++grIffNx6aWX5h9T1tek4l5Pi3sdOv11WURE/FN5XoPK8n7k8OHD1KtXr0AxDaBu3boEBQXp9UL8guYkk4BSo0YNLBYLycnJhfb9888/ANSuXbvA9tN/CBclr7i1f//+Qvv27dtXptFkxfnkk09IS0vj448/LjDSa+vWreV6vrzc+/btK7Tv9Nzz58+nadOmLFy4sECfnDpJZknmz59Pz549mTlzZoHtx48fL2NyERHJY5oma9euZeHChXz44YccOHCAmJgYJkyYwJAhQ0q1mnKnTp2oUqUKX331Fbt27aJPnz4YhkGfPn144YUX2LhxI7t37y5QJCvra1Jxr6euXoeg8AdIIiLiP870Naik9yOnt/32228xTbPAa8qBAwfIyckp9D5OxBc0kkwCSkREBJ06deLjjz8u8Am30+lk/vz5NGjQoNST7J+qU6dOhISEsHDhwgLbN2zYwF9//XXGufPkvRjkjTCD3Bem119/vVzP17lzZ0JDQ3n33XcLbF+3bl2h3IZhEBwcXOAFad++fYVWt8zLV9TIMMMwCmQH+OGHH1i/fn258ouIVGbbtm3j/vvvp1GjRnTr1o2VK1dyzz33sHPnTtauXcudd95ZqgIZgM1mo3v37iQlJfH1118TGxsLQLdu3QgKCuKRRx7JL5rlcedr0k8//cT3339fYNt7771H1apVufDCC8v8fCIi4lnueg1q3rw50dHRLFiwoMAKmX/99Rfr1q0r0LZPnz6cOHGCTz75pMD2vJUwT32NcvV+RMTTNJJMAs7kyZOJjY2lV69ejB07luDgYGbMmMG2bdtYsGBBqUaOna5mzZrEx8czefJkatSowaBBg/j777+ZOHEi0dHRBVZlOROxsbEEBwdzww03MG7cODIzM5k5cyZHjx4t1/PVqFGDsWPH8tRTTzFy5EiuvfZa9uzZk7+62KmuuOIKPv74Y8aMGZO/CuaTTz5JdHQ0v/32W4G2F1xwAStWrGDJkiVER0dTtWpVmjdvzhVXXMGTTz7J448/To8ePdixYwdPPPEETZs2JScnp9z9IiJSGU2ZMoVVq1Zx8803c9NNN9GqVaszer4+ffpw//33A+SPGAsLC6NLly4kJibSpk0b6tatm9/ena9J9evX58orr2TChAlER0czf/58kpKSePbZZwkPDz+j6xIREfdz12uQxWLhySefZOTIkQwaNIhRo0Zx7NixIt+PDB06lOnTpzNs2DB27drFBRdcwJo1a5g0aRL9+vUrMNrZ1fsREY/z4aIBIuW2evVqs3fv3mZERIQZFhZmdu7c2VyyZEmBNnkrWG7cuLHQ8aevbmmapul0Os2nnnrKbNCggRkcHGy2adPG/Pzzz822bdsWWLmxuNUtDx48WOJ5lixZYrZt29YMDQ01zzrrLPOBBx4wv/jiCxMwv/nmm/x2pVndMi/35MmTzYYNG+bnXrJkidmjR49Cq1s+88wzZpMmTcyQkBCzZcuW5uuvv56f/VRbt241u3btaoaHhxdYJTMrK8scO3asedZZZ5mhoaHmhRdeaH7yySelzioiUlkVtbLYP//849ZzfP/99yZgNmvWrMD2p59+2gTM+Pj4QseU9jWpR48eZqtWrYo8b+PGjc3+/fubH330kdmqVSszODjYbNKkifniiy+69fpERKR8vPEa9MYbb5jNmjUzg4ODzfPOO8988803i3yPcPjwYXP06NFmdHS0GRQUZDZu3NgcP368mZmZWaCdq/cjIp5mmOYpYyJFpICdO3fSokULHn/8cR566CFfxxERkQDVpEkTbrnlFiZMmODrKG7XpEkTWrduzeeff+7rKCIiUoSK/Bok4m663VLkX99//z0LFiygS5cuREZGsmPHDp577jkiIyMZMWKEr+OJiIiIiIiIiAepSCbyr4iICDZt2sScOXM4duwY1apVo2fPnjz99NNERUX5Op6IiIiIiIiIeJCKZCL/Ovfcc/nqq698HUNERCSg7Nq1y9cRRERERNxCc5KJiIiIiIiIiEilZ/F1ABEREREREREREV9TkUxERERERERERCq9CjcnmdPp5J9//qFq1aoYhuHrOCIiAc80TY4fP079+vWxWPTZCui1RkTE3fRaU5BeZ0RE3Ku0rzMVrkj2zz//0LBhQ1/HEBGpcPbs2UODBg18HcMv6LVGRMQz9FqTS68zIiKeUdLrTIUrklWtWhXIvfDIyMgS29vtdhITE4mLi8Nms3k6nlsEYmZQbm8KxMwQmLkDMTOULXdqaioNGzbM//kqZX+tKUmgfh95gvriJPXFSeqLkypqX+i1piB3v874o4r6vewJ6quyUX+VXmXqq9K+zlS4IlnecOTIyMhSF8nCw8OJjIwMmG+KQMwMyu1NgZgZAjN3IGaG8uXW7R4nlfW1piSB+n3kCeqLk9QXJ6kvTqrofaHXmlzufp3xRxX9e9md1Fdlo/4qvcrYVyW9zuiGfxERERERERERqfRUJBMRERERERERkUpPRTIREREREREREan0VCQTEREREREREZFKT0UyERERERERERGp9FQkExERERERERGRSs+jRbJVq1YxYMAA6tevj2EYfPLJJ8W2//jjj4mNjaVOnTpERkYSExPDl19+6cmIIiIiIiIiIiIini2SpaWl0bZtW6ZNm1aq9qtWrSI2NpaEhAQ2b95Mr169GDBgAFu2bPFkTBERERERERERqeSCPPnkffv2pW/fvqVuP3Xq1AKPJ02axKeffsqSJUto3769m9OJiIiIiIiIiIjk8miR7Ew5nU6OHz9OzZo1XbbJysoiKysr/3FqaioAdrsdu91e4jny2pSmrb8IxMyg3N4UiJkhMHMHYmYoW+5A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v623LCMjA7GxsTabw8ac3ED1WStTpkzBpk2bbD7PlKmZ/fz88Pvvv9dblpaWhh07duDLL79EVFSU1TMD5o11nz598MUXX+DGjRto0aIFAODEiROQyWQ2+zA0J3d5eXmDy1rlcjkAOOxZNY7wfjSHPd+LrsDY45QuNd/rSqXSkpHsxpSxuHDhAhISEhATE4N169ZBJmsWJ8DXasr3hasw9+cLIrI/Yz/jli9fjldffbX28cWLFzF48GBs3ry53lzSzR2Pj03D44VphBB45plnsHXrVuzatctmv8s6BRvfKMDuhgwZIrp16yays7NFdna26Nq1q3j00UfrtenYsaP46quvhBBCqNVqMWLECNG2bVuRm5srCgoKav8plUqrZPzss8+EQqEQa9asEUeOHBFz5swRPj4+4syZM0IIIVJSUsSECRNq258+fVp4e3uLZ599Vhw5ckSsWbNGKBQK8eWXX1oln6Vyf/rpp8LNzU28//779cb1+vXrDpv5Tva6u6WpucvKykTbtm3Fk08+KQ4fPiyysrLEvffeK6ZNm+bQudetWyfc3NxEWlqaOHXqlPjpp59EbGys6NWrl80yl5WViZycHJGTkyMAiKVLl4qcnJzau9s64vvR1MyO8F6kar/88otYsWKFyMnJEWfOnBE7duwQDz30kGjfvr2orKy0dzybunDhgrjnnnvEgAEDxPnz5+t9b7qis2fPipycHLFo0SLRokWL2vd4WVmZvaNZXWPHDlfR2Gc7UXORl5fHu1sawOOjfjxeGO/pp58W/v7+YteuXfW+h8rLy+0dze5crkhWVFQkxo8fL3x9fYWvr68YP368KC4urtcGgFi3bp0Qou5DWte/nTt3Wi3n+++/LyIiIoS7u7u4//77692KddKkSaJfv3712u/atUv07NlTuLu7i8jISLFy5UqrZTPElNz9+vXTOa6TJk1y2Mx3sleRTAjTcx89elQMHDhQeHl5ibZt24rk5GS7fAiamnv58uXivvvuE15eXiIkJESMHz9enD9/3mZ5d+7cafD71BHfj6ZmdpT3Ignx22+/iYSEBNGqVSvh4eEhIiMjRVJSkk2/5x3FunXr9B5/XdGkSZNs/rOIIzF07HAVjX22EzUXLJIZxuOjYTxeGEff91BNHcSVSUI46DVLRERERERERERENsKLl4mIiIiIiIiIyOWxSEZERERERERERC6PRTIiIiIiIiIiInJ5LJIREREREREREZHLY5GMiIiIiIiIiIhcHotkRERERERERETk8lgkIyIiIiIiIiIil8ciGRERERERERERuTwWyYiIiIiIiIiIyOWxSEZERERERERERC6PRTIiIiIiIiIiInJ5LJIREREREREREZHL+/8AjqBwVVUCkAAAAABJRU5ErkJggg==", - "text/plain": [ - "Figure(PyObject
)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "params = Optim.minimizer(res)\n", - "inferred_model = compile(model, params)\n", - "trans_data_x_1 = hcat(map((x) -> ReactiveMP.forward(inferred_model, x), [data_x[k,:] for k=1:size(data_x,1)])...)'\n", - "trans_data_x_2 = map((x) -> dot([1, 1], x), [trans_data_x_1[k,:] for k=1:size(data_x,1)])\n", - "trans_data_x_2_split = [trans_data_x_2[data_y .== 1.0], trans_data_x_2[data_y .== 0.0]]\n", - "fig, ax = plt.subplots(ncols = 3, figsize=(15,5))\n", - "ax[1].scatter(data_x[:,1], data_x[:,2], c = data_y)\n", - "ax[2].scatter(trans_data_x_1[:,1], trans_data_x_1[:,2], c = data_y)\n", - "ax[3].hist(trans_data_x_2_split; stacked=true, bins=50, color = [\"gold\", \"purple\"])\n", - "ax[1].grid(), ax[2].grid(), ax[3].grid()\n", - "ax[1].set_xlim(-0.25,1.25), ax[1].set_ylim(-0.25,1.25)\n", - "ax[1].set_title(\"original data\"), ax[2].set_title(\"|> warp\"), ax[3].set_title(\"|> dot\");" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABmAAAAHUCAYAAAAtAeesAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3wT9f8H8NddZveEtlAoZSN7C4gM2QgIqAgqKCACCiKiX5WfMkRxIg7ABaKiOBFZgggIKEOQoQIyy6bQFrpHkrvP74+0gdIJTXNN8no+Hnmkubtc3vkEmnfvfZ/3SUIIASIiIiIiIiIiIiIiInIaWesAiIiIiIiIiIiIiIiIPA0LMERERERERERERERERE7GAgwREREREREREREREZGTsQBDRERERERERERERETkZCzAEBERERERERERERERORkLMERERERERERERERERE7GAgwREREREREREREREZGTsQBDRERERERERERERETkZCzAEBERERERERERERERORkLMESltHjxYkiShJMnT97wc0+ePAlJkrB48WKnx3Wthx56CDVq1HDadoXp3LkzGjVqdFPPLW6fnTt3duo+iYiIvE1h+cb06dMhSdIN7+urr77C3LlznRfcNWrUqIGHHnqoxO0kScL06dNveP954/Dmm2/eeHAl7LO8czkiIiJP8/fff+Phhx9GbGwszGYz/P390aJFC7z++uu4fPmyYzutjwv89ttvkCQJv/32W77l7733HmrXrg2j0QhJkpCcnFymYyqlsWbNmiJzoNLmUURUcei1DoDIXfTt2xfbt29HVFTUDT83KioK27dvR61atcohMiIiIqLCjR49Gr169brh53311Vf4999/MWnSJOcHRURERF7h448/xvjx41GvXj08/fTTuOWWW2C1WrF792588MEH2L59O3788UetwwQAtGjRAtu3b8ctt9ziWLZv3z5MnDgRo0ePxogRI6DX6xEQEIAXXngBTzzxRLnFsmbNGsybN6/QIsyPP/6IwMDAcnttInI+FmCISpCVlQWz2YxKlSqhUqVKN7UPk8mEW2+91cmRERERkafIysqCj4+P0/cbHR2N6Ohop++XiIiIqDjbt2/HuHHj0L17dyxfvhwmk8mxrnv37njqqaewdu1aDSPMLzAwsMBxmwMHDgAAHnnkEbRp08axXMuTa5s3b67ZaxPRzWELMvIav//+O+644w4EBATA19cX7du3x+rVq/Ntk9dm7JdffsHIkSNRqVIl+Pr6Iicnp9AWZEIIvPLKK4iJiYHZbEarVq2wfv36AlNni2sJcuDAAQwdOhRBQUGIiIjAyJEjkZKSki+uefPm4fbbb0flypXh5+eHxo0b4/XXX4fVanXa+Nzoa2zduhW33norfHx8ULVqVbzwwgtQFCXfNhaLBbNmzUL9+vVhMplQqVIlPPzww0hISCgxngULFqBp06bw9/dHQEAA6tevj+eff94p75WIiMjZ8r7X9+7di0GDBiEwMBBBQUF44IEHCnzv1ahRA3feeSeWLVuG5s2bw2w2Y8aMGQCA+Ph4PProo4iOjobRaERsbCxmzJgBm82Wbx/nz5/Hvffei4CAAAQFBWHIkCGIj48vMq7rffXVV2jXrh38/f3h7++PZs2aYeHChQDsLUBWr16NU6dOQZIkxy1Pab/frVYrnnnmGURGRsLX1xe33XYb/vzzz5sbYAAJCQkYP348brnlFvj7+6Ny5cro2rUrtm7dWuj2qqri5ZdfRvXq1R152oYNGwpsd/ToUQwbNgyVK1eGyWRCgwYNMG/evFLFM2bMGFSrVs0xDh06dMCvv/560++RiIjIU7zyyiuQJAkfffRRvuJLHqPRiP79+xe7jxkzZqBt27YIDQ1FYGAgWrRogYULF0IIkW+7jRs3onPnzggLC4OPjw+qV6+OwYMHIzMz07FNSccYrm9B1rlzZzzwwAMAgLZt20KSJEfrr8JakKmqivfeew/NmjWDj48PgoODceutt2LFihWObb755hv06NEDUVFR8PHxQYMGDfDss88iIyPDsc1DDz3kyEOuzcPyjkUV1oLs9OnTeOCBB/LlMm+99RZUVXVsc22L1jlz5iA2Nhb+/v5o164dduzYUeznAFw9XrZx40Y88sgjCAsLQ2BgIIYPH46MjAzEx8fj3nvvRXBwMKKiojBlypQCx5NK+3nm5co//vgjmjRpArPZjJo1a+Ldd98tMU6iiogzYMgrbN68Gd27d0eTJk2wcOFCmEwmzJ8/H/369cPSpUsxZMiQfNuPHDkSffv2xRdffIGMjAwYDIZC9zt16lTMnj0bY8aMwaBBg3DmzBmMHj0aVqsVdevWLVVsgwcPxpAhQzBq1Cj8888/eO655wAAixYtcmxz/PhxDBs2DLGxsTAajdi/fz9efvll/Pfff/m2K4sbeY34+Hjcd999ePbZZzFz5kysXr0as2bNwpUrV/D+++8DsCcfAwYMwNatW/HMM8+gffv2OHXqFKZNm4bOnTtj9+7dRZ7p+/XXX2P8+PGYMGEC3nzzTciyjGPHjuHgwYNOea9ERETlZeDAgbj33nsxduxYHDhwAC+88AIOHjyInTt35ssn9uzZg0OHDuH//u//EBsbCz8/P8THx6NNmzaQZRkvvvgiatWqhe3bt2PWrFk4efIkPv30UwD22TLdunXD+fPnMXv2bNStWxerV68ukM8U5cUXX8RLL72EQYMG4amnnkJQUBD+/fdfnDp1CgAwf/58jBkzBsePHy/QFuRGvt8feeQRfP7555gyZQq6d++Of//9F4MGDUJaWtpNjW1en/hp06YhMjIS6enp+PHHH9G5c2ds2LChQN/4999/HzExMZg7dy5UVcXrr7+O3r17Y/PmzWjXrh0A4ODBg2jfvj2qV6+Ot956C5GRkVi3bh0mTpyIxMRETJs2rch4HnzwQezZswcvv/wy6tati+TkZOzZswdJSUk39f6IiIg8haIo2LhxI1q2bIlq1ard9H5OnjyJRx99FNWrVwcA7NixAxMmTMC5c+fw4osvOrbp27cvOnbsiEWLFiE4OBjnzp3D2rVrYbFY4Ovre1PHGObPn4+lS5di1qxZ+PTTT1G/fv1iu6I89NBDWLJkCUaNGoWZM2fCaDRiz549+U7iPXr0KPr06YNJkybBz88P//33H1577TX8+eef2LhxIwDghRdeQEZGBr7//nts377d8dyi2uEnJCSgffv2sFgseOmll1CjRg2sWrUKU6ZMwfHjxzF//vx828+bNw/169d3XOvvhRdeQJ8+fRAXF4egoKCiP4xco0ePxqBBg/D1119j7969eP7552Gz2XD48GEMGjQIY8aMwa+//orXXnsNVapUweTJkx3PLc3nmWffvn2YNGkSpk+fjsjISHz55Zd44oknYLFYMGXKlBLjJKpQBJEXuPXWW0XlypVFWlqaY5nNZhONGjUS0dHRQlVVIYQQn376qQAghg8fXmAfeevi4uKEEEJcvnxZmEwmMWTIkHzbbd++XQAQnTp1ciyLi4sTAMSnn37qWDZt2jQBQLz++uv5nj9+/HhhNpsdMV1PURRhtVrF559/LnQ6nbh8+bJj3YgRI0RMTEyJ41HSdsW9RqdOnQQA8dNPP+V7ziOPPCJkWRanTp0SQgixdOlSAUD88MMP+bbbtWuXACDmz5+fb5/Xjtfjjz8ugoODS3wfREREFUXe9/qTTz6Zb/mXX34pAIglS5Y4lsXExAidTicOHz6cb9tHH31U+Pv7O75L87z55psCgDhw4IAQQogFCxYU+V1cVL6R58SJE0Kn04n777+/2PfTt2/fQnOF0n6/Hzp0qNjxGDFiRLGvL4QQAMS0adOKXG+z2YTVahV33HGHGDhwoGN5Xt5VpUoVkZWV5ViempoqQkNDRbdu3RzLevbsKaKjo0VKSkq+fT/++OPCbDY7cqDCcjl/f38xadKkEt8HERGRt4mPjxcAxH333Vfq51x/XOB6eccpZs6cKcLCwhzHTL7//nsBQOzbt6/I55bmGMOmTZsEALFp0ybHsrzjQLt27cq37fXHVLZs2SIAiKlTpxb7GtdSVVVYrVaxefNmAUDs37/fse6xxx4TRR2yjYmJyZdHPfvsswKA2LlzZ77txo0bJyRJcuSbeblM48aNhc1mc2z3559/CgBi6dKlxcabNxYTJkzIt/yuu+4SAMScOXPyLW/WrJlo0aJFkfsr6vPMe4+SJBX4TLt37y4CAwNFRkZGsbESVTRsQUYeLyMjAzt37sTdd98Nf39/x3KdTocHH3wQZ8+exeHDh/M9Z/DgwSXud8eOHcjJycG9996bb/mtt95aYCpqca6fctukSRNkZ2fj0qVLjmV79+5F//79ERYWBp1OB4PBgOHDh0NRFBw5cqTUr1WcG3mNgICAAnEPGzYMqqpiy5YtAIBVq1YhODgY/fr1g81mc9yaNWuGyMhIx7TewrRp0wbJyckYOnQofvrpJyQmJjrlPRIREZW3+++/P9/je++9F3q9Hps2bcq3vEmTJgVmy65atQpdunRBlSpV8n139u7dG4B9Ri8AbNq0qcjv4pKsX78eiqLgscceu+H3lhdjab7f895vUeNxsz744AO0aNECZrMZer0eBoMBGzZswKFDhwpsO2jQIJjNZsfjgIAA9OvXD1u2bIGiKMjOzsaGDRswcOBA+Pr65ns/ffr0QXZ2drEtOdq0aYPFixdj1qxZ2LFjh1NbwxIREZG9tVi3bt0QFBTkOE7x4osvIikpyXHMpFmzZjAajRgzZgw+++wznDhxosB+yvsYw88//wwAJeZXJ06cwLBhwxAZGel4P506dQKAQnOZ0ti4cSNuueWWfNeoAewzcoQQjpk1efr27QudTud43KRJEwBwzIQuyZ133pnvcYMGDRz7vX759fsszeeZp2HDhmjatGm+ZcOGDUNqair27NlTqliJKgoWYMjjXblyBUKIQqdrVqlSBQAKtIooamrntfKeExERUWBdYcuKEhYWlu9xXm/UrKwsAPZenh07dsS5c+fwzjvvYOvWrdi1a5ejJ2jedmVxo69R2PuLjIwEcHVcLl68iOTkZBiNRhgMhny3+Pj4YhOeBx98EIsWLcKpU6cwePBgVK5cGW3btsX69evL/F6JiIjKU973YR69Xo+wsLBS5RoXL17EypUrC3xvNmzYEAAc351JSUnFfhcXJ+86LdHR0aV7Q4XEWJrv97z3W9R43Iw5c+Zg3LhxaNu2LX744Qfs2LEDu3btQq9evQrNhwobj8jISFgsFqSnpyMpKQk2mw3vvfdegffSp08fACg2X/nmm28wYsQIfPLJJ2jXrh1CQ0MxfPjwQq/FQ0RE5E3Cw8Ph6+uLuLi4m97Hn3/+iR49egAAPv74Y/zxxx/YtWsXpk6dCuDqcYpatWrh119/ReXKlfHYY4+hVq1aqFWrFt555x3Hvsr7GENCQgJ0Ol2xuVh6ejo6duyInTt3YtasWfjtt9+wa9cuLFu2LN/7uVFJSUk3dLyrpGNQJQkNDc332Gg0Frk8Ozvb8bi0n2eeovK4wt4TUUXHa8CQxwsJCYEsy7hw4UKBdefPnwdgTw6uVdjFaq+X96V18eLFAuvi4+NvaBZMcZYvX46MjAwsW7YMMTExjuX79u1zyv5v5jWKes/A1XEJDw9HWFgY1q5dW+g+AgICio3p4YcfxsMPP4yMjAxs2bIF06ZNw5133okjR47ki5GIiKgiiY+PR9WqVR2PbTYbkpKSCvyxW1iuER4ejiZNmuDll18udN95f0iHhYUVejH70hz4z+tdfvbs2ZvqyV7a7/e891vUeNyMJUuWoHPnzliwYEG+5UVdU6aw8YiPj4fRaIS/vz8MBoNjRnRRZ6zGxsYWGU94eDjmzp2LuXPn4vTp01ixYgWeffZZXLp0qcjxISIi8gY6nQ533HEHfv75Z5w9e/amTvz4+uuvYTAYsGrVqnwzWpcvX15g244dO6Jjx45QFAW7d+/Ge++9h0mTJiEiIgL33XcfgPI9xlCpUiUoioL4+PgiT+jduHEjzp8/j99++80x6wUAkpOTy/TaYWFhN3S8Sys38nkCRedxQMEiElFFxxkw5PH8/PzQtm1bLFu2LF9FXVVVLFmyBNHR0QVagJRG27ZtYTKZ8M033+RbvmPHjlJP3SyNvAM0eWclAIAQAh9//LFmr5GWloYVK1bkW/bVV19BlmXcfvvtAOzTUpOSkqAoClq1alXgVq9evVLF5ufnh969e2Pq1KmwWCw4cODAzbxFIiIil/jyyy/zPf72229hs9kKXCC+MHfeeSf+/fdf1KpVq9DvzrwCTJcuXYr8Li5Jjx49oNPpChQxrmcymQo9E7K03+9577eo8bgZkiTly1UA4O+//853gdprLVu2LN+Zl2lpaVi5ciU6duwInU4HX19fdOnSBXv37kWTJk0KfT+l/QO/evXqePzxx9G9e3e2xSAiIgLw3HPPQQiBRx55BBaLpcB6q9WKlStXFvl8SZKg1+vztcvKysrCF198UeRzdDod2rZt6+jmUdh3cnkcY8hrF1tcflXYcRcA+PDDDwtseyOzUu644w4cPHiwwHv9/PPPIUkSunTpUuI+XOFGP88DBw5g//79+ZZ99dVXCAgIQIsWLco1ViJn4wwY8gqzZ89G9+7d0aVLF0yZMgVGoxHz58/Hv//+i6VLl5Zqxsv1QkNDMXnyZMyePRshISEYOHAgzp49ixkzZiAqKgqy7Jz6Zvfu3WE0GjF06FA888wzyM7OxoIFC3DlyhWn7P9mXiMsLAzjxo3D6dOnUbduXaxZswYff/wxxo0bh+rVqwMA7rvvPnz55Zfo06cPnnjiCbRp0wYGgwFnz57Fpk2bMGDAAAwcOLDQ/T/yyCPw8fFBhw4dEBUVhfj4eMyePRtBQUFo3bq10943ERGRsy1btgx6vR7du3fHgQMH8MILL6Bp06YFrhlXmJkzZ2L9+vVo3749Jk6ciHr16iE7OxsnT57EmjVr8MEHHyA6OhrDhw/H22+/jeHDh+Pll19GnTp1sGbNGqxbt67E16hRowaef/55vPTSS8jKysLQoUMRFBSEgwcPIjExETNmzAAANG7cGMuWLcOCBQvQsmVLyLKMVq1alfr7vUGDBnjggQcwd+5cGAwGdOvWDf/++y/efPNNBAYG3tTY3nnnnXjppZcwbdo0dOrUCYcPH8bMmTMRGxtbaFFHp9Ohe/fumDx5MlRVxWuvvYbU1FTHewSAd955B7fddhs6duyIcePGoUaNGkhLS8OxY8ewcuXKAn3T86SkpKBLly4YNmwY6tevj4CAAOzatQtr167FoEGDbur9EREReZJ27dphwYIFGD9+PFq2bIlx48ahYcOGsFqt2Lt3Lz766CM0atQI/fr1K/T5ffv2xZw5czBs2DCMGTMGSUlJePPNNwsUMD744ANs3LgRffv2RfXq1ZGdnY1FixYBALp16wag/I8xdOzYEQ8++CBmzZqFixcv4s4774TJZMLevXvh6+uLCRMmoH379ggJCcHYsWMxbdo0GAwGfPnllwWKDIA9DwOA1157Db1794ZOp0OTJk0c7b6u9eSTT+Lzzz9H3759MXPmTMTExGD16tWYP38+xo0bd1MnHJeH0n6eeapUqYL+/ftj+vTpiIqKwpIlS7B+/Xq89tpr8PX1dXH0RGUkiLzE1q1bRdeuXYWfn5/w8fERt956q1i5cmW+bT799FMBQOzatavA8/PWxcXFOZapqipmzZoloqOjhdFoFE2aNBGrVq0STZs2FQMHDnRsFxcXJwCITz/91LFs2rRpAoBISEgo8XVWrlwpmjZtKsxms6hatap4+umnxc8//ywAiE2bNjm2GzFihIiJiSlxLArbrrSv0alTJ9GwYUPx22+/iVatWgmTySSioqLE888/L6xWa759Wq1W8eabbzr26+/vL+rXry8effRRcfTo0Xz77NSpk+PxZ599Jrp06SIiIiKE0WgUVapUEffee6/4+++/S3xvREREWsj7Xv/rr79Ev379hL+/vwgICBBDhw4VFy9ezLdtTEyM6Nu3b6H7SUhIEBMnThSxsbHCYDCI0NBQ0bJlSzF16lSRnp7u2O7s2bNi8ODBjtcZPHiw2LZtW5H5xvU+//xz0bp1a8f3c/PmzfM97/Lly+Luu+8WwcHBQpKkfPso7fd7Tk6OeOqpp0TlypWF2WwWt956q9i+fbuIiYkRI0aMKHFMAYhp06bl29+UKVNE1apVhdlsFi1atBDLly8vkNfk5V2vvfaamDFjhiNPa968uVi3bl2B14mLixMjR44UVatWFQaDQVSqVEm0b99ezJo1q8A+88YoOztbjB07VjRp0kQEBgYKHx8fUa9ePTFt2jSRkZFR4nsjIiLyFvv27RMjRowQ1atXF0ajUfj5+YnmzZuLF198UVy6dMmx3fXHBYQQYtGiRaJevXrCZDKJmjVritmzZ4uFCxfmO2ayfft2MXDgQBETEyNMJpMICwsTnTp1EitWrHDspzTHGDZt2lTg+EdRx4gKO6aiKIp4++23RaNGjYTRaBRBQUGiXbt2+Y47bdu2TbRr1074+vqKSpUqidGjR4s9e/YUyN9ycnLE6NGjRaVKlRx5WN77LSyPOnXqlBg2bJgICwsTBoNB1KtXT7zxxhtCURTHNnm5zBtvvFHgM7o+5ypMUWNR1LGtESNGCD8/v3zLSvN55r3Hvn37iu+//140bNhQGI1GUaNGDTFnzpxiYySqqCQhhHBduYfI88XFxaF+/fqYNm0ann/+ea3DISIiIheYPn06ZsyYgYSEhArTa5uIiIiIyN3UqFEDjRo1wqpVq7QOhcgp2IKMqAz279+PpUuXon379ggMDMThw4fx+uuvIzAwEKNGjdI6PCIiIiIiIiIiIiLSCAswRGXg5+eH3bt3Y+HChUhOTkZQUBA6d+6Ml19+GREREVqHR0REREREREREREQaYQsyIiIiIiIiIiIiIiIiJ5O1DoCIiMjbbNmyBf369UOVKlUgSRKWL19e4nM2b96Mli1bwmw2o2bNmvjggw/KP1AiIiIiKlfMC4mIiDwbCzBEREQulpGRgaZNm+L9998v1fZxcXHo06cPOnbsiL179+L555/HxIkT8cMPP5RzpERERERUnpgXEhEReTa2ICMiItKQJEn48ccfcddddxW5zf/+9z+sWLEChw4dciwbO3Ys9u/fj+3bt7sgSiIiIiIqb8wLiYiIPI9e6wBcTVVVnD9/HgEBAZAkSetwiIioGEIIpKWloUqVKpBl50/azM7OhsViccq+hBAFvldMJhNMJlOZ9719+3b06NEj37KePXti4cKFsFqtMBgMZX4Nch3mIkRE7sOdchGj0Qiz2eyUfVHFdbN5YU5ODnJychyPVVXF5cuXERYWxnyEiIgI5Zf3eV0B5vz586hWrZrWYRAR0Q04c+YMoqOjnbrP7OxsxMb4I/6S4pT9+fv7Iz09Pd+yadOmYfr06WXed3x8PCIiIvIti4iIgM1mQ2JiIqKiosr8GuQ6zEWIiNyPO+QikZGRiIuLYxHGw91sXjh79mzMmDHDFSESERG5NWfnfV5XgAkICAAAfPLJJ7jrrrt41nARrFYrfvnlF/To0YNjVASOUck4RiXjGBUvNTUV1apVc/zudiaLxYL4Swri/opBYEDZzmxITVMR2/IUzpw5g8DAQMdyZ8x+yXP9mYl5HUR5xqL7YS5SOvz9WDKOUck4RiXjGBXP3XIRi8XCAowXuJm88LnnnsPkyZMdj1NSUlC9enUcOXIEoaGh5RMoAbD/nt20aRO6dOnC37PljGPtOhxr1+FYu87ly5dRt25dp+d9XleAyUtIfH19ERgYyH+4RbBarRyjEnCMSsYxKhnHqHTKs8gQGCCX+aCHY1+BgfkKMM4SGRmJ+Pj4fMsuXboEvV6PsLAwp78elS/mIqXD348l4xiVjGNUMo5R6bhLLkKe72bzwqJa44aGhjKfLGd5v2fDwsL4e7accaxdh2PtOhxr13N23qdplrdlyxb069cPVapUgSRJWL58eYnP2bx5M1q2bAmz2YyaNWvigw8+KP9AiYjIYylCdcqtPLVr1w7r16/Pt+yXX35Bq1atmICVEXMRIiLSmjvkIlRxMC8kIiJyL5oWYDIyMtC0aVO8//77pdo+Li4Offr0QceOHbF37148//zzmDhxIn744YdyjpSIiDyVCuGU241IT0/Hvn37sG/fPgD277d9+/bh9OnTAOwtIoYPH+7YfuzYsTh16hQmT56MQ4cOYdGiRVi4cCGmTJnitHHwVsxFiIhIa1rkIlRxMC8kIiLybJq2IOvduzd69+5d6u0/+OADVK9eHXPnzgUANGjQALt378abb76JwYMHl1OUREREzrV792506dLF8TivH/eIESOwePFiXLhwwfFHNwDExsZizZo1ePLJJzFv3jxUqVIF7777Lr/7nIC5CBEREWmJeSEREZFnc6trwGzfvh09evTIt6xnz55YuHAhrFZrodNtc3JykJOT43icmprq+NlqtZZfsG4ub2w4RkXjGJWMY1QyjlHxXDEuKlSUtWnHje6hc+fOjoulFmbx4sUFlnXq1Al79uy50dDIyZiLuA5/P5aMY1QyjlHJOEbF89RchCoO5oVERESeza0KMPHx8YiIiMi3LCIiAjabDYmJiYiKiirwnNmzZ2PGjBmF7u/6vqlUEMeoZByjknGMSsYxKlxmZma5v4YiBJRi/ugt7T7IOzAXcT2OUck4RiXjGJWMY1Q45iJEREREVBZuVYABAEmS8j3OO1Pk+uV5nnvuOccUXsB+1mm1atUAAN27d+dF6opgtVqxfv16jlExOEYl4xiVjGNUvGtnChBVFMxFXIO/H0vGMSoZx6hkHKPiMRchIiIiorJwqwJMZGQk4uPj8y27dOkS9Ho9wsLCCn2OyWSCyWQqdJ3BYOAfGSXgGJWMY1QyjlHJOEaFc8WYOOPCtbzwrfdgLuJ6HKOScYxKxjEqGceocMxFiIiIiKgs3KoA065dO6xcuTLfsl9++QWtWrXiHwtERHRTVAgoPOhBpcRchIiInI25CBEREZHnkrV88fT0dOzbtw/79u0DAMTFxWHfvn04ffo0AHvLjuHDhzu2Hzt2LE6dOoXJkyfj0KFDWLRoERYuXIgpU6ZoET4RERG5OeYiRERERERERFReNJ0Bs3v3bnTp0sXxOK8/+ogRI7B48WJcuHDBcQAEAGJjY7FmzRo8+eSTmDdvHqpUqYJ3330XgwcPdnnsRFS0i6cSsO7TTbh0LgF17ozG0b1xuKVNXa3DIioU2354N+YiRJ4p8VwS1i3+DRdOxqPOndH4b+dRNOrQoMhrNRFpibkIERERkefStADTuXNnx4VrC7N48eICyzp16oQ9e/aUY1REdLOEEFgy83t8MfM7SLIEg68ede68F1O6TEfrns3w/JdPwORT+HUQiLSiCAGlmO+i0u6D3BNzESLP88Pbq/DR058D0tVc5H89Z6Fxh/qY9sPT8A3w0TpEonyYixARERF5Lk1bkBGRZ1nz8a/4fMa3EEJAVVSotqt/CO5YsRtzx36kYXRERETk6TZ9/Qc+eOozqGrBXGTfpgN49YF3NYyOiIiIiIi8DQswROQUiqJgyawfilyvqgIblmzFpdMJLoyKqGSqk25ERKQtIQSWvPRdkW3GVEXF9pW7cergGRdHRlQ85iJEREREnosFGCJyiri/TyPxbFKJ221f+ZcLoiEqPQXCKTciItJWfNwlnD50rti2grJOxh/Ld7kwKqKSMRchIiIi8lwswBCRU2Rn5pS4jSRLsGRZXBANEREReRvmIkREREREVNHotQ6AiDxDdN0o6PQyFFvRDRBURUWNRtVcGBVRyRRhv5V1H0REpK3IGpVgNBtgybYWuY1iVZiLUIXDXISIiIjIc3EGDBE5RXClIHS8+1bo9IX/WpFlCZWrh6Nlj6YujoyoeOy7TkTkGXz8fdBjRGfIusJzEUmWEBgWgA4D27g4MqLiMRchIiIi8lwswBCR04yb8xDCq4YVOPAh6yXojQY8/9UkyDJ/7RAREVH5ePjloahaJ6rQXESnk/H8V0/AYDRoFB0REREREXkbHgklIqcJjQzB+3/OxsCJfeAb6ONYftuANpi361U0bF9Pw+iICqdCglLGmwpJ67dBREQAAkMD8O62l3Hv0wPgH+LnWN62T0u8u/0VtOzOmbhU8TAXISIiIvJcvAYMETlVcKUgjH1rBB55/QGkJKVi6/YteGrheBgMPNuUKiZV2G9l3QcREVUM/sF+GPXKMDz00hCkXk7Dlm2b8eznE5iLUIXFXISIiIjIc3EGDBGVC51Oh4AQf63DICIiIi+l0+ngH+xX8oZERERERETlhDNgiIjIq+W17ijrPoiIiIhuBnMRIiIiIs/FAgwREXk1HvQgIiIiLTEXISIiIvJcbEFGRERERERERERERETkZJwBQ0REXk0VElRRtrNGy/p8IiIi8l7MRYiIiIg8FwswRF4k4WwS1n++GZdOJSAgLABdh92G2EbVtQ6LSFNs+0FE5DpXLiZj/eebcf5YPPyC/dB5SHvUaVFT67CINMVchIiIiMhzsQBD5AWEEPjqlWX4bNo3kCQJkiwBQuDrV39E12G3Ycqi8TAYDVqHSURERB7sx3fX4MMpn0FVBWSdDAiBb9/4Ce36tcLzSyfB7GvSOkQiIiIiIiKn4jVgiLzAmo9/xeIXvoZQBVRFhWJVoNhUAMCmr//A+xMWaRwhkXYUyE65ERFR0X775g/Mn/QpFJsKoYp8ucjO1X/hzYfnaRwhkXaYixARERF5LmZpRB5OURQseen7ItcLVWDtoo1IPH/ZhVERVRwit+96WW6CfdeJiIokhMDnM76DVMSvSlUV2Pzddpw9esG1gRFVEMxFiIiIiDwXCzBEHu7Y3pNIPFd8cUVVVexc9ZeLIiIiIiJvcu5YPM78dw5CFL2NrJOxbfmfrguKiIiIiIjIBXgNGCIPl52RXeI2siQhOyPHBdEQVTy88C0RUfkqTS4iycxFyHsxFyEiIiLyXCzAEHm46LpVIMkShFr0aaeqKhDTsJoLoyKqOBQhQxFlmxCqFHNWNxGRt4uKrQy9UQ+bxVbkNopVYS5CXou5CBEREZHnYgsyIg8XFhWC9gNaQ9YV/t9dliVUrh6OFt0auzgyIiIi8gZ+QX644/6OkPWF5yKSJCEwLADtB7RycWRERERERETliwUYIi8wfu7DCK4cVODAh6yToTPq8dySiZBl/jog76RCggq5jDe2/SAiKs6o2fejcrXwAieEyDoZsk7Gs0smwmA0aBQdkbaYixARERF5Lh5xJfIClauFY/7u19B3dDeYfIwA7Ac8OtzVBu/vmI1GtzXQOEIi7eT1XS/rjYiIihZSOQjv75yNux7vDR9/MwD7dV/a9GmOub+/hNY9m2kbIJGGmIsQEREReS5eA4bIS4RFhWDi/Ecwbu5DSE1Kh1+QL8y+Jq3DIiIiIi8RFB6IcW8/hEdefwCpSWnw8TfDx99H67CIiIiIiIjKDQswRF7GYDQgLCpE6zCIKgznXPiWV74lIiotvUGP0EjmIkR5mIsQEREReS4WYIiIyKvZ+66XrW0H+64TERHRzWIuQkREROS5eA0YIiIiIiIiIiIiIiIiJ+MMGCIi8moqZChlPB9BBdt+EBER0c1hLkJERETkuViAISIir8a+60RERKQl5iJEREREnostyIiIiIiIiIiIiIiIiJyMM2CIiMirqZChsu0HERERaYS5CBEREZHnYgGGiIi8miIkKEIq8z6IiIiIbgZzESIiIiLPxRZkRERERERERERERERETsYZMERE5NUUyFDKeD6CwrYfREREdJOYixARERF5LhZgiIjIq6lChirK2Hdd8KAHERER3RzmIkRERESeiy3IiIiIiIiIiIiIiIiInIwzYIiIyKux7QcRERFpibkIERERkediAYaIiLyaCkARUpn3QURERHQzmIsQEREReS62ICMiIiIiIiIiIiIiInIyzoAh0pDNasPmb7dj9UfrEX/yEoIrBaLHiC7o8VBn+Ab4aB0ekVdQIUMt4/kIZX0+EZFWFEXB78v+xKoPf8G5oxcQEOqPbg90Qu9RXeEf7Kd1eERegbkIERERkediAYZII9mZOXi+z8v4Z8shyLIEVRVIOJuEY3tP4sd3V+OtzTMRXiVU6zCJPJ4iZCiijH3Xy/h8IiItWC1WTB/0Bv5csxeyToaqqEg4k4SP//kCy+auwpzNMxFVM0LrMIk8HnMRIiIiIs/FLI1II5/8bwkO/P4fAEBVcy+aKQAhBC6eSsDsYe9oGB0RERF5uiUzv8eutfsAAKpy9QoSQhW4cjEZ0we/ASF4YW8iIiIiIqKbxRkwRBrISM3Ezws3XC28XEexqfh7y0HE/XMKsY1jXBwduYucrBz8+sUW/LxwAxLPXUZYlVD0GtkV3Yd3gtnXpHV4bkOFBBVlvfBt2Z5PRORqlhwrfpq3FqKYXOTE/lM4sO0wGnWo7+LoyF1YLVZs/Op3rPn4V1w8lYDgykHo+VAX9Hy4C9vp3gDmIkRERESeiwUYIg0c2xMHS7a12G0kCfhn638swFCh0q6k4+mu03H871OQIEEIgcsXruDIX8exYv5avLVpBgLDArQO0y2w7QcReaPTh84iIyWz2G1knYy/Nx9kAYYKlZWehWd7zsLB7UcgyRKEKpB04QoWPLkYy99bgzlbXkJYVIjWYboF5iJEREREnotZGpEWSnmCmsQT2agI74z7CHH/nnG0rQMAIQAI4PShc5gz5gNtAyQiIo8gMRmhInw45XP89+cxALg6kyo3L4k/lYDZD7CdLhERERERCzBEGqjToiZMPsZitxECaNLpFhdFRO4k8VwStny/I1+//mupiopty3fh0ukEF0fmnhTITrkREbmTmFuiERDiV+w2qqKiaZeGLoqI3EnalXSsW/xb0bmITcX+TQdw6uAZF0fmnpiLEBEREXkuZmlEGvAN8EHfMd0hyYWfVSrrZTS/ozFibqnm4sjIHRzacbTInv15hBA4uP2IiyJyb6qQnHIjInInBqMBd03oU+QMF51eRp2WNdGgbR0XR0bu4OhfJ2Cz2Erc7t/f/3NBNO6PuQgRERGR52IBhkgjo2YPQ4s7GgOw91gHctt8SEDV2lF4bslELcOjiqyU7WDYNoaIiIozbOogtL+rNYCruQgk+y08OgzTf5jC7xIqHHMRIiIiIqJS0WsdAJG3MpqNeHn189j20y6s/vhXxJ+4iODKQegxojO63t8RZl+T1iFSBdWoQz3IehmqrfC2H4D9QFrD23jR5NJQndC2Q+X5DETkhvQGPV787insWPUXVn/8K84duYCAUH90e+B2dB/eCb4BPlqHSBVUvda1YDQbYMm2Frtdk85sYVcazEWIiIiIPBcLMEQa0ul16Dj4VnQcfKvWoZAbCYkIRteht2HjV78X2ntd1snodG97hFcJ1SA696MKGaoo40GPMj6fiEgrsiyjff/WaN+/tdahkBvxC/RFn0e64ad5awttiyrrZLTs0RTRdaI0iM79MBchIiIi8lzM0oiI3NCE90ejfpvaAK62jZFzrylUp0VNPLHgEc1iIyIiIs/3yGsPoFmXRgCuaaebm4tUb1AV//vscc1iIyIiIiKqKDgDhojIDfkG+OCt32Zg6w87sXbRBiScSUJ4dBh6PdwFHe++FQajQesQ3YYCCQrK1qO+rM8nIiJyN0azEbN/noptK3bj509+RXzcJYREBqPHiM7ocl8HGM1GrUN0G8xFiIiIiDwXCzBERG5Kb9Cjy30d0OW+DlqH4tbY9oOIiOjm6PQ6dBzUFh0HtdU6FLfGXISIiIjIczFLIyIiIiIiIiIiIiIicjLOgCGicieEwB/L/8RP89bixP6TMPma0Omeduj/WC9E1qisdXjk5RSUvW2H4pxQiIionAgh8OfPe/HTvJ9xeNdxGEwG3HZXGwyY0JsXiifNMRchIiIi8lwswBBRuXvvsU+wduEmyDoZqqICSMMPc1djxYJf8OraqWh0WwOtQyQvxrYfRESeb+FzX2LZ22uuyUWAFR+sw+qP12PG8v+hdc9m2gZIXo25CBEREZHnYpZGROVuw1e/A4DjgEfez5ZsC14Y8BqyM3O0Co2IiIi8wMoP1gO4LhexqbBZFMwc/CZSL6dpFRoREREREXkwFmCIqNwIIQAAUhEdFYQqkH4lA799/YcLoyLKTxGyU25ERFRxyUX8mhZCICfLgvWfbXZtQETXYC5CRERE5LmYpRFRuclKzwYA5NZhCqXT63Bg22EXRURUkIAEtYw3cZN92+fPn4/Y2FiYzWa0bNkSW7duLXb7L7/8Ek2bNoWvry+ioqLw8MMPIykp6aZem4jIG6iqmntf/HYHtjMXIe0wFyGAnwUREZGnYgGGyMupqoorF5ORdiXd6fuW5dL9IVja7Yg8yTfffINJkyZh6tSp2Lt3Lzp27IjevXvj9OnThW7/+++/Y/jw4Rg1ahQOHDiA7777Drt27cLo0aNdHDkRkXMJIXDlUgpSk9Ics2ddSmIuQt6JuUjFwc+CiIjIc2legOFZHkTasFlt+Ob1nzCs+ljcG/UIBoU9jPGt/oetP+xw2muY/cwAAKmY3zSKTUHzOxo77TWJbpRWbT/mzJmDUaNGYfTo0WjQoAHmzp2LatWqYcGCBYVuv2PHDtSoUQMTJ05EbGwsbrvtNjz66KPYvXt3WYfA6zEXIdKGoihY9s5qPFjrMdwbORqDK43EmKZP4dclW5xWiJFze4/JuqILLEIVaN6VuQhpx5m5SGpqar5bTk7R11pkLlJx8LMgIiLyXHotXzzvLI/58+ejQ4cO+PDDD9G7d28cPHgQ1atXL7B93lkeb7/9Nvr164dz585h7NixGD16NH788UcN3gGRe1JsCqbd9Tp2rdsHoV49wHFsXxxm3vMWRr0yDPc9O9BpryeKaPsh62SERgajw8A2TnstohulCgmqKNuZz3nPT01NzbfcZDLBZDIV2N5iseCvv/7Cs88+m295jx49sG3btkJfo3379pg6dSrWrFmD3r1749KlS/j+++/Rt2/fMsXu7ZiLEGlDVVXMvv9dbP4u/++8UwfP4rXh7+HUwbMY9cow572eUnhBR9ZJ8Av2Q9dhtznttYhulDNzkWrVquVbPm3aNEyfPr3A9sxFKg5XfRY5OTn5CnJ5eavVaoXVanXCO6Gi5I0vx7n8caxdh2PtOhxr1ymvMda0AHPtWR4AMHfuXKxbtw4LFizA7NmzC2x/7VkeABAbG4tHH30Ur7/+ukvjJnJ36z7dhD/X7gWuOxaRV4xZ+PxX6DCwDarVq+qU17vnqX74atYy6PQyFJu9GiNJEgJC/fHKz1NhMBqc8jpEWivtQY/ExEQoioKIiIh8yyMiIhAfH1/ovtu3b48vv/wSQ4YMQXZ2Nmw2G/r374/33nvPafF7I+YiRNrY+v0ObP624IHFvFzk61d/xG0D26Be69pOeb2HZg7Bx08vyZ+LyBJ8Anwwe81U+Pj7OOV1iLR25swZBAYGOh4XdiIIwFykInHVZzF79mzMmDGjwPJNmzbB19e3bG+CSmX9+vVah+A1ONauw7F2HY51+cvMzCyX/WpWgNH6LA+AlcPisLpaMnceo1Wf/AKjjwFFdfeQdRLWLPwVI18u25mneWMz5NkBaNu3BdYu2ogT+0/B5GdEhwFt0HVYR/gF+brlGDqLO/87cgVXjIsCGUoZO3LmPb+0Bz3ySFL+s12FEAWW5Tl48CAmTpyIF198ET179sSFCxfw9NNPY+zYsVi4cGGZ4vdWzEUqNv5+LJk7j9GqT36Byd9Y5MwUnV7C6oW/omazmDK9Tt7Y3DmuO5p1bYSfF27E0d3HYfAx4Na+rdDtgY4IDAtwyzF0Fnf+d+QK7paLBAYG5stFSsJcpOIo78/iueeew+TJkx2PU1NTUa1aNXTp0gVhYWHOeyNUgNVqxfr169G9e3cYDDz5sDxxrF2HY+06HGvXKa/W4poVYLQ+ywNg5bA0OEYlc8cx6vl8h1Jtt2bNGqe8Xt4Y1epTBbX6VMldqmDzH785Zf+ewB3/HblCeZ19cC1ntv0o7UGP8PBw6HS6At93ly5dKvC9mGf27Nno0KEDnn76aQBAkyZN4Ofnh44dO2LWrFmIiooq03vwRsxF3APHqGTuOEa3PdYctz3WvMTtnJ2L1OheGTW6V3Ys/31n8dd88ibu+O/IFdwtFykt5iIVh6s+i6Ja4xoMBh7QcxGOtetwrF2HY+06HOvyV17jq2kLMkC7szwAsHJYDFZXS3YjY/TP1kOYdd8c5GRZHNdDkWTAYDLguS8mokW3Ji6I+Kqh1R5FZlp2keslGbi1b0s8+8XEMr0O/x2VjGNUvOuvqeIpjEYjWrZsifXr12PgwKvXW1q/fj0GDBhQ6HMyMzOh1+f/2tbpdADgtItVeyvmIhUTfz+W7EbG6PDu45gx+A1kpmbZO5AK+4xXWZbw1Cfj0H6Aa6/HNqrhk0g8d7nI9ZIENLqtPmatfK5Mr8N/RyXjGBWPuchVzEXKBz8LIiIiz6ZZAUbrszwAVg5Lg2NUspLGKOFsEl7s9xosOdZ8F7wHAGumDTMGvYlP/n0bVWpFlneoDu37tcYvn/3m6IFe+DZtnPbZ899RyThGhXPFmKiQoZax7cfNPH/y5Ml48MEH0apVK7Rr1w4fffQRTp8+jbFjxwKwH7Q/d+4cPv/8cwBAv3798Mgjj2DBggWOA/+TJk1CmzZtUKVKleJeiorAXMQ9cIxKVtIYpSal4f/6zEZWWhbU63IRSMDsYe9i/u7XUbNJ2dp93YgO/dtg2TuroSpF5CIS0KF/W+YiLsQxKhxzEeYirsDPgoiIyHNpVoDhWR7kLVZ98AusFluB4gtg/3er2FSsmL8OY98a4bKYBj95J35dsgWqKgrEpdPLiIiphI533+qyePIIIXDgj/9waMdR6PQ6tOzRBDG3VCv5iURloAgJShnbftzM84cMGYKkpCTMnDkTFy5cQKNGjbBmzRrExNgPgF64cAGnT592bP/QQw8hLS0N77//Pp566ikEBweja9eueO2118oUuzdjLkLeYu2ijchMyyo0F0Huoh/fXYOnPhnnspgGPN4Lqz78BZYsS4GikKyTERIRhG4P3u6yePIIIfDfn8fw7+//QZKA5nc0Rq2mNVweB3kX5iLEz4KIiMhzadqCjGd5kDfYseqvos/uBKAqKrav3O3SAkzMLdUwa9XzmHn3m8hIyYTOoAMEoNgUVK0ThVfWTIXR5NozIE//dw4z73kLpw6cgayTIYS9ONSyR1M8/+UTCAwLcGk8RK4wfvx4jB8/vtB1ixcvLrBswoQJmDBhQjlH5V2Yi5A32LlmT+HFl1yKzZ6LuFJkjcp47ZcX8EL/15CalGbPRQAoVgURMZXwyprn4Rvg49KYLsRdxEv3vIWje+IgyzIE7LlI444NMPXrJxEWFeLSeIhcgblIxcHPgoiIyDNpWoDhWR7kDaw51lJsY3NBJPm1uKMxvj73EX77+g8c3nUMeqMebXo3R8seTSHLZWuBcKOSLlzB5NtfQNqVDADIV7Dau+Ef/K/HS3hvxyvQGzS/bBV5IC0ufEsVB3MR8galyTNsVtfnIre0q4elZz7Alu934OC2w5B1Mlp0a4K2fVtAp9e5NJa0K+mY3GkarsRfAQCo6tVc5OD2w3i663TM/+t1mH0LbydIVBbMRYiIiIg8l+ZHM3mWB3m6W9rXw/nj8UVeb0Wnl3FL+7oujsrO7GtCr5Fd0WtkV01eP89P7/+MtCsZhc4UUhUVx/bGYdtPu3D73e00iI48nRAyVFG2oqMo4/NJW8xFyNPdcmsdHN51rMgZubJORoM2dVwclZ3RbES3B25Htwdc327sWms+3oCk85cLnSmk2FScOXwem5b+jt6j7tAgOvJ0zEWIiIiIPBezNKJyNuCxXsVe7F6xqbjrsV4ujKjiWf/55mLbtMk6CRu+2urCiIiIiDzHneN6FnuNIlVRcdfEPi6MqOJZ//lvxbZpkyQJvy7Z4sKIiIiIiIjIE7AAQ1TO6rSoiTFvDAdgn+2SR9bZf35o5n1odFsDTWKrKNKTM4pdryoCKQmpLoqGvI0CySk3IqKKKrpOFCYtGANIgFxILnLPU/3QpndzrcKrEFIvpxe7XgjmIlR+mIsQEREReS7NW5AReYN7nuqHWs1q4Ie3V2L/pgMQwn5B18FP3onWvbz7gAcARMRUwqlDZ4EiTjzV6WVUqRXp2qDIa6ii7H3TizlpmoioQujzSDdUb1AV389Zhb/W74eiqGjQtg4GPdEX7Qe0hiR598HbKjUjkHwppchZMLJORpXazEWofDAXISIiIvJcLMAQuUiLOxqjxR2NtQ6jQrrz0R6YP+lTiCIqMIpNRZ/R7LlORERUFo1ua+D1s26L0ndMdxzYdrjI9aqiou8j3VwYEREREREReQK2ICMizfUe3RV1WtZ0tELJRwK6j+iEhh3quz4w8gpq7oVvy3ojIiL31WVoBzTr0giSXHAWgiRJ6HBXG7T28jZtVH6YixARERF5LmZpRKQ5k48Jb2yYhr5jusNoNjiWB4YF4OGXhuKpT8Z5fWsUKj8qJKfciIjIfekNesxa9SwGPdEXZj+TY7lfkC+GPT8I//fNk5Bl/ulE5YO5CBEREZHnYgsyIqoQfAN8MHHeaIyaPQynDp6FTq9DzSbVYTAaSn4yERERURmZfEwY+9YIjJg5BCf/PQNJAmo2iYHRbNQ6NCIiIiIiclMswBBRheIX6Itbbq2rdRjkRRQhQSnjhW/L+nwiIqo4fPzMaNC2jtZhkBdhLkJERETkuViAISIir+aMvunsu05EREQ3i7kIERERkedilkZERERERERERERERORknAFDRFQBqaqKQzuOIjUpDZE1KiG2cYzWIXksFRLUMrbt4IVviYjI0wghcHjXcVy5mILwqiGo3TwWksTvu/LAXISIiIjIc7EAQ0RUwWz6+g988uwSXDqd6FhWu3ksJrw/Cre0q6dhZJ5JQCrzQQvBgx5ERORBtq3YjQ+nfI7zxy86lsU0jMZjcx9G866NNIzMMzEXISIiIvJcbEFGRFSBrFu8Ca8Mm5uv+AIAJ/afxFNdpuPQzqMaRUZERETeYOuynZg26A1cOHEx3/LTh87h2V4vY+/GfzWKjIiIiIjI/bAAQ0RUQeRk5WDBk4sLXaeqAqqi4oPJha+nm6cKySk3IiIid6fYFLw/cREgACHyrxOqgFAF5j3xKcT1K6lMmIsQEREReS4WYIiIKogdK/9CRkpmketVRcXB7Udw7tgFF0bl+VQhO+VGRETk7vZs+AeXLyQXuV4IgVMHz+LonjjXBeUFmIsQEREReS5maUQEwH7Rd9JWwtkkyLqSfy0nnr3sgmiIiIhci7mI9kqbYySeTSrnSIiIiIiIPINe6wCISDuXTifgu7dWYv3nm5GRkomQyGD0faQbBk3qi4AQf63D8zrBlYOgKiUffAquHOiCaLyHM9p2sO0HEdHNuRx/Bd+/tRJrP92EtMvpCAwPQJ9Rd2Dw5DsRXClI6/C8TnDl0o15abej0mEuQkREROS5WIAh8lKnDp7Bkx1fQEZqluOg/5X4ZHz1yjJsXPo75v4+CyH849ql2g9oDZOvCTmZOYWulyQJsU2qo3qDaBdH5tlUSFBRxoMeZXw+EZE3unDiIp7oMBUpiWmOXCQ1MQ3fvrkCv365Fe/8MQuVq4VrHKV3admjCQJC/JB2JaPIbSJrVEb9trVdGJXnYy5CRERE5LnYgozICwkh8PLQufmKL3lURUX8yUuY98QijaLzXr4BPhgxY0ih6yQJgASMef1BSBL/wCYiIvf3+sPz8hVf8qiKiivxV/D2Ix9oFJn3MpoMGP3q/cVuM+aNByDL/DOSiIiIiKg0mDkTeaFDO48i7p/TRba7Um0qtn6/A1cuJrs2MMLdk+/EuLcfgm+gT77lYVVCMXP5/9Cye1ONIvNceW0/ynojIqLSO3XwDP7deqjIXESxqdj9y35cOHHRxZFRn9F34MkPx8A/xC/f8uDKgfi/pZPQcVBbjSLzXMxFiIiIiDwXW5AReaGjf52AJEkQQhS5jaqoiPvnNEIigl0XGEGSJAx6oi/6jumGXWv3ITUxDRE1KqFZ10bQ6XRah4crF5Ox7addyEzLRnTdKLTp3Rw6vfZxlQX7rhMRud6xvSdLuV0compGlG8wVECf0Xeg24O3Y/e6/Ui+mILw6FC06NYYeoP2fz6mJqVh24q/kJacgajYymjbpzkMRu3jKgvmIkRERESey70zVSK6KQaTodjiy7XbkTZMPibcNrDinGGq2BR8OOVzrJi/FoqiQpZlqIqKkMhgPP3pY2jds5nWIRIRkRvRl/KAOXMR7RhNBrTv30rrMBxUVcVn07/H92+vgs2qQNbZc5HAMH9Mmj8aHQa01jpEIiIiIqIC2ILsJlgtVtisNq3DILpprXs1gyQXf5ZcQIgf6rXhBVbJ7v2JC7H8vZ+h2FRAwNEyJvliCl7o9yoObDuscYQ3j20/yB3ZrDZYLVatwyC6ac27NiqxCGPyMaJJp1tcFBFVdItf/BZfv/4TbFYFwNVcJPVyOl667x389es/WoZXJsxFiIiIiDwXCzClJITAxqW/Y3zr/6GPeRh6m4ZiYrvnsfWHHVqHRnTDKkWHoevQ2yDriv4VcPdT/WHkWacE4ELcRaz6cH2hs6aEEBBC4LNp32gQGZH3+f3HnXiiw1T0Ng1FH/MwjGv5DDZ8ubVUsxqJKpLAsAD0HdOtyBNCJEnCgMd7wzfAp9D15F2SL6Xg+7lrCl8pAEjApy8yFyEiIiKiiocFmFIQQuDDpz7D7PvfwbG9cY7lh3cdw8x73sLiF77WMDqimzPpw0fRvGsjAIBOL+e77zumG+579i6tQqMKZvM32yDLRX9dqIqKvRv+QXJCigujch6edUru4osZ32HG4Dfx386jjmXH95/Eqw++i3lPLGIRhtzOo28OR4e72gAomIt0vq8DHp51n2axUcWydfkux4yXwghV4OieOJw/ftGFUTkPcxEiIiIiz8VrwJTC3g3/4Ie5qwHYk/s8au7PX778A1r3bo6G7etpEh/RzTD7mjB77f/h780H8euSLUhJTEXlauHoNbIrajeP1To8qkBSk9IgyxJUpfjt0i6nI7hSkGuCciIBQEXZDlrwsDeVt8O7juHzGd8CuJp/AFfzkp/eX4s2vVugTe/mmsRHdDMMRgNe/O4pHNx+BOs/+w2XLyYjvEooejzUGfVa14Yk8YAy2aUlpUHWSVBsxX/jpl5OR5VaES6KynmYixARERF5LhZgSmHF/HWQ9TJUW+FnXen0MlbMX8sCDLkdSZLQtHNDNO3cUOtQqAKLqFHZfu2XYuj0OoRGhbgoIiLvs3LBOuj0cpH/F2WdjJ/mr2UBhtyOJElo2L4e82gqVmQpchFIQKXoUNcERERERERUSmxBVgpH/jpeZPEFABSbiqN/nXBhRERErtNlaAfojboi1+v0Mjrd2w5+gb4ujMp52PaD3MGRv04Ue/BRVVQc28NchIg8U/sBreDjby5yvayT0bpnU4S56ckgzEWIiIiIPBcLMKVg8jGWuI2xFNtUNEIIWC1WrcMgogouMDQAY94YXug6WSfDL8gPD88a6uKonIcHPcgdlCbPMJrdNxfh9WuIqDhmXxMem/sQAOD6znSyTobZ14Qxr97v+sCchLkIERERkediAaYUbhvYFrKu6KGSZAkdB93qwojK5uzRC5jzyALc6f8A+piH4Z7I0fhs2jfISMnQOjQiqqDuerw3nlsyEZGxlR3LJElCm97N8f7O2YisUbmYZxNRWd12VxtIctEH12SdjI6D2roworK5eCoB7z72CfoHPog+5mEYXGkkFj73JVISU7UOjYgqqO4PdMSL30xC1TpR+ZY363wL5m6Zjur1q2oTGBERERFRMXgNmFLoN74nlr//M3KyLI6L3eaRdTJ8/M3o88gdGkV3Yw7vOoYpXafDmmN1tDJJvpSCr15Zhs3fbsPc32chMCxA2yDJo1ktVmxbvgvbV+2GNceGWk1roPeorgiJCNY6NCpB12Ed0fm+Doj75zQyU7MQVSsC4VXcv9e6M84a5VmnVN56jeqKb974CZmpWVCV/K3IJFmCwahH/8d6aRTdjTl54Aye7PgCMtOzHC1e0y6n49s3V2DT139g7h+zPOJ3C1Vcik3BjtV78MfyXcjJykGNhtXQ6+EuqBQdpnVoVIIOA1qjff9WOHXwLNKuZCAiphIqV3P/z425CBEREZHn4gyYUqhcLRyzf54K30AfQLIXXfJmxPgF++LVdf/nFgePVVXFS0PmwJJtKdBHXlVUnDsWj4+e+UKj6MgbXIi7iFG3PIlZ972NTUv/wNYfdmDxi19jaPWx+HXJFq3Do2LEn7yENZ9swJqPN0CSJDTu2MBjDpCy7Qe5g+BKQXjtlxcQEOIP4JpcRAJ8/M14ec3zbjETTQiBV4bNRWZaVoHr66mKioSzSXh/wkKNoiNvkHT+Mh5t8T/MuPstbPz6d/y+7E98+fIyPFjrcaz84Betw6NiJJy7jHWfbcbqhZtgybGi8W31PaL4AjAXISIiIvJknAFTSo1ua4Clpz/Ar0u24t/fD0GSJDTt3BBdht4Gs69J6/BKZc+v/+DiyYQi16uKig1fbsWjbw6H2d893hO5D5vVhv91fwmXTtv/DV57BreiKnh9xPuIrFEJjW5roFWIVIiMlAy8MXI+/lj+J3DNBMCG7evhuS+fQERMJe2CI/IydVvWwpen5mPT19uwb+M/EEKgUYf6uOOB2+Eb4KN1eKXy35/HEPfP6SLXq4qKbT/tQuK5JARVDnRhZOQNVFXF83e+irNHz9sf5xYBhWL/gntvwiJE1KiENr2aaxYjFZSdkYN3Jn6KTd9uz9eNoHazGnj203GoVjeqmGcTEREREWmLBZgb4OPvg35je6Df2B5ah3JTju87CVknF2hdci2bxYYzh8+jTstYF0ZG3uCP5btw4cTFItfLOgnfvrmCBZgKRLEpeLbXLBzZfSJf8QUA/vvzKCZ1fAEf7n3D7dsWCiFBlPGs0bI+n6i0TD4m9Hq4C3o93EXrUG7K8X0nS9xGqAJx/55Bs64Nyz8g8ip7NvxTbAFQ1sn45vUVLMBUIKqqYvqQudi/+WCBVtAn/jmNp7rNwoKdsxAWFaJRhM7BXISIiIjIc7EFmRcxmPQQQpS4ndFscEE05G12rNrtaN1XGMWmYufqPVDVoguE5Fp/LP8T/+08VmjRVrGpSDp/2SPataiQnHIjopIZTKU794e5CJWHnav2QKfXFbleVVT8s/UQMtOyXBgVFWffbwexd9MBqGrBv2FURUVacgZ+fH+dBpE5F3MRIiIiIs/FAowXadu3RYEzx64XXjUUsY2ruygi8iaWbGuJBUBVUYudoUWu9esXW4otmglVYN2nm1wYERG5u1Y9mxX7ewUA/IP90KBtHRdFRN7Ekm0t1XbWnNJtR+Vvw9I/oNMX/TtDVVSs+4LXESQiIiKiiosFGC9StXYUOgxsU+yBj/ueHQidrugzA4luVu1mJbS1k4DoelWgN7AzYkVx+WJyiQWxlMRUF0VTfnjhWyLXCYsKQY8RnSHLRf+fuWdKfxjNRhdGRd6iVrMaUBSl2G1CI4MREOrvooioJMkJaVBsxeci6VcyXBRN+WEuQkREROS5WIDxMs8sfhxNOt0CANDpdZAkyXFW2ZBnBqD/+J5ahkcerNfILiWe9TxwQh8XRUOlEVmjUrFnnUqShMrVwl0YUfnI67te1hsRlc6E90ehTd8WAArmIv3G9cB9z96lYXTkye4YdhtMPiYU1alJkiUMeLwXZJl/IlUUlauHFZuLAECom1//BWAuQkREROTJeKq5l/EN8MHr61/E35sPYuNXW5F2JR1RsRHoNaorqtWrqnV45MFCIoIxZeF4vD7ifUg6CWru2YySZL++e7s7W6HvmG7aBkn59Bp5BzZ/u73YbfqO6e6iaIjIUxjNRsxc/j8c3H4Ev36xGSmJqahcLRw9H+6C2MYxWodHHswvyBfPfTEBM4fMgQRcnVkhARIkNLn9Fgye1FfTGCm/nsNvx5qFRbc7lWUJfUd1cWFEREREREQ3hgUYLyRJEpp2boimnRtqHQp5mW4P3I7I2Mr49o2fsHP1HqiKiqp1q2DghD7oO6ZbsRfGJddr2b0JOtzVBttW7Cpw/ShZJyO2UTX0HOn+Bz2c0baDbT+IbowkSWjYvh4atq+ndSjkZdr3b4V3t76Eb99cgT9W7IZiVRBZozIGjO+JfuN6wGgyaB0iXaNey5rodv9t2PDV77j+UoKyTkZUjUro/6j7n8DDXISIiIjIc7EAQ0Qu1ahDfTTqUB+qqkJVVF7zpQKTJAlTv56ExS98gxXz1yI7IweAvWVQ12G3Yfzch+HjZ9Y4yrJzRtsOtv0gInIfdVvVwv99/SSEEFBsCnORCkySJExeMBqRMeFY9t5aZKZlA7AXX24b0AqPzRkO/2A/jaMsO+YiRERERJ6Lf20QkSZkWWaPdTdgMBrwyGsP4IEXBuPwruNQbApqN49FUHig1qERERGViSRJLL64AZ1OxoNTB+HeyXfiv13HYbPYENuoGkIjg7UOjYiIiIioRPyLg4iISuTj74NmXRppHUa5EE5o+8GzTomIiMqXyceIprc30DqMcsFchIiIiMhzsQBDREReTQAF+srfzD6IiIiIbgZzESIiIiLPxf4/RERERERERERERERETsYZMERE5NVUSJBQtrYdahmfT0RERN6LuQgRERGR52IBhoiIvJoQUpn7prPvOhEREd0s5iJEREREnostyIiIiIiIiIiIiIiIiJyMM2CIiMirqUKCVMazRlWedUpEREQ3ibkIERERkediAYaIiLyaEPZbWfdBREREdDOYixARERF5LrYgIyIiIiIiIiIiIiIicjLOgCEiIq/GC98SERGRlpiLEBEREXkuFmCIiMir8aAHERERaYm5CBEREZHnYgsyIiIiIiIiIiIiIiIiJ+MMGCIi8mqqkCCV8axRlWedEhER0U1iLkJERETkuViAISIiryaE/VbWfRARERHdDOYiRERERJ6LLciIiIiIiIiIiIiIiIicjDNgiIjIq9nPOi3rhW+dFAwRERF5HeYiRERERJ6LBRgvYLPakHT+CgwmPUIigiFJ7A9MRJRHCMkJBz34e5WoOIpNQdL5y5D1OoRFhTAXISK6BnMRIiIiIs/FAowHy8nKwVcvL8PKD35B2uV0AEDNJjEYNnUwOt3TTuPoiIiIyNNZLVZ8+/oKLH//ZyRfSgEAVKtfBff9byC6D+/EQgwRERERERF5NBZgPJQl24Jnur+E/3YcgapenY8e9+9pzBoyB/FxD2DIMwM0jJCIqGIQubey7oOI8rNZbXih/2vY8+vfENfkImcPn8cbD8/DuaMX8PCsoRpGSERUMTAXISIiIvJcstYBzJ8/H7GxsTCbzWjZsiW2bt1a7PY5OTmYOnUqYmJiYDKZUKtWLSxatMhF0bqPn+atw6Hrii8AHAdAPnluCS6cuKhFaF5DVVX8tX4/3hq9ADPvfQuLpn7llmN+5VIKzh27gOzMHK1DISoXeW0/ynoj98VcpHz88tlm/PXL/nzFF+DqdQq+emUZju8/6frAvIgQAn9v/Q/vTPgUsx54H5+88A3OHLmgdVg3LOVyOs7HJSArg7kIeSbmIkRERESeS9MZMN988w0mTZqE+fPno0OHDvjwww/Ru3dvHDx4ENWrVy/0Offeey8uXryIhQsXonbt2rh06RJsNpuLI6/4VsxbW+CAx7VkWcaaTzZg1CvDXBiV90i7ko6pd87Goe1HoNProKoqJEnC0ld/xEMz78P9UwdrHWKJ9m78B1/M+A7/bD0EADCaDeg+vDNGzByCkMpBGkdHROQczEXKz4r5ayHJUpH5iE4vY/VHv2LivNEujsw7ZKVnY/p972Dfbweh08tQVQFZlvDd22tw7+S+GDnjngrfAu7g7jh88dYa7Pv9CABAb9Chy8CWeHBKX1SKCtY2OCIiIiIiolLQtAAzZ84cjBo1CqNH2//wnjt3LtatW4cFCxZg9uzZBbZfu3YtNm/ejBMnTiA0NBQAUKNGDVeG7BYURUH8yUvFbqOqKs4cPueiiLzPS0Pm4PCfxwDYLzwMACK3McDiF75G5erh6P5gJ83iK8mW77dj1pC3IV0zR86SbcXPizZg97p9eG/HKwiJCNYsPiKnYt8Pr8ZcpPycPXy+2JNBFJuKUwfPuDAi7/Lm2I/x99b/ANjHGgCU3M/j2zmrEV4lBAPGdtcsvpLs3nQI0x7+6OqUKQA2q4INP+zG7k2HMHflZFSuGqphhEROxFyEiIiIyGNpVoCxWCz466+/8Oyzz+Zb3qNHD2zbtq3Q56xYsQKtWrXC66+/ji+++AJ+fn7o378/XnrpJfj4+BT6nJycHOTkXG1XkJqa6vjZarU64Z1UPEII+IX4wJJd9Nm4sl6Cf4hvkWOQt9xTx8gZihqjE3+fwr9//AedUQcddAWeJ0nAt2/9hE5D2lXIM0+zM3PwzviPoPfRAwIF3kHy5RQsnv41Hn93VIn74r+jknGMiueScXFG246bfP78+fPxxhtv4MKFC2jYsCHmzp2Ljh07Frl9Tk4OZs6ciSVLliA+Ph7R0dGYOnUqRo4cebORezXmIuXLP8wPalLRRwQlGQgI92cuUgZFjVH8yUvYuW4fdEYZuiI6Dv/w/s/o+dDt0Ok070hcgM2qYO6zX0FvtP9+vj4XyczIxsJXfsKUuQ+UuC/+OyoZx6h4zEXyYy5SfvhZEBEReSbNCjCJiYlQFAURERH5lkdERCA+Pr7Q55w4cQK///47zGYzfvzxRyQmJmL8+PG4fPlykb3XZ8+ejRkzZhS6bv369WV7ExXYw4tK1+JqzZo1xa735DFylsLG6NGvhpT4vJ9//rk8wnGK4R/fVeI2Jf3buRb/HZWMY1S4zMxMrUMoN2x9pT3mIuVr6Ht9S7Udc5GyK2yMHvmkf4nPW7dubXmE4xT3PN+qxG2YizgXx6hwzEXyYy5SPvhZEBEReS5NW5ABKDADQAhR5KyAvOtofPnllwgKsl+DYs6cObj77rsxb968Qs88fe655zB58mTH49TUVFSrVg0A0L17dxgMBme9lQrl1MEzmNx5GhSbAqHmX6fTS4hpEI03f5sBna7gDA3AfqbX+vXrPXqMyqqoMVoy8zsse28NFKtazLOB93fORrV6Vco7zBv2xYxvsfz9n2FzQvz8d1QyjlHxrp0pUF6EyNfh5qb3caPY+qriYC5SPuLjLmJih/+DNdsCtZBcpHL1Snh3+8swmoyFPp+/H0tW1Bj9OG8dlsz+Cer1A3+dV1c+g3ota5Z3mDfsx483Yek7v0ApIf5Xlj6Gek0LPzCZh/+OSsYxKh5zkauYi5QffhZERESeS7MCTHh4OHQ6XYEzTC9dulTgTNQ8UVFRqFq1quOABwA0aNAAQgicPXsWderUKfAck8kEk8lU6P4MBoPH/pFRu2lNTP/uabw0ZA7Sr2RAb9BBCPv1SGq3rYMZy5+B2WwucT+ePEbOcv0Y1WwSi+zUnGKeAZj9zahaK7JCjq3Z1wc5GVaoSvEHPQKC/UsdP/8dlYxjVDhXjIlwQtuPvOdff5CmqO8gV7W+ouIxFylf1epGY9ZPz2H6wNeRnJAKnUEH5OYi1ZrE4KWVz8LP36/E/XjyGDnL9WNUq3EMcjIsxT5Hb9Qhpl50hRxbH18f5GTZIEo4ohwQ4MtcxIk4RoVjLnIVc5HyoXVLVKvVyhaE5YytHl2HY+06HGvX4Vi7TnmNsWYFGKPRiJYtW2L9+vUYOHCgY/n69esxYMCAQp/ToUMHfPfdd0hPT4e/vz8A4MiRI5BlGdHR0S6J25206NYEX5/9EFu+24Fje+NgMOlx650t0bBD/Qp57RFP0X5AKwRVCkRaUhrUQi4+LOtk9B7ZFSafwg/Gaa3j4Lb49P+WFrlekiXUaVETlaLDXBgVkXvIm9WQZ9q0aZg+fXqB7VzV+oqKx1yk/DVsXw9fnfkAvy/7E4f/PAqdXodWvZqhWZdGzEXKUfMuDRERE46Es5cLPaFC1snock87BISUXADTwq09G2PBtB+Kvqi4BFSpUQnV60a6NC4id8BcxP1o3RJ106ZN8PX1LfsboRKx1aPrcKxdh2PtOhzr8lderWc1bUE2efJkPPjgg2jVqhXatWuHjz76CKdPn8bYsWMB2Ft2nDt3Dp9//jkAYNiwYXjppZfw8MMPY8aMGUhMTMTTTz+NkSNH8oybIph8TOg+vBO6D++kdShew2A04IVvJuO5Pi9DsilQbFcPfMiyhNhG1TBiZsnXiNFKtXpV0XlIe2z+bjtEIQUkIQRGzKi48RPdMCHd9IVr8+0DwJkzZxAYGOhYXNSshzzl3fqKSsZcpPwZjAZ0ua8DutzXQetQvIYsy3j+s/H4X9/XYM2x5s9FdDKialbGIy/fp2GExasUFYzew9rh5y+3Fz4LRgDDp/RhEY88B3MRgnYtUbt06YKwMJ5cV57Y6tF1ONauw7F2HY616yQlJZXLfjUtwAwZMgRJSUmYOXMmLly4gEaNGmHNmjWIiYkBAFy4cAGnT592bO/v74/169djwoQJaNWqFcLCwnDvvfdi1qxZWr0FokI17dwQ8/58Fd++8RN++2YbbBYbwqqEoN/Ynhg0qQ98/Cv2HydTFo2HqqrY8t0OyDoZsizBZlNgNBsxacEYtOndXOsQiZzGmX3XAwMD8x30KIqrWl9RyZiLkKeq36oW5v0+E9/NXY2N32yHJduKoPAA9B3VFYMn9IR/cMWc/ZJn7IzBsFoUrP92J2SdBFmSoSgqdHoZj04biE79W2gdIpHTMBfxblq3RGX7QdfhWLsOx9p1ONauw7Euf+U1vpoWYABg/PjxGD9+fKHrFi9eXGBZ/fr1OeWK3EJso+r432cT8Mzix2G12GA0uc8vSZOPCS988xROTTuDLd/tQEZqJqrWiULXYbfBL5DT04nKiq2vKhbmIuSpoutE4sl5ozDp/ZFul4sYjHpMfmsYhjzeDVtW7EVaciYiY8LQZUDLCts6jcidMBepOPhZEBEReTbNCzBEnk6SJLc64HGtmFuq4cFp1UrekMidCRR9nYEb2ccNYusrInIVd85FqsZWxtAnemodBlH5Yi7i9fhZEBEReS4WYIiIyKsJIUGUse/6zTyfra+IiIgIYC5C/CyIiIi0kpWZgzMnE3E6LhH/HThRLq/BAgwREZFG2PqKiIiItMRcpOLgZ0FERORcQgikJmficmI6LiemITEhDQnxKbgUn4wLZ6/g/NnLSLyY6tjepuSUSxwswBAREZW17QcRERFRWTAXISIiKpbVakN2lhXZWRZkZ1mRk21FTo4VlhwbcrLt9zarAqvVBovF/rPNpkCxqbDZVCg2BYqiQlWF415VVQhVQFWF/atYCIgivpMlWYIEe3tfSZYg593n3iRZgk4nQ5Zl6HRS7r0MnT7/vV6vg5x7r9fL0F13r9froDfk3vQyAIG0FAsuJ6bBx8ecb50sy677ADSkqiqys6zIzMhx3NJTs5GeloW0lCyk5d6nXMlA8pVMpFzJQMqVTFxJSofNppS4/+BQP1SPrYSwymZs3O/8+FmAISIir6ZV2w8iIiIigLkIERF5D0uOFclXMpGanHuQPNn+c3paFtJSs5GWmoX01CxkpF890J6Z+3NpDqR7si/e+bfAMlknw6DXQaeXYTDooNPrcu/l3CJNblEn92ddboHn2mKQTic7bnJesUiWIOvk3OKSDFmXv+AkSfYbAODaFETYZ52I3EJWXpFLVez3inK1GGazqbkFMwVWiw2WHJu9eJZjQ3a2vcCWnWXJvbdCFFUZK4XAIF+EhvsjrFIAKkUGoVJEEKKiQxAVHYromDAEBvkCAJKSkvDcyzf9MkViAYZumBACR/46gXNHzsMvyBfNujaCycekdVhew2a1ISMlE76BPjAY3fOCukRERGV1fP9JnDp4FmY/E5p3bQQff1502FUUm4L01Gz4+JtgNPLPCSIiIiJvl9fq6VJ8ChIupiLhYgoS4lOQeCkVV5LSHS2g0tOyy/xaOp0Ms48RJrMBJpMeJrMBRrMBRqMeBqMOBkPefV4BQgdZL9tnmeTOUJHzZqjIV4sKQO59Yec0FFJYgBBQVAGh2pfnm12jqPkeKzY1995eeMj38zXFCNu1y6z2n+1FCat9ls51NQhVUZGjqED5dM6qcGSdDF8/E3x9jfAP9IF/gBkBgT7wD7TfB4X42W/BvggO8UNIuD9Cwvw1/5uFfzHRDTm86xjeGr0Acf9cvQCgb6AP7p86GPdM6X+1+klOd+l0Ar56eRnWf7EZlmwr9EY9ug69Dff/32BUqRWpdXhE7kug7G0/2DaEyGXi/j2NNx+ehyN/Xb1AotnPhHue6o8HXrzba6bha+FyQhq+/mAj1v/wF7KzLNDpZHTs3Rj3jeuKmNoRWodH5L6YixARkRvIybbiwrkrOH/mMs6eSsCf289g98ZvkBCfivjzV5CVaSnVfnQ6GUHBvggK8UNgsC8Cg30REOSDgAAzAoJ84B9gP7Du62eCr78Jvn4m+Pia4ONrhNnHAIPBuw5nW61WrFmzBn369IEs66DYFFgtecWa/DNJFFvevep4fG1xx96OTcmdiaJAzZuRoqhXC0U2xVFYUtXcVm2Kai88iavLAeQrCAkhHO3Zrm3Vdu1sGnsrtqut1nR6GQajHkajHkaTHgaD/d5kNsDsY7Dfm+2fu5+/GUaT3i2PPd/Qv9j9+/dj5cqVCA0Nxb333ovw8HDHutTUVEyaNAmLFi1yepBUMZz4+xSe6jwNVost3/LM1Cx8/L8lyEzLwkMz79MoOs927tgFTGw3FRkpGVBs9l9yNosNG77cgj+W/4m3t8xEbOMYjaMkclcSCj/F5Ub3Qa7AXMS7nTt2AU92fAFZ6fnPnMvOyMEXM79D2pV0PPbOSI2i82wJ8Sl48p55uJKUDlWx5yKKomLLz/9g+4aDePWzR1C/aXWNoyRyV8xF3AlzESLydClXMnDy+CWcjkvIvSXi7MlEJF5KLWTrhHyPQsL8USkiEJUiglApIhDhEYEIDQ/IvdlnIwQE+rjlQfSKIK9VmNHEjjjupNQFmF9++QX9+vVDnTp1kJaWhmnTpuHbb79Fly5dAABZWVn47LPPmGh4sE//bymsFpvjj+7rff3qj+g/vidCI0NcHJnne3vMh0hPzigw9opNRVZ6Nl5/aB4W/PW6RtEREbkGcxH6YuZ3yM7ILjIXWf7+zxg4sQ9nhpaDBS+tyFd8yaMqKqw5Aq9P+RoLf3maf0wTkUdjLkJEnkQIgYT4FBw+cA7Hj8Tj+OF4nDgSX0Shxc7P34wq1UIRWSUY6dlJaNehBapEhyGyaggiooJYGCAqRKkLMNOnT8eUKVPw8ssvQwiBN998E/3798d3332HXr16lWeMVAGkJqVh5+o9xV7wSFUFNi39A4OfvNOFkXm+s0fOY/9vB4pcryoqju2Nw5G/jqNuy1oujIzIQ7Dth9tgLuLdcrJysPmbbY6ZoIWRZRm/frEFw6ff68LIPF/SxVTs2HCwyDxQVQUunL6Mv3eeQNNbmYsQ3TDmIm6DuQgRuTOLxYYjB87h4N9n8N8/Z3Hon7O4nJhW6LaRVUNQPbYSqseGo3rNyqhWIxzR1cMQEGSfvXK1LVZLGAwsuhAVp9QFmAMHDuCLL74AYO/h9vTTTyM6Ohp33303li5dijZt2pRbkKS95ITUYosvgH0a3OULV1wUkfc4eeBMqbY7deAsCzBEN4MHPdwGcxHvlp6cCZtVKXYbSZaYi5SDMyculZgHSpKEk0fjWYAhuhnMRdwGcxEicieZGTk4sP80Duw7jX/3nsLhA+dgycl/WQGdTkZsnQjUrh+FWvUiUatuFGLrRMDXz6RR1ESep9QFGJPJhOTk5HzLhg4dClmWcd999+Gtt95ydmxUgQRXCoQkScX+8a0oKsKqhLowKu9g8i3dl57J11jOkRARaYu5iHfzD/aF3qArtggjVMFcpByYfErOMYQQMJuZixCRZ2MuQkQVmWJTcOTQeezZcRx7dp7Aob/PQLmufWxwqB8aNquOBo2roUHjaNSuHwVzKXI9Irp5pS7ANGvWDJs2bULLli3zLR8yZAhUVcWIESOcHhxVHIFhAWh7Zwv8uWZvkX3XZVlCl6EdXByZ52tyewP4BvogMzWryG0MZgNadGviwqiIPIiQ7Ley7oPKHXMR72byMaHzfR2wcenvUItoQ6aqKro9eLuLI/N8dRtVRXC4P5IT04vcRpYltO5Uz4VREXkQ5iJug7kIEVU02VkW7N5+DNs2HcLO348i/bpjR5FVQ9C4eQwaNquOhs2qo1qNcF6zj8jFSl2AGTduHLZs2VLouqFDhwIAPvroI+dERRXSyJeHYe+Gf2HNsRZahBn2/GCERAS7PjAPZ/Ix4d6nB2DxC18Xul6SgIET+sA/2M/FkRF5BiHst7Lug8ofcxF68MV7sH3lbmSlZReaiwya2BdRNSM0iMyz6fQ6DB3XFQteWlHoekmS0OPu1gitHOjiyIg8A3MR98FchIgqgsyMHGzf/B+2/noQe3YcR06O1bHOP8CMZm1qokXbmmjRthaiojk7nEhrpS7ADBw4EAMHDixy/dChQx0JB3mm2EbVMWfzDMx55AMc33fSsdwvyBf3/9/duHvyndoF5+GGPjcQqYlpWPbOasg6GXknKyg2Fb1G3YGRL/P/HhF5PuYiVKVWJOZunYU5oxfg0M6jjuU+/mbc+/QADJs6SMPoPFu/+9shOSkdSxdshCxJjjMnFUXF7b0bY9wL/TWOkIio/DEXISKtWCw27N52DJvW/o2dW47kK7pEVg1B+8710b5LA9zSpBp0OlnDSInoeqUuwBABQN2WtfDBnjdwbG8czh45D99AXzTr0hBG9vwuV7IsY9zbD6Hf+J749fPNSDx3GSGRwej24O2IaRCtdXhE7o0XviVyKzUaVsO7219B3D+ncOrgWZj9zGjapSF8/Mxah+bRJEnC8Cd6oOfgVvh1+R5cPHcFQSF+6NK/GWrWr6J1eETujbkIEREV4eTxS1jzw25sWLMf6WnZjuVVq4ehU49GuO2OW1CzTgTbihFVYCzA0E2p3TwWtZvHah1GhWPJseL3H3Zgw1dbkZKYhqq1I9F71B1o2rmhU74Mo+tE4aGX7nNCpETkwL7rRG4ptnEMYhvHaB1GhaPYFGz/5R/8+v0uJCekonJ0GHoOaYvmt9eDLJf9bMiI6FDc/3g3J0RKRA7MRYiI6BqWHCu2bjiI1T/sxoF9px3LwyoFoFOPRujSqzHqNKjCoguRm2ABhshJkhNS8L/uL+HE36cgyRKEKnBszwls/Op33HF/Rzy9+DHodDqtwyQiIiIPlZGahf978AP8t+ckZFmCqgoc/ecstq7ai1t7NMbzCx6Cwcj0n4iIiKgiSrmSgZXf/YkV3/yJlORMAICsk9Hu9nroM6gVmretyfZiTiSEgMWqwGK1wWpTYVUUWK0KrDYFNkWFqgooqgpFUWFTVQhVQBUCQgCqWvjUU0mCvV2vLDna9upkCTqdDFmWIEsy9DoJep0OumvuDTod9HodDHoZep0OsszimifhX2BETvLKsHdw8sAZAIDI/UWs2OwXCN741VZUq1cV9//fYM3iI6LCScJ+K+s+iIi09vbTS3Fkv/0sybw/ClXFnovsXP8vPnt9NUb/3wDN4iOiwjEXISLybvHnr+CHJduwbvlex7VdwiMC0WdgS/S6qwXCKgVqHGHFoqoCaRnZSE7PQmp6NlIyspGano3UjGykZ+YgI8uCjKwcpGdakJltQWa2Fdk5VmTlWJGVY0GOxWa/WRWt30qRdDoZBp0Mo0EHg14Hm9WCJb9/AaNBD6NBl3uvh8mgg8modyw3GfUwGfT2e6MeZqMeJqPhmp/1MBsNMJvs25lNBsdyk1EPnRNmzFNBN1yAmTlzJqZMmQJfX998y7OysvDGG2/gxRdfdFpwRO4i7p9T2LvhnyLXCwH8MHcV7nm6P4wmgwsjI6ISse+622EuQlTQxTNJ+OPn/UX+PhJCYNXnWzFsUk/4+vN6OUQVCnMRt8NchIicIfFSKr74cBN+WbnPcdJMnQZVcPfwDujYtQF0eu/qoqKqAonJ6YhPTEPClXQkJKcj8Uo6EpIzkJScgSupmbicmomUtCwoRcxAKQt9bsFDr5Oh09nv9bkzV3Ry3gwWyTE75foWcEIIx70qAFVVoQoBRRFQVRWKKhyzamxK7swaRYXVVrAQpOSuz7bYHMtSMpOd/p6vZzTocgsz9sKN2Wgv0uQtMxdSzLn2seN2TREor1CUv3ikg1Gvg04ne0UrvRsuwMyYMQNjx44tkGhkZmZixowZTDTIK+359R9H27GipF1OR9w/p1GvVS0XRkZE5HmYixAVtO+PoyUegM3JsuLwvlNofls91wRFROShmIsQUVmkpWbh28W/Y/nXO2DJsR9gb962JoY81BHNWsd69AHpzGwLzl5MxpmLyTibd7uUjPjENFy6nAZbbiGqNPx9TQjyNyPQz4xAfzMCfM0I8DPBz2yEv68Jfj5G+JqN8DEb4GMyOO6vLQ6YjHoY9fZZJlqNuxACiipgU+ytz/LaoNlvKjKzsrF5y1a0btMWiirBalOQY7XBYrXBYlVyZ/PYrpnZc83PuY+zc/LurQUeW66ZCWRvyaYgLTPHJe9dliQYcmf5GHRybhu2q8UvvT73PrctW14xTCfb27tJUl6rN9j7v9kH1HGniqvFL0W1t5XLazFnyx1fi/XqOGVkZJTL+7zhAowQotB/kPv370doaKhTgiJyN6qiQpIkiBKOfCiFVLWJSGO88K3bYS5CVJCqlu6PVdVW+j9qichFmIu4HeYiRHQzrFYbli/dia8/3Yr01CwAQMNm1TFqQnc0bFZd4+icKzPbguNnEnHiXBLi8m7nL+NiUlqxz9PJEiqHBqByaAAqhfghPNgf4SF+CA/2Q2igH0ICfREa5INgfx/oPWSGkCRJudeFyW3/5ZN/vdVqxdFQM5rWrQqDwflddVRVwGK1IdtiL8hk5xZusi1WZOfk3jsKOleX5Ti2u7p9juW6olBucSPvWjs5VgXKNUU2VQjHfioC9QYKgDei1AWYkJAQR2Wpbt26+ZINRVGQnp6OsWPHlkuQRBVdg1vrlPif1ORjRI2G1VwUERGVGtt+uA3mIkRFq9+8Ronb6PQyajVmLkJU4TAXcRvMRYjoZv2z5yTefWUVTsclAABq1KqMhx/vhrYd67r9jJfktCwcPBGPQ3EXceTUJRw7nYCzl1KK3D4kwAfREcH2W+VgVI0IQmR4IKLCAhEe4n+1EEEuIcuS/VowJgMQ4FPyE8pIUe2zfCw2e1HGars668diU2DLm6GiqLApChTFPjvI0cJNUaGoqmOGC4SAKgSEsE+Cyfv/JAGQ8trHSVdnzxhy28zlzbSxt0mzXz8nMz0V9b+d6vT3XOoCzNy5cyGEwMiRIzFjxgwEBQU51hmNRtSoUQPt2rVzeoBE7qBhh/qIbVwdpw6eLbQQI+tk9B51B3xd8IuMiMhTMRchKlpsgypo2Lom/ttzMt9ZZXlknYzOA1ogOMxfg+iIiDwDcxEiulEpVzLwybvr8cuKvQCA4FA/jJrQHXf0bQqdGxYaFFXF0dMJ+OvAaazfcRGf/vYZLiSmFrpteLAfalULR82qYYitGobYKmGoUTUUgX68HqE308kydCbZXvCpYJL0Gs+AGTFiBAAgNjYW7du3L5cpT0TuSpIkvPjdU3jy9heRmpjmaAOS15asXpvaGDl7mMZRElGheNap22AuQlS8Z957EFMGvYPE+BTHdenyTqiMqRuJsTMGaxgdERWJuYjbYC5CRKUlhMCmn//Bgjd/RmpKJgCgz+BWGPl4NwQEus/JuaoqcPjUJew6cAp7Dp3F30fPIyPLUmC7mKgQNKgZiXoxlVGneiXUrhaOkEDfQvZI5H1u+BownTp1gqqqOHLkCC5dulSg3/Ttt9/utOCI3El03Sr46O+3sHL+Ovzy2W9Iu5KOyNjKuPPRHuj5cBcYK2Bll4jAgx5uiLkIUeEqVw3FvLXPYPWSP/DLNzuRcjkd4VHB6HN/e/S871aYfU1ah0hEhWEu4naYixBRcdJSs/DuKyuxZf0BAEBs7QhMnNoPtzRxj1awSSkZ2PnPKWz/Ow5//nsayWlZ+db7mo1oUicKJjUNd/XqiMZ1qiKAs1qIinTDBZgdO3Zg2LBhOHXqFITIn+VJkgRF4UXGyXuFVA7C8On3Yvj0e7UOhYjIYzEXISpaQIgf7pvQA/dN6KF1KEREHou5CBEV5fCBc3j52W9x8XwydDoZ9z/SCUMe6gi9oWJfMP50/BVs/usYtvx1HP8cO49rf7X5mg1o2aAaWt5SHc3rV0Wd6pWgKgrWrFmD1g2rczYgUQluuAAzduxYtGrVCqtXr0ZUVJTbXyiKiAgAhO00kLMJEDmAoQFg7ABJcr9+rHQThGS/lXUf5DLMRYjIE51LT8Uvp48iy2pF3ZBwdI6uCb3MXMQrMBdxO8xFiOh6Qgis+PZPfDRnHWw2BVFVQ/Dc7HtQr2FVrUMr0rlLyfj5j0PYsPMITpxLyreuXo3KaNekBm5tXAONa0dBr89fQFJZaCYqtRsuwBw9ehTff/89ateuXR7xEBG5lFAzIFKeBXLWAZAAyAAUQK4CBL8DydhU4wipvEnCfivrPsh1mIsQkSfJttnw/LZ1WHbM3qZEliQoQiDC1x/vdLoT7aKqaxwhlTfmIu6HuQgRXctiseG92avwy4q9AIAOXRpg8rQB8A+oeNd6SUnPwoadR/DzH4fw99HzjuU6nYyW9aPRqVVtdGxRCxGhARpGqS1VFciyWpFltSLbakOmxYocmy33psBiU5Bjs8GqqLCpCmyKCkVVYVVVqKqAKuw3RVUL7RAqwZ7vSZIEWZKgkyXIkgy9LEGWZehk+88GnQ56WYYkBA6nZqLSqbMwG00w6nUw6nQw6fUw6e33xtx7vY4n71REN1yAadu2LY4dO8ZEg4jcnhACIvkxwLIjbwmA3LM41HiIy8OB8B8h6WtqFSIRFYK5CBF5kie3rMLak0cdf6AruT0/ErIy8OC677C83wNoFBahXYBEVABzESLKk5qcielPLcWBfachyxJGP9EDg+5vV6FmxgkhsP/IeSzbsB8bdx2F1WY/7iFLElo1rI5e7eujY4taCPSw67hkWaxIysjE5YwsXM6031/JzEJyVjZSs7KRkpWN1OwcpGbnICPHgvQcCzIsFmRarFqHXqhFx5eXuI1elmE26GHW62Ey6OFj0MPHYIDZYLD/bDTAbNDD12CAj9EAH4MBvsarN/tjI3yNBvgZDfAzGXPXGWHS6yrUv2t3UqoCzN9//+34ecKECXjqqacQHx+Pxo0bF+jz16RJE+dGSERUXqy7Acu2IlaqACwQ6R9DCp7tyqjI1XjhW7fAXISIPNGBpItYc/JIoetUISBBxXv7tuHDOwa6ODJyKeYiboG5CBFdLykhFc899gVOHb8EXz8Tnn/1HrRuX0frsByyc6z4+Y9D+P7XfTh2JtGxvE71SujdoQF6tKuPSiH+GkZ489JzLDifnIoLKWm4kJKK8ylpiE9Nw6W0DFxKy0BCWgbScnLK/DpXCxh6GK+dcaLTwaCToc+dpaLXydDLMuTcWS2yLDl+vp4Q9jxP5M2UEQKqqkLJnTWjqAI2VYVVsc+usSoKkq5cgdnPD9bcx/ZZOAosNhusqurYt01VkZ5bTHI2nSTB12iEn8lekPHLLcz4mQzwMxodxZqCP9vvfXMLOnk/+xoNXlPQKVUBplmzZpAkKd/F5UaOHOn4OW8dLzZHRO5EZK0CoINj1ksBCpC9EkK8zOvBEGmMuQgReaKVJ/6DTpKhCLXQ9YoQ+OX0MWTZrPDR8wK3RFpiLkJE1zp/5jKee+xzxJ+7grBKAXhl3nDUqFVZ67AAAGkZ2fj+1/34et0eJKdlAQBMRj16tquPQV2boEHNSI0jLJ1sqw1xiZdxIvEK4pIu4/TlZJy+nIIzV1KQlJFZqn2Y9DqE+voixM8Hob4+CPXzQbCPDwJ9TAg0mxHsY4a/2YgAkwl+JiP8cwsEfqaKM+PDarVizZo16NOnT4GCPwAoqgqLTUG2zYYcq81xn5X7c5bFimyrFZlWG7KtVmRZrMi0WpFlsdlbreU+zrRYkZk7AyjLkvfYvg6w56VpOTlOKWwB9lZsPsZrijNGI3yvKdbkzc7xMRqumbGjh68xb0aP/bH5miKZKXfmj7mCtWMrVQEmLi6uvOMgInI9kYySTxe05N48ayoukbthLkJEnig5Jwsl/VmvCoE0Sw4LMEQaYy5CRHnOnU7C02M+RVJCGqKiQ/HqguGIrBKidVi4nJKJr9ftwfe/7kNGln0GRJVKQbinezPceXvDCttiTFFVnLqcjMPxCfjvYiIOX0zAsUtJOJecWuwRmyCzCVWCAxEVFICooEBEBfojItAflQL8UdnfD5UC/OBvMlaIIkp50skyfIwyfIzlkyuqqsgt0FiQkZN7b7EiI8derMmwWJCR274tIyf/48zc7TIs+Z+fN/k3r8hTHvSy7Lg2jv2aObrc6+fYizMGney4zo79ujsybFmlK+zdcCyl2SgmJqZcXpyISFO6aKCkwx5SCACTK6IhjUhwwoVvnRIJFYe5CBF5omoBwSj88qxX+eoNCDZVvIv4kvMwF3EPzEWICADiz11xFF+q16yE1xaMQGi4thesT8/Kwecrd+HrdXuQY7EBAGpWDcND/dvgjrb1KtRMACEEziWn4u9z8dh/Nh7/nIvHofhLyLLaCt0+yMeMWuGhqBkeiuqhQageGoxqIfb7ADOP1biCLEvwz50dBCf8U1dVgWybLV9BJq8Qk5Fb3Mmy5F+eZb16n221IdNiv897nG21Istqg+WaGag2VYXNot5QgUfJyS77GyxEqQow11qxYkWhyyVJgtlsRu3atREbG1vmwIiIypvkczdExsfFbCEDvkM9/mwJryck+62s+yCXYS5CRJ7i7joN8eaerUWu10kS7q3bGEadzoVRkcsxF3E7zEWIvFNaahb+b+ISR/HljQ8fQnCodtdQsSkqftr0Dz5etg1XcluN3VIzAg/1b4uOzWtBlrX/blBVgWMJSdh16ix2nTyLv06fQ0J6wVkGZr0edSPCUS8iHPUjK6FO5XDUCg9FqJ8Pj8l4GFmWHNeACXfyfx9VFcix2ZBjU3Lv7bfrr5ljVRTH9XRsigpFVWFTVSQnX8HYV50bE3ATBZi77rqrQN9TIH+/09tuuw3Lly9HSIj20++IiIoi6WMh/MYCGR8UslYH6KpB8htZyDoi0hJzESLyFBG+Afhfy9sxe/fmAut0koQIX3883rSdBpERUXGYixB5H6vVhplTvsaZk4kIjwjE7HnDNS2+bP87DnO/3IyT5y8DAKpHhuDx+zri9ha1NC9YXEhJw+/HTuL346ewM+4MkrPyzyrQyzLqRYSjaXQUmlSNRJOqkYgJC4ZOrjgzdcg9ybJkv1bMTbZjS0pKwlgnxwQAN/wve/369WjdujXWr1+PlJQUpKSkYP369WjTpg1WrVqFLVu2ICkpCVOmTCmHcImInEvyfxJS4HRAjrhmqQEwD4AU9g0kOVCr0MhVhJNu5DLMRYjIk4xt0hZvduyNaP+rOYdOktA3tj6W93sQlXz8NIyOXIK5iNthLkLkXYQQePulFfj7r5Pw9TPhpXfuR3hlbY4VJCVnYOr7qzHpjR9x8vxlBPmbMWV4FyydPRydWtbWpPhiU1TsOnkWr67bjDvnfYYub3+CF1b+inUHjyI5Kxs+Bj3a16yOJ7q0xxcP3YPdzz2GHx69Hy/27Yq7mt2CmpVCWXwhj3bDM2CeeOIJfPTRR2jfvr1j2R133AGz2YwxY8bgwIEDmDt3LkaO5FnjRFTxSZIE+A4DfIYAtiOAsAD6GpDkIK1DI1dxxkELHvRwKeYiRORp7qnTGINrN8KRK4nItFlRIzAYoWZfrcMiV2Eu4naYixB5l+8+/wMbVu+HrJMx9dV7UbNOpMtjEELg5z8O4a0vNiE9MweyJGFIz+YYddetCPAzuzweq6LgSGom/ly9ERuPxOFKZpZjnSxJaFw1Eh1rx6B9zRg0qhIBo57tVMl73XAB5vjx4wgMLFjlDQwMxIkTJwAAderUQWJiYtmjIyJyEUnSAYYGWodBRKXAXISIPJEsSagfWknrMIioFJiLEHmPQ/+cwafzNgAAxj/dG63a13Z5DMlpWZi9aD1+230MAFA/NgLPjeyG+jUiSnimcwkhcCg+Acv3HcSqf/7D5cwsAPEAgCAfMzrXjUXnOrFoVzMGwb6uLwq5I1UIqEJAQEAIQOSeUSFBgiQBMiT7esEzLdzZDRdgWrZsiaeffhqff/45KlWy/4GQkJCAZ555Bq1btwYAHD16FNHR0c6NlIiIqBxIwn4r6z7IdZiLEBGRJ2Eu4n6YixB5h4y0bLw69QeoiorOPRvhzrtbuzyG/UfO4f/mrcaly+nQ62Q8MqgdHujbGnqd61p2Xc7IxPL9h7B830EcuXS1sOynl9GncQP0aVwfrWOiXRqTKwghkGbNQXJONq7kZCHNkoNUazZSLTlItWQj3WpBps2CDKsVGbk/Zys2ZNtsyFasyFZssCgKrGreTYVVVWBTVahCwCbUG4rnqa8PQyfJ0MkydJIEvSTDoNPBIOmgl+0/G2UdTDo9jDodTLk/593Mevu9j84AH70ePnoDzLk/++oN8NEb4ac3wEdvgJ/BCD+9Eb4GA3z1RsgaX1fI3d1wAWbhwoUYMGAAoqOjUa1aNUiShNOnT6NmzZr46aefAADp6el44YUXnB4sERGR07Hth9thLkJERB6FuYjbYS5C5PmEEHh39irEn7uCiCrBmPhcP5deX0VVBb78eTcWfPs7FFWgemQIXn68L+rGVHbJ6wshsP9sPJbu2o81B47AqigAAINOhzvq1US/RvWQcuQA+vXpAoPh5i54rpUcxYb4zDRcyEhDfGYaLmamIyE7HQlZGUjMykBCdgYuZ2chOSfrhosk5UkRAopQAFVx+Wv76A3w0xvhbzDaizMGI/z1RvgbTPA35v5sNMHfYESAwYQAg8mxLsBgQoDRhECjGWbdDZciPMINv+t69erh0KFDWLduHY4cOQIhBOrXr4/u3btDzr1g0l133eXsOImIiIgAMBchIiIibTEXIfJ8m3/5F7+t+weyTsazL98NvwDXtdTKyrZixkdrsWnXUQBAj3b18OzD3eHnYyz311ZVgV8OHcWibX/h73PxjuUNoyrjnhaN0LtRPQT5mGG1WrHm6MFyj+dmZVotOJF6GSdSL+NU2hWcSkt23F/KSr+hffnoDQg2mhFkNOcWEkwIMJjzFSN8cwsUZr0eZp0eZp0BJr0eJlkHo04PgyzDIOtgkHX22SuyDFmyz2SRJQkSJCC3vich97wKYW9RZrFZsH79r+hyR1dIOh0UVYVNqLBdM6PGqiqw5M6yycmdeZOj2GBRFWTbrMhRFMesHPssHSuybDZk2izIstmQZbPm/mxFZu4tw2aBmtv6LMtmRZbNisTsjDJ9LkZZh8DcYkyA0YRAgzn3sX2ZfWwL/pw37n56o0sLoc5yU2UnSZLQq1cv9OrVy9nxEBERuRbPOnVLzEWIiMhjMBdxS8xFiDxXRno2PpyzDgAwbNTtuKVJNZe99uWUTEx+60ccirsIvU7GUw92wcCuTcr9oLOiqlh74CgWbNmBYwmXAQBGnQ59GtXDsNZN0SQ6slxf/2ZlKzYcS07EwSuX8N+VSziWkoTjKUk4l5Fa7PNMOj2q+AYg0i8AET4BqOzjh3AfP1Ty8UO42Q+hZl+EmnwQYvKBWa/tDB+rVY8AWY/KPv4unW0khECOYkOGzd5iLd2agwyrxfE4w5qDtNzl6VYL0iw5SLflPrZYkGbNQbo1B6kW+70AYFEVJGZnIjE786ZikiXp6oya3Ht7kcaUu9xeGAsw2mfgBBhyZ+nkzszJK5iZXDwTp1Sv9u6772LMmDEwm8149913i9124sSJTgmMiIjIFdh33T0wFyEiIk/FXMQ9MBch8h5ffrwZlxPTUKVaKIY83NFlr3s+IQUTX/8BZ+KTEeRvxmuT+qN5vfK9lpSiqvj5wBEs2LwTxxPthZcAkwkPtm2GYW2aItzfr1xf/0Zk26w4cOUS9ieex9+J8Thw+SJOpCZBKeIC9WFmX9QMDEVMQAhqBISgekAwYgJCUM0/CCEmH7ecSeFKkiTBrDfArDcgzOxbpn2pQiDDakGqJRtpuUWZVEs2UizZSLPkFLss77FN2K+dk5K7TVkYZV2+Vmq+Bvv1b+RsS5n2W5RSFWDefvtt3H///TCbzXj77beL3E6SJCYaRERE5HTMRYiIiEhLzEWIvMPpuAQsX7oDADD+6T4wGl1zpvyxMwl44vVlSEzOQFR4IN59ZjCqR4WU62tuPXYSb/yyFUcuJQIAAs0mjLi1BR5s2wyBPq5ruVaUi5lp2HHxDHZfOou/Lp3FkeTEQq/JEmw0o0FoZdQPqYy6QeGoHRSG2kHhCDH7aBA1FUaWJPtsFaPppp4vhEC2YkNabpEm1ZqTr0iT93PejJu03PUZNgvSLVdn6mQrNgD2mTiWnCxcycnK9zpqVtkKO0Up1W+RuLi4Qn8mIiJye0Ky38q6DypXzEWIiMhjMRdxC8xFiLzDwnfXQ1FU3Hp7PbTuUMclr3nsTALGvfIdUtOzUbNqGN55ZhAqhwaU2+udvZKCV9b+ho2HTwCwF14ebtcSD7RthgDzzR0gd4ZMqwXb4k/ht3MnsC3+FE6kXi6wTbjZD83Co9AkPAqNQyPRILQyInz8OZvFw0mSBB+9AT56Ayr7+t/0fmyqerWdms2CdKsFmVb79W4ybRZcTEzEOMxwYuR2N13GtVgsiIuLQ61ataDXu7ZvGhERkdOw77rbYi5CREQegbmI22IuQuRZjh46jx1bDkOWJYx+oodLXvPUhct4/NUfkJqejYY1I/H20wMR5F8+MzcsNgWf/LELH279Ezk2BXpZxv1tmmHc7W0R7KvNjJdTaVew/sxRbD53AjsvnoFFVRzrJAANQyPQJqIaWlWORrPwKojyDWCxhW6aXpYRZDIjyFT4v/ekoCSMK4/XvdEnZGZmYsKECfjss88AAEeOHEHNmjUxceJEVKlSBc8++6zTgyQiIiLKw1yEiIiItMRchMgzffXJZgBA556NUa1GeLm/XsKVdDzx+jJcSc1E3ZhKmPvMIAT6lU8h5OCFS3hu+TocvmhvN9a2RjW80KcLalcOK5fXK4oQAoeTE7D29BGsPX0Y/11JyLe+mn8QOlethY5RNdA2onqRB8qJ3Il8o0947rnnsH//fvz2228wm6/+J+jWrRu++eYbpwZHRERU3vIufFvWG7kOcxEiIvIkzEXcD3MRIs9z/Eg8tv32HyRJwtBRt5f766Vn5mDSG8twITEV1SKD8e4zg8ul+GJVFLy7aRvu/XgpDl9MRIivD94c3BuLRwx2afHlVNoVzNm3FV2Xf4ReKxdh7v7f8d+VBOgkCR0iY/B/rbpiw4BHsGXgWLzUtgd6VK/L4gt5jBueAbN8+XJ88803uPXWW/NN+brllltw/PhxpwZHRERXCSEAyw4Iy++AUCEZmwKmOyBJBq1Dc29s++F2mIsQEWlDCIEzmYdwNG03FGFDFZ9aqB/YHnqZuUiZMBdxO8xFiDzP95//AQDo1KMRqsdWKtfXUlWB6R/8jGNnEhEa5It3nx6MkEBfp7/O2SspeOr7Ndh/Lh4A0KNBbUzrewfC/J3/WoXJVmxYd/oIvjm6H9viTzmWG2Udbv9/9u47PI7qevj4d2a2qXfJsi333ivg3g02vfdqCC0QIAmBkISSQt4E+BmS0AOEZkwzphiMATdcMO69F1m2utWlrTPvHysbG0urXWm1K2nP53n2kbV7752jkbw6mjP33vZdOadzb6Z27EGitXmWXBOipQi4AFNYWEh6evppz1dVVckafEII0UwMz1GMktvBvQvQAAWj2g1qGiS9gGIeFO4QhQgZyUWEECL0Kt0lzD30V47U7EZFA0DHQ5T2Cpd3eoguMQPCHKEQoSO5iBBtS3lZNcu/3Q7AJdeOavbjvb3gR5Zv2I/ZpPHMAxfRPj0h6MdYtT+b+z74grIaO3FWK4+fP4WZA3oH/Th1ya+u4O1dG3h3z0aK7dWAdz+XsZldubT7AKZm9SDWbA1JLEK0BAEXYEaOHMkXX3zBPffcA3AiuXjllVcYNar536SEaIpjeSV89+73FOUUk5iewORrxpLeqXnvbBCiqQzDjnHsBvAcqX3mp03p0Isxjt0IqZ+jaB3CEl+rF4xlO+Su05CSXES0ZmXFFSx+fzX52UXEJ8cy4dIzad/t9It4QrQkuuHh7QN/oshx2Pv5SbmI3VPBuwcf4xc9ZpNq7RiuEFs3yUVaHclFhGhbFn+5GZfTTbde7ejVr32zHmvdjsO88L53ts2vr59E327tgjq+YRi89cMG/t/CZXgMgwHtM5h9+bl0TAp+kefnNhYd5fUda/ni4E7chg5AZnQcl/cYxBU9BtExtvljaAs8ho5bd+MxPLgMD3annQq1hjx7MapbRTcMdEPHqOOXv4KCoiioJz6qaIqKpmi1H1VMqgmTomFSNLlpIEQCLsA8+eSTnHPOOWzfvh23282zzz7Ltm3bWLVqFUuXLm2OGIVoMsMwePevH/PWE++j6waapqLrBq89MoeLfzWT25+6AVUNeEskIUKj5gvwZNfzog6GHaPqLZR42eyzUWTZj1ZHchHRWn3y/Ne8+sf38bh1NJM3F/nfnz/mnBvHc8//3YBm0sIdohB12lX+AwWOQ3W+ZmCgGx5WFc7j/I73hDiyNkJykVZHchEh2g7DMPhy3noAzrloWLNekC4uq+KP/1mAbhjMHNuPiyYNDOr4TreHRz//hnkbvbN5LhzUl8fPn4rNHPDl34Cszstm9qbvWZ3/03WLkekdubnvCKZn9cIUQdfb3LqHMlclpa5ySpwVlLuqqHBXUeGqpsJdRaW7BrvHQY3Hgd3jwO5xYvc4cOgunLUPt+E5feAEmLNhZdDjNSkaZtWEWTFhVk1YVDMW1YxZNWFVzVg1CxbVjFW1YNXM2FQrUZqVKJOVaM3mfZhO/hhFrCmKaJMNTZG/bY4L+H/g6NGjWbFiBU899RTdu3fn66+/ZtiwYaxatYqBA4P7xiFEIEryS/no/z7nq9cXU15cQVJ6AjNmTeGS+87luznf88af3jvR1q3/9Gb28ewviIq1cdMTV4UjbBFihlEDKChK69nMzbAvwDtht76/rD1g/wykACMihOQioqUqL65g3n++5qvXl1BSUEZ8cizTbxjPJfecw/rF23nxoTkn2rpdP+UiC99cjsVm5q5/XheOsEWIuXQHBmBRW8/SGzvKV6KgYqDX+bqOh23lyzkfKcCIyCC5iBBtx4G9+RzYm4/ZYmLyjOZd2vvpNxdTXFZFtw4pPHjjlKAWe6qdLu6Z+xkr9h1CVRR+N308N5w1tFkLSoc9Ndy8+EO+r93fxayqnN+lHzf3HcHAlODO7GkJ3LqHIkcp+Y5iCuzHKHSUUOQoo9hZSrGjlGJnGeWuqqAfV0VFMcCsmVAVtfbhnd3ycwYGhmGg89MsGY+h4zE8eIzT8zi34cHt8VCDI+hx21QLMaYoYk3RxJqiiKl9eD/3PhdriibW/NPncaYYYk1RWDVL0OMJp0aVQAcOHMj//ve/YMciRKPl7s/nvrF/oLSwHN3jfUM5llfKnL/PY9FbS6mpqPHZ/4OnPuXy31xATDNseibCzzAMsM/HqHoN3Du9z5n6ocTMAtt5LX/KpVFJg7c1GtUhCaVNkrtOWyXJRURLU3y0hPsnP0FhzrETuUhZUQUfPfsl37zzPaql/rTbMAw+f3UxV//2fJKaYQ1w0TJsLV3J8sJPyKnZC0C6NYsxaRcwPGlyi89FHJ6aeosvx7l0B4ZhtPivpUWSXKRVklxEiLZhxXc7ABg+qjtx8c23Gfzy9fv4ds1uNFXh8TtnEGUzB23sKoeT29/5hLXZR4g2m3n2ivMY17NL0Mb/uZzKMv629lsWVB6ESm/h5aqeQ7hrwFlkxsQ323FDwWN4yKspJqcmn6M1hRytKeRITSG5NUUUOUrRG8iHAFQUEixxJJrjSDDHEm+OIdYUTZwpmhhTFNGaDZtmwaZ5Z5FYNTMW1YK1dvaJRfXORjGpJjRFQ3d7WLBgATNnzsRsbvzPjWF4izFuw4PbcOPWPbh0N27DjUt349TdOHUXLt1dOyPHiVN34dBd2D1OHLoTh8dJjcdBtcfu/ei2U+2xU+2uoar2o0N3AWDXndidToqdZQHHalHNxJ0o1EQTZ/aev1hzDHG15zLOHE2sKebEv+NM0URpthaZiwZcgLn22muZOHEiEydOpGfPns0RkxAB+8dN/6a06Kfiy3G6R6foyLHTnv85p93F2q82MuGK0c0ZpggDwzAwyv8CNW/hnUVSy70Do+zX4N6BEvdg2OLzi6kHuDZzyt4vp1BB6xrKiNoUJQjrrjd53XYREMlFREv07C9fO6X4cpzu0SkrqkD36Cg+ln/QdZ3VCzYy46YJzR2qCINv8uawuOADlJNykQJHDvNy/sPh6t1c1OGOFvnH4nEp1g7srVznswiTZGnXor+GlkxykdZHchEh2o7vv/Uu1zV2Ur9mO0ZVjZN/vvkdANfMGE6vzsHb/6/S4eQXb89j/eGjxFotvHrdJQzJygza+Cercbt4YetqXtr2Aw6PGwW4oEtffj10Ap3iEpvlmM3FMAwKHSXsq8zhUFUuh6pzya7OI6c6v+4lwGqZFI0MWwoZtmTSrEmkWhNJsSSQUvsxyRJPnDkGTQnesmt6vdeCAqMoinfvFzSg+WaYuHUPVZ4aqt01VLprqKp9VLqrqax9zvvv6pOeq6bS5f23jo5Td1HsLAu4eKOinlSsiSautkATe6Jgc2pR5+SZOGa1+ZbqC3jk2NhYnn76aW6//XbatWvHhAkTmDBhAhMnTqRPnz7NEaMQPh3cdpit3++s9/WGii/HVTcwS0a0Us6VtcUXOPXWwNp/V72KYZ2EYhkZ6sj8pkRfiVHzgY8WOkq0LFsjIofkIqKlyT9UxA9fbaz3DvTjuYiv2QGqqlJdaW+mCEU45VTvYXGB9/e4UUcusvbYIvrEj6BvfMvNRYYlT2d18Sc+WiiMTD43VOEIEXaSiwjRNuQcKuLgvgI0TeWsCb2b7TgvfbSC/OIK2qclcOvFo4I2bpXDyW1vf8yGw7nEWa389/pLGNSxeZb++jp7N4+t+Yaj1eUAnJHekYnVZm4b1bRZGaFS7a5hW/l+tpbtY1f5QfZXHaHKXfd1QKtqpkNUOu2j0mgflU6HqDTaR6WRYUshyRKHGsTiSltkUjUS1FgSzLEB9zUMg2qPnUp3NRUub4Gmwl1FpavGu5dO7fPe/XR+alPuqsJluNHRKXNVUuaqhAAv81pVCxZH83xvAy7AvPTSSwDk5eWxZMkSlixZwrPPPsvdd99Neno6ubm5QQ9SCF/2rNsflHGyercPyjiiZTGq3wE06p89omFUvdOyCzDmQRjRt0D1a5y+F4wClnEQdUGYohMi9CQXES3Nvs2H/Fv+xzCgngKM7tHp2KPtrZUt4Ifihaho9d69qKCyuujLFl2ASbV2ZGL6NSwpeJef5yIKClnRfRmePCNs8QkRapKLCNE2rFmxB4BBI7o02/JjOfmlfPjNJgB+d/MUbNbgFCvcHp0HPlzAhsO5xNu8xZeBHYKfS5Y77Ty6ZhHz9m8DoENMPL8fPplp7bvx5ZdfBv14wVLjcbCldA+bS/ewpWwv+ytz0H+WsGuKSqfoTLrGtKdzTCadotvRKTqTdFuSFFnCRFGUE3vFZNhSAupr9zhPzKqpcFVRfmJWzfFCjvf54zNuKmqfr3bbMTBw6E4qnc5m+boaPbcmLi6OpKQkkpKSSExMxGQy0a6d/NEoQs/kY031kymqgqGffnVEVVXa98ig/5jWeadS+bEKcnYdxWKz0HVQJzRNC3dILYtrO/UXX/C+5t4eqmgaTYn7HZi6YVS9DJ5s75NqinfmS8xtKErzTZVs82Td9VZLchHRUpgDyEXqez45PYER01rnxs0VNQ725RdjNmn0ykzFLLnIKY7W7PO5dISBTp79QAgjapzx6VeRZGnH94UfUOg4DIBNjWVEygzGpV2BSW35d7+2WJKLtFqSiwjRum1eexCAYWd2b7ZjvDJvFR6PzqhBXThrYJegjGkYBk8s+I6lew5gNWm8dO1FzVJ8WVuQw33ff0ZOZRmqovCLfmfyq8FjiDKZcblcQT9eU+iGzt7Kw6wv2cnGkl3sKD9w2lJimbZUBiT0oF9CV7rHZtEpOgOz5C9thndfHQup1sSA+nkMvXa5tGpyCo6yiJeCHlvAV+x+97vfsXTpUjZt2sSAAQMYP348Dz/8MOPHjycxMTHoAQrRkKFTBqCZNDzu+v+wNdvMmC0mHNUOPO6fliRTNRXNrPHb1+9udWtWlxaW8dJv3mTJeytwu7xfe0r7JK5++BIuuOvsVvf1NBvF5keb5ttoL1gURYHoKyDqctDzwHCDlimFFxGRJBcRLU3/0b2wRltwVNd/x5RmUolJjKWqouaU5VFVTUVRFH790q1oWuu60668xs7/fb6c+Wt34PJ4c5GkmChumTSCG8YPR62n4BRpzKq1wTYmpeE2LcHAxIkMSJhAhbsYj+Em3pSCJhcuRASSXESI1k/XdbZsOATAoOFdmuUY+48Us3DlDgBuv2xM0MZ9e81G3l+3BVVReOaycxmaFdwVXdy6zr82r+BfW1aiGwYdYxN4duz5DE/vGNTjNFW1286G0l38WLyVH49tp9RVccrrGbYUhiT2ZlBiDwYk9Aj4wryIDJqiEmeOIc4cgyW2hSxB9s9//pO0tDQeffRRLrzwQvr27dsccQnht8S0BM6ZNZkFr3xT5wwXRVG4+J6ZzLh1Cv979D2Wf7gaj1tHURXOPHcYNzx2BT2GtK4NzCtKKvnVmD+Qd7AA/aSCUvHREv59z38pOnKMWX+7JowRtiC2c6DqRah301gVxXZ2KCNqEkVRQGueDfUilWx82/pILiJamui4KC68czofPPMFhlFHLqIqnH3jBK568ALe+tsnLPlgtffmCQWGTerHdQ9fRJ+RzXfnZXOodji5+fkP2JdXjOekr7mkqoanP19OTnEZf7h0ShgjbDn6J5xFTvWen+3/8hMFlQEJwVsPvrkpikK8OTXcYbQpkou0PpKLCNH67d+dT2V5DdExVnr2aZ6/sV/9eBWGARNH9KBv14ygjPnDgcP8/aulAPxm2jim9AluDllUU8UdS+axtjAHgEu69efxM6YTZ2kZN4u4dDdrjm3jm7zVrC/ZecoslyjNypDE3gxL6sPQpN5kRqWFMVIhfhJwAWbDhg0sXbqUJUuW8PTTT6Np2onN5iZOnCiJhwiLu/7vJoqPHGP15+vQTCoet37i44QrRnHzX67CZDbxyLv3U/ViNaUFZcSnxBGXFPiGUC3BB099St6BglPuoD3Ze3+fx9k3T6JjT7lQr0RfjVH9PzBqOL0Io4ISA1FXhCM00ZLIRYtWRXIR0RLd+OilFBwuYsn7q0/LRUZOH8ydT12HxWbhNy/eyt1PXUdJfhmxiTHEp7TOXOS9lZvYm1eMXkfBCWDuqs1cfOYA+ncMzsWG1mx40hSWFcyjxlOF8bNcREHBpJg5K1X2T4l4kou0KpKLCNH67dzqLTD0HdgRzRT85VNzi8pZ/KN3j5nbLgnOjRZlNXYe/PgrPIbBhYP6cvOoYUEZ97h9ZcXc/O0HZFeWEme28pezzubCrv2CeozGOlB5hEX5P7C44EfKXVUnns+0pXJGygDOTB5Av4RumFVZJUS0PAH/VA4ePJjBgwdz7733ArBp0yZmz57Nvffei67reDy+9lo43fPPP88///lPcnNz6d+/P7Nnz2bcuHEN9luxYgUTJkxgwIABbNy4MdAvQ7QxFpuFJ+b/ji3Ld7Dof0s4lldKWscUpt88ib5n9jxlOa6Y+Ghi4qPDGG3TGIbBFy9/U2/xBbzLnCx87TtmPXltCCNrmRQtA5LewCi5DYxS4Hhi5QElASX5VRRN7uIUojWRXES0RCaziYfeuIuL7jqbr99aRmHOMZLbJTDtunEMGNP7lFwkKtZGVKwfS2S2YO+v2lxv8QVAUxXm/bBVCjBAtCmOW7o9xhsH/kyluxQV79IGOjpWNZrrujxEkiU9vEEKIQIS7FxECBF6+3fnAdC9d/PcuPrRNxvRDYMz+neiR1bTZ2IYhsFjn39LfkUlnZMTefS8KUFdev7H/MPctvgjSp12OsUm8sbUK+gWnxy08RvD4XGyvHADC3K/Z1fFoRPPJ1vimZJxBpPTR5IV3U6W4BctXqPKghs2bGDJkiUsWbKE5cuXU15ezpAhQ5g0aVJA48ydO5f77ruP559/njFjxvDSSy8xY8YMtm/fTqdOnertV1ZWxg033MCUKVPIz89vzJcg2iBFURg0vh+DxreM6nxzcdQ4KS+u8NnG0A3yDhaEKKKWT7EMhvSlUPMFhvNHUBQUyxlgm4nizx4xom2TjW9bJclFREukKAp9z+xB3zN7hDuUZpdb4jsX8egGh4vLQhRNy5cZ1ZXf9nmJrWUr2Ve5BQODztF9GJw0DosquUjEk1ykVQpWLiKECI/9e7w5fLdewd+83u50MX/pVgAunz40KGN+tnknX27bjaYoPHXpDKItwduD7bMDO/j1is9x6h6GpLbnv5MvI8UWvhuXj9YUsiB3Bd/krabCXQ2ASdE4M2UA09qdxbCkPmhK8GctCdFcAi7AJCUlUVlZyeDBg5k4cSK33XYb48ePJz4+PuCDP/PMM8yaNYtbb70VgNmzZ7Nw4UJeeOEFnnzyyXr73X777VxzzTVomsYnn3wS8HGFaM0sNjNmqxmXw1VvG0VVW+3yas1FUaIg+jKU6MvCHYpoYWTd9dZHchEhwi8uykpZtb3e1zVVITEmKoQRtXwm1cyQpAkMSZoQ7lBECyO5SOsTzFxECBF6uq5z4EQBJvizdRet3kV5pZ3M1HjGBGHP4byyCp5Y8B0Av5w4ioEdglc0emvXev74w9cAnN2pF7PHnk+UKXjFnUAcqS7gnUNfsqxw/Ym989KsSczMHMO0dmeRZJH3WNE6BVyAeeutt4KSWDidTtatW8dDDz10yvPTp09n5cqV9fZ7/fXX2bdvH2+//TZ/+ctfGjyOw+HA4XCc+Ly8vPzEv12u+i9gR7rj50bOUf3CeY6m3jCOxe99j8dd/19aE68eHfbvn/wcNUzOkW9yXkRdJBeJDPL+2LBwnqOLhvflg9Wb8Oj15yIzB/cM+/dPfo4aJufINzkvoi7BykWEEOFxrKgSe40TVVPpkJUS9PEXrtwJwEWTBqGpapPH++ei5VQ6nAzu0I7bxo5s8njHfbJ/24niy019hvPHEVOCEm+g8u3FzDm0kG/z16DX7pc3PKkv57Ufx/DkfmhK6GMSIpgCLsCcd955QTlwUVERHo+HjIxTK80ZGRnk5eXV2WfPnj089NBDLF++HJPJv9CffPJJHn/88TpfW7RoUWBBRyA5Rw0LxznqPrM93Wf63jj+wLG9HFiwN0QR+SY/Rw2Tc1S36urq5j+ILPvR6kguElnkHDUsHOeoJ/D7s7r4bFO6bxsL9m0LSTwNkZ+jhsk5qpvkIqIuwcpFhBDhkX+0FIC0jHhM5uAuZXWsrJp12w8DMP2s3k0eb8Pho3yxdRcK8KdzJ2PSglOM+C5nL79e8TkAN/YexqMjp4Z8L5UyVyVzDn3Fl7krcBvevbPOSB7AdV1m0j22Y0hjEaI5NWoPmGD6+X9uwzDq/A/v8Xi45pprePzxx+nVq5ff4z/88MM88MADJz4vLy8nKysLgGnTpmE2h2daXUvncrlYtGiRnCMfwn2Odq/bxz9v/g8F2cWomoKheydojr1wJPc8fxu2aGvIY/q5cJ+j1kDOkW8nzxRoLrLsh5BcpGWS98eGhfsc7c0v5vdzvuJwUSmqomBgYBgwpk8XHr1sKnE2yUVaAzlHvkkuIoQQbc/xAkxGZmLQx1784x50w6Bftwzapyc0aSxdN/j7V0sBuGRof/q3D85yaWvyD3Pn0k/wGAYXde3Po2dMC2nxxaW7+Ozoct47tJAqTw0AQxJ7c32XmfSJb/qSbUK0NGErwKSmpqJp2ml3mBYUFJx2JypARUUFa9euZcOGDfzyl78EvGs2GoaByWTi66+/ZvLkyaf1s1qtWK11//FnNpvlj4wGyDlqWLjOUf+z+vDatmdZ/80W9m86iMVm4cxzh5HZLfjrlzaV/Bw1TM5R3eSciOYkuUjrIOeoYeE6R307tuPj39zI2n05bD2cj9mkMqZ3F7qmJ4c8lobIz1HD5BzVTc6JEEK0PXm5JUDzFGC+XbMbgClnNH32y8Ltu9l0JI9oi5lfTR7d5PEA9pUVM+u7D3F43Ezp2J1/jpmJGsLiy9bSvfxrz3vk1BQA0DWmA7d2u4ghSU0/X0K0VGFbRM9isTB8+PDTprovWrSI0aNPf1OJj49ny5YtbNy48cTjjjvuoHfv3mzcuJEzzzwzVKEL0WKoqsqI6YO54rcXctE9M1pk8UWIFs8I0qMRnn/+ebp27YrNZmP48OEsX77cr34rVqzAZDIxZMiQxh1YAJKLCBEMiqIwskcWN08awXXjhrXI4osQLZ7kIgL5XggRSqXFVQAkp8UFddwau4tNu48AMH549yaNZRgGLy3/EYBbRg8nPS62yfFVOB3ctvgjKlwORqR15D/jL8KsBncJtvo4PE5e2vsRv9v8HDk1BSSa47iv1zU8O+y3UnwRbV5YlyB74IEHuP766xkxYgSjRo3i5ZdfJjs7mzvuuAPwLtlx5MgR3nzzTVRVZcCAAaf0T09Px2aznfa8EEII4bcwrbs+d+5c7rvvPp5//nnGjBnDSy+9xIwZM9i+fTudOnWqt19ZWRk33HADU6ZMIT8/vwlBC5BcRAghRAsguUjEk++FEKFVXubd3ys+ISqo427afQS3R6ddShxZGYlNGmvZnoPszC8k2mLm+jOHNjk2wzB4ePVX7C8/RmZ0HC9MvBibKTSzPPdUZPPUzrfIqfG+T53dbjS3dLuAWFN0SI4vRLiFbQYMwJVXXsns2bN54oknGDJkCMuWLWPBggV07twZgNzcXLKzs8MZohBCCNEsnnnmGWbNmsWtt95K3759mT17NllZWbzwwgs++91+++1cc801jBo1KkSRtm2SiwghhIhUkou0HPK9ECK0ysu8+47EJwS3APDjNu/fDSP6d2ryniqvfO+d/XLl8EEkRNmaHNucPZv4/OAOTIrKfyZcRFpUTJPHbIjH8PDuoS/59cZnyKnJJ9kSz+MD7uDeXldJ8UVElLDOgAG46667uOuuu+p87Y033vDZ97HHHuOxxx4LflBCCCEiRjA3vv35Rr317f3hdDpZt24dDz300CnPT58+nZUrV9Z7nNdff519+/bx9ttv85e//KVpQYsTJBcRQggRTpKLRLZQfS8cDgcOh+PE58d/VlwuFy6Xq5HRC38cP79ynpufv+f6+AyY6BhLUL8va7d7CzBDe7dv0rhbjuSzNvsIZk3lupEDmxzjoYoSHv/xGwAeGDyWgYnpTR6zoXNd6a7mH7vfZHPZHgDGpAzm9q6XEm+Okf8LAZL3kNBprnMc9gKMEEIIEVZBXPYjKyvrlKcfffTROi/OFxUV4fF4TtvoPSMj47QN4Y/bs2cPDz30EMuXL8dkkl/fQgghRJshuUhEC9X34sknn+Txxx8/7fnFixcTHS13oofCz/cdFM2noXNdXHgMgE1bNlBcuTcox3R7DHYf8m4sX5yziwUL9jd6rA+zCwEYEB/N2uXLmhSXYRj8pyobh8dNTy2azP0FLDiwoEljnqyuc12u1vBV7EZKtWpMhsa46j70KEnh+71Lg3bcSCTvIc2vurq6WcaVrEkIIYQIksOHDxMfH3/i87ruOD3Zz6elG4ZR51R1j8fDNddcw+OPP06vXr2CE6wQQggh2hzJRVqv5v5ePPzwwzzwwAMnPi8vLycrK4tJkyaRkpLS+MBFg1wuF4sWLWLatGmYzaHZcyNS+Xuu5712ALAzduxo+g3OqrddIHYeLECft5+4GCtXX3ZBo5cgq3a6ePzZ1wC459xpjOzcoUlxfbBvC3vW7MSmmXhhxtV0jkts0njH1Xeud1Yc5Mmdr1PmribFksAf+txK15j2QTlmpJL3kNApLi5ulnGlACMilmEYrPhkDZ/860v2rNuPyaIx6vwRXHLfeXQb1Dnc4QkhQiWId53Gx8efctGjPqmpqWiadtpdjQUFBafd/QhQUVHB2rVr2bBhA7/85S8B0HUdwzAwmUx8/fXXTJ48uYlfhBAiHH5ctJlPXviGHWv2oWoKI6cN5OK7ptNrWNdwhyaECBXJRSJaqL4X9S1HZzab5YJeiMi5Dp2GzrXbpQMQFW0N2vdkX473wm2fLhlYLJZGj7Nk+x6qnS46JSUwqnvnJu0lU1BTyf/b6J1B88CQcfRITmv0WPU5+VwvL1zP0zvfxmW46R7bkUf7306KNSHox4xU8h7S/Jrr/EoBRkQkwzD41y9f5bMXvkbVVHSP95fvN28v45u3l/GHuQ8w9uIzwxylECIUgrnuur8sFgvDhw9n0aJFXHzxxSeeX7RoERdeeOFp7ePj49myZcspzz3//PN89913fPjhh3TtKhdqhWiNXn/8I+Y+88UpuciyeT+y5MM1/PrFWUy9anSYIxRChILkIpFNvhdChJ7b7QHAZNaCNubuQ95lw/p0SW/SOF9s2QXAhYP7Nan4AvDUhmWUOe0MSM7glr4jmzRWQ77LX8Mzu97BwODMlAE82OdGbJrvWZhCRAopwIiItGTuSj574WuAExc8ADxu77//etVs3s1+gaSMxHCEJ4SIAA888ADXX389I0aMYNSoUbz88stkZ2dzxx13AN5lIo4cOcKbb76JqqoMGDDglP7p6enYbLbTnhdCtA4/LtrM3Ge+AOrORZ65878MOKsn7boE/05FIYQAyUVaEvleCBFax8saRlNnH57kcH4pAF3aN35Jv2qni9UHDgNwdr+eTYrnYHkJH+3zFmufOHM6JlVt0ni+rCrazP/tehcDg5mZY7ijx+VoSvMdT4jWRgowIiLNe/YLVFVB1+v+bet2uXl61gv85fOHQxyZECLkgrjsRyCuvPJKiouLeeKJJ8jNzWXAgAEsWLCAzp29SyDm5uaSnZ3dxMCEEC3V/Be/OWXmy8/pusE/73yVpxY81OS7H4UQLZzkIhFPvhdChJZq8hYH6svDGiOntgDTsQk38q7an43T46FjYjzd05KbFM9zm1fgMQwmd+jOsLSm7SPjy6ay3fx9x+vo6EzNOJM7e1yOKsUXIU4h/yNExDEMg11r99VbfDnuhwXrWTJ3RYiiEkKEy/FlP5r6aIy77rqLgwcP4nA4WLduHePHjz/x2htvvMGSJUvq7fvYY4+xcePGxh1YCBF2O9bsa/CP/m0r9/DVm8tDFJEQIlwkFxEg3wshQkmrnQ3iCVIBxuX2kFdUDkBWEwowi3ftB2BS725NugFnf/kxPjmwDYD7Bo9t9DgNKdDKeHLn67gND6NTB3Nvr6uk+CJEHWQGjIhIvu44Pdnbf/6QCVeMljtPWynDUwQ172PYvwEcYBqMEnMtirl/uEMTQggR4VTNvz9O3/3nZ0y/biyan+1Fy+LwlLG37FMOVS7GbdSQbO1N74RLSYsaGO7QhBBCiIil1c6Acbk8QRkvr7gc3TCwWkwkJ0Q3epwV+w4BMKFntybF8+r2NeiGwZSO3RmUmtmksepT6ChhYewm7LqLoYm9ebDPDWhK8PbUEaItkQKMiDiKojBi+mB+WLAeo4FZMIe255B3sIDMrhkhii54DNc2jKo3wLEU8IB5CErMDSjWCeEOLSQM5waMklvAqAFqi23u/Rj2DyH21yixt4c1PtGChGnZDyFEZBs5fRCLP1jtOxdRFAqPlHBwew7dB3YKXXBBsru4iNc3rufr/Xtx6h4GpmVw0+ChTOvWIyJubjnm2MOinLtx6hUc/0VR7szmQMVXDEi6kSEpd0TEeRB+kFxECCFCKiraAoC92hmU8Y6VVQOQmhjT6N/tuWUV5JZXoCkKwzq1b3QsZU478/Z7Z7/c1u/MRo/ji8Pj5G87X6NGddEluj2P9L8Vs2pulmMJ0RZIAUZEjL0bDvDtO8spKy4nLjm2weLLcY4g/UIOJaPmM4yy3+LdWq72jg7nSgzncoyY21DjfhvO8JqdoVdilNx6avEFOH4ujMqnwdwnYopRogFy0UMIESIHt+fw7bsrKMkvRVNVDI8OfvyR3hpzkUX793LXl59hGAae2h1ufziaw6ojh7lmwCD+MnFqmy4+eHQn3x25D5deycm/JIzaXGRryf9ItPaga9y0MEUoWhTJRYQQIqSiY6wAVFc5gjJeSbm3AJMc3/jZL+uzjwLQp10a0ZbGFzM+2reFGreLXompnJmR1ehxfHl1/zwOVB/Fppt5pM8tRGnWZjmOEG2FFGBEm+d0uPh/N/yLZR+sQjNpgIHh5x8oFpuZjM6pzRpfsBmeoxhlD3Jq4QFOFGKqXsEwj0CxTQp1aKFjnw/GqRc8TqViVP03aAUYw9DBuRrcO0GxgmUCiqljUMYWQgjR+nncHp795Wss/N8yNJOKgfcWCcOtg6qApp1ejFAUUBRUTaV999Y1E/dYTTX3fPU5Hl0/5TexXpuAvbt1M2e078iFvfuGJ8AQOFT5HTWeYh8tFLaXvB20AoxhGBTYN1Fs346qmGkffSbxltY3a0oIIYQIhahob8Ggpjo4BZjjM2CSmlKAOewtwDRl9otuGLy1cz0A1/ce1iw3uywv3MCC3BUoKEyu6k+aNSnoxxCirZECjGjz/n3Pf1n+0WrAewHEX6qmMv3GiUTFRjVXaM3CqJ6L71vgNIzqN9t0AcZwrG6ghQ7OHzEMo8kJieHaglF6P3iyAZXj596wnYsS/xcUtfEJmAgNpfbR1DGEEKI+r/3pfRa+uQwAj/tnN0jotbtna7XvJMpPH1VNZdyFI0hMjQthtE33wY5tOD16/bdBKAqvb1rfpgsweTXrUNBOzHg5ncExxy5ceg1mtWm5ZqljP8vyHqHMeYCfchGDjjHjGJPxKBYttknji+YnuYgQQoRWTKy3AFNZYQ/KeGWV3nES4xr/O33r0XwABnds/J4tGwqPcKCihBiThYu7BX/v21JnBc/veR+ASzpMJmVr0A8hRJsku3mKNq3o6DEWvr64weXGFPXUP1lUTaVDj3bc/NermzO85uFcwemzX07mAdeGUEUTJv5McWr6Og2G+yDGsevBk1P7jM6JNSTsCzBK78Xwd7qVCB8jSA8hhKhDZWkV85//2vf7hMeDYtJAVU+Z+ZLaPonb/3ZlyGINllXZ2eAxwM1PvxpPohsGm/PzTsyIaZv8/dqadg6qXAUszLmDcmd27TM/nfAjVSv47ugD6EZwNhgWzUhyESGECKnE5BgASkuqgjKe3ekCwGZt3NJhhmGwr9A7c7ZXeuNXYfns4A4ApnfqSaw5+MuCvbTvI8rdVXSN6cDVHc8O+vhCtFVSgBFt2poFG9A9vooRXgPH9UWtLcLEJsZw+a/P57lVfyM+ufXccWroFegld4Jrsx+ttWaPJ5wUy/AGWqhgHtL02S+VL4PhoO6Clw7OZeBa36RjCCGEaN3Wf7sVl8PdYLsBZ/ZAM3lT86hYGxf+YjLPffcHkjMSmjvEoKl2urjv8y9YvvcQihsUD6guBcXJab8qVUVp03fsp9sG+5j9AqCQYOmGuYkzZXeUzsGlV9V5LAOdQvtmcqt/aNIxhBBCiLYmMam2AHMsSAWY2lzPZmncQkN55ZVUOpyYVJUuKY1b0suj63xxaCcA53cJ/izjVUWbWVa4HhWV+3pdg0lt29eVhAgmWYJMtGmOageKqjQ4A+b6P11Ov1G9sFc7iEmIRtNa1y8Sw/B4N533t/hiHd/sMYVV1CVQORsMO3XfDqijxNzcpEMYhg72z8DnxRUNo+YzPwpCIpyU2tV/mjqGEELUxVHj9KvdxXdM4a/zHsBe5SAmPqp237rWwzAM7v70M74/dKj2mVMLLIoLDAuggKYojM3q3CzrkrcUXeKmsa7oXzj1Suq+UcOgX2LTZ1rvL1/gs9CjoLG/4is6xIxu8rFE85FcRAghQuv4DJiyYBVgmjgDZm+Bd/ZL5+RELI3MAX8oOExhTRUJFhtjM7s2aoz6VLlr+M9e79Jjl2ZNpkdcFi6XK6jHEKItkxkwok3rOrCTX8uPZfXpgMVmIT45rtUVXwBwLKtdVsyfJSZ0lOibmjmg8FLUBJTE5wEzp872qf13zG1gnd7EoziBhjbsM8AoaeJxRLOTZT+EEM2oS/8sv9p17tcRi9VMfHJsqyu+AKw9coRlBw/WuazY8VKMUjsRyGMY3DZsRCjDCzmTamNS+6cwKVaUk/7kUmpzkZ7xF9E9/rwmH8db4KmfgQeHp7TJxxHNTHIRIYQIqeTa/fWKCiuCMp6rdo8/k9a4y6yHjpUC0DW18RvaLz2yH4ApHXtgCfJ1rQ8Pf0uJs5z2UWlc03lGUMcWIhJIAUa0aYMn9qd9j3aoWt13WKomldEXjCQls/G/5FoCw/4p/i0rpqIkPIliGdzcIYWdYh2DkroAom8ArSOo6WCdhJL0Omrcb4Nw160VlMSGovAeWwghRMTqObQLPYZ2Qa3nD3JVUxk0vi8derQLcWTBNX/HTkxq/X9aKCgouoJiwGPjJzMmq3MIowuP9KhBXNB5Dv2SriPW3IEoLZXM6DOY1P5pzkz/XVBmAEWb0n2+rqARa+rQ5OMIIYQQbUl6ZiIABbmlQRmvqb/S88q9haDMhMYvg78637sf3JjM4OZY5a4qPju6FIBbul6IRW3cLB8hIpksQSbaNEVRePjte/nN5MdxO1143D8tAaGaVJIzErn7uVvCGGGQ6MdoePaLipL6NYqpUygiahEUUyeU+IeBh4M/tqJgRF8JVa9Q99IiAB6UqEuDfmzRDOSuUSFEM/rtK7/ggcl/xl7tOC0XiUuM4b7nZ4UxuuAoranBYzS8794XV19P3zTfRYO2JMbcjmGpdzEs9a5mGb9XwsVsKH6B+n6RGXjokXB+sxxbBJnkIkIIETIZmd499ior7FRV2omJtTVpvOP1lzomAvslr9w7o7VdfOMKMBVOB1uL8wAY1S64BZh5OYup8TjoFtOBs1IGBnVsISKFzIARbV6fM3rynx//zsSrxqCZvbNEomJtXHjXOfznx7+T1jElzBEGgZZFgzNgtA4RVXwJBSVmVu0Ml3rOfcytKKZuIY1JBO74uutNfQghRH269M/i36v+zNRrx2G2eu9/skZZmHnLJP698s906J4R5gibrkN8PCq+b/9MioqKqOJLKPROvIxES7dTljk7WY/4C0m19QtxVCJQkosIIURoRUVbiUuIAqAgt6zJ46mqNwcyGlmBySvzzoBpbAFmbUEOHsOgc1wi7WPiGzVGXSrd1Sdmv1zTeUab3r9PiOYkM2BEROjctyMPvXkvv371Tmoq7cQkRLfOvV7qoURdjlHzvq8WKNFN3+hVnEpREyF5LkbFk2BfANQubq+mosTcAdHXhzM8IYQQLUj7bhk88OKt3Puvm6iusBMTH9Uq93qpzxUDB/Lq2nX1vq4qClcPHhTCiCKDWY3m7I4vsrboOQ6Uf4WOd0Ncq5pAv6Rr6Z90XZgjFEIIIVqmzA5JVJTVcPTwMbr2bNrNMKba60sutz/78p6upLoGgJTY6Eb131ScC8DwtOAugb4o7wdqPA46R2fK7BchmkAKMCKimC1mzMltcL1K8yCIuhxqPqjjRQ1MPSBKCjDNQdFSUBKfwtB/D+79oFjB1BdFkbfXViMYG9fKXadCCD+ZzCbik2PDHUbQdU9JZtaI4fy3jiKMpih0SIhn1vBhYYis7bNocYzOeIThqfdQ5tyPqphJsvZCU9pgzttWSS4ihBAh17FzKru3HyXnUFGTx4qyen/n1jhcjepfbncAEG+zNqr/tmP5AAxICd6sat3Q+eLocgAu6DBBZr8I0QRyhVCINkBRFIj/M2gdMapeA+P4FFoz2C5EiX8IRY0Ja4xtnaImgyU53GGIRgjGsh2y7IcQQsDDE8aTGRfHCz+sobi6GgCTqjKzdy8emTiRxKioMEfYtlm1eNKjhoQ7DNEIkosIIUToZXVJBeDwwfAXYCqaWIDZXluA6ZcUvALMupId5NqLiDFFMTF9eNDGFSISSQFGiDZCUVSIvRNiZoFrB+AEUy8UNSHcoQkhhBAiAiiKws3Dh3HdkMHsKCjE4XHTPTmF5GgpvAghhBCiZenYOYgFGFttAcbuDLiv0+3B7vYuZx5rDbwAU+awc6SqHIB+ycHba++Lo98DML3dKGxa4wpDQggvKcAI0cYoigUsg8MdhhCthyz7IYQQQWXWNAZltgt3GEK0HpKLCCFEyHXungbAwX0F6LqOqqqNHisuxgZAWaU94L7O2uILgM0c+GXaAxXHAGgXHUe8xRZw/7qUOStYd2wHAOe0GxWUMYWIZI1/dxFCCCHagOPLfjT1IYQQQgjRGJKLCCFE6HXslILFasJe4yQ3p6RJYyXFeWf7llbUBNzXrf/0Bq6pge+zkl1RCkCn2OCtfrK8aAM6Oj1jO9ExOnjLmgkRqaQAI4QQQgghhBBCCCGEiBiaSaNLD29xYd+uvCaNlRjf+AKMR9dP/NvUiFk4hytLAciKSwy4b30WF6wFYILs/SJEUEgBRgghRGQzgvQQQgghhGgMyUWEECIsuvX0FmD27spt0jjJ8dEAHCuvxjACe0P2GN4CjKooKErgM2AOV5QB0Ck2MeC+dSlylLCz/CAKChPShgVlTCEinewBEyEObjvMFy8tYt+mg1ijrYy9+AwmXzOWqFjZFFUIEeFk3XUhQiJnTy6fv/g1u9ftw2I1c9b5I5h2/XhiEmLCHZoQQoSX5CJCCBEWvft34KtP1rNr25EmjZOS6M1nHU43FdUO4mP834vl+KwX3TDQdQM1wGXICu2VAKRHxQbUrz6bS/cC0DMui2Rr8JY1EyKSSQEmArz3/z7hvw+/g2pS0d06iqKw9uuNvP3nD/nHN38iq3eHcIcY8QqyC/n42QV89+73VFdU06FnJhfceTbTb5qI2WIOd3hCCCFEk3z2wkL+9cv/oqgKukcHBdZ9s5m3n/iQ/7foj3Qf3CXcIUa84mOVfPTZehZ+t42KKjuZGQlcOGMI504biNUquYgQQggh2p4+AzsCsHvbETweHU1r3EJBNouZpPhoSsqrySuqCKgAY9a0E/92eTxY1cAu1RbbvcueJduiA+pXn61l3gLMgIQeQRlPCCFLkLV5Kz5Zw38ffgcA3e2d1mgYBhhwLK+Uh8/5K26XO5whRrzd6/Zx26BfM++5BZTkl+KodnJgczaz73yZ38/4G067M9whCtGmyca3QjSvDd9t4bm7X8UwDG/xBU7c7V1RUslD0/+MvdoR1hgj3cHsIm7+5RvM+XgNRccqcTjcHMwu5rmXvuVXv59LdY3kIkI0J8lFhBAiPDp3S8cWZaG6ysHhA4VNGqtdShwA+cXlAfWz/KwAE6hj9moAUoJUgNlSW4AZKAUYIYJGCjBt3Nx/zq93+qLu0ck/VMjK+T+GOCpxnMft4dGL/4m9yvHTRSl+KpJtWrqNd//6cRgjFCICyLrrQjSrD57+DLWeuwl1j05pYTmL53wf4qjEcYZh8Mcn51NRZUfXT30zM4Bde/N4+c1l4QlOiEghuYgQQoSFpqn06tcegO2bDzdprIzaAkxuUWAFmJNnwNjdgd8gXeLwzoBJsjZ9i4EyZwVHawpRUOiX0K3J4wkRbIZhoBsePIYLj+487aEb7oD3YQoFWYKsDbNXO9ixarfPNppJY+3CTYy/bFSIohIn++GL9RTlFNf7uqEbzH/+K67946WyFJkQQohWxzAM1i/adMpNBj+nqAprv97EjFlTQhiZOG7j1sNk5xyr93VdN1jw9RZ+cf14oqMtIYxMCCGEEKL5DRjamc3rDrJ1wyFmXjKi0eN0apcEQHZeSUD9VFUhxmKhyumk0uEkNTaw/RHtHhcA0aamXzPaV5kDQPuoNGJNwZlRIyKbR3di95Ri95Rg95Tg8JTh1Ctx6hU4Pd6PLr0at16D27B7/2048BiO2oKKC4/hQseNYXgw8HeWmIKKhqqYUBXzKR81xYpJsaIpFu+/VSsmJQqTaqOmvHmKN1KAacN8Xew4zsDA04gpjiI4dq7Zg2bW8Ljq/x5UllSRd6BA9uoRopkohoHSxDskmtpfiLbKqN1MtKE2HrfkIuGyY3cuqqr4/D45nG4O5RTTt1dmCCMTInJILiKEEOHTb3AWADu3HmnSOFm1BZhDuYEVYAASoqxUOZ2U1wS2LK9H13Hp3mt/Nq3pBZj9Vd5z0C1Wrj+JhumGm2p3IRWuo1S6jlLpzqXaXUi1u5Cq2o8uvTJM0RnouNENNxh2v3vVVDbPNh1SgGnDomJttO/Rjtx9+fVOv9I9On3O6BniyMRxmkkDP/5Y0kxag22EEI0UjGU75JqHEHVSVZUeQ7uyd8MBjHou8CuKIrlIGGma6td7mKbKysVCNBvJRYQQImz6DOgIwJHsYspKqkhICmwGynHHZ8AcDnAGDECczQplFZTbAyvA2D0/XSy2ak2/brS/srYAEyMFGPETp6eSUucBypwHKXUepNx5iDJXNpWuXL9mpCho2LQkbFoiVi0BqxaHRfU+zFoMFjUGkxKNSbWdmIninZ3iffw0g0VDQUNRNFRU4Odbbhjo6BiGx/vv2hkzHsOFbrjQDTcew1n7cODRHbWzbey4dDtuo4ZjajEQ/K06pADThimKwqX3nce/7nm17tdVBVuMjSnXjgtxZOK44dMH8/afP6y/gQIZndNo1zU9dEGJsDAMJ4b9O/Dkg5YG1kkoii3cYQkhRJNdet95/P365+p+UQGT2cQ5t0wKbVDihBFDuqAbS3y2SYiPoluX1NAEJMJGN5wcq16M030Us5ZCYtRkNLVxF6GEEEKI1iIuPopOXdPIPlDI9s2HGTWhT6PGyWqXCEBecTl2pwtbAMvIx9u8f/uX1tQEdEznSSvaWLSmX+I9WHUUgC5SgIlYdk8pRfZtFDt2c8y+h2PO3VS6jtbbXlXMxJoyiTN3INbcjmhTGtGm9NqPaURpyVjUOBSl7v3JW5pioxj4bdDHlQJMG3fu7VPZsnw7S+auPGV5Cc2komoqj330G6Ljmr5Rl2ic/qN702tEd/ZtPIDHXceScQZc+eBFqHLXaZtnFE7F0IrxVvANUGIh7kGU6KvCHVqbpxjeR1PHEELUbfI1Y9m8bBsLXvkWVVNPLJF6fHbnI3PuIzEtIZwhRrTuXdIYPrgzG7Zk17sM2VUXj8Qks3HbvM1Hp6Ar+RzPRVQlmo6J99Mublar+aO5tZJcRAghwmvA0E5kHyhk87qDjS7AJMdHEx9ro7zSzqGjJfTu4v+NtGmx3v1WiiqrAzqmetLvZ6OJUyENwyDP7t2juENUWpPGEq2DYRiUOQ+Sb99EYc1WCu1bKHcdrrNttCmNBHMXEiydSbB0IdHShThzR6JNqSiKXLNsiBRg2jhN03j4nV8x6vwRfPLvrziwNRuLzcz4S8/i4l+dS6c+UtUOJ0VRePyTB3lw6hMc3nkERVUwdAPNpOJx61x637mcd/u0cIcpmpFh/wJQwDi+LmZt0mRUYpT/CTChRF8WpugihCz7IUSzUhSF+168nRHThzDvXwvYs/4AZouJ0ReO5JJfnUu3QZ3DHWLEe/TB8/n1n95nz76CEzfsaJqCx2Mwc+pArrrkjHCHKJpRSc13ALj1UlQNjv9S041qskv+Cihkxs8KW3wRQXIRIYQIq0HDu7Lg43VsXnew0WMoikL3Dils2HWEfTlFgRVg4mIBKKgIbL+Mk++P0Ju4F1ipqwKH7kRBId2W3KSxRMtV4y7maPWP5Fb/yNHqH6nxFJ3WJsHcmRRbH5KtPUm29iLJ2hObJjfMNYUUYCKAqqpMvmYck6+RpcZaotT2yby44Z98/9FqFr+3gqqyarJ6t2fmL6bRe0T3cIcnmpFhuDEqZgP319+m4imIuhBFafqGekIIES6KojDu0rMYd+lZ4Q5F1CEhPooXn7qO73/Yy6Il2ykrr6FjZhLnTh/IgL4dZPZDG2YYBjmlTwN319smp/QZ0mOvRlOjQxeYEEIIEUKDhntvCNq/O4/KihpiG7lSTLeOqWzYdYQDR4oD6pce513ys7CiKqB+2kkzD+rb+9lfx2e/pFoTMatyubgtKXUeJLtyCdmVyyh27DzlNU2xkGYbSHrUQNJsA0mz9ceqxYcp0rZL/kcJ0QJYrGYpkkUi54+gN5CYGcfAuRqs8rPRXGTZDyGEAJNJY+KY3kwc0zvcoYgQqnZuxeHO9tlGN6oprfmOlJjzQhRV5JFcRAghwislLZ4OnVI4kl3M5nWHGD2xccuQde/o3TNv96GCgPql186AyS2vCKif6aTl6p26BxuNv3GzyFHijcUqs1/agjJnNvsrvuJQxWLKXIdOekUh2dqL9tEjyYweSYZtEJpqDVuckUIKMEIIES56iZ/tjjX5UIbhBsdy8OwDJQqsU1C0dk0et02QZT+EEEJEKJdfOYbiZzvfDEPH7liKy7UDRbERZZuGyZTV5HHbBMlFhBAi7Iad1Z0j2cWsW7W30QWY48uO7TpYgGEYfs8i7pjknXFwpKQ8oONZVA2TouI2dKrdLuIttsACPkmZy7v8WaIlttFjiPByeio4UPkt+8oXUGjfeuJ5FROZ0SPpFDuBrJixRJmkyBZqUoARQohw0doHt109DMdqjLJfg14IaIAO/Bkj6lKU+EdRFEuTxhdCCCFE62Q1+bMfpIG1ibmIw7mO4mN34PHkcDwXKS37A9FRF5GU+BSqLG8mhBAizEaM6sFn769h3ep9jR6jR6dUNFWhpKKGgpJKMpLj/OqXleTdXyOvvAKn24PFpPnVT1EUos1myp0OqlzORscNUOb0FmASzFKAaW2K7NvZUfohByu/Qze8PwcKGu2jz6Bb3Nl0jBmNRZPvazhJAUYIIcLFPBi0Tj4aKKB1APPwRh/CcG3FKJkFeGqfOf7RgJoPMQwHSuJTjR6/LZBlP4QQQkSqKHMPYiwDfLYxqckkRE1o9DFcrt0UFl2OYThqn/GceK26Zj66UUFq8psRvdeQ5CJCCBF+g4Z3QdNUcnOOceRwMR2yUgIew2Yx07VDCnsPF7HzQL7fBZiUmGiizCZqXG6OlpXTJSXJ72PGmCyUOx1Uu10Bx3uy4zNg4qUA0yoYhs7hqu/ZWvIOhfYtJ55PtHSjR/xMusWdTZQp8J9h0TzUhpsIIYRoDoqioMQ/XPvZz9+OFUBBiX8MRWn8W7VR+W+8M170ul4F+6cY7r2NHr9NMIL0EEIIIVqhrCTfuUiX5D+jKo1fU7684l8YhpO6cxEdu/0bnK71jR6/TZBcRAghwi46xkr/Id4bJNcs393ocfp18y71vW1fnt99FEUhKykRgIPFfi5VXuv4smOljpqA+v1clccOQKwpqknjiOZlGDoHK75l/qFrWZz7EIX2LaiY6BZ3NjOzXuGCTm/RP+kaKb60MFKAEWFhGAZOhwvDkL8URGRTLGd6/2HqceoLpp4oSa+hWMc3emxDrwTHYk6+0/R0GkbN540+hhBCtFaSiwjhFWsZBHDaTBibqSu90l4hJWZmo8c2DDfVNfPxnYuYqK6e1+hjCCGEEMEyakJvAFYt3dXoMQb2yARgy96jAfXrluqd9bK/KLACTIrNu4znMXt1QP1+zql7Z9BY1MbfdCGaj4HB0eof+PzwLSzN+yNlrkOY1VgGJt3ApV0/Zly7R0mz9Y/oGcUtmSxBJkKqMKeY9/85n4VvLKamwk5MQjTn3DKZK357Acnt/J9iKURbo6a8h8JB0AtATfMWYJr6i9OopOHbIRXQS5t2nDZAlu0QInKU5JfywVOfsuC/31JVWk1UrI3pN07kigcvJD0rNdzhCRE2fTPewU02TvdRTFoK0ea+Tc5FDMMONLQkioGuH2vScdoCyUWEECL8zhrfh5eeWciWDYeoKK8hLj7w2SADenr3Tdu+Lw+3R8ek+Xfve7c078bo+wsD+52YXFuAKXY0sQDjOV6AkT1iW5oix3YqO89hScFhAMxqNP0Sr6Zf4lVYtJgwRyf8IQUYETI5e3K5b8wjVJRWobu9SxBUlVUz77kFLH5vBc+t/CsZndPCHKUQ4aOYewI9gzegmgRYAYePRjqKqWPwjtkaGYb30dQxhBAtXsHhIn41+hGO5ZWie7y5SE2lnc9e+prv5nzP7O//Qqc+/mxKLkTbFGXuTpS5e9DGU5RoFCUBwyjz2c5k8rUnXgSQXEQIIVqE9lnJdO6ezqF9Baz5fjdTZg4OeIwumcnERVupqHawJ7uQvl0z/OrXPdW7ZNTewuKAjpdaW4ApqmlaAcahezdvt6hyqbilcHqqWFf8PLvL5kEMqFjok3gJA5NvwKYlhjs8EQBZgkyEzD9u/DcVJT8VX47TPTplhWU8c9sLYYpMiLZJUawQdTGg+WoFtotCFJEQQoTX7NtfoiT/p+LLcbpbp6qsmv93w7/CFJkQbZOiqMTGXIfvXEQnJvrqUIUkhBBC+DRmYh8Aln+zvVH9VVVhYO0smI07c/zu1zPdW4DZU1CMrvtfVE+LigUgv6YigChPZ9SunqE2YQ9aETw5VSuYn32tt/gCmEsHcH7HdxiZdq8UX1oh+V8lQuLAlkPsWL37tAsex3ncOuu/2cKRvbkhjkyItk2JvRvUFOq78KHE/QZFi+wldxQjOA8hRMuWd7CAHxduxOOuOxfRPTq71+5j74YDIY5MiLYtLvYuNK0j9eUi8XG/wmTqHNqgWhjJRYQQouUYP827J9ralXuoqrQ3aoxhfb2rTKzbcdjvPl1Tk7BoGlVOJzmlvmeOnqxDTDwAR6vKAwvyZxS8y47K/ojh5fCUsyzvMb49+luq3QXEmTswJeP/iDl6LjGm9HCHJxpJCjAiJPZtOuRXu/2bs5s5EiEii6JloKR8ANapnPKWr3VASfg7SsyssMXWYhhBegghWrQDW7L9+r+6d+PBZo9FiEiiaclkpH1GdNSFnLwCtqa2Iynh78THPRi+4FoKyUWEEKLF6NIjnY6dU3C5PKxfva9RYwzvmwXAhl1H8Oh13/zzc2ZNOzELZkdeod/Hah+kAszxmS+6/EIJm/yajXyWfSMHKr5GQaV/4jVc0OktMqKGhTs00USysJ8ICbPV7Fc7i82/dkII/ylaJkrSvzA8ReA5BEo0mHqjyNRiIUQEkVxEiPDRtDRSkv9DoucJ3O79KIoNs7kfiuJraTIhhBAi9BRF4cxxvck5tJJVy3Yxbmr/gMfo1TmdmCgLldUOdh8soG+3dn7169sunW25BezILeDsfv7tD5sZEwdAblUFumGgKkrA8QKotTNgdMO/gpEIHsMw2Fn2ET8WPouBhzhzR8a1e4w0Wz8AXB5XmCMUTSVX30RIDJ0yAJPFd73PFmNl0Pi+IYpIiMijaKkoluEo5r5SfDmJogfnIYRo2QaM7UNUrM1nG5NZY/i0QSGKSIjIo2kpWK0jsVgGSvHlJJKLCCFEyzKqdh+YH5btwu3yBNzfpKkMq50F88NW/1aEAejf3rvE1Jaj+X73yYyOx6SoOHUPuU2YBWPRvDchOXW52B9KHsPF6oJ/sKbwGQw8dI2bzvmdXj9RfBFtg1yBEyERnxzH+XdOR6mnEq8ocPG9M4mKjQpxZEKIiCfLfggREWzRVi574Hyo56ZARVWYcdtUElLjQxuYEEJILiKEEC1Kv0FZJCbHUFlhZ9Paxu0PeNZA7/5mqzcf9LvPwA7emTJbjuT5vReLSVXpFJcIwIHykoBiPFmUagWgxuNo9BgiME5PJd8cuZ/d5fMBheGpdzMu41HMaky4QxNBJgUYETK/+Mf1TLhiFACaSUNRFDST90dw2o0TufGJK8MZnhBCCCHauGv/eCkzZk0BQDOptbmI9y78sRefwZ3P3BjO8IQQQgghRAugaSqjJ3lXaPn+u+2NGuOsgV0A2Lw3l8oa/4oavTNSsWga5XYHB4tL/T5W1/gkAA5UHAs0zBOiTN6Z4jUee6PHEP6rdhfxVc5d5NWsx6xGMznzHwxIurbeG9dF6yZ7wIiQMZlNPDLnfi574HwWvbmUY/mlpLZPZvqNE+kxtGu4wxNCRCjF8D6aOoYQouXTNI0HXr6DC+8+h6/fWELhkWKS0hOYdsMEeo/sIX/wCCHCQnIRIYRoecZO6suCj9ayYvFOfvm7c0/ctOOvjhmJdExPIKegjHXbDjNhRI8G+5g1jX6Z6WzMyWVTTi5dU5P8OlbX+GRgH/vLG1+AsWneGTDVMgOm2dW4j7Ew55eUu7KJ0lKY2uFpkq29wh2WaEZSgBEh13tkD3qPbPgXjxBChIRheB9NHUMI0Wp0H9yFO//vpnCHIYQQXpKLCCFEizN4RFcSEqMpK6liw5oDjBgd+HWsUYO78sGijazcfMCvAgzAsE7t2ZiTy7rsI1w0xL99QHompAKwt7Qo4BiPizd5l72qcFU1egzRMIennEVH7qfclU2MKYOzO/6bOHOHcIclmpksQSaEEEIIIYQQQgghhBC1TGaN8dMHAPDdV5sbNcaoQV0AWLX5oN97uozo5L0Yv/bQEb+P0ysxDYBdTSjAJJhjASh1VTR6DOGbS6/m26O/psS5B5uWzLQOz0rxJUJIAUYIIUREO77sR1MfQgghhBCNIbmIEEK0TJPOGQjAysU7sNc4A+4/vG8WFrNGfnEFB44U+9VnWG0B5kBxCcWV1X716ZmYAkBBTSUl9pqA4wRItHgLMOWuykb1F77phpsluY9QaN+GRY1jeodnSbB0CndYIkSkACOEECKyGUF6CCGEEEI0huQiQgjRIvUblEVG+0Rqqp2sXLwz4P42q5lhfToCsGLjAb/6JEbb6JnmLaiszfZvFkys2UrH2AQAdpQWBBwnQII5DoASp8yAaQ4bil/maPUPmBQbUzs8Q5K1e7hDEiEkBRghhBBCCCGEEEIIIYQ4iaIoTDtvCAALP13fqDHGDvVeaF++Yb/ffc7omgXADwcO+91nQHIGANuK8wKI7iep1kQAih1leAy9UWOIuuVUrWBrydsAjMn4A2m2/mGOSISaFGCEEEJENFn2QwghhBDhJLmIEEK0XNMvGIqiKGz88QC5OccC7j9uaDcAtuw5Skm5f0uKnVVbgFkdUAGmnfc4xfkBRuiVZIlHU1R0dEqcZY0aQ5yu0pXH93l/BqBPwmV0iZsc5ohEOEgBRgghRGQzjOA8hBBCCCEaQ3IRIYRosTIyExl6hreI8vWnGwLu3y41nt6d09ENw+9lyM7o0hEF2F90jPxy//ZkGZByvACTG3CMAJqikmJJBKDQUdqoMcSpdMPNsrw/4tDLSbH2YUTqL8MdkgiTsBdgnn/+ebp27YrNZmP48OEsX7683rYff/wx06ZNIy0tjfj4eEaNGsXChQtDGK0QQggh2hrJRYQQQgghhBD1OfuiYQB888UmdD3w5bnGD/MuQ7Zk7R6/2idE2ejf3ruk2Mr9h/zqMzglE4ADFSWU2GsCjhEgzZoEQL69uFH9xam2l75PoX0bZjWWCZl/QVMt4Q5JhElYCzBz587lvvvu45FHHmHDhg2MGzeOGTNmkJ2dXWf7ZcuWMW3aNBYsWMC6deuYNGkS559/Phs2BF6BFkIIIUCW/Yh0kosIIYQIN8lFhBCiZRs1vjfRMVYK8srYuqHuvxN8mTSyJwA/bD1EZY3Drz5juncG4Pu9/hVgkmxRdE9IAWBdYU7AMQK0j0oF4GhNYaP6i59UunLZVPwqACNT7yXO3D7MEYlwCmsB5plnnmHWrFnceuut9O3bl9mzZ5OVlcULL7xQZ/vZs2fz4IMPMnLkSHr27Mnf/vY3evbsyWeffRbiyIUQQrQZRpAeolWSXEQIIUTYSS4ihBAtmtVmZtzUfgB8+8WmgPt365hCl/bJOF0evl+/368+43p4CzAr9h3C4+esmxFpHQD4saCxBZg0AHJrihrVX/xkTeGzuA076bbB9Ig/N9zhiDAzhevATqeTdevW8dBDD53y/PTp01m5cqVfY+i6TkVFBcnJyfW2cTgcOBw/VZfLy8tP/NvlcgUYdeQ4fm7kHNVPzlHD5Bw1TM6Rb3JeRHOSXKRlk/fHhsk5apico4bJOfJNzosQQgiAKTMHs3D+BpZ9s427HpyJ1Wb2u6+iKEwa2ZPX5//At2t2c86Yvg32GdwxkxiLhdIaO9uOFjCoY7sG+4xI78jcvZtZ28QCjMyAaZqcqlUcrlqGgsZZ6b9BUZRwhyTCLGwFmKKiIjweDxkZGac8n5GRQV5enl9jPP3001RVVXHFFVfU2+bJJ5/k8ccfr/O1RYsW+R9whJJz1DA5Rw2Tc9QwOUd1q66ubvZjBGPZDln2o3WSXKR1kHPUMDlHDZNz1DA5R3WTXEQIIQTAwGGdychMJD+3lBXf7WDyzEEB9Z9yRi9en/8DqzYfpKLKTlyMzWd7s6YxunsnFu3Yy9I9B/wqwIxMzwJgc3EuNW4XUSb/i0QAHaLSAThck49hGFI4aATDMNhQ/DIAfRMvJ8naPcwRiZYgbAWY437+n9nf/+Bz5szhscceY/78+aSnp9fb7uGHH+aBBx448Xl5eTlZWd43pGnTpmE2B/ZmFClcLheLFi2Sc+SDnKOGyTlqmJwj306eKdBsdMP7aOoYotWSXKRlkvfHhsk5apico4bJOfJNchEhhBAAqqoy/YKhvPXSYhbMWxtwAaZHVirdOqSw/0gxi3/cwwUTBzbYZ2KvbizasZclu/dzz6RRDbbvHJdIu+g48qorWF94hDGZXQKKsUN0OioKVe4aSpzlJFsTAuov4Ej1So45dmFSohiYfEO4wxEtRNgKMKmpqWiadtodpgUFBafdifpzc+fOZdasWXzwwQdMnTrVZ1ur1YrVaq3zNbPZLH9kNEDOUcPkHDVMzlHD5BzVTc6JaE6Si7QOco4aJueoYXKOGibnqG5yToQQQhx39oVDeeeVJWxZf4jDB4vI6pLqd19FUTh7dF9e+OB7vlq5078CTM+uKMC23ALyyyvJiI9t8BhnZXTikwPbWJ2XHXABxqKayYxK40hNAYeq86QAEyDDMNhU/DoAvRMvwaYlhjcg0WKo4TqwxWJh+PDhp011X7RoEaNHj66335w5c7jpppt49913Ofdc2cRICCFEE8nGtxFLchEhhBAtguQiQgjRKqRlJDByTE8Avpy3LuD+Z4/uA8D6nYcpKq1ssH1KbDSDOmYCsGT3fr+OMapdJwBW5WUHHB9Ap2jvUmfZ1bmN6h/Jcqt/pMixHU2x0j/x6nCHI1qQsBVgAB544AFeffVVXnvtNXbs2MH9999PdnY2d9xxB+BdsuOGG36arjVnzhxuuOEGnn76ac466yzy8vLIy8ujrKwsXF+CEEIIIVoxyUWEEEIIIYQQ/pp5yQgAFs5fj73GGVDfzNR4BvTIxDDgmx92+9VnUq9uAHy7c59f7Ue16wzAxqKjVLocAcUH0DnGW/A5UHk04L6RblfZJwD0jD+fKFNyeIMRLUpYCzBXXnkls2fP5oknnmDIkCEsW7aMBQsW0Lmz980iNzeX7OyfKrYvvfQSbrebu+++m8zMzBOPX/3qV+H6EoQQQrRyCj9tftvoR7i/CNFokosIIYQIN8lFhBCi9Rg5pieZHZKorLDz7YJNAfc/e5R3FszClTv8aj+9bw8AVh04TIW94YJKp7hEOsUm4jZ0fsg/HHB83WI7ArC/KifgvpGsxn2Mw1XLAeiVcGGYoxEtTVgLMAB33XUXBw8exOFwsG7dOsaPH3/itTfeeIMlS5ac+HzJkiUYhnHa44033gh94EIIIdoGwwjOQ7RakosIIYQIK8lFhBCi1dA0lQuuOhOAT977ASPA998pZ/ZCUxW2788nO6+kwfbd0pLplpqMy+Nh6Z4Dfh1jbPsuACw/6l/7U44X0wGAQ1W5uHRXwP0j1b6KLzHwkGrrT5K1e7jDES1M2AswQgghhBBCCCGEEEII0Rqcff5QoqItZO8vZNOPgRU5UhJiGNnfu0+Lv7NgptXOgvl6+x6/2o/N7ALA97kHA4oNoJ0thXhzDG7Dw77KIwH3j0SGYbC37HPAu/yYED8nBRghhBARrclLftQ+GuP555+na9eu2Gw2hg8fzvLly+tt+/HHHzNt2jTS0tKIj49n1KhRLFy4sJFftRBCCCFaCslFBMj3QojWJCbOxpSZgwH44uO1AfefMaYfAAu+34GuN/wGfnwZsmV7DlLtbHhWyph2XVAVhb1lxRypDGyvSkVR6BPXFYDt5fsD6hupypwHKXMdQlXMdImdEu5wRAskBRghhBCRzQjSI0Bz587lvvvu45FHHmHDhg2MGzeOGTNmnLLfyMmWLVvGtGnTWLBgAevWrWPSpEmcf/75bNiwIfCDCyGEEKLlkFwk4sn3QojWZ+YlwwFYuXgnpccqA+o7cUQPom0WjhaWsXFXw3ut9MtMp1NSAna3m6W7Gy6KJFhtDEv1LiW25GjgRZQBCd4ltLaV7Qu4byTKrloKQGbUCCxaTJijES2RFGCEEEIEhaGXY1S/j1H5H+9HvTzcIbVozzzzDLNmzeLWW2+lb9++zJ49m6ysLF544YU628+ePZsHH3yQkSNH0rNnT/72t7/Rs2dPPvvssxBHLoQQQrRMhl6JUf1xbS4yB0NveG39SCa5SMsh3wshWp/uvTPp3b8DbreHhZ8GVvy0Wc1MO6sXAJ8v395ge0VROKe/t/2X23b7dYyJHboBsPRI4AWY/gnevtvL9qMbesD9I0125TIAOsVOCHMkoqUyhTsAIYQQrZthGFD9GkbF/wEuQAM8UP4ExN0P0begKEqYo6yfYhgoTdy49nj/8vJTi05WqxWr1Xpae6fTybp163jooYdOeX769OmsXLnSr2Pquk5FRQXJycmNjFoIIYRoO4zqORjlfwdq8P6Z64HyP0PsnRDzS8lFfkZykZYjVN8Lh8OBw+E48fnxnxWXy4XLJRttN6fj51fOc/ML9bk++6Kh7Np2hC8+WsuFV52Bpvl/n/vZo3ozf8lWvluzm3uvGktMlMVn+6m9u/Hy9z+ydM8BSiuriLH6bj8moxNPAStyD1Jpr8Gq+X8JuJO1HRbVTLm7iv3lOXSOzjytjfxce1W7iyh27AQU2lnPbJbzIec6dJrrHEsBRgjRahmeQnAsBaMGzL3BPLJF/3HdZlW/jVHx/056wl370YlR8f9QFBtEXxuOyPyj1z6aOgaQlZV1ytOPPvoojz322GnNi4qK8Hg8ZGRknPJ8RkYGeXl5fh3y6aefpqqqiiuuuKJRIQshhGg6h6eUo1XLces1xFk6kxE1EkWRRQZCzaj5BKP80ZOecZ/4aFT+CwUzxN4RjtD8I7lIRAvV9+LJJ5/k8ccfP+35xYsXEx0dHVjQolEWLVoU7hAiRqjOtUvXsdo08o+W8uJz79G1d6LffQ3DIDnOzLEKF//3348Y1i2hwfapVjNFDhf/98E8hiXH+WyvGwbxiolyt4t/f/4xfc2xfscGkBYbyxFzCXNXfcoAR1a97SL959oZvwM6glaTzuKFq5v1WJF+rkOhurq6WcaVAowQotUxDCdG+V+g5n28f20qgAFaZ0h8GsU8KMwRRg7DcGJUPue7TcVsiLocRfF9h05bcPjwYeLj4098Xtcdpyf7ecHQMAy/iohz5szhscceY/78+aSnpzcuWCGEEI2mG242Ff2LPWXvY+DmeC4SbcrkzIzHSI8aFu4QI4ZheDAqnvHdpvJ5iL4eRW3767JLLtJ6Nff34uGHH+aBBx448Xl5eTlZWVlMmjSJlJSUxgcuGuRyuVi0aBHTpk3DbDaHO5w2LRznuiQnmg/fWsmRvR7uvn9mQH0rTBv499zv2V+k8MjdMxr8P58dt4bnl6/hiCmaP8xs+Fg//LiI9/ZuprR9EjNHTgsotqocC+8c/hK9o5WZvU8/lvxce60t3s3uCuiePpYRfQP7/vtLznXoFBcXN8u4UoARQrQ6RtnvwL6An3Ybrf3oOYxx7HpI+RjF1D1c4UUW52owyny3McrA+QNYx4UmpgAFc9mP+Pj4Uy561Cc1NRVN0067q7GgoOC0ux9/bu7cucyaNYsPPviAqVOnNj5oIYQQjba+8Cn2lX/Mz3ORanc+S4/+kikdXiPZ1ids8UUU12bQG5olYPfOmo5qngsjTSW5SGQL1feivuXozGazXNALETnXoRPKc33hVWfx8bur2bzuENkHiuneq53ffS+YMJCXPlrF7uxC9uUco283333PH9yP55evYdX+bCqcLpJjfM9em9mlL+/t3cw3Ofv461nnoKn+z9Idktybdw5/ybbyfWgmDbWeGb6R/nNd5NwKQGbM0GY/D5F+rkOhuc6vzI8XQrQqhms72L/gpwseJ9PBcGJUvhjqsCKX3kDxJdB24WAE6REAi8XC8OHDT5tCvGjRIkaPHl1vvzlz5nDTTTfx7rvvcu655wZ2UCGEEEFR6cphX/lH1JeLGIbOtmMvhzqsyNXQjSAn2pU33CZcJBeJaPK9EKJ1S2+XwLgp/QD46G3/9m06LiEuiskjewIwb/GWBtt3TU2if2Y6HsNgwdbdDbY/K6MT8RYrRfYq1hceCSi2XnGdsakWKtzVHKg6GlDfSOHSayhx7AMgPUpWYhH1kwKMEKJVMWo+w7vJe308YP8Cw3CGKqTIpnXyr53Jz3YR5IEHHuDVV1/ltddeY8eOHdx///1kZ2dzxx3eNeoffvhhbrjhhhPt58yZww033MDTTz/NWWedRV5eHnl5eZSVteDilhBCtEGHKhai+PgzysDD0ervcXoqQhhVBNPqX5e+Ue0iiOQiLYd8L4Ro3S673lssXfLVFvJzSwPqe+GkgQAsWr2TanvD1zEuGNQXgE8372iwrUXTmNqxBwBfHNoZUFwmVWNAorfvptKGiz2RqMx5AAMdm5ZEtCk13OGIFkwKMEKI1sUo8aORG4yqZg9FAOZBoHWn/l8nKmg9wDQwlFEFxjCC8wjQlVdeyezZs3niiScYMmQIy5YtY8GCBXTu3BmA3NxcsrOzT7R/6aWXcLvd3H333WRmZp54/OpXvwraqRBCCNEwh6eUhv+MMnC25NmfbYhi6g7mIdT/PVFAzQTLqBBGFSDJRSKefC+EaN169evAkDO64fHofPjWioD6DuvTkax2iVTbXXyzeleD7c8d2BtNUdh8JI/9hccabD+zs3dJ1K+yd6MH+LtiSGJvADaWNBxXJCp1HgAg0dI1zJGIlk72gBFUlVezfeUuPG6dHkO7kNpBNuATLZia2XAbJQqUuOaPRXg3CUz4M8axG2uf0U96VQU0lIQ/+7WBaLgohvfR1DEa46677uKuu+6q87U33njjlM+XLFnSuIMI0QrUVNnZtmIXLoeLboM6k9E5LdwhCVGvGFM7jFN+351OwYRVSw5RREKJfwyj+GrACXhOekUFFJSEv6DUs3Z9SyC5iAD5XgjR2l1501g2rtnP159u5KY7pxATZ/Orn6IoXDhhIP+eu5z5S7dywUTfNy+mxsYwtkcXlu45wPzNO7h/yhif7ce270qs2UJedQUbCo8wPL2j31/T0CRvAWZr2T5cuhuzKpeRT1bqOF6A6RbmSERL13KzUNHsXE4XL/3mTa5odyu/n/k3/njB37mm8508cflTlBW14DWSRURToi4Gnxc9NIi6HEWRxCBUFMsIlOR3wTzy1BfMI1FS5qBYhocnMCFEi+fxeHjjj+9xReZtPHzOX/jThf+P67rdxSPnP0lxbsN39AkRDp3jzkGh/hsLFDQ6x52NWfW9Ma4IHsXcDyVlbu0sl5O+N+bBKMlvoljHhS02IYQQkWHoGd3o3D0de42ThZ+uD6jvzHH90DSVrXtz2X2ooMH2Fw32LkM2f9N2PLrvm0JsmompHb37zHwe4DJknaMzSTTH4dCd7Cg/EFDfSFDm8s5MTLB0CW8gosWTAkyEMgyDv149m49mf47T7vrped1gxSc/8vA5fwljdELUTzF1gphf1POqBmoKSr2vi+aiWAajpryFkrYUJeVDlLSl3s/NrWAjujAt+yGEgGdue5F3//YR9kr7T08asHbhRh6c9ufwBSaEDzZTCgNT7qzzNQUNsxrLgGTJRUJNMfdBTX4NJW2ZNxdJ/Q41ZS6KZWTDncNNchEhhGj1FEXhoqvOBOCT937A4/FdGDlZSkIMk0Z491v56NtNDbaf3Ls7CTYreeWVrNyf3WD7c7t4lyFbcHBnQMuQKYrCkNpZMBtkGbLTVLu9xbJYc7swRyJaOinARKiNi7eyYt4aDP30N17do3N0f36Tj+GocTDvuQXc0vdXzLBexaXpt/D8fa+Td7Dhar4QviixD6DEPQLqycvlKWCdgJLyAYqWHrbYIp2iZaKYB6FofiwV10IoenAeQojA7Fq7j6/fWFLnNUPdrXMs1589v3xzOV189uLX3DboAWbYrubilJt47q5XyNmT2+SxRWTrm3QjI9J+j007dcPVjKgzmNrxdWLM7cMUmVC0DG8uYvJ/iZVwk1xECCHahikzBxOfEE3+0VJWLglstsllU4cA8NWKHVRU2X22tZpNnDfIOwtm3oZtDY49vn1X4sxW8msqWVuQE1Bcw5K8xZsNJYF9PZGgqrYAE22Sa1DCNynARKiFry9GNdX/7TeamMDXVNn57ZTHeeH+N8jZnYvb5aG8qIL5z3/F7UN+w571+5t2ABHRFEVBibnRe4dj8lyUpDe8My6SXmxVF/6FECKSff3GYjSTVu/ruqdpd3M7HS5+P/NvPHf3Kxzadhi3001lSRULXv2GO4b8hq3f72jS+EJ0T7iY87t8ztSOrzOh/b85r/NnTOjwHHGWrHCHJoQQQogwsNrMnHfZCADmvbMqoL5DenegW4cU7E43X3y/vcH2lwzpB8CinfsorW6gYKOZmN6pdhmyg4HlwEMTvTNg9lYepsxVGVDftsyjO3B4SgGIkQKMaIAUYCJUweEidHfz3Sb1vz++x64f92EYBsZJt7bqbh17lYPHL30Kj8fjYwQhGqYoZhTLUBTraBRNpnyKRpJlP4QIi+Kjx/C4G84FGpsvzP37J2xasg1+9l/U49ZxOVw8dslTOB2u+gcQwg+qopFiG0C76DOJkeUnRGNJLiKEEG3GeZefgdmssW1TNls3HPK7n6IoJ2bBfLBoI3odK9acrF9mOn0y0nB5PHy6ueGiyvldvAWbBYd24m5g35iTJVsT6BrTHgNDZsGcpMbj3a9SVcxY1LgwRyNaOinARKiUzCRUrXm+/fZqBwte/Ra9nvUudY9O/qFC1n29uVmOL4QQATGC9BBCBCQxPRHNx2zc4zSt/lky9fG4Pcx//qs6l1oF0HWDsqJyVsxbE/DYQggRdJKLCCFEm5GSFse084cAMOe1ZQH1nTG2L3HRVnLyS1mx0ffKMYqicNmwAQB8sH7LKTc/12VMZmeSrVEU2atZkXswoLhGJvcHYFWRXMc7zql7ZwNZ1DgURQlzNKKlkwJMhJp6/YR6CyQAqlb/m4fL6WLJ3BU8d/erPHfXKyyZuwKX86c7SI/syaWm0vf0R82ksevHvYEHLoQQQog2Yer14/H4mI3rKxfxuD2s+GQN//rlqzx758ssemspTrvzxOuFOcWUFZb7PL5mllxECCGEEEIE3xU3jkXVVNau3Mvu7Uf87hdts3DRpIEAzPlqfYPtzx/UB6tJY09BMZuP5Plsa1Y1zu3i3Tdm/oGG94052ejUwQD8eGw7do+zgdaR4acCTGyYIxGtgRRgItTIc4YwZNIAVPX0ixuaSSWpXVKd/fZtOsj13e7mr1fPZsEr37Dg1W/569Wzua7r3ezdeAAAk8XU4PENw8BkbridEEI0N8UwgvIQQgSm/+jejL5oJEoduYiqqcQlxtTZ7/CuI9zU+14eu+SffPHyN3z52nf848Z/c3XWHWxftQvwLxfBAJM58Nk1QggRbJKLCCFE25LZMZlJ59QWUv4b2CyYy6cNRVMV1u04zN7DhT7bJkTZOKdfLwDeX7elwbEv7Opdhmxh9h6qXf4XUnrEZpFhTcahO1l3rOH9aSKB0yMFGOE/KcBEKFVVeeLT3zH52nGnLUXWb3Rv/t/CR07rU1JQxm+nPE5Jfhngvfv0+NrtpQVlPDjlcUoKyujYK5PUjik+j697dEbOGBKcL0YIIZpC1l0XIiwUReGROfcz87apaKZTCyG9hnfj71//6bQ+VeXV/Gby4xRkFwG1uYjLm4tUllTy0Nl/If9QISmZSXTu19HncgAet4eRM4YG8SsSQohGklxECCHanKtuHoeiKKxcspN9u3L97peREseE4T0A714wDbl8uHcZsgVbd1Fhd/hsOzytA51iE6lyO/kqe7ffMSmKwpi0IQB8X9RwTJHAY3hX/jGptjBHIloDKcBEsKgYG7/73z28c+gFfvfmPfzmtbt4ZcszPLPkCdI6pp7WfsEr31BZWlXn0mW6R6eyrJoFL3+Dpmlc+eCF9R5X1VQGTehHjyFdg/r1CCGEEKJ1sVjN3PfCL5iT8xIPv30vv/7vXbyw/h/8a/WTtO+ecVr7RW8u5VheSd25iG7gqHEy/99foigKV/7uonrXwtZMKj2GdmXQ+H5B/5qEEEIIIYTo1DWN8dO8e6d88OaKgPpecbb3JqEvV+ygrLLGZ9vhnTrQMy2FGpeb+Zt2+GyrKAqX9fDOzHl/b2D7uYxN9ca0pnirLEMG6Ib3JjBVkdV9RMOkACNIbZ/M1OvGc/ZNk+jSP6vedss+WFXvZrYAhm6w5H3vL5UL7z6HS351LsCJDXaPz7TpOiCLP77/QLDCF0KIpjEAvYkPuelUiCZJSk9g8jXjOOfmST5v0Fj+0Wqf4+genSXvrwRg6nXjufYPlwIn5SK1y51ldsvgz5/+TjbMFEK0DJKLCCFEm3T5DWMAWLpoGwW5pX73G9KrA706p+Fwuvl0yVafbRVF4coRgwCYu3ZzvTcgHXdptwEowOr8bLIr/I+pV1wn0q3J2GUZMgAMvAUYBVnSWDRMCjDCbzWV9gbb2Cu90x0VReHO/7uJF9b9g5m3TmXolIGMvfgM/vThb/j3mr+TmJbQ3OEKIYRfZN11IVqPmgp7gxcZ7VU/5SI3PXEVr2x5hvPvPJuhUwYy+sKR/P7d+3h589OkdvC9XKoQQoSK5CJCCNE29ezbniEju6J7dObN8X0j0ckUReGK6d4ZJx98sxF3HbO/T3bh4L5EmU3sKSxmXfYRn207xCYwNtN7w9MHAcyCURSFcWnemJYXbfC7X1t1fAaMokgBRjRMCjDCb90Gdz5xB2ldVJNKt8GdT3mux9Cu3Pv8bfxj0Z/44/u/ZtwlZ2Iyy/Q8IYQQQgSuwVxEU+k6sNMpz3Xpn8Xdz97CPxb9iUc/+i2TrhqD2WJu7lCFEEIIIYTgstpZMF98tJaykiq/+00/qw9JcVHkF1fw3Rrf+7XE2aycN7APAO+s2dTg2Ff08M6Y+XDfFjy67+LOycbW7gOzpngbjghfhkw5cUldboAQDZMCjPDb+XdMx+Ou/41Zd+ucf+fZIYxItGWGYceo+Ri9/G/oFf/EcK5tcCqtEI1iEISNb8P9RQgRGc67fZrvXMSjc8Fd54QwItGWeXQne8u/YWXBv1ld8AJHqtZLLiKah+QiQgjRZo0Y1YMefTJx2F0BzYKxWkxcNm0IAG8vaPh6yLVneNsu2rGX/PJKn22ndepJgsVGbnUF3+ce9DumnrGdyLAm49CdrCvd6Xe/tuj43i+64QpzJKI1kAKM8NuwqYM4/87pAJy8ZPrxf593+zSGTxsUhshEW2M4VmAUjMEoewiq34aq1zCOXYNx7AoMT3G4wxNtTZMveNQ+hBDNrs8ZPbnqoYsBUNSTkxHvY9JVYxh36ZnhCU60KXnVW3h7/2V8m/tntpXMY3PJB3yecz8fHpxFpasg3OGJtkZyESGEaLMUReGaWRMAmP/eD1RW1Pjd97KpQ7BaTOw6WMD6nTk+2/Zpl8bwTu1x6zrvr9vis61NM3Fxt/4AvB/gMmRja5chW1nc8EybtkxTvDPqPVKAEX6QAozwm6Io3PPvW7n/5Tvo0Kv9iec79Mzk/pdu597nb5PNbEWTGa6dGCW/AOP4HRtuqN3cDNdWjJJbMGrX2hRCCBF5bvnr1Tz01r106Z914rl2XdK5e/Yt/O6te1BVSW9F05Q5c/gi5zfYPRUA6LhPbLRa4jzI54fvx6NH9rIbQgghhPDfqIm96dI9neoqB58EMAsmMS6K88Z5CyVvff5jg+2vGTkEgPfXbcbp9n3d5PLaZci+PrybY/Zqv2M6vgzZjyXbcRO512Z+mgEjOaFomGzGIQKiKAozb53CjFmTqTjmvUAelxwrhRcRNEbVq4BO3esoeMC9AxzLwDap+WPxHMWofg+cq7zxWM5EiboaxdSx2Y8tQkjHe/d8U8cQQoSEoihMuXYck68ZS0VJJbpHJyE1XnIRETRbSj6svZvx9Dd3Aw9lrhz2Vy6lZ/y0Zo/F7i7kcMWHFNZ8j2F4SLYNp1P8FcSYOzfcWbQekosIIUSbpqoq19w6gb89/AEfvb2KC644k/jEaL/6XjNjOPO+28yqzQfZfaiAXp3T6207rW8P0mKjKays5usde07sC1OX/skZDExpx5biPObt38asfiP9iqdnbCcybCnk24vJNkfuCiUm1fv9c+n+z2gSkUtuERSNoigK8SlxxKfEyQUPETSGYYD9K/B5F4WGYf+y+WOxf4tROA2qXgbXJnBthqr/YhRNx7AvbPbji9BRDCMoDyFEaCmKQnxyHIlpCZKLiKDaW/7tiRkvdVPZV7642eMoqlnNkpwZ7Cl9gVLHJsqcWzlY/jZLc84np2J+sx9fhI7kIkII0faNm9qPbr3aUV3l4P03v/e7X8eMRKae1QuANxuYBWMxaVw1YjAAb/2wscGxr+zhbfvenk1+73OnKApjU4cAsN+S71eftsiixgLg1H3vtyMESAFGCNGieICGpm/qYPg/PbYxDHc2Ruk9eJc/O/l2Qh3wYJTej+He36wxCCGEECI83Ia9gRY6Lr15cxGHu4i1+b9ENxycnIt4C0M6m4v+QJljW7PGIIQQQojgUVWVm+6aAsCn762hrKTK777Xn+udnfLdmt3kFZX7bHvliIGYNY1NOblszsnz2faCrn2xaSb2lBWxvvCI3/GMq90H5pC5iBqPw+9+bYlFjQPAJQUY4QcpwAghWgxFMYHaoYFWKpi6NWscRvW7eJdAq+sOEO/zRvU7zRqDCCHZ+FYIIcRJEi1Z+FoPSkEjydqlWWPIrviwdk3xun+/KKgcLHu7WWMQISS5iBBCRIQzxvakZ9/2OByugPaC6dU5nRH9svDoBnO/3uCzbWpsDDMH1M6Y+cF323iLjfO69AXgnd2+256sR2wW7W2peBSdlcWb/O7Xllg07wwYl16NbrjDHI1o6aQAI4RoUZSYa/G9CLaOEnVF8wbhWIbvZdA84FjavDGI0JGLHkIIIU7SL/Ei6it8gHcWSt/E85s1hqKaFfja1MPAQ2HNimaNQYSQ5CJCCBERFEXhypvHAfDJez9QWeH//iHXzhzh7bd4M+VVvmfr3njWMAC+2rabvLIKn22v7+1t+/nBnRTb/ZvhqygKU9LPAOCbgh/86tPWWNQ4lNrL6nZPSZijES2dFGCEEC1L9PVgHsLpb0/eoowS9yCKqWMzB+Gr+HKc7HQqhBBCtEW9E2bSMXoEp98Q4v18WMoNpFi7N2sMvveg8b+NEEIIIVqWMZP60Ll7OtVVDua/53/xYtSgLvTISqXa7uKjb3zPOumXmc7Izh1x6zrvrNnos+3g1EwGp2bi1D28t8d325NNShuJYijsqDhIdrXvpc7aIlXRsGnJANS4j4U5GtHSSQFGCNGiKIoVJfkNiLkdlISfXjD1QUl8DiVmVvMHYTkD0Hw00MB8RvPHIUJD7joVQghxEk0xcU7HvzMy9RaitMQTzydZOjOp3e8Zmdr8uUiybTiKj1xEQSPZNrzZ4xAhIrmIEEJEDFVVufqW8QDMm7Oa6ir/9lBRFIUbzvPuBTN34XrsTpfP9jeP8s5smbtuC1UO33vt3tjbm1O8vWsDbt2/m02TLfF0cqUA8HXuKr/6tDVRptoCjKcozJGIlk4KMEKIFkdRolDj7kdJX4mSthglbSVq6nwU2zmhOX70tfie4eJBibkuJLGIENCD9BBCCNFmaIqZYSk3cF33j7im2/tc1/1jLu/yBr0Szg7J8TvFXUFDy6B1iZdcpM2QXEQIISLK+Gn96dg5hYqymoD2gplyZm8yU+Mpqajh0yVbfbad2KsbnZMTKbc7+HjjNp9tZ3bpQ4otmtzqCr45vMfvePo4vXv4fluwBpceefugRGneAlS1WwowwjcpwAghWixFMaNoHVC01NAe19wHJf5xvEuNnHz3qfffStwfUMwDQhqTEEIIIUJPVUzEmTOIMaWgKL72qAuuaHMWg9L+BqinzIQ5/u9eSfeQEiWzcYUQQojWSNNUrvvFJAA+eHMFZSVVfvUzaeqJWTBvfv4jTlf9RQ9VVbipdhbM/1atx+NjZotNM3Flj8HecXet9ysWgCxXMknmeMpdVaw55rvI0xbFmNsBUOmKvCXYRGCkACOEEHVQoq9CSX4fLKMBK6CBEufdoybqwnCHJ4JIMYygPIQQQohg6hB7HmPbv09a9ARUxYaChqbEkBV7KVlxl4c7PBFEkosIIUTkmTC9Pz16Z1Jd5eC915f73e+88f1JS4qlsKSSz5f5LnpcNLgfiVE2ckrLWbRjr8+21/YagqoorMw7xJ5S/2Z0qKhMThsBwKI8/2fytBVxpkwAqty5YY5EtHRSgBFCiHoYjiXgXA64AQ8YpVD9NkbhdAzXzvAG18IZhhPDvhCj6k2MmgUYRk24Q6qfrLsuhBCihSqyr6ag+jsMw4WBB7dRzuHKeSw9PJNS++Zwh9eiGYYLw/5tbS7yOYZeGe6Q6ie5iBBCRBxVVbn5l1MB+Oz9NeTnlvrVz2I2ceP53lkw//tsDS63p962URYz14z0zmx5beU6DB+/KzrEJjAtqycQ2CyYyeneGbnrjm2n2FHmd7+2INbsLcDIDBjRECnACCFEHQz7V1D1n9rPTk5oDDDKMUpmYRi+N7KLVEbNPIyC0Ril92BU/BWj7D7v59XvhDs0IYQQotUorF7BzmNPAd49X36i4zaqWZN/B27dvyVLIo1hX4hROA6j9M7aXOQBjIIxGFWv+rz4JIQQQoTS8FHdGTKyKy6Xh3deWeJ3vwsmDCQ1MYa84gq+WrnDZ9trzhiMRdPYfCSPddlHfLa9sbd3ybKP922l3Gn3K5YOUWn0i++GjsF3BWv8+wLaiFhzewAqXL7PqxBSgBFCiDoYla9S/1ukB/RCsC8MZUitglHzOUbZ78AoP/5M7YcqjPLHMarfC1ts9dKN4DyEEEKIIDpQ9r9T9n85lY5br+BI5Wchjak1MOyLMUrvBf3Y8WdqP9ZgVPwDql4NV2j1k1xECCEikqIo3HjXFAC++XwTeUdL/OpntZi4ZsZwwDsLxtf+LqmxMVw8pB8Ar65Y63PcUe060zMhlSq3kw/3bfErFoCpGd5ZMN/mr4moGx3izZ0AqPEU4/S04Jm2IuykACOEED9jGDXg3gzUn8SAhuFcFaqQWgXD8HgvbPhqU/F0y5s5JMt+CCGEaGEMw6DY/sPPZr6crrjmhxBF1DoYhtFwLlL5r5a3HJnkIkIIEbH6Dcpi6Jnd8Hh05r7xvd/9Lp48iPgYK4fzSln84x6fbW8ePRwFWLL7AHsK6t/fRVEUbuzjLey8uXM9up+/W8amDcWqmjlcnc/uimy/v4bWzqLFEKWlAlDmOhTmaERLJgUYIYT4Ob//gPVVoIlArvWgN7D2qVEGjhWhiUcIIYRoxQwazkcMyUVO5d4Fnn3g89zZwfFdqCISQgghGnTtbRMB+Hr+Bgr83Asm2mbhyuneJcPe+NT3zJMuKUlM69sDgP+uWOdz3Eu69SfeYuVgRQnfHPZd2DkuxhTFqFTvXjOL8lf71aetSLB0BqDMKQUYUT8pwAghxM8oajRoPQDFRysPinloqEJqHXT/pkv/tCRISxGMO07lrlMhhBDBoygKidZBNPTnWpJtSEjiaTX8ykVUyUWEEEK0KAOHdmbwiK643R7eDmAvmMunDyHaZmZPdiHL1u/z2fbWMSMB+HzLTo6WltfbLtps4Zqe3msdr+740e9Yprc7C4DF+T9S6a72u19rl2DpAkCpY394AxEtmhRghBCiDkrMzdT/h6wKShzYzg9lSC2f1t7PdpnNG0egZNkPIYQQLVDXhBuof7atgqpY6Bh7cShDavn8ykV0yUWEEEK0ODf/0rsXzKLPNnJwX4FffRJio7h8Wm2xZN4qn7NgBnVsx1lds3DrOv9d6XsWzE19h2NWVdbkH2Zj0VG/YhmU0JPO0ZnYdSdf50XOLJhkq3dm0TGnf7OFRGSSAowQQtQl6jKIurz2k5M3wNUAK0rSi96ZMuInpv61M4fq+9WigJoJljNDGZUQQgjRKrWLnkbX+BsBUE7KRRQ0FEwMT38Wi5YYpuhaJsXUGcxD8ZmLKIlgnRTCqIQQQoiG9R2YxZjJfdF1g9f/843f/a6dMZxom5ndhxqeBfOLsd5ZMB+u30JxZf2zVNpFx3FB134AvLJtjV9xKIrChR0mAPDZkWV4DN/72LUVydaeAJQ49vgsgInIJgUYIYSog6IoKPF/QUl8ASxngZoCanuIvhEl9XMUy8hwh9jiKIqCkvA43l8tP//1ogAKSvxjKIp2eudw0o3gPIQQQoggUhSFPsm/YWTGS6RGjcWiJmPT2tEp/krGdZxHWvTYcIfYIinxfwDM1J2LgBL/JxTFEuqwfJNcRAghBHDTXVNQVYXVS3exZYN/e4okxEVxxfSfZsHoPn4fjOrWiQHtM3C4Pbz1wwaf497W7wwAvszexeGKUr9imZg+gnhTDAWOY6wu3upXn9Yu0dIdBRW7p5QaT1G4wxEtlBRghBCNYhh2DNcODNcejDZ6Z4OiKCi2KajJr6Omr0JNX4Ia/xCKKSvcobVYimUkSvL/wNT31BdMPVCSXkWxW4aPPAAAKtVJREFUtcA7Tg09OA8hhBAh5XS72ZVbyO68IlyetpuLpEWPYWS7/zC18zImd/qG/im/J9bcJdyhtViKeSBKyrtgHnTqC1pnlMT/oESdF57AfJFcRAghBNCpaxrnXDQMgJf/b6HfMyquOWc40TYLuw8Vsnht/UthKYpyYhbMO2s2UWF31Nu2T1I64zK7ohsGr+1c61ccVs3COZmjAfji6HK/+rR2JtVKgqUzAEX2nWGORrRUUoARQgTEMGrQK/6BUTAKo/hCjOJzMQrHY1S9hiF/+Am8RRg1dR5K6gKUpNdRUj5FSfkcxSp36gohhGg6p9vDc1+vZMJfXuaSZ9/m4tlvMelvr/Dy4jW4PZKLCG8RRk15HyV1YW0u8on337ap4Q5NCCGE8On62ycRFW1h97YjrFri3wX9hLgorpnhLdy88rHvWTBT+/Sge2oyFQ4H7/64yee4t/X3zoJ5f89mypx2v2KZkTkGFYVNpbvJrs7zq09rl2rrD0CRfVuYIxEtlRRghBB+MwwnxrFZUPUaGFU/vaAXYlT8HaP8UVnzUpygmHqgWMegmPugKEq4w6mfbHwrhBCthkfX+dVbn/Ly4h8oP+muzZKqGp5buIKH5n4puYg4QTF1rc1F+kkuIoQQolVITo3jwqu8+6a++dJidN2/m0uuPmc4cdFWDhwp9jkLRlUVfjHOOwvmf6vWU+N01dt2XGYXeiemUeV2Mmf3Rr/iSLclMzLFW5BYcPR7v/q0dmm1BZhCKcCIekgBRgjhv5qPwbUWqCcBqJkLLt/riArR4si660II0Wos3LKHZbsO1nmt2QC+3Lyb73cfDHVYQjSN5CJCCCFOcul1o4mOsXJgTz7Lv9nuV5/YaOuJvWBe+2S1z1kw5w7oQ8fEeI5V1/DB+i31tlMUhVn9vMWaN3auw+nnkq/nZY4D4Nv8NdR46l/mrK1Isw0AoMi+A72NLtEvmkYKMEIIvxnVczi+gWndNIzq90MVjhBCCCEizPs/bEb1MZNBUxXe/6H+CwlCCCGEEC1dfEI0l1w7CoA3nv8Wt8u/i/pXnTOMmCgLew8XsfjH+mfBmDSV22r3gnl1xVocLne9bS/s2o+0qBjyqiv49KB/xaAhSb1pb0uj2mNnacE6v/q0ZgmWLpjVWNxGNSWO+s+7iFxSgBFC+M9zCO/9pfU2AM+BUEUjRHDIsh9CCNFqHCwsQffxnuvRDQ4WloQwIiGCQHIRIYQQP3PpdaNJTI7h6OFjfDnPvyJGfIyNq8/x7gXz8scr8fhYvuziIf1oFx9LQUUVH22of+ksq2bilr7eYs2LW1f7zMOOUxWVGe3HALAg9/s2vzysqmhkRA0GIK9mfZijES2RFGCEEP5T4hpooIKSGIpIhAgegyBc9Aj3FyGEEJEhPsrq83UFSIi2hSYYIYJFchEhhBA/Ex1j5drbJgDw9itLqK7ybymvq88ZTnyMlYNHj7Fo1a5621lMphOzYF7+fg1Od/2zYK7rNZQ4s5W9ZcV8nb3brzimZpyJWTGxrzKHHeVt/0bddNsgAArtW8MciWiJpAAjhPBf1AWA5qOBjhJ1XqiiEUIIIUSEOX9oX59LkBnAeUP7hC4gIYQQQohmMvPiEbTPSqb0WBUf/M+/De1jo61cO3MEAK/MW4XbXf/yZZcNHUBabAx55ZV8vLH+5cXiLFZu6jMcgP9sXeXXjJZ4cwwT071xfJzznV+xt2bH94EpqNna5mf8iMBJAUYI4Tcl+npQYqm7CKOBqQfYzg51WEI0jSz7IYQQrcblZwwkOTYKTT29CKOpCh2S4jl/aN8wRCZEE0guIoQQog4ms8Yt90wD4MO3V5KfW+pXv8unDSUpLoqc/FI+XVr/jAyr2cRtY71FkpeXr8Hpo1hzU98R2DQTW4rzWJ570K84LsmaDMDq4i3kVOf71ae1SrX1Q8VEjaeICteRcIcjWhgpwAgh/KZo7VCS3watQ+0zGieKMeYhKElvoiiWcIUnROPoenAeQgghml1iTBRv3n4FXVKTAG/R5Xgxpne7NN64/XJirJKLiFZGchEhhBD1GDu5L4OGd8HpcPPGf771q09MlIVbLjoLgFfnrabG7qq37RXDB5EWG83Rsgo+2VT/LJgUWzRX9xoCwPNbVvkVR6fodpyZMgADg49zFvvVp7UyqVZSbf0AyK/ZGN5gRIsjBRghREAUc2+U1K9Rkl5Hif0lSuyvUFI+Rk2Zg6Klhjs8IYQQQrRxnVOTmH//Dbzxi8u5a8oo7p46irfvvJL377mG9onx4Q5PCCGEECJoFEXhF/d7VxpZ/NUWDu71bybJxZMH0T4tgeKyKj78dmO97WxmE7eO8e4F81IDs2Bu63cGZlVldX42G4qO+hXHZR2nAvBt/g8cc5b71ae1yogaAkgBRpxOCjBCiIApiopiHYMSezdK7B0o5gHhDkmIxpNlP4QQotVRFIWR3Tpyx5QzuX3ymQzt3B7Fx94wQrRokosIIYTwoWff9oyd0g/DMHj9ef9mwZhNGrde7J0F8/YXa6mqcdbb9soRg0iNieZIaTnzfcyCaR8Tz8XdvNd/Xtz+g19x9EvoRt/4rrgND58dWeZXn9bqeAEmr2a97AMjTiEFGCHCzDAMNi/bzn/ufY1/3vIf3vv7PI7llYQ7LCEih1z0EEJEOMMw2L56Ny/c/wb/uPnfvP3nDynMKQ53WEJEDslFhBBCNODGOyejaiqrl+5iy4ZDfvU5e3RfOrVLorSihvcWrq+3nc1s4tax3lkwLyzzPQvmjgFnoQDfHdnPUY/drzgu7ujdC+ar3BXYPfUXglq79KhBqJiocufJPjDiFFKAESKMKkur+PWkR/n1xEf57MWv+ebtZbz2hzlc0+kOPnthYbjDE0IIIUQbV1Nl55Fz/8avRj/C/P98xbfvLOetJz7g2i53Mvcf88MdnhBCCCGEADp1TeOci4YB8Orsr/2aYWHSVG67ZBQA7yxYS1llTb1trxpxfC+Ycj7euK3edt3ik5nZuQ8A3zj8u2HnrJSBZFiTKXdXsaRgrV99WiOzGk1alHeGUG71j2GORrQkYS/APP/883Tt2hWbzcbw4cNZvny5z/ZLly5l+PDh2Gw2unXrxosvvhiiSIUIvieueJptK3YB4HF70N06hm7gces8d/errJwvb9hCNDvdCM5DtFqSi4hI9s+b/8O6RZuBn3IR3ePNR1596G0WvbU0zBEKEQEkFxFCCOGH638xEVuUhZ1bc1j+Tf1LhZ1s6pm96ZGVSlWNk7e/qL/4YTObuK12FsxLy9bgdLvrbXvnAO/SZutd5RyqaHgFF01ROb/DeAA+PbK0TS/PlRntPYdHpQAjThLWAszcuXO57777eOSRR9iwYQPjxo1jxowZZGdn19n+wIEDzJw5k3HjxrFhwwZ+//vfc++99/LRRx+FOHIhmm7X2n1s+GYLukev83VFVXj7Lx+GOCohIo9h6EF5iNZJchERyXJ2H2X5h6vrzUVQ4O0/f9im/0gWoiWQXEQIIYQ/klPjuOz60QD891+LcNhdDfZRVYXbLxsDwNyvN1BYUllv2yuGDyI9Lobc8go+WL+13nYDUtoxIbMrBvD8Nv/2gpnebhRRmpVD1blsLN3lV5/WqH30GQDk1qxFN+ovYonIEtYCzDPPPMOsWbO49dZb6du3L7NnzyYrK4sXXnihzvYvvvginTp1Yvbs2fTt25dbb72VW265haeeeirEkQvRdKvm/4hmqv+/oKEb7Fm3n+Jc2Q9GCCGai+QiIpKt+nQtqupj43oDju7N4/Cuo6ELSgghhBBC1OvyG8aQmh5P3pESPnp7pV99xg3txqCe7XE43bzycf19bGYTd4w7E4AXl/1AjbP+As/dtbNg5h/c7tcsmBhTFNMyvH0+zvnOr7hbo5T/397dx1Vd3/8ffx4uDogIXkCAiqLmtRMJ08QLbCl+09VatZy2daWbfMu84Gtls82s7etttZy5aX1XmOu3Wi5LV5uV1AJB6UIEdUEXXuIFqJAKiiJwPr8/CDbj4Afw8Plw8bjfbud2k4+vz4fXeXk454nv8/kcv0Hy8+6sCtdZnTi/x+520EL42PWNL168qKysLC1evPiS7QkJCdq+3f2TQWZmphISEi7ZNmXKFCUnJ6uiokK+vr519ikvL1d5eXnt1yUlJbV/rqgwXylur2pmw4zqd6UzKi8vlzPAV5UVl3+32vmzZaqoCGzS97AbjyNzzOjyLJmL4YHLdvDu8FaJLNKy8fxo7kpndOFCuZwdnaqqNMki58632n8HHkfmmNHlkUUAAC2JfwenfrogQct/vkGvrU3X5JtGKDQs+LL7OBwOPfijCfrpk6/p7bTP9KMp16hvzxC3tbdfM0wvbtuhY2dK9Jcdu3VfXKzbupiQ7hrs01F5lef0h93b9fTYaaa939wjXn8/lq6dpz7XFyWHNDCot/kdbmW8HN7qGTBG+0rf0eFzGQoPiLG7JbQAti3AFBUVqaqqSmFhYZdsDwsLU2Fhodt9CgsL3dZXVlaqqKhIERERdfZZvny5li1b5vZ4KSkpTey+/WBG5po6o/CxnTVr7A9N67Jyd0gNu7Rni8XjyBwzcq+srKz5v4lhSOI/PdojskjrwIzMNXVGQd9xavbL5lnk8yOf6fMj9X8Ya2vA48gcM3KPLAIAaGniE4bprb9+os9y8vXKC2la8NjNpvsMH9BdE0derdQde7V6fYae+Z9b3NY5fbx1f/xoPfZWil7I+FTTY7+jjn5Ot7X/5ReqvMpzenP/vzR3eJx6d+py2R4iOoTo+qtG6oMTn+i1/He1dNgc075bo54dx2pf6Ts6cm6brg190O520ALYtgBTw+G49LIHhmHU2WZW7257jUcffVRJSUm1X5eUlCgyMlKSNHnyZLfvVEX1O71SUlKY0WVc6YzKz1/UPQMe1PmzF9z+vuTl7dBNcybrvv+90wPd2oPHkTlmdHn/eaYA0FzIIi0Tz4/mrnRGlRWVmjV0oc4Ulcjdx0d4eTv03Rnj9OAfZnugW3vwODLHjC6PLAIAaGkcDodmPThZSbOS9d5b2br1zjHq1SfUdL8H7hiv9J37lJGzX7u+PKroAT3c1n0/erD+mP6J8k+d0f/7OEeJE0a5rYvy6aAJEVHaWnBQa/Zk6jdxU017mN4rQR+e+FSffP2Z9p89qr6B7ntozboHjJKXfFRSka/TFw+qszPK7pZgM9sWYEJCQuTt7V3nHaYnTpyo887SGuHh4W7rfXx81K1bN7f7+Pn5yc/Pz+3f+fr68kuGCWZkrqkz8vX11aIXH9Djtz5VfdWB//gAXC9vL0UOjdSPf3FHm5g/jyNzzMg9S2bickmOK/zgWj74tlUii7QOzMjclWSRh9fO1c+n/lpVla46WSS0z1Wa9es728T8eRyZY0bukUUAAC3R0BG9FDdxkLanfq7kVSla9ruZpvv0iuii700Yqr+l/kvP/TVDzy25w+2byHy9vTV34hg9vPFdrd2+QzOvHa6gDv5ujzl32BhtLTioN/ZVnwUTGdj5sj30CLhK40JjtPXkTr1+OEWPDL6nIXe3VXF6Byoi4FodLcvUobMfqnPXe+1uCTar/xPAm5nT6VRsbGydU91TUlIUFxfndp8xY8bUqd+yZYtGjhzJLwtola77XqxWZvxKo6ddI8c3H4Ib1K2TZiz+gX6X/qQ6BgXY3CHQDhiGZ25odcgigDTi+mH6/UfLNe4Ho+TlXf2rQcfgAN2edJN+/9H/KjgkyOYOgXaALAIAaIL7HpwsL28vfbT1C+3acaBB+8z6wRg5fb2V/cVRfbTnYL11074zUFeHdlXJhXK9lLmz3rqYkO4aFxGlSsOl5//1cYN6+GHkZElSxslsHTt/skH7tDa9A6+XJB0q/dDmTtAS2LYAI0lJSUl68cUXtXbtWuXl5WnhwoXKz89XYmKipOpLdtx111219YmJiTp06JCSkpKUl5entWvXKjk5WYsWLbLrLgBXbNCo/npi0yP6+9k/683il/T68Rd1z5M/UkCnDna3BgBtHlkEkPpFR+kXf/0fvf1NFnmjaK1++psfK6hrJ7tbAwAAQD0io0I07dZYSdIff/eeXC7zsyHDunbS7ZNGSJKe++s2uVzuF/C9vbw07/rqN6X9KXOnvj5X/2eiPTi8uu6ve3fp2DnzS3f2DeyhkV2HyCVDGw5/YFrfGvUKnCCHvHXq4l6VVhy1ux3YzNYFmOnTp2vlypV64oknNGLECG3dulWbN29W7969JUkFBQXKz8+vre/Tp482b96s1NRUjRgxQk8++aRWrVql2267za67AHiM09+pTl0C5eVl648l0O4YLpdHbmidyCLAvzn9fNWpS6C8vb3tbgVoV8giAICm+vHPJiqgo5/2fl6gdzfVf6bKf7r7plEK8Hfqi0Mn9F5mXr11kwdfraERV6msokL/l/5JvXWjw3ppdFikKlwurdmT2aAe7vjmLJgPjn+sry+2vc9b8/MOUliHaEnS4bMZNncDu9n+P73333+/Dh48qPLycmVlZWnChAm1f7du3TqlpqZeUh8fH6+dO3eqvLxcBw4cqH2HKgAATcJlP9o9sggAwFZkEQBAE3XuGqifzJkoSXrpDx+o5Ez9Z6rU7tOpg+65eZQk6bnXt+nCxQq3dQ6HQwtvGCdJevXT3Tp6uv6FkoXR4yVJ6/fu0uGzp017GBrcT4OColRpVOkfx9JN61ujyI7VMzl8rm3ePzSc7QswAAAAAAAAAIDGu/mO0Yrqd5VKzpTpT2v+2aB9pk+JUVi3TjpeXKrX3s2ut25sv14aHRWpiqoq/SG1/rNbrgvvpXERUapwufTsrm0N6uHWnjdIkv5xLF0XqsobtE9rEhlYvQBz/PwuXag6Y3M3sBMLMACA9s1leOYGAADQFGQRAMAV8PH11gOPTJMkbd6YpcMHi0z38Xf66r9/OFaS9Ke3P1HxmXNu6xwOh5ImVdf9bVee9p0srveYi2KqryTw5v5/ae+Z+utqXNftO4rwD1FpZZneKWjYok1r0sm3u7o4r5ahKh051/buHxqOBRgAQPtmGJLhusIb/+kBAACaiCwCALhCw2OjdN2EgXJVuZS8KqVB+0wZM1iD+oSp7MJFJW/8qN666J4RumFgP7kMQ8/+c3u9dSNCumtSz6vlMgytasBZMN4OL/3wm8+C2XD4A51vg2fB9AqsXpQ6dDbV3kZgKxZgAAAAAAAAAKAVmzVvsry8vZSZ9rl2Zx00rffycmjejOoFgk2pe3T4+Kl6axfcECeHpC15e7XnaGG9dQtHVF926+2Dufri1EnTHm4IG6UI/xCdrijV20e3mta3Nr0DvytJOlb2sS5WldrcDezCAgwAoF0zXIZHbgAAAE1BFgEAeEKvPqGa+oNYSdL/rXhXLpfLdJ/YwZEaMzxKVVUuPf96/We39L8qRN+PHiJJWvF+Rr11Q7uG6cZeA2VIenZ3/XU1fLy8NbP3f0mS3jzygcoqz5vu05p08eurzs4+chkVOnzOfB5om1iAAQC0b1d8yY9vbgAAAE1BFgEAeMhP5kxUQEc/7f28QO//fVeD9rn/jvFyOKT3P/5CufvrP7tl7sTr5OvtrcwDh7V9f369dQuix8khafOhL/TZ18dNv3/8VSPVs8NVKq0s09+OpjWo59YkKvAGSdKB0vdt7gR2YQEGAACbrFmzRn369JG/v79iY2OVnp5+2fq0tDTFxsbK399fffv21fPPP29RpwAAAGhO5EIAntC5a6BmzKq+rNiLq1JUWmJ+RsmA3qG6cWz12S0rX0mTUc/nivXsEqwZI4dX1/0zU6566gZ2CdX3ogZLkn6Xc/nnMqn6s2Bm9L5RkvS3o6lt7rNgojpNkiQdK/tE5yuLbe4GdmABBgDQrtl12Y/169drwYIFWrJkibKzszV+/HjdeOONys93/06iAwcOaOrUqRo/fryys7P185//XPPmzdMbb7xxpSMAAAA24hJkIBcC8KQfzLxOvfqE6sypc1q3+oMG7ZP4w7Hyc/po15dH9eGOr+qt++8Jo9XR6VTe8ZPafepcvXULosfJy+HQ+0f2KvvkMdPvPz40Rt39Q1VaWaZ3C+q/FFprFOzspVD/oTJUpf2l79ndDmzAAgwAoH2z6bIfK1as0KxZszR79mwNHjxYK1euVGRkpJ577jm39c8//7x69eqllStXavDgwZo9e7buu+8+/fa3v73SCQAAADtxCbJ2j1wIwJN8fX00d/E0SdI/3tihr/LMF0DCunbSj6eOlCT94bV0XayodFvXpWMH/XRcdd17BV/rYmWV27p+wd10W99hkqSnslPrPaumhrfDS7dHVl+qa+ORf6rCVWHac2vSr9NUSdK+kndt7gR28LG7AavV/MCXlZWppKREvr6+NnfUMlVUVDAjE8zIHDMyx4wur6SkRJJMw9qVqFSFdIWHr1R1OKzpt4afn5/8/Pzq1F+8eFFZWVlavHjxJdsTEhK0fbv7d/tkZmYqISHhkm1TpkxRcnKyKioqePy0ImSRhuH50RwzMseMzDGjy2ttWQStj1W5sLy8XOXl/76sz5kzZyRJX3/99ZXeBZioeZ4tLi7mebaZMet/69knSKPj++jIoWIVFxera3Hd30u/7cbr+mjDlk/UJyxQR48VKiiwg9u6af176+WtHyncy6UjxwsV0qmT27q7I4fq7bxdivT2V+HJk3J6e1/2+0f79FNwZYD6+kXoyIljCvINNL+jrURQVYxc5zrJ3+ijEyePydvL/N+jBo9r69S8Jno697W7BZjS0lJJ0uzZszV79mybuwEANERpaamCg4M9ekyn06nw8HBlFG72yPECAwMVGRl5ybalS5fq8ccfr1NbVFSkqqoqhYWFXbI9LCxMhYXuP/SwsLDQbX1lZaWKiooUERFxZXcAliGLAEDr0xqySHh4uJxOp0eOBetYlQuXL1+uZcuW1dk+YMCAK+geQGvw0puNq0+RtOKRhtVufHSBac3T39waY5keaOQercUWSU/Y3QRMFBcXezT3tbsFmO7duys3N1dDhgzR4cOHFRQUZHdLLVJJSYkiIyOZ0WUwI3PMyBwzujzDMFRaWqru3bt7/Nj+/v46cOCALl686JHjGYYhh8NxyTZ3Z7/8p2/XuzuGWb277WjZyCINw/OjOWZkjhmZY0aX15qyiNPplL+/v0eOBes1dy589NFHlZSUVPv16dOn1bt3b+Xn53t8cRGX4nnWOszaOszaOszaOmfOnFGvXr3UtWtXjx633S3AeHl5qUePHpKkoKAgHrgmmJE5ZmSOGZljRvVrzl8I/f39bfmPipCQEHl7e9d5V+OJEyfqvJuxRnh4uNt6Hx8fdevWrdl6heeRRRqHGZljRuaYkTlmVL+2mEXQcliVC+u7NG5wcDA/+xbhedY6zNo6zNo6zNo6Xl5enj2eR48GAABMOZ1OxcbGKiUl5ZLtKSkpiouLc7vPmDFj6tRv2bJFI0eO5DqwAAAArRS5EACAto0FGAAAbJCUlKQXX3xRa9euVV5enhYuXKj8/HwlJiZKqr5MxF133VVbn5iYqEOHDikpKUl5eXlau3atkpOTtWjRIrvuAgAAADyAXAgAQNvV7i5BJlWfert06VLTa/O3Z8zIHDMyx4zMMaP2a/r06SouLtYTTzyhgoICDRs2TJs3b1bv3r0lSQUFBcrPz6+t79OnjzZv3qyFCxdq9erV6t69u1atWqXbbrvNrruAK8DPvjlmZI4ZmWNG5pgRYD87ciE/+9Zh1tZh1tZh1tZh1tZprlk7jJpPagMAAAAAAAAAAIBHcAkyAAAAAAAAAAAAD2MBBgAAAAAAAAAAwMNYgAEAAAAAAAAAAPAwFmAAAAAAAAAAAAA8rM0uwKxZs0Z9+vSRv7+/YmNjlZ6eftn6tLQ0xcbGyt/fX3379tXzzz9vUaf2acyM3nzzTU2ePFmhoaEKCgrSmDFj9N5771nYrT0a+ziqsW3bNvn4+GjEiBHN22AL0NgZlZeXa8mSJerdu7f8/PzUr18/rV271qJu7dHYGb3yyiuKjo5WQECAIiIidO+996q4uNiibgF4ClnEHFnEHFnEHFnEHFkEaH/IIdYi01iHbGQdMpZ1yGrW2Lp1q2666SZ1795dDodDmzZtMt3HI6+PRhv02muvGb6+vsYLL7xg5ObmGvPnzzc6duxoHDp0yG39/v37jYCAAGP+/PlGbm6u8cILLxi+vr7Ghg0bLO7cOo2d0fz5843f/OY3xieffGJ8+eWXxqOPPmr4+voaO3futLhz6zR2RjVOnz5t9O3b10hISDCio6OtadYmTZnRzTffbIwePdpISUkxDhw4YHz88cfGtm3bLOzaWo2dUXp6uuHl5WU8++yzxv79+4309HRj6NChxi233GJx5wCuBFnEHFnEHFnEHFnEHFkEaH/IIdYi01iHbGQdMpZ1yGrW2bx5s7FkyRLjjTfeMCQZGzduvGy9p14f2+QCzKhRo4zExMRLtg0aNMhYvHix2/qHH37YGDRo0CXb5syZY1x33XXN1qPdGjsjd4YMGWIsW7bM0621GE2d0fTp043HHnvMWLp0aZt/YW/sjN555x0jODjYKC4utqK9FqGxM3r66aeNvn37XrJt1apVRs+ePZutRwCeRxYxRxYxRxYxRxYxRxYB2h9yiLXINNYhG1mHjGUdspo9GrIA46nXxzZ3CbKLFy8qKytLCQkJl2xPSEjQ9u3b3e6TmZlZp37KlCnasWOHKioqmq1XuzRlRt/mcrlUWlqqrl27NkeLtmvqjF566SXt27dPS5cube4WbdeUGb311lsaOXKknnrqKfXo0UMDBgzQokWLdP78eStatlxTZhQXF6cjR45o8+bNMgxDx48f14YNGzRt2jQrWgbgAWQRc2QRc2QRc2QRc2QRoP0hh1iLTGMdspF1yFjWIau1bJ56ffTxdGN2KyoqUlVVlcLCwi7ZHhYWpsLCQrf7FBYWuq2vrKxUUVGRIiIimq1fOzRlRt/2zDPP6Ny5c7rjjjuao0XbNWVGX331lRYvXqz09HT5+LS5H606mjKj/fv3KyMjQ/7+/tq4caOKiop0//336+uvv26T1wVtyozi4uL0yiuvaPr06bpw4YIqKyt188036/e//70VLQPwALKIObKIObKIObKIObII0P6QQ6xFprEO2cg6ZCzrkNVaNk+9Pra5M2BqOByOS742DKPONrN6d9vbksbOqMZf/vIXPf7441q/fr2uuuqq5mqvRWjojKqqqjRz5kwtW7ZMAwYMsKq9FqExjyOXyyWHw6FXXnlFo0aN0tSpU7VixQqtW7euTb8rojEzys3N1bx58/TLX/5SWVlZevfdd3XgwAElJiZa0SoADyKLmCOLmCOLmCOLmCOLAO0POcRaZBrrkI2sQ8ayDlmt5fLE62ObW/4NCQmRt7d3nVXCEydO1FmxqhEeHu623sfHR926dWu2Xu3SlBnVWL9+vWbNmqXXX39dkyZNas42bdXYGZWWlmrHjh3Kzs7W3LlzJVW/+BiGIR8fH23ZskXf/e53LendKk15HEVERKhHjx4KDg6u3TZ48GAZhqEjR46of//+zdqz1Zoyo+XLl2vs2LF66KGHJEnDhw9Xx44dNX78eP3qV7/i3WdAK0AWMUcWMUcWMUcWMUcWAdofcoi1yDTWIRtZh4xlHbJay+ap18c2dwaM0+lUbGysUlJSLtmekpKiuLg4t/uMGTOmTv2WLVs0cuRI+fr6NluvdmnKjKTqd2bcc889evXVV9v8dQUbO6OgoCDt2bNHOTk5tbfExEQNHDhQOTk5Gj16tFWtW6Ypj6OxY8fq2LFjOnv2bO22L7/8Ul5eXurZs2ez9muHpsyorKxMXl6XPjV7e3tL+vcqO4CWjSxijixijixijixijiwCtD/kEGuRaaxDNrIOGcs6ZLWWzWOvj0Yb9Nprrxm+vr5GcnKykZubayxYsMDo2LGjcfDgQcMwDGPx4sXGT37yk9r6/fv3GwEBAcbChQuN3NxcIzk52fD19TU2bNhg111odo2d0auvvmr4+PgYq1evNgoKCmpvp0+ftusuNLvGzujbli5dakRHR1vUrT0aO6PS0lKjZ8+exu2332589tlnRlpamtG/f39j9uzZdt2FZtfYGb300kuGj4+PsWbNGmPfvn1GRkaGMXLkSGPUqFF23QUATUAWMUcWMUcWMUcWMUcWAdofcoi1yDTWIRtZh4xlHbKadUpLS43s7GwjOzvbkGSsWLHCyM7ONg4dOmQYRvO9PrbJBRjDMIzVq1cbvXv3NpxOp3HNNdcYaWlptX939913G/Hx8ZfUp6amGjExMYbT6TSioqKM5557zuKOrdeYGcXHxxuS6tzuvvtu6xu3UGMfR/+pvbywN3ZGeXl5xqRJk4wOHToYPXv2NJKSkoyysjKLu7ZWY2e0atUqY8iQIUaHDh2MiIgI48477zSOHDlicdcArhRZxBxZxBxZxBxZxBxZBGh/yCHWItNYh2xkHTKWdchq1vjwww8v+/zbXK+PDsPg3CQAAAAAAAAAAABPanOfAQMAAAAAAAAAAGA3FmAAAAAAAAAAAAA8jAUYAAAAAAAAAAAAD2MBBgAAAAAAAAAAwMNYgAEAAAAAAAAAAPAwFmAAAAAAAAAAAAA8jAUYAAAAAAAAAAAAD2MBBgAAAAAAAAAAwMNYgAFaiaioKK1cubLB9QcPHpTD4VBOTk6z9QQAANoPsggAAEDjkJ8AsAADtBKffvqpfvazn3n0mOvWrVPnzp1N6woKCjRz5kwNHDhQXl5eWrBggUf7AAAALR9ZBAAAoHHITwBYgAFaidDQUAUEBNjyvcvLyxUaGqolS5YoOjralh4AAIC9yCIAAACNQ34CwAIM0Azefvttde7cWS6XS5KUk5Mjh8Ohhx56qLZmzpw5mjFjRu3X27dv14QJE9ShQwdFRkZq3rx5OnfuXO3ff/u01c8//1zjxo2Tv7+/hgwZovfff18Oh0ObNm26pJf9+/fr+uuvV0BAgKKjo5WZmSlJSk1N1b333qszZ87I4XDI4XDo8ccfd3t/oqKi9Oyzz+quu+5ScHDwFU4HAAA0N7IIAABA45CfADQHFmCAZjBhwgSVlpYqOztbkpSWlqaQkBClpaXV1qSmpio+Pl6StGfPHk2ZMkW33nqrdu/erfXr1ysjI0Nz5851e3yXy6VbbrlFAQEB+vjjj/XHP/5RS5YscVu7ZMkSLVq0SDk5ORowYIBmzJihyspKxcXFaeXKlQoKClJBQYEKCgq0aNEiD08CAADYgSwCAADQOOQnAM2BBRigGQQHB2vEiBFKTU2VVP0CvXDhQu3atUulpaUqLCzUl19+qYkTJ0qSnn76ac2cOVMLFixQ//79FRcXp1WrVunll1/WhQsX6hx/y5Yt2rdvn15++WVFR0dr3Lhx+vWvf+22l0WLFmnatGkaMGCAli1bpkOHDmnv3r1yOp0KDg6Ww+FQeHi4wsPDFRgY2FwjAQAAFiKLAAAANA75CUBzYAEGaCYTJ05UamqqDMNQenq6vv/972vYsGHKyMjQhx9+qLCwMA0aNEiSlJWVpXXr1ikwMLD2NmXKFLlcLh04cKDOsb/44gtFRkYqPDy8dtuoUaPc9jF8+PDaP0dEREiSTpw44cm7CgAAWiCyCAAAQOOQnwB4mo/dDQBt1cSJE5WcnKxdu3bJy8tLQ4YMUXx8vNLS0nTq1KnaU1al6tNQ58yZo3nz5tU5Tq9evepsMwxDDoejQX34+vrW/rlmn5rrmQIAgLaLLAIAANA45CcAnsYCDNBMaq4dunLlSsXHx8vhcCg+Pl7Lly/XqVOnNH/+/Nraa665Rp999pmuvvrqBh170KBBys/P1/HjxxUWFiZJ+vTTTxvdo9PpVFVVVaP3AwAALR9ZBAAAoHHITwA8jUuQAc2k5tqhf/7zn2uvDzphwgTt3LnzkmuGStIjjzyizMxMPfDAA8rJydFXX32lt956Sw8++KDbY0+ePFn9+vXT3Xffrd27d2vbtm21H9zW0HdTSFJUVJTOnj2rDz74QEVFRSorK6u3NicnRzk5OTp79qxOnjypnJwc5ebmNvh7AQAAa5FFAAAAGof8BMDTWIABmtH111+vqqqq2hfoLl26aMiQIQoNDdXgwYNr64YPH660tDR99dVXGj9+vGJiYvSLX/yi9jqf3+bt7a1Nmzbp7NmzuvbaazV79mw99thjkiR/f/8G9xcXF6fExERNnz5doaGheuqpp+qtjYmJUUxMjLKysvTqq68qJiZGU6dObfD3AgAA1iOLAAAANA75CYAnOQzDMOxuAsCV27Ztm8aNG6e9e/eqX79+drcDAADaGbIIAABA45CfgLaPBRigldq4caMCAwPVv39/7d27V/Pnz1eXLl2UkZFhd2sAAKAdIIsAAAA0DvkJaH987G4AQNOUlpbq4Ycf1uHDhxUSEqJJkybpmWeesbstAADQTpBFAAAAGof8BLQ/nAEDAAAAAAAAAADgYV52NwAAAAAAAAAAANDWsAADAAAAAAAAAADgYSzAAAAAAAAAAAAAeBgLMAAAAAAAAAAAAB7GAgwAAAAAAAAAAICHsQADAAAAAAAAAADgYSzAAAAAAAAAAAAAeBgLMAAAAAAAAAAAAB72/wH4fe2ZoQef7wAAAABJRU5ErkJggg==", - "text/plain": [ - "Figure(PyObject
)" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "using StatsFuns: normcdf\n", - "classification_map = map((x) -> normcdf(dot([1,1],x)), map((x) -> ReactiveMP.forward(inferred_model, [x...]), collect(Iterators.product(0:0.01:1, 0:0.01:1))))\n", - "fig, ax = plt.subplots(ncols = 3, figsize=(20,5))\n", - "im1 = ax[1].scatter(data_x[:,1], data_x[:,2], c = data_y)\n", - "im2 = ax[2].scatter(data_x[:,1], data_x[:,2], c = normcdf.(trans_data_x_2))\n", - "ax[3].contour(repeat(0:0.01:1, 1, 101), repeat(0:0.01:1, 1, 101)', classification_map)\n", - "plt.colorbar(im1, ax=ax[1])\n", - "plt.colorbar(im2, ax=ax[2])\n", - "ax[1].grid(), ax[2].grid(), ax[3].grid()\n", - "ax[1].set_xlabel(\"weight 1\"), ax[1].set_ylabel(\"weight 2\"), ax[2].set_xlabel(\"weight 1\"), ax[2].set_ylabel(\"weight 2\"), ax[3].set_xlabel(\"weight 1\"), ax[3].set_ylabel(\"weight 2\")\n", - "ax[1].set_title(\"original labels\"), ax[2].set_title(\"predicted labels\"), ax[3].set_title(\"Classification map\");" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Julia 1.7.3", - "language": "julia", - "name": "julia-1.7" - }, - "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", - "name": "julia", - "version": "1.7.3" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} From d12f38873a49caf747109dbe384f0f8f09f9ff9f Mon Sep 17 00:00:00 2001 From: Bart van Erp Date: Thu, 22 Sep 2022 13:04:57 +0200 Subject: [PATCH 18/26] update docs --- ... => invertible_neural_network_tutorial.md} | 173 +++++++----------- docs/src/examples/overview.md | 2 +- 2 files changed, 70 insertions(+), 105 deletions(-) rename docs/src/examples/{flow_tutorial.md => invertible_neural_network_tutorial.md} (64%) diff --git a/docs/src/examples/flow_tutorial.md b/docs/src/examples/invertible_neural_network_tutorial.md similarity index 64% rename from docs/src/examples/flow_tutorial.md rename to docs/src/examples/invertible_neural_network_tutorial.md index 4cbe338bc..b0d10fa92 100644 --- a/docs/src/examples/flow_tutorial.md +++ b/docs/src/examples/invertible_neural_network_tutorial.md @@ -1,20 +1,18 @@ -# [Example: Normalizing Flow tutorial](@id examples-flow) +# [Example: Invertible Neural Network tutorial](@id examples-inn) *Table of contents* -1. [Introduction](@ref examples-flow-introduction) -2. [Model specification](@ref examples-flow-model-specification) -3. [Model compilation](@ref examples-flow-model-compilation) -4. [Probabilistic inference](@ref examples-flow-probabilistic-inference) -5. [Parameter estimation](@ref examples-flow-parameter-estimation) +1. [Introduction](@ref examples-inn-introduction) +2. [Model specification](@ref examples-inn-model-specification) +3. [Model compilation](@ref examples-inn-model-compilation) +4. [Probabilistic inference](@ref examples-inn-probabilistic-inference) +5. [Parameter estimation](@ref examples-inn-parameter-estimation) -## [Introduction](@id examples-flow-introduction) -*Normalizing flows* are parameterized mappings of random variables, which map simple base distributions to more complex distributions. -These mappings are constrained to be invertible and differentiable and can be composed of multiple simpler mappings for improved expressivity. +## [Introduction](@id examples-inn-introduction) ### Load required packages Before we can start, we need to import some packages: -```@example flow +```@example inn using ReactiveMP using Rocket using GraphPPL @@ -22,16 +20,16 @@ using Random using StableRNGs using LinearAlgebra # only used for some matrix specifics -using PyPlot # only used for visualisation +using Plots # only used for visualisation using Distributions # only used for sampling from multivariate distributions using Optim # only used for parameter optimisation ``` -## [Model specification](@id examples-flow-model-specification) +## [Model specification](@id examples-inn-model-specification) -Specifying a flow model is easy. The general recipe looks like follows: `model = FlowModel(input_dim, (layer1(options), layer2(options), ...))`. Here the first argument corresponds to the input dimension of the model and the second argument is a tuple of layers. An example flow model can be defined as +Specifying an invertible neural network model is easy. The general recipe looks like follows: `model = FlowModel(input_dim, (layer1(options), layer2(options), ...))`. Here the first argument corresponds to the input dimension of the model and the second argument is a tuple of layers. An example model can be defined as -```@example flow +```@example inn model = FlowModel(2, ( AdditiveCouplingLayer(PlanarFlow()), @@ -43,7 +41,7 @@ nothing #hide Alternatively, the `input_dim` can also be passed as an `InputLayer` layer as -```@exampel flow +```@exampel inn model = FlowModel( ( InputLayer(2), @@ -80,7 +78,7 @@ $f_n$ is an arbitrarily complex function, here chosen to be a `PlanarFlow`, but A permutation layer can also be added by itself as a `PermutationLayer` layer with a custom permutation matrix if desired. -```@example flow +```@example inn model = FlowModel( ( InputLayer(2), @@ -92,15 +90,15 @@ model = FlowModel( nothing #hide ``` -## [Model compilation](@id examples-flow-model-compilation) +## [Model compilation](@id examples-inn-model-compilation) In the current models, the layers are setup to work with the passed input dimension. This means that the function $f_n$ is repeated `input_dim-1` times for each of the partitions. Furthermore the permutation layers are set up with proper permutation matrices. If we print the model we get -```@example flow +```@example inn model ``` The text below describes the terms above. Please note the distinction in typing and elements, i.e. `FlowModel{types}(elements)`: -- `FlowModel` - specifies that we are dealing with a flow model. +- `FlowModel` - specifies that we are dealing with an invertible neural network model. - `3` - Number of layers. - `Tuple{AdditiveCouplingLayerEmpty{...},PermutationLayer{Int64},AdditiveCouplingLayerEmpty{...}}` - tuple of layer types. - `Tuple{ReactiveMP.PlanarFlowEmpty{1},ReactiveMP.PlanarFlowEmpty{1}}` - tuple of functions $f_n$. @@ -108,15 +106,15 @@ The text below describes the terms above. Please note the distinction in typing From inspection we can see that the `AdditiveCouplingLayerEmpty` and `PlanarFlowEmpty` objects are different than before. They are initialized for the correct dimension, but they do not have any parameters registered to them. This is by design to allow for separating the model specification from potential optimization procedures. Before we perform inference in this model, the parameters should be initialized. We can randomly initialize the parameters as -```@example flow +```@example inn compiled_model = compile(model) ``` -## [Probabilistic inference](@id examples-flow-probabilistic-inference) +## [Probabilistic inference](@id examples-inn-probabilistic-inference) -We can perform inference in our compiled model through standard usage of ReactiveMP. Let's first generate some random 2D data which has been sampled from a standard normal distribution and is consecutively passed through a normalizing flow. Using the `forward(model, data)` function we can propagate data in the forward direction through the flow. +We can perform inference in our compiled model through standard usage of ReactiveMP. Let's first generate some random 2D data which has been sampled from a standard normal distribution and is consecutively passed through an invertible neural network. Using the `forward(model, data)` function we can propagate data in the forward direction. -```@example flow +```@example inn function generate_data(nr_samples::Int64, model::CompiledFlowModel; seed = 123) rng = StableRNG(seed) @@ -139,24 +137,20 @@ function generate_data(nr_samples::Int64, model::CompiledFlowModel; seed = 123) end; ``` -```@example flow +```@example inn # generate data y, x = generate_data(1000, compiled_model) # plot generated data -_, ax = plt.subplots(ncols=2, figsize=(15,5)) -ax[1].scatter(x[1,:], x[2,:], alpha=0.3) -ax[2].scatter(y[1,:], y[2,:], alpha=0.3) -ax[1].set_title("Original data") -ax[2].set_title("Transformed data") -ax[1].grid(), ax[2].grid() -plt.gcf() +p1 = scatter(x[1,:], x[2,:], alpha=0.3, title="Original data", size=(800,400)) +p2 = scatter(y[1,:], y[2,:], alpha=0.3, title="Transformed data", size=(800,400)) +plot(p1, p2, legend = false) ``` The probabilistic model for doing inference can be described as -```@example flow -@model function normalizing_flow(nr_samples::Int64) +```@example inn +@model function invertible_neural_network(nr_samples::Int64) # initialize variables z_μ = randomvar() @@ -189,13 +183,13 @@ The probabilistic model for doing inference can be described as end; ``` -Here the flow model is passed inside a meta data object of the flow node. +Here the inverse neural network model is passed inside a meta data object of the flow node. Inference then resorts to -```@example flow +```@example inn observations = [y[:,k] for k=1:size(y,2)] -fmodel = Model(normalizing_flow, length(observations)) +fmodel = Model(invertible_neural_network, length(observations)) data = (y = observations, ) initmarginals = (z_μ = MvNormalMeanCovariance(zeros(2), huge*diagm(ones(2))), z_Λ = Wishart(2.0, tiny*diagm(ones(2)))) returnvars = (z_μ = KeepLast(), z_Λ = KeepLast(), x = KeepLast(), y_lat = KeepLast()) @@ -226,7 +220,7 @@ result = inference( The following line of code then executes the inference algorithm. -```@example flow +```@example inn fe_flow = result.free_energy zμ_flow = result.posteriors[:z_μ] zΛ_flow = result.posteriors[:z_Λ] @@ -237,49 +231,36 @@ nothing #hide As we can see, the variational free energy decreases inside of our model. -```@example flow -plt.figure() -plt.plot(1:10, fe_flow/size(y,2)) -plt.grid() -plt.xlim(1,10) -plt.xlabel("iteration") -plt.ylabel("normalized variational free energy [nats/sample]") -plt.gcf() +```@example inn +plot(1:10, fe_flow/size(y,2), xlabel="iteration", ylabel="normalized variational free energy [nats/sample]", legend=false) ``` If we plot a random noisy observation and its approximated transformed uncertainty we obtain: -```@example flow +```@example inn # pick a random observation -id = rand(1:size(y,2)) +id = rand(StableRNG(321), 1:size(y,2)) rand_observation = MvNormal(y[:,id], 5e-1*diagm(ones(2))) warped_observation = MvNormal(ReactiveMP.backward(compiled_model, y[:,id]), ReactiveMP.inv_jacobian(compiled_model, y[:,id])*5e-1*diagm(ones(2))*ReactiveMP.inv_jacobian(compiled_model, y[:,id])'); -# plot inferred means and transformed point -fig, ax = plt.subplots(ncols = 2, figsize=(15,5)) -ax[1].scatter(x[1,:], x[2,:], alpha=0.1, label="generated data") -ax[1].contour(repeat(-5:0.1:5, 1, 101), repeat(-5:0.1:5, 1, 101)', map( (x) -> pdf(MvNormal([1.5, 0.5], I), [x...]), collect(Iterators.product(-5:0.1:5, -5:0.1:5))), label="true distribution") -ax[1].scatter(mean(zμ_flow)[1], mean(zμ_flow)[2], color="red", marker="x", label="inferred mean") -ax[1].contour(repeat(-10:0.01:10, 1, 2001), repeat(-10:0.01:10, 1, 2001)', map( (x) -> pdf(warped_observation, [x...]), collect(Iterators.product(-10:0.01:10, -10:0.01:10))), colors="red", levels=1) -ax[1].scatter(mean(warped_observation)..., color="red", s=10, label="transformed noisy observation") -ax[2].scatter(y[1,:], y[2,:], alpha=0.1, label="generated data") -ax[2].scatter(ReactiveMP.forward(compiled_model, mean(zμ_flow))..., color="red", marker="x", label="inferred mean") -ax[2].contour(repeat(-10:0.1:10, 1, 201), repeat(-10:0.1:10, 1, 201)', map( (x) -> pdf(MvNormal([1.5, 0.5], I), ReactiveMP.backward(compiled_model, [x...])), collect(Iterators.product(-10:0.1:10, -10:0.1:10)))) -ax[2].contour(repeat(-10:0.1:10, 1, 201), repeat(-10:0.1:10, 1, 201)', map( (x) -> pdf(rand_observation, [x...]), collect(Iterators.product(-10:0.1:10, -10:0.1:10))), colors="red", levels=1, label="random noisy observation") -ax[2].scatter(mean(rand_observation)..., color="red", s=10, label="random noisy observation") -ax[1].grid(), ax[2].grid() -ax[1].set_xlim(-4,4), ax[1].set_ylim(-4,4), ax[2].set_xlim(-10,10), ax[2].set_ylim(-10,10) -ax[1].legend(), ax[2].legend() -fig.suptitle("Generated data") -ax[1].set_title("Latent distribution"), ax[2].set_title("Observed distribution") -plt.gcf() +p1 = scatter(x[1,:], x[2,:], alpha=0.1, title="Latent distribution", size=(1200,500), label="generated data") +contour!(-5:0.1:5, -5:0.1:5, (x, y) -> pdf(MvNormal([1.5, 0.5], I), [x, y]), c=:viridis, colorbar=false, linewidth=2) +scatter!([mean(zμ_flow)[1]], [mean(zμ_flow)[2]], color="red", markershape=:x, markersize=5, label="inferred mean") +contour!(-5:0.01:5, -5:0.01:5, (x, y) -> pdf(warped_observation, [x, y]), colors="red", levels=1, linewidth=2, colorbar=false) +scatter!([mean(warped_observation)[1]], [mean(warped_observation)[2]], color="red", label="transformed noisy observation") +p2 = scatter(y[1,:], y[2,:], alpha=0.1, label="generated data") +scatter!([ReactiveMP.forward(compiled_model, mean(zμ_flow))[1]], [ReactiveMP.forward(compiled_model, mean(zμ_flow))[2]], color="red", marker=:x, label="inferred mean") +contour!(-10:0.1:10, -10:0.1:10, (x, y) -> pdf(MvNormal([1.5, 0.5], I), ReactiveMP.backward(compiled_model, [x, y])), c=:viridis, colorbar=false, linewidth=2) +contour!(-10:0.1:10, -10:0.1:10, (x, y) -> pdf(rand_observation, [x, y]), colors="red", levels=1, linewidth=2, label="random noisy observation", colorba=false) +scatter!([mean(rand_observation)[1]], [mean(rand_observation)[2]], color="red", label="random noisy observation") +plot(p1, p2, legend = true) ``` -## [Parameter estimation](@id examples-flow-parameter-estimation) +## [Parameter estimation](@id examples-inn-parameter-estimation) -The flow model is often used to learn unknown probabilistic mappings. Here we will demonstrate it as follows for a binary classification task with the following data: +The invertible neural network model is often used to learn unknown probabilistic mappings. Here we will demonstrate it as follows for a binary classification task with the following data: -```@example flow +```@example inn function generate_data(nr_samples::Int64; seed = 123) rng = StableRNG(seed) @@ -299,19 +280,14 @@ function generate_data(nr_samples::Int64; seed = 123) end; ``` -```@example flow +```@example inn data_y, data_x = generate_data(50); -plt.figure() -plt.scatter(data_x[:,1], data_x[:,2], c=data_y) -plt.grid() -plt.xlabel("w1") -plt.ylabel("w2") -plt.gcf() +scatter(data_x[:,1], data_x[:,2], marker_z=data_y, xlabel="w1", ylabel="w2", colorbar=false, legend=false) ``` -We will then specify a possible flow model as +We will then specify a possible model as -```@example flow +```@example inn # specify flow model model = FlowModel(2, ( @@ -325,8 +301,8 @@ model = FlowModel(2, The corresponding probabilistic model for the binary classification task can be created as -```@example flow -@model [ default_factorisation = FullFactorisation() ] function flow_classifier(nr_samples::Int64) +```@example inn +@model [ default_factorisation = FullFactorisation() ] function invertible_neural_network_classifier(nr_samples::Int64) # initialize variables x_lat = randomvar(nr_samples) @@ -356,8 +332,8 @@ The corresponding probabilistic model for the binary classification task can be end ``` -```@example flow -fcmodel = Model(flow_classifier, length(data_y)) +```@example inn +fcmodel = Model(invertible_neural_network_classifier, length(data_y)) data = (y = data_y, x = [data_x[k,:] for k=1:size(data_x,1)], ) @meta function fmeta(model, params) @@ -370,7 +346,7 @@ Here we see that the compilation occurs inside of our probabilistic model. As a For the optimization procedure, we will simplify our inference loop, such that it only accepts parameters as an argument (which is wishes to optimize) and outputs a performance metric. -```@example flow +```@example inn function f(params) Random.seed!(42) # Flow uses random permutation matrices, which is not good for the optimisation procedure result = inference( @@ -423,40 +399,29 @@ end ``` -```@example flow +```@example inn res = optimize(f, randn(StableRNG(42), nr_params(model)), GradientDescent(), Optim.Options(store_trace = true, show_trace = true, show_every = 50), autodiff=:forward) nothing #hide ``` optimization results are then given as -```@example flow +```@example inn params = Optim.minimizer(res) inferred_model = compile(model, params) trans_data_x_1 = hcat(map((x) -> ReactiveMP.forward(inferred_model, x), [data_x[k,:] for k=1:size(data_x,1)])...)' trans_data_x_2 = map((x) -> dot([1, 1], x), [trans_data_x_1[k,:] for k=1:size(data_x,1)]) trans_data_x_2_split = [trans_data_x_2[data_y .== 1.0], trans_data_x_2[data_y .== 0.0]] -fig, ax = plt.subplots(ncols = 3, figsize=(15,5)) -ax[1].scatter(data_x[:,1], data_x[:,2], c = data_y) -ax[2].scatter(trans_data_x_1[:,1], trans_data_x_1[:,2], c = data_y) -ax[3].hist(trans_data_x_2_split; stacked=true, bins=50, color = ["gold", "purple"]) -ax[1].grid(), ax[2].grid(), ax[3].grid() -ax[1].set_xlim(-0.25,1.25), ax[1].set_ylim(-0.25,1.25) -ax[1].set_title("original data"), ax[2].set_title("|> warp"), ax[3].set_title("|> dot") -plt.gcf() +p1 = scatter(data_x[:,1], data_x[:,2], marker_z = data_y, size=(1200,400), c=:viridis, colorbar=false, title="original data") +p2 = scatter(trans_data_x_1[:,1], trans_data_x_1[:,2], marker_z = data_y, c=:viridis, size=(1200,400), colorbar=false, title="|> warp") +p3 = histogram(trans_data_x_2_split; stacked=true, bins=50, size=(1200,400), title="|> dot") +plot(p1, p2, p3, layout=(1,3), legend=false) ``` -```@example flow +```@example inn using StatsFuns: normcdf -classification_map = map((x) -> normcdf(dot([1,1],x)), map((x) -> ReactiveMP.forward(inferred_model, [x...]), collect(Iterators.product(0:0.01:1, 0:0.01:1)))) -fig, ax = plt.subplots(ncols = 3, figsize=(20,5)) -im1 = ax[1].scatter(data_x[:,1], data_x[:,2], c = data_y) -im2 = ax[2].scatter(data_x[:,1], data_x[:,2], c = normcdf.(trans_data_x_2)) -ax[3].contour(repeat(0:0.01:1, 1, 101), repeat(0:0.01:1, 1, 101)', classification_map) -plt.colorbar(im1, ax=ax[1]) -plt.colorbar(im2, ax=ax[2]) -ax[1].grid(), ax[2].grid(), ax[3].grid() -ax[1].set_xlabel("weight 1"), ax[1].set_ylabel("weight 2"), ax[2].set_xlabel("weight 1"), ax[2].set_ylabel("weight 2"), ax[3].set_xlabel("weight 1"), ax[3].set_ylabel("weight 2") -ax[1].set_title("original labels"), ax[2].set_title("predicted labels"), ax[3].set_title("Classification map") -plt.gcf() +p1 = scatter(data_x[:,1], data_x[:,2], marker_z = data_y, title="original labels", xlabel="weight 1", ylabel="weight 2", size=(1200,400), c=:viridis) +p2 = scatter(data_x[:,1], data_x[:,2], marker_z = normcdf.(trans_data_x_2), title="predicted labels", xlabel="weight 1", ylabel="weight 2", size=(1200,400), c=:viridis) +p3 = contour(0:0.01:1, 0:0.01:1, (x, y) -> normcdf(dot([1,1], ReactiveMP.forward(inferred_model, [x,y]))), title="Classification map", xlabel="weight 1", ylabel="weight 2", size=(1200,400), c=:viridis) +plot(p1, p2, p3, layout=(1,3), legend=false) ``` diff --git a/docs/src/examples/overview.md b/docs/src/examples/overview.md index 14f4a6cbb..8516972e2 100644 --- a/docs/src/examples/overview.md +++ b/docs/src/examples/overview.md @@ -12,7 +12,7 @@ We are going to perform an exact inference to assess the skills of a student giv - [Hidden Markov Model](@ref examples-hidden-markov-model): An example of structured variational Bayesian inference in Hidden Markov Model with unknown transition and observational matrices. - [Hierarchical Gaussian Filter](@ref examples-hgf): An example of online inference procedure for Hierarchical Gaussian Filter with univariate noisy observations using Variational Message Passing algorithm. Reference: [Ismail Senoz, Online Message Passing-based Inference in the Hierarchical Gaussian Filter](https://ieeexplore.ieee.org/document/9173980). - [Autoregressive Model](@ref examples-autoregressive): An example of variational Bayesian Inference on full graph for Autoregressive model. Reference: [Albert Podusenko, Message Passing-Based Inference for Time-Varying Autoregressive Models](https://www.mdpi.com/1099-4300/23/6/683). -- [Normalising Flows](@ref examples-flow): An example of variational Bayesian Inference with Normalizing Flows. Reference: Bard van Erp, Hybrid Inference with Invertible Neural Networks in Factor Graphs (submitted). +- [Invertible Neural Networks](@ref examples-inn): An example of variational Bayesian Inference with invertible neural networks. Reference: Bart van Erp, Hybrid Inference with Invertible Neural Networks in Factor Graphs (accepted). - [Univariate Gaussian Mixture](@ref examples-univariate-gaussian-mixture): This example implements variational Bayesian inference in a univariate Gaussian mixture model with mean-field assumption. - [Multivariate Gaussian Mixture](@ref examples-multivariate-gaussian-mixture): This example implements variational Bayesian inference in a multivariate Gaussian mixture model with mean-field assumption. - [Gamma Mixture](@ref examples-gamma-mixture): This example implements one of the experiments outlined in https://biaslab.github.io/publication/mp-based-inference-in-gmm/ . From 371a23d5695d2be95b22ee91da9ac0952e780b37 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Thu, 22 Sep 2022 13:38:47 +0200 Subject: [PATCH 19/26] Fix example path --- docs/make.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/make.jl b/docs/make.jl index 994531414..f7e735720 100644 --- a/docs/make.jl +++ b/docs/make.jl @@ -44,7 +44,7 @@ makedocs( "Hidden Markov Model" => "examples/hidden_markov_model.md", "Hierarchical Gaussian Filter" => "examples/hierarchical_gaussian_filter.md", "Autoregressive Model" => "examples/autoregressive.md", - "Normalizing Flows Tutorial" => "examples/flow_tutorial.md", + "Invertible Neural Networks" => "examples/invertible_neural_network_tutorial.md", "Univariate Normal Mixture" => "examples/univariate_normal_mixture.md", "Multivariate Normal Mixture" => "examples/multivariate_normal_mixture.md", "Gamma Mixture" => "examples/gamma_mixture.md", From e1d504a6f3a02e672a15854cb3a078a3abc03c1a Mon Sep 17 00:00:00 2001 From: LENOVO Date: Thu, 22 Sep 2022 14:45:59 +0200 Subject: [PATCH 20/26] change true process f_true --- demo/GPRegression by SSM.ipynb | 46 +++++++++++++++++----------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/demo/GPRegression by SSM.ipynb b/demo/GPRegression by SSM.ipynb index f275af522..81bc5b848 100644 --- a/demo/GPRegression by SSM.ipynb +++ b/demo/GPRegression by SSM.ipynb @@ -41,7 +41,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ @@ -67,7 +67,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -96,7 +96,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ @@ -118,15 +118,15 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "Random.seed!(10)\n", "n = 100\n", "σ²_noise = 0.04;\n", - "t = collect(range(0, 5, length=n)); #timeline\n", - "f_true = 2*sin.(t) .+ cos.(2*t); # true process\n", + "t = collect(range(-2, 2, length=n)); #timeline\n", + "f_true = sinc.(t); # true process\n", "f_noisy = f_true + sqrt(σ²_noise)*randn(n); #noisy process\n", "\n", "pos = sort(randperm(75)[1:2:75]); \n", @@ -151,14 +151,14 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 19, "metadata": {}, "outputs": [ { "data": { - "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" }, - "execution_count": 6, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } @@ -204,7 +204,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 20, "metadata": {}, "outputs": [], "source": [ @@ -220,7 +220,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 21, "metadata": {}, "outputs": [ { @@ -229,13 +229,13 @@ "Inference results:\n", "-----------------------------------------\n", "f = AbstractMvNormal[MvNormalWeightedMeanPrecision(\n", - "xi: [39.166220122121516, 1.76168...\n", + "xi: [1.9358864892079541, -0.5582...\n", "f_0 = MvNormalWeightedMeanPrecision(\n", - "xi: [39.16622012212151, 1.7616896757961944]\n", - "Λ: [3...\n" + "xi: [-0.15600456698710335, 0.06323742274432151]\n", + "Λ...\n" ] }, - "execution_count": 10, + "execution_count": 21, "metadata": {}, "output_type": "execute_result" } @@ -283,7 +283,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 22, "metadata": {}, "outputs": [], "source": [ @@ -303,7 +303,7 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 23, "metadata": {}, "outputs": [ { @@ -312,12 +312,12 @@ "Inference results:\n", "-----------------------------------------\n", "f = AbstractMvNormal[MvNormalWeightedMeanPrecision(\n", - "xi: [65.85526392511194, 10.41977...\n", + "xi: [-3.110075631578919, -1.8282...\n", "f_0 = MvNormalWeightedMeanPrecision(\n", - "xi: [65.85526392511201, 10.419773393295, 1.013605...\n" + "xi: [0.3719880978328811, -0.21107990590357117, 0....\n" ] }, - "execution_count": 12, + "execution_count": 23, "metadata": {}, "output_type": "execute_result" } @@ -338,14 +338,14 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 24, "metadata": {}, "outputs": [ { "data": { - "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" + "image/svg+xml": "\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" }, - "execution_count": 25, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } From 3a53428563fa60dc8d2a1392af1f8b7b1d6efa54 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Fri, 23 Sep 2022 09:41:50 +0200 Subject: [PATCH 21/26] update: Bump version to 2.5.1 --- Project.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Project.toml b/Project.toml index 37e1bdb25..160707f93 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "ReactiveMP" uuid = "a194aa59-28ba-4574-a09c-4a745416d6e3" authors = ["Dmitry Bagaev ", "Albert Podusenko ", "Bart van Erp ", "Ismail Senoz "] -version = "2.5.0" +version = "2.5.1" [deps] DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" From 215cc7477c67eed2d18b0dc32b899fc1e63de19f Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Tue, 27 Sep 2022 18:09:21 +0200 Subject: [PATCH 22/26] Update rule.jl --- src/rule.jl | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/src/rule.jl b/src/rule.jl index b9b5db343..e5e55108f 100644 --- a/src/rule.jl +++ b/src/rule.jl @@ -86,6 +86,12 @@ function rule_macro_parse_on_tag(on) return :(Type{Val{$(QuoteNode(name))}}), nothing, nothing elseif @capture(on, (:name_, index_Symbol)) return :(Tuple{Val{$(QuoteNode(name))}, Int}), index, :($index = on[2]) + elseif @capture(on, (:name_, k_ = index_Int)) + return :(Tuple{Val{$(QuoteNode(name))}, Int}), + index, + :(error( + "`k = ...` syntax in the edge specification is only allowed in the `@call_rule` and `@call_marginalrule` macros" + )) else error( "Error in macro. `on` specification is incorrect: $(on). Must be ither a quoted symbol expression (e.g. `:out` or `:mean`) or tuple expression with quoted symbol and index identifier (e.g. `(:m, k)` or `(:w, k)`)" @@ -188,6 +194,17 @@ function call_rule_macro_parse_fn_args(inputs; specname, prefix, proxy) return names_arg, values_arg end +call_rule_macro_construct_on_arg(on_type, on_index::Nothing) = MacroHelpers.bottom_type(on_type) + +function call_rule_macro_construct_on_arg(on_type, on_index::Int) + bottomtype = MacroHelpers.bottom_type(on_type) + if @capture(bottomtype, Tuple{Val{R_}, Int}) + return :((Val($R), $on_index)) + else + error("Internal indexed call rule error: Invalid `on_type` in the `call_rule_macro_construct_on_arg` function.") + end +end + function rule_function_expression( body::Function, fuppertype, @@ -411,7 +428,7 @@ macro call_rule(fform, args) q_names_arg, q_values_arg = call_rule_macro_parse_fn_args(inputs, specname = :marginals, prefix = :q_, proxy = :(ReactiveMP.Marginal)) - on_arg = MacroHelpers.bottom_type(on_type) + on_arg = call_rule_macro_construct_on_arg(on_type, on_index) output = quote ReactiveMP.rule( @@ -640,7 +657,7 @@ macro call_marginalrule(fform, args) q_names_arg, q_values_arg = call_rule_macro_parse_fn_args(inputs, specname = :marginals, prefix = :q_, proxy = :(ReactiveMP.Marginal)) - on_arg = MacroHelpers.bottom_type(on_type) + on_arg = call_rule_macro_construct_on_arg(on_type, on_index) output = quote ReactiveMP.marginalrule( @@ -817,8 +834,11 @@ end rule_method_error_extract_fform(f::Function) = string("typeof(", f, ")") rule_method_error_extract_fform(f) = string(f) -rule_method_error_extract_on(::Type{Val{T}}) where {T} = T -rule_method_error_extract_on(on::Tuple{Val{T}, Int}) where {T} = string("(:", rule_method_error_extract_on(typeof(on[1])), ", k)") +rule_method_error_extract_on(::Type{Val{T}}) where {T} = string(":", T) +rule_method_error_extract_on(::Type{Tuple{Val{T}, Int}}) where {T} = string("(", rule_method_error_extract_on(Val{T}), ", k)") +rule_method_error_extract_on(::Type{Tuple{Val{T}, N}}) where {T, N} = string("(", rule_method_error_extract_on(Val{T}), ", ", convert(Int, N), ")") +rule_method_error_extract_on(::Tuple{Val{T}, Int}) where {T} = string("(", rule_method_error_extract_on(Val{T}), ", k)") +rule_method_error_extract_on(::Tuple{Val{T}, N}) where {T, N} = string("(", rule_method_error_extract_on(Val{T}), ", ", convert(Int, N), ")") rule_method_error_extract_vconstraint(something) = typeof(something) @@ -888,7 +908,7 @@ function Base.showerror(io::IO, error::RuleMethodError) meta_spec = rule_method_error_extract_meta(error.meta) possible_fix_definition = """ - @rule $(spec_fform)(:$spec_on, $spec_vconstraint) ($arguments_spec, $meta_spec) = begin + @rule $(spec_fform)($spec_on, $spec_vconstraint) ($arguments_spec, $meta_spec) = begin return ... end """ From 3b01a3520339818a71b9e18e90b0b461c8d3d5f3 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Wed, 28 Sep 2022 13:24:09 +0200 Subject: [PATCH 23/26] Add backward test for the delta node --- src/rules/delta/extended/in.jl | 4 ++-- test/rules/delta/extended/test_in.jl | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/rules/delta/extended/in.jl b/src/rules/delta/extended/in.jl index cf42d8953..a028cbc28 100644 --- a/src/rules/delta/extended/in.jl +++ b/src/rules/delta/extended/in.jl @@ -9,7 +9,7 @@ m = A * μ_out + b V = A * Σ_out * A' - F = val(m, Number) ? Univariate : Multivariate + F = isa(m, Number) ? Univariate : Multivariate return convert(promote_variate_type(F, NormalMeanVariance), m, V) end @@ -26,7 +26,7 @@ m = A * μ_in + b V = A * Σ_in * A' - F = val(m, Number) ? Univariate : Multivariate + F = isa(m, Number) ? Univariate : Multivariate return convert(promote_variate_type(F, NormalMeanVariance), m, V) end diff --git a/test/rules/delta/extended/test_in.jl b/test/rules/delta/extended/test_in.jl index f3c161db5..634b70ead 100644 --- a/test/rules/delta/extended/test_in.jl +++ b/test/rules/delta/extended/test_in.jl @@ -7,27 +7,27 @@ import ReactiveMP: @test_rules # TODO: with_float_conversions = true breaks # g: single input, single output -g(x::Number) = x^2 - 5.0 +g(x::Real) = x^2 - 5.0 g(x::Vector) = x.^2 .- 5.0 -g_inv(y::Number) = sqrt(y + 5.0) +g_inv(y::Real) = sqrt(y + 5.0) g_inv(y::Vector) = sqrt.(y .+ 5.0) -# h: multiple inut, single output -h(x::Number, y::Number) = x^2 - y +# h: multiple input, single output +h(x::Real, y::Real) = x^2 - y h(x::Vector, y::Vector) = x.^2 .- y -h_inv_x(z::Number, y::Number) = sqrt(z + y) +h_inv_x(z::Real, y::Real) = sqrt(z + y) h_inv_x(z::Vector, y::Vector) = sqrt.(z .+ y) # g provided in a similar syntax like the N parameter in normal_mixture/test_out.jl # normal_mixture is the only example with this syntax (that has a test; gamma_mixture is another candidate but ∄ test) @testset "rules:Delta:extended:in" begin - # ForneyLab:test_delta_extended:SPDeltaEIn1GG 1-2 - @testset "Belief Propagation: f(x) (m_ins::NormalMeanCovariance, meta.inverse::Nothing)" begin - @test_rules [with_float_conversions = false] DeltaFn{g}((:in, k), Marginalisation) [ + + @testset "Belief Propagation: f(x) (m_ins::NormalMeanCovariance, meta::DeltaExtended) (with known inverse)" begin + @test_rules [with_float_conversions = false] DeltaFn{g}((:in, k = 1), Marginalisation) [ ( - input = (m_out = ManyOf(NormalMeanVariance(2.0, 3.0)), m_ins =ManyOf(NormalMeanVariance(2.0, 1.0)), meta=DeltaExtended(inverse=nothing)), - output = NormalMeanVariance(2.499999999868301, 0.3125000002253504) + input = (m_out = NormalMeanVariance(0.0, 1.0), m_ins = nothing, meta = DeltaExtended(inverse = g_inv)), + output = NormalMeanVariance(2.23606797749979, 0.05) # TODO: double check this ), ] end From e17cc514f5a9a22e92ba8f22da145cd14a51f359 Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Wed, 28 Sep 2022 14:00:51 +0200 Subject: [PATCH 24/26] Update Project.toml --- Project.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/Project.toml b/Project.toml index 681385d84..be2001fa3 100644 --- a/Project.toml +++ b/Project.toml @@ -25,7 +25,6 @@ SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" StatsFuns = "4c63d2b9-4356-54db-8cca-17b64c39e42c" -StatsPlots = "f3b207a7-027a-5e70-b257-86293d7955fd" TupleTools = "9d95972d-f1c8-5527-a6e0-b4b365fa01f6" Unrolled = "9602ed7d-8fef-5bc8-8597-8f21381861e8" From 8f4b89be4758bb5746a236d7b0a4a46d5ceaa71e Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Wed, 28 Sep 2022 14:01:44 +0200 Subject: [PATCH 25/26] style: make format --- src/rules/delta/helpers/shared.jl | 2 +- test/rules/delta/extended/test_in.jl | 10 +++--- test/rules/delta/extended/test_marginals.jl | 21 +++++++------ test/rules/delta/extended/test_out.jl | 32 ++++++++++---------- test/rules/delta/unscented/test_in.jl | 9 +++--- test/rules/delta/unscented/test_marginals.jl | 22 ++++++++------ test/rules/delta/unscented/test_out.jl | 30 +++++++++--------- 7 files changed, 64 insertions(+), 62 deletions(-) diff --git a/src/rules/delta/helpers/shared.jl b/src/rules/delta/helpers/shared.jl index 937cb6cf3..be1e811b1 100644 --- a/src/rules/delta/helpers/shared.jl +++ b/src/rules/delta/helpers/shared.jl @@ -76,7 +76,7 @@ end """ Return the marginalized statistics of the Gaussian corresponding to an inbound inx """ -function marginalizeGaussianMV(m::Vector{T}, V::AbstractMatrix, ds::Vector, inx::Int64) where T<:Real +function marginalizeGaussianMV(m::Vector{T}, V::AbstractMatrix, ds::Vector, inx::Int64) where {T <: Real} if ds[inx] == () # Univariate original return (m[inx], V[inx, inx]) # Return scalars else # Multivariate original diff --git a/test/rules/delta/extended/test_in.jl b/test/rules/delta/extended/test_in.jl index 634b70ead..595307a89 100644 --- a/test/rules/delta/extended/test_in.jl +++ b/test/rules/delta/extended/test_in.jl @@ -7,28 +7,26 @@ import ReactiveMP: @test_rules # TODO: with_float_conversions = true breaks # g: single input, single output -g(x::Real) = x^2 - 5.0 -g(x::Vector) = x.^2 .- 5.0 +g(x::Real) = x^2 - 5.0 +g(x::Vector) = x .^ 2 .- 5.0 g_inv(y::Real) = sqrt(y + 5.0) g_inv(y::Vector) = sqrt.(y .+ 5.0) # h: multiple input, single output h(x::Real, y::Real) = x^2 - y -h(x::Vector, y::Vector) = x.^2 .- y +h(x::Vector, y::Vector) = x .^ 2 .- y h_inv_x(z::Real, y::Real) = sqrt(z + y) h_inv_x(z::Vector, y::Vector) = sqrt.(z .+ y) - # g provided in a similar syntax like the N parameter in normal_mixture/test_out.jl # normal_mixture is the only example with this syntax (that has a test; gamma_mixture is another candidate but ∄ test) @testset "rules:Delta:extended:in" begin - @testset "Belief Propagation: f(x) (m_ins::NormalMeanCovariance, meta::DeltaExtended) (with known inverse)" begin @test_rules [with_float_conversions = false] DeltaFn{g}((:in, k = 1), Marginalisation) [ ( input = (m_out = NormalMeanVariance(0.0, 1.0), m_ins = nothing, meta = DeltaExtended(inverse = g_inv)), output = NormalMeanVariance(2.23606797749979, 0.05) # TODO: double check this - ), + ) ] end end # testset diff --git a/test/rules/delta/extended/test_marginals.jl b/test/rules/delta/extended/test_marginals.jl index 846aa98c3..51c083d59 100644 --- a/test/rules/delta/extended/test_marginals.jl +++ b/test/rules/delta/extended/test_marginals.jl @@ -8,13 +8,13 @@ import ReactiveMP: @test_marginalrules # g: single input, single output g(x::Number) = x^2 - 5.0 -g(x::Vector) = x.^2 .- 5.0 +g(x::Vector) = x .^ 2 .- 5.0 g_inv(y::Number) = sqrt(y + 5.0) g_inv(y::Vector) = sqrt.(y .+ 5.0) # h: multiple inut, single output h(x::Number, y::Number) = x^2 - y -h(x::Vector, y::Vector) = x.^2 .- y +h(x::Vector, y::Vector) = x .^ 2 .- y h_inv_x(z::Number, y::Number) = sqrt(z + y) h_inv_x(z::Vector, y::Vector) = sqrt.(z .+ y) @@ -23,14 +23,17 @@ h_inv_x(z::Vector, y::Vector) = sqrt.(z .+ y) # ForneyLab:test_delta_extended:MDeltaEInGX 1 @test_marginalrules [with_float_conversions = false] DeltaFn{h}(:ins) [ ( - input = ( - m_out = NormalMeanVariance(2.0, 3.0), - m_ins = ManyOf(NormalMeanVariance(2.0, 1.0), NormalMeanVariance(5.0, 1.0)), - meta = DeltaExtended(inverse=nothing) - ), - #output = DeltaMarginal(MvNormalMeanCovariance([2.3636363470614055, 4.9090909132334355], [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697]), Any[(), ()]) - output = MvNormalMeanCovariance([2.3636363470614055, 4.9090909132334355], [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697]) + input = ( + m_out = NormalMeanVariance(2.0, 3.0), + m_ins = ManyOf(NormalMeanVariance(2.0, 1.0), NormalMeanVariance(5.0, 1.0)), + meta = DeltaExtended(inverse = nothing) + ), + #output = DeltaMarginal(MvNormalMeanCovariance([2.3636363470614055, 4.9090909132334355], [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697]), Any[(), ()]) + output = MvNormalMeanCovariance( + [2.3636363470614055, 4.9090909132334355], + [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697] ) + ) ] end end # testset diff --git a/test/rules/delta/extended/test_out.jl b/test/rules/delta/extended/test_out.jl index 240e74b74..223d08fb6 100644 --- a/test/rules/delta/extended/test_out.jl +++ b/test/rules/delta/extended/test_out.jl @@ -8,11 +8,11 @@ import ReactiveMP: @test_rules # g: single input, single output g(x::Number) = x^2 - 5.0 -g(x::Vector) = x.^2 .- 5.0 +g(x::Vector) = x .^ 2 .- 5.0 # h: multiple inut, single output h(x::Number, y::Number) = x^2 - y -h(x::Vector, y::Vector) = x.^2 .- y +h(x::Vector, y::Vector) = x .^ 2 .- y # g provided in a similar syntax like the N parameter in normal_mixture/test_out.jl # normal_mixture is the only example with this syntax (that has a test; gamma_mixture is another candidate but ∄ test) @@ -21,9 +21,9 @@ h(x::Vector, y::Vector) = x.^2 .- y @testset "Belief Propagation: f(x) (m_ins::NormalMeanVariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{g}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0)), meta=DeltaExtended(inverse=nothing)), - output = NormalMeanVariance(-1.0, 48.0) - ) + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0)), meta = DeltaExtended(inverse = nothing)), + output = NormalMeanVariance(-1.0, 48.0) + ) ] end @@ -31,9 +31,9 @@ h(x::Vector, y::Vector) = x.^2 .- y @testset "Belief Propagation: f(x): (m_ins::MvNormalMeanCovariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{g}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0])), meta=DeltaExtended(inverse=nothing)), - output = MvNormalMeanCovariance([-1.0], [48.0]) - ) + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0])), meta = DeltaExtended(inverse = nothing)), + output = MvNormalMeanCovariance([-1.0], [48.0]) + ) ] end @@ -41,20 +41,20 @@ h(x::Vector, y::Vector) = x.^2 .- y @testset "Belief Propagation: f(x,y) (m_ins::NormalMeanVariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta=DeltaExtended(inverse=nothing)), + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta = DeltaExtended(inverse = nothing)), output = NormalMeanVariance(-1.0, 49.0) - ), + ) ] end # ForneyLab:test_delta_extended:SPDeltaEOutNGX 2 @testset "Belief Propagation: f(x,y) (m_ins::MvNormalMeanCovariance, *)" begin - @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ - ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta=DeltaExtended()), - output = MvNormalMeanCovariance([-1.0], [49.0]) - ), - ] + @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ + ( + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta = DeltaExtended()), + output = MvNormalMeanCovariance([-1.0], [49.0]) + ) + ] end end end diff --git a/test/rules/delta/unscented/test_in.jl b/test/rules/delta/unscented/test_in.jl index 0deae7295..c29ae7a74 100644 --- a/test/rules/delta/unscented/test_in.jl +++ b/test/rules/delta/unscented/test_in.jl @@ -8,14 +8,13 @@ import ReactiveMP: @test_rules # g: single input, single output g(x::Float64) = x^2 - 5.0 -g(x::Vector{Float64}) = x.^2 .- 5.0 +g(x::Vector{Float64}) = x .^ 2 .- 5.0 g_inv(y::Float64) = sqrt(y + 5.0) g_inv(y::Vector{Float64}) = sqrt.(y .+ 5.0) - # h: multiple inut, single output h(x::Float64, y::Float64) = x^2 - y -h(x::Vector{Float64}, y::Vector{Float64}) = x.^2 .- y +h(x::Vector{Float64}, y::Vector{Float64}) = x .^ 2 .- y h(x::Float64, y::Vector{Float64}) = x^2 .- y h_inv_x(z::Float64, y::Float64) = sqrt(z + y) h_inv_x(z::Vector{Float64}, y::Vector{Float64}) = sqrt.(z .+ y) @@ -27,9 +26,9 @@ h_inv_x(z::Vector{Float64}, y::Vector{Float64}) = sqrt.(z .+ y) @testset "Belief Propagation: f(x) (m_ins::NormalMeanCovariance, meta.inverse::Nothing)" begin @test_rules [with_float_conversions = false] DeltaFn{g}((:in, k), Marginalisation) [ ( - input = (m_out = ManyOf(NormalMeanVariance(2.0, 3.0)), m_ins =ManyOf(NormalMeanVariance(2.0, 1.0)), meta=DeltaUnscented(inverse=nothing)), + input = (m_out = ManyOf(NormalMeanVariance(2.0, 3.0)), m_ins = ManyOf(NormalMeanVariance(2.0, 1.0)), meta = DeltaUnscented(inverse = nothing)), output = NormalMeanVariance(2.499999999868301, 0.3125000002253504) - ), + ) ] end end # testset diff --git a/test/rules/delta/unscented/test_marginals.jl b/test/rules/delta/unscented/test_marginals.jl index fd657de7c..a62a636a4 100644 --- a/test/rules/delta/unscented/test_marginals.jl +++ b/test/rules/delta/unscented/test_marginals.jl @@ -8,14 +8,13 @@ import ReactiveMP: @test_marginalrules # g: single input, single output g(x::Float64) = x^2 - 5.0 -g(x::Vector{Float64}) = x.^2 .- 5.0 +g(x::Vector{Float64}) = x .^ 2 .- 5.0 g_inv(y::Float64) = sqrt(y + 5.0) g_inv(y::Vector{Float64}) = sqrt.(y .+ 5.0) - # h: multiple inut, single output h(x::Float64, y::Float64) = x^2 - y -h(x::Vector{Float64}, y::Vector{Float64}) = x.^2 .- y +h(x::Vector{Float64}, y::Vector{Float64}) = x .^ 2 .- y h(x::Float64, y::Vector{Float64}) = x^2 .- y h_inv_x(z::Float64, y::Float64) = sqrt(z + y) h_inv_x(z::Vector{Float64}, y::Vector{Float64}) = sqrt.(z .+ y) @@ -25,14 +24,17 @@ h_inv_x(z::Vector{Float64}, y::Vector{Float64}) = sqrt.(z .+ y) # ForneyLab:test_delta_unscented:MDeltaUTInGX 1 @test_marginalrules [with_float_conversions = false] DeltaFn{h}(:ins) [ ( - input = ( - m_out = NormalMeanVariance(2.0, 3.0), - m_ins = ManyOf(NormalMeanVariance(2.0, 1.0), NormalMeanVariance(5.0, 1.0)), - meta = DeltaUnscented(inverse=nothing) - ), - #output = DeltaMarginal(MvNormalMeanCovariance([2.3636363470614055, 4.9090909132334355], [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697]), Any[(), ()]) - output = MvNormalMeanCovariance([2.3636363470614055, 4.9090909132334355], [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697]) + input = ( + m_out = NormalMeanVariance(2.0, 3.0), + m_ins = ManyOf(NormalMeanVariance(2.0, 1.0), NormalMeanVariance(5.0, 1.0)), + meta = DeltaUnscented(inverse = nothing) + ), + #output = DeltaMarginal(MvNormalMeanCovariance([2.3636363470614055, 4.9090909132334355], [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697]), Any[(), ()]) + output = MvNormalMeanCovariance( + [2.3636363470614055, 4.9090909132334355], + [0.2727273058237252 0.1818181735464949; 0.18181817354649488 0.9545454566127697] ) + ) ] end end # testset diff --git a/test/rules/delta/unscented/test_out.jl b/test/rules/delta/unscented/test_out.jl index 78de1a8f8..7183c1235 100644 --- a/test/rules/delta/unscented/test_out.jl +++ b/test/rules/delta/unscented/test_out.jl @@ -8,11 +8,11 @@ import ReactiveMP: @test_rules # g: single input, single output g(x::Float64) = x^2 - 5.0 -g(x::Vector{Float64}) = x.^2 .- 5.0 +g(x::Vector{Float64}) = x .^ 2 .- 5.0 # h: multiple inut, single output h(x::Float64, y::Float64) = x^2 - y -h(x::Vector{Float64}, y::Vector{Float64}) = x.^2 .- y +h(x::Vector{Float64}, y::Vector{Float64}) = x .^ 2 .- y h(x::Float64, y::Vector{Float64}) = x^2 .- y # g provided in a similar syntax like the N parameter in normal_mixture/test_out.jl @@ -22,11 +22,11 @@ h(x::Float64, y::Vector{Float64}) = x^2 .- y @testset "Belief Propagation: f(x) (m_ins::NormalMeanVariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{g}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0)), meta=DeltaUnscented()), + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0)), meta = DeltaUnscented()), output = NormalMeanVariance(2.0000000001164153, 66.00000000093132) ), ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0)), meta=DeltaUnscented(alpha=1.0)), + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0)), meta = DeltaUnscented(alpha = 1.0)), output = NormalMeanVariance(2.0, 66.0) ) ] @@ -36,13 +36,13 @@ h(x::Float64, y::Vector{Float64}) = x^2 .- y @testset "Belief Propagation: f(x): (m_ins::MvNormalMeanCovariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{g}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0])), meta=DeltaUnscented()), + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0])), meta = DeltaUnscented()), output = MvNormalMeanCovariance([2.0000000001164153], [66.00000000093132]) ), ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0])), meta=DeltaUnscented(alpha=1.0)), + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0])), meta = DeltaUnscented(alpha = 1.0)), output = MvNormalMeanCovariance([2.0], [66.0]) - ), + ) ] end @@ -50,20 +50,20 @@ h(x::Float64, y::Vector{Float64}) = x^2 .- y @testset "Belief Propagation: f(x,y) (m_ins::NormalMeanVariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta=DeltaUnscented()), + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta = DeltaUnscented()), output = NormalMeanVariance(1.9999999997671694, 67.00000899657607) - ), + ) ] end # ForneyLab:test_delta_unscented:SPDeltaUTOutNGX 2 @testset "Belief Propagation: f(x,y) (m_ins::MvNormalMeanCovariance, *)" begin - @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ - ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta=DeltaUnscented()), - output = MvNormalMeanCovariance([1.9999999997671694], [67.00000899657607]) - ), - ] + @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ + ( + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta = DeltaUnscented()), + output = MvNormalMeanCovariance([1.9999999997671694], [67.00000899657607]) + ) + ] end end end From bf288d3abc1c36c1a892211ed3c743049830929d Mon Sep 17 00:00:00 2001 From: Bagaev Dmitry Date: Wed, 28 Sep 2022 14:27:44 +0200 Subject: [PATCH 26/26] style: make format --- test/rules/delta/extended/test_in.jl | 6 +++--- test/rules/delta/extended/test_out.jl | 12 ++++++------ test/rules/delta/unscented/test_in.jl | 6 +++--- test/rules/delta/unscented/test_out.jl | 12 ++++++------ 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/test/rules/delta/extended/test_in.jl b/test/rules/delta/extended/test_in.jl index 595307a89..86ed5e28f 100644 --- a/test/rules/delta/extended/test_in.jl +++ b/test/rules/delta/extended/test_in.jl @@ -24,9 +24,9 @@ h_inv_x(z::Vector, y::Vector) = sqrt.(z .+ y) @testset "Belief Propagation: f(x) (m_ins::NormalMeanCovariance, meta::DeltaExtended) (with known inverse)" begin @test_rules [with_float_conversions = false] DeltaFn{g}((:in, k = 1), Marginalisation) [ ( - input = (m_out = NormalMeanVariance(0.0, 1.0), m_ins = nothing, meta = DeltaExtended(inverse = g_inv)), - output = NormalMeanVariance(2.23606797749979, 0.05) # TODO: double check this - ) + input = (m_out = NormalMeanVariance(0.0, 1.0), m_ins = nothing, meta = DeltaExtended(inverse = g_inv)), + output = NormalMeanVariance(2.23606797749979, 0.05) # TODO: double check this + ) ] end end # testset diff --git a/test/rules/delta/extended/test_out.jl b/test/rules/delta/extended/test_out.jl index 223d08fb6..366809a17 100644 --- a/test/rules/delta/extended/test_out.jl +++ b/test/rules/delta/extended/test_out.jl @@ -41,9 +41,9 @@ h(x::Vector, y::Vector) = x .^ 2 .- y @testset "Belief Propagation: f(x,y) (m_ins::NormalMeanVariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta = DeltaExtended(inverse = nothing)), - output = NormalMeanVariance(-1.0, 49.0) - ) + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta = DeltaExtended(inverse = nothing)), + output = NormalMeanVariance(-1.0, 49.0) + ) ] end @@ -51,9 +51,9 @@ h(x::Vector, y::Vector) = x .^ 2 .- y @testset "Belief Propagation: f(x,y) (m_ins::MvNormalMeanCovariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta = DeltaExtended()), - output = MvNormalMeanCovariance([-1.0], [49.0]) - ) + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta = DeltaExtended()), + output = MvNormalMeanCovariance([-1.0], [49.0]) + ) ] end end diff --git a/test/rules/delta/unscented/test_in.jl b/test/rules/delta/unscented/test_in.jl index c29ae7a74..be4055a12 100644 --- a/test/rules/delta/unscented/test_in.jl +++ b/test/rules/delta/unscented/test_in.jl @@ -26,9 +26,9 @@ h_inv_x(z::Vector{Float64}, y::Vector{Float64}) = sqrt.(z .+ y) @testset "Belief Propagation: f(x) (m_ins::NormalMeanCovariance, meta.inverse::Nothing)" begin @test_rules [with_float_conversions = false] DeltaFn{g}((:in, k), Marginalisation) [ ( - input = (m_out = ManyOf(NormalMeanVariance(2.0, 3.0)), m_ins = ManyOf(NormalMeanVariance(2.0, 1.0)), meta = DeltaUnscented(inverse = nothing)), - output = NormalMeanVariance(2.499999999868301, 0.3125000002253504) - ) + input = (m_out = ManyOf(NormalMeanVariance(2.0, 3.0)), m_ins = ManyOf(NormalMeanVariance(2.0, 1.0)), meta = DeltaUnscented(inverse = nothing)), + output = NormalMeanVariance(2.499999999868301, 0.3125000002253504) + ) ] end end # testset diff --git a/test/rules/delta/unscented/test_out.jl b/test/rules/delta/unscented/test_out.jl index 7183c1235..6fbeab7f4 100644 --- a/test/rules/delta/unscented/test_out.jl +++ b/test/rules/delta/unscented/test_out.jl @@ -50,9 +50,9 @@ h(x::Float64, y::Vector{Float64}) = x^2 .- y @testset "Belief Propagation: f(x,y) (m_ins::NormalMeanVariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta = DeltaUnscented()), - output = NormalMeanVariance(1.9999999997671694, 67.00000899657607) - ) + input = (m_ins = ManyOf(NormalMeanVariance(2.0, 3.0), NormalMeanVariance(5.0, 1.0)), meta = DeltaUnscented()), + output = NormalMeanVariance(1.9999999997671694, 67.00000899657607) + ) ] end @@ -60,9 +60,9 @@ h(x::Float64, y::Vector{Float64}) = x^2 .- y @testset "Belief Propagation: f(x,y) (m_ins::MvNormalMeanCovariance, *)" begin @test_rules [with_float_conversions = false] DeltaFn{h}(:out, Marginalisation) [ ( - input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta = DeltaUnscented()), - output = MvNormalMeanCovariance([1.9999999997671694], [67.00000899657607]) - ) + input = (m_ins = ManyOf(MvNormalMeanCovariance([2.0], [3.0]), MvNormalMeanCovariance([5.0], [1.0])), meta = DeltaUnscented()), + output = MvNormalMeanCovariance([1.9999999997671694], [67.00000899657607]) + ) ] end end