From 99040493248c2846517a291578fe6ce20759730d Mon Sep 17 00:00:00 2001 From: kcw-grunt Date: Fri, 22 May 2026 18:37:05 +0100 Subject: [PATCH 1/3] Debugged the path shop changes for the Shop --- .../Shop Bentos/ShopBentoViewModel.swift | 122 ++++++++++++++++-- 1 file changed, 110 insertions(+), 12 deletions(-) diff --git a/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift b/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift index bcb7c33e..902401d8 100644 --- a/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift +++ b/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift @@ -62,6 +62,27 @@ import Foundation import SwiftUI + +struct ShopCard: Decodable, Identifiable { + let countryCode: String + let countryName: String + let productSlug: String + let productName: String + let productURL: URL + let cardImageWebP: URL + + var id: String { productSlug } + + enum CodingKeys: String, CodingKey { + case countryCode = "country_code" + case countryName = "country_name" + case productSlug = "product_slug" + case productName = "product_name" + case productURL = "product_url" + case cardImageWebP = "card_image_webp" + } +} + class ShopBentoViewModel: ObservableObject { // MARK: - Public Variables @@ -69,6 +90,9 @@ class ShopBentoViewModel: ObservableObject { @Published var widgetURL: URL = URL(string: BrainwalletShop.bitrefillCode)! + @Published + var cards: [ShopCard]? + init() { let key = RemoteConfigKeys.PATH_SHOP_CONTENT.rawValue let shopJson = RemoteConfigHelper().getString(key: key) @@ -78,32 +102,106 @@ class ShopBentoViewModel: ObservableObject { // MARK: - Models private struct ShopConfig: Decodable { - let shopData: [ShopItem] + let shopData: ShopData enum CodingKeys: String, CodingKey { case shopData = "shop_data" } } - private struct ShopItem: Decodable { - let widgetUrl: String - + private struct ShopData: Decodable { + let widgetUrl: URL + let cards: [ShopCard] enum CodingKeys: String, CodingKey { case widgetUrl = "widget_url" + case cards } } // MARK: - Fetch - /// Internal entry point — accepts a raw JSON string so tests can inject directly. func fetchShopConfig(from jsonString: String) { - guard - let data = jsonString.data(using: .utf8), - let config = try? JSONDecoder().decode(ShopConfig.self, from: data), - let firstItem = config.shopData.first, - let resolved = URL(string: firstItem.widgetUrl) - else { return } + guard let outerData = jsonString.data(using: .utf8) else { + assertionFailure("ShopConfig: invalid UTF-8 string") + return + } - widgetURL = resolved + do { + let config = try JSONDecoder().decode(ShopConfig.self, from: outerData) + let data = config.shopData + widgetURL = data.widgetUrl + cards = data.cards + } catch { + assertionFailure("ShopConfig decode failed: \(error)") + } } } + +// +//class ShopBentoViewModel: ObservableObject { +// +// // MARK: - Public Variables +// +// @Published +// var widgetURL: URL = URL(string: BrainwalletShop.bitrefillCode)! +// +// init() { +// let key = RemoteConfigKeys.PATH_SHOP_CONTENT.rawValue +// let shopJson = RemoteConfigHelper().getString(key: key) +// fetchShopConfig(from: shopJson) +// } +// +// // MARK: - Models +// +// private struct ShopConfig: Decodable { +// let shopData: ShopData +// enum CodingKeys: String, CodingKey { +// case shopData = "shop_data" +// } +// } +// +// private struct ShopData: Decodable { +// let widgetUrl: URL +// let cards: [ShopCard] +// enum CodingKeys: String, CodingKey { +// case widgetUrl = "widget_url" +// case cards +// } +// } +// +// private struct ShopCard: Decodable, Identifiable { +// let countryCode: String +// let countryName: String +// let productSlug: String +// let productName: String +// let productURL: URL +// let cardImageWebP: URL +// +// var id: String { productSlug } +// +// enum CodingKeys: String, CodingKey { +// case countryCode = "country_code" +// case countryName = "country_name" +// case productSlug = "product_slug" +// case productName = "product_name" +// case productURL = "product_url" +// case cardImageWebP = "card_image_webp" +// } +// } +// // MARK: - Fetch +// +// /// Internal entry point — accepts a raw JSON string so tests can inject directly. +// func fetchShopConfig(from jsonString: String) { +// guard let data = jsonString.data(using: .utf8) else { +// assertionFailure("ShopConfig: invalid UTF-8 string") +// return +// } +// do { +// let config = try JSONDecoder().decode(ShopConfig.self, from: data) +// loadCardImages() +// } catch { +// // DecodingError will tell you exactly which key/type failed +// assertionFailure("ShopConfig decode failed: \(error)") +// } +// } +//} From 17aea209a15877848bb22e47f93a1e948302341e Mon Sep 17 00:00:00 2001 From: kcw-grunt Date: Fri, 22 May 2026 19:55:03 +0100 Subject: [PATCH 2/3] Adding the smaller card images Polished the logo --- brainwallet.xcodeproj/project.pbxproj | 16 +- .../Shop Bentos/ShopBentoView.swift | 16 +- .../Shop Bentos/ShopBentoViewModel.swift | 201 ++++-------------- ...iftCardsView.swift => ShopCardsView.swift} | 74 ++++--- .../Bento Views/Shop Bentos/ShopImages.swift | 85 ++++++++ .../Bento Views/Shop Bentos/ShopStructs.swift | 46 ++++ .../New Main Classes/NewMainView.swift | 7 +- .../bw-placeholder.imageset/Contents.json | 21 ++ .../bw-logo-padding.png | Bin 0 -> 149842 bytes 9 files changed, 269 insertions(+), 197 deletions(-) rename brainwallet/Bento Views/Shop Bentos/{GiftCardsView.swift => ShopCardsView.swift} (59%) create mode 100644 brainwallet/Bento Views/Shop Bentos/ShopImages.swift create mode 100644 brainwallet/Bento Views/Shop Bentos/ShopStructs.swift create mode 100644 brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/Contents.json create mode 100644 brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/bw-logo-padding.png diff --git a/brainwallet.xcodeproj/project.pbxproj b/brainwallet.xcodeproj/project.pbxproj index 1de487ed..475501c9 100644 --- a/brainwallet.xcodeproj/project.pbxproj +++ b/brainwallet.xcodeproj/project.pbxproj @@ -392,11 +392,13 @@ C312D4942D7DC27700BB97A4 /* RetryTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C312D2982D7DC27700BB97A4 /* RetryTimer.swift */; }; C312D4952D7DC27700BB97A4 /* RadialGradientView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C312D1F02D7DC27700BB97A4 /* RadialGradientView.swift */; }; C312D4BB2D7DC27700BB97A4 /* coinflip.aiff in Resources */ = {isa = PBXBuildFile; fileRef = C312D0AF2D7DC27700BB97A4 /* coinflip.aiff */; }; + C32233132FC214A70043CBA7 /* ShopImages.swift in Sources */ = {isa = PBXBuildFile; fileRef = C322330D2FC214990043CBA7 /* ShopImages.swift */; }; C3236A012D7DE355007039A1 /* URLController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3236A002D7DE34D007039A1 /* URLController.swift */; }; + C33C4A1F2FC1C96100C23DA7 /* ShopStructs.swift in Sources */ = {isa = PBXBuildFile; fileRef = C33C4A192FC1C94B00C23DA7 /* ShopStructs.swift */; }; C353E3BA2FAE9F9E00BFFB30 /* ShopBentoViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C353E3B42FAE9F9000BFFB30 /* ShopBentoViewModel.swift */; }; C35C122A293D48340009022D /* KeychainAccess in Frameworks */ = {isa = PBXBuildFile; productRef = C35C1229293D48340009022D /* KeychainAccess */; }; C3C95F082FA13DEF002E2BEE /* SignupAskView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3C95F072FA13DEF002E2BEE /* SignupAskView.swift */; }; - C3E18A9F2F9E657000966C74 /* GiftCardsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3E18A9E2F9E656600966C74 /* GiftCardsView.swift */; }; + C3E18A9F2F9E657000966C74 /* ShopCardsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3E18A9E2F9E656600966C74 /* ShopCardsView.swift */; }; C3E18AA12F9EC22000966C74 /* ConfirmationStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3E18AA02F9EC21600966C74 /* ConfirmationStatus.swift */; }; C3FACF6C2F9E023700886FAD /* GameHubCarouselBentoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3FACF6B2F9E023700886FAD /* GameHubCarouselBentoView.swift */; }; C3FACF6E2F9E025300886FAD /* MoonPayView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3FACF6D2F9E025300886FAD /* MoonPayView.swift */; }; @@ -985,10 +987,12 @@ C312D2C82D7DC27700BB97A4 /* WalletCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WalletCoordinator.swift; sourceTree = ""; }; C312D2C92D7DC27700BB97A4 /* WalletManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WalletManager.swift; sourceTree = ""; }; C312D2CA2D7DC27700BB97A4 /* WalletManager+Auth.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WalletManager+Auth.swift"; sourceTree = ""; }; + C322330D2FC214990043CBA7 /* ShopImages.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShopImages.swift; sourceTree = ""; }; C3236A002D7DE34D007039A1 /* URLController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = URLController.swift; sourceTree = ""; }; + C33C4A192FC1C94B00C23DA7 /* ShopStructs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShopStructs.swift; sourceTree = ""; }; C353E3B42FAE9F9000BFFB30 /* ShopBentoViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShopBentoViewModel.swift; sourceTree = ""; }; C3C95F072FA13DEF002E2BEE /* SignupAskView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignupAskView.swift; sourceTree = ""; }; - C3E18A9E2F9E656600966C74 /* GiftCardsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GiftCardsView.swift; sourceTree = ""; }; + C3E18A9E2F9E656600966C74 /* ShopCardsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShopCardsView.swift; sourceTree = ""; }; C3E18AA02F9EC21600966C74 /* ConfirmationStatus.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfirmationStatus.swift; sourceTree = ""; }; C3FACF6B2F9E023700886FAD /* GameHubCarouselBentoView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameHubCarouselBentoView.swift; sourceTree = ""; }; C3FACF6D2F9E025300886FAD /* MoonPayView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoonPayView.swift; sourceTree = ""; }; @@ -2143,8 +2147,10 @@ C3E18A982F9E5E7300966C74 /* Shop Bentos */ = { isa = PBXGroup; children = ( + C322330D2FC214990043CBA7 /* ShopImages.swift */, + C33C4A192FC1C94B00C23DA7 /* ShopStructs.swift */, C353E3B42FAE9F9000BFFB30 /* ShopBentoViewModel.swift */, - C3E18A9E2F9E656600966C74 /* GiftCardsView.swift */, + C3E18A9E2F9E656600966C74 /* ShopCardsView.swift */, 247A7D102E951D3F000DF8C0 /* ShopBentoView.swift */, ); path = "Shop Bentos"; @@ -2671,6 +2677,7 @@ C312D2E42D7DC27700BB97A4 /* KVStoreCoordinator.swift in Sources */, C312D2E72D7DC27700BB97A4 /* ChildViewTransitioningDelegate.swift in Sources */, 247A83912EA00D8600B5DFD8 /* aurora.metal in Sources */, + C32233132FC214A70043CBA7 /* ShopImages.swift in Sources */, C312D2EA2D7DC27700BB97A4 /* ForgotView.swift in Sources */, C312D2EC2D7DC27700BB97A4 /* AnimatableIcon.swift in Sources */, 242C43EF2F25397300CF6EA4 /* WalkthroughStep3View.swift in Sources */, @@ -2857,7 +2864,7 @@ C312D3F32D7DC27700BB97A4 /* WalletCoordinator.swift in Sources */, 243136FB2E0AFD1700BCBED1 /* SettingsHelpers.swift in Sources */, 2457DDE82EB7EC4400688B9A /* CoreModeView.swift in Sources */, - C3E18A9F2F9E657000966C74 /* GiftCardsView.swift in Sources */, + C3E18A9F2F9E657000966C74 /* ShopCardsView.swift in Sources */, 247A7D132E95286E000DF8C0 /* GameHubBentoView.swift in Sources */, C312D3FC2D7DC27700BB97A4 /* UIView+InitAdditions.swift in Sources */, C312D3FD2D7DC27700BB97A4 /* LocaleChangeViewModel.swift in Sources */, @@ -2929,6 +2936,7 @@ C312D4622D7DC27700BB97A4 /* UIViewController+BRWAdditions.swift in Sources */, C312D4632D7DC27700BB97A4 /* PinPadCells.swift in Sources */, C312D4662D7DC27700BB97A4 /* PaymentRequest.swift in Sources */, + C33C4A1F2FC1C96100C23DA7 /* ShopStructs.swift in Sources */, C312D4692D7DC27700BB97A4 /* CGContext+Additions.swift in Sources */, 24A0FFE22F4C50080003BAA0 /* EmojiSetViewModifier.swift in Sources */, 24E078A82DF1F9A9004B5958 /* PromptCellView.swift in Sources */, diff --git a/brainwallet/Bento Views/Shop Bentos/ShopBentoView.swift b/brainwallet/Bento Views/Shop Bentos/ShopBentoView.swift index 2ae79496..1a9e89ab 100644 --- a/brainwallet/Bento Views/Shop Bentos/ShopBentoView.swift +++ b/brainwallet/Bento Views/Shop Bentos/ShopBentoView.swift @@ -10,7 +10,10 @@ import SwiftUI import FirebaseAnalytics struct ShopBentoView: View { - + + @ObservedObject + var shopViewModel: ShopBentoViewModel + @ObservedObject var newMainViewModel: NewMainViewModel @@ -27,10 +30,15 @@ struct ShopBentoView: View { private let tagLabelWidth: CGFloat = 80.0 - init(viewModel: NewMainViewModel, userPrefersDarkTheme: Binding) { + init(shopBentoViewModel: ShopBentoViewModel, + newMViewModel: NewMainViewModel, + userPrefersDarkTheme: Binding) { _userPrefersDarkTheme = userPrefersDarkTheme - newMainViewModel = viewModel + shopViewModel = shopBentoViewModel + newMainViewModel = newMViewModel } + + var body: some View { GeometryReader { geometry in @@ -57,7 +65,7 @@ struct ShopBentoView: View { } .frame(width: width * 0.5) VStack(alignment: .trailing) { - GiftCardsView() + ShopCardsView(shopViewModel: shopViewModel) } .frame(maxWidth: width * 0.5) } diff --git a/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift b/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift index 902401d8..fe484d2a 100644 --- a/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift +++ b/brainwallet/Bento Views/Shop Bentos/ShopBentoViewModel.swift @@ -5,84 +5,10 @@ //// Created by Kerry Washington on 5/8/26. //// Copyright © 2026 Grunt Software, LTD. All rights reserved. //// -//import Foundation -//import SwiftUI -// -//class ShopBentoViewModel: ObservableObject { -// -// // MARK: - Public Variables -// -// @Published -// var widgetURL: URL = URL(string: BrainwalletShop.bitrefillCode)! -// -// init() { -// fetchShopConfig() -// } -// -// // MARK: - Models -// -// private struct ShopConfig: Decodable { -// let shopData: [ShopItem] -// -// enum CodingKeys: String, CodingKey { -// case shopData = "shop_data" -// } -// } -// -// private struct ShopItem: Decodable { -// let widgetUrl: String -// -// enum CodingKeys: String, CodingKey { -// case widgetUrl = "widget_url" -// } -// } -// -// func fetchShopConfig() { -// let key = RemoteConfigKeys.PATH_SHOP_CONTENT.rawValue -// let shopJson = RemoteConfigHelper().getString(key: key) -// -// guard -// let data = shopJson.data(using: .utf8), -// let config = try? JSONDecoder().decode(ShopConfig.self, from: data), -// let firstItem = config.shopData.first, -// let resolved = URL(string: firstItem.widgetUrl) -// else { return } -// -// widgetURL = resolved -// } -//} -// -// ShopBentoViewModel.swift -// brainwallet -// -// Created by Kerry Washington on 5/8/26. -// Copyright © 2026 Grunt Software, LTD. All rights reserved. -// import Foundation import SwiftUI - -struct ShopCard: Decodable, Identifiable { - let countryCode: String - let countryName: String - let productSlug: String - let productName: String - let productURL: URL - let cardImageWebP: URL - - var id: String { productSlug } - - enum CodingKeys: String, CodingKey { - case countryCode = "country_code" - case countryName = "country_name" - case productSlug = "product_slug" - case productName = "product_name" - case productURL = "product_url" - case cardImageWebP = "card_image_webp" - } -} - class ShopBentoViewModel: ObservableObject { // MARK: - Public Variables @@ -93,115 +19,68 @@ class ShopBentoViewModel: ObservableObject { @Published var cards: [ShopCard]? + @Published + var cardImages: [UIImage]? + + @Published + var cardImagesVersion: Int = 0 + + @StateObject + private var loader = ImageLoader() + + init() { let key = RemoteConfigKeys.PATH_SHOP_CONTENT.rawValue let shopJson = RemoteConfigHelper().getString(key: key) fetchShopConfig(from: shopJson) } - - // MARK: - Models - private struct ShopConfig: Decodable { - let shopData: ShopData - - enum CodingKeys: String, CodingKey { - case shopData = "shop_data" - } + func updateCardImages(_ images: [UIImage]) { + cardImages = images + cardImagesVersion += 1 + } - private struct ShopData: Decodable { - let widgetUrl: URL - let cards: [ShopCard] - enum CodingKeys: String, CodingKey { - case widgetUrl = "widget_url" - case cards + private func loadCardImages(_ cards: [ShopCard]?) async { + guard let realCards = cards else { + return + } + var loaded: [UIImage] = [] + for card in realCards { + if let uiImage = await ImageLoader.loadImage(from: card.cardImageWebP) { + loaded.append(uiImage) + } else { + loaded.append(UIImage(named: "bw-placeholder")!) + } + } + await MainActor.run { + updateCardImages(loaded) } } - + // MARK: - Fetch func fetchShopConfig(from jsonString: String) { - guard let outerData = jsonString.data(using: .utf8) else { + guard let jsonData = jsonString.data(using: .utf8) else { assertionFailure("ShopConfig: invalid UTF-8 string") return } do { - let config = try JSONDecoder().decode(ShopConfig.self, from: outerData) - let data = config.shopData + let shopConfig = try JSONDecoder().decode(ShopConfig.self, from: jsonData) + let data = shopConfig.shopData widgetURL = data.widgetUrl - cards = data.cards + + if let regionCode = Locale.current.region?.identifier { + cards = data.cards.filter { $0.countryCode.contains(regionCode) } + Task { + await loadCardImages(cards) + } + } + } catch { assertionFailure("ShopConfig decode failed: \(error)") } } } -// -//class ShopBentoViewModel: ObservableObject { -// -// // MARK: - Public Variables -// -// @Published -// var widgetURL: URL = URL(string: BrainwalletShop.bitrefillCode)! -// -// init() { -// let key = RemoteConfigKeys.PATH_SHOP_CONTENT.rawValue -// let shopJson = RemoteConfigHelper().getString(key: key) -// fetchShopConfig(from: shopJson) -// } -// -// // MARK: - Models -// -// private struct ShopConfig: Decodable { -// let shopData: ShopData -// enum CodingKeys: String, CodingKey { -// case shopData = "shop_data" -// } -// } -// -// private struct ShopData: Decodable { -// let widgetUrl: URL -// let cards: [ShopCard] -// enum CodingKeys: String, CodingKey { -// case widgetUrl = "widget_url" -// case cards -// } -// } -// -// private struct ShopCard: Decodable, Identifiable { -// let countryCode: String -// let countryName: String -// let productSlug: String -// let productName: String -// let productURL: URL -// let cardImageWebP: URL -// -// var id: String { productSlug } -// -// enum CodingKeys: String, CodingKey { -// case countryCode = "country_code" -// case countryName = "country_name" -// case productSlug = "product_slug" -// case productName = "product_name" -// case productURL = "product_url" -// case cardImageWebP = "card_image_webp" -// } -// } -// // MARK: - Fetch -// -// /// Internal entry point — accepts a raw JSON string so tests can inject directly. -// func fetchShopConfig(from jsonString: String) { -// guard let data = jsonString.data(using: .utf8) else { -// assertionFailure("ShopConfig: invalid UTF-8 string") -// return -// } -// do { -// let config = try JSONDecoder().decode(ShopConfig.self, from: data) -// loadCardImages() -// } catch { -// // DecodingError will tell you exactly which key/type failed -// assertionFailure("ShopConfig decode failed: \(error)") -// } -// } -//} diff --git a/brainwallet/Bento Views/Shop Bentos/GiftCardsView.swift b/brainwallet/Bento Views/Shop Bentos/ShopCardsView.swift similarity index 59% rename from brainwallet/Bento Views/Shop Bentos/GiftCardsView.swift rename to brainwallet/Bento Views/Shop Bentos/ShopCardsView.swift index 061361df..27e021e6 100644 --- a/brainwallet/Bento Views/Shop Bentos/GiftCardsView.swift +++ b/brainwallet/Bento Views/Shop Bentos/ShopCardsView.swift @@ -1,5 +1,5 @@ // -// GiftCardsView.swift +// ShopCardsView.swift // brainwallet // // Created by Kerry Washington on 4/26/26. @@ -9,23 +9,40 @@ import SwiftUI -struct GiftCardsView: View { +struct ShopCardsView: View { @State private var shouldAnimate: Bool = false + @State + private var image1 = UIImage(named: "bw-placeholder")! + + @State + private var image2 = UIImage(named: "bw-placeholder")! + + @State + private var image3 = UIImage(named: "bw-placeholder")! + + @ObservedObject + var shopViewModel: ShopBentoViewModel + + private func loadImages() { + let images = shopViewModel.cardImages + image1 = images?[safe: 0] ?? UIImage(named: "bw-placeholder")! + image2 = images?[safe: 1] ?? UIImage(named: "bw-placeholder")! + image3 = images?[safe: 2] ?? UIImage(named: "bw-placeholder")! + } var body: some View { GeometryReader { geometry in let width = geometry.size.width - let height = geometry.size.height ZStack { HStack { VStack(alignment: .trailing) { - SingleGiftCardView(giftCardImage: "visa_logo", + SingleShopCardView(cardUIImage: image1, gradient: BrainwalletGradient.blueCard, rotationAngle: 20.0) .frame(width: 100, height: 63.05) @@ -42,7 +59,7 @@ struct GiftCardsView: View { HStack { VStack(alignment: .trailing) { - SingleGiftCardView(giftCardImage: "je_logo", + SingleShopCardView(cardUIImage: image2, gradient: BrainwalletGradient.orangeCard, rotationAngle: 20.0) .frame(width: 100, height: 63.05) @@ -61,8 +78,8 @@ struct GiftCardsView: View { HStack { VStack(alignment: .trailing) { Spacer() - SingleGiftCardView(giftCardImage: "amazon_logo", - gradient: BrainwalletGradient.grayCard, + SingleShopCardView(cardUIImage: image3, + gradient: BrainwalletGradient.blueCard, rotationAngle: -20.0) .frame(width: 100, height: 63.05) .offset(x: shouldAnimate ? 25 : 105, y: 15.0) @@ -79,35 +96,42 @@ struct GiftCardsView: View { } } + .onChange(of: shopViewModel.cardImagesVersion) { _, newVersion in + loadImages() + withAnimation(.easeInOut(duration: 2.0)) { + shouldAnimate = true + } + } } } - - -struct SingleGiftCardView: View { - - let giftCardImage: String +struct SingleShopCardView: View { + let cardUIImage: UIImage let gradient: RadialGradient - let rotationAngle: Double - var body: some View { GeometryReader { geometry in - let width = geometry.size.width ZStack { - RoundedRectangle(cornerRadius: 8, style: .continuous) - .fill(gradient) - .frame(width: width, height: width * 0.6305) - .rotationEffect(Angle(degrees: rotationAngle)) - Image(giftCardImage) - .resizable() - .aspectRatio(contentMode: .fit) - .frame(maxWidth: width * 0.6) - .rotationEffect(Angle(degrees: rotationAngle)) - } + RoundedRectangle(cornerRadius: 8, style: .continuous) + .fill(gradient) + .frame(width: width, height: width * 0.6305) + .rotationEffect(Angle(degrees: rotationAngle)) + + Image(uiImage: cardUIImage) + .resizable() + .aspectRatio(contentMode: .fill) + .frame(width: width, height: width * 0.6305) + .clipShape(RoundedRectangle(cornerRadius: 8, style: .continuous)) + .rotationEffect(Angle(degrees: rotationAngle)) + } } } } +extension Collection { + subscript(safe index: Index) -> Element? { + indices.contains(index) ? self[index] : nil + } +} diff --git a/brainwallet/Bento Views/Shop Bentos/ShopImages.swift b/brainwallet/Bento Views/Shop Bentos/ShopImages.swift new file mode 100644 index 00000000..63781882 --- /dev/null +++ b/brainwallet/Bento Views/Shop Bentos/ShopImages.swift @@ -0,0 +1,85 @@ +// +// ShopImages.swift +// brainwallet +// +// Created by Kerry Washington on 5/23/26. +// Copyright © 2026 Grunt Software, LTD. All rights reserved. +// + +import SwiftUI +import UIKit + +final class ImageLoader: ObservableObject { + + private static let cache = NSCache() + + + static func loadImage(from url: URL) async -> UIImage? { + + // Memory cache + if let cached = cache.object(forKey: url as NSURL) { + return cached + } + + var request = URLRequest(url: url) + + request.timeoutInterval = 20 + + // Important for CDNs + request.setValue( + "image/webp,image/*,*/*;q=0.8", + forHTTPHeaderField: "Accept" + ) + request.setValue( + "https://www.bitrefill.com/", + forHTTPHeaderField: "Referer" + ) + request.setValue( + "https://www.bitrefill.com", + forHTTPHeaderField: "Origin" + ) + + // Retry transient CDN failures + for attempt in 1...3 { + + do { + + let (data, response) = try await URLSession.shared.data(for: request) + + guard + let http = response as? HTTPURLResponse + else { + continue + } + + // Validate status code + guard (200...299).contains(http.statusCode) else { + let isRetryable = http.statusCode >= 500 || http.statusCode == 429 + if isRetryable && attempt < 3 { + try await Task.sleep(for: .seconds(Double(attempt))) + continue + } + return nil + } + + // Validate MIME type + guard (http.mimeType ?? "").starts(with: "image/") else { + return nil + } + + // Validate image decode + guard let uiImage = UIImage(data: data) else { + return nil + } + + cache.setObject(uiImage, forKey: url as NSURL) + return uiImage + + } catch { + if attempt == 3 { return nil } + try? await Task.sleep(for: .seconds(Double(attempt) * 1.5)) + } + } + return nil + } +} diff --git a/brainwallet/Bento Views/Shop Bentos/ShopStructs.swift b/brainwallet/Bento Views/Shop Bentos/ShopStructs.swift new file mode 100644 index 00000000..9b6813b5 --- /dev/null +++ b/brainwallet/Bento Views/Shop Bentos/ShopStructs.swift @@ -0,0 +1,46 @@ +// +// ShopStructs.swift +// brainwallet +// +// Created by Kerry Washington on 5/23/26. +// Copyright © 2026 Grunt Software, LTD. All rights reserved. +// + +// MARK: - Shop Structs +import SwiftUI + +struct ShopConfig: Codable { + let shopData: ShopData + + enum CodingKeys: String, CodingKey { + case shopData = "shop_data" + } +} + +struct ShopData: Codable { + let widgetUrl: URL + let cards: [ShopCard] + enum CodingKeys: String, CodingKey { + case widgetUrl = "widget_url" + case cards + } + } +struct ShopCard: Codable, Identifiable { + let countryCode: String + let countryName: String + let productSlug: String + let productName: String + let productURL: URL + let cardImageWebP: URL + + var id: String { productSlug } + + enum CodingKeys: String, CodingKey { + case countryCode = "country_code" + case countryName = "country_name" + case productSlug = "product_slug" + case productName = "product_name" + case productURL = "product_url" + case cardImageWebP = "card_image_webp" + } +} diff --git a/brainwallet/New Main Classes/NewMainView.swift b/brainwallet/New Main Classes/NewMainView.swift index 5d4bf877..2fc5a03c 100644 --- a/brainwallet/New Main Classes/NewMainView.swift +++ b/brainwallet/New Main Classes/NewMainView.swift @@ -23,7 +23,7 @@ struct NewMainView: View { @StateObject var gameHubViewModel = GameHubViewModel() - @StateObject + @ObservedObject var shopViewModel = ShopBentoViewModel() @State @@ -169,8 +169,9 @@ struct NewMainView: View { .frame(maxHeight: heightPadded * 0.7) .padding(bentoPadding) .accessibilityIdentifier("ltcPriceBentoView") - ShopBentoView(viewModel: newMainViewModel, - userPrefersDarkTheme: $userPrefersDarkTheme) + ShopBentoView(shopBentoViewModel: shopViewModel, + newMViewModel: newMainViewModel, + userPrefersDarkTheme: $userPrefersDarkTheme) .frame(maxHeight: heightPadded * 0.3) .padding(bentoPadding) .accessibilityIdentifier("shopBentoView") diff --git a/brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/Contents.json b/brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/Contents.json new file mode 100644 index 00000000..6db91b9d --- /dev/null +++ b/brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "bw-logo-padding.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/bw-logo-padding.png b/brainwallet/PreLaunchResources/Assets.xcassets/Branding/bw-placeholder.imageset/bw-logo-padding.png new file mode 100644 index 0000000000000000000000000000000000000000..485f8af436375457aaeadf72631121d6496c2de4 GIT binary patch literal 149842 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%0AbHLW>)X`wrRxEwtHjB*R>JJq97Qk# zp2UEN4CS3S<1GVNUwh6O|tyLOZnbVsb5qcYbdnAC$MA`x)wP8KIq~28&6zD4SAVXE@XzE-R4G48kTe*LdGa5phlcqgoRglt zT%4D4zCOs=4eTt?SY3UbV4d0T(vaavX2QCe;Z>-skB4-UkVj$;1ZD*ahC zoROW>UA*G;8v0SQl^4ZwAS5bBy;~uJebzE_FFFO`@bg2x$Q`CBWQCtAje}VT1X@e} z`6dtILS1cibNFv6aH<~8A0Mh@XLCl2Nxlv~i>@BeZ)*>vIoX%5Cu74@Wxxj~PO$%? z@NbR!g>NzY;a7s<1!o-`g5#63AMZZ3OygIZ1ZDhqd-r^`HE2ey{3!4_b~OMfmv}CH zd)v3U3c_~$EnI{0pD-pt$AK}S1w-3R+_P94(UTM4o?4+9^0RGgbJUs6 z71=ZQ%nnY7Ghw7#9+&&ByAIBV(LNa;W|@4ZAbc(=$z!(*@VdagGMT53#psn-lkI+` zMP0eB!@e(NU+jInYnf%w+A`^L+xfN)cA$2|IBAQgb|+Jhi0H@G%0!eR^T(Bc`i7+X z9^)}i5?{R+r6XQf??ImfF|SvAj~!XGWCAy)olU=s@kvkz4Dj+2$0L;Fq^5sz6TPk# zv}>3c6xORd=`)=DQ2tA;Bd9=#e$Ec_3!o@af>Cc%u(f?Tw5vVZW@}srlDr(wS#^+@ zqHFV+efw2{3(GHT4&2g!SI52{S{1m4iPwch*yF=tx%RTNUq#^$j&$F=)(xgnFR0&J z-ERe9qb-@(Spx|m!2ELgN+dk)k#R!o zp!1a6CU!^)hqd9#h2)3t*R5;Zxa?uKnUhLcE#G*>h%xyvDYi%#7Y~~m=7_&R;fG!_ zZ!wMw2TxKSuMU1Oq}UwH07&7&MO=YNQb2DyqN44hM50x+y`^3kUbvVB!I+d0AAr%D zDa|D6T+w#XyUVU_*?w!B5byf>Z^=h~&BG(qtP+&s-_NPj9YZ)S+`GpCi$%kDp$3<( z@2qZax^CWYnTNig%O2j9txtvhV@bMGV!wy zYJEr;B=zdLwp9L7w)Vp8RQwy>8C_tC{x7A2GzC0)<`Gk5k)>-asNSUs1}YOE-6cmz z=}GOpX})s9edzAzm@drvK$-_La@Yq(j*A#SXpu$e7aKsUg;uM^Vop)&mW!yQff3=< zuX1a3`;U+EbQANL$vTCam&c?}!0eI#y3PfT+SyF8GF!Ozp;~)lm8Vw~Q};P6!xQ0uPO?LT`^RWg!Wv zFe`y2nLtnW#(3}D#v-q+`>^25qpr^(&qq=M%wN74Ff;;0B#((_d4k73LmfYTE~0A3 z6B|My&@5{Ei|-rCUW&Y`(6rO5H|#GM3SH3HY7VlzBe4EodL=YFu?AB z)jNIMF5Q;;-B#eaW<0b8tKar>!Eb*fok;ZXM^#A)%*v`AjNuJv`O}T%M0_~86eB!B zVyR({u%+X0axxg>F0`Xl?6A>CDg$*G!jP@Uop40dt@rd6&0*`eJF*N$B@6xm0y+<{ z!W9VgBEh%0ESz{40mcKs{PxnN#P_dU=}xq6lbreg!*rOTYMeK*neP-??a%cWjlk(* zYU|x+@97tM#u^t}fo`Qn*JVwd@pum?EAfX}uLZ}yUzDLB9BmHqIayc_Ju?_hZ1s(+ zEwRpS-vt78z|*i$eDQBfee_T7+kjy55c`}dnGJDJ3x}xfKgG`6SQk~5IBa4)hXjoj6PC9nNR>@$)YUCK+yeMOvt2SgF~Pb8PW z98VDy^9Xuhl9>s+_D*M+km6ldOorg%VuoN=tLF8aGrz4^kZ3rIOWIxN__shyQ4OUW}{X8VQlA40!zxuN-MFMcsJ27 zEfGzUM8k5sc46wp);j97zm^W=b+Rkc=-RVLCG3u@&tPW)c;Z&4RJBIEfKRDGsbfw_ znMD^Qs^^3xwj*u&h-gA6NE(RsoQ9zExiqe;-=J2z1kodgbv*X(N zfoI)&KQnbK_i!E6 zkz!HzzBBJ5bH2@m7TFcsoVGHutO z#rJC{FJ{{7^RrPQR@ay(4hHs@w=I?JoBR$2muKr(U4X`>61l8+JkmWhOLA0SqLSck z6=QtRZB^=hs{}wB3x54qIF%7Q@0Ax1k9~@Gr0FtDk1jlHi3CEDOBeV7Dct@=>Q`utAdg4-@kcOwtU^Ee2lfX6ZDzz_sSKWons;*sXyZOTg$4* zKoDmHSEH}Wdw6Iic(~~M-0o}>?3h293gfM)=c?Ng`RGwhej)PQ9a42csO=nSh+@#f zBrRgCNwIC}@naJu)|4IziXB2|?W$MwvZ~kGHA;dF^?h7%@wX5tJ=J?zimj94oE={i zcdfe9-H9weVjT|Gjo4{tgn9QTpvlXzoafP0l`NF8nQ&1X=!@hMqJ`&~x`9z0OcZyt zPwv{o-j-q?LyqJ98!8VeUvTuy?^A~q7;J8j-PqpZcjD&BzKWF*eP%&ER(CpjBaf+v zh+M*-pEu7;mlF;I1I+iE*P=;8uFC!boUDA-IuPv#jsA{^=8H# z1ZNgJR!`u$T7dgeYg%`IzjODtlKcI@%fNHXn$oQkhUt!>T~%Yf7Z49; z+f6+6cs|#EN;~toIZz$W-Tp~A)}@u-=W%v_-dG;~z?Dx`-)B{(K3g^|yAP;!+=n27 zh${#)XJ=(Q%2*Ur0Un&*-Ost7r`SksIQ*O6D!7Gntl)0NIVMNSqq(OQsyA2!beDxs z(E#dk-$N=?+VJt=CxQ7o)5`N1`-46$3y{WWs4Ln!OTQmn*g1%Fu3B zpI9I&R?V;Fbf!%a++@+$#zAm)V zr)V;=5Rl7kc^#fKLH&|J+Zfe54*GzICu-+%6j(nVphDfLNipp-W0(Zu`HRz^sTN-9 z*44ru>O1vwa{(-~=-zp0sV)AykLsxPs*hPEIY>`{u-*09fccLeADS%r*PUE1wOKay z{%nz%AtvTw{#`Mr?__>pDLY$(R?wYq{U&Wu#x-U!4az>maU8Okm>HTdaXOdxoyyU{8pGv0ZJqn#=W$_&Mz1F({ zWsJbN&g;T>2RIaKcv%eqsHd%=r}7ee$JE;59k@SV)^NM5iY6tz(!C(uo0jp5CX4yw zW=$OiDK={t0!+3Q8FmJ@%3G(GhdXt z|CQpUqDNz;7Tff@TR(QKx{@@6$Y6NBqxbG)`Mk%&;Uyr+XGo3W9#0;~8(RzL%#uvx zrQzoGoUw2AoWHba%u7naf~g{KBnR$+^4?XLI98`KlLY@zmf&jKtuUTf`gpQ*FEZk4 zo7a`mTvai%5_a2c_g~R&0G)e5H}y2mj%G9tM>BkuPEJ1*adUY^syo)>U8a8??#G+w zbo6k!Rr8wmtr=UwuJx%3u=On^B(0jOPUco?B5GdS?j&xYN-x4^Gl-umZ>Y%62C}s> ztAJ6pFg`>F!S9eXeT?HFTXDb4nEiR4d3+{w*L%3N4I6&rAqcgwtm_wnB7k z>qFgTkeb8ACiN=n#AmY31c>;`Pftba_%xGpavmBRf77uUao1Co%6p`sK;$-Zr#R<5 z5zaL3XlUjGf9;%%L<6>J*Bb)2>!vR_mg8(3d-|W`eb3l;`K3yS5}!E7>wFq%P!X-_ArGqmeADifC( zJl8|BOCxWh_}@t(Ka5gd)5#yqjjAcq52h89xk7*U{Y){=7e^83A@k(^v3X~{&gqYB zF7c0r*%7>qvmgBp4XIt`6&Zf3U>a4%Xtcp*$J1=E26KQaD>D%9zj7W6S8D1MUgMaq zcaA=*KR&xYyTkubO!1D#lyUZEIxY}bE>ha#qf88oWF>c1r9L$?#I6UYCG{vywRXF% z41ziIH|a}uxxWG3$(b0sCcD$Nomjk7;5^IEpB_!5%2Z)g#5$2m`N z^MqpCOXqAa9KE;=$8|D*`u^pfx`c2j6;xuPN|IfNhHtNpqzy?OkFCe>Fq~#^HN>ko zqUY70Z%?>Hs0vs5;XUlH*o0Nw`Z z>okBAB3rj$*vhj%toRb_7UNm%^wjSR*LLREwR2{F11*UiUz1A4lI-q0U4w3ltiQt# z+{9^PdzJ%9L>#~*bgdf&2>phbQ#*OJx9BCs$so&0e|orAdhR8ndLG|DW3}A;Hh??2 zdY!7iNWHJ`ayJ+vbNRsE3KZ-zZ8C>F0=#K}#f#Tdss-*(@o3nKA5m%xpgipcGy{}G z)u}PofWwyX4r~N>(<9D>uD6m-Hl_Q@Y&>i?q{sD&z7$14NVKpvBWO81>|V%Cq}Y9<&BKwP|_urJU3;uVyX|Br?4O1@Zf@2Fg;5$^7_-<-!aKc>q|C>vR%vr%vhQ+yGix@kL?xKCv0UK| z(~Afw`b#O-u&L=?)tFBhSPA%MGs3CJy5baPs&Cg$At8sYF+h+B{_a8LrGM3MXosm} zPD=jWv6UKMqhKwzkS5pHr`>ie>6RtKoIo_9*w6p~Cl-x+DjArUZnICuAZbJbr>x6rs zsa_N~<;x4E`u%D-ZUc*R3uJ`nzUc#&un>A}0J{Ww^5swDGJkl8j-Tk z%Fp96TdI#14bdZO;m5IDF^S?G<8&4AMdj$){VMM785P1Uvm0UAA3Js0?WIs`7$bUv z?jnT^kdIrf_AE5hQX5WeAaScd?i=(rK5Xv9j#?nlap0Cn4==d}%+bIYa1Ee@Tt_aJ zc<^CKqljHi-YT~$BiGZRwt2G?spWWS2mzzL2I2w!NZRbSRP;bpuGFH4_(uk4tkC)= zkGO#!K#lpK`X(+qMcJ1icW9LphAzSayb$ul`$3^=usSRaEY61X7YTKy`Gal7yvS(o zy|fFkxjDBp`{iY#p}IO}dCmUQ8zH#GH;8u81%aLNy&Q!jN}|5MQ@nO2b$&y}o3O$V z2CnaShU5}`G~vkr5+{331gtBgL!y%foP2-7@Ki8`N*`MSHYJhrfu0ZIbo{Ob+e_gP zl^l@Y_{|kJgqpsnrzXc+@7D3kYaEXPOpMi?IUhg}bp#b2wWxz*)kTxjDLZb>Zt4ng zVb`JV;Dm+Ff#7U| zW9KVSeUAmt@&T|14_*j=R5G4ln~nJdc%!hlBtFVk~Zt)+UD6# zc>9iP{dUC%xoI{(Iqr7^C#x|x9VaB}skmB=A@5!hK4A=V#+gkGR8AC82)-`$^LnfF zun_<9b6jA)|4zBf4nVpiOoZ$XXbFHlmVX?HJMAJlAn1wY*XYgtPST*2!Q< z0-U_kmm}^lsh!!0?8nu6*U2cPKXYsZqPz`Gn?n<*V(B3KV(&9aTi(FH{FuL!KGE;X zv1XcW0=UZ6mB>|zWo%)L#~}30>#v;8ALJ{MMwR2#syjxO`kQSL)CuWOF0S^Ov2vqZ zf8_a;1=YC0vibNBYxxzPhjkMzQ?l0hI;6VuH9*S~Zs#?JVI^4XH(Cu?@8h8?MH_wSA*s^)Ab}Q|eA?oya zq!q$f5=uafP$H^eaI{SLoqFwEKMjiidr{t!txso!(vjN#7A5pZE&k?B?98Bv;1%7d zyC46tPuv}xc;+zljR=WyW7hACT)_!%K4bu3NDPg#Xa~`?#Ndrm<)jL(&pzTky=ikrRyh+?t;+})l3g=BSil<(QodRi6;Pbon0Oh#4NGH@ z$`^o-FYczj!o&pQG*obwn0?S?DlSNOw3CR7Q(-o0-96gjS-j;qZHV4Q)1)Y)PyhhI)jRW@&rD51z}MPT(%3~1 zpKvWb?Z_B0&TgLzaWx3tofN|?2H67*2)ST6q~n;Zd(GjyU%1~8%6O4yN(N{RM(+$W zc&+og|9R6#;yI%`kdasFu}2r-gBmwsrMIMnmoRDaLFq{eE}q_Xa7@{Zfpt(po+yrV ztW)yTTydXtmVJ*2DdcakWxBlY*m?u#mARw%Ayo9xFz4od{vUtBj6BAMrq=x0{(@4r zZ%>DG4hs?`e_grNBib~*DZV)$4G{Uf^~gQ%mCotzx1sP#Xxrh6*y}a|z#z_DJgomH zQm-3iOGQY-a0>@pM+oRxU{K^8I!|9ryu0ZpRaR9YW3rqQbPf1kY{^R;f66i@j1~rQ z6^hGknYhPrI{By;`~@#@D?#O7Z$WN}X7FC`EV5IzX3I_iiZnhom`IkzG`m3NmoG#Y zQpE1D+AK3^)OMaI`I-GQhqWx@I=Wdnj)s6T`8VN)u|Sv9lC7(3*qc4lB%E%?vweJ% zr2FG0XfIk=5Prn{%TkhcVc^zN?|jV5C2Ph090t)5#lf=pR;w&x99$AIHI<7nZRf1s zD_M70lf(VL%3M;wC1z%q^0mZx5)Q5s(4`|AjG5Rl2b|Oiz3K-;6mxS-s&GNw;CpmNKxYjw%N5K2-&wAsa#Gd{wXXgnrGk>> zI4Aa{JJavpSL1S`@qpGscReer^iizNd(>@}@ zcml-WJ^(J%o0i{2UdL=fc{VECh;Dt!0Xl1`ZC4|VkBM78Sy09`-QQpbCkPw@){!z@ z;bK%QzM4$a?O?z%4^i@K-J0pti~kF~cjOqU6k9satP?F4hR5J0C!>>zI-nZ`^+I!dE3TUD*lgXc_FKWFZi)H7K4p2`wvCD7muz7`- zNG9*WyuM5K$qSjwYX^kEj=xu0r?$7%djksupUN@n;+629qGqG}mo3lQR!~N(W*1g1dH3jnH>HutyLJ9&$=p=#F`HexwJjm-i=LgAIMa|5`I*tR(9 z>SVq(ryvJ#l7Ahc0%4evhJajJ8 zoA3F!r*WJ1r$85NUma?E!%5wyGHg*?k7yaM$lCGxkw@avCyss2@egyT~24reBMe;7is z?LLwOqt_8*Ft6h+CW1-6x@RLZDU47PW)v))ZI-Z_EFaDfmid$*FK|ySGz{b1h+G07 zXZqjSy$1WYVvqL44kCzh7S|oGo665^BYHY%c-HDN&_WkD2ed42_K!&&94 zAk5ek^|;5z3dODND1$MDF5?1gL;sbm?sRKmu^BCS_IB5pan*)@FYbYiLB|8K$M0*N zSmwq}C8?3UOrpJ8r;z%-)cz=;s0QiNoeAQ2*&u?MkH|S?kC_71yT?+YRil~d`FdrK zBu=B#rbvn$Kw+RKJUEf0?bEXK4vc)v=G{J4AK1Auw@*ce%~lTq7MS$IqBA$Wq(TS9 zmhLk4C=@RjR}`^jbvtUCtoI*Yk^2vUBDREo>8M$%CV4DvP=vJQ9ZY~Kx;cIz$zo_I zGeH!jGeu|{tqOz0v-dL0U%6$ws;ziNZkL+b(6?wUJoXSi_ZEDdwYs?nygitE$u0Ug zImK>aHipwRUC6mdEIUe;hdva;pcoK2nWy1+Q_u!IA@KfZ2hgiYK}L^BWk_8p;{7 zAlzOQ?psTG@OoZI@z%_I(^qQIKpHY|Xu4FkKuluWmO|B|MS%w%S-2I7vi%zHm5c&P zkgA?kmT%P7{%gEd(OS%0zcpRpu9^U*-oarXKo*w2bE^@HuVTnQGp%2F{@YSiXm(UW zBv?{GF>oeXB)lCYHe+MMA&4cmI~be1q5sET85 zL=@Gv`Xm3coo|&zpRQ~j?vtlA{udRK>HtrQ4?CP+%X_60`S4}?mnFP_N8t~bX!&D= zXZ-4z<#4wiC4o`rwuxRNTu#!t>buS3O2flhuLw>jir#4O(W zNmc!}qsk=iWP5-2qi9^;cj)1}z)O-1 zFwr>SU|AHHRSa17zg!-}i}Qnh!2<+)JSB%QMSD??5d}ypAZjG%ryX9u{s`VV)2B-l z`*QhcVg)w=dwQgN57AB2{|=xe2}&}buWTrdlr0_EtLvyZN2BUDrdo5)5-Gia)CLhw zSkaE^^myi1;hRrK@R|9W>6sO{wPbk-qAB`Tm{h(TPOhz~`*F?SqEX$pw4_G=4Hg_z z$*a^f4z|w{yvE%w4r;6@IH21hoRJ|juRm`} z!JJFv+nb7OV5{8vC6AsKvMNGSzeh2X@u{26w1{$WaoxL9l43?Q5|8&Mg<;Yf6MKN1 z03pIxZug!9<3qv$us~H;S^SYlF`)$kNXqx@;A+uxmexl# zbU|13>TUgjh#}Ah%zSRVxer7o+Ib0{MPkpO~n-`Pi2mhrKU{ zmzWS^)mK`kbnnp*W&e2agn|?BL7I${FC(?}p6|`L8yYt1OxZt{ibZz|7(3FUrRD!j zYGHFbiI!xdh`RO2&ae9x!#nCz``aI#lDs;0L6aehV@Z|5ZBnJZK3XZ|?59Bv z<+!@A7|{BuF_tx^L{pDbmI)5ef_m3${IPFY(0=i9gmbYdg?rgzDe!#-wq#A?R$TX> zBbdOZ_;g}iD0z33ME{O3F)_OaTnj%mAfUfBE8tcXl|Y_@(hQFSwZzSm*rzp)L(?(vQ~s`<7H4d_62T zL`&pU6Pmp4_Z$ZtkhTcnxa#bF(dI@a+MTYI?%57k7`nPN#CcMtG~?DbDbx_qa7?nb zUyQebC`oZ!ToIIzn>tSbZjX^Cs?j@FF_8jCszZ6Q^D;7qhx~gEB!rtotkq;?pQNK0 z`aC?ry`3Ry`G)YK*W2{o_blqU-cKsyx~z*PMe&X#)1Z7PSQG9uy5dGinVx;pAMWm} ze4wI;wcjZE)XI;e`~TY}EQIi9Bw<^~zJOtw_7nFWHq{$nFL+DZenD4lSRJ}e%5q&5 z53~D~UP}+?*i5}*t7^d3nth}I_rZ6xVImwaB15X?u?pHCx;GA8W(j-TnZc2yi}~Juy~#)oY}LOaQi2;njSziVFWasak$v7K=FvQqdW?S6G7x;{;)3 zh$(5E!AFqHR(XpHndau2@dp=jQBsimw?PFEAb4)rzV_I^NA0dGbC^4#tn79`GxxmB z#6iIKEIaX=%wZ3q9Y5V2&TjR@uHd$KnfHhRH~lYPAW)Q(zSnv2FdIaQL6*^HAU0F8K(D%4mWLTcmv z>3(9D$oU<@C!k(CRye)5_TNrszQChWLqZB)=8Von$ucv=@Hu>LWg@@+_d>RXez$uC zzp9~XaV=X{e?L&?t&>qfHVit+c%fd@rq65FpBbT1#J_pR-VyxYDz^XdWAYIE33NX@ zwco6??7=%c7bW3HZ42qtB<_})>GGUc zRcR^96+@NqTF!4?BRIc1`YHcM4gT)}cXYs^jw?9OV>S?GfuOxBH)JqiArhpiVU($Y1<_0B zq5UHo_{YiB!TN$DmsSFwlPVA zc1Ww82*Tz{UdR;I3=NQZvyv*l=EHk$EQT^y{2N~d^@{*noD|&L)O%;At@;@Nn57sC z;$qp3I3sYN;UgO)n4OqL!2DkY71`u8WG00Wr#q?zxSY}WT-dJob_gV_TQW#m)7J2) z?w>|v_LeA*C(rEj-FhzL7BNk#oRz<1A8Outp!jo#6rG&@Tk)hbaB;Vr*g8v3*5%?D z#81KZ+_A!9wvn9RK>6~=L12JTJR135(;fTId&X?OOMJUq@z9y@Iv9++Y(K#jOw@>< zd;dT45M(U4F0=7WR2*BbX;>#ojDq=Y#ZkNi*n&~A{*dCc3XS*`W;m>acyPGm@Lo4^ zl-$1T%)t@jHa4eI(0vUz1l+Fo;%+}o{NumZiu2C{)^p|^q!dORcr+Aamq|*T*&IQM z-mNWW^$)m^zeN)5TQw|6GPF{B3pbRRWs%}IBl>eJF?>?Ln+tqLe)X_0W2^xFo(3VV z$_``bc{!%JmE>HBP`^Q;q5K$+5Yqg91BCcz)}*T<8*IDyg>eSRc_*qdw!*buwKxRa zA1`jxCtjX4xFgAVT#CXw(I>?}hVTZ)%q?6vYu+>3u04AHeQ~1%{^@?tv>l!CG68dT*mAG#;6P(J(Z{6Zp30C4(hIF z?2riXu*0`Mg5271TOk>MB$bbZ@zDslzq805ek4-KGPz>#)o&9ux~OLG21$r}nSP;n zb#+V*rRXX-xqr}bPfYO-ZW&sI_iw1qjLT)CEBrcHo>%;Nhe;eq(k@ zW}t$k0VN7|J>7nohra49NTIW3apxx4Xmfe4_Gi&N0?OHG~Ut690x5b1VR+ zx3%SGek*|UuF3FO9*jl8qpfjPQ2%J1GxA9B;6v1)b!gl1i}jN z;&4rdiY$BzIy?IV6mr~jQ*X!Q9c58tPbJ9?WVW4OfyG#Ol1q?j{>Of#EJy`HaPh*F zSr{`{!4-59H%=I2mF@H?@_wyYOfhhqq`{%GH#`uM1%mr9#>Y^Do$;}}MNSEeSG`X}W16St4M%HyzFPjgL>zh5qC3Ssh8mm-ekv)WB-oodCa{ECIqH`-o+W`z>S zM0$a?Y#QI7=*@$)CiI(73eznH^S}Bkx(GnY)nNT*ry5&Q_N5jNu2EMp!7vz>%%+L0 z3UJs(bOD9j)y8`G1yCDl;8P&Md@y!-lOccT9 z&;)snh#)p0oRW4m`Pe!&_5I~>Q}9N$73A*qUAw{ZooVA842XN*{)1!b94|!w2T0Ib zZsM>z=%8;%{C+;V@JwXHvy|FTaZgnG6U6kDDj6NdVjDitrV078dbPvzr*e?baV+1y zxkHrV@qUuD#REqO$8=@zVt~w#*LFDYL+I{<>{omXLQ-nXKt${fI1`@Odn=0rr7<<~ zFH8)}`zYGY<9o65GjtCQ#G`Y~eVCo0B~qpbsP(I!01C<>zzyI zW3#_G$L&E>eg|Wm zjCPp5?wE3?gxL~LE+lv0W*Qk24x?rD=XbM}@Uqfe!)ndT^a37ukTlN#I8kowH^-ZR zc|QA+hH2O)d4R=h`b=cb-z@pNay|%7qH60*Yw*Ik#6Y@>DoK1FYEW--}OJ&k2^avC!h12Gw-IVCR-ZaysY12YLF15 zI@(&vDYju4tlLiz?4`e}jxB|uw?Sy6uKaf7!*YPS=bdL?JNSTFv-O#WM^B;5H$;cRU8zZPGMxot`|9%T{6rqpIm-?-)+$f(>^{yRZMNg>mAmKsMjw7-9@1 zE*q@DRew6_3l78yKq#bA4Th?|tv}={H^pPInDP0OJ9MT(c{D2rYkv7`ndcb+K+*_5 zLrrICNiYK?=A;!i8~uQygN=*j+{)8bKuICkeC46%ND`DG?Q^PIUp1;5&F{HEOB6KZ zv|GC1*w0O;J4Zh2NuD1^#!4O{ri%lzD{SQkRPy0sz39z2;cnYCR83m>)#}&5iqQ(5Vd!9&DNSbfiKi7F+i-iyI8-1~X32oSM zqD@^rl&39f&&+sNCeQZIn*Rt4%@pSahsH4SHh*&4sVY-gT^p@r{f#+S`--;2vq_GC zX>MukHccaYiSp4&v5eD$+Iq2ztR{0$*Dm}kw*&MUn;F6%^pYI2+$r{$N=GpT9&*{zSr6mW|8V+wYVOU|??EtH z>=UQqk++0F%~AdqqD8hWrtbN|HT*Gy(w66P51OW!fhv&tCn%jSiuA_|4HxwpQ{8L& z`sD8FaI3oXTrnXZ2Y$Q43h>}ENR^g1gSBUJI>jcBZ|i2>#hz!{92wMSAd87S1d0g2 zftN7G8ChTbIO0#is>fxru3e!}YfRq11c7r-X{x{NK z?b0HzXu;K$-9?!x>kP!FRX$$)Zb1Z_Do1OgdHHPzwVWOM+QJ#W*y1Yh zUn{R%L&M_FZww3D3~bTJj6VGQM6o{;Iq1u*Kq08cj;`<*DP&}jCpAxTfgYK$JFMem zw_6*!Um-8j32`(M#o?%3rSu$MDcaV`KwC}-L58Z%@YX7pg!CeBu=>JfyjU*GRbd-2 z!mt|JVF#Et(jJWlR}H z#izH%@r3e9Pv8vz#?|OGq|)WRE9?{L`DrYf6Oo>D)BZB)_gdjd9}MT|1|19wK^sJ; zaIWtS$CvHY-TmJ+Hj`OH7E>60fgh}f2PhebPRCRoPzRP<2CPX9N4wUuo$ix&$~v2Q z{ME8dvE?|Y$Xo0@pQS1&SQvJ*#+pV*>RHPy_5Tk}WmE?}@fR=@=)z<+!E93^94;SP z^t&pnBWI!tXEs0fBu(>UVPVU05QPtIce&TfX%^~fZfoPF`CzYC{C={3LeRzaD`;xF z6`x*;1_d2fP)eC77DHVjPm>xg-lu+B(Gp#Xk52=OIu{lY!;wPbQzgKI8-D{5Q@Sa3 z!m)y5mFDlie({H|KfOi`{=wl5q8@U51t_;&?HWsNywZl?i9hnh?Cv!!wm{SC7Dh(2Lr8)wp~q7H%Qj{N8Gj|vNxX`W_g zzDv$gs$zY5x?`)^VT}W?CMA&GBM_cTgV__FVSEG)s;AHC-#6fm?FtQ|9jzX{9qvWK zR4iH*Ni4W$J`=UQLvu4z$k573mEcynv{K63$>F4bp=VkMu-sK9|3iGBzWGT-EWxCr8(vmK)05vG)mFK%3@ovX5*Ge6>zdRl9q6mEoP_k-yCtKH802c}^a0 zY^I!*o4X2M0+o$Q=#q<4%5d>y;4|t`!d;!HcDIB)#o6-%hCu7U!ZlYhx*~!7-pysG zIR9~SqllZ0g5c=Yp#3zGKMI)vGd0ydJ2)+h(a4LXpb&eQNb9gKQsh=txe)HU3p!RxE zY%BUk2ST4sXY>*gG=e@o-3 zYe+fM$pLFXonN~~!vnF{?Lv=DiO)lbu^*@UZtk|FW+h)i`ru2Z6Cd_notR7cWalZG zm`w1J;b$QD z6~?cac&n`}S~h5FwcKi)=WpGnIXypT&OV`4aoYlehQrddp(o#T*es7QcKtdtQPj+Y zzN@PPvXk^==f$OnM;r^jzgqt;J;jN$iLCc{;q}dx+);#wKSI#I&a6}Ju;J3=l&1Pi zSNsrd;0a>F0G@H??$w2sKY%vo9sUHjDN)1CZ03^@DD+Tg2NW;$MYhwQ$esp9* zt(~@%ZglZyztF|S-p7`f6m01=T;>Yidfyw+<)r0D5&L>gnI>`c}2GQsQ% zxMLi?jJVWtq#f99G&Fn$Q1Y9{z96SnU)@`&lW?mz{oFz!1T2RqpY;Pm%(i#P(jc(O zF(QidtKa0tVxVoeDq%l9Xm_*NEfDLpoblrs5bVbfHzI<;kLgM996_u0vn^`k3!F9T4!-Q>h{udgB%1X&|aa|Z&mQKwr^%4$bdm+&^^@gdt= z7t^ks8~(H=U?`*cv0N~|q2pmgm?X<9NgbI52c<`ZB0WQ#;WN=0_JZgl!#2Ca-uHgA z`lKK5ISm6@Zy2}tE7 zCz$QMj|+q;EcN!}Zf#!S)1!l*ZdGR%)2WWY76DWm%=o%pV0$VeRiiayAkVFK>Z$+N zWLB2El=0#@13yprL;rtZS_z2lxrE@7=leEge4USP%GSO<=sR?JDl@wn>1Y?dl){Ym zggOM0tY5e5MUTu}e|N@p9#Imq*&}(n_2{V&560J*R${$Nz2|JdED|#_A*zC#G#Z@W0gM${YRyy%Qoy-av$H2<4n*9~P9HC{lfw$GldlbgB2znU$mUIHKan&F=c`q2}G zP`TT%j%7q=?%qt!QGc>*E%eRN<8>e(CrHm^8n$Dh9=o=2AFlcy?2omzSvXw$F1yX) z&@E)|I*BqbQkxD;-Y>HR5ZMlyg|!HC#F?O(LVpC`DSYrvW_#K9XZz;68Vs1}G7w}X z$Vj=g?uBD8K{*zO9BY5pL>pF@{EVj^?|;``(Pvo^!TE-^HQ0}6D9h$*H|q6kS0dKa zzTTA$>YULwIDN}HXD@n8sG&mv%-Vh68>)on-YXe-b?)o2yYg)uT_%!=r zA1c;opfXKxe)J7KAQS26rltSS8X$|WeQ=`>p_hm)zPcp3IuPrZkR-eH^!<7esGGKJOtHksvB>W(i)NjjJ+=I>@UBlR+zxL& z^PN9gw;qiQkD1QR=4}^I7=B>uHjL4}cqS14c?!@!`|li>osl+f8Y8Oju8&jv+RFI( zU9ib99vil=M+~B*4&|v|A$%>qaFoHY%hs^o;=Ig__!3?le*N5yWBUD=a)V#vCkwr( zhC8uH8ZH8?!DBowfk-#h@t5Q`a+&6iuWko0w@=Kcl>Mr>-HYbQ81c&~LLe~6Bgu#A z|G86`C{V|iY(`s5sx3t{G{ml>t8*Mv{2BG~6UV^aGm^(>$|Xz%$F63H?r?0fUO5?l zc9cdK>DWo*FrQ#O+t&|gw)dFnZ!0^DH@(Q=Mo+|#)$C|8%A;89ER%k(Uu?qZnPWTt z>HANg1W77ha{WW6v8FlICa}*n6clN7B`NV__B~hJZug1oTu>C@7QH=qejV&nVr#xD zYjJJ9s0ESr%7qkx4LAN?1@w!OilTe1<<<53u`72d%Q`8sAJZcmPH>cjPgCDepG{GK zKdEpbDbYSc|F@d{@0GpBxnC$ot}S7TB+RcsRP{|I>*~3H(iB1al}xs_Ura;^1#FMl zVBK6z%;^4QGT z7ZJW(3#p1U-(C=%F5aE$cG>NSW!z6-zw%x9bVJ??E^|`s=y64(%B!vbG;030wDw2v zQwSI{&i@WeJAg)R*^KEz(@G9Rx(j6BR6h$QqCcFCeE4%MuW`g_M-!oEH+K_`C)i1` zum$?M!`7OjP^o^^$7Svl`MJ68e<@<4vrAKEqKND{?@2%LgqM*Thzr>>k{hiBacFq?bj@cEaiA;%f;EryG~ttCU4_#7>cK z*Gk#ESEgr*_GNBRTH`EKE6c_J%W~NDaq2`7z@_m@8qW ze5U56E*fF`*xm2mT;h>{%*;e>AEbNhTr|4Kejy4^1$~eVPA3mzaC#7m4}Lf?l@XDx&vS=W{@T*n{p2?U3~`J1P!RZjF!!Y4;tRxKW#jo4QA~o z=xJ$lW?o40&QhP;=kRRTwT}*Nll7$I0`xDBhiRFWhIRXEO#K9$H@5v%_vp2#z56q0 zr>|kgwjmmXfq95$qRhsahs^8RH6C{?@8-Sx>DZBlIz6tsQSz11yx13xSW zy>p%=0xuiOwq~9}aA`g|AdzS3+aakN-0Ms5_OeuMzxnTs$_T?2@-yBv3<(BijdkYL zFDQbIDUmC1etg#3nO>>4e7m`mJ@u^R$A+t3=7d)_`xxx5FAF*=4`xe?ev>Oj<}_+u z1iJnUT@r5|{~TiG;UX8f;=J6&`O~BOc-^J`pd0?aO9bWei7h2Ho`mKSJ&_99wNRfL zB_8)Em$3{!SP-qsT-^$!sw~e#$roTLUTMTYSicFj#lkhH{h-Tq`@-QI5f>qPs?j`*Q=_MR)Z2HGb5)z$29FZ}6pgR%EFxKr?-JJP~JnQgNd)o9oKZZK@6u19gWKh`j< zRJ9OTPqeF3KifUK+IlSJun_e83j2#Y%-~iNVE3=RF>TM28$kI8x#^dd0GA>%`CH&0 zFQS1BD;C1V`adO#8U>?}>d)IOd~xlyon(C5#mOVSDXnae zCdK}1(F4lYDz@8x&w+_}ji;Naea1Pl;r58^s6Y<@>iE%5q0YQUMohO`x{aMyhvM(m zcf1mhY$VUNJ6U=dbdQXD1B{6Ht5Ru~LDtLs;ttO_%?7uu;ozX4@>@*0)|^v<)}rVS zbr$+Ot)kaj<6b%V{@P)3`#$Ixh18${{==t#nPIuqUGJTem~o6y4_xoc6)H}j<{cXA zf&6Iq+J(|}^11_2*Wc`k>dYN7cWT&)U`A%h++6(rNq2R(H5=Y6NQ0_dlTO`w0DY7$ zllg608BDeh`s5o7%d^a1A7Es9_!ozvi>(G@qGw59-sy(>utJyaMKHNPKXfyiVFMlA zH;`BQ!1 zS1vZO-38Gl(nK|!l2Vwl)#ORQCY1Pv*f`4Yba#CFlkx;RxxP=d9bP3a2{dsJ|gBqbWpRK#fQ0O8Yt_4O`BPi zlWte5f%a>{?I8=^#3v6=2dh5 zmoN0cxIKU8_m#V?$$2(YPt5!6Id7=i`!=&%9R^Evi1JvA03ZOlggub2&r!f0Fy`wm z6!wA9NzXho(04H`C!~z`5sBENEP0M&3|!HO&Rd0%FVFK&~7s5%h@08U8?q#$Ba7VcBMl1B4ekgAAbvl zsAZcq>R8XElus_7bxzi))gITD=eU{|&MtKR)LR9uNS?R{gA3n6SbwJ1=f+6VJ&3p- z3=dXy^KjVxK^sm6p8>jAc?S4X$) z84-0pe1`FRdghgDBi#yjR;mg5unI7s8W4XN7J^WR=HmH}rMU_%@|#IeviClCo)lHf zaJ7@HCdgQ(xwf=`uZrC6$;Ra1vp=F8?~f?{8T2(rkvuhLV&{0Um9?;1g;FM?$X;7D zr-SVY?gT9v8FA%Im-SqFsznB0KaO8K2eN6(ix=jaIeW4FCW+N3oGapaMc`uzrl?5pnh}e%qH#Mod;U9{SvO58YebKk#S#@9dLsI{KlD)#+qnrQ z(gVKsd7`c~8oWT?q3K38 zmSN2ce6-) z9y3Y=0(HKg1~KX~Njeu)+(mYxsAHaYDzgtW^Ft>h>u!u2*N5j&b(eW4JJucC{L4Y; z0A3rvE+@y3kXn@YI11`uGE;Xurgav|b?p`SCPo77*f)dYo-ukptLSi_EhNDZ0L8&ZJ#A19M1F={MHnqEB`ANW7%omp`O<)o8AbP5csR zvT9n$%D#}DuZ)JJTxECX;mhviUHohE}uSgoPJqv zAb~1xoPhg%$62xzonf+wm~CJ2zpr-8P9Ro=vtq$>lpDAxPI z7RxG>eC188S%#h~1^s(JWj&CeHPaW}iWjVLjbRpakC9M0VuwH4Zle{_#pOq6l* z=*XBQMK%!>KmN!RN&F4vHstq-;@V>ofdt`u7ohtn`Mv8I#vsWKLIdb;M>+U@y-jML z8(>h~T9M4X3-NeFczB)&5OL`P+tJ4(dx8<}`%v97b@RsQ;7e?*E;er)KacMIjM^G0xt3YsbZR%6tkti)jwhMr*r80e5 z=R1D5Kz$|7GWQ1Wx#|+hf@_5)XkNrrG;5eYHa)52v5`sj+af!ym&^RI9ftByzp_V7 zlI1cWW{4)QWs(h@?O<&cCC=4Q@%Jn!DcxyLKzst7i_%anecwVow?pYLy0?O)MZfm& z1sHpCB8;w{FNi=`qEYYId%rM7bDr7Zdt|O8Gv#5V?dXiNaA`)s#`q{LYOmk0Qpeu* zPf!7>;RLfzg~G?HNVN^NbS-ah!kntALhhUQB*6D1$Wxtcqk=l~} zMC^t@Q+3xncR(XQZUyW&QdFSlr`jH$?VHxm2V$Ji6uVa-?|+4hHj!gq32gdRvd4kR zdUpDBB2J~UuEQv{UQr$N)Um%Sb*O@5SV!FPzqeUHP30p(_mkI_Y)kl=`dwDzAN;@u zGosG=Wz>ZYCe(Bjqj{bI%I`1y)uD;i@Ngy4ay3P7Z?{`Kv=(n~eict+!zrxV)2p=T z(-|RW6ev_%$|%t?^j=HTj}3a(b1pzI2nbejjZ`VFogcxb6Y~4_Wd*7J_b9^Q>4CV7 zzSCnFxITR%ykflb6DeXn2aU5c7b9jWihmEs((UKkyC3hl<(9?z`ChmKDhJH0NQ?V- z1`Xkn#Kv7g-dkT@tbF}{yCNQRO@W^H62>+mi5!w!f@y_F{W?DP9`p&qPbcA-RaF5m zV;~Ccx3_?GqQ$uu6ummyUbWwSi&}^mOs6XqL9wHGWY}^nMx(J~C%KB(!ldPHHroig zkB?Qd=Jy5$ZTd8CeQ{tfitDgic%=awU;RfUKMYfdvCmv6{z){*4WP879Ry5E^$wVplC zJ)dW2aAcch%8bB!Y2aR+A}d zc8;!}6k_qe%%A^5i-FSjOq_8peIz@2Wg8Hl$onBEsKRHiy67E&5GdT)_IO5(<^ zVVmaV+qWW(y#20e=FxCTwPJ)(AfW8D88jGPoEp(e;_S7M^bSelC*Mtl{~Qoif&Pz= zeGJrwB8VRoVByBX*xcaX%YF{l=s=_uD2K1s?PnYTJQ-geD?VNX95B)cuW9ddI}Amf zWhIKUxSni#63XvS0BU(KOKgsMtMq&kUsFrLREeUAje!M887=<>2mF6!eq0L{7#1Qc zh?ebqn`y71iG_mp)usW|946HMR-=aaQ}U>N^B?06R>!CAs&jruBejdHp!TU+Qmub2 zD5LISELZV&UwszQ1eT}RF6iL}z^ppWJ#*a~wk|~#^t(E(%p}xla7uTfDR2MTh%BHu zMppBfc^*XCh=y49{^3At-_Bx*=IcEQtxC2Q7IE-{6A3%+gu6PIUC@udM$6G8x5-IJ zFe#&yBM}o5v^im}N}uB5Kokzl$50sqphOl{BzL8kCq?NdyCf<8=8sYPFEa$kdY>c> z0xNk*M0jo@RM?QZ-${hTV^2e#?Z$2R-5xs$J(?e+jDm;(5`DcKGi)(BT)LR+lvV>UFlQ&#Xr)WYejbtL>`D&(6e0*%|6-- z7o-iULKts`l(OPC1%FqR0aVNv4P;uj(I7`Q=g-}#rkXQYl=^a+CsP@R7<0k|fWT(- z(C6O+)$!~f?P{#D3%-gya3!s+4VVit^pGW_zDX8$6Qb59I|jb?5*l}{8Xoao3^M)I9Hsc|rf#+u2S{hqA!Er&bBZ&oOAM3s@AEZ9|0V zoL4bH#*d|zu5H4HG%Y^1=r0shuZ`}tius&9~g zKiKk6wc2y>kZ;;_erK`h0uV1XeCCZ_FE|BcoNv%|urMaI=!b~XuYXw6{~?iJ8_-;@ z7OUTu*40|z5NpEmcKya4rX+#82&4*eCO{{C zegtVf(DmZSOJOhH8)~)5kyn+7mrjoRs)(Y>#UiKQIkG_T{S~SK;H!!R+1~CaCB8`6 z*!zTPg7&s+TE^*)YJWxp;eJH8qYODJERvs;S|tpm@5Dj^E1v1+yT1Mh{G-_vzzbY+ z{7;oZ3B>2mC6gB&*bRjXn{Hc_+mGg*6&}gFQ7}`ueGvpppzW7bHoLgk-mu*LR*)?( z^ulSQs@CY;j>|l^*uw$lBTkT1W|okzU;Py!t`SE8!9O)i^Tlkf0fbScH{$0p$+iUc z*xA`xuS3PJyfP|5Gue*p%fAD}JmgNB>rY2I&2;t;qhV<7jx_#3USen%Lq@G_L(73Y zv5RoZ4gq9LFFf^9=4Q4snxKkwXnE5&Sa7mN{@|qR*wZ=o)l*_j2=V_zjrwwZC`rh> z_eb-Z$_{N*bAnR#TsvwXNeJ6!`1MWEr zg63zi8(4sv&S^9pYcurm$+4qHUq?P!&ODFt8jlp>+&ls**$Fpa=@svDBZ4d@8R|tv zw0@hGGQ1q{o}KZkpT|Lk&z`+s+HK#A30IHpzFBqj0R9u{26%97S(e1LpgWAtL>AUm zuRrxRQFcwKfU`{Fg38?$*m%x^-{)~#cel-4%aHYj+wH^*0Dt}k&mc%T5L>92I8S?PVREM9uN)L>zCZZ=CHN*$-<27Um>YRv(M z1gkVlam09HHC&rv)npOh!(deC%XDRB$H04><)wSA*`j;4rM}iA`+lLVH<5IRh8%2Z znO}wb_l4X)Df{zuS_6GvenwR&_5z9~2CB#*Nq8Vh@K^cTpE9DKb_}_9wX$~)5C1k7 ze*Gtv`g;bS(G024pG26@RYeeav_5A{%eqZAN_eY&Xa|{f`*79}uG_zAx$s?QX+m`e zI3@z3O;BrHwTuHWYzKtvYIE&G2i~xP-EDIxbjvybay0VdKFqORw>}lhSrH`G{V8=w zB~b8Bok`Vz?|)|1hndx96bdV)*Dx1ZXUEx0yGN@`vN%zj>_?3FeE+I~Gif#Y!bEVA zl30bx`Q%wlciPw(8f~p90DY5$VI?&j?GG1lzCP8BnG zw@%J*-`fSv_UuX|l0LVvOn!yQuAS*tC@FIL`bS&&ShgJQDX$DA&JBfoUgx6KU<2}z zjxOq6%*FbXIvfWKx=4S02mchE%w{6<&FVPPa6PuZdOyHUFos<-ZU;@iX46h{gcsch zK^3ZL@%g1EX%|7z@zYD5`9S{ee^>$_naam$EW<^#ioZJl5bIK9jH<(!iZGBC^zi@B z%-3jxw2@Eb1xHHEl&6+U#;wZOlZOMw%Xx-pnTdhfwTTZ8Eu%ES`69*f_`_MN-O8%c z=}G*T-?NPr6s@Q)-T!828fkMe2=N`QO>3X$j!+kupTy7|1>`v9;$h%P<{V%o8RoK` z&kq0wN1mO*<<$MtQ}F`mkn!*lLy2RsXoA<&vF^C!b2`ZBBvLXE=1IUWAYUp&efy*rD7}AbM7(zZy=l72o_SJHw+edZ!*wuV=amM7hD%@Cpk*pLV zRG4F)$K9dSpL{kNiMkb?2??j9h~zv=P5ltSyWyhN`dJ`|MinGFLZCH}A?(<@!m+lY zp8OBklcwd0(-g~r3A=`-=4YMxdZV8IqjBYszI<$vbK^w{@+ zs`2bjJ03ActZ(A03*`-_{w`4A-!{JTB2i2B#f8T0%5Kp#znvGhcCReoEts}E0?O%u ze05}3UT!XXoGnGb`RU{BlVL+Q8~fO#8Mb`dE_5Psof(h;9~8SRy~in29qNnuu(`Ns z>SL#;ZT19%q2Mz%a5~|nXFfeYa~f@ESXjSh=4v-60-ipk7@nH?=(9IL{Q-WwOmD{+ zMbP%~1{e^BE!nVpTXR1P6(>nY@tQcs?S{8od9FH(?g$N<>DOjp)SsJKZ1N~(pfAz` z2lCG2Bwl~76$*aUU%Sbrj(|cWNMwf2)eCkP`;~P4xT!x&-6A^T0o& z7ToL?ZgKKn;KFbS0m4rT>6i$n$0!-LFj8hjEQ!!xbDSJs#{J@zS*?iG$gA*8>tb*7 zTgrhK*(*aYVO;>-$%5lZIS3i``_R0?YEf->#Sc6r3T{7Y@{p4CchD3 zqW^drywH9Taji~y5%Wfzb|7M+-j>6}Bnh)NjS3f%y_n&aPTAHc2j(M<%>0J&|rtNBB6Y9OBSfs0Al8qp!&V(^WMU7}LL>~{|6GKi+Gy)*>8#m7n?YJ+>MZ}UZ;)s!0?WqqpwZw$$H)6y8M2dq_sdrN`a%=BFlTIG zvl<)WJ9}%p$=F+;soABMbAQ?!Xmx(WVoSzn-hE5o7au-C{Vhe-MNSQM`@V2<`cG$S z0GQt&Vfytlq);tVk=jrsWZD5UjS8K8fIK{&R2&o9D-c`Q7u_yWZxTr2msGKi!5kic>jvZ7ETz;>JsGZ!NC6 zmF1h!5q`5`{imoSYrdGai^eLUAkF@K-GNdjWqg7SP?_#PP{s#aB##lFDm zXHQR$R)#@!!ut_pl0zwkikrP}$OF9RgPx}>a~>)lV49CmpHL$E<*8t3{) zf-%ufjKjkv1$8L|^ve%SZA>Kv+D0YlHpo!~nIfST8oOokqA?(%ja+nJVz>Tmfp08j z{i$P3w%ah;>-*y?d{_JNbEp}|^xbQoq{&IKd=N&`$#&CxvjaM1jFnZzGBe9_-oDGF z3v7SMZ<(F*`vjV^KRb|0?wdiU=UQYN5Mg!0XhIwfEzeMkJaI9o{~cx8DT7cx8> zGid>GjqWJi*`ox82f82@DJ$2R;#TAlVhX`mQ2Y(B(+>z$7CVc@e-r+qYk^TPMO}wr z98gO=`ufZc6UMAynFJ#X)BhT%o&bxP98)sjVTD`X*o!OkZK;+LphzV zNpQTi^`*eQTa=c*ws9uKq>vj);^Hz5Dp-SobLlmc(-9Q-3jaLXFgh{Vv&Vv*OA+!b z?tNa(Y*sCslV;#)#=q{QY2{tGAfbA?w2|vAc8CzVm$D-|WNKhp%Pn~ybDlVs_EFR838GJDcI0{xq21`z|{Kk?r5zs5U`gVpJDz|kra+a`F zb3O}K7Yqk7IcDFw1V|Ntq*cG%;<%G?x2;SfDrQ=xUZ?nfddfFzz_oVEZ-U=HXzfm$x5K{p20-WvD5~lp)97s!f!Ku+IFo zZ&YU~`kgFson+-|UZ4h4e4XnZq#+TD#xfv|ihV`$p2ztD4Mrd)zpQlo9Y%NNan*$q z3x)ST$$tJdF!GBhK=Q^-C8z)3m=QalrC)ss#OICO%c76xT zeq$1M`^?96A@LcFF+EA!(~F3^E*_v!$bf_EUW!X%qSxJ9UIGfpdTI)axbf-{2hNW? zK;;2X_G|}LnKThcHK>uGF!T;G_3iT(+4&Mi(cnm>Gee9pKcfWa*{7=}UHsSmm~RI8 zu~7zJju&~ml%5*ObV^~cd* zUvDvUW=U*c@~zdffbEP4XXGHg(Qp7o_os4c#cy<;vIeTqXgR9-%+$f$~Ak-!LkJu(W%X<`Sp};%$+x)wV8&ROv9YVyT*56lDWQhn{SQ)rxa;V;x>zxx z?2fZy`^^HB;~T1p@9dUR>2b4jrb-#;jMUZ-K1|DRH6MME#WG55X5o~p%m4W+F2bnWVz zIB>omfSUaER4O-s%;L|;<(=DG2(*MK@SEssoyzr9>Hu-FRNN=TFwmSA9xhR$GDQTG z-5d*5=xn20eVLHZ+LwoUQ6M+RQcWq`TmNA<&x{1@5)znyid%_4X`}BNZ~EOg9Vjx4 zN!*6G{ap}^C|a-sLo~2N%YUvpGzZW#1xSb%=h;(c^*J&u$qNriU_kLVNm_7$COm`+ zY+$vIh)}&Tx^jdgz_BxXLD6@;$>fay+p=Xjl4>oaE9 za6B8>W9u+Icy98q`JsUU78e$q7tOVt?O+JVScTv|Y+o*AV|hhzlY-`~DKR`jaFwIF zm$t|6uXR4ALA$O(H%Cg2QRj>qhd(S5_&D|Lo4xgm?PT_0(9_1G3nKrD52g$N>e0ze z{DKJ+ya*1YAd#6X)PXORNU?5+k$}C-N2%3LI!Ok=9^vS1m^tTX=@Z@-R{g=hcp`v2 zs#0pra8`$aaV-$!bG!p7X}@W$FM=&vjcruBZvhbC6Bg%&F{TKBco2Pj$xV5_!3Gz! zH!(3ed_^rOK}LObIMOewIZDY~kuY@#4Df4!CfFz~TM05m%92$uy-f{+S<9z}hJQDA zW^P7{#_ww_UW2DwjwFRVZ3p6Go(zFe|JDM^Nc38g8#8K^Mi%Nv+_25ly%&4o!%4gr zc8~G$(2txXu|8IG(Ci?GG~uTA-gmvH)^gW181<{6ftW0BiHKwDTY0t&cAFGUqT|@s zy;A~6^om=oywVLo;rT0`L};$U^LUN#0I&Z05jHFh@PlhD`roHY(rZwcND$MDy;R8L zo(Q|c1Q|BM1#px-7K-urqO6|a$fe)tyHi8oT|xOB3Ep;B@06EG0I}o2y?iySt)=DV zfWM)fj^*5wPM*vDg0MJ9bigWU{D17e)x08?0 z9#hPe>}YXB2$?PC!$FsSY}40FV9VRsk1%r%Ay9wt7ATaTpZkml&tJ@Bbh_4mDU+)} zDU|6>+{~jNUl)I{K+OmaloJNO398dYa(mNYh1As+7>0%4sTtOV@^ZZbVF&~HCIRHh zlZ$s^x}t?+Eib4nFJ?yFics*rEQE0%Ai)4$Y-NWCGw=t|;0#T4mXWDHm6T%MX`WV@ zwNz7=mSHmS@c0?+5JZCZC9mboOi*>}bbGQ|CB!#w@Y9u+Qn5{P-(o`}-vW3CJoTS> zuXZdYsZ!=kQVrAX&&&1l`C_yJcUA@%f)oB9=gBaLvA^I%3-KS-R>>CrilBQJoJv|# zE$lK?v^CQ2$9$E&7u0959|5}4&cW6rOZ!`we|&`Ai8loQA zhE%fLyx$+CiIW9MwZ>?PzX>yE&rgHI@UH;?&#&M^LS;!F{`)BaU#3#WdS6G4we{e*L}G-vERGXCOH!qdv3y^fK4T_k~NCIRr2oW#Ct4@!pu7YZ5p<#wo(^NqCd@^F2e*o|S4?Um}5G zstt}65Co0JB+$xydVtXd8{TQkN=1nAG!9vO)xC(gWVG8(NK9)~2(xZSP>Q-Jps=)a zHBdA`n4&q%NDyogWF`=w=N}Fe+w5 zd-V6@wqYms#Y+)jI7YyV)7k(V&&wB}f!$B!@o%IbD5_YB;1*TzCb#on`b_v{>fb)h z&>S0SIzmiLN!0T=EtlnOiA}Xy^N_*KzAfV@FjIpRJ(3az0E$Pt^7VUtusG{nG~U_o zA~&F0l!(?g02zp-w;;35eC})X@Y=MCUdQt<<^0Ib3=PA?aad^XCghO`Q1-tSF_-{8 zo3*k)?9f_Ogs%-7MPVyzp^E% z4VqNmC|Ody@A7E^)0l9q_ACsmNoDsdFXz^}!T@CNEZ~o3Q6lf+)T{)Jj{17EomQ=G z`W4+KI=t7Hy7-3Z7v{+3K|;_VJk5_WI-ya@0%rWY5~!AgjAFX zXEb|s2-q-g#v9Aw`l3iFTHHB|i!GJL zJ8)NIJfNcby{EWZ&gWI1GAT+;hhAZ|mjMV0=<&XrJYD1uQSDJz-CCL)pC6)X|41_m z=rZw+=qiRPMAV}R3vx=%a3@z>p@5tu$`-Jn8el9~Md*<3BVU(EK3)nK29 zzb_lWTDxSc^KM#B$Om=|!}}j4lLiuEcIOx5+^9gX^l@Ud)9=db1h|H699CRBj`*O! zczjZR0>bV#^#;QWUWO8v`cSvtpduq30f8c{_2ZRR@~3oZc?}@U0T{9Nv30#^4zjJM z%D77K8m3@^b{?Q_tCmdWpSiMN)S!}H3>X79kN-R||q`E6T|n|Rd7H~2rl37S~QqK=nii-pwM!_DM^r54VG93YCs zK)*Oc?*nl0zYkULL5b(0GcB2&THBAK#y0xK^yR59#9L-4G!Kva`p~D^%upHo`JP+L z)nk%$wq~1>AoOA&cc9ct86RLX>%b-x?3t+J)N;BH#mGC+|LKc_AXV{_ZV9cwTyw}X z9eyIF3N{e``Tnja4n!Riy<96^j~o4@p+0C#W%BVd*CIR|I<6m}uAlGxpF(dY!32|C zt@l1#bx*VB#Nhf%cuU#2e!d#}KkpR%|5z#wqmq-MPpr8YZQ5`5KadtHbP=QnZR3Ga zGdvo}za?#ONmT*2NX@J2s%8B}7uqWdHbMys?Ry1^>h=lo!q22(7m&VJ#(#|bC^{{j zEEW%llZx#RQFpHGoAQ;w*r*0^aDmz%XcjPL43rIFm5+59ziH4jTz;mh&&Rv_!6sHm z!`%PdLtJbXnzHQiG=BW!5ea)fde z(502bx)M+6HTw!rNz%MnV>zl$y{l(oYVaj!nmHght2S_+gsxfg{2H+z)>OOW&1QP% z{=hQ4KS@3&BCeR)am`1dWdZ1yM8;p~3b$Vs;JiS}?+}nUUTpA>; z=6ClZCUTjLSg?c^dZ7k&T!*3u`+TVzVpSxaUuMAEEcXb z3k42TirAs{%{!6mk#Ue5ju;--E}N6E#*P$Uz6cgH1ncOrUAug2$)g7woDE$3nJ*p2YcqSREHtqp|pUvM2jAl zWUCA2-v59fGRf;)Vke^_%9)S*DPBWi0m7-jdu0Cq0^@)R1&U2%R=r?|dc=H5zxe0= zUN;p}ZecwQTwO3!M+=$1Z(mnesCLW*bKUJ@C|qBcXiNO&pJ-fl2RsVVqt|fk+dW=7 zgP4CTN}f_&(DfmYv38^4J4NKZ=NNDBf4FEwJ^Dti%M!7s)IUW!>gt|Shzhp_Qycrw%80pbC_Kgf}nJ%h|~&5m!vdGiAYMCo1#9(A}Ah4gawCSR1qq-V~=rH zStUC3OU2Z*9%-?tckrg~Ur(hty$qljU4mk{3lIK_9>8~UNtCRW(VgZFnrHr+3f+MBY`&sDXOMw>X#e^j+ZOvB8Y=DPHo8 zmU{l!kKM2Xn1ql1@EuNGqfhtyAG@80EVY%wE>LI_eM+V0t*h4ohFISG8RDZz=&J%q*%R5tOEt_qIh^7CV*K6Q6-0WK|O}`v_ zGD#4mJKbFhP_^=m&m6H;7~;j>m8Hhy_CH!#PC;uBZBgO6Y)wW|>XcOPy{|UzU$NCV z`85TQD9}gJ?2rn=m~}US?|xkMVg3E3*=7P7{w$U)0Jn(ng^j~j2Dcrjd};d7qow1e z7OlP4>k^p5HY2Tz`Qp}0eNU+t!r0~BPyYJxKX09 zuwDeY`r+n>NkOsmox7?B5+zB(KJnAz;tTzTV=(IMqTi-)HM@R)r*HJ-W6%ZjEqKcd z8+6ZJz+r15?;ZJioOR=(+!Dptnm{l#AlIN~TY<2LNzD)(bi|YgyWr?1)jczn) z@2{WPs5$UOP~DW+^JLJRWopuO)T-_o2~Z|@tbD0YE?pi?ouWQooD?YiEi9yzQ932^ ztG=S_W5e@qM5LolCx}Qe04r$YR>jt2~)+1500$w*>OMJ$Z z!W`)=E2M^i)tWO+sfzV`B^iS$xpqoDF+vw=i*yWnD0uz0_)dF{p-C@*{oES;B?ths z|6QF-A3@vLAX}8Wr!uwSOtmebxE2!m;?ZX1iA& z5n+{P&(H7P5C~>+ub@Ympk#88cKm-(?{;Up=^^Bx)4XdzBMyExl)fWdBbh_Rg2R$p;U$uLi2vbH$B zTBJU0lxuzWYqbE-*l9t!mX5X?8(dbtG;aN~BZsW-c~z8)KF2E)R6Zat#KHiKhwg9x;)&9j8I&dz@6=;F|b_WBm} z8SgD~&2u~BsMszy;eR@Z=rF#$l_Koi8~jwC0unpLxpfodDhGC;TU1q|B+(peOO@gZ zGhZ_F?jO0ImF%K3a5_>v`24)Ms~1=2H6C~in;+C<6{4SL>sV$pF0o6l=;TjNP^R4Xc2gJc z&)^yWU$_Ks4M@3-MD<_4`t;VTTEHI%XyX>>F_yG+0voD_Z&oC{-vxtdHZ=$BX>Gp# zTqrqe&fkZ&-j-nos&i0`_OQy-OjcffNaA61Y>$O}X%*^jldmorp8UuSoNIAx%0)3J zqs57A$BFP@xzLLTEF7Ak1PO;n}r6u|5^+x$6Dbc6BkjoQegv&&e2kUm+F6&wjS2Sq+9f zyDGI(Wuf8s!eFxYYA-3`9uc+#LCQ_I(BR5IrEA$fP^W8qg&E+xy}Z=8?&32AuE>4X zwb@s9JQfL;FBHuvR@~C2`C_@e42x~a4`bFpT~a0qjGOOrxM_X%%OBj|VZVH>;+9{9 zKC?slf*Dopcwfj^0R8=g?+ypnKuv|>#fx82jyNQLzSgD%UFHZgxfEkSr|&2^HI8$i zc&9ZVR-y)kCV!^JN0*dHKaBoxi$G=4#>AcO)P!5E18Z`8#wQQN7XCBpDP{P<0l$1b zpRszIT=jki45q(R$EF>2;Oh2{2yRMnZ^EUUb^t~2^Le)^TLZQf8OS>y9(a6J%D625 z!H*QL8tPF-Ww#7NRC~xKO`w$dDFJ7<6ir^Z|{IZLnfjeH6d5hXvfJq{fH?`<9j!-?vb z?w?vO!!dKht$RquYPi%Q(9u>Um0_=NnWGHyXM^CgXFzu73{geI6OXl``l)lgK`THR8140>YT%G8q z8Bdp&#($Xn_3d30Dl|RearUsneY|8a?XikI)aV$|6OZGwdBvywCLGKzRdC()-Lc(| zyj#v3ssm|#&9XbW`*me>@JdD%cV8a2K(oZnuWo(>zgn)GJ{I$NSFt{QVzfNF)$#W9 zpo{7>l@olqwJ$smj_RJ%(7ijc^6mUwWnMp z3gIOs%1h;zS;M$Yw=T$h!gGVr3f*23^CUJ2ONXqxNe<*pTwnam^d00HtN1s_+1=M% z+nx3GEtA3pl`HR<4G~Ine1_tx6rA5_H$k1QR-U}~JUsJF#Ldd$pcgUY;*ae4^XJ~= zJ8rSCS;LFa#_tJRv^S2VYX>2ViY_@Y=NKa5CNKJ%Kg@MZyth>-LedLI@pD0i`5j)4 z!8a{RZlVc*dEKU>a-y=?>>fISNgD|}olQ;%`~-HC#ZtBF{9Woy|D3QK@-vbhrY4zCfx`-1DF&2)eIrWcVQs@<6#{zY7Ea%Vmp}d!j5PMGDMCcQ| zp8L(&d8h4_td4?cg4c5W5oq!hzq+s-(psA9`Eh%DdWgtUZhYLkaCMHp?g(w41vtpV z6mqDwjl*W`#l{at9k#N%&&CUp9Q37w9?F}O>0EogXYJ5auHfNE;*yvo^uOoZ_k!dP zo*ncmUAb=r)*EzLW7XnCI61{o@s~$sD^`}5e93Wte%Tz*L8%AN z%&WPM|fRpKnn*)nJHGT6=zw{51d)j9GP+iV+&XKPCqb|2D9KZ za-8Q2E>4w^U&H!DcSl2k2Cmyw@}gCyzmMKr(JHZ~6pt5%+nbF*Xie@DLg(M&-$vO+ z#3?Jk6>FjgyvGEn$1?g(cByBKsUE}kal>A8=N-+xfUgL8#E*!ZrnVN(L}a45U{ z$eB_q=~|^PgP~?=_g$&cV}=FV_5S`ltzRv(OJ)iPYiZelX{&-Z3;tp4!IkvTcjh>_ z;5I6B@V*dZOY?(2$r?xCdgw%J{pf-5$jE)cp0R?`>D-e^z5CC%`uaEGe-*eWS)PAi zHMn(ab?P7Ro&Pj^^<5z2f*_Zt?%l%{v(a_8x=Nzj_N~-!dd%2@LzGG>GX3oByWc^#LRsXx zPagxd0RE#TkmWorzysyYii6-t?wyD=P?8B2qCFAKuQ4kU74 z#10fiSdL~RjNNzfJKKZhP7z9Y4#vRm=v~9Gz5f^O0HwX&(rn^5|MIrPb$a2f%ge4= zm8)JqMsa;n&LLb4$#_JGzBA9<&5=9MJTiLm)FY&oqH@HG$${`1EVE!}EhfxbPCTCF zFR@hBuVsdD8`SfSBG637r4?>);{4FdtkDM`_<0@X$bMH`B1OQ_>MtD#M6AdUBt~B=V>vX zz$9+fD;{s;osiZgEq#dMlWPMrmk!9RFT`WP&pZ~MnE^1gz=&R^Q}5#Ii^k;`mrS;g zwbFGy3EA$z+r3@Z>b=WlYP~2Vzjqma<;qZjPt1yycr7s&%U8xgmBGA;AD+&9{_k&X zK4wB>_o7yf*hnU7ZWo~bOayClr)if3aM^FT-I6~W@CBW+0g*t}<=3Dg?9}Av6Rs*G5?!ap1l}K zziapW>*Eh#pqlvAwWaT~Q2me-`8m@<&s`rznR~^dTzy7%3R{CxB5}$8#m(Sx8}eYK zy{_3fo<}G5l#-H7SBW)f2uVEouv{rm9CAI(kuG+gR`byiK7-dEO(6)eN5j=Ns=?+D z@5fS7Q@?BFw05aCq9U?sGWc>1-INUhR{Z+j6sr5;=v`J^>T@6jqOs>c=foycZ9=$4Vu6mAL2*-^I}N zC%p~gb3K29Ua;M3_s^mE7Hjwg?@XPl<#ciK+pobTuf=JUwRsnN%5yR)h<^Q|POY;+ zrca5{#Y?6?lwY;HRZg;Pw_QY$td=ysz5G6yl$s5@xu?*rN5*@Z7oGI<+tkVU7LT!W zcQJF>AUHB_1A>7t_30KvFg4WLi-Gp1M;-VJ?t)tWhJ&CoLa1w+ey4?}p&gc25oOkDbyqVosMxPmCN(i(%VQD`xk&YguRby zlQnCfZ!%?EnPGXsS%qlG`5xPk7H7C2d1l^TOi*lJl8fi_?yzxW^i1HUoSQs$RK5ve z!Lx1$AClHMPfKk4v;2#?l(w{VMsEojqKj4BfQ&z|>J?1a6K$5OyoZ*M5RN|>-)a3}YrF9~ zQLWmKd&F=eFj*paY(4wof$J_0@zyLXj@68cijcp&W02AcaPi8wkynYaD&(2uiKuE@di_}aOFxlmml})E^h88AE zWuw>%EW5CWACFHNUYr^ao^k*jh-j$C96F-LINPpzT|R2!4too@$}73*t4n-f-`m^$ zTqBuC*uI_Zc0JgJT0W+}GkFYOC@Bu*_eR{A>=%Mn0(d>ucbZO49@sgLzAVfyiI7h# zt6LL+(2&WgPV8(;oBs($&^!;b*m%fPh{*`xZG+- zag%tl))^?DI&Tw~9}hgd-&m4H@^YFO5=+``gj?Gbbh*MA^+V~lEUi0Rft6|UZvk%i zy9+5IUm=UTD_Q3HTm3o{yp^sf#-7IlJ>@nJOQYq6yR!5-lVhKS+&w>!j>f)zQQzpFcnE zU%O85%Tq*lYj=G_*hnZ?c1jvonGuPl!-IKOrygI^() z%b%Fg9u$Cx^_lbF6_+wZa_h$-6pQ&>V+d#DiBBlx&=mTW9+lNcmAfq<5P~NjsVa_s zSu47)>5y2qEirgy9i7d&B)DFiknNO@*K_0qi?;ZQj7x5 zF-n&4F;C{zN%F*u>wm7Vxxh1YG>csAWL1>d5Mn~Bmc~gn5**tiJBwQ?WMe=SP6V(uH{?+!pFYFr5K?gg0D+`&h`ao=m(Q@BKC1_=h zt#4w0v-P!L)#qMXh&%I?M+BNPdQcu5mFSMk!eJ%qGGhYFHQ(9;^{zC+V2)2UhU!57@DY~X8La9B!m{y%t;z>RZetO!Q&>rE#MmJ!lfe6y!~w?HL%1NnXN&s=wh`Y z9=GZox1;gx?XtC|u;Cb@^G;ZIOr61qNKpPf7N^UvjXa*t3#F+Ty`5V)9pESc6IMHYre_wDT`FMMmLHOA$S&D3aa|Gev^0h>}))tcab$4)8; zVc`iiG8`$bk&TPLpOVkZaVP#-io0vPlPifFbHdfZZ8m3FQ3c4_2dGC3Uf=B->ZIZP z6v?xZ8f@*cmK|$8ywRC`&2mqkwD5i*y99w#%28S78dPiftRXyKT8yH%e5oe}&|&t| zBw*tDe)h8U5IOmc-?3bahc)8)hzu={Oz#7|HLVlt9$&W|(pq4K(1+5n7j6=sDIfVm4 z`w6zm%B|H;aYw3x(vojNf_bUYymxGbh(2Kvrk^=|Kya1w<;8Zt{_ihW;hVGBE-zcB z>I2NSKFA9H98^6XtwBdsulnf4_9jg*_# z?2ZdhvRn2>m;QI$m<}Pqt~Al+ig%a6H>zmq#Op_(t;E_1ByQWd^hhyB+3ws~#3<K;geq2@bl8QDdTs5c5k$KA}sUWmkmlwJRxm;Z4s;FbB$y2fSf`VXp z!Z|~h39sVJ^#^M(#oC+o)LlNvYDZ~^xULF!79GRB+sGOb52sEJ_1JsHpp#k8R3@qnp(b^2)d6{?Tohc6Fjju8)c)1`OxkL~2Z*EH3{Bvmn+LII*u zY-$zQ!GDd6@Gtl&`H!#C2eu>2czPvjY~jys#O@W7UvP?4ml1vX*6y~VjKt9B;kdM~ z%&m5J%Bc82Ey#yc@n`I;C)kBpY@|#hd zsCh;c=KrF8FfhG)Vg>zUN4)%??d=w_#z$s*hj=zc{+{OA;~xwBQ5_vMEgd*79e>H4 z>Eh!7#$-(~(M9e@=k9Pe0UE`Vy|+R6`GrK6gGTzrJ2k<6Vuh9KNe4sClbmnfJo$2w zDT75G2)bZ$yIBw_ZPZwpMx3mct*Wbvm8-iyj46+rS{??XO>>gTE6bImKEv~34FhOl z;kFxRHRk^Zq=|iX0ckiJNpbXToZ?tMcf1ZO&HmQxxbk6Yx=0#t)dH9K+r7u6zZ`CW zMmda~IzD8Ibuyb4>_2#qnn)f%6mskIddM=A(%2Hck(}I*kU)(**3tP>J%hz?mMj3^ z`3CM@8tMkN@Oiq*G>J3czL&{393RMbQ$%Is_(7-7=zv&OK>@U8w`#bpFpw!-a^*i; zAyvb+>#4z{W}7>W2P4)DkAi}7u{&mmp2Vk(FXo=qJnzlvW{l=4mvCMY#I&TG+3^fj z64un-KjQaLrY_w3BE}A!%&5twTf5AI&P|u1SP;3khDe4xR=w2TBa0DHPte?I_uY7 z9idCgjeW}r6)bpyu!LKIY-v9-isWR`ATxt{+amnvtXgBHW}^DC(!hD&ZzJ1SJh$S$ zr{GYbM0{aRw{|-o%p2Baw=6wx4U>^S>pI1PlmiMLlqZO-{QM#!s;td%M=f4k;U@wK z2_Zre`*A%3^rFbv;K+6Ej?V|=iT8EhNWu|W4=z4@c6u-cSf^49+?N7kw&y0xWf28? zT66cx5p%GS4go386}7#18?jx@fLm;6!R@DC0nGc~iUTAA%oNjPNH}x9z}y!ghdWx8 zeVpQzED1|uf^#=iMGksSV5QYQ`Af^n3n4~sX@y+kJbSQ)Q^hwJ;rG1g`81dP#XBKw zUHONIk-o8cl&|2`&o*y}U$4}0sw^j*I7JxDT4dE#V)4GEHt7Gw|6!vHwdx<}W85_U~1?0bmShUO=~ewtG%Lan(2UbCnk`ve(m z`yI{=TN>@G-aMu-i~h>5TzS)s>gX32&#|F0$~l0`S*qyNhXZFshmkmADO_VZyQ{Gv z%`9r^icMa7Nebn->^Il1T%lipS*DlG=8li$a5P0O_NgT1aEWv;(se-{PfJ;5&{_ur ztD$~2iAoE2^t)uGsX%1om*1Rau;9xui<0-~**TJP(D2 z)4GQ)8OZ+K-8+cI(9I;-lVdx9&&NIa6vg(-bVmtl%=8}`PxkM`UoeVPIyrRBcy~4? zw8aX9_>LYxhx5$mnYiI*ZMpaKj$dL)Zl@F4pPojFh#;I@chf&$nKcFC3oJ+CKc(gn zp+8GlaMWw{w|J3AF~@pm)y2f)U6!SO=TX)uM@VdYD~?UPOArmQaYfB?nKScd?2!bG zQs+N#8#{ObmG>bL=RgqYJ%c3qxUsLjBsDpoW-l2ce~KOrn@lV(Eky*;#t~Cs{rq(2 zLF89FrjIQ0zy4=PW-3f#>xoJ!v+J@ti<~@_I$|Ih=$~ZlFt~*Myj4JIRGD)Fd0|{o z`@KQKEX=nlSnc$2a05&qI+bkHr_%!o&=^e}#8|VV2UE)qV~meCtojRYB4)gOCb-)3$|S?u z#Ye;nzN^^2+|+>QoIV;G=LonS-$WU|$LG&>lrdpiZ$vasC!~}S);3qAG)i3%A#u9-I1`{MtO z;-piyLZZYT{^Ff-DZ$D8dS+(%=%!8`QUTNp#jFi*qFIbQtlxl)))dGk~dGTSvQ`6PxF^kenPtf1dA3qEzMc zQil5bW2)(Vl|J9sw&+S=@|V8?%?spq|KDGlN}`oktMxd*1oUiH;fEs-nW#4=}|H)A%No8rPcsS8oVP}_?U1}x=yyYY9!T6EyxlP~vI&ZZ?wJg+lP9?6AkvCq9{wpBCqZGH3x z@-jC|4?^ZN^J3+i1f)djU3zxeT=fZeTaPo9isfm~Z41v#(bsOSkX7-Y$_8GQ@>IAY z4}T0VXL(CNvrmLlqa^~lSUX8Cn5J~HZJqcFy&j~R^(Ym$jujgsk#gg2NhH)1kUdTU z+!RV}#%Gj|@(0_aUuf#z6_VqMZuzDp7!xeCUo&1PHJR8;?~|vuDrb>ru6HJu@)rcU zie=UurG4%JNZqL5`6Ceu8fa?8%O@eO!oK_{M>P{h;=3*a zIkLaQU7uv~oeh@==l9f|aVTSV%X`d!GhT6r(NA%84%e zs+4@b6tR@R+4X%bKCdGB*7D90&htvA%}7P}x#=@?qldG{8C)%PQKTRpqt z8|Sbf!mn`t_63I$VoD4~x|JHddfy*t^GxQH4j`l5KJ}kS(ddJ_<{8ZZ#i3_%KQrN{ zFQ4lFk*LMndjN1}i9iVdKc_F=H%?$~bgp&6udJEOFJ|`nhUI55#k}Kvoh@0OdwyN? z<@Z}=|K=Z4BG`k@<}(K}2(xt=-O?19=ViCEs;eJNHZBhOMhb*q7df)OrR!y`xV59r ztAZSS96)$}5a2BMYY)f5G~LcFK2SZ+A$)e{+e)DoyCwRSw1A7xKqc)LVvEjCDfyMt zoJ%u_qJyLOCa+&5{Uv0 zHB`JR?CRR=nM|9b+g)qW50AUhF5d{=a9t69WA^ytJmz15;Wd1fx0`d1nD}OsIM5ch zvB7-DS?^8U%cUFmZ@BrDrHG^)tUgB2hAknpbq{O*x zbiB#5Tm3P0SO9tR!thJBc3n&52*IvccFWFqj^yU(4ErJRoLj!i7bf=GM>|WJ)jPoEY`tR!QZn%_`|A=(7ivTR1{dle5hA8K4dFeER>+a^z_lAZt+#Y`}YE|x7`DOeiVMt1<-__n*ApfdiBtFWz|2#$n>sPWLe$8JmEWSV$6b=R(O zR>x87xIA4s0%hnBaFX3sjp|-f)%Kb{cozZsSZDoeC&WH)yir9OHFcsY||XW%Q_)#!@Asuk#~wa&zQ68=AI__f3w-4Q#s?b11h)awF_Fs|yPeHu}4A z$Y`-bMBc+|w7Z$nVwX}8ho4T|OuE2k#kAN`8J4Q%Tivar|5Q!_ayT(Os~mbdSajWnFI;Rb%m_sw(L=*_efm zji*r)^d@z$dpzcI90dOSY89~F!J!eV*5u0Pt1acuB@*76q;!6k9lOPfTWA`eFr}J5 zKR9utW=46#Q-5z+S|GIwdFWi9=Uw>nkGR!~XA#GT_q9L=`s(URL~y5gfB$fM+sO)1 z>m&UVrR?#$^<`J}i%!a_H4MxHMG_p*JjNXoy-YK1XEmCSDxPs~Lg|v{H zWb4Lh>H)&_qq{9zF7vTPv+d`*h`OHS;;v zw$X>ss$Q)8XHY9UtvwO8SA8VkgR`sp58L7=2PaS!eevHX$A|Lbu8o?3l%Gy?h|}Bq zQNY6)4xo5-JMI@?IraDT@fsR>D{UlhEm-7XgOHSHbh>RLkESL+s!e)cFOBs)6vjDX z0U;W!>D5`k9JoC0-LOya>YtDp**D-4ck^zO|JiaWIy_u*f0WlSrDoTUSFUmB(aOb8 z5!9;tky zSb+uY6`^mK!56znz0G!X3DN2^AL6&gT$;P)ILfitGq$T_XsD$XOQ62eaK+x>o*#|onPyCIEE%ofo*bCo?WZ~vr{ETS85}Z{s{islh~Rrn)TH2dIZ}`PUmbF zcT0^2KCMbhn{~2Ya z7(`9N6hq|tMR+!S&(wQB7*@_!TV_>$_vY*Wfw0y{HRT=4B2!7E{G(dp z!Xg|o_K0i|Nq{K;*pfo4tJBU!nyR!>Z&% zTJX9TEAcUSfy)n#C)s=PKT}sPv!4n(01H`LcmKnG{;i9O|UKz*}j>Mu%ybDhhyq4cd*n^jv?dLrCWY2$NnlgrW zcK-RaIg@DovLMO2(3RbH^N7}Jo<#&8X5jwUuB0Vd0*?M`TN}ZfaV!Cp(g(~MtP_A+ z?r1f^d}FLAzu*Avwti3C8d6HHOC?Y@8TX6UC#iI^>6ZS9Wl)^|dEn}WX&(!@^tSsS zFX1MYB%d|r@P;a1ZfVG~*hR&CX5DKqRw31_s0>kDM(g`Hnmzrqc;lg!8Xh<_s^HK} z>4X0J?HEUHj|W)Knk^(R+k9>#cVl!?H2wGbY$biu3?9)3Uz;~&Z|cLW3EC`=i!+bY5}qtZ zp0%|C&#?9lY`-`I-8rcPfObg8g@CvV$poF56#ShoC4&3Nu0IFfVE%9Oj@ZWU@N2`9 zBgvMZ1s+6Qm2KebeS=k=AhwS=j3=aW4H}MJpB2sf+d8T?4@~7Y1PG*P9*JnKNjGqy zEvyGq8pp?@0;*m!S)Hu_HqHc~(A17Xzn^zK`1(%bUi^K>vz-9_-6-Pn&$YR zJ&>NNA1@J?c+9!<=q(DrWRt&T#*T^(TK!+|?36P$(nhLpT(a8Wp2n(}` z?(_%wKReX;!YUb6PGWGn>Z*BO_T$KGy`l|H;@%y6{hMk3C5^I~Vi1nvnwXFNXRN zvYEZUxDorQ+rVYEN8n~6|=>-av;McZm-Kh!HDd-^_Dm5n`!%OU*a+O zahEaT@%(4upmqomqnH@rNHXB%xMiwTZ|n*w$jYiRm?^&ZAuY(YN0^V)#HxvJmeIzi z=%j=rPmcNc8vZ7yfB!S3kL`lBhU`8Us|G(ykuNMfj-r;>7rZ0GOzB+gncyn#TleL2 zY`pAc;wH2D1CNru@}R72Q)r^gfhIc_kp^C9e7&+Z=Z6nkEzgQ=o{T^?v3b|FHHAYH6wU)ZoY4 z(sx!n*2siq3hb-<_r{*!=a#ubwezzy05idzEBa@wh`eqzyAf+`!ItVxjGxTIf01bw z4p^Iy`X^C_E}v;3x>pO7JvDA!J?O~^f1lV-zo%tg`Rm&_j1pmWM&E=om0_sDx$8G* z&&~~8lyV`kI{c&d(PBp)4a%kDQ2afXkthGkpFeUbn=HA>prFxy+@)vr5W(#GJLykkz#e^bn7?6eq1pPyl9PU! z9=)xtMbpO7D^Qw?A`r8>kASYjRE7((?J#Sfqk^q%_sW8oQcU#_|0gb>Y_}Vxw%|#% zb=2=|9j>!eI1cjjVCMA zc#XC=P~rPRN4gzDw>xY{dE7<>2=nOf*#63QK_QaMRVcsfA|spraUU%X*y7*k{_XDZ zg^CjzJXPW1+*4wX{mwpj!*aH$p~o>%-20W+Z{Ds!*rqFE^vekmDa;!n?GrF@^@a+j z(})*35PEcQq&Bd?{N^uPZKzKy}CvPFJv5)NkjA6%%Y%6Z(R z%B7QL6=f&7nB=3G9B?2)&S{9R9L4XCqc*yApEp zRMz7UbJ#w-^TX6XOR><`YU!#s#8^} zX|B3?|AslVa8!FJJv#uSX@%^_%UfDasBWLtcQL_4KH=JBO5U>}&zKd4PLY*27-$*o z{g4)Lw-KPIVIol%U%bi^7W&C~hiiYR5!I8p_sjkH>S6>dU1=lV9<_7t_uJs#0+WyE zbT9>xlO5Q2UU;h+(^ED%7`_`hdc2gz$d>lYp=5G1m(8b0Tj!37V{vSfcy}jT-H+rLTx}lb>oFF1tOOQv ze?b2h+nCt2VDB^2@nx}IzXh6J7lO#4)KIF{N01MKblFTeFjS@n;3-DtSsf5^c zA{u$mUm488f5g%kLXP)`9ebKPwJmEb({72|m^VbrfT2u#phpG`+wyz6m2c-A=UO=Z zheRnP&1yT&zr=ujIqdg){H{o$pVxAt^V6#GX?2l|A0OQSh4=q92UK>Z{0w-4IfVZ? z_Iys*ck+%J63^iJ|<5G2MY<9*?Q(U-30GYTP z*n9k6^fu^Ti#=?%)t&FypjcBQ+8&@KCTl&IckpftBq{MRsAfb&?^M+r0H{OkqF zKxKDL`?AkjgEO!eRot|w6WRTw(L;$$&EJeAF7@thq3gwp?eFJ4y|ie3%lk1MA+hvn zw=+_$C44It(kp_KLU`e?=kg(wW7F8MGp^Q3@Ni5`tYeP8LdkdeWj9~${YUeR^?G8x zy`GaQsG27^Ta42VUp&uV1RE##Ms1n0tok(nKfi6LnM_nEN?zKPsZLN}#+<@dAgHOMD_FK)4j)xchwCkrsm0|_7=Re)o z?G(36^XV!tniKoe8QI$_`ArHG#ie?2vBy-Drn*IIge2xFFqMN(k=ZlrDL{3QorhTQ zk;9Pw_qOI~^1ito13(W&SPhjJW1_6q`8ar=`H%}RZ?0?Nx2ifwis_vl9gS-zjKf?v0qx^rT} z)(zBHI;zt0irsDZ9S*mby^}^%0=cYjT-F`?5T}dnvyb{ zdK>zWfsnTNLsR*!wTsP?l93YOnL|Q!H-&|15#94)xWFtmH6zV#&=`ts=}P zsxk$312Y%DVo?z58$I$}M3RNV7#Dj-_tMcR;du?@>?X2)I@SYg-T5+?w(P#!(#fj#PM=srX1XRXmjiVlQAw`a};h!PA}ljrUS;@ zPaXfNwo%QAos;PCXR-7572iZhMn>h?OIiGB2zb+zmDRSDB9VQ(xkT~ctmug0d4$3y zDd&0@!pT$&*H$_~gS~ncRkv!YgKEUP2Uxa6^o-*dc70Z@Y-37~ z4SOdhaw{qhs*uNTeGnTCGcxTV^Dz07RYq~gjL_e=Rz%-`T7Qab_t5ySygq#(aZn&A zJ0a%iGo*6sfmEztv{gTCTKNDU%ZKL3U_;&Tz@0oRtMv&e)pw(0rGvy!uABe(wkck0 z@u7Wd(RUZmeGoPyf#x+0f*sXB{o|-i%_GG;7ea4pvkCt#nJ2X$`IDXYKa$z~@qHxV z(EBV_%(Lo~L}H7c*)^$7@&IyUVcacv3{t2Y=S3)c?s2bsD0hGW2I$ zs1+BDq5Ajxw+9yU^Qu|q%sXGhY)K@B&%b^)6N_xzQ;F+sxf)<+o$@G`e zQwy`M;h7DK&Fa?;GG@$93ETe0Ke^0|b$&dZ~pCH$L z2HtO!?v{;dJy4dtnSi@S2$vW=&nEQp#@Qrv%AJ5E0BrU0jdZ06KoD9dmn1Ujw@?w9#1;8 zOQe5bDI6gQVwsYKH~C*UXg98S)c;~+u6gaO`j)h;>CMI z?uT>BgoNq4h%%pt&$0Cn8KuI~{|Uod#K3joXs6VAt^|Vx=OTRO+_qpBO;mAgET8h* zST*f;x<$EEoGgH^J#0TiXt2-_Z!m=4XOz7)G$Vw-WD?TFU_fz%rsLF4(0p4Vi2 zq1AY6*LjU);za*_(Slm{Ki>VTW2v3g-4}FN$<|e^k^X{XxE0CsfC= zUDd`kY>W|aaX+ibXfh#QHq)1h<-?rjyg9<;f}e3Yov2{j6-wA%ODij!e5Td*obU25 zkH4;liS*qV$`HF{%7Bh%;hIqfNVbj zS1#H=egElBA%x0ni>`cg!fw%FM%F#1mtpwv0zLc%p4&?_hK+bKA~E@OX(_I-r?H@9 z@t764&ejuu*}So;CO_J>rnWs_%{slo;qy~ejnqy7?q+GQQQ{a%D029w!T}=vlJv3< z%BC@XMM&?m6iT3B=$iU8J;g(fkrd~rg?iC$;&ijy+QGa41M!& z``iAjlm~lLiM*B+=|b zJNT)1m8ztuY)5yf?#}l%Td}fE;CMA~k`+|-@1#-HxPBuscMC~}2}QcqSeeuD^P*@_ zbor%FPx7tB3qbGW(VEX-FlE%nh_btCGs4mXahK$l#vR@0Z}qncX(d_BFOdbT2lVzD z{VCBpA|x(xXz+16m-76dKLNQb&8rleGrtQq&rKN<@yE68BnVG6!9o?9#F5X_v1oB# zF_Q+oo_#BE;(1(>kA6e&rm9@h7H`%U)4DZfV&JoPe25_v5p20Wh_;fLC6cZNJ&-OW zHqUxr?o3p8#G;O?^s;z9*==nrYknINrwDO%3+V{^_DzOmI=VVrF}^4H|D)@z!=h}P z|6xG5MNt7kT1p8emF|^BT0o>*N&U4P0IVV0d!<0LGG4!Kp{sr$t(-9h)h(jNh@TC5e$@+7JFwnW;*c7OeJp%-@<7UVOrG zx0eOC_^#xnT73&2l?8VX`uFl*Gl?|#oODtMTc9*pSC?{Ki>^+sCy`IA zFM%WJ_t`hBp}CKDpGE}pADybZU-c3EOiDUjTK(*-)G0as_Ot=}xW`#Ly;H-w4-pFm zoYtJ=wb)7dv>`46&~V{_Hu{UXnDnW}7A-v^vMa827ov*0JJeyAZI&=kcVVhDOvk_RW&OMRza7Y(Pm42s+V%>j^*f_A$D^>aLi9cOz6XU z-cO?=&lJCK#IOrUmk0=p5&eTO)dN_acPS`wdtLoe10(G0=qSwv9*V=Z)bq3Vm>Emq z8#bE9qw%rHA3)x51hBoqqSRCkzEYZ)wIXwoWqi;JNRx| z(b4FoNfF-Pj>y+cz&d>$Ag$oO`fI~bhOVHg%$CLTrN*BNMxG7?=KJtPJu7O`Z?`MJ zNulgBm4sxW-LE;8QdO1FIW#u@Y81bTJ~w1doyUbS3Z7sF(4|@~K=El~gSKqbq?OM}K!0V=sJ@yUxQDb>xTiS<%zq`mpA5 z@NrSHNfcG{boT8ArG5FwMW<%ikWKEsdPYw%E&2> zq8J!}C{sSn-WBsAgd4Xs;1Ewj}Z zm~)TNzGdN1R*3WdoH#tX{~D;WB<2He0$4~>;#aahm9~BX|6W<^0H)#FlmaUd06(Q%TB12WWXpUGAYV76%|!@z31D47Ym24pLJqDm zc4%`sd~K77L6hsb=IK#&Ip35o_!mOg&_8d!h8sIQM&v}V5R9B@0Bt=`znW{07odIl zx!ABIyIV2tF{&H?`!ig1PdI>*aPWK6IlPi6q#-lZ9@{Z?N%U*ZICl2fb7>!_BrGsiY50I5B5Cyqzn!h-(@DA~&BBJs>8zgq8nI*m2JieoJ zM4>$WbC3DH!l4Tl$neXj)G2;KfAPg)hoiS;1!WSwLU4Q)1)_%q)RcWHlAhc^W7ZK`nHCegfroykqM@oSnle4gc(?a{#z;tGWI|uaOy3keRv($5hkD>LT z$nDL;yQuof6M_z@>hw}71~KCAw5M=WC{GUPL>hn!>?iS@!?}}8u2A3*Hi{Ns*O8zE zpj>jwRpHB1&$l07akYnlFB2#0^Le7*-~okj49|$%*Mc)OG(?wIlr5kBO_yIU=HB)6 zye1l1A%sOxhQ9KCJ~LCtIZAQS-CKmwYMW`4ujK2`wZ%I+Vkz|xUn(%e@M-^ep*$zp zN;#`LHa$zWAO%xb(u~Zm7U<6OI!Uuo9H`$C$zjb$x`t};7uCOoV1KSd?kG^?)ME|Oi@@iavdpvU48>eT zO2HAQ=54atbKKd3A5LU0Fl(t;-Ooj{FLxTolFxo$M4Gy2C;=^Io?@K47}y+PQw#$w zHFFGE$j20jM zWMA&V%dIQhbK{CUFW%tQeg(1_wC4Er3o{`FBqkQ?cEFb$QE;_F_mr$$uJDnZ2*^-F zE3kh5;-srMV}$4Iad5>EJjKGV!6oIy+pl)-{eCi`0Md2vF&vHOY<};lEcf5~D!?qU zkp~5_T#XTfN#Pny+r~4>`-~ENK2_1Q#Ai~JWW`HXux)Dhr4SayMY``_^>%Tmcdx9@r;e7O~Xk;TAidyHk0WLVCh-2x(g2H4pISTw?sJKmKi* zc>Qh_UCR1;S60Q6^#p4|p>dYpE?+%tCkFYzveDTkRQBW`8~Zs4Ru-T!?fW5SAYb-R z>`SA(q?h*hqS1+d?P0zi1LxAzEy1@M)YCm*!u85(Og$BZg|@jZ*h*#YW_nnB++EyT z6pY0~GDiR%LEjjyDPcJO3Q1uhoePG@whv?7q%(&qM$Ejb5Le3dhEZ zqNESH0NRDToEknmdXzgoGdpJ(#tjUgL|73wDxfdrP=XNV)dPP0DcaVSy`1XUx_ABQ z3TH1fmO!HN_DhlOTl#UcD^CSFr-&&ZUNUw7!L3sp|XUwSGq6-@pdSU@Oxqo{EUa1d6zK2B+|eP!(VB+hg%hb zxd6}@og-*5fRF6Cn~B>5)arv}J$Q;QYy{qx(FQbtM$qkzMHr{P^W)-Vf8m?Jw`WXq z?v^>qN|}dWx;8&4&InuxC45W>F{L}odPc|7#_$h)w-tG@5V7~6C5p~PtIm4E)u4nj zydwO_z|=ZsF3pp4kNv$!vyZGo1i$?@;eE4-UL7itcPNA$^D|DE67Akf z(osGA0{Tr$sYmKy-S6MU%FEkCY56&omDhuvEv@_K=WqUL^q&}0Ma75>!!Y&kKV^UF z{UFpXymxd>ZbyR&n4oxDPXTjHZp_ANq#-Fw<|yB_&lv)F=9ZLmkYtDq?MGkxg60V#6SwDh6)?WrrD`IICD|b-;{Ro{Iixk8 z2(3DH>$B}DndAr}Ob0#H53ubMdh2#xvJybk#@;!DGW@AKA{}bu$g`I$$G1S}C@>FS z&Ac6{s%^?ZLLkD$wKfp$xw%U2^v3^@<-k+9RHTCd1z-2(e8D|~$QGbicj&uBBSux| zQr&w;Tgn#`>5Wf=55Cm&+s>FK?O5k}eInW3q-Aq{9aMSR)O9J%A|xFZizp25R)kID8S(&lwWXm$U;oO z;LyvVddSlEA~XxV_WRmvy)HdQo;u#fIqz36{>m20-MU}5=(EGL=k8d~h#B)73$0QM zv^;|aZfTL|!S#fP7@u{q2r9mK;;V4FOuqiYflM_|YiJ$f(UrFF@?YZj2M8`|YJRza3tgoqHZq*kgqhOQ{BTnqQ25=N$n z5?vbTjFAl9gm+r34h5{@Hmb_%cVZV!LX`qVbq~u?jFZX?b*LJ@()Fp@X+`>=xcOiY z?bd+lv_H%~-#(pq4*zwLtaQA+g{5>#{8dF!nUCbz*?Uuq3H$tfu1vN;`XEH<0nC!x zT$Bd#S_W(@M85VqQz#~jAHKf?;1 z#BN5G|7K87QDN>CTzLmyOy*T#RGa*{>f0I&SQ@^8z>Uf75u{2u3>~)K!l{AstbJk>7 zyj6|%mruSdkkeX`3M!q#44pT;)T>-UK8*KRZAi)MFvL>I%ikopZ@+*++}vUr(POT% zgi-1TZyULZFYdzF_dHLufAt)gca!kV3kZ#G!x7E&oF` zg=Vx%b%o~7^6QAak7I&rR8=XV#b=&IbgE5efiIM=FukDKgRPoLd`>EoZFaJs`*YZ#*G zb-kaU>-|_~5+bn#Wfxlg^ou!>b#Z4t?|Q)>5@}LtcFjSRaRjpJPa+1j7Zlp;jcdSc zBDmW5(_$&gy#x}5176zRNMdfgkLI z)h8rIV>>Iz9X=~oQ?p?`SAR>|?kV6bDHr)1{GmBAt9qYIqCPr`>HdZA)+oEXAJ|lb z`n8=#v+}XJHse~f$(nLbA2`SC;{&1E7Of(EpAY6$ilkh@p%!kx4`xETrl`LM9cyfc zsCpm6 zXlJ&*+W~)J)NaOP@+u`oi88_*)c&j91&2N~z58_I==vH{M~ zLG9fX2{s~)1T+5#{)SoB`f$B4vR^+V>OEgToI`3Hsgm-LH9OB(w)kb~`dM|tM6~Ux zNA^Nz17xx!k7yUaWul^U?2Ws8qz0~uS$B!u49B49m_k=AZXG1>Uc6;Cv7@WZeB^h` z0*Qv=!|WtXr{40zrKaIe*VQ*|a-KcbOb)kB@f3gysA;(m zhc2nKU+5t3NlQ^%pNhV<()QiPF<8Upy`U4TDlDHuM%8Renkzyd;Ur5FBL)8T z^}qHwRr*)DI^ayW0xm|bo>N!Cc{X=>)xr^yF#u7}7#mqoQISET*B{gG%0ZrBb6Y2O z@B_2V#jC|(qc(43gX1lM7Mec&Z=IdLa=ZOvwBCP)bve|_{f3d}eYrkS+;rD`qAwWd zWv|?WwA?EtsW#8$Y}IB8ayP|1?K;JY!$~={d%DJ1O*j?LD=s1W;`%z4s{=b$1YEc9 z7mA+#o%#T9Ic5V21lAB&>gLWZ1x3Z@!QA^e zMVrH7u$S4XSLaqEY0sz8)X!~8Tf zQ>RiQ-MxVz*qSlp!!9|YH)KU7zSH8^{WrMpYK4Kc#)&op-X*6Q9G#tsm8}>mRE>tEVJpp;e_HQ{8WGucO$wx^+uD z5N+R?)O+BLM^zHM=PR(tFBUb_i4M)Py{Pb!pc>IG->rqEs4e{i^O|OGqH836?j_wJ z)tG&n3fDIlhvN)#9DN_YAFY*ttLv^0^%_bC6kaBL{|9jsz&HC;yW&7?aYp@G(526pwC~}o8^11Zn_L`8wc35Z+2V+lls!yoeh^(5ZxAkHq zAZj7rD8NaZI)t0*dma{#sUBQhygk^_7}%*59I(=`N%h?E8m}%JvYHuYF1K96sd02< zu-VtKb3EG7n72|pHo@b6Ntt5a+NJ*Vyrr(L1lC>-Cq~J*gM8pvXa-m7i9TS{zjG=6 z>8ruwn1>+}m+!ijJ39?* zD!lG`o*$~euzgzxWdG%qRif{19VOnvw}mP1(?) zn9F^nW~i4Gcf_V=VZq%mM}wLC@|var4Jg|~EN&S-_A2P4MyVRq*%LS;(>h{-x7iEK zbAyv#tLYm)&A#^_n6)aoEhISgXSu1UYK(Y?s>9J`p_cD&s3&>bXD|{wc;5ozavv$F zW|6Nl9L&VVVk6n}+>MGPQ;lQKPHL|w!qF(GPk=6cvO^b7-f!M6$~m{Pm^n}W{PHO+ z{1z+o7i2wJ8xJ&Px7z<(T6rD*2mVA4-^5&FNz3_2$I5-r2YO)Rd`8x1YwYs^TVI?~ z2d$c50*_+>{??+|a=P@wSC9C11pJKT-Z`>~(nnugUqpdxTN^ZzV}v{+PhTINP36k1D3tQ$|&!&RtL`+c(U z`ysP6b*KfZNZ<#ypmD;W!F8+p(nZg6ABFLKp{dos^S}QX?1qYl9)Ps%X^d@Y{0er0>4_E5(mwf+;rsrRZRxRql(h< z*_a2S3g}3&4*-e$;`(I7r9_ZckAn8;fqsjm6;* z;F4vto#Lyb!eKvE`Cg5TwOhx_n8QY_R9lz9!6|NeCAFG>IW zhAyn@ZSwLWr`!_+zHA8YfP?Pcc?DGj$z2K=#}rwOtVLp5tzJ3^W481eaR0%CBRn9~ z2p~f7J(+_WM5w|yc|)2r*(*J*N0)f-#DKdal5H6QhV6ZQgwQWbhiVE!Xpc?FM3~Nl#36Z<3 zxXmc|8`=88X-`7oLow`&in<{IHuS8fgA(g?U-qS^q>{s%EZ6ROH)5LP6se9JPDyK8 zUmZ6mK7Pqseu3S+ii3$n$xu>M4z8JgM6}(X-A~|g>rFm-A(ZX@xdXmQJY@3`17EC+ zTKrIOXqZKtd-$}^X5Ta9TT};p?g4QaVgLt7*Wt|(ps1x~=poSp#ak1T5jUD-O8gww zYn>OeoGNq<0>*1sTh`~9hQ&W9h_j!{DbE~UE%qe8aR4n0z%{fNED($A-D6PBG0a3J zYtz%g3wGVO-lE(ILqjuo*somIq;TY_T(^HNaAnVT@_^mhpgI&`Hq@UJx_doy>=U{6 z4g3GD#$10+ZkJzO^OyzS%)9Z}@W%k!-Xv}|%e+-2j^s@5Xn3u!yp&yS9D#BE=!sol zzzwyM+(phHdx3tU11-yjO(26;QeCf;NOKzR5O{ya3B`kdj92|x&E^q920M`Bh^;Ehgv%2Tf+&U z+pj-jlBIiP5`VT?fIm~=url?}#pbAhBuo!6yxa2(P0~bu0Dd4qgqD|s(7&kRYvSMs zdkvc3uN|`<+F?le-j41)h9O>Y&Q;p3lu1yP_S8~ve|@{|%Jp2e^7JNISqT84Y)x(E zxj`0hToaQ@_V?IX%(hxJysWQqG12hw0jgdB3%#TDb^1}D7)5SO+_sfveMeYN@w(@y za!p`@2EtSDuj@Hl*e9U~g+IU_e9>-H6cEoCdcp;V}{8=C|j>60Se`IeGJ=ESCFH;M5 z>gBMz1aIOgXp}GQ7Wzy26jSjE%{_R`4uhi|c8`aGKP}zoo*{fhqFz7A>Tcn!#(4bN z8*wMhLa)IjBEe4k4?v?+r%=o-I6AwSbo*Dhs*0HV_}D_j^psGB&sRA7U>+&K_XlJS zX!~G>eB^*5rlCSg(Vp${$FVuFVDmAfLbW(y$}}{aL80vR*0)tX@S**qoy9VmTy+gT z@h_E4Jth+D$m|NB+B|@ZWE}gR-wl=e>B$_n*mKQ3HG%|x|7(6#2JF}92w098e^&Nn zr=-!E!JdxNa)lZQw!2Eby&LF+0@=depy9Jj?@&}V)HI6XFl zo|0qVm~t`;!lo{T)Ja%ebGma^Yf`k*IawRS)z` z+4%RoPwIA#+$tD_aG~Ha$>zi7&tH=bvAcB@M|ykX3M7^fPm6)%cb=xu=j5BZ_-W2J zNGTq!+*k3WR#&RvjC_4RxzIeiEcJvgEdu6oz^B!XSdQ>VbJ|?@WPeb!_HR$U|6X{y zmuS}VOl!8aG>Z){D^*v0w@1cQX-P@U^0J4_o2RRko*X=gCyBRTHGGlrLp`L8nmSA- zP++Sr)xtarQe7obWg%@`TvF1vv-Wt@<@iC2*32zMwWlc z=+qp(rK?Ar48opjsw4KP>C0k6jHH(4=0!g5=C@aD9^4=pCC)oQf1&ZQqu&se{{DXa z6TB(7Kp06a^#>B01qf^d8vyg1X3238lD}Y!>pJDivy$dNZRpcrpim>!YOu^TRf|ek zVXpT}{TY?Hp12QT7Q=O23Zdj%dJPOE0hc$s85pRg=S;-RiQyBlp<#33J`{cpb@iOZ5EWc1iKASAw?FIuILaxUq6iZ7%ymS4MS>x-R>O zx8~+Ot2rL>{gtT8o+XO`hHbd$Tz_yG*RwWdd6ovByE3PCzY=Nn2H&~3D8^X~fI$l^ zFgv41CK=+)fWSZXdrYCMn#KT!>kPH! z^=Vss*d5x3lD{OkUoRy&n8u3Ap{sNBj(*Mab+pITZpoZ{L4rbW*ab{knXQP6Hb#Jt3& z2gcr?+<5I>CEc&wQWWf4fgiZs)%)4U?lI40WKS=t${MvvyX`5))C+qoPvedg>r?w>-=}iDt@zVjr z3WF!_De~?2MJJ`SR{Y3^;?&}Z<#JDAoGO&9Ka80E0L;H(hz-f&+R- z1n?gc$~zMtS3GvT@Y%6T=L$<&Khr+rt0VkwaC8)T4DC>Pb%!p^`g>&C$N*3qdvPv* zq@o&~^>WfFnABElC9ljp`Of9mQ=4vK#~W0`pid#xmAh_hfcQnIGb&FQB%M)%cDS7L z$Hr%Y_pha8Y{*=LH(YGp`x0qZ&gky&=DX68%g4N zM5k^{*=tQ1X7=>RiFM4HX-Ly`4)&Igk~l_Iii5dTzeJMoww%m7iyZ z${K4%y=OUzZ-zdvH%ji1|JZyamEm5Q>M4MY zM9T$>1qmcqZTfj!Y=Z|2jrh-r?X^x)&(G%}b`Akyg)Q>6h;+Rcx^F6g8CCS!8ad{t zaEg|eds&8I@0upEz7&yHYF{j1m|Qw$AH|(y`*WqLn1Iq2o9CH%C0J##I#s-!m(G@H z1x(ZBkfCPHFDJ0r{*22FJ_z=#zLa=?*Jz7W8vz*FCV(}J*`t69R2UgLPI3ChmwA5z$94IGQ|uQ8?b)=IwbTm|L%N{60WbAv_!=S_Q(Uw zfJ||c_upq`rfO&(qeu(i@DlzXc>wPetkcd^}HE-VhJIg6%k=7IHKL6RM(XmkZB49nO*N+mN$5bDkuxWip~+w$qXTAFo)m0zE~u z&6B6T^TwDrx%HUfHjcrMo)~2%R69MDac)m!>in|EtN|z+59~WbjkpX*l=W(i0R{r- zb}J|NBMJVOw;-PD_)Fg^Pm7d;dy~yW)k!&*FwH#*@W>SE5(@)M5yW#~Pt4dfuKHb} zZgs)PmkL7P|#`2 z%AIIhX={E}USUGvMNTIJmTn;0CQ7K7W*qVt`_KBvPpjIOgSOl7*1~os9o97g2Hhu? z|8XqPFOyv?d?0*0D0+@#e zk~ZP6ytv^aQnHc*%~ps)2v(54_<^$ z{{0?;(+S=BO}3S0TKQ~;;sJ-uscFXztT7(Ts!BgG+}PF(fg2%}S^y;*dO}5sg7i71 zEt;&X?0WjT{No+E5y(4-{hg&8xYM$FR>swxJU1wY?NxRD+Ety-Y8zljOS?hSvc9Zv zqSQM=!KS%A!W4x2H#`S=LDZa?K&0-J!0mWf`Pyx8a?{#53r?)>a2O24V($TEMoOlS zIPtG1c`Pra&fL-6hd$ry|IAYP`SaIC_-G2ISef!-FRXcT9^{dNdE>f6@&1gDc^SR` zxjV26`MTAAsIb0Kz$iuZHE_sbe=6AgvARshZJM!}8kb9>ES7y**&N2s9iW%wBQs-( zhKuQSRgusJ3f!E1=tr}eTCPllkn1r z)69g+?C^WLx?;U{|2PIu_@W`C-5>YDuIMNAWJYyDR3H_a*^37LG2XJ6XD6 z;6B>ernEL+FeO(ls5}42h#TmO`Hf=s5R^k70aqFXS{!`KH8mqDe-$&xDZSdl{}w>{ zAW=oZ2{6m?XJf*V^cTK2$Y61Wn!0E&JY9fV6_!Q!=vC(rsl8}NAzZD!K)S$k%sHqL zR$5Td{WY9>?~FPyF;J+8=!B7BzBojFfbI4_sVYiLH0kCH@f^A;ej^%~iX3bVgNj!F zR0yc}7>1voJc6}GJ6=M5QM;(9lZ+5P=HR=Bfs=6ySC3$zKlJa!q(9pL;R5ZB70^G+ z1R&C1K@zyQw3apq6xNPsX9hKq3n^lIyW7)bKtcy2Ih~EC6-k?>`HMRY0A3OH=qBBBvyQ z7c2tplyv#k6A)US0S6D&2E}Tgcc@QExsO}TCI<)HDl8wA>Fa`nRJ4>ek+eo9V;68iEVYHezVH}qP z`0_VX_R&W9`||me@=SCN)&+!qr+-ckKu7>c*y$n~HpH{Utn(^3+zzJLaXD@iPQH6* z6VJ(GD|7Wx@|E?v&+_OeLhC#b1a;2dQ)P?g)SL1Z;{O7gEcH56@zXcn5Yc<3ltBwz zZ@_cp-x>OFMUkn<_c70g&TG|}_1QruVBQ6oE5v|a20?Ct6qUOajfXX~z9v_Er$R^l@0^j*HAdEMgP<3v(0UZBcrGjPlamkIH6{I4Lut$o-f<@wt_ zF^5{JYIX1fWX8bbEKn%;s%ymYsjqK1)i{girpVzs1K*aw)=XHDPS^$8qaRPd4N8V= zR_QwGwbwltxN)vf4PZ-dAt+bKp(ranlQ(`>VR%}7f?F0=)+s6IZ=Olltht^q^<_spX)ngTzBet|Nfga=T_-{uk5zoG9zy0w7JepCH+fOsO;mFNkq7L*HB z#}d$W_&TGb*a0f86Lfz0l!oH0;Lysmj+Zzz^a1a^s(A0yrly|dS6rbrSP|gFa@(=T z0yj)V%20QJH;b)gu#tEZh}?YNYWnQQ19m@mVqTcu#VWO&eO$G<(?D^yuIj-#JS0Fg z`Q`29LN+w8C*OM(=7~S1+U!qQk=HMbhg^vY2-Xe&#%SbA`G{PQ(jMKozjX35*jQ(^ z+CijVKLv6LbVN2iy3GZ%nh+y&W8157O_n|14{I=Kg&dd{Z0}oDo#`1|sxHIswj5k2 zJxhFyVk0jfg0yfThlk%^JkBYLd?uLRlv1*c-%poa#Pjzh3ie9#)On%v^0@@vhMhQD z9GJVlxqp8|8wmXftghKR9G<~#jvgN?$=8zwprQ2m^YhsIdP0%}dbIm3zG5TkPe5*p zfTT9-+h@JVr)NW{@SZ&hI(|&(Hhxk?lzC9s$<2k8DIcWnNvT}7i<8C>VZezUv zJqJX9_F-m_3JPtohghllE!&!}E*EfG#qXu#*MUv;CBI_JK{6W*BJM*{W z^F8bLIai8=z*s%dh8&Y@f7}{t`lFeiUvP9BWI!M5!|?PFE*7O8T_cliarzjSjGr!=iVN6BDl%{I~>IFC!=f@gI}C zMz=BkbQM$zjz)4}9@4{a?+QWJ`$GL5NwZK+q1i`zx_&pvAV1)* zpq_Fc@X*6le*1k=IwU@x_hLFNC}OsT(q;T|O-=rTAveu-&B?@Jh{tJY&9={|(;q8HiAU@ak4m zYo|~x>p8wkWX5q3UAJ_yL+iropaIEI)j?)J@qTxAp9T>01`u%k73V5DTntH4V6Bqu zr`_N72~b!#D=N~P5^fdU;9AOEIY0x{M%+cJp+@oM$2_esX2+g+Un{LOb_opN%S|nA zR)W^s0!`V| zIZpY2Cw(?Ij}bQ@=d?iQGz(~tA%+H_5;Ir2x zV*A=kJv$&x;wR6yCApKXwA@CzBEylJBi&+x3TjA@nXRguGIw^qX!kvu%2Vas9xg9+ z5Ov&H4>*VE$btM`TzqUM3yQO}S8=Y+qqY=#;+tj~$DrJzbkcK%b=FY7P@NPdr+z*+ zCz+n*NdLwkxT6Us-jWo!$!m;Z^ZtHeBZ{2r1yX9`z_m(L^XLYDtKpe2UTJD2L+WO& z^Pj10JjJ>{Hu9F2&|~g&7>EHf3v7RJHrW1=Wh}|x@P26b>LlM@^~&1)!%8o+Z8xDU zH5wj{KT*-e0>^oag+)aMZU4RK8v;a$BZ+E>iqoz~MUTkc^qk&Q1D;yJnNh{bG1yup5%bqg0V(uyl-w#$_Iw8OVW}6w{Th=u?h$yOrHw_`WEpSCUZoH7$LV5290P*I z{^$5GubrKFBDz#WC&*ivzyz;ahK2kPA7Z<337xQUg=q?!0en&hIgLL(;(|3vUP0HD znJ+R6e&hBlyT2RjNoGMahHRl20FYS?_uZcGD@Z7OE*n)A3xDcPc$j}TeLv6e#>2laQf;2 zIz2=d2c=wFZ1mtg+COtJ{#^oQO5<)}CYBiS3{T6Awm$0+kV+&7GFxmu)~Hk8hKytbYibNqG#&8$?{C1`c?Q0Dr$pI-~@I%5iHdgE%uWk*B zrujNHM%Xz0CN^dc_S}lYcFi>X=Q)_{VgCpb`aP!o7_~R&A8ikMj)~+}@R45tR8+74 zF6b(9e>M>1CYrB0EnSg-P`mRf>bLE1`2>=SQ%Is7#zfHgK3$5rc=V4oAv5zSf$t6U ztH|CfpzWux!G0Q6F35J#EG=v5Nk}iO#>({x=yv!sX>0{{5fG7sI||2 z2Xdj?%~U$NNVPntdW(MEkk7TSq;qr0FR6ef)8d;VM`U7v=3DyJ0Ti2PUiI~QB^7i| zSlM*)V0IzTmJ4V;$|1_OBC9txMzowHXzU3~WZZIv>dv{Pnect<7s!%~f<^@-Qz#8@ ziB}>L9SC8JJc)Q*)#8z|qc}SxfMaSggC}{3&FCq=xoI0Bh5nNJQ)iV|j!9FFrJJMl z*c|5sj}H}49mk6(sQ{a|X8|mEHk@UJv@g)zdvEVm*Du_5A$0{J6acXQ<-=jr3#d?n zDT(hq28ZB6XQCIFSSX(TD70q$T*z_x@J8MRhYYaiKd}*rBEfsao_}=eng{P*HOhe- zUNB`Jrxm-&D;3h^K}p zLCp_Sq)h`ZEgDl}$P;gJ@=u7&;!TZ9G*j*2*l#PFWwEv5C`dluF`^`=rTkV~`{Am_ zGj#WFO(eGzRdsrv~nKtVfR7mugv5_U1# ztf4(i-Y#`~<|j`m!4#X=eFr@eT^vC1T4a(}Rol+hs(9ZC0Nqr=?bk3Y=TBKknhP|S zk5->rn@(>=NjC~1F_u38K}VDG?rlE3STknkgpjZlU}=EHy32nOU#Lr2OzZ%p(-@xs zz4Ya85=%N@ z?|v9{m;bJ&uHC+new5otUW~Jq`9_d8OVYF5dCHriU$5)gx}n~b_YlcLZ|SY|x#BQ4 zV36P+j4CXzvnC4ux!W&Bd2C59^>-LWM zAM#&g3nvsZWD%ba0uVQ8xuaac@Zw9&J&h`?#<~V=f$zz)ClGUc*=#^rmK}Tkv-3p@ zG}fc4%w(h1*4PaxEoFZ(sz;%)a1%WI6L1{l4a}BlTyI-yJQKyMaA}X_e~f(FVSW(x>EF)bAR8gcr*W9Gf{QH$$89-Qj* zc!hnMRHhL((5j%AYjfdX6_*e3^zpwprf1u7ndQtr%uKgz*up(1*C3Zdr&%6Qo3|Sr z{PYmpT1FEz_AU6QA`p^~c+NakchNe7XB9?plSAn>0cCL4@k0l~U@Ab_)AkQilT{6# zWwZKNsFl0SG|U)W!s^RDzw)oCaFo1v@1Ddb9IO{InvJZfePXE@(PFvA?lomctpj~T z3~;*M*EjL%7>tcM{%GWyZ;+(7@J`;t$c#Yzu|1Z3A1hy)b5ZJye2;Suc&G?1c2D9M zPM7iYhW7Y6{IJcF73zMc5*s9VTmO^$M%*k79o&koD_0OQ>pY2db(LI1H~uvGrfH{u z4`gQ)@S9}95hVxbA*ztJ)=@&{MuG3sS+1t(k}SS+pT0}^j{J%|GN%Jwa_u~=5-INB zCdV26apP3!s$0HBaYcUj*pBa%)E;*gSe?PCxbQ57kOTUFK(Q0K=XtJG(DH*E^8a{=F$v)f#|-?M#( z2ji}jakXW6%=<&3*XAVk^|pN{8voqxdq3jY*!FGr#zB6%ju7v*e(^{AJjEa5c++{7 zB@mM31a{SnvAnh08d?R;6+GF@UG^oM6kqO5ULKPN4@Qz%w0gGXhwwUHZiWnS>CZzx zVw%Jiwe@#vFq924yvOc-ccu^F3K!NS4W9dY!?r>3_5uo5a0*eW$Ph)C-oe{kY!Pat z)wDLOmb4;+mD@U+@7mo4I}O)RC$SIKbdwydKs#N0vXNh)WgpM=GQ878Czc3Lj9xw` z2UeN6E+CAXQNI&ym^#B+_QUktQj2Y8G;JVvBlEG#g*hKQH%m5e|M&M>MTl~D9frqY zzrNo%shg1+&WN$F+8V4aI8etjQ$4jfm_xYonOb z)w#;hsC&$J?5ls&kds5|rsGy7R5j*OK&m7+g-@r zp#qG8Ca${35eli0O5~7^$%d6LE?MCB?z^4fSKVr!Pg;3wd{@x}pU7v(pR&?2oh)}%uz)tHfW0bYM=Eu9+WRPG zb>On8Qgv0YM8#}22FmGXbDd_b!8^>mnm{rAJ2@3Rkmovl*m;_Rz)&K z21Wt5N==v^2D4fDpZE`^j0`2aP`C`EEEqW(`w{J!Pko7 z)L}s&sMEY={MeMtb$a@Ab3#efUUtHRWova6kBP;C5c|?&tKa=Z(AZ&Xt8ZKm?P80) z$!b;IP(mer*?)AF^mf~*T|~96cmKutWLMohw8&=v(rN4@cu&A8X@f`UlQIsal^$!l zxl3;9S|3SV{cF{(WaZZv7n76kJEY*WRv*r62oSaUA5?;jC~%#8UA0CEPg919d7qy% zNY^T_^yS$t+)~@5#gQfT-ImQMkQp6SPJb<(R&KctCc0`}zxZ8FW^clpu`@G8xUsp( za9_0XHt`qJX7clHg+*tZNcbyxe-Tj7b~aLby;NO>9fc)%_go%;P@T-|5KEAxM9l;YyzzE4@2vmL#v za~LlQ-gUF`W=t^o{^*|wBMh;O9Qqd!RT(kGduqx*y6Ve>1XOqw;ZYC_H>#6m3MQFQ zc}Qd#VKBdLm-*m+V)}E@hH38nlwtGXaP}RA1c)B+qJ9GYcS5P-#xzKOu-y+BpVswfZ&3S z&wNeKz~;`@T{+Tgc`(994v^Jod>F)>KQ+R}^%Q6v(ZZIqXJCT(p~vw)iNN?{p6__y%Yu zOt9BNv`S0zp#6d4ub{B@R_c_T$!dqaH0ZnDo?kp^c$YiJ-LEk1kS)$@ivIr$_5>(w z_%5aFNSq?1K4jPA94Sk68?w%@GC$O#^1je409YLEjVDR9`BFd zFZe#JEcCSbE{kRu9_)jU6rgz!Km{KGe-;W?ylhvRI83 zP8}{bn3>~!fKzNZrY##pOP8dPl*0~C1K6;&bXir$Vs(HnaDwV*6=}fPMtEE? zhcLZ|g27Yfn_I)7XGF~}9Hb&e`T~eV`Q~$Uga@Q?G9=l2TB)*ciFE&1GGc$Q6yS6u zRJL7P#89dD@J7TBI6WY`#D{`E=^y@g#QOE8@m@k{4Ce`^aXMohCHdpw*!uN3sWksz zd-whiRr&`2d#~kxNthD)yUk8Il!| zYwip?)@5ZvBA1j)F1h8N+kDU1@3u4JAK2G-KYlo`c{#7wnKPf~d4JCHobx=-G193X z%P>1B94)>}K!L5ZA#OrpG-)X}4V{@oXd=oPpj%*JL+|VfP3--+`c@%nI&R;;KGZa~ zDL<-iGZ>&R_ImkR))4PyFt-mkLq;}XsC)HqDKztMl{re-*uYLzj9*rf)~K}MrCa)` zhvcUsGlueS9q=onDj)AJU5dLK5~?fAd?K5<)kGI51i@B2!^SNv$DH$H5RTp*XLF1my z7S#VXQD-nyT<@CkxrI_E$lgugj4m}ugv6xkpQc4NHPU+qJH~_Om-_8S)C9}eI)w-Y z3C4)qv)hvjnX3`<;Cyl7>S9aPyDT)a;7B&!!H=_eTf>GW>CF6CjML}u-6l1sXhH7t zte25Z))fUID=pz_taGl!1sn)_Wls;asC#}u^Y>L4biPQu)FL&SXV`DCQ^V88rqd`< zD>`<0Yr*6q!{^Ak^*>KA??T%2-QDJXN{-d^4sXR${HOIg}u zyH~>x>>beg&irJ`UvFFb5;Z#_QaZ#vQSHn}MG@q8c>82~jz~qnNjTP_+O$04pQI#5 z^y5-+z~7#T&`q^?F-h{XB`p&~sKSwaUyim}g^*2@A(Ed4_PggZXB>irV3%ZkrBvh6 zxMviTpzrcO4usb78OqO-%`YO+t8q+G4pE-wv7gHQfMO)nkQVk)sK zwtUrLaHEDWFTX!!eIM@2qi#JS7L%u975)oh%zGB?Bnt6wiw zs8!9}!SINX$=-dvPQstiMN71wFcF858T`sBp)B|2HjniT8G=WV=3t4ui~-@!2Bl$c zy+D>e{=U$D8XKzEGuPXlnkKB%hB(EkN+wTFhy-azh?QI}31wNu?~jrrBrrzyd3mzk ze7qs~5}CuGkq|#uJ9KvP*QBXfzW21*>*)OnymKOvnNE`Fdn%3Oj+9pvtV)wYyGDmq zCH%JlcI+d*M}K?^JMX<~MY_wb`r_ayKom`6c@4u}0RJ zG>lBPgE7oS`vBgPwO4ppCKq?CGbu9y{Tx3ccB)_Fyb$L(lHGl+ieA-)hLbPkgH0dR zyStCA)I{*dMAF6Y3U0YJgiy+ni~CH@sS38omhwk)U9IkKG_53t`{nrLA+KgBzpG>` z#PuN5%F(;7I)#KrD&@zhm~Jt#H&u_^k?B*n)THgVlqX?82uYYF^~n>=2@^%|;3Eog zdb=81@bC0Z9OoSo?JtP-#jTojdOaF+mWh^jiEqtz`Cx6N5GExZlpT1E4vt%h+j72w0TybnS z$!E%tH3O|?qgN=HL+R>L9XGdCPJ2|oQlu@!l_hEPEF{bZ>OYA;ogwR=m421Rcj>e> z)@sGO*O*_qc&H9LonCgg|ZGo}{`c`&^pkfBiKIESs(;hYYY6NMxXw5j41 z>1Y$t5n-C|zD6XLbLowJ9L|CLN=lQdGMSH`SU<~jE)Pp}HQ&1+l|rJK>wSE^TlNW+ zulz?VS?Z4Si@!V5&keS-4*X}NQm!*dy`%7R6If%wEiGQ{rEG zuLC=c(Sk{u78j`AwlY4oOIaHIS+l2#*ZQKi4IQeMlU@#2#!l|j9=lIFuD7fnmg(B2 zygpoFVja`^Py;(zdv%Xo4sMth8eDTd?JVn%9!BxLWwd2|+uyU_X-+_fWmHw0cK!C0 zPHXu#0mVzjpejToxGh6=uWlFlx)AlgNC;$bZ02F`%Pyh-*0Vw$U zD-hd`JNV~X0Du3pg)@Y#0$BwVfC5ke3P1rU00p1`6o3Ly017|>C;$bZ02F`%Pyh-* z0Vn_kpa2wr0#E=7KmjNK1)u;FfC5ke3P1rU00p1`6o3Ly017|>C;$bZ;GeEwrdX$* z6NUWUT+4RM%Mwtuql9p5DER+Tz;FANDhkELsjsVb m5n8;^+J`RBKT-j~M|`RBw(h|FwM9lJSYOXrH%Hs<#(x0;_|QK9 literal 0 HcmV?d00001 From 4de4d02f2594939e3f6f952ca8a8e31825bfb5cb Mon Sep 17 00:00:00 2001 From: kcw-grunt Date: Sun, 24 May 2026 17:04:47 +0100 Subject: [PATCH 3/3] Changed schemes version bump --- .../brainwallet-Fran\303\247ais.xcscheme" | 4 +- .../xcschemes/brainwallet-Indonesian.xcscheme | 85 +++++++++++++++++++ .../xcschemes/brainwallet.xcscheme | 2 +- brainwallet.xcodeproj/project.pbxproj | 8 +- 4 files changed, 92 insertions(+), 7 deletions(-) create mode 100644 BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Indonesian.xcscheme diff --git "a/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Fran\303\247ais.xcscheme" "b/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Fran\303\247ais.xcscheme" index f62c2999..98abcd95 100644 --- "a/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Fran\303\247ais.xcscheme" +++ "b/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Fran\303\247ais.xcscheme" @@ -88,7 +88,7 @@ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" language = "fr" - region = "GB" + region = "FR" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" @@ -106,7 +106,7 @@ diff --git a/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Indonesian.xcscheme b/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Indonesian.xcscheme new file mode 100644 index 00000000..4b15534e --- /dev/null +++ b/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet-Indonesian.xcscheme @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet.xcscheme b/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet.xcscheme index 150fa4b4..23c19487 100644 --- a/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet.xcscheme +++ b/BrainwalletHybrid.xcworkspace/xcshareddata/xcschemes/brainwallet.xcscheme @@ -106,7 +106,7 @@ referenceType = "1"> + identifier = "../Private/general-purpose/BrainwalletiOSPrivateGeneralPurpose/brainwallet-private-general-purpose.storekit">