From 5561d1bacf7a1b3f279fd13d069e8562f74466fb Mon Sep 17 00:00:00 2001 From: Teezy Date: Sun, 19 Nov 2023 17:08:01 -0700 Subject: [PATCH 01/19] =?UTF-8?q?Added=20template=20onboarding=20files?= =?UTF-8?q?=F0=9F=97=BF=20Signed-off-by:=20Morteza=20Faraji=20teezy10299@g?= =?UTF-8?q?mail.com?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Rethread/.DS_Store | Bin 0 -> 6148 bytes Rethread/Rethread.xcodeproj/project.pbxproj | 28 +- .../UserInterfaceState.xcuserstate | Bin 0 -> 22671 bytes .../xcschemes/xcschememanagement.plist | 14 + Rethread/Rethread/ContentView.swift | 24 -- Rethread/Rethread/IntroView.swift | 26 ++ Rethread/Rethread/OnboardingApp.swift | 12 + Rethread/Rethread/OnboardingView.swift | 304 ++++++++++++++++++ Rethread/Rethread/ProfileView.swift | 28 ++ Rethread/Rethread/RethreadApp.swift | 17 - 10 files changed, 404 insertions(+), 49 deletions(-) create mode 100644 Rethread/.DS_Store create mode 100644 Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/mortezafaraji.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 Rethread/Rethread.xcodeproj/xcuserdata/mortezafaraji.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 Rethread/Rethread/ContentView.swift create mode 100644 Rethread/Rethread/IntroView.swift create mode 100644 Rethread/Rethread/OnboardingApp.swift create mode 100644 Rethread/Rethread/OnboardingView.swift create mode 100644 Rethread/Rethread/ProfileView.swift delete mode 100644 Rethread/Rethread/RethreadApp.swift diff --git a/Rethread/.DS_Store b/Rethread/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..aaf863c0c94d4b2367c7c635d32fad3904bd3aa7 GIT binary patch literal 6148 zcmeHKy-EZz5T4O17HkeH%YeObZ;(6I7jRn(z1zb>_Q)a%mT7E!1K-BRckpriCNs({ zZgE(M$P6UkY%*VdKG-BfM7(%tXGBvXs!#-3oDq}e(XImvo&dRwaYt*qrk2j=ab%#s z*d%K|rVFh5o;I|*{uL$cWKBI<6Ww+8<9WnbPl)%CJVOT<_2&FN+L^fuq0 z+y0o_Z+6%FiYeV(0aw5ka0Og}q5$q}vFb?CYgfP(a0R{;knyY{>`P%%8~%m)S9XDB;9W(Q8-0 z6&NaTsGn20|IhKuj3)U*ihsERuE0N2fG2fRFR&@QTfc2j?%IHIg(4<#SsWPr!6N`4 ha*mvoPVEokBQ6?dMHxlf3mxbWfg*@kuD~xS@Bt&yKKcLv literal 0 HcmV?d00001 diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 3152e62..ba77927 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -7,8 +7,10 @@ objects = { /* Begin PBXBuildFile section */ - 983286B52B05698E00851B19 /* RethreadApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286B42B05698E00851B19 /* RethreadApp.swift */; }; - 983286B72B05698E00851B19 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286B62B05698E00851B19 /* ContentView.swift */; }; + 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */; }; + 7C3A04B72B0AD9DF00E36883 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */; }; + 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */; }; + 7C3A04B92B0AD9DF00E36883 /* ProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */; }; 983286B92B05698F00851B19 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286B82B05698F00851B19 /* Assets.xcassets */; }; 983286BC2B05698F00851B19 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286BB2B05698F00851B19 /* Preview Assets.xcassets */; }; 983286C62B05698F00851B19 /* RethreadTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286C52B05698F00851B19 /* RethreadTests.swift */; }; @@ -34,9 +36,11 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IntroView.swift; sourceTree = ""; }; + 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; + 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingApp.swift; sourceTree = ""; }; + 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ProfileView.swift; sourceTree = ""; }; 983286B12B05698E00851B19 /* Rethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rethread.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 983286B42B05698E00851B19 /* RethreadApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RethreadApp.swift; sourceTree = ""; }; - 983286B62B05698E00851B19 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; 983286B82B05698F00851B19 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 983286BB2B05698F00851B19 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; 983286C12B05698F00851B19 /* RethreadTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RethreadTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -94,8 +98,10 @@ 983286B32B05698E00851B19 /* Rethread */ = { isa = PBXGroup; children = ( - 983286B42B05698E00851B19 /* RethreadApp.swift */, - 983286B62B05698E00851B19 /* ContentView.swift */, + 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, + 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */, + 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */, + 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */, 983286B82B05698F00851B19 /* Assets.xcassets */, 983286BA2B05698F00851B19 /* Preview Content */, ); @@ -195,6 +201,7 @@ TargetAttributes = { 983286B02B05698E00851B19 = { CreatedOnToolsVersion = 15.0.1; + LastSwiftMigration = 1500; }; 983286C02B05698F00851B19 = { CreatedOnToolsVersion = 15.0.1; @@ -257,8 +264,10 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 983286B72B05698E00851B19 /* ContentView.swift in Sources */, - 983286B52B05698E00851B19 /* RethreadApp.swift in Sources */, + 7C3A04B92B0AD9DF00E36883 /* ProfileView.swift in Sources */, + 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, + 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, + 7C3A04B72B0AD9DF00E36883 /* OnboardingView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -419,6 +428,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"Rethread/Preview Content\""; @@ -437,6 +447,7 @@ PRODUCT_BUNDLE_IDENTIFIER = techstart.Rethread; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; }; @@ -447,6 +458,7 @@ buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"Rethread/Preview Content\""; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/mortezafaraji.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/mortezafaraji.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..b5e369f8ccb41d1322db0db3be3cef39a561e34a GIT binary patch literal 22671 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 huR2imLe + + + + SchemeUserState + + Rethread.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/Rethread/Rethread/ContentView.swift b/Rethread/Rethread/ContentView.swift deleted file mode 100644 index adf068e..0000000 --- a/Rethread/Rethread/ContentView.swift +++ /dev/null @@ -1,24 +0,0 @@ -// -// ContentView.swift -// Rethread -// -// Created by Parsa Kargari on 2023-11-15. -// - -import SwiftUI - -struct ContentView: View { - var body: some View { - VStack { - Image(systemName: "globe") - .imageScale(.large) - .foregroundStyle(.tint) - Text("Hello, world!") - } - .padding() - } -} - -#Preview { - ContentView() -} diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift new file mode 100644 index 0000000..c7c66c9 --- /dev/null +++ b/Rethread/Rethread/IntroView.swift @@ -0,0 +1,26 @@ +// IntroView.swift + +import SwiftUI + +struct IntroView: View { + + @AppStorage("signed_in") var currentUserSignedIn: Bool = false + + var body: some View { + ZStack { + RadialGradient (colors: [Color(#colorLiteral(red: 0.2196078449, green: 0.007843137719, blue: 0.8549019694, alpha: 1)),Color(#colorLiteral(red: 0.1411764771, green: 0.3960784376, blue: 0.5647059083, alpha: 1))], center: .topLeading, startRadius: 5, endRadius: 500) + .ignoresSafeArea() + + if currentUserSignedIn { + ProfileView() + } + else { + OnboardingView() + } + } + } +} + +#Preview { + IntroView() +} diff --git a/Rethread/Rethread/OnboardingApp.swift b/Rethread/Rethread/OnboardingApp.swift new file mode 100644 index 0000000..df6ec78 --- /dev/null +++ b/Rethread/Rethread/OnboardingApp.swift @@ -0,0 +1,12 @@ +// OnboardingApp.swift + +import SwiftUI + +@main +struct OnboardingApp: App { + var body: some Scene { + WindowGroup { + IntroView() + } + } +} diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift new file mode 100644 index 0000000..47a1c43 --- /dev/null +++ b/Rethread/Rethread/OnboardingView.swift @@ -0,0 +1,304 @@ +// ContentView.swift + +import SwiftUI + +struct OnboardingView: View { + // Onboarding state + + @State var onboaringState: Int = 0 + let transition: AnyTransition = .asymmetric( + insertion: .move(edge: .trailing), + removal: .move(edge: .leading)) + + var body: some View { + ZStack { + ZStack { + switch onboaringState { + case 0: + welcomeSection + .transition(transition) + case 1: + addGenderSection + .transition(transition) + case 2: + howOftenSection + .transition(transition) + case 3: + howMuchSection + .transition(transition) + default: + RoundedRectangle(cornerRadius: 25.0) + .foregroundStyle(.red) + } + } + + VStack { + Spacer() + bottomButton + } + .padding(30) + } + .background(.purple) + } +} + +#Preview { + OnboardingView() +} + +// MARK: COMPONENTS + +extension OnboardingView { + + private var bottomButton: some View { + Text(onboaringState == 0 ? "Get Started" : + onboaringState == 3 ? "Finish" : + "Next" + ) + .font(.title) + .fontWeight(.semibold) + .foregroundColor(.purple) + .frame(height: 55) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 12) + .onTapGesture { + handleNextButtonPressed() + } + } + + private var welcomeSection: some View { + VStack { + Spacer() + Text("Hey! \nWelcome to Fashion App.\n") + Image(systemName: "tshirt.fill") + .resizable() + .scaledToFit() + .frame(width: 200, height: 200, alignment: .center) + Text("Discover low priced and sustainable fashion") + Spacer() + Spacer() + } + .font(.title) + .foregroundStyle(.white) + } + + private var addGenderSection: some View { + VStack(spacing: 40) { + Spacer() + Text("Whats your gender?") + .padding(.top, 60) + .font(.largeTitle) + .foregroundStyle(.white) + .fontWeight(.semibold) + Text ("๐Ÿงโ€โ™‚๏ธMale") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding(.leading, 20) + .padding(.trailing, 20) + Text ("๐Ÿงโ€โ™€๏ธFemale") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding(.leading, 20) + .padding(.trailing, 20) + Text ("๐ŸงNon-Binary") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding(.leading, 20) + .padding(.trailing, 20) + Text ("โ“Other") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding(.leading, 20) + .padding(.trailing, 20) + Spacer() + Spacer() + Spacer() + } + } + + private var howOftenSection: some View { + VStack { + Spacer() + Text("How often do you buy clothes?") + .font(.largeTitle) + .fontWeight(.semibold) + .foregroundStyle(.white) + .multilineTextAlignment(.center) + Text ("๐Ÿ’ค 1-3 times a year") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿค Every 2-3 months") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿ”„ 1-2 times a month") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿ’… 3-4 times a month") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿ›๏ธ 5+ times a month") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + Spacer() + Spacer() + Spacer() + Spacer() + Spacer() + + + } + } + + private var howMuchSection: some View { + + VStack { + Spacer() + + Text("How much do you spend on clothes?") + .font(.largeTitle) + .fontWeight(.semibold) + .foregroundStyle(.white) + .multilineTextAlignment(.center) + .padding() + Text ("๐Ÿ˜ž๐Ÿ’ฐ $0 - $100") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿฅบ $100 - $300") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿคทโ€โ™‚๏ธ๐Ÿ’ธ $300 - $500") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿ’ธ $500 - $800") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + + Text ("๐Ÿ‘‘ $800+") + .frame(height: 55, alignment: .leading) + .font(.title) + .fontWeight(.medium) + .foregroundColor(.purple) + .frame(maxWidth: .infinity) + .background(.white) + .cornerRadius(10) + .padding([.leading, .trailing], 20) + .padding(.top, 30) + Spacer() + Spacer() + Spacer() + Spacer() + + } + } +} + +// MARK: FUNCTIONS + +extension OnboardingView { + + func handleNextButtonPressed() { + + if onboaringState == 3 { + // sign in + } + else { + withAnimation(.spring()) { + onboaringState += 1 + } + } + } +} diff --git a/Rethread/Rethread/ProfileView.swift b/Rethread/Rethread/ProfileView.swift new file mode 100644 index 0000000..d44514a --- /dev/null +++ b/Rethread/Rethread/ProfileView.swift @@ -0,0 +1,28 @@ +// ProfileView.swift + +import SwiftUI + +struct ProfileView: View { + var body: some View { + VStack { + Image(systemName: "person.circle.fill") + .resizable() + .scaledToFit() + .frame(width: 150, height: 150) + .padding() + Text("Name: Rashan Drippy") + Text("Age: 3") + Text("Is very sustainable ") + } + .foregroundStyle(.purple) + .font(.title) + .padding() + .background(.white) + .clipShape(RoundedRectangle(cornerRadius: 10)) + .shadow(radius: 10) + } +} + +#Preview { + ProfileView() +} diff --git a/Rethread/Rethread/RethreadApp.swift b/Rethread/Rethread/RethreadApp.swift deleted file mode 100644 index 7c94105..0000000 --- a/Rethread/Rethread/RethreadApp.swift +++ /dev/null @@ -1,17 +0,0 @@ -// -// RethreadApp.swift -// Rethread -// -// Created by Parsa Kargari on 2023-11-15. -// - -import SwiftUI - -@main -struct RethreadApp: App { - var body: some Scene { - WindowGroup { - ContentView() - } - } -} From 55b448c90035a5d6bc2c8db93a96cfe9aaf43d5a Mon Sep 17 00:00:00 2001 From: MortezaFa Date: Tue, 21 Nov 2023 17:05:37 -0700 Subject: [PATCH 02/19] Cleaned up spacers and changed onboardingState to enumeration --- Rethread/Rethread/OnboardingView.swift | 76 ++++++++++---------------- 1 file changed, 28 insertions(+), 48 deletions(-) diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index 47a1c43..861326c 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -5,38 +5,41 @@ import SwiftUI struct OnboardingView: View { // Onboarding state - @State var onboaringState: Int = 0 + enum Section: CaseIterable { + case welcome, gender, clothingFrequency, spendingFrequency + var next: Section? { + let index = Self.allCases.firstIndex(of: self)! + 1 + guard index < Self.allCases.count else { + return nil + } + return Self.allCases[index] + } + } + + @State var onboaringState = Section.welcome let transition: AnyTransition = .asymmetric( insertion: .move(edge: .trailing), removal: .move(edge: .leading)) var body: some View { - ZStack { - ZStack { - switch onboaringState { - case 0: + VStack { + Group { + switch onboaringState { + case .welcome: welcomeSection - .transition(transition) - case 1: + case .gender: addGenderSection - .transition(transition) - case 2: + case .clothingFrequency: howOftenSection - .transition(transition) - case 3: + case .spendingFrequency: howMuchSection - .transition(transition) - default: - RoundedRectangle(cornerRadius: 25.0) - .foregroundStyle(.red) } } + .frame(maxWidth: .infinity, maxHeight: .infinity) + .transition(transition) - VStack { - Spacer() - bottomButton - } - .padding(30) + bottomButton + .padding(30) } .background(.purple) } @@ -51,8 +54,8 @@ struct OnboardingView: View { extension OnboardingView { private var bottomButton: some View { - Text(onboaringState == 0 ? "Get Started" : - onboaringState == 3 ? "Finish" : + Text(onboaringState == .welcome ? "Get Started" : + onboaringState == Section.allCases.last ? "Finish" : "Next" ) .font(.title) @@ -70,15 +73,12 @@ extension OnboardingView { private var welcomeSection: some View { VStack { - Spacer() Text("Hey! \nWelcome to Fashion App.\n") Image(systemName: "tshirt.fill") .resizable() .scaledToFit() .frame(width: 200, height: 200, alignment: .center) Text("Discover low priced and sustainable fashion") - Spacer() - Spacer() } .font(.title) .foregroundStyle(.white) @@ -86,7 +86,6 @@ extension OnboardingView { private var addGenderSection: some View { VStack(spacing: 40) { - Spacer() Text("Whats your gender?") .padding(.top, 60) .font(.largeTitle) @@ -132,15 +131,11 @@ extension OnboardingView { .cornerRadius(10) .padding(.leading, 20) .padding(.trailing, 20) - Spacer() - Spacer() - Spacer() } } private var howOftenSection: some View { VStack { - Spacer() Text("How often do you buy clothes?") .font(.largeTitle) .fontWeight(.semibold) @@ -201,21 +196,12 @@ extension OnboardingView { .cornerRadius(10) .padding([.leading, .trailing], 20) .padding(.top, 30) - Spacer() - Spacer() - Spacer() - Spacer() - Spacer() - - } } private var howMuchSection: some View { VStack { - Spacer() - Text("How much do you spend on clothes?") .font(.largeTitle) .fontWeight(.semibold) @@ -277,11 +263,6 @@ extension OnboardingView { .cornerRadius(10) .padding([.leading, .trailing], 20) .padding(.top, 30) - Spacer() - Spacer() - Spacer() - Spacer() - } } } @@ -292,12 +273,11 @@ extension OnboardingView { func handleNextButtonPressed() { - if onboaringState == 3 { + if onboaringState == Section.allCases.last { // sign in - } - else { + } else { withAnimation(.spring()) { - onboaringState += 1 + onboaringState = onboaringState.next ?? Section.allCases.last! } } } From 6587ecfd5c2aed75ee4796b2610118f9b811d68b Mon Sep 17 00:00:00 2001 From: MortezaFa Date: Wed, 22 Nov 2023 19:32:27 -0700 Subject: [PATCH 03/19] Made onboarding buttons selectable and added an alert if user selects nothing. --- Rethread/Rethread.xcodeproj/project.pbxproj | 48 ++++ Rethread/Rethread/Extensions/Codable.swift | 21 ++ Rethread/Rethread/IntroView.swift | 3 +- .../Rethread/Models/ClothingFrequency.swift | 26 ++ Rethread/Rethread/Models/Gender.swift | 22 ++ Rethread/Rethread/Models/Profile.swift | 10 + .../Rethread/Models/SpendingFrequency.swift | 26 ++ Rethread/Rethread/OnboardingView.swift | 253 +++++------------- .../Styles/OnboardingButtonStyle.swift | 24 ++ 9 files changed, 252 insertions(+), 181 deletions(-) create mode 100644 Rethread/Rethread/Extensions/Codable.swift create mode 100644 Rethread/Rethread/Models/ClothingFrequency.swift create mode 100644 Rethread/Rethread/Models/Gender.swift create mode 100644 Rethread/Rethread/Models/Profile.swift create mode 100644 Rethread/Rethread/Models/SpendingFrequency.swift create mode 100644 Rethread/Rethread/Styles/OnboardingButtonStyle.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index ba77927..4221a33 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -11,6 +11,12 @@ 7C3A04B72B0AD9DF00E36883 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */; }; 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */; }; 7C3A04B92B0AD9DF00E36883 /* ProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */; }; + 7C66432F2B0EE7F100B1B327 /* ClothingFrequency.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C66432E2B0EE7F100B1B327 /* ClothingFrequency.swift */; }; + 7C6643312B0EEBA900B1B327 /* SpendingFrequency.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C6643302B0EEBA900B1B327 /* SpendingFrequency.swift */; }; + 7C9AA2CE2B0EC04D00EF6F36 /* Gender.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2CD2B0EC04D00EF6F36 /* Gender.swift */; }; + 7C9AA2D02B0EC1E100EF6F36 /* Profile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2CF2B0EC1E100EF6F36 /* Profile.swift */; }; + 7C9AA2D32B0EC3D300EF6F36 /* Codable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2D22B0EC3D300EF6F36 /* Codable.swift */; }; + 7C9AA2D62B0ECAF900EF6F36 /* OnboardingButtonStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2D52B0ECAF900EF6F36 /* OnboardingButtonStyle.swift */; }; 983286B92B05698F00851B19 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286B82B05698F00851B19 /* Assets.xcassets */; }; 983286BC2B05698F00851B19 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286BB2B05698F00851B19 /* Preview Assets.xcassets */; }; 983286C62B05698F00851B19 /* RethreadTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286C52B05698F00851B19 /* RethreadTests.swift */; }; @@ -40,6 +46,12 @@ 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingApp.swift; sourceTree = ""; }; 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ProfileView.swift; sourceTree = ""; }; + 7C66432E2B0EE7F100B1B327 /* ClothingFrequency.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClothingFrequency.swift; sourceTree = ""; }; + 7C6643302B0EEBA900B1B327 /* SpendingFrequency.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpendingFrequency.swift; sourceTree = ""; }; + 7C9AA2CD2B0EC04D00EF6F36 /* Gender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Gender.swift; sourceTree = ""; }; + 7C9AA2CF2B0EC1E100EF6F36 /* Profile.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Profile.swift; sourceTree = ""; }; + 7C9AA2D22B0EC3D300EF6F36 /* Codable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Codable.swift; sourceTree = ""; }; + 7C9AA2D52B0ECAF900EF6F36 /* OnboardingButtonStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingButtonStyle.swift; sourceTree = ""; }; 983286B12B05698E00851B19 /* Rethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rethread.app; sourceTree = BUILT_PRODUCTS_DIR; }; 983286B82B05698F00851B19 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 983286BB2B05698F00851B19 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; @@ -75,6 +87,33 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 7C9AA2CC2B0EC02600EF6F36 /* Models */ = { + isa = PBXGroup; + children = ( + 7C9AA2CD2B0EC04D00EF6F36 /* Gender.swift */, + 7C9AA2CF2B0EC1E100EF6F36 /* Profile.swift */, + 7C66432E2B0EE7F100B1B327 /* ClothingFrequency.swift */, + 7C6643302B0EEBA900B1B327 /* SpendingFrequency.swift */, + ); + path = Models; + sourceTree = ""; + }; + 7C9AA2D12B0EC3BC00EF6F36 /* Extensions */ = { + isa = PBXGroup; + children = ( + 7C9AA2D22B0EC3D300EF6F36 /* Codable.swift */, + ); + path = Extensions; + sourceTree = ""; + }; + 7C9AA2D42B0ECADF00EF6F36 /* Styles */ = { + isa = PBXGroup; + children = ( + 7C9AA2D52B0ECAF900EF6F36 /* OnboardingButtonStyle.swift */, + ); + path = Styles; + sourceTree = ""; + }; 983286A82B05698E00851B19 = { isa = PBXGroup; children = ( @@ -98,6 +137,9 @@ 983286B32B05698E00851B19 /* Rethread */ = { isa = PBXGroup; children = ( + 7C9AA2D42B0ECADF00EF6F36 /* Styles */, + 7C9AA2D12B0EC3BC00EF6F36 /* Extensions */, + 7C9AA2CC2B0EC02600EF6F36 /* Models */, 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */, 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */, @@ -265,8 +307,14 @@ buildActionMask = 2147483647; files = ( 7C3A04B92B0AD9DF00E36883 /* ProfileView.swift in Sources */, + 7C9AA2D02B0EC1E100EF6F36 /* Profile.swift in Sources */, + 7C6643312B0EEBA900B1B327 /* SpendingFrequency.swift in Sources */, + 7C9AA2CE2B0EC04D00EF6F36 /* Gender.swift in Sources */, 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, + 7C66432F2B0EE7F100B1B327 /* ClothingFrequency.swift in Sources */, + 7C9AA2D32B0EC3D300EF6F36 /* Codable.swift in Sources */, 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, + 7C9AA2D62B0ECAF900EF6F36 /* OnboardingButtonStyle.swift in Sources */, 7C3A04B72B0AD9DF00E36883 /* OnboardingView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Rethread/Rethread/Extensions/Codable.swift b/Rethread/Rethread/Extensions/Codable.swift new file mode 100644 index 0000000..e4ef53e --- /dev/null +++ b/Rethread/Rethread/Extensions/Codable.swift @@ -0,0 +1,21 @@ +// Codable.swift + +import Foundation + +public protocol StorageCodable: Codable, RawRepresentable {} + +extension StorageCodable { + init?(rawValue: String) { + guard let data = rawValue.data(using: .utf8), let result = try? JSONDecoder().decode(Self.self, from: data) else { return nil } + self = result + } + + var rawValue: String { + guard let data = try? JSONEncoder().encode(self), let result = String(data: data, encoding: .utf8) else { return "" } + return result + } +} + +extension Profile: StorageCodable { + +} diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift index c7c66c9..3a9ecda 100644 --- a/Rethread/Rethread/IntroView.swift +++ b/Rethread/Rethread/IntroView.swift @@ -13,8 +13,7 @@ struct IntroView: View { if currentUserSignedIn { ProfileView() - } - else { + } else { OnboardingView() } } diff --git a/Rethread/Rethread/Models/ClothingFrequency.swift b/Rethread/Rethread/Models/ClothingFrequency.swift new file mode 100644 index 0000000..e1d49f2 --- /dev/null +++ b/Rethread/Rethread/Models/ClothingFrequency.swift @@ -0,0 +1,26 @@ +// ClothingFrequency.swift + +import Foundation + +enum ClothingFrequency: CaseIterable, Codable, Identifiable, Hashable { + case leastfreq, secondleastfreq, thirdleastfreq, fourthleastfreq, mostfreq + var id: Self { + self + } + var clothingFreqDispalyString: String { + switch self { + case .leastfreq: + "๐Ÿ’ค 1-3 times a year" + case .secondleastfreq: + "๐Ÿค Every 2-3 months" + case .thirdleastfreq: + "๐Ÿ”„ 1-2 times a month" + case .fourthleastfreq: + "๐Ÿ’… 3-4 times a month" + case .mostfreq: + "๐Ÿ›๏ธ 5+ times a month" + } + } +} + + diff --git a/Rethread/Rethread/Models/Gender.swift b/Rethread/Rethread/Models/Gender.swift new file mode 100644 index 0000000..8258123 --- /dev/null +++ b/Rethread/Rethread/Models/Gender.swift @@ -0,0 +1,22 @@ +// Gender.swift + +import Foundation + +enum Gender: CaseIterable, Codable, Identifiable, Hashable { + case male, female, nonbinary, other + var id: Self { + self + } + var displayString: String { + switch self { + case .male: + "๐Ÿงโ€โ™‚๏ธMale" + case .female: + "๐Ÿงโ€โ™€๏ธFemale" + case .nonbinary: + "๐ŸงNon-Binary" + case .other: + "โ“Other" + } + } +} diff --git a/Rethread/Rethread/Models/Profile.swift b/Rethread/Rethread/Models/Profile.swift new file mode 100644 index 0000000..a4eee9d --- /dev/null +++ b/Rethread/Rethread/Models/Profile.swift @@ -0,0 +1,10 @@ +// Profile.swift + +import Foundation + +struct Profile: Codable { + var gender: Gender? + var clothingFreq: ClothingFrequency? + var spendingFreq: SpendingFrequency? + +} diff --git a/Rethread/Rethread/Models/SpendingFrequency.swift b/Rethread/Rethread/Models/SpendingFrequency.swift new file mode 100644 index 0000000..c0cdd4f --- /dev/null +++ b/Rethread/Rethread/Models/SpendingFrequency.swift @@ -0,0 +1,26 @@ +// SpendingFrequency.swift + +import Foundation + +enum SpendingFrequency: CaseIterable, Codable, Identifiable, Hashable { + case leastspending, secondleastspending, thirstleastspending, fourthleastspending, mostspending + var id: Self { + self + } + + var spendingDisplayString: String { + switch self { + + case .leastspending: + "๐Ÿ˜ž๐Ÿ’ฐ $0 - $100" + case .secondleastspending: + "๐Ÿฅบ $100 - $300" + case .thirstleastspending: + "๐Ÿคทโ€โ™‚๏ธ๐Ÿ’ธ $300 - $500" + case .fourthleastspending: + "๐Ÿ’ธ $500 - $800" + case .mostspending: + "๐Ÿ‘‘ $800+" + } + } +} diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index 861326c..2c072cc 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -16,15 +16,14 @@ struct OnboardingView: View { } } - @State var onboaringState = Section.welcome - let transition: AnyTransition = .asymmetric( - insertion: .move(edge: .trailing), - removal: .move(edge: .leading)) + @State private var section = Section.welcome + @State private var profile = Profile() + @State private var isDisplayingAlert = false var body: some View { VStack { Group { - switch onboaringState { + switch section { case .welcome: welcomeSection case .gender: @@ -36,12 +35,23 @@ struct OnboardingView: View { } } .frame(maxWidth: .infinity, maxHeight: .infinity) - .transition(transition) + .transition(.asymmetric( + insertion: .move(edge: .trailing), + removal: .move(edge: .leading) + )) bottomButton .padding(30) } .background(.purple) + .alert("Oops!", isPresented: $isDisplayingAlert) { + Button("Ok") { + + } + } message: { + Text("You need to select an option before continuing.") + } + } } @@ -53,27 +63,19 @@ struct OnboardingView: View { extension OnboardingView { - private var bottomButton: some View { - Text(onboaringState == .welcome ? "Get Started" : - onboaringState == Section.allCases.last ? "Finish" : - "Next" - ) - .font(.title) - .fontWeight(.semibold) - .foregroundColor(.purple) - .frame(height: 55) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 12) - .onTapGesture { - handleNextButtonPressed() - } + @ViewBuilder private var bottomButton: some View { + let text = section == .welcome ? "Get Started" : section == Section.allCases.last ? "Finish" : "Next" + Button(text) { + handleNextButtonPressed() + } + .buttonStyle(.onboarding) + .tint(.white) + .foregroundStyle(.purple) } private var welcomeSection: some View { VStack { - Text("Hey! \nWelcome to Fashion App.\n") + Text("Hey! \nWelcome to ReThread.\n") Image(systemName: "tshirt.fill") .resizable() .scaledToFit() @@ -85,185 +87,66 @@ extension OnboardingView { } private var addGenderSection: some View { - VStack(spacing: 40) { + VStack(spacing: 16) { Text("Whats your gender?") - .padding(.top, 60) .font(.largeTitle) .foregroundStyle(.white) .fontWeight(.semibold) - Text ("๐Ÿงโ€โ™‚๏ธMale") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding(.leading, 20) - .padding(.trailing, 20) - Text ("๐Ÿงโ€โ™€๏ธFemale") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding(.leading, 20) - .padding(.trailing, 20) - Text ("๐ŸงNon-Binary") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding(.leading, 20) - .padding(.trailing, 20) - Text ("โ“Other") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding(.leading, 20) - .padding(.trailing, 20) + + ForEach(Gender.allCases) { gender in + let isSelected = gender == profile.gender + Button(gender.displayString) { + profile.gender = gender + } + .buttonStyle(.onboarding) + .foregroundColor(isSelected ? .white : .purple) + .tint(isSelected ? .red : .white) + } } + .padding(.horizontal, 20) } private var howOftenSection: some View { - VStack { + VStack(spacing: 16) { Text("How often do you buy clothes?") .font(.largeTitle) .fontWeight(.semibold) .foregroundStyle(.white) .multilineTextAlignment(.center) - Text ("๐Ÿ’ค 1-3 times a year") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) - - Text ("๐Ÿค Every 2-3 months") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - - .padding([.leading, .trailing], 20) - .padding(.top, 30) - Text ("๐Ÿ”„ 1-2 times a month") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) - - Text ("๐Ÿ’… 3-4 times a month") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) - - Text ("๐Ÿ›๏ธ 5+ times a month") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) + ForEach(ClothingFrequency.allCases) { clothingFreq in + let isSelected = clothingFreq == profile.clothingFreq + Button(clothingFreq.clothingFreqDispalyString) { + profile.clothingFreq = clothingFreq + } + .buttonStyle(.onboarding) + .foregroundColor(isSelected ? .white : .purple) + .tint(isSelected ? .red : .white) + } + .padding(.horizontal, 20) } } private var howMuchSection: some View { - - VStack { + VStack(spacing: 16) { Text("How much do you spend on clothes?") .font(.largeTitle) .fontWeight(.semibold) .foregroundStyle(.white) .multilineTextAlignment(.center) .padding() - Text ("๐Ÿ˜ž๐Ÿ’ฐ $0 - $100") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) - - Text ("๐Ÿฅบ $100 - $300") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - - .padding([.leading, .trailing], 20) - .padding(.top, 30) - - Text ("๐Ÿคทโ€โ™‚๏ธ๐Ÿ’ธ $300 - $500") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) - - Text ("๐Ÿ’ธ $500 - $800") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) - Text ("๐Ÿ‘‘ $800+") - .frame(height: 55, alignment: .leading) - .font(.title) - .fontWeight(.medium) - .foregroundColor(.purple) - .frame(maxWidth: .infinity) - .background(.white) - .cornerRadius(10) - .padding([.leading, .trailing], 20) - .padding(.top, 30) + ForEach(SpendingFrequency.allCases) { spending in + let isSelected = spending == profile.spendingFreq + Button(spending.spendingDisplayString) { + profile.spendingFreq = spending + } + .buttonStyle(.onboarding) + .foregroundColor(isSelected ? .white : .purple) + .tint(isSelected ? .red : .white) + } } + .padding(.horizontal, 20) } } @@ -271,13 +154,25 @@ extension OnboardingView { extension OnboardingView { - func handleNextButtonPressed() { + var hasSelectedOption: Bool { + switch section { + case .welcome: true + case .gender: profile.gender != nil + case .clothingFrequency: profile.clothingFreq != nil + case .spendingFrequency: profile.spendingFreq != nil + } + } - if onboaringState == Section.allCases.last { + func handleNextButtonPressed() { + guard hasSelectedOption else { + isDisplayingAlert = true + return + } + if section == Section.allCases.last { // sign in } else { withAnimation(.spring()) { - onboaringState = onboaringState.next ?? Section.allCases.last! + section = section.next ?? Section.allCases.last! } } } diff --git a/Rethread/Rethread/Styles/OnboardingButtonStyle.swift b/Rethread/Rethread/Styles/OnboardingButtonStyle.swift new file mode 100644 index 0000000..b35402a --- /dev/null +++ b/Rethread/Rethread/Styles/OnboardingButtonStyle.swift @@ -0,0 +1,24 @@ +// OnboardingButtonStyle.swift + +import SwiftUI + +struct OnboardingButtonStyle: PrimitiveButtonStyle { + func makeBody(configuration: Configuration) -> some View { + Button(role: configuration.role) { + configuration.trigger() + } label: { + configuration.label + .font(.title.weight(.medium)) + .frame(maxWidth: .infinity) + .padding(.vertical, 6) + .clipShape(.rect(cornerRadius: 10)) + } + .buttonStyle(.borderedProminent) + } +} + +extension PrimitiveButtonStyle where Self == OnboardingButtonStyle { + static var onboarding: Self { + .init() + } +} From 985ff99f3eea1d6148d3b51ea1efcd8903fc05e3 Mon Sep 17 00:00:00 2001 From: MortezaFa Date: Sat, 25 Nov 2023 20:22:46 -0700 Subject: [PATCH 04/19] changed button colours of onboarding screen --- Rethread/Rethread/IntroView.swift | 2 +- Rethread/Rethread/OnboardingView.swift | 21 ++++++++++----------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift index 3a9ecda..ae90fb8 100644 --- a/Rethread/Rethread/IntroView.swift +++ b/Rethread/Rethread/IntroView.swift @@ -8,7 +8,7 @@ struct IntroView: View { var body: some View { ZStack { - RadialGradient (colors: [Color(#colorLiteral(red: 0.2196078449, green: 0.007843137719, blue: 0.8549019694, alpha: 1)),Color(#colorLiteral(red: 0.1411764771, green: 0.3960784376, blue: 0.5647059083, alpha: 1))], center: .topLeading, startRadius: 5, endRadius: 500) + RadialGradient (colors: [Color(#colorLiteral(red: 0.7522775531, green: 0.3675404191, blue: 0.8451399207, alpha: 1)),Color(#colorLiteral(red: 0.1411764771, green: 0.3960784376, blue: 0.5647059083, alpha: 1))], center: .topLeading, startRadius: 5, endRadius: 500) .ignoresSafeArea() if currentUserSignedIn { diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index 2c072cc..b7e19c4 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -15,7 +15,7 @@ struct OnboardingView: View { return Self.allCases[index] } } - + @State private var section = Section.welcome @State private var profile = Profile() @State private var isDisplayingAlert = false @@ -39,11 +39,11 @@ struct OnboardingView: View { insertion: .move(edge: .trailing), removal: .move(edge: .leading) )) - + bottomButton .padding(30) } - .background(.purple) + .background(.blue) .alert("Oops!", isPresented: $isDisplayingAlert) { Button("Ok") { @@ -70,7 +70,7 @@ extension OnboardingView { } .buttonStyle(.onboarding) .tint(.white) - .foregroundStyle(.purple) + .foregroundStyle(.blue) } private var welcomeSection: some View { @@ -92,15 +92,14 @@ extension OnboardingView { .font(.largeTitle) .foregroundStyle(.white) .fontWeight(.semibold) - ForEach(Gender.allCases) { gender in let isSelected = gender == profile.gender Button(gender.displayString) { profile.gender = gender } .buttonStyle(.onboarding) - .foregroundColor(isSelected ? .white : .purple) - .tint(isSelected ? .red : .white) + .foregroundColor(isSelected ? .white : .blue) + .tint(isSelected ? .cyan : .white) } } .padding(.horizontal, 20) @@ -120,8 +119,8 @@ extension OnboardingView { profile.clothingFreq = clothingFreq } .buttonStyle(.onboarding) - .foregroundColor(isSelected ? .white : .purple) - .tint(isSelected ? .red : .white) + .foregroundColor(isSelected ? .white : .blue) + .tint(isSelected ? .cyan : .white) } .padding(.horizontal, 20) } @@ -142,8 +141,8 @@ extension OnboardingView { profile.spendingFreq = spending } .buttonStyle(.onboarding) - .foregroundColor(isSelected ? .white : .purple) - .tint(isSelected ? .red : .white) + .foregroundColor(isSelected ? .white : .blue) + .tint(isSelected ? .cyan : .white) } } .padding(.horizontal, 20) From 9c52cee7638fa604dfc52170b829d39526f7a230 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Tue, 5 Dec 2023 13:11:29 -0700 Subject: [PATCH 05/19] Get started page Signed-off-by: ParsaKargari --- Rethread/.DS_Store | Bin 6148 -> 6148 bytes Rethread/Rethread.xcodeproj/project.pbxproj | 52 ++--- .../UserInterfaceState.xcuserstate | Bin 12192 -> 41235 bytes Rethread/Rethread/Extensions/Codable.swift | 21 -- Rethread/Rethread/FinalView.swift | 26 +++ Rethread/Rethread/IntroView.swift | 16 +- .../Rethread/Models/ClothingFrequency.swift | 26 --- Rethread/Rethread/Models/Gender.swift | 22 --- Rethread/Rethread/Models/Profile.swift | 10 - .../Rethread/Models/SpendingFrequency.swift | 26 --- Rethread/Rethread/OnboardingView.swift | 182 ++---------------- Rethread/Rethread/ProfileView.swift | 28 --- Rethread/Rethread/QuestionView.swift | 53 +++++ Rethread/Rethread/Styles/ButtonStyles.swift | 21 ++ .../Styles/OnboardingButtonStyle.swift | 24 --- Rethread/Rethread/WelcomeView.swift | 47 +++++ 16 files changed, 197 insertions(+), 357 deletions(-) delete mode 100644 Rethread/Rethread/Extensions/Codable.swift create mode 100644 Rethread/Rethread/FinalView.swift delete mode 100644 Rethread/Rethread/Models/ClothingFrequency.swift delete mode 100644 Rethread/Rethread/Models/Gender.swift delete mode 100644 Rethread/Rethread/Models/Profile.swift delete mode 100644 Rethread/Rethread/Models/SpendingFrequency.swift delete mode 100644 Rethread/Rethread/ProfileView.swift create mode 100644 Rethread/Rethread/QuestionView.swift create mode 100644 Rethread/Rethread/Styles/ButtonStyles.swift delete mode 100644 Rethread/Rethread/Styles/OnboardingButtonStyle.swift create mode 100644 Rethread/Rethread/WelcomeView.swift diff --git a/Rethread/.DS_Store b/Rethread/.DS_Store index aaf863c0c94d4b2367c7c635d32fad3904bd3aa7..6d556dece59d3d3add5408dd9bc435aeb7b97912 100644 GIT binary patch delta 116 zcmZoMXfc=|#>B)qu~2NHo}wr#0|Nsi1A_nqLlHwNLn1>;S#VL_W=5vvjEW#B4u&A0 za0x>OvUE;B`mu~2NHo}wrV0|Nsi1A_nqLlHwNLn1>8gC0Z0#KPr_ERz>7X>1N* n+RVDKL4k2II|n}pP}gQf=I_jt`9&-_fciihnKlQAY+(ifAi@$E diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 4221a33..a08e178 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -8,20 +8,17 @@ /* Begin PBXBuildFile section */ 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */; }; - 7C3A04B72B0AD9DF00E36883 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */; }; 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */; }; - 7C3A04B92B0AD9DF00E36883 /* ProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */; }; - 7C66432F2B0EE7F100B1B327 /* ClothingFrequency.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C66432E2B0EE7F100B1B327 /* ClothingFrequency.swift */; }; - 7C6643312B0EEBA900B1B327 /* SpendingFrequency.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C6643302B0EEBA900B1B327 /* SpendingFrequency.swift */; }; - 7C9AA2CE2B0EC04D00EF6F36 /* Gender.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2CD2B0EC04D00EF6F36 /* Gender.swift */; }; - 7C9AA2D02B0EC1E100EF6F36 /* Profile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2CF2B0EC1E100EF6F36 /* Profile.swift */; }; - 7C9AA2D32B0EC3D300EF6F36 /* Codable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2D22B0EC3D300EF6F36 /* Codable.swift */; }; - 7C9AA2D62B0ECAF900EF6F36 /* OnboardingButtonStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C9AA2D52B0ECAF900EF6F36 /* OnboardingButtonStyle.swift */; }; 983286B92B05698F00851B19 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286B82B05698F00851B19 /* Assets.xcassets */; }; 983286BC2B05698F00851B19 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286BB2B05698F00851B19 /* Preview Assets.xcassets */; }; 983286C62B05698F00851B19 /* RethreadTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286C52B05698F00851B19 /* RethreadTests.swift */; }; 983286D02B05698F00851B19 /* RethreadUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286CF2B05698F00851B19 /* RethreadUITests.swift */; }; 983286D22B05698F00851B19 /* RethreadUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286D12B05698F00851B19 /* RethreadUITestsLaunchTests.swift */; }; + 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */; }; + 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D92B1FADA70063D9BA /* QuestionView.swift */; }; + 9868A7DC2B1FADBA0063D9BA /* FinalView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DB2B1FADBA0063D9BA /* FinalView.swift */; }; + 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */; }; + 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -43,15 +40,7 @@ /* Begin PBXFileReference section */ 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IntroView.swift; sourceTree = ""; }; - 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingApp.swift; sourceTree = ""; }; - 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ProfileView.swift; sourceTree = ""; }; - 7C66432E2B0EE7F100B1B327 /* ClothingFrequency.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClothingFrequency.swift; sourceTree = ""; }; - 7C6643302B0EEBA900B1B327 /* SpendingFrequency.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpendingFrequency.swift; sourceTree = ""; }; - 7C9AA2CD2B0EC04D00EF6F36 /* Gender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Gender.swift; sourceTree = ""; }; - 7C9AA2CF2B0EC1E100EF6F36 /* Profile.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Profile.swift; sourceTree = ""; }; - 7C9AA2D22B0EC3D300EF6F36 /* Codable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Codable.swift; sourceTree = ""; }; - 7C9AA2D52B0ECAF900EF6F36 /* OnboardingButtonStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingButtonStyle.swift; sourceTree = ""; }; 983286B12B05698E00851B19 /* Rethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rethread.app; sourceTree = BUILT_PRODUCTS_DIR; }; 983286B82B05698F00851B19 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 983286BB2B05698F00851B19 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; @@ -60,6 +49,11 @@ 983286CB2B05698F00851B19 /* RethreadUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RethreadUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 983286CF2B05698F00851B19 /* RethreadUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RethreadUITests.swift; sourceTree = ""; }; 983286D12B05698F00851B19 /* RethreadUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RethreadUITestsLaunchTests.swift; sourceTree = ""; }; + 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeView.swift; sourceTree = ""; }; + 9868A7D92B1FADA70063D9BA /* QuestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuestionView.swift; sourceTree = ""; }; + 9868A7DB2B1FADBA0063D9BA /* FinalView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FinalView.swift; sourceTree = ""; }; + 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonStyles.swift; sourceTree = ""; }; + 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -90,10 +84,6 @@ 7C9AA2CC2B0EC02600EF6F36 /* Models */ = { isa = PBXGroup; children = ( - 7C9AA2CD2B0EC04D00EF6F36 /* Gender.swift */, - 7C9AA2CF2B0EC1E100EF6F36 /* Profile.swift */, - 7C66432E2B0EE7F100B1B327 /* ClothingFrequency.swift */, - 7C6643302B0EEBA900B1B327 /* SpendingFrequency.swift */, ); path = Models; sourceTree = ""; @@ -101,7 +91,6 @@ 7C9AA2D12B0EC3BC00EF6F36 /* Extensions */ = { isa = PBXGroup; children = ( - 7C9AA2D22B0EC3D300EF6F36 /* Codable.swift */, ); path = Extensions; sourceTree = ""; @@ -109,7 +98,7 @@ 7C9AA2D42B0ECADF00EF6F36 /* Styles */ = { isa = PBXGroup; children = ( - 7C9AA2D52B0ECAF900EF6F36 /* OnboardingButtonStyle.swift */, + 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */, ); path = Styles; sourceTree = ""; @@ -141,9 +130,11 @@ 7C9AA2D12B0EC3BC00EF6F36 /* Extensions */, 7C9AA2CC2B0EC02600EF6F36 /* Models */, 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, + 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, + 9868A7D92B1FADA70063D9BA /* QuestionView.swift */, + 9868A7DB2B1FADBA0063D9BA /* FinalView.swift */, + 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */, 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */, - 7C3A04B32B0AD9DF00E36883 /* OnboardingView.swift */, - 7C3A04B52B0AD9DF00E36883 /* ProfileView.swift */, 983286B82B05698F00851B19 /* Assets.xcassets */, 983286BA2B05698F00851B19 /* Preview Content */, ); @@ -306,16 +297,13 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 7C3A04B92B0AD9DF00E36883 /* ProfileView.swift in Sources */, - 7C9AA2D02B0EC1E100EF6F36 /* Profile.swift in Sources */, - 7C6643312B0EEBA900B1B327 /* SpendingFrequency.swift in Sources */, - 7C9AA2CE2B0EC04D00EF6F36 /* Gender.swift in Sources */, + 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */, 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, - 7C66432F2B0EE7F100B1B327 /* ClothingFrequency.swift in Sources */, - 7C9AA2D32B0EC3D300EF6F36 /* Codable.swift in Sources */, 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, - 7C9AA2D62B0ECAF900EF6F36 /* OnboardingButtonStyle.swift in Sources */, - 7C3A04B72B0AD9DF00E36883 /* OnboardingView.swift in Sources */, + 9868A7DC2B1FADBA0063D9BA /* FinalView.swift in Sources */, + 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, + 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, + 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 7c8dec09f08365c1f1007491774e968f78e40dc5..cb8768063cff68846ffffdf4c2f82cbcbb95f1d2 100644 GIT binary patch literal 41235 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 delta 6788 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 diff --git a/Rethread/Rethread/Extensions/Codable.swift b/Rethread/Rethread/Extensions/Codable.swift deleted file mode 100644 index e4ef53e..0000000 --- a/Rethread/Rethread/Extensions/Codable.swift +++ /dev/null @@ -1,21 +0,0 @@ -// Codable.swift - -import Foundation - -public protocol StorageCodable: Codable, RawRepresentable {} - -extension StorageCodable { - init?(rawValue: String) { - guard let data = rawValue.data(using: .utf8), let result = try? JSONDecoder().decode(Self.self, from: data) else { return nil } - self = result - } - - var rawValue: String { - guard let data = try? JSONEncoder().encode(self), let result = String(data: data, encoding: .utf8) else { return "" } - return result - } -} - -extension Profile: StorageCodable { - -} diff --git a/Rethread/Rethread/FinalView.swift b/Rethread/Rethread/FinalView.swift new file mode 100644 index 0000000..81ebece --- /dev/null +++ b/Rethread/Rethread/FinalView.swift @@ -0,0 +1,26 @@ +import SwiftUI + +struct FinalView: View { + var action: () -> Void + + var body: some View { + VStack { + Text("Q3") + .font(.title) + .fontWeight(.bold) + .padding() + + Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna, porttitor.") + .multilineTextAlignment(.center) + .padding() + + Spacer() + + Button("Get Started", action: action) + .buttonStyle(PrimaryButtonStyle()) + .padding() + } + .background(RoundedRectangle(cornerRadius: 25).fill(Color.white).shadow(radius: 5)) + .padding() + } +} diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift index ae90fb8..ad06fe5 100644 --- a/Rethread/Rethread/IntroView.swift +++ b/Rethread/Rethread/IntroView.swift @@ -3,23 +3,27 @@ import SwiftUI struct IntroView: View { - @AppStorage("signed_in") var currentUserSignedIn: Bool = false var body: some View { ZStack { - RadialGradient (colors: [Color(#colorLiteral(red: 0.7522775531, green: 0.3675404191, blue: 0.8451399207, alpha: 1)),Color(#colorLiteral(red: 0.1411764771, green: 0.3960784376, blue: 0.5647059083, alpha: 1))], center: .topLeading, startRadius: 5, endRadius: 500) - .ignoresSafeArea() - + // Your existing radial gradient if currentUserSignedIn { - ProfileView() + // Do Nothing for now } else { - OnboardingView() + OnboardingView() // This will be your custom view for onboarding } } } } +struct IntroView_Previews: PreviewProvider { + static var previews: some View { + IntroView() + } +} + + #Preview { IntroView() } diff --git a/Rethread/Rethread/Models/ClothingFrequency.swift b/Rethread/Rethread/Models/ClothingFrequency.swift deleted file mode 100644 index e1d49f2..0000000 --- a/Rethread/Rethread/Models/ClothingFrequency.swift +++ /dev/null @@ -1,26 +0,0 @@ -// ClothingFrequency.swift - -import Foundation - -enum ClothingFrequency: CaseIterable, Codable, Identifiable, Hashable { - case leastfreq, secondleastfreq, thirdleastfreq, fourthleastfreq, mostfreq - var id: Self { - self - } - var clothingFreqDispalyString: String { - switch self { - case .leastfreq: - "๐Ÿ’ค 1-3 times a year" - case .secondleastfreq: - "๐Ÿค Every 2-3 months" - case .thirdleastfreq: - "๐Ÿ”„ 1-2 times a month" - case .fourthleastfreq: - "๐Ÿ’… 3-4 times a month" - case .mostfreq: - "๐Ÿ›๏ธ 5+ times a month" - } - } -} - - diff --git a/Rethread/Rethread/Models/Gender.swift b/Rethread/Rethread/Models/Gender.swift deleted file mode 100644 index 8258123..0000000 --- a/Rethread/Rethread/Models/Gender.swift +++ /dev/null @@ -1,22 +0,0 @@ -// Gender.swift - -import Foundation - -enum Gender: CaseIterable, Codable, Identifiable, Hashable { - case male, female, nonbinary, other - var id: Self { - self - } - var displayString: String { - switch self { - case .male: - "๐Ÿงโ€โ™‚๏ธMale" - case .female: - "๐Ÿงโ€โ™€๏ธFemale" - case .nonbinary: - "๐ŸงNon-Binary" - case .other: - "โ“Other" - } - } -} diff --git a/Rethread/Rethread/Models/Profile.swift b/Rethread/Rethread/Models/Profile.swift deleted file mode 100644 index a4eee9d..0000000 --- a/Rethread/Rethread/Models/Profile.swift +++ /dev/null @@ -1,10 +0,0 @@ -// Profile.swift - -import Foundation - -struct Profile: Codable { - var gender: Gender? - var clothingFreq: ClothingFrequency? - var spendingFreq: SpendingFrequency? - -} diff --git a/Rethread/Rethread/Models/SpendingFrequency.swift b/Rethread/Rethread/Models/SpendingFrequency.swift deleted file mode 100644 index c0cdd4f..0000000 --- a/Rethread/Rethread/Models/SpendingFrequency.swift +++ /dev/null @@ -1,26 +0,0 @@ -// SpendingFrequency.swift - -import Foundation - -enum SpendingFrequency: CaseIterable, Codable, Identifiable, Hashable { - case leastspending, secondleastspending, thirstleastspending, fourthleastspending, mostspending - var id: Self { - self - } - - var spendingDisplayString: String { - switch self { - - case .leastspending: - "๐Ÿ˜ž๐Ÿ’ฐ $0 - $100" - case .secondleastspending: - "๐Ÿฅบ $100 - $300" - case .thirstleastspending: - "๐Ÿคทโ€โ™‚๏ธ๐Ÿ’ธ $300 - $500" - case .fourthleastspending: - "๐Ÿ’ธ $500 - $800" - case .mostspending: - "๐Ÿ‘‘ $800+" - } - } -} diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index b7e19c4..abf44b8 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -1,178 +1,36 @@ -// ContentView.swift - import SwiftUI struct OnboardingView: View { - // Onboarding state - - enum Section: CaseIterable { - case welcome, gender, clothingFrequency, spendingFrequency - var next: Section? { - let index = Self.allCases.firstIndex(of: self)! + 1 - guard index < Self.allCases.count else { - return nil - } - return Self.allCases[index] - } - } - - @State private var section = Section.welcome - @State private var profile = Profile() - @State private var isDisplayingAlert = false + @State private var currentScreenIndex = 0 var body: some View { VStack { - Group { - switch section { - case .welcome: - welcomeSection - case .gender: - addGenderSection - case .clothingFrequency: - howOftenSection - case .spendingFrequency: - howMuchSection - } + if currentScreenIndex == 0 { + WelcomeView(action: goToNextScreen) + } else if currentScreenIndex == 1 { + QuestionView(question: "Q1", options: ["Option 1", "Option 2", "Option 3", "Option 4"], action: goToNextScreen) + } else if currentScreenIndex == 2 { + QuestionView(question: "Q2", options: ["Option 1", "Option 2", "Option 3", "Option 4"], action: goToNextScreen) + } else { + FinalView(action: finishOnboarding) } - .frame(maxWidth: .infinity, maxHeight: .infinity) - .transition(.asymmetric( - insertion: .move(edge: .trailing), - removal: .move(edge: .leading) - )) - - bottomButton - .padding(30) - } - .background(.blue) - .alert("Oops!", isPresented: $isDisplayingAlert) { - Button("Ok") { - - } - } message: { - Text("You need to select an option before continuing.") - } - - } -} - -#Preview { - OnboardingView() -} - -// MARK: COMPONENTS - -extension OnboardingView { - - @ViewBuilder private var bottomButton: some View { - let text = section == .welcome ? "Get Started" : section == Section.allCases.last ? "Finish" : "Next" - Button(text) { - handleNextButtonPressed() - } - .buttonStyle(.onboarding) - .tint(.white) - .foregroundStyle(.blue) - } - - private var welcomeSection: some View { - VStack { - Text("Hey! \nWelcome to ReThread.\n") - Image(systemName: "tshirt.fill") - .resizable() - .scaledToFit() - .frame(width: 200, height: 200, alignment: .center) - Text("Discover low priced and sustainable fashion") } - .font(.title) - .foregroundStyle(.white) + .transition(.slide) } - - private var addGenderSection: some View { - VStack(spacing: 16) { - Text("Whats your gender?") - .font(.largeTitle) - .foregroundStyle(.white) - .fontWeight(.semibold) - ForEach(Gender.allCases) { gender in - let isSelected = gender == profile.gender - Button(gender.displayString) { - profile.gender = gender - } - .buttonStyle(.onboarding) - .foregroundColor(isSelected ? .white : .blue) - .tint(isSelected ? .cyan : .white) - } - } - .padding(.horizontal, 20) - } - - private var howOftenSection: some View { - VStack(spacing: 16) { - Text("How often do you buy clothes?") - .font(.largeTitle) - .fontWeight(.semibold) - .foregroundStyle(.white) - .multilineTextAlignment(.center) - - ForEach(ClothingFrequency.allCases) { clothingFreq in - let isSelected = clothingFreq == profile.clothingFreq - Button(clothingFreq.clothingFreqDispalyString) { - profile.clothingFreq = clothingFreq - } - .buttonStyle(.onboarding) - .foregroundColor(isSelected ? .white : .blue) - .tint(isSelected ? .cyan : .white) - } - .padding(.horizontal, 20) - } - } - - private var howMuchSection: some View { - VStack(spacing: 16) { - Text("How much do you spend on clothes?") - .font(.largeTitle) - .fontWeight(.semibold) - .foregroundStyle(.white) - .multilineTextAlignment(.center) - .padding() - - ForEach(SpendingFrequency.allCases) { spending in - let isSelected = spending == profile.spendingFreq - Button(spending.spendingDisplayString) { - profile.spendingFreq = spending - } - .buttonStyle(.onboarding) - .foregroundColor(isSelected ? .white : .blue) - .tint(isSelected ? .cyan : .white) - } + + func goToNextScreen() { + withAnimation { + currentScreenIndex += 1 } - .padding(.horizontal, 20) } -} - -// MARK: FUNCTIONS - -extension OnboardingView { - var hasSelectedOption: Bool { - switch section { - case .welcome: true - case .gender: profile.gender != nil - case .clothingFrequency: profile.clothingFreq != nil - case .spendingFrequency: profile.spendingFreq != nil - } + func finishOnboarding() { + // Code to finish onboarding and update @AppStorage value } +} - func handleNextButtonPressed() { - guard hasSelectedOption else { - isDisplayingAlert = true - return - } - if section == Section.allCases.last { - // sign in - } else { - withAnimation(.spring()) { - section = section.next ?? Section.allCases.last! - } - } +struct OnboardingView_Previews: PreviewProvider { + static var previews: some View { + OnboardingView() } } diff --git a/Rethread/Rethread/ProfileView.swift b/Rethread/Rethread/ProfileView.swift deleted file mode 100644 index d44514a..0000000 --- a/Rethread/Rethread/ProfileView.swift +++ /dev/null @@ -1,28 +0,0 @@ -// ProfileView.swift - -import SwiftUI - -struct ProfileView: View { - var body: some View { - VStack { - Image(systemName: "person.circle.fill") - .resizable() - .scaledToFit() - .frame(width: 150, height: 150) - .padding() - Text("Name: Rashan Drippy") - Text("Age: 3") - Text("Is very sustainable ") - } - .foregroundStyle(.purple) - .font(.title) - .padding() - .background(.white) - .clipShape(RoundedRectangle(cornerRadius: 10)) - .shadow(radius: 10) - } -} - -#Preview { - ProfileView() -} diff --git a/Rethread/Rethread/QuestionView.swift b/Rethread/Rethread/QuestionView.swift new file mode 100644 index 0000000..c1c3740 --- /dev/null +++ b/Rethread/Rethread/QuestionView.swift @@ -0,0 +1,53 @@ +import SwiftUI + +struct QuestionView: View { + var question: String + var options: [String] + var action: () -> Void + + @State private var selections: Set = [] + + var body: some View { + VStack(alignment: .leading) { + Text(question) + .font(.title) + .fontWeight(.bold) + .padding() + + ForEach(options, id: \.self) { option in + Button(action: { + if selections.contains(option) { + selections.remove(option) + } else { + selections.insert(option) + } + }) { + HStack { + Image(systemName: selections.contains(option) ? "checkmark.square.fill" : "square") + Text(option) + } + .foregroundColor(.black) + } + .padding(.vertical, 5) + } + + Spacer() + + HStack { + Button(action: {}) { + Image(systemName: "arrow.left") + } + Spacer() + Button("Next", action: action) + .buttonStyle(PrimaryButtonStyle()) + Spacer() + Button(action: action) { + Image(systemName: "arrow.right") + } + } + .padding() + } + .background(RoundedRectangle(cornerRadius: 25).fill(Color.white).shadow(radius: 5)) + .padding() + } +} diff --git a/Rethread/Rethread/Styles/ButtonStyles.swift b/Rethread/Rethread/Styles/ButtonStyles.swift new file mode 100644 index 0000000..8035c7d --- /dev/null +++ b/Rethread/Rethread/Styles/ButtonStyles.swift @@ -0,0 +1,21 @@ +// ButtonStyles.swift + +import SwiftUI + +struct PrimaryButtonStyle: ButtonStyle { + // Button background color #667080 + // Rounded corners + // Take in width and height as parameters? + var width: CGFloat = 100 + var height: CGFloat = 20 + + func makeBody(configuration: Self.Configuration) -> some View { + configuration.label + .frame(width: width, height: height) // Use optional binding in case width and height are not provided + .padding() + .background(Color(red: 102/255, green: 112/255, blue: 128/255)) + .cornerRadius(9) + .foregroundColor(.white) + .scaleEffect(configuration.isPressed ? 0.95 : 1) + } +} diff --git a/Rethread/Rethread/Styles/OnboardingButtonStyle.swift b/Rethread/Rethread/Styles/OnboardingButtonStyle.swift deleted file mode 100644 index b35402a..0000000 --- a/Rethread/Rethread/Styles/OnboardingButtonStyle.swift +++ /dev/null @@ -1,24 +0,0 @@ -// OnboardingButtonStyle.swift - -import SwiftUI - -struct OnboardingButtonStyle: PrimitiveButtonStyle { - func makeBody(configuration: Configuration) -> some View { - Button(role: configuration.role) { - configuration.trigger() - } label: { - configuration.label - .font(.title.weight(.medium)) - .frame(maxWidth: .infinity) - .padding(.vertical, 6) - .clipShape(.rect(cornerRadius: 10)) - } - .buttonStyle(.borderedProminent) - } -} - -extension PrimitiveButtonStyle where Self == OnboardingButtonStyle { - static var onboarding: Self { - .init() - } -} diff --git a/Rethread/Rethread/WelcomeView.swift b/Rethread/Rethread/WelcomeView.swift new file mode 100644 index 0000000..56cdf27 --- /dev/null +++ b/Rethread/Rethread/WelcomeView.swift @@ -0,0 +1,47 @@ +import SwiftUI + +struct WelcomeView: View { + var action: () -> Void + + var body: some View { + VStack { + // Video placeholder + Rectangle() + .foregroundColor(.black.opacity(0.1)) + .overlay( + Image(systemName: "video.fill") // Video icon placeholder + .resizable() + .scaledToFit() + .frame(width: 30, height: 30) + .foregroundColor(.white) + .opacity(1) + ) + + Spacer() + + VStack(alignment: .center, spacing: 40.0) { + + Text("Hi, Parsa!") + .font(.title) + .fontWeight(.bold) + .foregroundColor(.gray) + .padding(.top, 30) + + Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna, porttitor.") + .font(.body) + .foregroundColor(.gray) + .multilineTextAlignment(.center) + .padding(.horizontal) + + + Button("Get Started", action: action) + .buttonStyle(PrimaryButtonStyle(width: 200, height: 20)) + .padding(.bottom, 55.0) + .padding(.top) + } + .frame(maxWidth: .infinity) // Ensure VStack takes full width + } + .edgesIgnoringSafeArea(.all) + .background(Color(UIColor.systemGray6)) + } +} From 6cd359c14b490d3472db0d8319ae5e3a30b5cc0a Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Tue, 5 Dec 2023 16:16:07 -0700 Subject: [PATCH 06/19] Onboarding questions, form Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 4 - .../UserInterfaceState.xcuserstate | Bin 41235 -> 39515 bytes Rethread/Rethread/FinalView.swift | 26 ----- Rethread/Rethread/IntroView.swift | 3 +- Rethread/Rethread/OnboardingView.swift | 40 ++++++- Rethread/Rethread/QuestionView.swift | 107 +++++++++++++----- Rethread/Rethread/Styles/ButtonStyles.swift | 56 ++++++++- 7 files changed, 169 insertions(+), 67 deletions(-) delete mode 100644 Rethread/Rethread/FinalView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index a08e178..69ec6db 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -16,7 +16,6 @@ 983286D22B05698F00851B19 /* RethreadUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286D12B05698F00851B19 /* RethreadUITestsLaunchTests.swift */; }; 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */; }; 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D92B1FADA70063D9BA /* QuestionView.swift */; }; - 9868A7DC2B1FADBA0063D9BA /* FinalView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DB2B1FADBA0063D9BA /* FinalView.swift */; }; 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */; }; 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; /* End PBXBuildFile section */ @@ -51,7 +50,6 @@ 983286D12B05698F00851B19 /* RethreadUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RethreadUITestsLaunchTests.swift; sourceTree = ""; }; 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeView.swift; sourceTree = ""; }; 9868A7D92B1FADA70063D9BA /* QuestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuestionView.swift; sourceTree = ""; }; - 9868A7DB2B1FADBA0063D9BA /* FinalView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FinalView.swift; sourceTree = ""; }; 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonStyles.swift; sourceTree = ""; }; 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -132,7 +130,6 @@ 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, 9868A7D92B1FADA70063D9BA /* QuestionView.swift */, - 9868A7DB2B1FADBA0063D9BA /* FinalView.swift */, 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */, 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */, 983286B82B05698F00851B19 /* Assets.xcassets */, @@ -300,7 +297,6 @@ 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */, 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, - 9868A7DC2B1FADBA0063D9BA /* FinalView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */, diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index cb8768063cff68846ffffdf4c2f82cbcbb95f1d2..7cc1c998065c0fd003fa3df408df1f1687365b8b 100644 GIT binary patch delta 18497 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 DUgyI^ delta 19216 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%0AKt{Po8x?yxnWpvw^F}5)dH_k9_ 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 sV{OL`A2)H_ Void - - var body: some View { - VStack { - Text("Q3") - .font(.title) - .fontWeight(.bold) - .padding() - - Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna, porttitor.") - .multilineTextAlignment(.center) - .padding() - - Spacer() - - Button("Get Started", action: action) - .buttonStyle(PrimaryButtonStyle()) - .padding() - } - .background(RoundedRectangle(cornerRadius: 25).fill(Color.white).shadow(radius: 5)) - .padding() - } -} diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift index ad06fe5..0601845 100644 --- a/Rethread/Rethread/IntroView.swift +++ b/Rethread/Rethread/IntroView.swift @@ -7,11 +7,10 @@ struct IntroView: View { var body: some View { ZStack { - // Your existing radial gradient if currentUserSignedIn { // Do Nothing for now } else { - OnboardingView() // This will be your custom view for onboarding + OnboardingView() } } } diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index abf44b8..59fd41e 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -1,6 +1,8 @@ import SwiftUI struct OnboardingView: View { + // # Of pages + var numberOfPages = 4 @State private var currentScreenIndex = 0 var body: some View { @@ -8,19 +10,49 @@ struct OnboardingView: View { if currentScreenIndex == 0 { WelcomeView(action: goToNextScreen) } else if currentScreenIndex == 1 { - QuestionView(question: "Q1", options: ["Option 1", "Option 2", "Option 3", "Option 4"], action: goToNextScreen) + QuestionView( + question: "Who penned this timeless wisdom: 'You were born with wings, why prefer to crawl through life?'", + options: ["Kahlil Gibran", "Rumi", "Hafez", "Shakespeare"], + isLastPage: false, + action: goToNextScreen, + previousAction: goToPreviousScreen + ) } else if currentScreenIndex == 2 { - QuestionView(question: "Q2", options: ["Option 1", "Option 2", "Option 3", "Option 4"], action: goToNextScreen) + QuestionView( + question: "Identify the author of this quote: 'The only impossible journey is the one you never begin.'", + options: ["Tony Robbins", "Neil Armstrong", "Mark Twain", "J.R.R. Tolkien"], + isLastPage: false, + action: goToNextScreen, + previousAction: goToPreviousScreen + ) } else { - FinalView(action: finishOnboarding) + QuestionView( + question: "Determine who said: 'Out beyond ideas of wrongdoing and rightdoing, there is a field. I'll meet you there.'", + options: ["Rumi", "Oscar Wilde", "Emily Dickinson", "Pablo Neruda"], + isLastPage: true, + action: goToNextScreen, + previousAction: goToPreviousScreen + ) } } .transition(.slide) } + + func goToPreviousScreen() { + withAnimation { + if currentScreenIndex > 0 { + currentScreenIndex -= 1 + } + } + } func goToNextScreen() { withAnimation { - currentScreenIndex += 1 + if currentScreenIndex < numberOfPages - 1 { + currentScreenIndex += 1 + } else { + // finishOnboarding() + } } } diff --git a/Rethread/Rethread/QuestionView.swift b/Rethread/Rethread/QuestionView.swift index c1c3740..1229a7a 100644 --- a/Rethread/Rethread/QuestionView.swift +++ b/Rethread/Rethread/QuestionView.swift @@ -3,51 +3,98 @@ import SwiftUI struct QuestionView: View { var question: String var options: [String] + var isLastPage: Bool var action: () -> Void + var previousAction: () -> Void - @State private var selections: Set = [] + @State private var selectedOptions: Set = [] + + private func currentButtonStyle() -> AnyButtonStyle { + if isLastPage { + return AnyButtonStyle(LetStartButtonStyle(isEnabled: !selectedOptions.isEmpty)) + } else { + return AnyButtonStyle(NextButtonStyle(isEnabled: !selectedOptions.isEmpty)) + } + } var body: some View { - VStack(alignment: .leading) { + VStack { Text(question) - .font(.title) - .fontWeight(.bold) - .padding() - + .font(.body) + .foregroundColor(.gray) + .padding(.top, 100) + .padding(.bottom, 40) + .frame(maxWidth: .infinity, alignment: .leading) + .padding(.horizontal, 20.0) + ForEach(options, id: \.self) { option in - Button(action: { - if selections.contains(option) { - selections.remove(option) - } else { - selections.insert(option) - } - }) { - HStack { - Image(systemName: selections.contains(option) ? "checkmark.square.fill" : "square") - Text(option) - } - .foregroundColor(.black) + HStack { + // Custom checkbox + Image(systemName: selectedOptions.contains(option) ? "checkmark.square.fill" : "square") + .resizable() + .frame(width: 22, height: 22) + .foregroundColor(Color(red: 102/255, green: 112/255, blue: 128/255)) + .onTapGesture { + if selectedOptions.contains(option) { + selectedOptions.remove(option) + } else { + selectedOptions.insert(option) + } + } + + Text(option) + .foregroundColor(.black) + .padding(.leading) + + Spacer() } - .padding(.vertical, 5) + .padding(.vertical, 15) } - + .padding([.leading, .trailing], 35) + Spacer() - + + // Navigation buttons HStack { - Button(action: {}) { - Image(systemName: "arrow.left") + Button(action: previousAction) { + Image(systemName: "chevron.left") + .font(.title) } + .buttonStyle(PreviousButtonStyle()) + Spacer() - Button("Next", action: action) - .buttonStyle(PrimaryButtonStyle()) - Spacer() + Button(action: action) { - Image(systemName: "arrow.right") + if isLastPage { + Text("Let's Start!") + .font(.body) + .foregroundColor(.white) + } else { + Image(systemName: "chevron.right") + .font(.title) + } } + .buttonStyle(currentButtonStyle()) + .disabled(selectedOptions.isEmpty) } - .padding() + .padding(.bottom, 70) + } - .background(RoundedRectangle(cornerRadius: 25).fill(Color.white).shadow(radius: 5)) - .padding() + .background(Color(UIColor.systemGray6)) // Use the system background color + .edgesIgnoringSafeArea(.all) + } +} + +struct AnyButtonStyle: ButtonStyle { + private let _makeBody: (Configuration) -> AnyView + + init(_ style: Style) { + self._makeBody = { configuration in AnyView(style.makeBody(configuration: configuration)) } + } + + func makeBody(configuration: Configuration) -> some View { + self._makeBody(configuration) } } + + diff --git a/Rethread/Rethread/Styles/ButtonStyles.swift b/Rethread/Rethread/Styles/ButtonStyles.swift index 8035c7d..41f1db4 100644 --- a/Rethread/Rethread/Styles/ButtonStyles.swift +++ b/Rethread/Rethread/Styles/ButtonStyles.swift @@ -13,9 +13,63 @@ struct PrimaryButtonStyle: ButtonStyle { configuration.label .frame(width: width, height: height) // Use optional binding in case width and height are not provided .padding() - .background(Color(red: 102/255, green: 112/255, blue: 128/255)) + .background(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) : Color(red: 102/255, green: 112/255, blue: 128/255)) .cornerRadius(9) .foregroundColor(.white) .scaleEffect(configuration.isPressed ? 0.95 : 1) } } + +struct PreviousButtonStyle: ButtonStyle { + func makeBody(configuration: Configuration) -> some View { + configuration.label + .foregroundColor(.white) + .frame(width: 70, height: 60) + .background(UnevenRoundedRectangle(cornerRadii: .init( + topLeading: 0.0, + bottomLeading: 0.0, + bottomTrailing: 25.0, + topTrailing: 6.0), + style: .continuous) + .fill(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) : Color(red: 102/255, green: 112/255, blue: 128/255))) + } +} + +struct NextButtonStyle: ButtonStyle { + var isEnabled: Bool + + func makeBody(configuration: Configuration) -> some View { + configuration.label + .foregroundColor(.white) + .frame(width: 70, height: 60) + .background(UnevenRoundedRectangle(cornerRadii: .init( + topLeading: 6.0, + bottomLeading: 25.0, + bottomTrailing: 0.0, + topTrailing: 0.0), + style: .continuous) + .fill(isEnabled ? Color(red: 102/255, green: 112/255, blue: 128/255) + : Color(red: 170/255, green: 177/255, blue: 187/255))) // Disabled color + } +} + +struct LetStartButtonStyle: ButtonStyle { + var isEnabled: Bool + + func makeBody(configuration: Configuration) -> some View { + configuration.label + .foregroundColor(.white) + .frame(width: 140, height: 60) + .background(UnevenRoundedRectangle(cornerRadii: .init( + topLeading: 6.0, + bottomLeading: 25.0, + bottomTrailing: 0.0, + topTrailing: 0.0), + style: .continuous) + .fill(isEnabled ? Color(red: 102/255, green: 112/255, blue: 128/255) + : Color(red: 170/255, green: 177/255, blue: 187/255))) // Disabled color + } +} + + + From 6fce131dbe6118be204e2e63b21bb988df2824a6 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Sat, 23 Dec 2023 23:20:40 -0700 Subject: [PATCH 07/19] Answer state managent Signed-off-by: ParsaKargari --- .vscode/settings.json | 1 + Rethread/Rethread.xcodeproj/project.pbxproj | 2 + .../UserInterfaceState.xcuserstate | Bin 39515 -> 37688 bytes Rethread/Rethread/OnboardingView.swift | 27 ++++--- Rethread/Rethread/QuestionView.swift | 66 ++++++++++-------- 5 files changed, 56 insertions(+), 40 deletions(-) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 69ec6db..6197952 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -464,6 +464,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"Rethread/Preview Content\""; + DEVELOPMENT_TEAM = ""; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; @@ -494,6 +495,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"Rethread/Preview Content\""; + DEVELOPMENT_TEAM = ""; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 7cc1c998065c0fd003fa3df408df1f1687365b8b..ff2c1bed9f6cc7169bfc5ff0f6dec0dfd0bb13ca 100644 GIT binary patch literal 37688 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 literal 39515 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 QUOqnK4Co){|2>lZ7ba%God5s; diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index 59fd41e..a04c176 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -4,6 +4,7 @@ struct OnboardingView: View { // # Of pages var numberOfPages = 4 @State private var currentScreenIndex = 0 + @State private var answers: [[String]] = Array(repeating: [], count: 3) var body: some View { VStack { @@ -15,7 +16,8 @@ struct OnboardingView: View { options: ["Kahlil Gibran", "Rumi", "Hafez", "Shakespeare"], isLastPage: false, action: goToNextScreen, - previousAction: goToPreviousScreen + previousAction: goToPreviousScreen, + selectedAnswers: $answers[currentScreenIndex - 1] ) } else if currentScreenIndex == 2 { QuestionView( @@ -23,15 +25,17 @@ struct OnboardingView: View { options: ["Tony Robbins", "Neil Armstrong", "Mark Twain", "J.R.R. Tolkien"], isLastPage: false, action: goToNextScreen, - previousAction: goToPreviousScreen + previousAction: goToPreviousScreen, + selectedAnswers: $answers[currentScreenIndex - 1] ) } else { QuestionView( question: "Determine who said: 'Out beyond ideas of wrongdoing and rightdoing, there is a field. I'll meet you there.'", options: ["Rumi", "Oscar Wilde", "Emily Dickinson", "Pablo Neruda"], isLastPage: true, - action: goToNextScreen, - previousAction: goToPreviousScreen + action: goToNextScreen, + previousAction: goToPreviousScreen, + selectedAnswers: $answers[currentScreenIndex - 1] ) } } @@ -51,18 +55,19 @@ struct OnboardingView: View { if currentScreenIndex < numberOfPages - 1 { currentScreenIndex += 1 } else { - // finishOnboarding() + finishOnboarding() } } } func finishOnboarding() { - // Code to finish onboarding and update @AppStorage value + sendAnswersToBackend(answers) + answers.removeAll() } -} - -struct OnboardingView_Previews: PreviewProvider { - static var previews: some View { - OnboardingView() + + func sendAnswersToBackend(_ answers: [[String]]) { + // Implement the network request logic here + print("Sending answers to backend:", answers) } + } diff --git a/Rethread/Rethread/QuestionView.swift b/Rethread/Rethread/QuestionView.swift index 1229a7a..73991a0 100644 --- a/Rethread/Rethread/QuestionView.swift +++ b/Rethread/Rethread/QuestionView.swift @@ -7,15 +7,15 @@ struct QuestionView: View { var action: () -> Void var previousAction: () -> Void - @State private var selectedOptions: Set = [] + @Binding var selectedAnswers: [String] // Directly using the binding to manage state private func currentButtonStyle() -> AnyButtonStyle { - if isLastPage { - return AnyButtonStyle(LetStartButtonStyle(isEnabled: !selectedOptions.isEmpty)) - } else { - return AnyButtonStyle(NextButtonStyle(isEnabled: !selectedOptions.isEmpty)) - } + if isLastPage { + return AnyButtonStyle(LetStartButtonStyle(isEnabled: !selectedAnswers.isEmpty)) + } else { + return AnyButtonStyle(NextButtonStyle(isEnabled: !selectedAnswers.isEmpty)) } + } var body: some View { VStack { @@ -28,27 +28,13 @@ struct QuestionView: View { .padding(.horizontal, 20.0) ForEach(options, id: \.self) { option in - HStack { - // Custom checkbox - Image(systemName: selectedOptions.contains(option) ? "checkmark.square.fill" : "square") - .resizable() - .frame(width: 22, height: 22) - .foregroundColor(Color(red: 102/255, green: 112/255, blue: 128/255)) - .onTapGesture { - if selectedOptions.contains(option) { - selectedOptions.remove(option) - } else { - selectedOptions.insert(option) - } - } - - Text(option) - .foregroundColor(.black) - .padding(.leading) - - Spacer() + OptionRow(option: option, isSelected: selectedAnswers.contains(option)) { + if let index = selectedAnswers.firstIndex(of: option) { + selectedAnswers.remove(at: index) // Deselect the option + } else { + selectedAnswers.append(option) // Select the option + } } - .padding(.vertical, 15) } .padding([.leading, .trailing], 35) @@ -75,7 +61,7 @@ struct QuestionView: View { } } .buttonStyle(currentButtonStyle()) - .disabled(selectedOptions.isEmpty) + .disabled(selectedAnswers.isEmpty) } .padding(.bottom, 70) @@ -85,6 +71,30 @@ struct QuestionView: View { } } +struct OptionRow: View { + var option: String + var isSelected: Bool + var toggleSelection: () -> Void + + var body: some View { + HStack { + Image(systemName: isSelected ? "checkmark.square.fill" : "square") + .resizable() + .frame(width: 22, height: 22) + .foregroundColor(Color(red: 102/255, green: 112/255, blue: 128/255)) + .onTapGesture(perform: toggleSelection) + + Text(option) + .foregroundColor(.black) + .padding(.leading) + .onTapGesture(perform: toggleSelection) + + Spacer() + } + .padding(.vertical, 15) + } +} + struct AnyButtonStyle: ButtonStyle { private let _makeBody: (Configuration) -> AnyView @@ -96,5 +106,3 @@ struct AnyButtonStyle: ButtonStyle { self._makeBody(configuration) } } - - From 810b131738f0b4bda0485d74bffb947569180855 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Sun, 24 Dec 2023 01:42:55 -0700 Subject: [PATCH 08/19] branch Signed-off-by: ParsaKargari --- .../UserInterfaceState.xcuserstate | Bin 37688 -> 42325 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index ff2c1bed9f6cc7169bfc5ff0f6dec0dfd0bb13ca..0f2a7ad60e1bf04d2f57161e174a2df3f2a775cf 100644 GIT binary patch literal 42325 zcmeEv30zdw-}gP|E_3JJQHI5ZRggtw2U!G_Z2(1f1`v>KfKgFkkQrPu^PXHXEh{t2 zvJx~kTWr&8*D_me(JXDz_O#U&D^v6Row+k8YUcC4_J7{z`J^9);oh^K?{7a#V@GR? z)fN-;4ucrXunfoWjKF9ZsWNDWxzpNWX|D=0bv8|DfxpUvY?hA7AWP#^bCb>L#-K%O z>h&&##ysW@lg+H4&93b8jLhhmLCj#rlZj-am}n-3iDlxL5llRj zz~nLcOaW8K6fwn22~)}#nKGuFX13{A<}nIGn5&sZ%yrE5 z%+1US<~C*(a~IRiJj^`8Jjy)AY+<%Ck2Bktoy?2OF6JfXW#$#;P3A4;9cCZ%0rMeq zm^s3H&3war%Y4Ut&-}pr#+*V3@kom#)E{{vZ{&k~kslg@f>8(xL*Zx?8jZ%FRFsC& zQ3lFH#i#_8A|on8<)|7>L^Y@ZHKPtR9nC^lp?OF_3(#WbB)S$|k8VQC(Jg2tx*gq# z?m~B?HRyiy0D2H@Mh~Hf(c@?vdKx{0o<%#+i|94$6+`eN8m^th2wA{&cS2xIGl^e<2;;? z3vfBEz!Pu{ZpBt?!&l&|@I0*G1$Z&O7T&6adJy|c-n;pUqV?){DY$Th=j$sY#Sauwn%NDRDY$;p8PGBdpR@TOLu`}42>@0RR zdj&g(y^@{F5_U0rExUxhk-dps#oo@|!LDZSWba|uvm4lr?EUOR>=W#Eb{G39`v$v* z-OIkm{=gn(e`J4Re`bGSkFme9zp=lw$JtXH$MKxN>9~H}0B#`X#|`29xgai>i{Rq8 zL@tF(<m}hyJ*YW-M{=7Ty!4KyB`5-=+AI^vIseBrr&S&tMyn)Z+v-uo8 zm(S-5_(HyvujH%v8orLN=bQMM{2cyDUf~IUHNS|zj=zz=iC@mIz#`Ca_0 z{A>K1{9F7x{678w|2}_^Kg55=f6gD~kMQ5|-}685Kl8uwzw;;gQvwpOAP5>EKo}|n z3PD1!5F!i{LWSW%m=G>R2r)vEFh)ofa)hzMI3ZW45~_uXLXA)>)Cu)MgD^#C5iCN7 zFiV&%+$1a)ZWdMuw+JhRTZP+%Rl@DU9m3thdf|TI0bz@Oe@%d9s3uSoqzTr9XohJ*HN!Pw znkY?zW|U^MCQFm8$zUBkXhnkNx2Q`N@A8S6*e5(0O z^SS1*<_FC&&99n2HK#=^x{27IU;IG)Q2a|0&7C#X`6+aWd62BLJ5RZw!ihqiywTxEO zYPA8{q1r%gkTzHwq8+9U)ehH&X~VVA+C=SW?HFygHb*;FTcj=4PSLh#r)sBZTeWT4 zcCAI*p`EVn)Xvb()y~&0&|as#UVDpnrS?JXX6-}ThqaGrAJsml-J;#9eO$Xu`?U52 z?JL?>wR^OCweM&@)PAHrru|j>oA!6@aqS=46WWv7Q`$eZrzKXBB)#M+c}iZAw-hJ^ zNu#APQmT|DrArx7reu(^q--fi8ZVVdrBbC-C7Gl~sYz;<%u<`wE-jL-krqqWN=u}r z(sk1H(lY4==|*XVbceKB>XFt;_eu9l4@eJ6TcyXPH>J0vx1~MOUg;fapY*Qup0r;& zAbli#E`1?=BYi9VA{~={m41_cml+w!-m;JEEBnbqWPdq89x4aQL2|GhB8SPba-2L; zPL?y|OxYkCBj2Hbd|a)U9GN8*QjgKP1a4(wd&e*({-J?8M>LeIpsm^U9GKqnSM-v#)Z){ z?##dmg~q69=GoS2`0bGB6+um{CablFab?^TtgtFcZQIgHLbzsq|Ck6V#~; zQszTi`WaoXPd&S$GE<|$(r)Xtw6>Z%>kZkliJ6J<8Ij3xu?dm!BNAdGGn11OB9oHh z6B2UblQUyR#MkQw&;nZ8n=LbQtvN6}#->iQxxKFUX-=o9&0MdKga_kH)`FJFouJb+ zSD0G6%+{PvOIx9_)NHj`I!%qOX1l(VWwM#-^&!0lK%+8EofAyfiWX}NB%07-n__Hf zpWJGOH}(1d9bof zxk0%_S*hFx1AYe`ay`^(oMM?-XqwS7*#uozANBs3(P@SOaD`OmwwBfwTZ`E`p{3b2 zMNO95ZtVcY(b9P)S#M5zvYLt(^UN%BW7p)#Fo}Bi0&|6x-O-wUm zW+pL{l>lX^5~GY%G8Lmzt1O`1b~Tz?q2cD{-saZphgLROn$1yAcV3Gvs`o`y89*Yc z0A6*rgKj*w)6&(U<_1mLTCWf6%~oi!wKSQn_T2Wby=Bzvy?ayjEj$O%TCey2i?_Wf zs@MDcMH2fk0`mUib*9BKtfFn^W zQA{naQgcVA*$S-DL|dUmDUn6`M;e{R7{V;a3!45_EjDwTy`w-vz?*FuO@JAzxfxiE zxz5@|`CYNa3Y2DPueCZ*nhSZXYeri7}qTHjE0vX4@!0kcmw;o-;!1U?r z_rUb)Hrl_f5na8b#^mLfS59nh>zIAD`WhkiH}s|NzxnDY-_G0td@p-eN2|&Wi@I#B zE$wDX&Z=2RyX}~zI3(^~?rlqY|scDI=74B|%AC4}7K?*h(GqAX5oE#s^r6zmf!e2WTMR z!jxy{6HyN8{0r8irpdKhLHyL~gD+N)(bn13Wb5h#N(#DIy1%7&wa$yO9W@DMdl%`3M&M?L(ss90naS@tzHuY8JbxP;2DQVrz zZYBM1>HKY=^SysZ=NbP9ou7EK;~%AS=a9V1>}MjnnfDY!H*-MAqLB8S-evBbU2LM- z60mpc89mII=_BS-I^_qML(Ip_CrY-Gql{I?tz$l8K4-pQzEpCR@k*YOPYWC9;EF(= z#wJUL*)YXou~KEghjPDclXZ5PCAS^;9q_*rTCag>tP|}`pt_U=q^_I&FC*w0K-^7s z{;FqGbuZIoYnnpgTxOnSv*$0H1b@B59A$oFeggLPGxG~`jQO?7UPPI>v#pxSjb?jW zs_hT$6)FV^qm(G6dm+p3%yH%q<^*%H%m#&4!Vt7k4x|(-g?fgv|38`2h^YcK+iL5C zeknzhm>&NW=YKovK^U=iSDJ(M00BeFweXm;izfANHK~9!=X6Hx2-MqyM9NvIV%yu( z-k0Y*?;QcPR2k{&^?v7N>@$izs2?rN9br6vl0#eJ3_B1a^?8G5COUye~A9s>qmdcJ|9A>UvxXo6>T z_AHy(Ua(b<_W1bvU2-XhCw>a0`0Ki*JwpS7E;-u~m;I0}BorziRzda1R;wQG2@8+7 zg*JlUeJgqbyzOtH&(Kfk1o+ii@TCvL!|_O*0iN^m z;3u!cO?U=gh?n7;@vZn?d>?)YJmP!s2l#XR75Ke>#wWq+ErO5R9emtA>((8?GTi{g|zrCw=JOiH8Dv>wHy1eC}OLnFcC(X5!2*htKAb(uO9@j?3!a)C#7QmhMkZ>M;w%uIkwj*aezj(uk6Kv zAz#$qI=i&1y&WbXv(?fx%}Tu=4sS&%n7s9RUs|yvWiG%D>b5~@Cj_yxZw8dhMBD?T zo{e(QSTs(Vq)b+(C@sp=d(e3BFAPHks8E>(JsPA~6hdV^6;t+xgLZBL=GAOBTtKyT zKF?^S9BekNzCFj%S!kYFZ0Z8z$KJnseJrFKXPRMF^?}yb+0Jqd#pU*LC)0*bX=!cl zG^@-_m0k9CeNB4M_8pZ6LZODPPRL=)H+8i)O);v2U22{LeQ$4~HtQbhMMD*+ss}Ju zskAC>N_#KE?Im~r;9&n)Rk+roIXf)f@(oCqS8#O8⁢Wp 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 literal 37688 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 From e952fcbf9ea8e3c72dfae8cacf37ee5ba88a4512 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Sun, 24 Dec 2023 02:53:14 -0700 Subject: [PATCH 09/19] Login/Signup init page Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 8 ++- .../UserInterfaceState.xcuserstate | Bin 42325 -> 44993 bytes Rethread/Rethread/IntroView.swift | 19 +++-- Rethread/Rethread/LoginSignupView.swift | 66 ++++++++++++++++++ Rethread/Rethread/Styles/ButtonStyles.swift | 22 +++++- 5 files changed, 102 insertions(+), 13 deletions(-) create mode 100644 Rethread/Rethread/LoginSignupView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 6197952..1873c17 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */; }; 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D92B1FADA70063D9BA /* QuestionView.swift */; }; 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */; }; + 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183852B38273B001E324A /* LoginSignupView.swift */; }; 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; /* End PBXBuildFile section */ @@ -51,6 +52,7 @@ 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeView.swift; sourceTree = ""; }; 9868A7D92B1FADA70063D9BA /* QuestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuestionView.swift; sourceTree = ""; }; 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonStyles.swift; sourceTree = ""; }; + 98A183852B38273B001E324A /* LoginSignupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginSignupView.swift; sourceTree = ""; }; 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -129,6 +131,7 @@ 7C9AA2CC2B0EC02600EF6F36 /* Models */, 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, + 98A183852B38273B001E324A /* LoginSignupView.swift */, 9868A7D92B1FADA70063D9BA /* QuestionView.swift */, 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */, 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */, @@ -299,6 +302,7 @@ 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, + 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */, 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -464,7 +468,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"Rethread/Preview Content\""; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = 4GW9NWA7H9; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; @@ -495,7 +499,7 @@ CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_ASSET_PATHS = "\"Rethread/Preview Content\""; - DEVELOPMENT_TEAM = ""; + DEVELOPMENT_TEAM = 4GW9NWA7H9; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 0f2a7ad60e1bf04d2f57161e174a2df3f2a775cf..b42a96c9600cb4ab24b91a778d8deaa43dd93421 100644 GIT binary patch delta 22267 zcmb5W2V50L_db4S=kDHZ2q;oSdX*+kKzeVAB29{PF1<;SB5-#=irBrDn3yQoyRo-e zqef$iU86>0Vq#)68a0+!{JP&g?wrJm<_gGqYYgNgTRG%+3Zc z=j1di&PdKmzLA`hT#;Or+>qRq{2=*Ja!>M$=gAOQdn00ItZgTcT6 z7y)Bo4xGSn;0#=VD{uoNfj9660bneM1>-;*hzAKE5hQ^;AP4!N02G2EP!1|UC8z=Q zUU|366rV!71ji7mt~VlT0e_<}e@oFvW>SBUGx4dN#8J#m-#iTIVc zPy7xU$U+YCPy-HtnotXB!+~%R)PefY1e!uKXrq9(&>6ZwSLg;kpeKxgkuVBI!%=WF zjDcfd5*!bcVG2xzSuh*sz+6}WD_|v@2pb`SU2r;_0q4NEZ~^=negc=krEodi2fu*( z;Q@FM9)gGA5%?uM3Xj2)@Ekl3FTiW?TX+Zl0Dpvc;RC362!Dr9;B%=&DwAqRwWWil z2GSu?W2u*Pq|{sLBlVT~N&Te((m-jDG*}uUjgXF!j+G`#lcX8aOlg)hTRKr%C9Rg$ zNNc5&q;=AIsUSttPHC5Ps&tNYu2d;qDE&yfM7lz{M!G@zxpa$khxD-Yi1bV8QRy-1 zd4=?X^rG~V^s@AZ^rrNV^f&1P=|kxY=}YM=asa7GYLVLHKynbNLk=c&$swdMX+oNk z-lPxdOZt)iWB?gR29d#J2pLL-kz>hNavT{)CX*A$bh3ynCQHatvWzSztH?=Y6WL6* zlO1Fy*+tGE=a7rYPf5jRWG}gl+)3^tcawX_z2rXf3vxesfILhdC6AHE$*;+C;s2{0csr%Fu>Zy#EX~+i1G-X;c zZP`HCAeoMAuuNArL}n(lk=e?eWiB#TnYYYG7B5SXCCZXy<7LUR6qzDbmL{7ZOP6KK z3S~vI3R$JBUe+LMk~Pa(WF4|j*%H}OS&yt&woJBMwnDa2wo0~Iwnnx=woSH2wpVsU z_NDBo?6mBR?4Ilw*{`zuvfpG6WDjM(%O1%d%l?r4DSJahT1xY@20ef_rcG#5+Ke`* zEoe*Higu)(6tp`%g7%~R>0~;EPNmc633NK0L1)rgbT*ws=h6jqIbB27(#>=WJ(HeA z&!*?lb7>_#kDgC|N`FQ#r&rJ$=#BI-`Z)a+eS$toe@&mFPt#}Uv-CIgMfy5@gT6!m zK;Nf-qaV-@=|Ab`j3%SSXfp$uL5xC&8O-Q1dW=3}z!))>j2&aoxH0a`2*!``XOful zOfr+gq%vvD1SXxyU^1C3CXXp$N|`FAnwiWrG0jXn)4_bkEMb;1JxnjNj9JdCU{*4# znAOaBW-GIs*~1)Wjxb*`r;pZQI}JYXI&zcWvmSIl3`YnEUk z%dtGG!46RLA#g1kZ*hDso&0sUxI<}r| zU>n)VY!lnewy+9TU=iESPG{$`O7;_WG5aaIf?dh(XAiIk*+cAM_6YkWt2oLYV~?|6 zv8UJz>_zrl_B#6m`y+do{fYgV{hfWp(Hz6E9LMpT1~-7y)pE^T3-=MXi2IoPgj>vg z%6-NyQE*GS93I6sCT%O~317-r@soH(1Fzs)`I-DIel|acpUcnZKjJ^(KjWA4EBKZCKK=`SKYxHf z$RFYl^GEnE`J?0}#RkZ4E-NHirUBwtH(dn6|X{~pOHAwaNIYHJuu$7&Ph$|J4uiZvXsXJ}?= zWABh?SzcROdP!q|rk3`=K{|tVlPq&fv#YBoR8-2VvTG`;5*jMynOcKuDoW(#;YIS& zysl~<1+6CYGn zmEF*5Y??eKUOfoh-rQoTK;lML))`~sV`^)}C#&vTW@T)O>uoK1h6yr(%+xZ83JvQU zjN<)hGRIWZ6y?gps;Vlga4(Kdc=(y2NeSv3!|E%mud3kU#^6R0cRoGXZA68jQg4nLh{w!5|bz zVgch z5U-pzaIzMVV%(HO6UYD!7{DrZ2bn1n1c{I=q+GzoJQm6Tpb4}RYUK4b$(W~QBBzD% zLZX)BJicKd7zA`uFbk_|s*1`Bgrs~)uc>$c?|Dh5qzmW*y-Y35_Y8|y-MI`G>r19# zI;#JzzI6yN%p9UM7_%)nyC%0Vyr?{HT&=vSApt+Q7YtQ?Gsp{?08^!ljv4F)X3F6@ z_Er|a7UKn$zzS>4Mo1GT2z!A8gwvXly)4sCbffh7z^2-!WrQ^-+E zm=R(4NEQG;QNm>ISZyh#%pAO(G|bZckup#i*U}cEDxBlSK z6$M4*@kIsYwUtRl@;ayLx}y9VEmAp8e^Zvbnpp3dmi#xONuWoczrq}ikT|RaL71u` zn5kRt<%0oFwcC>5%O8lhGhX=oHa z5mZh1kAmej%fLiXEt!^xwJWbVFM3r_3+j5nB%w~|ybKyZBbbcKnm{w=odSOlXa#M` zb%v!(17=@`P%pGAO^14WcYtZjK_}<}Q$e@TD6|MjXceYh05iZ$+u=>421*;^}1}WaDf7Bda2i7YW899Ot%Hu|EdYi!J ze>zvN39M3T8#`HT2YW>3?f^T%F0fmeF3b>S3bRD!?gL+_m^)jTqhjtc@Ri8ixO)dQ>=u zfS+&_fif)MYRk!bIfNVwpU5ThgyX_jy+l5U7ETC)lCpAkF9p+<5oJU{$Ho2b_ZeU~jTKG;lD|{>5{F~ho ztwb9!1t6jWKk1@yTDXF(?i7Avw6&L_TYTa)VmdKHI3t`B&cC-f-1!`AI%kD%gk~Jr z{2%VC-*EnIOT@=2Te_e!y*PP|%J?o2OE8S3L=Vvm=(N0wT*KNj9PuQ^jZUd4Dw9{& zWS3P6mxRlLBvUIxc_=)}^S?e8C{W^U4x^LUShR!w#`tT zwZuANeQITPO`&??5v~bWl?QDS95)f0)6~(6JQmmX5}!+^eOPdT*oud_4NG|k(W4Bq z)f;?WxTJpQZekC1b$GzN#BODoZKQ>|ct3FL77r6&5rXgo*5G~NHrC(|!mt0-;Mc^d_Zqw>eBZA@H9^mdD!f2k zBrXYeguB8||54##;u==r55kW^bAm|t@|voO4<;Y@KeTs8rM;j3tM+~twI}={Tvlq^ zq$@rY*3X!P*M(pDt?&`?8v7FBG4TiSgm_9kBmN|w6EBFD#4F-2;Wy!d@KE?&cqBX) z{t%uBPlac~pX-P>cq+pF2m(kzh$k~ENJ(sj=h$kohZ6omfItA^Vc|?*FfJUfG%r7+ z+?ci@7!C&0dZ4cGLYShG3pBtJ3LF9r#gFh(c%}MG(Hf!!`o;&%p(XaU&_a0K1FeKN z%5m=23OEcpNOXIl9kdtT3h#QMBXmMQf&dU~GcaS-Op})v)D)(b7M06Y^N_q+o0z12 zsymprRG4BBI8;4{_dm)D24J57M?!Dt1AU<%^hZF70EqyFfD8c|0cIr(lnk+g!7v1d z!Y~9_5hRCz76OA1&`}1ZCn~?UFEJboYReiLEGu1a5 zi#I04sPFi{DGwK_Z#VmIoQI1=&Ld!<_DwmWZ&C(E8!FyA3b0ly0`>?vAb@3$nKpba{JhTuwqq06i49=4 z1mEnewg3d&RVFY}i&8uVPm3P}ToG_nUxg`Jx>|Pq zL%awti$uAEz=$4r1pyDW1zd;UiNvsnH-&cyc#6EZt>T5(zf3?|Yor$2-`!8}7d4^o zsR-rszZzn1886SRD9_8TYWP5d*oG7mP521Ux$rRp{zB(@_!JjBgMVgf>F3r~RpII4 zUp^Lr00c_^#ZGaigs_erdQZuQ! z)Iw@0wUSy(ZKSr+VN%STNCct~h(=%(0;3U#L0}95V-bi&06T}cby5d4m!!^87pbe% zO=2Y-A+jmHpG`>!q#=M^MWINjB3!IAD?ckb)G%o%W|b8Cp@cqGNh4JrRT>S4NTY?9 z2qda6Q?$(bM;j}}uBk_gpFO@u8jnCSW|WO$yfhUPLz)aR(NnNbm8OY4H5GH}--MDa zu?W=po9~q7NQ_b!k1uY?`BCkOeE=cD|=i`{_ zpWy;t`^YWnmEuH3YlM^HgUm^~Nc!=Ad}a*-6@TaDQjwQE(q8E@1S%1jh(OiMogCe7O(xCmpi5Va7H8DCEYFEBi)O@Bn0XZs7Ih-x%3O^erPB?h(IF( z3gHz3UCIF-fp*8Gr^F^-Nl!>mO20+`i@ynhW&~Q6ORPXNbixyTw}2-Rpse#~)4n3T zh7$zoRRn|{>9+_VoFW){OTWW8g7lUYd!$wb+TTaz(jTNh|1;#5-jmo!e?_28&_iH~ zGRt$Q+3(UP|GMibzUxl}I>fs=m7jVVjs1(1N*q>8UrXOe-%8(+5)zOE2@#lz0Or*+ z1hBeiATSewSqRKtEe0(3R~5L3-&CPWx7x(S?^_wK2Edbgq&{|Kra+4{P|h4V%wVpH z45T4BG;K`0DvnS^qok4Yn~~89(u{P(mQR|K7NjL*XWHokZBsQPT!jy|-9nM2=HbT~u4P+WQIi*@& ziu=Rq0|HwR_#A;%2<))Hi#S7m9WB}1XYgbTiE#EtDo9Mztq5%EC0juW0^9Kl$?zog zV3O3sz`2RC&ffq|CA*b-{7vyL+B9;ya+kkXbbntn$yw^r^%u+~=Zl>y$$1FuMqqC* zxq!q<{sMt>f0t!ntg%NK8_+QLeF#GKs71UlQ!7~&pu~1-WvExW$>rn*%xH22xsqH( zt|r%zYsq!wdIa_(Z~%dW2pmG-Fak#q_!5DmtI3VzCUP_RIk|=0N^T>!BXA6X;|Smw z;{*aH5y0kq7J+Y+^8-H}co38=6>3%CFL^}uUAZ#YRGAl~J@zZ|#NQ#FBF~5f@5?f5F)9lfRJ<$cG4=N8lm?msQxVAb>s2bp&qoEdY>@L0J#^2Lcy_T5KIo zN@egMWlJ!{{VA3|N8l1(8JiUxpm>enOY^P+Q4X;azmKW2X~B7-|=(*vu(pae0IFL z_Lu(JMd5=6zBe%{SzUWyxj#JTgD%t6#Sb#IvQ-ali5T)hZH~J3cXe%~@>zu82VEAZ zYain-M=K9>v&zX%{0EIo)zwebXk#rRu{zVBJT%iG+UJ>C zX{rHcM(KR;jLGWSm;H{zX}YG~2fmvU)b)S$!xKk&BwBZ98-+dCI%*2lPIXY7R2Mas z>ZYbq)2SKMOr`c%Lk~nyh>)$LW~(PhY92M8S|Dci)FK>)5_De}O0bB~M1&TOin|dp zRB2p(UJOBlsMXkGQ)>{x^o5|*dK`k{P(}5N?^gdz>9?7!)OH-WQQHu~^-wzy!HWrv zA+?A40!L}oUL1cC8aV!>_T%`I7$623;W1XhM=2batfY=n$EmNV6VyrSYeZ-xVjv=L z?5Kl?!HCdZNu9=nJ}btT)OkeU)d)oB_s5q*)Zt}`;SK7RDzc=o@$rZ-_(x$zpKJX3Y(@bB8+etNny{7Gm!zxIqv#-)H9g`CzI5l)N|?u z^^$r;{YAZ|-cWC;cZe`SgefA-5Mho83q)8V!U_@Ah`{o-T`L1>$;(J;z9@GYBg%bP zzud7vG_edZ80W3VVX|;UxFNzF5hD&F|2h;TLD2o>HiS%!!=6A}LXcylmbSuThcKZppxp^#RK#3@ zh@c)>86tv3%=xm3vKkSSy{sCi%|uAAtX4J&5uu0(`&TNUn&4!Os-+^W6&42`{Vm~< zDP*l`=^&MKB0uO#C7mvrQk2eAS+{JOY`ScQY^H3MY_@EUY%U`3m`5REG$LXUF$NK1 z5fO`safpaRMEqLWyguoC)F++AqI44arIYktI%$1uSSw0r9U>C@rL*yWvSGVyrzn{n zh#21^+l2@*{j)Zd?UNl4+3RX{g~b*$FjV99`%lVuDBp9Fbu5 zr;2bDXJyy1myvxVJ109YyCAzLyF_)%uE?&+uF1YdLDpAlRO{+*k%S4itVW>2#f?BTpI@vIU z)}(c@FQT<*ZF(R*h}NO8^QlC{L_|~}q8br3h^Spj>q)F=1JM`JLlH4aG~c>@U)1nn zs!Lnb!^FqM(zYsxRR4E}q^CWccEO{hoe|Oa-XG~1deC_H1Y0NVrBX=KhohXBVW0@0 zM`4A~fpicZOoz~+bQm2@N6?XU6piWEf(Qj7u-PC)v?8Jn5mOM+j<+8W(TR@?uA@h* z6+*{Cf{qgvLMMs}ncA-qoL}Lyg|pNO`Q+aUQ973&R80?b9@Yts72VyZ6S@%VoEO)Q~%#IY?!#K#|KVkNyst%=ntO)SQq0I$(vrvfD6*m5_~cwccXy_x=;-a>Ds zx6#|_9rR9m7rh%1pCMuiB5;R2i0DPcGDIv##0o^LM8vAK^xi%t9H0*p*YMbnh$>j! zuL5lHoAI^*M)A4I6GYJGL{Xnd#F~ClUlK)qioPO##KlEot@?^RrB=VdZ_;=^?4iFy z#QGlkHX=5N0#BoVr131+OWzd*z7Y$YzJ~=)Y{IzyHclr;tP#&v< zvIPr;zNhlEn^Z!1!9YnGU-WDG4gHpW$4D5!U{-BI#CAkr2elIs*g;`2?Lov| zMC?Pv7i$@*S||*yc8?4%3T1!4P!7I#k4M$+kr{%8!WbgrK%Y<;77>S4{9_!L;UXS;2G5j;ID)N>aZ&k%FO|``LxwUQjM^L-wK*R9@CGqDU;-GN zq_1THnII;Z31LE+FeaRdU?LeDpMQmj6Nos8h_4ZG3K6FfaRw1*5%CQo&aGue^#LB+ z2RL2?e7+y>rT2ipRnL}8wg@-}5f}Oa%Q0XEZ()ibL|hbSOMJl`7~IDJri`f&L6;-q zau0(|?}`XIj;UelFleS$ybTLzzZe|)YoteSRWM(n58EmdM5%HaJOo_hzT1MH2d!afiVm=XZ|J;xJ zm-kW8!#+i?5pl0Y#Jzsp8~&%Fw=p|J%$RAv_Ar=f_tlEt%j_31?-McqCSpDyVt#V_tPR^WR@QT=4<}C9KbB;OBTwpFTmzc}U z73L};9wXupL_9$Ro}!*1;!i|8N5l(6yhOySwamADc)w$AF}EdF%pDQ$U;TLBAt*(V z#O4ku72t5@kq8*~`MMwQQ&G{+m_Nl2BHke4t@?^p?WASXuk1I>I}!L>1SLJJM7g=b zZitkXVN@)MK|=zAW@&8f5YN$}$~(^12CNo4NQIgmD58e=ENv}Ii?xp`bdv3vIuer@(5}mH~>LS1ho*xf~)L4B~{;C?m3AsBTc2=u|ASziQo`arV*|4YkkI2(z83PJ0&Y^hq!Y-Jzb8WFEeKi*;Q@j9vT z;=Q&Wwhckse!QwPIR966#m-=7iFjusXxGEeM$lem$?QCKp@_$xU4Y#ebP(YzQo(Wj zFP7Zi#}xK67SDI06!01kR{QV|nyJXnu41={QdrHdVb`+j*!AoNb|brq-OPTDpbLVo z2)ZHYj^GFcJrMLn&@)UH_Bs24 zeaXIJ|3WYlLCi5co>2&nMlc4!F$j)DFc!gaYuUbSa}IC>lP|I2ND*^fKjs7kQ$)v% zF{i2wJcJvBL326?#`l5daN>va9ymn&h$#W0ads+5$x8iN%b}bz=cdBUxvDUyeRzZD)VPrxK5ny?^X7awU(S#7 z=K{DuE{F@}u$Iyh-oJ*K2xcLejbILfxd`SVC`T}VEf=QNGZ&@aC*@*9%mw|Jix7?? zfw)f!%T$=dxHJ(nUXCj4$DD~V|MzXue$@F~p@_Nw!QvjS2*DCH>N2iUjk-caT`GoU zIK07OnU|=@q1+@+3@Kp|hbJej>GFTvpx_kTG#o;60*AO(u8o_*wbS8TC)dSIlf^`ViBiOKxo8AX~w$z22D{kv?^F{ED{owJwN*aQAk`%Y~ z;B;L4x1?sPQ+X%|;g*T=SdQT2etE1C<$*W%{<*=|FO7}dW>FfO5Nz(@upPFjrLmpc zh0$_5MA|Db?WJjA0G%p2aV(8sZa;SvN6_2>?jU!FJIo#7zC;iq*oq)_J{Va$f*mWl zV;IF(FqAtfX+W@39Cw$vdk4D(8yrDbE4{~wcITPr@arQb%%0yxqE7z{H)T+46GBpS0^ehRUD>*d&s>Kb@Ds+ zh~A0fDC9rstCPTt94 zcp#=VJPs!j{J38yc#Sk1!CqBb12_ItC35BP@{z zpaJ$r_=5eBYoB6x6W$C%=JBNPSr3mVg(WJ*@YcL4{j=w7MVc1I4Pb z=d<`cyluy4^Eo{B0GN4O5Zt^s?S*2)1;%E&{U=1%lHbs{Eqke zt9y8CP}}k9J6|o)iq+H*8xl}b)C10x^UEu!sLD7Vs+t=o6ep1kvsZ_vxLWUZx6o|!6Q9-beyn=(>Lq1bqB&O&2x0t2xG$dPhwi-ywe^L=sgV2EK@6TOher7MjMN-K$HCy|4jWj3?ylb?Q zzpFuOF#OLNoCY>SJjQzn{(^^z;I9bYU&-!*h8kKL+W2goA%Y=zhaUch-~)U_?v*mA zvqvGaOk;?eJBHS2yPYw2DzvmD36cs)o+Mk+ATh<)8hmw?cuPh|oK1&If+R7jRZR_? z0{2L?@tZ6Ck%NZ029DoVWjz{J2tMlD2Gg*`r+id*cB)%CfV!plz>j1cK18lD986n_ z5AA$KCct{U%Qc8H)bP~s(in+P?cnHXB?6YJ9j!a!UKV_U;4=iD<468yLqx-0wP^vL z{?{!JjSzJ$K33GfSE~J=JsFKib?pnh!CI%lFPj)h%q0#I7mPLlzi5&qnIOra6Y%?Z z1$a%V5ibmN&|P#le*10?e(!Dp{RMun?tA(V`YC>!?gd_jcul{>>kkBepKdUIm2L<# zlrd&Z8FTzPoi$UyC~$_lpZS?(SSvOVXAfC8?$5(9e<54Uma^rnqLQt`FRFF2Q`u=^ z49?EMFRaaH7qW|RP<#Ntm-Z9;ij(0t&YV@j(`YW8%jB}TTu#mva7Fm-vNHT$nSjHL zDO?8*FuJ+v+)QpZx12k{UFQLwI)brZZNqPKZN=|%?Z@wO9mel*o#xMC`?$bg;;$(9 zhnQ-H8Xg)U8lm`otO$)*jWmrsjfonQG!z;iYpl{(tFc~Vlg8&7TQ$yTT+w){@u$X% z0UHMF7;tOAPnw#VHJZ(uO3jZoS7~n3+@ZNkbC2de&Hb7OHBW1v)jX$pLGzO470qj! z*EQd1S!#{es@7VdwOi|o){j~bw0_rmto1}o@l5NjwnUrImTFVlw6=-1oAzk!0__^@ zI_(DSChZn&LHiRO4INvZ5jtKv-a39d0XjiC6LjP{tvXY5ItKd;jvPE{aLnM?!Eu8V z23HKOA3T5X!oiDl$LOZ%X6R<==IY9I3v}CbXX`G~{Y3Xu-6gs`x@&dU>u%KDth+^b zo9=0a?r*v;^fdG|^=$MU^!)T9^y2i=^)mIc^>X#(dR2OL_>GBHy(xMfdb9Kv>3yQN zTJLkcBYG$GF6iCRd#d+RUt52ezN>z`ezJapeuw@n{WMz${slQr( zt^OhXOZpED7z0ZK7Xx<#4}*~gJ_ddU$p+a5Ed~m~pw(!)(ITUjMyrk18m%|lXtddA zi_rn2Lqn<62|ExYc-yaffl2akue&2slREUX|QRiX}D>mX_INY=}gnvrgKf_nJzH>$aID2X44&}yG-|( z?lb+>^f%LIW;$jDW?p7tW)WslW~0m!%(BgL&E#eUW;JG$%<9b=%@&#Unyoe4WVXxf zklAl$kIjdgTba9?`_tC zHds!!TyJ^BinG$OGPAO@vbGv#WpCwZHOea4D%~p6D%&dGs?e&~s?=(V)k>?aRwu1a zS)H-^#_GJ)MTOO6tE*PuTHUbv&g!<+bE}tDe_6e;dS?x+p*3aASaa3`thKENS=(4A zSm#?$w4P_Z-uk@tJ?rN-Lu~wPqHSVq#@fW$B-kX`6x&qW)Y~-LG}*M+OtYD5GtXv$ z%||v%YJ>p4q&%d21`NC2Sd61!t>at7)rkYhmkP>uEdE zHrzJCHqtiQHr_VLHrY1Sw!pT=c9LzqZKG|IZHuj7JHvLC?Ht>AwhL?**?waCsqJdp zeYWRqZ`=Mhj2|{&nBg$fVdlduhYcHMKg@C1@L{3D#t+LHRxqq+Sjn*RVU@$?4BIg5 z+^`?)fZbp_GrIu0Acb9sU6@^jU6kD@yBNE%c7=AucBOXZc9nKjb~Sb@?Kau%u-j#~ z$8Mk9e!H*jPTQTeJ7@Qc-F>?kcCYMS+r72t>^1B)?X~TP*xT5<+56cC*az8%*e|!= zV1LB^EBo*4f42X_{;B<+4xtV)4k->94#f_24hn~94l^8PIm~hR*g>(>VTHq9hx-ms z9XUrWM;pgT$7sjVj$<5S9pfAm9FrWA9Va?gJJveZIW{;>c5HU+aGc>d%W;mQ(s90H zuj6vZm5!?&_c-ozJmL7Y<7vmUjyD{?bG+?%$ML@73&&TEuN~hyr8wm~6*?6=l{z&z z&32mWG|y>)(??DpJ1utl%xS5@sn=<_(@Li=oDMi0aysI4)akg>NvG3JXPwSDU39wa zbk*tEaGl{^!&8U13|~I{?C>Yf1D#!*$2gC7PIaE(oZ(#HTk|d=V#7uo!_|t7uH43MPcb; z<6`IH=;G|+=HlTJ;u7u>=`zY?jLSHe1eYY25|?h5RW2u7es+bfysLq$v8$P@rRy+P z2iM`QF0Nj#VXmWGV_nl-vs`ms^IeNvOI+(+TV2~+XS>dEo$ET!wa0a(>l)YfuAjSZ zbKU8>+x39!8Q0%k|8RZk`rP%E>uc9{3OB+{>Sp9->Sp0)@K*sxp%lvb)W9uv7KGw#Rc%i6``=JZVpDPY2K8o~{bdc+W)7@t&!k>7JRMIi7i*`JM{TR?l|N zPS2^H(>!N*F7W)+bE)St&y}95J-2)A^xW;a*YhjSlb)wM&v;(<{Lb^X=N-@co-aIK zdA|01>&1DQds%tedf9t9dAWGGdwF_!d--_2nZ(VPFZ$ob* zZxe3^@8RCA-XpxdyuH20d*^u!+U}EGVjgaTfKL9@Als3 zeZc#$_gU}r-WR>Ecz^4C)BCpf9q;Epx;}0`V|~gLKC^s2@>$`t)@OsyW}odoyL|Tg zeBpD_=Zep_J~w@C`~2W@*XIwPr@p|K@@0H^Uu|CCUk~3gzVW^#zRkW1 zd>8pH_WjIvsc*0Ea^DTU+kAKW?(zM?_kiyy-!s17_@4K@<@>$w559MO|L}e0``q`X zAK|Czr|mb$Pchif+|S<6$0j+%>)+}> z)qk4*4F6gF3;Y-Pf8zg{|5E=o{#*PH_#gBC%KxPQDgO)pmlgh3{jdAq^#9rak^h^3 z0Rh?pIstkCLjsHfOam+etOGm)Mh5r<_yq(61OvWq`XNI?5<(Oqn?m-590)laax~g3#j7($G&rkA^-CGYWGH3k(Yi3l0kniwTQWgvEy?hUJG=#H2XF*`yTu^?hm z#M+1r5t}2nM(l{#9iiA4aUkMw#Fr7@Mf@7^CQ?7rI&x&>sK}JaoXFfrd1QHHMdZZD zIguYnu8Le8xh8U5O$0$XbD~-C!(d%+R-}EdeK9ojiODWZKLg@ouXZ$-J*k|$419SkBg3v&Wi4g z?v9=jJv&+%y&(Fd=ue_Qi|&bD9=$4hZS;od&Cy$Vq8qijYE8)ZMrY1Fh)AC3BW)Z$S~Ml+*z zN9&IsGTLZ#)99(Ar;VO5diLnIFDtKa6p<926q6L26rYrol#(2&9Z6G@rX|ft znw>N^X&oou9feby4cd)HSK=Q#Yk< zN!^xuPLcXu>JO=RQ}3ldNPU$0B=uREG)*IIK$=$Cz%;`&+cd{C=QOu8uQZ=D|Fpog zv1t?1CZ^S-)ulD2HKz$_ZD}28Q`4rW%}QIIwkmB++Pbt2X`9owrfpB#nYJfwU)uh( z>uIkh7*7bCkT;=w!o~@wC;XPqqz_CVoUWffB;6w2Azk5=?wszL?w;2uS2(wC=yp1vb}cly5cL+M|pA5TA#el`7W`s?&} z8AJw|L1%Co12VKTbTafZhGZCJxMz4~jLh)K@XH9y2+0V~h|Gx2h{+h6F)pJ#V@Ag3 z85c61XBuS&DKfJ%6`6}OS7ffvT$i~ab4TWZ%tM(+GLL2+&peTNIrCcPjm%q_cQSv> z0$BsH24xM-($6x=GR?BcvdVJL^2`d&8kd!jH9jjfD?KYKD>th$t2(PTt3GRTR!bJj zYRmd4YiHKQtVh`cvYoR>W`}2w${v$FE;}hZC3`}4Ms`WIqCR_ac1t$Oo|4^>t;}AU zy&`*c_PXrN*;})BWbev8o_#U1~fjLwTlf&m&UNGoV8 zSXi*MU|GS+g4G3|7wjqcqTpb`k%D6dUlp7zxKi+K!Oeo(1wRzrEhGvx3v~+h3JnU4 z3(X2G3#|)B6nZHNg9^tK#up|PrW9rrW*6oa<`>o$wiYfd{J8Mb!li}F3Rf1cDO_K; zsc=i-_QI2erwh*(o-4dic)9Re;q}6sg|`du6#iHQicE__@qg{oU9`FAV$qZ0fyKj% zy^4K`{fh&Oql)8-6N;0HlZ#V}ClnVImljtPR~6S5*A>qz?kQHREM8r_u6T3t*5Vz- zyNZt&pD4aue7*R);_r)pD*mPTx8jGzZ%Wt_lM?e1s}kE1`x2)TmlF39&l2wvzmm9; z#FFtPDJ5wo870{zxh3+F!jj^W(vqnqt4mImJS-hp>Qy?SbaLs(r8`RxmL4fRR{B-x zxzcY-ZNl5oMlbzGVSr!DXRk@nuP6 zxn+fAC1vGh)n${)8p|WXZvWI1l%Kj*OR`$H?Ww~zoi1L*3$>mGRkCy*ZL08yRgjU2<#8$*tC=x3&Dheu! zDoQHKDk>@_Remn8z#9I^ZO?*7@>BQ#~Url^7 z@m&?Df>l~ogQ|3^4624!8CUsKMOMXB#a6{tjju|rO0UYSDzBPY)mYV3HMMGH)tst% zRg0b%*QD*8N!b zbDiSXx(9WS>Ymj7S@*K;b=|vqqF%3lNd3@y<9gG2i+bz&VfFU)PW8_9uJvQ<%j@UX zZ>zsr|F*%rA*dm%p}C=>VQRzlhM5fu8?W#*vCf-^PH((8h?y=*H2FX^n-A&5c51 zTVqG#)W+$Jvl{0%&Tssv@sq~QjawVHH|}iQ-MFvuK;z-YFB^|Ho@o5K@!n+FWc$f6 zlP6AIIC<~nZzsQO(rq$nGHmgY9@m`EJia-lc|vnWb5?V6^Wx@%&39U;7KfJD zmWq~{E$dpgwd`!!)3UGSXv>+Fb1fHJuC#pHa--#!mfu=_SG4@m@~q{#LPueyuvXYA z>=n)mH-(47OA(<+P^2g(C^8j!iULKkqEsbDxU8n>FYTC`fVdbg&uPHLUkx})`c>-E-qtq)oswLWQm(fU{G+crs? zM%$1!qc+nvi#F>v+qMyH!EF(3(TcX1wz#&$w&b?dwxYI4Z8O?tw<+5ev@L2|+_t2x zw{1n+>b7-l8{3Yyebsid?Nr;DwsUP4+pe@-YrEd|UEA%pJ8kc#7*7eFk~gJm%El?z zro3q%+V0by+@9T@*Iv+G)Lzv-xxJ-bXm4w8Z|`iM+Phxm!@nb_Bcvm_ zqpo9K$Ci$Z9gjL*c2b>O=YUS_PTfv}&Y_*go%Wqxoj#rZok5+Uo#CDFomrjo&ce=; z&dSc}&Pkp1ot>TYIzQ?Bth1+cdFQ&$jf&3CJGXW2=)BUU+2z$0))mZ5wWjN0*Y{n&c0K5N)b*t6&#re4pseep;HuY_{tefo~)IGG@q}#UJrQ5wbs5`VfqC2`frh9C6 zdbc9K`~R!aUS27W!#Iw|j+|0T)G3mQk|Z02(3o7ZQj#rAVsSRgRz_%^%kX#`*~5|INr>XcJClMDGT*K#ZO@}PdL(GKm@F8!rJ9nw)9*J+*Ad0o&& z{jJ-&=N)<{-lcc%J$dhzV5#P}G|R9rmTfs!Xhl|HW%kv+S*2B5z+fA8Wq0;$uSi2S za*&HW6r&X7Xstjcs!@k}G@ubpXvTL0(2XASfuI-wFoSu$#4{zN>C;$Ke delta 20215 zcmb8X2Ut``8#cT%r=PP(wNM4=(vhMl9c*+d0@9a7I!KYup1}f&8g=a@3f5rnCZ?z{ zmLzJTvG-o0vA5X%IV>dR&HKIo_sO+q_nJ9n?)$l)XP%ik^Ipd*#+4}*xWUplJ0RR->01tWqBVY_nfGIEoeStNw z0sVmk7z~C0U*HG)K>!E@K_D8$fKeb8#DRE_490*IkO8tmDHsQ;K_gHB5ljRvvUgw# zm=0!v*(xv>%ma(SQt&xg29|^MU<23)Hi6Ax3)lsAgRj9i;9GD2`~ZFeKZB#-7&s12 zfz#kJxB{+%Kfzn@4!j2+z(**9076JW5>ilra;OW9p$RmFX0R_bhy9@gbc9aO8M;F+ zI1~8;1BR1JOmHJBk)J~6Z{z-g}=hH@Ep7Xufn_V9=s19!av|6_>qtifPe%+ zkOW20L=Qrn&>?gQJ))0_FeHo!W1=r%OV|WKyd5iP_NVk$9{m_;lk77>eyCB#x<6|tIFL#!p%6Pt-I ziM_-@;z!~bae_EWoFN_&kBKM5Q{ox%oOnT~UJ|c}*Tfs*JxP)jNt1F?i|k4EBF)IY zq&aCtT9b~XJLyIGkba~;8B9iz(PRucii{=G$qX`+%pw(J9+^*;kTqm2Sw~JHCzH+O zVsZ(&l>D4rMlL7Y$aZoCxrSUvt|vE;hseX^5%Nd!C-P_VD0xgp9w&bxexmsL9kcY9=*{noZ54R9{nj zseRNB)IsV;>L=!c`9!3wRN6<-hGChV)p;PHJI-Sm- zbLl*~gf6A4RdfwKi=IuZ={fXVdLBKWUO+FT7txF9W%O!#J-vb6LGPq@(cjT~>9h1X z`aFGszDQr9FVk1(tMoPcI(?gdNdG}Ur(e+T=@0ZrhGAI7oUvf~F_w%KW6jtwwu~KP z&-7=U8Bb;~GlU6YLYbjVBooEtF{*r~fGK2(m|~`cDP_hnWlT9!#WXS#nMuraW(M;a zvy55Jv@z|>3T7pGLWYgIUHisR{mawJlIJSnZWoNT$b`Cq2oyX2+7qAQ2MeJgB3A>zK!){~3~1yN^A`o@Xzx7uiefW%detmA%GZXK%1~*gx1u>x&7=9F=$S3icd={_Zvw0<7#253E`DVU_pTbY&Tls1Hbbbc^89$Ss!!PES@a_Bx zejUG_-@tF=ck;XVlnLcRgU~3b1W}kQOckaJYGIzxF04=qD}`0UYT*lEy|78xD(n`%6uuHp z2q%T#gj2$4;f!!rI47JJE(jNeOTuO0if~o9CR`V82#N#vvj|m8riM_=MA|)NSS#dc)YlirlI9Hq}F2Kc$ z)${qsOpq8Wriv4{%@Fb^ts2>0**;l~Xe;`Pe(GucCh5q2l>IF0)h7E%^ly_L6$8{; zv@ED!W%Fbw)tQFoAW*%qXDp@P^X>6c^^=}T?bEWeGRHRA88Ns`c1{dYD|^}4UXopx zIj)plmR*rum0c4<#i8ObarjEv4cSfEE!k~xgg86vwD7EG;No**st`kw>LO>5`Osvf&O&zt_Fqz0?6l1EgQQ zhN!EJ0`afAW3H>eHFB5Aw9l$v82NUV-B)`Xhe~Cpq#7AZ=iM_pp+00hytDSH+Q4LZ z4_szAVL;#yOZ46K8WPm`CO*9lqKdOhGRv|tDG7PXD(CX5yqpRhQvJ2bCNMxgNeOE4HAb6f>NKqwdrhJoQ?jyP7#74yXWRbZsd7GD(sBE&( z!FaJ;tP*R*IZKxet%Y?z zHJCFxGB&WREVHH^sAaACs*jp~8cEIv3)K58oWMf$BZ~pO7lS2fe=*Z}%?hv>sMUk| zIa{}Z)sisV!3wYvtP&@Qlf`DSMH1#(@P$lr>nY;YPGN2Z+a+Oc6Ip#4D6WBrGRJk`I=BIDf?MD= zxC8Ejd*D9!9Xt@1h)c!K#bx4hu}y3jSBNXcRpRP(;15jNWAFq#1<$~9@B;sO1zwA5 zFp1m5?cxq`Cj#LJ#ERPyC_!M{HeDMJpiM&-w+S-h+BV3EU#Lg;8GAu3plF9Zptjf{ zZWhHZ(L+7hOV(=z)Q1MJr?^gBFK$=?d&_L0p|}xCb(4CP?GWb{SDEy$`w|Oi{jW=G z@FjNQ7JSK8wYFU^RngwgOOm5XmBk~9<1(|#b^f~E1-i-{moFDxIt2{}U_nCQUma0v7jcZ*+&Ux|Cfuf=axLw^_m1Mx8!bNj9M9RmHuZxIN?Ji8=^ zX6IFul&M$RmGy~)G1wF^3Py{2#eMB?6pR)3BOHXB>|I?GK~+0Ug303d2#{jKS(pmb zU^>i@X~RsI1r;zGDq#*B3v=L>Iex{iKGLR?7Kwc#a-%!<5{V%*EX zxo{qwpIn+*k*n!D#1rDL={jL*w>g1oA4i>}MR4&LeCg1F zvP||Iw!vxG_nosc%avpBcbT#fKV-ZT$E@GPW11GNgsX7eiysx<4p*vII1X2D3TD#b z7jOsmA=m-e!S!$h+z2j5eI4A112FbO z_!Zm(zs4cl8h$6U6>ng%V$T$Bix0&=Fo`&Ckg1=jPN+9e+zf;5l0qyLA=ujFNt^6pvXoAufdzLUhVKYydmBb@3+HS z@V5B7_&~H9QOA*;BTWcXSugCac3n^j zbHY-(fd$bI0e}Gf1Xp}cNn!TC5#j8E=ubGPb)0$=?S!Mchm*1DKm3hwhDySfaD%zT z0Kx+nAi#>J5YRz@!tREE9Rk|_;c$dEF|ga=5YR$^?smCO4hcW(bA&$;Km;PdAiyIa z{N;8;kuwnr8t_vP;3UucKjaDjXZIr_rS1#?Io83y{Evv0{11U1lBcEXq^jFuV$~a? ziG!WDuD|7NH=r2_=z(fGz@h2%$ z_DTBLPkc|{fbW8UD*|qkepH>w5AhHE{12HN*T}^E|5qm6ET1KANJ2PAoF^_27l}*6 zW#S5PmAFP+N5B&SuMh;h5g3TTAOw667>vLW1bh+j>mY7+DdBFH5*|oO@b6Ya@ZU-p zw(W^34h!K=NeFKd2FbB*mE#`2Cbl9|QP56Ws$+&Yt3FALNgLAkZ!3>N zAmSfZCY`XANoUf9#P*FuAPRx#zoW$erIE?O8Y9Pa89C-3o$)_{K{tgVBpxuVBtyxe zjJSOn5>8fY@80B3<@Az6e#1_Fw| zaxSuztoYBQj;xf~l2r&~ia6S2sXzBKv8X4-f1QQ!Sva_4OJ^z77yL})TF6;4$F<}X zaw^$MP9vw2Gsw@#nF!!UYMRjXCE#7>g<&#boI_s5ABk! z&@0+_zJ2z;gP6a2Xyd6mTT25sau1SYnT zHxQUCx_pv1k#{xy#w7LS;1oOZck+>R-v{JF@(%=>5okeR$_nx^`GkCmz*Gd(2+R>( z)IWr{sf$BK59|!BbIc-)uy3lp*^Wyn)JW>E{2qebQdGa7=d{RENG`pDct`oLSW-Rpi`C_==0Nc zD%8Mvg!;%(C%wNqRLV|MyRb8{jT_c`v;*aVWk@+vPLwm{Lb+0IlskpP{9*)_Ag~mH z&k3@+)kB2W&ZP?*;LX06Ru*aget|j%BXUxg2HOwguoUA zwsqp#j=&BCb|dg**LaMo21#uc_Jhr0F;=m&l}li0=?Fzhv2$i=X&(MA@0y9A8l)2& z5!i|+FTNh(?=^v%_|JwmQ&av1kF~h7`w`QrF>MqU*Dj1#?KZNHic(W^{(0?u>I<3U zCLLXB0kx1?L@lP4z-PioI4gCyl+Xsr^xXH8M=SEzrCr^8zDLy9Q(A+jh1POPp9i-bzaoh9?=cW0>XKVf%x&k6SkoLjp6+H-nyKVGf z1nzaFSF}GJg!3ml0OI!C7w@&x!SEIWzvJ%yNrk?;HBK*JB#mc0R?}g0I2}Pp(ou9Y z0)HUz2!Y24JV5|=3C~v3qj0<9;CuLv#T1PDR|2?R+5sSbK_7wuDN zqfXLiVA3JoMLJ|L>79&2t zgi{g;M%^Ts;zcK#2lR?0GX&O^k*yBQ;=0bb|H9V3|M(tfvIFh>2!WaL{35m{CkD6UW3e z3A8qo$Rshz%oqgmQ+yB{jNlLieG&ANf)4aYFaW_o1cTNwsT#vGnQ#xIkWA0yNSK4W zF^7r|5ge(penJ=Q3JG>4f+5|otN$l#6@w($B7#HPm?i{=Nw8JSWM&Em2Cp+McsvKC z@fy=A;TrK@JV4cL`kBmp9D|ry%xp%@%wgs-^AHR}FdV@M1S1iQLNIzYvjD?bB*h>G z`)Q0M+)sBwIZ-W2YgrhUt*VWtlH-#+5KKZa89{8B6a-Td zOhYgo!3+d55zInRv5x8TLkW?l? zD#tU37-FS5aB{htS4Q+PV)3M4J8Mj^2v&%%+6g%!h<}Q2)KUk*TC#YBppC_8)A+y5 z!uDsKI?cj5cABNSop}c_ANk?~$t+py02WXCcd#C;C+o#}vjf>dtPeYw9l~O_s70_2 z!FmK65Nt$Hg&-CyLJ*5}LI>-waS=9H6BO8Cl07DN+oQQVC~SMIiU%QVJT?TIfZ(Jq zL$FC*&cUYOxn0~BBRIJ;GP-ormdPq4JlOm#ZEQAzQzTnNv$<>m1_ZCO`I3K3#WG`y zB>!mrmo0SZ^6q<;v6UJY@W>M&IQ{RdIzuB{$4-`5sAn74Mpng&EMlA33G7665`v#0 zI1|BH2+l@Ojo=&v=OT#xYd(StI@sne7FxSl_)KD9VK)nlyIEMSi4p8liH6S+T+~fN z+y9CY>{=E(VjKGff=k-ibqFq%IEZ35vDgD84z@@fd@iBcE^)BzUmWPH@222O_G=9V zIB~}mwEcaNhJyX_PSrdzd}K{>c8s{*2%X1Xm)s3c=L~u0arY+PFoy z)5a}Y-@zX1qToaq1)Yw$p__uu-4yKTq#%^NDN%3>!HwM%+{F~I_kfr5L2#2K1$@Ar zWY6xlKV~JjWU*UrX=AZlZq-QP6)U+V+v%3uuv@Zkr5*w^@h=*5;mEFgaeyN`dEkgn z9(GDRyp_n?F7c4f@mx>L11E5DPK)coX>&T9E~m%ob2vNLjo_CEeudy31iwb`8w9^a z@H+(eBDk-E>!sm=Gty*CoRp@*{oOp^`OL12>4-)PoFgWJb3*X@E+RPB|D^@an;V2l z;P9B}hc*uPUI#G=wuXLOAcn*FOQGoy=70;5I5>=Z$)8G0jD~Yz8n7cf!TyNBazPT< z!xC5}7sKIRvV$AN#d2|6JeR29!R|C;rL7d2+*$|bZF2%hOiTZPg7_gT+wQ#EpU;;W6rapznc zhvUw939->6t_5R)*STg%{1@JFa5^}+1z}tT>`y; zTgWZq7IRCurQGM-GHyB7hTs(huOfI2Np#*o5a)83O&l-pAb7WfThV3VHC-0Q6IBS_ z>jsUp?k)>I?y~Tg5@sxy``wto`JWa(z#WwE{(#_vHtrCD4?8XV6L(Cq@Xu0{{*Wwu zTx!#!&Jl>QF?WhPtATr_6Ydkq#K$EQKho&=GIvixdxg8oUE{8EH@KVJE$%jVhr5d) zcBSVCzCiFLg1Do9jo=#u|3vUDg6}%G`(0@N=tBEcLi@fO?Z|Y+$z5 z)+mS1(;&|6L~J4LQPSMZhmc)p6S=4;exmBtvhZ3kc1 zg-yka>^+Qaf`rYk8=C_nT&0MMvAK0(8^+I)u+2tO3>QWSBN35~hzvwzA|eYB3PfbD7Q!)_ zNcc{OhVK!fln~_LX%-?Ek97VTAq)8mJLMk5Q5Mw_bwR6s*;Pznd*t#YU(Qs_{aNP$`TTst{3xh+;&PtPpC1TA>aRrHCj; zM5TIrb8EhUgb8?-7K|1P+k}aT7>6fmg=U$y&>~EcUeSB}9~U&QA-i z!nB0Q*pSQ$WxLQSYwhM`hA{K5d(A>bg*4&Y`EsH#SBz3?P4V^aK6AdX1g~WY3xtKj zB4IHi#v=kZv>FjLD}|-P=fW}p`)w^EaBJ%k(V!NloK|%+m zue#tjY}6T3weo~L0`3_*gs+8fgl~oKguTK(VZZRba6tG05lx7|M#dygLd0Z5G~;*u z5itc3QxVbHA+r?@OJWy(5`Gqr3de-w!Y^WPL`;*Uj)>_9FR2rsAz~&XFm(r1NI{dj72fnG&s*;r*o2woFaD2HYiBTBNBg~9lM*BJ6jb4!Yq z<#|Pw_|=+{vj0}%mp#5ByYp^N|8cfjdy2IxKC`UI%LBg+^dFUO-p;NGdC}7ClQmy% zUXE_vOx_f5C%;m-CEOP72zL=N2N81-F%J>*R|@xq--QPPcIX9&Scr&4h*&InLNCm8 zAYO7BpI1>cN?BS`RuPw1QK)vE))*|j!f)LPuZ1_lpNLq3h;~G*{%g@vcrOQd^-K65 ze3Z)&u@n(F;xAhvhj=i09}!qUZTL~@C({;q%jG)%4i&~XFLBv|zIz)Vdh>q2~7mStL%lpGvDWDs62K04^STFqm_7W-m{vt(P zJG-Yke|BT1{^bL@^nYj4JKRH*mFVcm;$$VVY+0tPMrMwW75L~T^N|gZ4KjC;1RO$V2jUkmI?og}SB3(`a{La4EDA4n z$%lig4*Y&azC27GE{~8$%A@4b@)$W@SJ%cXFT_?vU?0K`v>Op$A>wO9e2a*^_?dsd z`6VCSIV(?W!)uBOy*?>V(UkA_WC7ssnSOburgqnVo#~h7XllRgTKv=b^u7g}x;nC&Uw1K}YMwTE;k)<)W znFq`p7O-->v!V}c#G2qe6_%_G-c=EWH%*k|@%?1Bg`LVyV`s24@y3Zc>?*uX;tO^? z-YBt|-O6sq+a-3hZ}0%n9Pe(Z!Gncecz?nb?kV>i?@f5k{fRdveBfog3i2f18}CRk z=1uv&yanEsV2x8ydz^my;avzyoQ_T77vfxJf9HOJ%lsq$3I7al9eBmR;otJ_`HzB* zpeGmzy@Wo35#B^#hBpxO6TEOARfM+yY{75&Kf~|p50r;u+egbs;WzUW=@(uFC@>BBD@-y;t^6T=4@|RkK7OSPJ<)}4CYlxPgR-jg}R;X5nR-V>m ztro4RJ^XtN?=h}Nb&ob}T3cJ&TH8^3koHjR;o2j$!?h!|qqRqAr)y_wE3}o`W3}_N z3$%;0XKC-$zN|y(*y)7nRLwdwb!O|#(V3^SKxdK87M&k-F6+F} zHPE%twbHfGwbymfb3sSTdG^8XRGI-=dCwLZ-}0sUVvVTUY=f=UWMLxy=uK$ zy$O1g^qTdi=(Xxi*ITXkgWj)txApGo%k=RJ=lbUQ4*FjD1ND9Mhv@t1hv`S_C+UyT zPt{LX>F4T~=~w6@{i*s(^jGMw*WaOkRR4tjeFJD97&scZ8H_SWH^?=}Hz+hHHYhcy zF{m?WFi;sFg9!$U3^p1ZGPrK=z9-*PtEYBPy`Ba=d-Zhd>CXE+^Ev1%BaR@meH3+4~=^mdl>r~2N{PL4>cZc9AlhroNHWZTyNZD z+-f|-c&71e<8{X08Xq;jW&GO2z@(Q+A3W|cF)=eSH;FSzHOVo_HOV(AG$}SIHEA$u zF_~d9Q)M#SWRA&xlLID4O&*v$G1W0OHSKF^VQOjWXgbJru&J-9ziGH>q-nJ2DARGK zwWdv`&89O=7n&Y0J!1OY^u3wfOyA7Z%*)K%EW|9rEXpj#EY>XEEX^##EXyq0EXOR@ zOl77vTW@yA?7G<_v!`ay&0d+kF?-v$SKq#UhxGO9s|x7*qVETD!MumLj=8>hPxId9 zgUv(C!^|Vhqs(K>W6dX;Z!*7O{=oc=`8)Fu7QlkApe!scTrE5;ye$S<_*n#41X+Yw zq*ydsv|6-Vth88dvDTu)V!g#ii_I2WEw)?iwAgKN+~QY@lNP5e&RCqYxL|SF;+n+` zi`y3WEPl86sOsm~&#&Kzeue!e_Uq`kx8L!8Pc3^|_OrCMw6*MS>1gR}8Dtq|8ErYr zGR`u=Qel~IS!h{oS!!8jSz}pe*k6=@Z1r5a@wXO&=;Xr;6oYn5kJ zXjN=A&Z^w1(n_?NW7T1`+v0@JLV`9_S#=^$Z#@fcuCcq}hCd6i_&2XEMHuW}> zY^K@Fu$gHy+h&f+rp;!B%_^HUHecH8u{mt>qs`AY$80XxT(Y@hbIsS3>AuV-&y-^;#_ zy|KNieP8<__G9c-_HFh**#F+YSAU=WN&Tz)&+Y$t|F-@s`mgH0vH!0AU-sYA|C|2b z_21Y3`~JW5KiU6O|Fiwi_rKWxjRWlEP$!?-1w^;t=7G z>@e0L&!NDf$f3kxoI|;T=+LBcnCLLsp~YdU!!(B(4l5k?J6v%Dj(r^mJBB#MI3_qI zIwm`&J7zj69F>lRjx~-d$BB-!9OpRBb6n`S*m0?2hvRm~9gh1Qzjr*~c+l~r<5|ZG zj+Y&8INox+<9N^Uk>dv^#>vdd(#gkZj8mFZhLgf6$0^UL(5b{}oYPdN=}xMdPP3in zIL&if;MC@{)@hy7MyD-K+nn|~eeZP8>9Erkr)y4sI6ZcH>h#s^Bm`S&I_GaJMVG+)_I@v0p~-`KRO?E{>AyE^J(XE&VM*Raen6f!ugf+ zpU&@HWG>K!a$#IJ7aNyQmpqqNmrW{{Q!Z~@`?z|$#<`}tX1FR`m9E9ERj#$J4X&c= z1lLKf&8|~i=eaI)UE;dTwcT~4>ps_Gt|whjxt?{s zz1$4l%-qb~EZwZ#JlqDk4R#B08|F6BE!-{Mt<!w=g zw!!V7+Yz^)-Hy5a;&#IAH@8b}H{I^I-FJKF_Q>s>+edfkPP*&5>$~@K@9l2oZtHIE z?%?j>9_Sw8KGc1pZ!`{Qu!^Okh z!^6YNW1vT<$8e7@k4TRgk64dVj|Pt>kBJ`59@9K#c+B!pd$fCO^4RXN%i}AL?>zQ- z9Pl{kamwR?#|uv_Pd(56o@A-@8NzYTBXFP9uKJ#eO z9WO&KH?JXHL%m|XQoPc=vb>aDxnASE%DpPRs=R8v>bw?u?ese5_0;R5H}s~wS#QBx z%iF@czqgCGySJyew|9tln0JJCly{7GqW2h;cdB=Wcb0d7cZE0dZt;2yQ<3KQw7)T9d266+1 zfrAF-4V*Xdhk=g=nGYH@2o0JssD03mLAwX-8+3Hgi9weKJ@e7WTim>Te0+R;0(^pf zhWd=~QHA?N`Hb?3_eu0A@fqh+;Zx;P>(k&P`b_Yd?9<}Y>NCS@qlTaN1yT@a(}G27fhp-{1p-4-Nit@UMe^8+>N)`N0>5^coU4WZaO(A!x|NAP#B*13d%1 z0tW^L1_lL&1ZD>o1=a@E1=a^P2DS#y2%Hr-Cvbk?!oYQb+XHt5?hf1+crfs0;FG|o zfzJY81i>Kvpk6_SK_)?cgZc$o2iXNV1PuxD4+;tj4H_O478I!piV2DfN(f31$_i2j zjSXrHY7UwjG(G6Epw&SKgH8th7IZ4;Owi4sJ3;q@9tJ%QdK&aL=tD3FCWGnVp27Ws zErYFsZGr~`CkBrRP7BTq&JG?MoEMA-wZUb3|1Wt{w4Ti@af=l!54$C1YZxn8T=&pS@4VC*CFvCSs~dWIU#u= zCqu4=To1V!awl|XXl!VF=;+Yo(8HmpLeGSr3%xjW(9oenhYuY&G-7DS&|O2n9J*)d zx5LbaISg|e<}%EE*t}sYhOHX5W?0AY9>a}?n-1?gyx(v%e8%vZ!)FhlJN%<+gnUGg z5jrFEM~oZMI6@rJG-A?-t0Nwccr@b4i031dM&^vn9hpC}XymUWFOPgN^7Y8KBR_m`iZYEdkFt!iiL#G!j0%hji5eO;JZfZA zL{xOtsHnK8(NRfJW1^~~=11*`x)cqfZKK1Y^P{Ikua4dny)}AA^seZ=(MO_xiar{B zJo?w@lhIeBZ$#gYz8C!<`i~ePrcaD%jCoAI7?o{I{}{&@=NR9ZfS8DwQ8Do`i7}}$ z=`mR`*)ioYV$9r_1u=_bK96aOSsAk?rXyxU%;uPFF^6M*ia8o{Jm%M!-(pV3oQ*jj zb1CLZ%(a*gqfAEyj#7+j9<^cAucIEvYR5Xpdd3cn9USW$J2W;bc2sO!?C98}*fFuG zvH7t@v8Afm^4RgQ)v_XC zk+42tQ^MAS9SOS=_9T3purJ|2!l8uA3D**CB-~24lW;%bLBgYiCkf9IUM9Rw_;Ymc z(O#pIN7s*DKKkJ3`>I4P(JnDGF)}eGF)lG7F+DLiF+Z^|u{g0bu`E%Q*pxUau_duJ zae87$;;zK66TeN|mv}JoaNRSIL?y9FLQr;M7Rgr0HpzC$ zp2Jh?4-W%8Qjj^qu=2a*pZ zA4&cx`DpSl$tRLeC7($?mwYk#a`M&W_hU@P1dPcVGkMJVF=xiSO)*Ltl#-B=o|2WK zOc|R}no^Tem(q};NoF6Cm%<&=jh zFH>Hnyh)`~^;3JL8m5}0_D$`VYMtty>Y3`D>XSMo)h{(LH8?dfwJLQ^>ekd_sgG0N zq|s?YT8}iHw4Q0b(+ty$)9lhb(*~vuPV-9(NDE4fN=r%0Ov_Fin^u^nDoGocR-V?B z_F3A>v^8lRX&cfur)^8ynf7Jc*J|> zTIr7I(dlLB^U}XgzncCr!z^QPMo7l6jFB1P8Sxou85tQ_8On^Y8F?868Pyqe8I2hz zV`9eSj1?K1Gj?R`%J?edyNrDq2UHmcGfrik&A63uKjUG>uQLA3c$X<;_Q`b0 zbj=))>6JMsb4aFtW>98m=J3q0%#2J$rZRJEW?p7tW^ra|W?5!sW>scQ=Df@unddU! zX7$Yq&C1Ja$y$?jAnRz>FIgwEPGw!rx|4M;>-VgOS&y=wWPMNo1*u>Zyh5%}*(oNAD9RL-idsdzLZv{8nTn-~t%@Cr-HJVmZx#C#2NZ`C zKPrwYeo@>~+*RCHJW%|hc%pcwc%gWu_*3yt@gdtd+b26MTg+aW{bTkYN-d?Ma)fe} zGG3XeOjauJEAu7Fad@J3yh>TEtW`EErz)o_XDZdoxyr4|@016Whm=Q@$CSS+PbyC- zZz}I7pDW)e-zh)lkU4Y?mm}mD<=Ey7$??w#$_dRGo)eZ6nG=%}moqviIj1D2ETA9C)E6~?-ZjUQVxcEQ+PV}BcaX{_q%*c)SSjs0Wn ztFdp!z8(91?8jV?+ap&u*C4ldu2HT@?x5VExna4HxzV}txrw>Sxhc5?xy8A4xnk~w z+{wAExzlrJ=FZM-%iWm!eeS{BBe_549?w0Idn)&A?uFdTxz}=E=Dx{&oBKZZV;;<- z^4L5+Pb*J5PdCpwFCuSTo?4Z+EALW1$T!dT&riu$=I7=Yk;2=Bj|!g_z9@WEBrD>Igd(jX?IPVG{UY-s%Oaa1`y$68 z=c2Hp#G=%qjH0Zfu|@esg+;|h4Mk$n^rG2CbBh)fEiGDB)Lyi*Xj{?VqEkg@i!Kyh zF1l89v*=FI{i26OkBgoav&Dj{SgTmOShv`qxOcH(v2n3kv3YU7V*lc_;-=!2#fOXk zDA6l%D~T>CDj8o=Q&L~jSkhcFvt)M3oRWDZ3rZH1tSRXz*-)~%WLwFOk`pCYN^X|i zF1c6oN6F)oXC*I6$x^1&pwzI`q_l6TRjEy>eW^pKPwBAIl+yIltWsrZZmFuEw77I! zX+>#OX>I9erL#-tl+G(%P`bGE^U}7`6{V|7*Oqpa9xA;(jvwbZE_&Sfaf`-%IqvMZ z7vnyZfikj;F4HdSQ)XOdT4r9>ugt2|NQ%a#&84v*kj0 zk8<5|n{xYdhjOQKmvZ-V&+>ugKIOjU{^fz?Y2^*&ZROvW->J~5aI1)}D5;oMF}Gqt z#o~&k6{{;YRcx);QL(#XPsKMC-&OovalGP0#i@$373V8nRg#rlrBKV*0J+69M4XS%oTUXmvJ5)PYyH$Hsdsq8Z`&I{32UicR zPOZ+U&Z^F?&Z*9;E~qZ9F0C%BuB@)AuBo0^y`%bE_1l`hHK8@7HFIjV)tsn#RP(y# zZH?+ft*n--)vN7U+q>4N)}+>~*1XoK*0pv(tyk@!+QGGnwaVK3+QQnB+KSrowKcVM zwNq=S*Dk7EQ`=Fyp>}iaw%VPwU)CP1JyQEq?XlWlYERalsy$QtpiZc>s~cLETQ{+8 zdflSBWp!crTzJI+_y=(n|dY^jV`hfc2`q28E`p@eR)&Ew1rv6<0#riAt*Xr-rKdpaT|Dl0t z=+U6xVBTQaVBKKX;LzaI;MFj&p|YW=p|xQ~!>oom4f7k8H>_w_-S9=j`i6}Szc==8 zOlU-nQyW$4#(9m)8rL?iYuw)WP2=9iBaJ5-Pc>d|yw!NO@%P3*8Xq@)P%$b4mA%SQ z<)U&|d8!7g2CMv3fvOPIFja~wO_ixqsFbQ)Re`ElHBMEbs#4XcCaM;zwyTb+uBu*% za_O(|9}i1H2LYsS5A8evJSk5rcT7g|v|!3Px#Y7MhPf zN6XO{XfxV|cA_uQ9&{KTM<>uJbQWDf*U>F>7u|2tZwhQGY8u~E-889bTGMAuvzz8N zEooZT)ZVnJX-(6{rd>_nO+GgH*U9H6-<|wu^2=tTS*KaQxmUAcvq^K`=6=m8muB~7 z&*p*6gPZ-D1Dk`JbDO6(?`po*e82fw^UD^)mVPbPEw(N8EnY2yS_ZfHwFI^Vw}iJu zwZycvy+oHBVz%aqnBkEgt!@^LB{IhCB6KDBUa@zm0( some View { + configuration.label + .frame(width: width, height: height) // Use optional binding in case width and height are not provided + .padding() + .background(configuration.isPressed ? Color(red: 214/255, green: 216/255, blue: 219/255) + : Color(red: 238/255, green: 241/255, blue: 244/255)) + .cornerRadius(9) + .foregroundColor(Color(red: 84/255, green: 95/255, blue: 113/255)) + .scaleEffect(configuration.isPressed ? 0.95 : 1) + } +} + struct PreviousButtonStyle: ButtonStyle { func makeBody(configuration: Configuration) -> some View { configuration.label @@ -31,7 +50,8 @@ struct PreviousButtonStyle: ButtonStyle { bottomTrailing: 25.0, topTrailing: 6.0), style: .continuous) - .fill(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) : Color(red: 102/255, green: 112/255, blue: 128/255))) + .fill(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) + : Color(red: 102/255, green: 112/255, blue: 128/255))) } } From 590f97f05a0a033a404c7f9b1b2da727541a69c5 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Sun, 24 Dec 2023 15:41:04 -0700 Subject: [PATCH 10/19] Sign-in layout page Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 12 ++ .../UserInterfaceState.xcuserstate | Bin 44993 -> 52638 bytes Rethread/Rethread/LoginSignupView.swift | 6 +- Rethread/Rethread/SignInView.swift | 134 ++++++++++++++++++ Rethread/Rethread/Styles/ButtonStyles.swift | 9 +- Rethread/Rethread/Styles/ColorPalette.swift | 6 + Rethread/Rethread/VerificationView.swift | 55 +++++++ 7 files changed, 216 insertions(+), 6 deletions(-) create mode 100644 Rethread/Rethread/SignInView.swift create mode 100644 Rethread/Rethread/Styles/ColorPalette.swift create mode 100644 Rethread/Rethread/VerificationView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 1873c17..0f1951a 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -18,6 +18,9 @@ 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D92B1FADA70063D9BA /* QuestionView.swift */; }; 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */; }; 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183852B38273B001E324A /* LoginSignupView.swift */; }; + 98A183882B383C0B001E324A /* SignInView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183872B383C0B001E324A /* SignInView.swift */; }; + 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183892B383C47001E324A /* VerificationView.swift */; }; + 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A1838B2B38D32A001E324A /* ColorPalette.swift */; }; 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; /* End PBXBuildFile section */ @@ -53,6 +56,9 @@ 9868A7D92B1FADA70063D9BA /* QuestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuestionView.swift; sourceTree = ""; }; 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonStyles.swift; sourceTree = ""; }; 98A183852B38273B001E324A /* LoginSignupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginSignupView.swift; sourceTree = ""; }; + 98A183872B383C0B001E324A /* SignInView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignInView.swift; sourceTree = ""; }; + 98A183892B383C47001E324A /* VerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VerificationView.swift; sourceTree = ""; }; + 98A1838B2B38D32A001E324A /* ColorPalette.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorPalette.swift; sourceTree = ""; }; 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -99,6 +105,7 @@ isa = PBXGroup; children = ( 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */, + 98A1838B2B38D32A001E324A /* ColorPalette.swift */, ); path = Styles; sourceTree = ""; @@ -132,6 +139,8 @@ 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, 98A183852B38273B001E324A /* LoginSignupView.swift */, + 98A183872B383C0B001E324A /* SignInView.swift */, + 98A183892B383C47001E324A /* VerificationView.swift */, 9868A7D92B1FADA70063D9BA /* QuestionView.swift */, 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */, 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */, @@ -302,7 +311,10 @@ 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, + 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */, 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */, + 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */, + 98A183882B383C0B001E324A /* SignInView.swift in Sources */, 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index b42a96c9600cb4ab24b91a778d8deaa43dd93421..f3458ca23b5ed1d76a3f1e53dc05684f27e2be3a 100644 GIT binary patch literal 52638 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 RVgKVe<^Q)w|BrV5{{a?sK#>3d literal 44993 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

bwk?B9jS`LBdCR9;kGVSV-zBNZ#a9os={ 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 diff --git a/Rethread/Rethread/LoginSignupView.swift b/Rethread/Rethread/LoginSignupView.swift index e1c2b74..2fd6ec4 100644 --- a/Rethread/Rethread/LoginSignupView.swift +++ b/Rethread/Rethread/LoginSignupView.swift @@ -11,9 +11,10 @@ struct LoginSignupView: View { Image(systemName: "photo") .resizable() .aspectRatio(contentMode: .fit) - .frame(width: 30, height: 450) - .padding(.bottom,20) + .frame(width: 30, height: 30) .foregroundColor(.gray) + .padding(.bottom,20) + .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) // Description text Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna.") @@ -53,6 +54,7 @@ struct LoginSignupView: View { .padding(.bottom, 15) } + .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) } } diff --git a/Rethread/Rethread/SignInView.swift b/Rethread/Rethread/SignInView.swift new file mode 100644 index 0000000..15dc94e --- /dev/null +++ b/Rethread/Rethread/SignInView.swift @@ -0,0 +1,134 @@ +import SwiftUI + +struct SignInView: View { + @Binding var currentUserSignedIn: Bool + @State private var email: String = "" + @State private var password: String = "" + @State private var isShowingVerification: Bool = false + @State private var isPasswordVisible: Bool = false + + var body: some View { + VStack { + // Top content, including the back button and text fields + VStack(alignment: .leading) { + HStack { + Button(action: { + // Do Something + }) { + Image(systemName: "chevron.left") + } + .buttonStyle(SecondaryButtonStyle(width: 15, height: 15)) + .clipShape(Circle()) + Spacer() + } + .padding(.horizontal) + .padding(.top, 40) + .padding(.bottom, 20) + + Text("Welcome back!") + .font(.largeTitle) + .fontWeight(.bold) + .padding(.horizontal, 25) + .padding(.bottom, 1) + .foregroundColor(Color.primaryColor) + + HStack (spacing: 0) { + Text("Login below or ") + .fontWeight(.medium) + .foregroundColor(Color.primaryColor) + Button(action: { + // Handle forgot password action + }) { + Text("create an account") + .foregroundColor(Color.primaryColor) + .fontWeight(.bold) + .underline() // Underlined text + } + Spacer() + } + .padding(.horizontal, 25) + + VStack(alignment: .leading, spacing: 0) { + Text("Email") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 25) + + CustomTextField(placeholder: "Email", text: $email) + .padding(.horizontal, 25) + .padding(.top, 9) + + Text("Password") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 20) + .padding(.bottom, 9) + + HStack { + if isPasswordVisible { + TextField("Password", text: $password) + } else { + SecureField("Password", text: $password) + } + + Button(action: { + self.isPasswordVisible.toggle() + }) { + Image(systemName: self.isPasswordVisible ? "eye.slash.fill" : "eye.fill") + .foregroundColor(Color.gray) + } + } + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + .padding(.horizontal, 25) + } + + Spacer() + } + + // Bottom content, including the sign-in button + VStack (spacing: 16) { + Button("Sign In") { + // Handle sign in action + self.isShowingVerification = true + } + .buttonStyle(PrimaryButtonStyle(width: 300)) + + + + Button(action: { + // Handle forgot password action + }) { + Text("Forgot Password") + .foregroundColor(Color.primaryColor) + .fontWeight(.semibold) + .underline() // Underlined text + } + } + .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottom) // Aligns buttons to the bottom + } + .fullScreenCover(isPresented: $isShowingVerification) { + VerificationView(currentUserSignedIn: $currentUserSignedIn) + } + } +} + +struct CustomTextField: View { + var placeholder: String + @Binding var text: String + + var body: some View { + TextField(placeholder, text: $text) + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + } +} + +#if DEBUG +struct SignIn_Preview: PreviewProvider { + static var previews: some View { + SignInView(currentUserSignedIn: .constant(false)) + } +} +#endif + diff --git a/Rethread/Rethread/Styles/ButtonStyles.swift b/Rethread/Rethread/Styles/ButtonStyles.swift index dc96702..1bdcd59 100644 --- a/Rethread/Rethread/Styles/ButtonStyles.swift +++ b/Rethread/Rethread/Styles/ButtonStyles.swift @@ -13,7 +13,8 @@ struct PrimaryButtonStyle: ButtonStyle { configuration.label .frame(width: width, height: height) // Use optional binding in case width and height are not provided .padding() - .background(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) : Color(red: 102/255, green: 112/255, blue: 128/255)) + .background(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) + : Color.primaryColor) .cornerRadius(9) .foregroundColor(.white) .scaleEffect(configuration.isPressed ? 0.95 : 1) @@ -51,7 +52,7 @@ struct PreviousButtonStyle: ButtonStyle { topTrailing: 6.0), style: .continuous) .fill(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) - : Color(red: 102/255, green: 112/255, blue: 128/255))) + : Color.primaryColor)) } } @@ -68,7 +69,7 @@ struct NextButtonStyle: ButtonStyle { bottomTrailing: 0.0, topTrailing: 0.0), style: .continuous) - .fill(isEnabled ? Color(red: 102/255, green: 112/255, blue: 128/255) + .fill(isEnabled ? Color.primaryColor : Color(red: 170/255, green: 177/255, blue: 187/255))) // Disabled color } } @@ -86,7 +87,7 @@ struct LetStartButtonStyle: ButtonStyle { bottomTrailing: 0.0, topTrailing: 0.0), style: .continuous) - .fill(isEnabled ? Color(red: 102/255, green: 112/255, blue: 128/255) + .fill(isEnabled ? Color.primaryColor : Color(red: 170/255, green: 177/255, blue: 187/255))) // Disabled color } } diff --git a/Rethread/Rethread/Styles/ColorPalette.swift b/Rethread/Rethread/Styles/ColorPalette.swift new file mode 100644 index 0000000..b1fee0f --- /dev/null +++ b/Rethread/Rethread/Styles/ColorPalette.swift @@ -0,0 +1,6 @@ +import SwiftUI + +extension Color { + static let primaryColor = Color(red: 102/255, green: 112/255, blue: 128/255) + static let secondaryColor = Color(red: 0.75, green: 0.22, blue: 0.17) +} diff --git a/Rethread/Rethread/VerificationView.swift b/Rethread/Rethread/VerificationView.swift new file mode 100644 index 0000000..16656d0 --- /dev/null +++ b/Rethread/Rethread/VerificationView.swift @@ -0,0 +1,55 @@ +import SwiftUI + +struct VerificationView: View { + @Binding var currentUserSignedIn: Bool + @State private var code: String = "" + + var body: some View { + VStack { + Text("Verify your account") + .font(.largeTitle) + .fontWeight(.bold) + .padding(.top, 60) + + Text("Enter the 4-digit PIN code sent to your email address xxx@example.com.") + .fontWeight(.medium) + .multilineTextAlignment(.center) + .padding() + + HStack { + ForEach(0..<4, id: \.self) { index in + TextField("", text: Binding( + get: { String(self.code.prefix(index + 1).suffix(1)) }, + set: { newValue in + let filtered = newValue.filter { "0123456789".contains($0) } + guard !filtered.isEmpty else { return } + self.code = String(self.code.prefix(index)) + filtered + String(self.code.dropFirst(index + 1)) + if self.code.count > 4 { + self.code = String(self.code.prefix(4)) + } + } + )) + .frame(width: 44, height: 44) + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.secondary, lineWidth: 1)) + .multilineTextAlignment(.center) + .keyboardType(.numberPad) + .textContentType(.oneTimeCode) + } + } + .padding() + + Button("Verify") { + // Handle verification action + self.currentUserSignedIn = true // Simulate successful verification + } + .buttonStyle(PrimaryButtonStyle()) + .padding() + + Button("Request new code") { + // Handle request new code action + } + + Spacer() + } + } +} From 4cedd0187fd71e950775179361d5ce852e280caf Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Sun, 24 Dec 2023 17:27:12 -0700 Subject: [PATCH 11/19] Verification Screen Signed-off-by: ParsaKargari --- .../UserInterfaceState.xcuserstate | Bin 52638 -> 50433 bytes Rethread/Rethread/LoginSignupView.swift | 8 +- Rethread/Rethread/SignInView.swift | 11 +- Rethread/Rethread/VerificationView.swift | 139 +++++++++++++----- 4 files changed, 107 insertions(+), 51 deletions(-) diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index f3458ca23b5ed1d76a3f1e53dc05684f27e2be3a..8095e3348bd1004d4b746ec7ce5b7a323ab7978b 100644 GIT binary patch delta 23638 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 diff --git a/Rethread/Rethread/LoginSignupView.swift b/Rethread/Rethread/LoginSignupView.swift index 2fd6ec4..b929925 100644 --- a/Rethread/Rethread/LoginSignupView.swift +++ b/Rethread/Rethread/LoginSignupView.swift @@ -2,6 +2,7 @@ import SwiftUI struct LoginSignupView: View { @Binding var currentUserSignedIn: Bool + @State private var showingSignIn = false // ... other properties and logic var body: some View { @@ -28,7 +29,7 @@ struct LoginSignupView: View { HStack(spacing: 30) { // Log In Button Button(action: { - // Logic to show login screen + showingSignIn = true }) { HStack { Text("Log In") @@ -40,7 +41,7 @@ struct LoginSignupView: View { // Sign Up Button Button(action: { - // Logic to show signup screen + // Sign up }) { HStack { Text("Join Us") @@ -55,6 +56,9 @@ struct LoginSignupView: View { } .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) + .fullScreenCover(isPresented: $showingSignIn) { + SignInView(currentUserSignedIn: $currentUserSignedIn) + } } } diff --git a/Rethread/Rethread/SignInView.swift b/Rethread/Rethread/SignInView.swift index 15dc94e..7f0be91 100644 --- a/Rethread/Rethread/SignInView.swift +++ b/Rethread/Rethread/SignInView.swift @@ -6,6 +6,7 @@ struct SignInView: View { @State private var password: String = "" @State private var isShowingVerification: Bool = false @State private var isPasswordVisible: Bool = false + @Environment(\.presentationMode) var presentationMode var body: some View { VStack { @@ -13,7 +14,7 @@ struct SignInView: View { VStack(alignment: .leading) { HStack { Button(action: { - // Do Something + presentationMode.wrappedValue.dismiss() }) { Image(systemName: "chevron.left") } @@ -124,11 +125,3 @@ struct CustomTextField: View { } } -#if DEBUG -struct SignIn_Preview: PreviewProvider { - static var previews: some View { - SignInView(currentUserSignedIn: .constant(false)) - } -} -#endif - diff --git a/Rethread/Rethread/VerificationView.swift b/Rethread/Rethread/VerificationView.swift index 16656d0..1947b9a 100644 --- a/Rethread/Rethread/VerificationView.swift +++ b/Rethread/Rethread/VerificationView.swift @@ -2,54 +2,113 @@ import SwiftUI struct VerificationView: View { @Binding var currentUserSignedIn: Bool - @State private var code: String = "" + @Environment(\.presentationMode) var presentationMode + @State private var code: [String] = ["", "", "", ""] + @FocusState private var focusedField: Field? + + enum Field: Int, Hashable { + case field1 = 0, field2, field3, field4 + + var next: Field? { + return Field(rawValue: self.rawValue + 1) + } + } + var body: some View { VStack { - Text("Verify your account") - .font(.largeTitle) - .fontWeight(.bold) - .padding(.top, 60) - - Text("Enter the 4-digit PIN code sent to your email address xxx@example.com.") - .fontWeight(.medium) - .multilineTextAlignment(.center) - .padding() - - HStack { - ForEach(0..<4, id: \.self) { index in - TextField("", text: Binding( - get: { String(self.code.prefix(index + 1).suffix(1)) }, - set: { newValue in - let filtered = newValue.filter { "0123456789".contains($0) } - guard !filtered.isEmpty else { return } - self.code = String(self.code.prefix(index)) + filtered + String(self.code.dropFirst(index + 1)) - if self.code.count > 4 { - self.code = String(self.code.prefix(4)) - } + VStack(alignment: .leading) { + HStack { + Button(action: { + presentationMode.wrappedValue.dismiss() + }) { + Image(systemName: "chevron.left") + } + .buttonStyle(SecondaryButtonStyle(width: 15, height: 15)) + .clipShape(Circle()) + Spacer() + } + .padding(.horizontal) + .padding(.top, 40) + .padding(.bottom, 20) + + Text("Verify your account") + .font(.largeTitle) + .fontWeight(.bold) + .padding(.horizontal, 25) + .padding(.bottom, 1) + .foregroundColor(Color.primaryColor) + + HStack (spacing: 0) { + Text("Enter the 4-digit PIN code sent to your email address xxx@example.com.") + .fontWeight(.medium) + .foregroundColor(Color.primaryColor) + Spacer() + } + .padding(.horizontal, 25) + + VStack(alignment: .leading, spacing: 0) { + HStack(spacing: 10) { + ForEach(0..<4, id: \.self) { index in + TextField("", text: $code[index]) + .frame(width: 45, height: 45) + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.primary, lineWidth: 1)) + .multilineTextAlignment(.center) + .keyboardType(.numberPad) + .focused($focusedField, equals: Field(rawValue: index)) + .onReceive(code[index].publisher.collect()) { + self.code[index] = String($0.prefix(1)) + if $0.count > 0 { // If a character is entered + if let nextField = focusedField?.next, index < code.count - 1 { + // If it's not the last field, move to the next field + self.focusedField = nextField + } else { + // If it's the last field, unfocus and perhaps do something else like verification + focusedField = nil + } + } + } + + } - )) - .frame(width: 44, height: 44) - .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.secondary, lineWidth: 1)) - .multilineTextAlignment(.center) - .keyboardType(.numberPad) - .textContentType(.oneTimeCode) + } + .padding(.horizontal, 25) + .padding(.top, 30) + } + Spacer() } - .padding() - - Button("Verify") { - // Handle verification action - self.currentUserSignedIn = true // Simulate successful verification - } - .buttonStyle(PrimaryButtonStyle()) - .padding() - Button("Request new code") { - // Handle request new code action + + // Bottom content, including the sign-in button + VStack (spacing: 16) { + Button("Verify") { + // Handle Verification + } + .buttonStyle(PrimaryButtonStyle(width: 300)) + + + + Button(action: { + // Handle request new code + }) { + Text("Request new code") + .foregroundColor(Color.primaryColor) + .fontWeight(.semibold) + .underline() // Underlined text + } } - - Spacer() + .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottom) // Aligns buttons to the bottom } + + } +} + +#if DEBUG +struct Verification_Preview: PreviewProvider { + static var previews: some View { + VerificationView(currentUserSignedIn: .constant(false)) } } +#endif + From 8c3be5b0a209d1f90186b5ddbf4fe795ec159a81 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Mon, 25 Dec 2023 00:05:30 -0700 Subject: [PATCH 12/19] Fix: Verification keyboard Signed-off-by: ParsaKargari --- .../UserInterfaceState.xcuserstate | Bin 50433 -> 55130 bytes Rethread/Rethread/IntroView.swift | 1 + Rethread/Rethread/LoginSignupView.swift | 9 ------ Rethread/Rethread/OnboardingView.swift | 2 ++ Rethread/Rethread/SignInView.swift | 30 ++++++++++++++++-- Rethread/Rethread/VerificationView.swift | 18 ++++++++--- 6 files changed, 44 insertions(+), 16 deletions(-) diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 8095e3348bd1004d4b746ec7ce5b7a323ab7978b..5540672c3542012c1650f9c26ec462373ea4d643 100644 GIT binary patch literal 55130 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 0 { // If a character is entered + .onChange(of: code[index]) { newValue, oldValue in + if newValue.count > 0 { // If a character is entered if let nextField = focusedField?.next, index < code.count - 1 { // If it's not the last field, move to the next field self.focusedField = nextField } else { - // If it's the last field, unfocus and perhaps do something else like verification + // If it's the last field, unfocus focusedField = nil } + } else { // If backspace is pressed + if let previousField = focusedField?.rawValue, index > 0 { + // If it's not the first field, move to the previous field + self.focusedField = Field(rawValue: previousField - 1) + } } } @@ -83,7 +87,8 @@ struct VerificationView: View { // Bottom content, including the sign-in button VStack (spacing: 16) { Button("Verify") { - // Handle Verification + // Go to the home screen, set currentUserSignedIn to true + currentUserSignedIn = true } .buttonStyle(PrimaryButtonStyle(width: 300)) @@ -100,6 +105,9 @@ struct VerificationView: View { } .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottom) // Aligns buttons to the bottom } + .onTapGesture { + self.hideKeyboard() + } } } From 3e15eff7c8426ed9b613879a70b693d083713831 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Mon, 25 Dec 2023 01:10:39 -0700 Subject: [PATCH 13/19] Fix: Verification now working. Fixed crashes Signed-off-by: ParsaKargari --- .../UserInterfaceState.xcuserstate | Bin 55130 -> 56335 bytes Rethread/Rethread/VerificationView.swift | 23 +++++++++--------- Rethread/Rethread/WelcomeView.swift | 1 + 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 5540672c3542012c1650f9c26ec462373ea4d643..9a5555b41475886ddb9f762234ae8a48c6ab4883 100644 GIT binary patch literal 56335 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 0 { // If a character is entered - if let nextField = focusedField?.next, index < code.count - 1 { - // If it's not the last field, move to the next field - self.focusedField = nextField + .onChange(of: code[index]) { newValue in + if newValue.count == 1 { + // A character is entered in the current field + if index < code.count - 1 { + // Move to the next field only if it's not the last one + focusedField = Field(rawValue: index + 1) } else { - // If it's the last field, unfocus + // Last field - perhaps perform some action or unfocus focusedField = nil } - } else { // If backspace is pressed - if let previousField = focusedField?.rawValue, index > 0 { - // If it's not the first field, move to the previous field - self.focusedField = Field(rawValue: previousField - 1) - } + } else if newValue.isEmpty && index > 0 { + // Backspace is pressed, and it's not the first field + // Move to the previous field + focusedField = Field(rawValue: index - 1) } } + } } .padding(.horizontal, 25) diff --git a/Rethread/Rethread/WelcomeView.swift b/Rethread/Rethread/WelcomeView.swift index 56cdf27..7d73e47 100644 --- a/Rethread/Rethread/WelcomeView.swift +++ b/Rethread/Rethread/WelcomeView.swift @@ -38,6 +38,7 @@ struct WelcomeView: View { .buttonStyle(PrimaryButtonStyle(width: 200, height: 20)) .padding(.bottom, 55.0) .padding(.top) + } .frame(maxWidth: .infinity) // Ensure VStack takes full width } From 00cdd5abdd5227afb390b20385028fedbf9273f0 Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Wed, 27 Dec 2023 01:10:19 -0700 Subject: [PATCH 14/19] Feat: Sign Up page w/o date and gender fields Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 8 + .../UserInterfaceState.xcuserstate | Bin 56335 -> 58276 bytes Rethread/Rethread/LoginSignupView.swift | 33 ++- Rethread/Rethread/SignInView.swift | 18 -- Rethread/Rethread/SignUpView.swift | 211 ++++++++++++++++++ .../Rethread/Styles/CustomComponents.swift | 1 + 6 files changed, 251 insertions(+), 20 deletions(-) create mode 100644 Rethread/Rethread/SignUpView.swift create mode 100644 Rethread/Rethread/Styles/CustomComponents.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 0f1951a..74ffdae 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -17,6 +17,8 @@ 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */; }; 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D92B1FADA70063D9BA /* QuestionView.swift */; }; 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */; }; + 988A0F952B3BFB4C00ACDC90 /* SignUpView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */; }; + 988A0F992B3C112300ACDC90 /* CustomComponents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F982B3C112300ACDC90 /* CustomComponents.swift */; }; 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183852B38273B001E324A /* LoginSignupView.swift */; }; 98A183882B383C0B001E324A /* SignInView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183872B383C0B001E324A /* SignInView.swift */; }; 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183892B383C47001E324A /* VerificationView.swift */; }; @@ -55,6 +57,8 @@ 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelcomeView.swift; sourceTree = ""; }; 9868A7D92B1FADA70063D9BA /* QuestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuestionView.swift; sourceTree = ""; }; 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonStyles.swift; sourceTree = ""; }; + 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignUpView.swift; sourceTree = ""; }; + 988A0F982B3C112300ACDC90 /* CustomComponents.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomComponents.swift; sourceTree = ""; }; 98A183852B38273B001E324A /* LoginSignupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginSignupView.swift; sourceTree = ""; }; 98A183872B383C0B001E324A /* SignInView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignInView.swift; sourceTree = ""; }; 98A183892B383C47001E324A /* VerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VerificationView.swift; sourceTree = ""; }; @@ -106,6 +110,7 @@ children = ( 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */, 98A1838B2B38D32A001E324A /* ColorPalette.swift */, + 988A0F982B3C112300ACDC90 /* CustomComponents.swift */, ); path = Styles; sourceTree = ""; @@ -140,6 +145,7 @@ 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, 98A183852B38273B001E324A /* LoginSignupView.swift */, 98A183872B383C0B001E324A /* SignInView.swift */, + 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */, 98A183892B383C47001E324A /* VerificationView.swift */, 9868A7D92B1FADA70063D9BA /* QuestionView.swift */, 9868A7D72B1FAD280063D9BA /* WelcomeView.swift */, @@ -311,10 +317,12 @@ 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, + 988A0F952B3BFB4C00ACDC90 /* SignUpView.swift in Sources */, 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */, 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */, 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */, 98A183882B383C0B001E324A /* SignInView.swift in Sources */, + 988A0F992B3C112300ACDC90 /* CustomComponents.swift in Sources */, 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 9a5555b41475886ddb9f762234ae8a48c6ab4883..16b4101f53f9c70b0cf903a90119c448cfb57f43 100644 GIT binary patch literal 58276 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⁢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 literal 56335 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 Date: Wed, 27 Dec 2023 18:54:24 -0700 Subject: [PATCH 15/19] Feat: Date Picker Signed-off-by: ParsaKargari --- .../UserInterfaceState.xcuserstate | Bin 58276 -> 60098 bytes Rethread/Rethread/IntroView.swift | 8 +- Rethread/Rethread/SignUpView.swift | 340 ++++++++++-------- Rethread/Rethread/Styles/ColorPalette.swift | 2 +- .../Rethread/Styles/CustomComponents.swift | 310 ++++++++++++++++ 5 files changed, 497 insertions(+), 163 deletions(-) diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 16b4101f53f9c70b0cf903a90119c448cfb57f43..96fb41fe8fab57de6d9bf5afa7335283aeeec180 100644 GIT binary patch literal 60098 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 VI^y4d|8EWc{J);~|8uPC{{ZhffT;ig literal 58276 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⁢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 diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift index 11b265c..850e97c 100644 --- a/Rethread/Rethread/IntroView.swift +++ b/Rethread/Rethread/IntroView.swift @@ -3,10 +3,10 @@ import SwiftUI struct IntroView: View { @AppStorage("signed_in") var currentUserSignedIn: Bool = false -// init() { -// UserDefaults.standard.set(false, forKey: "signed_in") -// print("Current user signed in: \(currentUserSignedIn)") -// } + init() { + UserDefaults.standard.set(false, forKey: "signed_in") + print("Current user signed in: \(currentUserSignedIn)") + } var body: some View { ZStack { diff --git a/Rethread/Rethread/SignUpView.swift b/Rethread/Rethread/SignUpView.swift index 917345b..508a4a7 100644 --- a/Rethread/Rethread/SignUpView.swift +++ b/Rethread/Rethread/SignUpView.swift @@ -11,7 +11,7 @@ struct SignUpView: View { var confirmPassword: String = "" // Confirm password text field var phoneNumber: String = "" // Phone number text field var postalCode: String = "" // Zip code text field - var dateOfBirth: Date = Date() // Date of birth text field + var dateOfBirth: String = "" // Date of birth text field var gender: String = "" // Gender text field } @@ -19,187 +19,211 @@ struct SignUpView: View { @State private var isPasswordVisible: Bool = false @State private var showingDatePicker = false @State private var genderOptions = ["Male", "Female", "Other"] - @FocusState var isFieldFocus: FieldToFocus? @Environment(\.presentationMode) var presentationMode - enum FieldToFocus { - case secureField, textField + func toggleDatePicker() { + showingDatePicker.toggle() } + var body: some View { - VStack { - // Top content, including the back button and text fields - VStack(alignment: .leading) { - HStack { - Button(action: { - presentationMode.wrappedValue.dismiss() - }) { - Image(systemName: "chevron.left") + ZStack { + VStack { + // Top content, including the back button and text fields + VStack(alignment: .leading) { + HStack { + Button(action: { + presentationMode.wrappedValue.dismiss() + }) { + Image(systemName: "chevron.left") + } + .buttonStyle(SecondaryButtonStyle(width: 15, height: 15)) + .clipShape(Circle()) + Spacer() } - .buttonStyle(SecondaryButtonStyle(width: 15, height: 15)) - .clipShape(Circle()) - Spacer() - } - .padding(.horizontal) - .padding(.top, 40) - .padding(.bottom, 20) - - Text("Create an account") - .font(.largeTitle) - .fontWeight(.bold) - .padding(.horizontal, 25) - .padding(.bottom, 1) - .foregroundColor(Color.primaryColor) - - HStack (spacing: 0) { - Text("Enter your account details below or ") - .fontWeight(.medium) + .padding(.horizontal) + .padding(.top, 40) + .padding(.bottom, 20) + + Text("Create an account") + .font(.largeTitle) + .fontWeight(.bold) + .padding(.horizontal, 25) + .padding(.bottom, 1) .foregroundColor(Color.primaryColor) - Button(action: { - // Handle forgot password action - }) { - Text("log in") + + HStack (spacing: 0) { + Text("Enter your account details below or ") + .fontWeight(.medium) .foregroundColor(Color.primaryColor) - .fontWeight(.bold) - .underline() // Underlined text + Button(action: { + // Handle forgot password action + }) { + Text("log in") + .foregroundColor(Color.primaryColor) + .fontWeight(.bold) + .underline() // Underlined text + } + Spacer() } - Spacer() + .padding(.horizontal, 25) + .padding(.bottom, 10) } - .padding(.horizontal, 25) - .padding(.bottom, 10) - } - ScrollView { - VStack(alignment: .leading) { - VStack(alignment: .leading, spacing: 0) { - - HStack { - VStack(alignment: .leading, spacing: 0) { - Text("First Name") - .foregroundColor(Color.primaryColor) - .padding(.leading, 25) - .padding(.top, 20) + ScrollView { + VStack(alignment: .leading) { + VStack(alignment: .leading, spacing: 0) { + + HStack { + VStack(alignment: .leading, spacing: 0) { + Text("First Name") + .foregroundColor(Color.primaryColor) + .padding(.leading, 25) + .padding(.top, 20) + + CustomTextField(placeholder: "First Name", text: $formData.firstName) + .padding(.leading, 25) + .padding(.top, 9) + } - CustomTextField(placeholder: "First Name", text: $formData.firstName) - .padding(.leading, 25) - .padding(.top, 9) + VStack(alignment: .leading, spacing: 0) { + Text("Last Name") + .foregroundColor(Color.primaryColor) + .padding(.trailing, 25) + .padding(.top, 20) + + CustomTextField(placeholder: "Last Name", text: $formData.lastName) + .padding(.trailing, 25) + .padding(.top, 9) + } } - VStack(alignment: .leading, spacing: 0) { - Text("Last Name") - .foregroundColor(Color.primaryColor) - .padding(.trailing, 25) - .padding(.top, 20) - - CustomTextField(placeholder: "Last Name", text: $formData.lastName) - .padding(.trailing, 25) + Text("Email") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 20) + + CustomTextField(placeholder: "Email", text: $formData.email) + .padding(.horizontal, 25) + .padding(.top, 9) + + Text("Phone Number") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 20) + + CustomTextField(placeholder: "Phone Number", text: $formData.phoneNumber) + .padding(.horizontal, 25) + .padding(.top, 9) + + Text("Password") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 20) + .padding(.bottom, 9) + + SecureField("Password", text: $formData.password) + .disableAutocorrection(true) + .autocapitalization(/*@START_MENU_TOKEN@*/.none/*@END_MENU_TOKEN@*/) + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + .padding(.horizontal, 25) + + Text("Confirm Password") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 20) + .padding(.bottom, 9) + + SecureField("Confirm Password", text: $formData.confirmPassword) + .disableAutocorrection(true) + .autocapitalization(.none) + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + .padding(.horizontal, 25) + + Text("Postal Code") + .foregroundColor(Color.primaryColor) + .padding(.horizontal, 25) + .padding(.top, 20) + + CustomTextField(placeholder: "Postal Code", text: $formData.postalCode) + .padding(.horizontal, 25) + .padding(.top, 9) + + HStack { + VStack (alignment: .leading, spacing: 0){ + Text("Date of Birth") + .foregroundColor(Color.primaryColor) + .padding(.leading, 25) + .padding(.top, 20) + + // include date picker + HStack { + TextField("MM / DD / YYYY", text: $formData.dateOfBirth ) + .keyboardType(.numberPad) + .onChange(of: formData.dateOfBirth) { newValue, oldValue in + formData.dateOfBirth = formatDate(newValue) + } + + Button(action: { + // Actions to present a date picker + toggleDatePicker() + }) { + Image(systemName: "calendar") + .foregroundColor(.gray) + } + } + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + .padding(.horizontal, 25) .padding(.top, 9) - } - } - - Text("Email") - .foregroundColor(Color.primaryColor) - .padding(.horizontal, 25) - .padding(.top, 20) - - CustomTextField(placeholder: "Email", text: $formData.email) - .padding(.horizontal, 25) - .padding(.top, 9) - - Text("Phone Number") - .foregroundColor(Color.primaryColor) - .padding(.horizontal, 25) - .padding(.top, 20) - - CustomTextField(placeholder: "Phone Number", text: $formData.phoneNumber) - .padding(.horizontal, 25) - .padding(.top, 9) - - Text("Password") - .foregroundColor(Color.primaryColor) - .padding(.horizontal, 25) - .padding(.top, 20) - .padding(.bottom, 9) - - SecureField("Password", text: $formData.password) - .disableAutocorrection(true) - .autocapitalization(/*@START_MENU_TOKEN@*/.none/*@END_MENU_TOKEN@*/) - .padding() - .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) - .padding(.horizontal, 25) - - Text("Confirm Password") - .foregroundColor(Color.primaryColor) - .padding(.horizontal, 25) - .padding(.top, 20) - .padding(.bottom, 9) - - SecureField("Confirm Password", text: $formData.confirmPassword) - .disableAutocorrection(true) - .autocapitalization(.none) - .padding() - .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) - .padding(.horizontal, 25) - - Text("Postal Code") - .foregroundColor(Color.primaryColor) - .padding(.horizontal, 25) - .padding(.top, 20) - - CustomTextField(placeholder: "Postal Code", text: $formData.postalCode) - .padding(.horizontal, 25) - .padding(.top, 9) - - HStack { - VStack (alignment: .leading, spacing: 0){ - Text("Date of Birth") - .foregroundColor(Color.primaryColor) - .padding(.leading, 25) - .padding(.top, 20) - - // include date picker + } - } - - VStack (alignment: .leading, spacing: 0) { - Text("Gender") - .foregroundColor(Color.primaryColor) - .padding(.trailing, 25) - .padding(.top, 20) - - // include gender selector + VStack (alignment: .leading, spacing: 0) { + Text("Gender") + .foregroundColor(Color.primaryColor) + .padding(.trailing, 25) + .padding(.top, 20) + + // include gender selector + } } } - } - } - - Spacer() - } - - // Bottom content, including the sign-in button - VStack (spacing: 16) { - Button("Join Us") { - // Handle sign up + Spacer() } - .buttonStyle(PrimaryButtonStyle(width: 300)) - Button(action: { - // Handle terms and conditions - }) { - Text("Terms and Conditions") - .foregroundColor(Color.primaryColor) - .fontWeight(.semibold) - .underline() // Underlined text + // Bottom content, including the sign-in button + VStack (spacing: 16) { + Button("Join Us") { + // Handle sign up + + } + .buttonStyle(PrimaryButtonStyle(width: 300)) + + Button(action: { + // Handle terms and conditions + }) { + Text("Terms and Conditions") + .foregroundColor(Color.primaryColor) + .fontWeight(.semibold) + .underline() // Underlined text + } } + .frame(maxWidth: .infinity) // Aligns buttons to the bottom + .padding(.top, 10) } - .frame(maxWidth: .infinity) // Aligns buttons to the bottom - .padding(.top, 10) + .gesture(TapGesture().onEnded{ + self.hideKeyboard() + }) +// .ignoresSafeArea(.keyboard) + } + .sheet(isPresented: $showingDatePicker) { + DatePickerModalView(showModal: $showingDatePicker, chosenDate: $formData.dateOfBirth) + .presentationDetents([.fraction(0.7)]) + .presentationDragIndicator(.visible) } - .gesture(TapGesture().onEnded{ - self.hideKeyboard() - }) - .ignoresSafeArea(.keyboard) } } diff --git a/Rethread/Rethread/Styles/ColorPalette.swift b/Rethread/Rethread/Styles/ColorPalette.swift index b1fee0f..4cc4bca 100644 --- a/Rethread/Rethread/Styles/ColorPalette.swift +++ b/Rethread/Rethread/Styles/ColorPalette.swift @@ -2,5 +2,5 @@ import SwiftUI extension Color { static let primaryColor = Color(red: 102/255, green: 112/255, blue: 128/255) - static let secondaryColor = Color(red: 0.75, green: 0.22, blue: 0.17) + static let primaryTextColor = Color(red: 84/255, green: 95/255, blue: 113/255) } diff --git a/Rethread/Rethread/Styles/CustomComponents.swift b/Rethread/Rethread/Styles/CustomComponents.swift index 8b13789..f3e64a4 100644 --- a/Rethread/Rethread/Styles/CustomComponents.swift +++ b/Rethread/Rethread/Styles/CustomComponents.swift @@ -1 +1,311 @@ +import SwiftUI + +func formatDate(_ string: String) -> String { + // Remove any non-numeric characters + let numericString = string.filter { "0123456789".contains($0) } + + // Break the string down into components + var components = numericString.map { String($0) } + + // Add slashes at the appropriate places + if components.count > 2 { + components.insert("/", at: 2) + } + if components.count > 5 { + components.insert("/", at: 5) + } + + // Combine the components into a single string + let formattedString = components.joined() + + // Ensure the string is not longer than the max length (10 including slashes) + let endIndex = formattedString.index(formattedString.startIndex, offsetBy: min(10, formattedString.count)) + return String(formattedString[..some View{ + Text("\(value.day)") + .font(.body) + .frame(maxWidth: .infinity) + .frame(height: 40) + .foregroundColor(isSameDay(date1: selectedDate, date2: value.date) ? Color.white : Color.primaryTextColor) + .fontWeight(isSameDay(date1: selectedDate, date2: value.date) ? .bold : .none) + } + + // String to date + func stringToDate(date: String) -> Date { + let formatter = DateFormatter() + formatter.dateFormat = "MM/dd/yyyy" + return formatter.date(from: date) ?? Date() + } + + // Date to string + func dateToString(date: Date) -> String { + let formatter = DateFormatter() + formatter.dateFormat = "MM/dd/yyyy" + return formatter.string(from: date) + } + + func isSameDay(date1: Date, date2: Date) -> Bool { + let calendar = Calendar.current + // Print the dates if same day + return calendar.isDate(date1, inSameDayAs: date2) + } + + func extraData() -> [String] { + let formatter = DateFormatter() + formatter.dateFormat = "MMMM YYYY" + + + let date = formatter.string(from: currentDate) + return date.components(separatedBy: " ") + } + + func getCurrentMonth() -> Date { + let calendar = Calendar.current + + guard let currentMonth = calendar.date(byAdding: .month, value: currentMonth, to: stringToDate(date: chosenDate)) else { return Date() } + return currentMonth + } + func extractDate()->[DateValue]{ + let calendar = Calendar.current + + let currentMonth = getCurrentMonth() + + var days = currentMonth.getAllDates().compactMap { date -> DateValue in + let day = calendar.component(.day, from: date) + + return DateValue(day: day, date: date) + } + let firstWeekDay = calendar.component(.weekday, from: days.first?.date ?? Date()) + + for _ in 0.. [Date]{ + let calender = Calendar.current + + let startDate = calender.date(from: calender.dateComponents([.year, .month], from: self))! + + let range = calender.range(of: .day, in: .month, for: self)! + + // getting date + return range.compactMap { day -> Date in + return calender.date(byAdding: .day, value: day - 1 , to: startDate)! + } + } +} + +// Date value modal +struct DateValue: Identifiable { + var id = UUID().uuidString + var day: Int + var date: Date +} + +// Present the date picker modal view +struct DatePickerModalView_Previews: PreviewProvider { + static var previews: some View { + DatePickerModalView(showModal: .constant(true), chosenDate: .constant("09/05/1992")) + .previewLayout(.sizeThatFits) + } +} + +struct RoundedCorners: View { + var color: Color = .white + var tl: CGFloat = 0.0 + var tr: CGFloat = 0.0 + var bl: CGFloat = 0.0 + var br: CGFloat = 0.0 + + var body: some View { + GeometryReader { geometry in + Path { path in + + let w = geometry.size.width + let h = geometry.size.height + + // Make sure we do not exceed the size of the rectangle + let tr = min(min(self.tr, h/2), w/2) + let tl = min(min(self.tl, h/2), w/2) + let bl = min(min(self.bl, h/2), w/2) + let br = min(min(self.br, h/2), w/2) + + path.move(to: CGPoint(x: w / 2.0, y: 0)) + path.addLine(to: CGPoint(x: w - tr, y: 0)) + path.addArc(center: CGPoint(x: w - tr, y: tr), radius: tr, startAngle: Angle(degrees: -90), endAngle: Angle(degrees: 0), clockwise: false) + path.addLine(to: CGPoint(x: w, y: h - br)) + path.addArc(center: CGPoint(x: w - br, y: h - br), radius: br, startAngle: Angle(degrees: 0), endAngle: Angle(degrees: 90), clockwise: false) + path.addLine(to: CGPoint(x: bl, y: h)) + path.addArc(center: CGPoint(x: bl, y: h - bl), radius: bl, startAngle: Angle(degrees: 90), endAngle: Angle(degrees: 180), clockwise: false) + path.addLine(to: CGPoint(x: 0, y: tl)) + path.addArc(center: CGPoint(x: tl, y: tl), radius: tl, startAngle: Angle(degrees: 180), endAngle: Angle(degrees: 270), clockwise: false) + path.closeSubpath() + } + .fill(self.color) + } + } +} + From de25d6e8f8e7ef7e7a62ebe1294cb634ccabe26c Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Thu, 28 Dec 2023 03:10:43 -0700 Subject: [PATCH 16/19] Feat: SignUp page Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 6 +- .../UserInterfaceState.xcuserstate | Bin 60098 -> 66177 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 6 + Rethread/Rethread/.DS_Store | Bin 0 -> 6148 bytes Rethread/Rethread/LoginSignupView.swift | 13 +- .../{Styles => Models}/CustomComponents.swift | 0 Rethread/Rethread/Models/DropDownView.swift | 128 ++++++++++++++++ Rethread/Rethread/SignUpView.swift | 140 ++++++++++-------- 8 files changed, 228 insertions(+), 65 deletions(-) create mode 100644 Rethread/Rethread.xcodeproj/xcuserdata/parsakargari.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist create mode 100644 Rethread/Rethread/.DS_Store rename Rethread/Rethread/{Styles => Models}/CustomComponents.swift (100%) create mode 100644 Rethread/Rethread/Models/DropDownView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 74ffdae..9edc2e4 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -24,6 +24,7 @@ 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183892B383C47001E324A /* VerificationView.swift */; }; 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A1838B2B38D32A001E324A /* ColorPalette.swift */; }; 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; + 98D60EB32B3D567E00BD5878 /* DropDownView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D60EB22B3D567E00BD5878 /* DropDownView.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -64,6 +65,7 @@ 98A183892B383C47001E324A /* VerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VerificationView.swift; sourceTree = ""; }; 98A1838B2B38D32A001E324A /* ColorPalette.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorPalette.swift; sourceTree = ""; }; 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; + 98D60EB22B3D567E00BD5878 /* DropDownView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DropDownView.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -94,6 +96,8 @@ 7C9AA2CC2B0EC02600EF6F36 /* Models */ = { isa = PBXGroup; children = ( + 988A0F982B3C112300ACDC90 /* CustomComponents.swift */, + 98D60EB22B3D567E00BD5878 /* DropDownView.swift */, ); path = Models; sourceTree = ""; @@ -110,7 +114,6 @@ children = ( 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */, 98A1838B2B38D32A001E324A /* ColorPalette.swift */, - 988A0F982B3C112300ACDC90 /* CustomComponents.swift */, ); path = Styles; sourceTree = ""; @@ -313,6 +316,7 @@ buildActionMask = 2147483647; files = ( 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */, + 98D60EB32B3D567E00BD5878 /* DropDownView.swift in Sources */, 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 96fb41fe8fab57de6d9bf5afa7335283aeeec180..50e0aba71d630bd11d82c0a1a2eb89c5c9b0ea0e 100644 GIT binary patch literal 66177 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 literal 60098 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 VI^y4d|8EWc{J);~|8uPC{{ZhffT;ig diff --git a/Rethread/Rethread.xcodeproj/xcuserdata/parsakargari.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/Rethread/Rethread.xcodeproj/xcuserdata/parsakargari.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist new file mode 100644 index 0000000..a9d4ab5 --- /dev/null +++ b/Rethread/Rethread.xcodeproj/xcuserdata/parsakargari.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -0,0 +1,6 @@ + + + diff --git a/Rethread/Rethread/.DS_Store b/Rethread/Rethread/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..957baff8820780f504f2bad5497b98cc8a62bdfd GIT binary patch literal 6148 zcmeHK%}T>S5Z-NT+falY6nb3nTCmoN7B3;zqZcE3P^k?m8jRV}q~=fxIqM7gBtDNb zyPHEW;7!EN!0tCYKf9R^vOkP5?k8hDvM6TwDSmI~N+>fMR zG0|T%;kP&01(PgbGgkio4}TtoN!ss!@>;#I)oit_R;P9EJ;}^Vr|B|rr;A%0T}c`F zg+BGK!&x@5cg|#-PQ!S%Pzhl$gOIzMFb-tq%4HlRD%aBv%W7K_ySrK)AD;BY;Apt+ ziPdP(?}_1PuwGm3-M#(O%gJ-}63aJDBnQrwY#S`#9h6c{uihe#Wc&#BBBzKYBnF59 zVt^RfJO<2J(C%zr=~OW>Kn(oA0PYV08lqz`*QmA*= some View { + VStack(spacing: 10) { + ForEach(options, id: \.self) { option in + HStack(spacing: 0){ + Text(option) + .lineLimit(1) + + Spacer(minLength: 0) + + Image(systemName: "checkmark") + .font(.caption) + .opacity(selection == option ? 1 : 0) + } + .foregroundStyle(selection == option ? Color.primaryTextColor : Color.gray) + .animation(.none, value: selection) + .frame(height: 40) + .contentShape(.rect) + .onTapGesture { + withAnimation(.snappy) { + selection = option + showOptions = false + } + } + } + } + .padding(.horizontal, 15) + .padding(.vertical, 5) + .transition(.move(edge: anchor == .top ? .bottom : .top)) + } + + + enum Anchor { + case top + case bottom + } +} + +#Preview { + ContentViewDrop() +} diff --git a/Rethread/Rethread/SignUpView.swift b/Rethread/Rethread/SignUpView.swift index 508a4a7..c46e99b 100644 --- a/Rethread/Rethread/SignUpView.swift +++ b/Rethread/Rethread/SignUpView.swift @@ -12,12 +12,13 @@ struct SignUpView: View { var phoneNumber: String = "" // Phone number text field var postalCode: String = "" // Zip code text field var dateOfBirth: String = "" // Date of birth text field - var gender: String = "" // Gender text field + var gender: String? // Gender text field } @State private var formData = SignUpFormData() - @State private var isPasswordVisible: Bool = false + @State private var isPasswordVisible = false @State private var showingDatePicker = false + @State private var showingGenderPicker = false @State private var genderOptions = ["Male", "Female", "Other"] @Environment(\.presentationMode) var presentationMode @@ -30,6 +31,7 @@ struct SignUpView: View { ZStack { VStack { // Top content, including the back button and text fields + ScrollView { VStack(alignment: .leading) { HStack { Button(action: { @@ -69,10 +71,9 @@ struct SignUpView: View { .padding(.horizontal, 25) .padding(.bottom, 10) } - ScrollView { + VStack(alignment: .leading) { VStack(alignment: .leading, spacing: 0) { - HStack { VStack(alignment: .leading, spacing: 0) { Text("First Name") @@ -105,6 +106,52 @@ struct SignUpView: View { CustomTextField(placeholder: "Email", text: $formData.email) .padding(.horizontal, 25) .padding(.top, 9) + HStack { + VStack (alignment: .leading, spacing: 0){ + Text("Date of Birth") + .foregroundColor(Color.primaryColor) + .padding(.top, 20) + + HStack { + TextField("MM / DD / YYYY", text: $formData.dateOfBirth ) + .foregroundColor(Color.primaryTextColor) + .keyboardType(.numberPad) + .onChange(of: formData.dateOfBirth) { newValue, oldValue in + formData.dateOfBirth = formatDate(newValue) + } + + + Button(action: { + // Actions to present a date picker + toggleDatePicker() + }) { + Image(systemName: "calendar") + .foregroundColor(.gray) + } + } + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + .padding(.top, 9) + } + + + VStack (alignment: .leading, spacing: 0) { + Text("Gender") + .foregroundColor(Color.primaryColor) + .padding(.trailing, 25) + .padding(.top, 20) + + DropDownView( + selection: $formData.gender, + hint: "Select", + options: genderOptions, + anchor: .bottom + ) + .padding(.top, 9) + + } + } + .padding(.horizontal, 25) Text("Phone Number") .foregroundColor(Color.primaryColor) @@ -123,7 +170,7 @@ struct SignUpView: View { SecureField("Password", text: $formData.password) .disableAutocorrection(true) - .autocapitalization(/*@START_MENU_TOKEN@*/.none/*@END_MENU_TOKEN@*/) + .autocapitalization(.none) .padding() .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) .padding(.horizontal, 25) @@ -150,79 +197,48 @@ struct SignUpView: View { .padding(.horizontal, 25) .padding(.top, 9) - HStack { - VStack (alignment: .leading, spacing: 0){ - Text("Date of Birth") - .foregroundColor(Color.primaryColor) - .padding(.leading, 25) - .padding(.top, 20) - - // include date picker - HStack { - TextField("MM / DD / YYYY", text: $formData.dateOfBirth ) - .keyboardType(.numberPad) - .onChange(of: formData.dateOfBirth) { newValue, oldValue in - formData.dateOfBirth = formatDate(newValue) - } - - Button(action: { - // Actions to present a date picker - toggleDatePicker() - }) { - Image(systemName: "calendar") - .foregroundColor(.gray) - } - } - .padding() - .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) - .padding(.horizontal, 25) - .padding(.top, 9) - } - - VStack (alignment: .leading, spacing: 0) { - Text("Gender") - .foregroundColor(Color.primaryColor) - .padding(.trailing, 25) - .padding(.top, 20) - - // include gender selector - } - } } } Spacer() - } - - // Bottom content, including the sign-in button - VStack (spacing: 16) { - Button("Join Us") { - // Handle sign up - - } - .buttonStyle(PrimaryButtonStyle(width: 300)) - Button(action: { - // Handle terms and conditions - }) { - Text("Terms and Conditions") - .foregroundColor(Color.primaryColor) - .fontWeight(.semibold) - .underline() // Underlined text + + // Bottom content, including the sign-in button + VStack (spacing: 16) { + Button("Join Us") { + // Handle sign up + + } + .buttonStyle(PrimaryButtonStyle(width: 300)) + + Button(action: { + // Handle terms and conditions + }) { + Text("Terms and Conditions") + .foregroundColor(Color.primaryColor) + .fontWeight(.semibold) + .underline() // Underlined text + } } + .frame(maxWidth: .infinity) // Aligns buttons to the bottom + .padding(.vertical, 10) } - .frame(maxWidth: .infinity) // Aligns buttons to the bottom - .padding(.top, 10) } .gesture(TapGesture().onEnded{ self.hideKeyboard() }) -// .ignoresSafeArea(.keyboard) + .safeAreaInset(edge: .top, alignment: .center, spacing: 0) { + Color.clear + .frame(height: 10) + .background(Material.bar) + } } + // Date picker modal .sheet(isPresented: $showingDatePicker) { DatePickerModalView(showModal: $showingDatePicker, chosenDate: $formData.dateOfBirth) .presentationDetents([.fraction(0.7)]) .presentationDragIndicator(.visible) + } } } From aedfcaecd972931f9b048c91c366a4ae0be4adec Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Thu, 28 Dec 2023 20:43:20 -0700 Subject: [PATCH 17/19] Fix: New Dropdown Custom Component Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 26 ++-- .../UserInterfaceState.xcuserstate | Bin 66177 -> 73260 bytes .../Components/CustomDropdownMenu.swift | 130 ++++++++++++++++++ Rethread/Rethread/LoginSignupView.swift | 10 +- ...Components.swift => DatePickerModel.swift} | 38 ----- Rethread/Rethread/Models/DropDownView.swift | 128 ----------------- Rethread/Rethread/SignUpView.swift | 16 +-- Rethread/Rethread/Styles/ButtonStyles.swift | 36 +++++ 8 files changed, 193 insertions(+), 191 deletions(-) create mode 100644 Rethread/Rethread/Components/CustomDropdownMenu.swift rename Rethread/Rethread/Models/{CustomComponents.swift => DatePickerModel.swift} (84%) delete mode 100644 Rethread/Rethread/Models/DropDownView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index 9edc2e4..e770f37 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -18,13 +18,13 @@ 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7D92B1FADA70063D9BA /* QuestionView.swift */; }; 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */; }; 988A0F952B3BFB4C00ACDC90 /* SignUpView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */; }; - 988A0F992B3C112300ACDC90 /* CustomComponents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F982B3C112300ACDC90 /* CustomComponents.swift */; }; + 988A0F992B3C112300ACDC90 /* DatePickerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F982B3C112300ACDC90 /* DatePickerModel.swift */; }; + 9897C7732B3E6C4000EDE9D9 /* CustomDropdownMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9897C7722B3E6C4000EDE9D9 /* CustomDropdownMenu.swift */; }; 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183852B38273B001E324A /* LoginSignupView.swift */; }; 98A183882B383C0B001E324A /* SignInView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183872B383C0B001E324A /* SignInView.swift */; }; 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183892B383C47001E324A /* VerificationView.swift */; }; 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A1838B2B38D32A001E324A /* ColorPalette.swift */; }; 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; - 98D60EB32B3D567E00BD5878 /* DropDownView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D60EB22B3D567E00BD5878 /* DropDownView.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -59,13 +59,13 @@ 9868A7D92B1FADA70063D9BA /* QuestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QuestionView.swift; sourceTree = ""; }; 9868A7DD2B1FAE780063D9BA /* ButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ButtonStyles.swift; sourceTree = ""; }; 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignUpView.swift; sourceTree = ""; }; - 988A0F982B3C112300ACDC90 /* CustomComponents.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomComponents.swift; sourceTree = ""; }; + 988A0F982B3C112300ACDC90 /* DatePickerModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatePickerModel.swift; sourceTree = ""; }; + 9897C7722B3E6C4000EDE9D9 /* CustomDropdownMenu.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomDropdownMenu.swift; sourceTree = ""; }; 98A183852B38273B001E324A /* LoginSignupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginSignupView.swift; sourceTree = ""; }; 98A183872B383C0B001E324A /* SignInView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignInView.swift; sourceTree = ""; }; 98A183892B383C47001E324A /* VerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VerificationView.swift; sourceTree = ""; }; 98A1838B2B38D32A001E324A /* ColorPalette.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorPalette.swift; sourceTree = ""; }; 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; - 98D60EB22B3D567E00BD5878 /* DropDownView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DropDownView.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -96,8 +96,7 @@ 7C9AA2CC2B0EC02600EF6F36 /* Models */ = { isa = PBXGroup; children = ( - 988A0F982B3C112300ACDC90 /* CustomComponents.swift */, - 98D60EB22B3D567E00BD5878 /* DropDownView.swift */, + 988A0F982B3C112300ACDC90 /* DatePickerModel.swift */, ); path = Models; sourceTree = ""; @@ -141,8 +140,9 @@ 983286B32B05698E00851B19 /* Rethread */ = { isa = PBXGroup; children = ( - 7C9AA2D42B0ECADF00EF6F36 /* Styles */, 7C9AA2D12B0EC3BC00EF6F36 /* Extensions */, + 7C9AA2D42B0ECADF00EF6F36 /* Styles */, + 9897C7712B3E6BF600EDE9D9 /* Components */, 7C9AA2CC2B0EC02600EF6F36 /* Models */, 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, @@ -184,6 +184,14 @@ path = RethreadUITests; sourceTree = ""; }; + 9897C7712B3E6BF600EDE9D9 /* Components */ = { + isa = PBXGroup; + children = ( + 9897C7722B3E6C4000EDE9D9 /* CustomDropdownMenu.swift */, + ); + path = Components; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -316,7 +324,6 @@ buildActionMask = 2147483647; files = ( 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */, - 98D60EB32B3D567E00BD5878 /* DropDownView.swift in Sources */, 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, @@ -326,7 +333,8 @@ 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */, 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */, 98A183882B383C0B001E324A /* SignInView.swift in Sources */, - 988A0F992B3C112300ACDC90 /* CustomComponents.swift in Sources */, + 988A0F992B3C112300ACDC90 /* DatePickerModel.swift in Sources */, + 9897C7732B3E6C4000EDE9D9 /* CustomDropdownMenu.swift in Sources */, 9868A7D82B1FAD280063D9BA /* WelcomeView.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 50e0aba71d630bd11d82c0a1a2eb89c5c9b0ea0e..4c8c0470188f1c3a4d2bfe7324b89f89c91a3a1a 100644 GIT binary patch literal 73260 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 D0VUoy literal 66177 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 diff --git a/Rethread/Rethread/Components/CustomDropdownMenu.swift b/Rethread/Rethread/Components/CustomDropdownMenu.swift new file mode 100644 index 0000000..6020c5f --- /dev/null +++ b/Rethread/Rethread/Components/CustomDropdownMenu.swift @@ -0,0 +1,130 @@ +import SwiftUI + + +struct CustomDropdownMenu: View { + @State var isSelecting = false + @State var selectionTitle = "" + @State var selectedRowId = 0 + let items: [DropdownItem] + + + var body: some View { + GeometryReader { _ in + VStack { + HStack { + Text(selectionTitle) + .font(.system(size: 16, weight: .semibold, design: .rounded)) + .animation(.none) + Spacer() + Image(systemName: "chevron.down") + .font(.system(size: 16, weight: .semibold)) + .rotationEffect(.degrees( isSelecting ? -180 : 0)) + + } + .padding(.horizontal) + .padding(.vertical, 1.5) + .foregroundColor(Color.primaryTextColor) + + if isSelecting { + Divider() + .background(.white) + .padding(.horizontal) + + VStack(spacing: 5) { + dropDownItemsList() + } + } + + } + .frame(maxWidth: .infinity) + .padding(.vertical) + .background( + RoundedRectangle(cornerRadius: 10) + .strokeBorder(Color.gray, lineWidth: 1) + .background(Color.white) + .cornerRadius(10) + ) + .cornerRadius(5) + .onTapGesture { + isSelecting.toggle() + } + .onAppear { + selectedRowId = items[0].id + selectionTitle = items[0].title + } + .animation(.easeInOut(duration: 0.3)) + } + } + + private func dropDownItemsList() -> some View { + ForEach(items) { item in + DropdownMenuItemView(isSelecting: $isSelecting, selectionId: $selectedRowId, selectiontitle: $selectionTitle, item: item) + } + } +} + +struct DropdownItem: Identifiable { + let id: Int + let title: String + let onSelect: () -> Void +} + +struct DropdownMenuItemView: View { + @Binding var isSelecting: Bool + @Binding var selectionId: Int + @Binding var selectiontitle: String + + let item: DropdownItem + + var body: some View { + Button(action: { + isSelecting = false + DispatchQueue.main.asyncAfter(deadline: .now() + 0.4) { + selectionId = item.id + } + selectiontitle = item.title + item.onSelect() + }) { + HStack { + Text(item.title) + .font(.system(size: 16, weight: .regular, design: .rounded)) + + Spacer() + Image(systemName: "checkmark") + .font(.system(size: 12, weight: .bold)) + .opacity(selectionId == item.id ? 1 : 0) + } + .padding(.horizontal) + .padding(.vertical, 5) + .foregroundColor(.gray) + + } + } +} + +struct CustomDropdownMenu_Previews: PreviewProvider { + static var previews: some View { + CustomDropdownMenu(items: [ + DropdownItem(id: 1, title: "Messages", onSelect: {}), + DropdownItem(id: 2, title: "Archived", onSelect: {}), + DropdownItem(id: 3, title: "Trash", onSelect: {}) + ]) + .padding(.horizontal) + } +} + +extension View { + func customDropdownMenu(items: [DropdownItem]) -> some View { + ZStack { + VStack { + CustomDropdownMenu(items: items) + .padding(.horizontal) + Spacer() + } + .zIndex(10) + self + .offset(y: 60) + .zIndex(1) + } + } +} diff --git a/Rethread/Rethread/LoginSignupView.swift b/Rethread/Rethread/LoginSignupView.swift index 8744382..ebfd347 100644 --- a/Rethread/Rethread/LoginSignupView.swift +++ b/Rethread/Rethread/LoginSignupView.swift @@ -88,14 +88,8 @@ struct CustomTextField: View { } // Preview -//struct LoginSignupView_Previews: PreviewProvider { -// static var previews: some View { -// LoginSignupView(currentUserSignedIn: .constant(false)) -// } -//} - -struct SignUpView_Previews2: PreviewProvider { +struct LoginSignupView_Previews: PreviewProvider { static var previews: some View { - SignUpView(currentUserSignedIn: .constant(false)) + LoginSignupView(currentUserSignedIn: .constant(false)) } } diff --git a/Rethread/Rethread/Models/CustomComponents.swift b/Rethread/Rethread/Models/DatePickerModel.swift similarity index 84% rename from Rethread/Rethread/Models/CustomComponents.swift rename to Rethread/Rethread/Models/DatePickerModel.swift index f3e64a4..f14fdc7 100644 --- a/Rethread/Rethread/Models/CustomComponents.swift +++ b/Rethread/Rethread/Models/DatePickerModel.swift @@ -271,41 +271,3 @@ struct DatePickerModalView_Previews: PreviewProvider { .previewLayout(.sizeThatFits) } } - -struct RoundedCorners: View { - var color: Color = .white - var tl: CGFloat = 0.0 - var tr: CGFloat = 0.0 - var bl: CGFloat = 0.0 - var br: CGFloat = 0.0 - - var body: some View { - GeometryReader { geometry in - Path { path in - - let w = geometry.size.width - let h = geometry.size.height - - // Make sure we do not exceed the size of the rectangle - let tr = min(min(self.tr, h/2), w/2) - let tl = min(min(self.tl, h/2), w/2) - let bl = min(min(self.bl, h/2), w/2) - let br = min(min(self.br, h/2), w/2) - - path.move(to: CGPoint(x: w / 2.0, y: 0)) - path.addLine(to: CGPoint(x: w - tr, y: 0)) - path.addArc(center: CGPoint(x: w - tr, y: tr), radius: tr, startAngle: Angle(degrees: -90), endAngle: Angle(degrees: 0), clockwise: false) - path.addLine(to: CGPoint(x: w, y: h - br)) - path.addArc(center: CGPoint(x: w - br, y: h - br), radius: br, startAngle: Angle(degrees: 0), endAngle: Angle(degrees: 90), clockwise: false) - path.addLine(to: CGPoint(x: bl, y: h)) - path.addArc(center: CGPoint(x: bl, y: h - bl), radius: bl, startAngle: Angle(degrees: 90), endAngle: Angle(degrees: 180), clockwise: false) - path.addLine(to: CGPoint(x: 0, y: tl)) - path.addArc(center: CGPoint(x: tl, y: tl), radius: tl, startAngle: Angle(degrees: 180), endAngle: Angle(degrees: 270), clockwise: false) - path.closeSubpath() - } - .fill(self.color) - } - } -} - - diff --git a/Rethread/Rethread/Models/DropDownView.swift b/Rethread/Rethread/Models/DropDownView.swift deleted file mode 100644 index 7c8f339..0000000 --- a/Rethread/Rethread/Models/DropDownView.swift +++ /dev/null @@ -1,128 +0,0 @@ -import SwiftUI - -struct ContentViewDrop: View { - @State private var selection: String? - var body: some View { - NavigationStack { - VStack(spacing: 15) { - DropDownView( - selection: $selection, - hint: "Select", - options: ["Option 1", "Option 2", "Option 3"], - anchor: .bottom - ) - } - } - } -} - -struct DropDownView: View { - @Binding var selection: String? - var hint: String - var options: [String] - var anchor: Alignment = .bottom - var maxWidth: CGFloat = 130 - var cornerRadius: CGFloat = 9 - - @State private var showOptions: Bool = false - @SceneStorage("drop_down_zindex") private var index = 1000.0 - @State private var zIndex: Double = 2000.0 - - var body: some View { - GeometryReader { - let size = $0.size - - VStack(spacing: 0) { - if showOptions && anchor == .top { - OptionsView() - } - HStack(spacing: 0) { - Text(selection ?? hint) - .foregroundStyle(selection == nil ? .gray : Color.primaryTextColor) - .lineLimit(1) - - Spacer(minLength: 0) - - Image(systemName: "chevron.up.chevron.down") - .font(.title3) - .foregroundStyle(Color.primaryColor) - .rotationEffect(.init(degrees: showOptions ? -90 : 0)) - - } - .padding(.horizontal, 15) - .frame(width: size.width, height: size.height) - .background( - RoundedRectangle(cornerRadius: 10) - .strokeBorder(Color.gray, lineWidth: 1) - .background(Color.white) - .cornerRadius(10) - ) - .contentShape(.rect) - .onTapGesture { - index += 1 - zIndex = index - withAnimation(.snappy) { - showOptions.toggle() - } - } - .zIndex(10) - if showOptions && anchor == .bottom { - OptionsView() - } - - } - .clipped() - .contentShape(.rect) - .background( - RoundedRectangle(cornerRadius: 10) - .strokeBorder(Color.gray, lineWidth: 1) - .background(Color.white) - .cornerRadius(cornerRadius) - ) - .frame(height: size.height, alignment: anchor == .top ? .bottom : .top) - - } - .frame(width: maxWidth, height: 57) - .zIndex(1000) - } - @ViewBuilder - func OptionsView() -> some View { - VStack(spacing: 10) { - ForEach(options, id: \.self) { option in - HStack(spacing: 0){ - Text(option) - .lineLimit(1) - - Spacer(minLength: 0) - - Image(systemName: "checkmark") - .font(.caption) - .opacity(selection == option ? 1 : 0) - } - .foregroundStyle(selection == option ? Color.primaryTextColor : Color.gray) - .animation(.none, value: selection) - .frame(height: 40) - .contentShape(.rect) - .onTapGesture { - withAnimation(.snappy) { - selection = option - showOptions = false - } - } - } - } - .padding(.horizontal, 15) - .padding(.vertical, 5) - .transition(.move(edge: anchor == .top ? .bottom : .top)) - } - - - enum Anchor { - case top - case bottom - } -} - -#Preview { - ContentViewDrop() -} diff --git a/Rethread/Rethread/SignUpView.swift b/Rethread/Rethread/SignUpView.swift index c46e99b..00482ee 100644 --- a/Rethread/Rethread/SignUpView.swift +++ b/Rethread/Rethread/SignUpView.swift @@ -12,7 +12,7 @@ struct SignUpView: View { var phoneNumber: String = "" // Phone number text field var postalCode: String = "" // Zip code text field var dateOfBirth: String = "" // Date of birth text field - var gender: String? // Gender text field + var gender: String = "Male" // Gender text field } @State private var formData = SignUpFormData() @@ -141,12 +141,12 @@ struct SignUpView: View { .padding(.trailing, 25) .padding(.top, 20) - DropDownView( - selection: $formData.gender, - hint: "Select", - options: genderOptions, - anchor: .bottom - ) + CustomDropdownMenu(items: [ + DropdownItem(id: 1, title: "Male", onSelect: {formData.gender = "Male"}), + DropdownItem(id: 2, title: "Female", onSelect: {formData.gender = "Female"}), + DropdownItem(id: 3, title: "Other", onSelect: {formData.gender = "Other"}) + ]) + .frame(width:130) .padding(.top, 9) } @@ -207,7 +207,7 @@ struct SignUpView: View { VStack (spacing: 16) { Button("Join Us") { // Handle sign up - + print(formData) } .buttonStyle(PrimaryButtonStyle(width: 300)) diff --git a/Rethread/Rethread/Styles/ButtonStyles.swift b/Rethread/Rethread/Styles/ButtonStyles.swift index 1bdcd59..d663715 100644 --- a/Rethread/Rethread/Styles/ButtonStyles.swift +++ b/Rethread/Rethread/Styles/ButtonStyles.swift @@ -92,5 +92,41 @@ struct LetStartButtonStyle: ButtonStyle { } } +struct RoundedCorners: View { + var color: Color = .white + var tl: CGFloat = 0.0 + var tr: CGFloat = 0.0 + var bl: CGFloat = 0.0 + var br: CGFloat = 0.0 + + var body: some View { + GeometryReader { geometry in + Path { path in + + let w = geometry.size.width + let h = geometry.size.height + + // Make sure we do not exceed the size of the rectangle + let tr = min(min(self.tr, h/2), w/2) + let tl = min(min(self.tl, h/2), w/2) + let bl = min(min(self.bl, h/2), w/2) + let br = min(min(self.br, h/2), w/2) + + path.move(to: CGPoint(x: w / 2.0, y: 0)) + path.addLine(to: CGPoint(x: w - tr, y: 0)) + path.addArc(center: CGPoint(x: w - tr, y: tr), radius: tr, startAngle: Angle(degrees: -90), endAngle: Angle(degrees: 0), clockwise: false) + path.addLine(to: CGPoint(x: w, y: h - br)) + path.addArc(center: CGPoint(x: w - br, y: h - br), radius: br, startAngle: Angle(degrees: 0), endAngle: Angle(degrees: 90), clockwise: false) + path.addLine(to: CGPoint(x: bl, y: h)) + path.addArc(center: CGPoint(x: bl, y: h - bl), radius: bl, startAngle: Angle(degrees: 90), endAngle: Angle(degrees: 180), clockwise: false) + path.addLine(to: CGPoint(x: 0, y: tl)) + path.addArc(center: CGPoint(x: tl, y: tl), radius: tl, startAngle: Angle(degrees: 180), endAngle: Angle(degrees: 270), clockwise: false) + path.closeSubpath() + } + .fill(self.color) + } + } +} + From 6f045fd4f66d7c62b0ae2b5968ff48d558bb3a7b Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Wed, 3 Jan 2024 23:01:26 -0700 Subject: [PATCH 18/19] Login/Signup complete Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 39 +++- .../xcshareddata/swiftpm/Package.resolved | 23 ++ .../UserInterfaceState.xcuserstate | Bin 73260 -> 69588 bytes Rethread/Rethread/.DS_Store | Bin 6148 -> 6148 bytes Rethread/Rethread/IntroView.swift | 28 --- Rethread/Rethread/LoginSignupView.swift | 95 -------- Rethread/Rethread/MainView.swift | 119 ++++++++++ Rethread/Rethread/OnboardingApp.swift | 2 +- Rethread/Rethread/OnboardingView.swift | 219 +++++++++++++----- Rethread/Rethread/QuestionView.swift | 24 -- Rethread/Rethread/SignInView.swift | 19 +- Rethread/Rethread/SignUpView.swift | 56 +++-- Rethread/Rethread/Styles/ButtonStyles.swift | 27 ++- Rethread/Rethread/VerificationView.swift | 32 +-- Rethread/Rethread/WelcomeView.swift | 13 +- 15 files changed, 434 insertions(+), 262 deletions(-) create mode 100644 Rethread/Rethread.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved delete mode 100644 Rethread/Rethread/IntroView.swift delete mode 100644 Rethread/Rethread/LoginSignupView.swift create mode 100644 Rethread/Rethread/MainView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index e770f37..e446bdb 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -7,8 +7,8 @@ objects = { /* Begin PBXBuildFile section */ - 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */; }; 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */; }; + 983014C22B451A3E004A6A07 /* NavigationTransitions in Frameworks */ = {isa = PBXBuildFile; productRef = 983014C12B451A3E004A6A07 /* NavigationTransitions */; }; 983286B92B05698F00851B19 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286B82B05698F00851B19 /* Assets.xcassets */; }; 983286BC2B05698F00851B19 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 983286BB2B05698F00851B19 /* Preview Assets.xcassets */; }; 983286C62B05698F00851B19 /* RethreadTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 983286C52B05698F00851B19 /* RethreadTests.swift */; }; @@ -20,7 +20,7 @@ 988A0F952B3BFB4C00ACDC90 /* SignUpView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */; }; 988A0F992B3C112300ACDC90 /* DatePickerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 988A0F982B3C112300ACDC90 /* DatePickerModel.swift */; }; 9897C7732B3E6C4000EDE9D9 /* CustomDropdownMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9897C7722B3E6C4000EDE9D9 /* CustomDropdownMenu.swift */; }; - 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183852B38273B001E324A /* LoginSignupView.swift */; }; + 98A183862B38273B001E324A /* MainView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183852B38273B001E324A /* MainView.swift */; }; 98A183882B383C0B001E324A /* SignInView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183872B383C0B001E324A /* SignInView.swift */; }; 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183892B383C47001E324A /* VerificationView.swift */; }; 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A1838B2B38D32A001E324A /* ColorPalette.swift */; }; @@ -45,7 +45,6 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IntroView.swift; sourceTree = ""; }; 7C3A04B42B0AD9DF00E36883 /* OnboardingApp.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingApp.swift; sourceTree = ""; }; 983286B12B05698E00851B19 /* Rethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rethread.app; sourceTree = BUILT_PRODUCTS_DIR; }; 983286B82B05698F00851B19 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; @@ -61,7 +60,7 @@ 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignUpView.swift; sourceTree = ""; }; 988A0F982B3C112300ACDC90 /* DatePickerModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatePickerModel.swift; sourceTree = ""; }; 9897C7722B3E6C4000EDE9D9 /* CustomDropdownMenu.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomDropdownMenu.swift; sourceTree = ""; }; - 98A183852B38273B001E324A /* LoginSignupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginSignupView.swift; sourceTree = ""; }; + 98A183852B38273B001E324A /* MainView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainView.swift; sourceTree = ""; }; 98A183872B383C0B001E324A /* SignInView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignInView.swift; sourceTree = ""; }; 98A183892B383C47001E324A /* VerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VerificationView.swift; sourceTree = ""; }; 98A1838B2B38D32A001E324A /* ColorPalette.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorPalette.swift; sourceTree = ""; }; @@ -73,6 +72,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 983014C22B451A3E004A6A07 /* NavigationTransitions in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -144,9 +144,8 @@ 7C9AA2D42B0ECADF00EF6F36 /* Styles */, 9897C7712B3E6BF600EDE9D9 /* Components */, 7C9AA2CC2B0EC02600EF6F36 /* Models */, - 7C3A04B22B0AD9DF00E36883 /* IntroView.swift */, 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, - 98A183852B38273B001E324A /* LoginSignupView.swift */, + 98A183852B38273B001E324A /* MainView.swift */, 98A183872B383C0B001E324A /* SignInView.swift */, 988A0F942B3BFB4C00ACDC90 /* SignUpView.swift */, 98A183892B383C47001E324A /* VerificationView.swift */, @@ -208,6 +207,9 @@ dependencies = ( ); name = Rethread; + packageProductDependencies = ( + 983014C12B451A3E004A6A07 /* NavigationTransitions */, + ); productName = Rethread; productReference = 983286B12B05698E00851B19 /* Rethread.app */; productType = "com.apple.product-type.application"; @@ -281,6 +283,9 @@ Base, ); mainGroup = 983286A82B05698E00851B19; + packageReferences = ( + 983014C02B451A3E004A6A07 /* XCRemoteSwiftPackageReference "swiftui-navigation-transitions" */, + ); productRefGroup = 983286B22B05698E00851B19 /* Products */; projectDirPath = ""; projectRoot = ""; @@ -325,12 +330,11 @@ files = ( 9868A7DA2B1FADA70063D9BA /* QuestionView.swift in Sources */, 7C3A04B82B0AD9DF00E36883 /* OnboardingApp.swift in Sources */, - 7C3A04B62B0AD9DF00E36883 /* IntroView.swift in Sources */, 9868A7DE2B1FAE780063D9BA /* ButtonStyles.swift in Sources */, 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, 988A0F952B3BFB4C00ACDC90 /* SignUpView.swift in Sources */, 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */, - 98A183862B38273B001E324A /* LoginSignupView.swift in Sources */, + 98A183862B38273B001E324A /* MainView.swift in Sources */, 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */, 98A183882B383C0B001E324A /* SignInView.swift in Sources */, 988A0F992B3C112300ACDC90 /* DatePickerModel.swift in Sources */, @@ -664,6 +668,25 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + 983014C02B451A3E004A6A07 /* XCRemoteSwiftPackageReference "swiftui-navigation-transitions" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/davdroman/swiftui-navigation-transitions.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 0.13.3; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 983014C12B451A3E004A6A07 /* NavigationTransitions */ = { + isa = XCSwiftPackageProductDependency; + package = 983014C02B451A3E004A6A07 /* XCRemoteSwiftPackageReference "swiftui-navigation-transitions" */; + productName = NavigationTransitions; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 983286A92B05698E00851B19 /* Project object */; } diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 0000000..81d08fe --- /dev/null +++ b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,23 @@ +{ + "pins" : [ + { + "identity" : "swiftui-introspect", + "kind" : "remoteSourceControl", + "location" : "https://github.com/siteline/swiftui-introspect", + "state" : { + "revision" : "9e1cc02a65b22e09a8251261cccbccce02731fc5", + "version" : "1.1.1" + } + }, + { + "identity" : "swiftui-navigation-transitions", + "kind" : "remoteSourceControl", + "location" : "https://github.com/davdroman/swiftui-navigation-transitions.git", + "state" : { + "revision" : "a6a3c70ad5d771bd1e927fb55897231cd9592024", + "version" : "0.13.3" + } + } + ], + "version" : 2 +} diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 4c8c0470188f1c3a4d2bfe7324b89f89c91a3a1a..88e14e123f78745d53d470650df7c6c32027a6e5 100644 GIT binary patch literal 69588 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 z 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 U&e~j7)}1SKaOe8_^P$@R0%#~?A^-pY literal 73260 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 D0VUoy diff --git a/Rethread/Rethread/.DS_Store b/Rethread/Rethread/.DS_Store index 957baff8820780f504f2bad5497b98cc8a62bdfd..803a0bf6017100ed275e8dd21c7b147f80ed5c05 100644 GIT binary patch delta 21 ccmZoMXffC@hmpg=+)PKo(762=5E07q5^6#xJL diff --git a/Rethread/Rethread/IntroView.swift b/Rethread/Rethread/IntroView.swift deleted file mode 100644 index 850e97c..0000000 --- a/Rethread/Rethread/IntroView.swift +++ /dev/null @@ -1,28 +0,0 @@ -import SwiftUI - -struct IntroView: View { - @AppStorage("signed_in") var currentUserSignedIn: Bool = false - - init() { - UserDefaults.standard.set(false, forKey: "signed_in") - print("Current user signed in: \(currentUserSignedIn)") - } - - var body: some View { - ZStack { - if currentUserSignedIn { - // Display main content - // Make Onboarding conditional later - OnboardingView() - } else { - // Display the LoginSignupView - LoginSignupView(currentUserSignedIn: $currentUserSignedIn) - } - } - } -} - - -#Preview { - IntroView() -} diff --git a/Rethread/Rethread/LoginSignupView.swift b/Rethread/Rethread/LoginSignupView.swift deleted file mode 100644 index ebfd347..0000000 --- a/Rethread/Rethread/LoginSignupView.swift +++ /dev/null @@ -1,95 +0,0 @@ -import SwiftUI - -#if canImport(UIKit) -extension View { - func hideKeyboard() { - UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil) - } -} -#endif - -struct LoginSignupView: View { - @Binding var currentUserSignedIn: Bool - @State private var showingSignIn = false - @State private var showingSignUp = false - - var body: some View { - VStack { - Spacer() - - Image(systemName: "photo") - .resizable() - .aspectRatio(contentMode: .fit) - .frame(width: 30, height: 30) - .foregroundColor(.gray) - .padding(.bottom,20) - .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) - - // Description text - Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna.") - .font(.body) - .foregroundColor(.gray) - .multilineTextAlignment(.center) - .padding(.horizontal, 25) - .padding(.bottom, 55) - - - HStack(spacing: 30) { - // Log In Button - Button(action: { - showingSignIn = true - }) { - HStack { - Text("Log In") - Image(systemName: "arrow.right.circle") - } - .frame(maxWidth: .infinity) - } - .buttonStyle(PrimaryButtonStyle()) - - // Sign Up Button - Button(action: { - showingSignUp = true - }) { - HStack { - Text("Join Us") - Image(systemName: "person.crop.circle.badge.plus") - } - .frame(maxWidth: .infinity) - } - .buttonStyle(SecondaryButtonStyle()) - } - .padding(.horizontal) - .padding(.bottom, 15) - - } - .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) - .fullScreenCover(isPresented: $showingSignIn) { - SignInView(currentUserSignedIn: $currentUserSignedIn) - } - .fullScreenCover(isPresented: $showingSignUp) { - SignUpView(currentUserSignedIn: $currentUserSignedIn) - } - } -} - -struct CustomTextField: View { - var placeholder: String - @Binding var text: String - - var body: some View { - TextField(placeholder, text: $text) - .foregroundColor(Color.primaryTextColor) - .padding() - .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) - .zIndex(-1) - } - -} - -// Preview -struct LoginSignupView_Previews: PreviewProvider { - static var previews: some View { - LoginSignupView(currentUserSignedIn: .constant(false)) - } -} diff --git a/Rethread/Rethread/MainView.swift b/Rethread/Rethread/MainView.swift new file mode 100644 index 0000000..af54443 --- /dev/null +++ b/Rethread/Rethread/MainView.swift @@ -0,0 +1,119 @@ +import SwiftUI +import NavigationTransitions + +#if canImport(UIKit) +extension View { + func hideKeyboard() { + UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil) + } +} +#endif + +struct MainView: View { + @AppStorage("isLoggedIn") var isLoggedIn = false + @State private var path: [String] = [] + + var body: some View { + NavigationStack (path: $path) { + VStack { + Spacer() + + Image(systemName: "photo") + .resizable() + .aspectRatio(contentMode: .fit) + .frame(width: 30, height: 30) + .foregroundColor(.gray) + .padding(.bottom,20) + .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) + + // Description text + Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna.") + .font(.body) + .foregroundColor(.gray) + .multilineTextAlignment(.center) + .padding(.horizontal, 25) + .padding(.bottom, 55) + + + HStack(spacing: 30) { + // Log In Button + Button(action: { + path.append("SignInView") + }) { + HStack { + Text("Log In") + Image(systemName: "arrow.right.circle") + } + .frame(maxWidth: .infinity) + } + .buttonStyle(PrimaryButtonStyle()) + + // Sign Up Button + Button(action: { + path.append("SignUpView") + }) { + HStack { + Text("Join Us") + Image(systemName: "person.crop.circle.badge.plus") + } + .frame(maxWidth: .infinity) + } + .buttonStyle(SecondaryButtonStyle()) + } + .padding(.horizontal) + .padding(.bottom, 15) + .navigationDestination(for: String.self) { view in + if view == "SignInView" { + SignInView(path: $path) + } else if view == "SignUpView" { + SignUpView(path: $path) + } else if view == "WelcomeView" { + WelcomeView(path: $path) + } + } + } + .frame(maxHeight: .infinity) + .onAppear() { + if isLoggedIn { + + // Get user data from database and store in userDefaults + // We want to check if the user has onboarding completed or not + // If not, we want to show the onboarding view + + // If logged in, and onboarding is not completed, show onboarding + } + } + } + .navigationTransition(.slide(axis: .vertical)) + // Safe area for iPhone X and above + .safeAreaInset(edge: .top, alignment: .center, spacing: 0) { + Color.clear + .frame(height: 0) + .background(Material.bar) + } + + } +} + +struct CustomTextField: View { + var placeholder: String + @Binding var text: String + + var body: some View { + TextField(placeholder, text: $text) + .foregroundColor(Color.primaryTextColor) + .padding() + .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray, lineWidth: 1)) + .zIndex(-1) + } + +} + +#if DEBUG +struct MainView_Previews: PreviewProvider { + static var previews: some View { + MainView() + } +} +#endif + diff --git a/Rethread/Rethread/OnboardingApp.swift b/Rethread/Rethread/OnboardingApp.swift index df6ec78..05a2d43 100644 --- a/Rethread/Rethread/OnboardingApp.swift +++ b/Rethread/Rethread/OnboardingApp.swift @@ -6,7 +6,7 @@ import SwiftUI struct OnboardingApp: App { var body: some Scene { WindowGroup { - IntroView() + MainView() } } } diff --git a/Rethread/Rethread/OnboardingView.swift b/Rethread/Rethread/OnboardingView.swift index 50ec177..58a5b17 100644 --- a/Rethread/Rethread/OnboardingView.swift +++ b/Rethread/Rethread/OnboardingView.swift @@ -1,75 +1,182 @@ import SwiftUI -struct OnboardingView: View { - // # Of pages - var numberOfPages = 4 - @State private var currentScreenIndex = 0 - @State private var answers: [[String]] = Array(repeating: [], count: 3) +struct OnboardingStep { + let question: String + let options: [String] + let maxSelections: Int +} + +let onboardingSteps = [ + OnboardingStep(question: "What is your favorite color?", + options: ["Red", "Green", "Blue", "Purple"], + maxSelections: 1), + + OnboardingStep(question: "What is your favorite animal?", + options: ["Dog", "Cat", "Bird"], + maxSelections: 2), + + OnboardingStep(question: "What is your favorite food?", + options: ["Pizza", "Pasta", "Burgers"], + maxSelections: 1) +] +struct OnboardingView: View { + @State private var currentStep = 0 + @State private var selectedOptions = [[String]](repeating: [], count: onboardingSteps.count) + let onboardingStepsCount = onboardingSteps.count + @Environment(\.presentationMode) var presentationMode + + var body: some View { - VStack { - if currentScreenIndex == 0 { - WelcomeView(action: goToNextScreen) - } else if currentScreenIndex == 1 { - QuestionView( - question: "Who penned this timeless wisdom: 'You were born with wings, why prefer to crawl through life?'", - options: ["Kahlil Gibran", "Rumi", "Hafez", "Shakespeare"], - isLastPage: false, - action: goToNextScreen, - previousAction: goToPreviousScreen, - selectedAnswers: $answers[currentScreenIndex - 1] - ) - } else if currentScreenIndex == 2 { - QuestionView( - question: "Identify the author of this quote: 'The only impossible journey is the one you never begin.'", - options: ["Tony Robbins", "Neil Armstrong", "Mark Twain", "J.R.R. Tolkien"], - isLastPage: false, - action: goToNextScreen, - previousAction: goToPreviousScreen, - selectedAnswers: $answers[currentScreenIndex - 1] - ) - } else { - QuestionView( - question: "Determine who said: 'Out beyond ideas of wrongdoing and rightdoing, there is a field. I'll meet you there.'", - options: ["Rumi", "Oscar Wilde", "Emily Dickinson", "Pablo Neruda"], - isLastPage: true, - action: goToNextScreen, - previousAction: goToPreviousScreen, - selectedAnswers: $answers[currentScreenIndex - 1] - ) + VStack (spacing: 0) { + TabView(selection: $currentStep ) { + ForEach(0.. 0 && selectedOptions[newValue - 1].isEmpty { + currentStep -= 1 + } + } + + Spacer() + + HStack (spacing: 0) { + Button(action: previousStep) { + Image(systemName: "chevron.left") + .font(.title) + } + .buttonStyle(PreviousButtonStyle()) + + Spacer() + + + HStack { + ForEach(0.. Bool { + currentStep == onboardingStepsCount - 1 + } + + func previousStep() { withAnimation { - if currentScreenIndex > 0 { - currentScreenIndex -= 1 + if currentStep > 0 { + currentStep -= 1 + } else { + // Navigate to the previous screen + // Close the presentation + presentationMode.wrappedValue.dismiss() } } } - - func goToNextScreen() { + + func nextStep() { withAnimation { - if currentScreenIndex < numberOfPages - 1 { - currentScreenIndex += 1 - } else { - finishOnboarding() + if currentStep < onboardingStepsCount - 1 { + currentStep += 1 } } } - - func finishOnboarding() { - sendAnswersToBackend(answers) - answers.removeAll() - - // Navigate somewhere. Possibly home screen? + + + func isCurrentStepValid() -> Bool { + !selectedOptions[currentStep].isEmpty } - - func sendAnswersToBackend(_ answers: [[String]]) { - // Implement the network request logic here - print("Sending answers to backend:", answers) + + func finishOnboarding() { + // MARK: Backend + // Navigate to the main screen, call backend } } + +struct OptionRow: View { + var option: String + var isSelected: Bool + var toggleSelection: () -> Void + + var body: some View { + HStack { + Image(systemName: isSelected ? "checkmark.square.fill" : "square") + .resizable() + .frame(width: 22, height: 22) + .foregroundColor(Color(red: 102/255, green: 112/255, blue: 128/255)) + .onTapGesture(perform: toggleSelection) + + Text(option) + .foregroundColor(.black) + .padding(.leading) + .onTapGesture(perform: toggleSelection) + + Spacer() + } + .padding(.vertical, 15) + } +} + + diff --git a/Rethread/Rethread/QuestionView.swift b/Rethread/Rethread/QuestionView.swift index 73991a0..0c60716 100644 --- a/Rethread/Rethread/QuestionView.swift +++ b/Rethread/Rethread/QuestionView.swift @@ -71,30 +71,6 @@ struct QuestionView: View { } } -struct OptionRow: View { - var option: String - var isSelected: Bool - var toggleSelection: () -> Void - - var body: some View { - HStack { - Image(systemName: isSelected ? "checkmark.square.fill" : "square") - .resizable() - .frame(width: 22, height: 22) - .foregroundColor(Color(red: 102/255, green: 112/255, blue: 128/255)) - .onTapGesture(perform: toggleSelection) - - Text(option) - .foregroundColor(.black) - .padding(.leading) - .onTapGesture(perform: toggleSelection) - - Spacer() - } - .padding(.vertical, 15) - } -} - struct AnyButtonStyle: ButtonStyle { private let _makeBody: (Configuration) -> AnyView diff --git a/Rethread/Rethread/SignInView.swift b/Rethread/Rethread/SignInView.swift index bbe2833..d19329a 100644 --- a/Rethread/Rethread/SignInView.swift +++ b/Rethread/Rethread/SignInView.swift @@ -3,13 +3,13 @@ import SwiftUI struct SignInView: View { - @Binding var currentUserSignedIn: Bool + @Binding var path: [String] @State private var email: String = "" @State private var password: String = "" @State private var isShowingVerification: Bool = false @State private var isPasswordVisible: Bool = false @FocusState var isFieldFocus: FieldToFocus? - @Environment(\.presentationMode) var presentationMode + @Environment(\.dismiss) private var dismiss enum FieldToFocus { case secureField, textField @@ -21,7 +21,7 @@ struct SignInView: View { VStack(alignment: .leading) { HStack { Button(action: { - presentationMode.wrappedValue.dismiss() + dismiss() }) { Image(systemName: "chevron.left") } @@ -45,7 +45,8 @@ struct SignInView: View { .fontWeight(.medium) .foregroundColor(Color.primaryColor) Button(action: { - // Handle forgot password action + path.removeLast() + path.append("SignUpView") }) { Text("create an account") .foregroundColor(Color.primaryColor) @@ -56,6 +57,7 @@ struct SignInView: View { } .padding(.horizontal, 25) + VStack(alignment: .leading, spacing: 0) { Text("Email") .foregroundColor(Color.primaryColor) @@ -125,11 +127,18 @@ struct SignInView: View { .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottom) // Aligns buttons to the bottom } .fullScreenCover(isPresented: $isShowingVerification) { - VerificationView(currentUserSignedIn: $currentUserSignedIn) + VerificationView(isSignIn: true, path: $path) } .gesture(TapGesture().onEnded{ self.hideKeyboard() }) .ignoresSafeArea(.keyboard) + .navigationBarBackButtonHidden(true) + } +} + +struct MainView2_Previews: PreviewProvider { + static var previews: some View { + MainView() } } diff --git a/Rethread/Rethread/SignUpView.swift b/Rethread/Rethread/SignUpView.swift index 00482ee..b3b3da0 100644 --- a/Rethread/Rethread/SignUpView.swift +++ b/Rethread/Rethread/SignUpView.swift @@ -1,8 +1,8 @@ import SwiftUI struct SignUpView: View { - @Binding var currentUserSignedIn: Bool - + @Binding var path: [String] + @State private var isShowingVerification: Bool = false struct SignUpFormData { var firstName: String = "" // First name text field var lastName: String = "" // Last name text field @@ -14,13 +14,13 @@ struct SignUpView: View { var dateOfBirth: String = "" // Date of birth text field var gender: String = "Male" // Gender text field } - @State private var formData = SignUpFormData() @State private var isPasswordVisible = false @State private var showingDatePicker = false @State private var showingGenderPicker = false @State private var genderOptions = ["Male", "Female", "Other"] - @Environment(\.presentationMode) var presentationMode + @State private var areTermsAccepted = false + @Environment(\.dismiss) private var dismiss func toggleDatePicker() { showingDatePicker.toggle() @@ -35,7 +35,7 @@ struct SignUpView: View { VStack(alignment: .leading) { HStack { Button(action: { - presentationMode.wrappedValue.dismiss() + dismiss() }) { Image(systemName: "chevron.left") } @@ -59,7 +59,8 @@ struct SignUpView: View { .fontWeight(.medium) .foregroundColor(Color.primaryColor) Button(action: { - // Handle forgot password action + path.removeLast() + path.append("SignInView") }) { Text("log in") .foregroundColor(Color.primaryColor) @@ -208,30 +209,41 @@ struct SignUpView: View { Button("Join Us") { // Handle sign up print(formData) + self.isShowingVerification = true } - .buttonStyle(PrimaryButtonStyle(width: 300)) + .buttonStyle(PrimaryButtonStyle(width: 300, isDisabled: !areTermsAccepted)) + .disabled(!areTermsAccepted) - Button(action: { - // Handle terms and conditions - }) { - Text("Terms and Conditions") + HStack { + Image(systemName: areTermsAccepted ? "checkmark.square.fill" : "square") .foregroundColor(Color.primaryColor) - .fontWeight(.semibold) - .underline() // Underlined text + .onTapGesture { + areTermsAccepted.toggle() + } + .offset(y: 2) + .font(.system(size: 20)) + + + Button(action: { + // Handle terms and conditions + }) { + Text("Terms and Conditions") + .foregroundColor(Color.primaryColor) + .fontWeight(.semibold) + .underline() // Underlined text + } } } .frame(maxWidth: .infinity) // Aligns buttons to the bottom .padding(.vertical, 10) } } + .fullScreenCover(isPresented: $isShowingVerification) { + VerificationView(isSignIn: false, path: $path) + } .gesture(TapGesture().onEnded{ self.hideKeyboard() }) - .safeAreaInset(edge: .top, alignment: .center, spacing: 0) { - Color.clear - .frame(height: 10) - .background(Material.bar) - } } // Date picker modal .sheet(isPresented: $showingDatePicker) { @@ -240,12 +252,6 @@ struct SignUpView: View { .presentationDragIndicator(.visible) } - } -} - -// Preview -struct SignUpView_Previews: PreviewProvider { - static var previews: some View { - SignUpView(currentUserSignedIn: .constant(false)) + .navigationBarBackButtonHidden(true) } } diff --git a/Rethread/Rethread/Styles/ButtonStyles.swift b/Rethread/Rethread/Styles/ButtonStyles.swift index d663715..a2050bb 100644 --- a/Rethread/Rethread/Styles/ButtonStyles.swift +++ b/Rethread/Rethread/Styles/ButtonStyles.swift @@ -2,18 +2,39 @@ import SwiftUI +struct ConfigurableButtonStyle: ButtonStyle { + var applyStyle: (Configuration) -> AnyView + + func makeBody(configuration: Configuration) -> some View { + applyStyle(configuration) + } +} + +extension ButtonStyle where Self == ConfigurableButtonStyle { + static func configurable(_ isLastStep: Bool, isEnabled: Bool) -> Self { + ConfigurableButtonStyle { configuration in + if isLastStep { + return AnyView(LetStartButtonStyle(isEnabled: isEnabled).makeBody(configuration: configuration)) + } else { + return AnyView(NextButtonStyle(isEnabled: isEnabled).makeBody(configuration: configuration)) + } + } + } +} + struct PrimaryButtonStyle: ButtonStyle { // Button background color #667080 // Rounded corners // Take in width and height as parameters? var width: CGFloat = 100 var height: CGFloat = 20 + var isDisabled: Bool = false func makeBody(configuration: Self.Configuration) -> some View { configuration.label .frame(width: width, height: height) // Use optional binding in case width and height are not provided .padding() - .background(configuration.isPressed ? Color(red: 170/255, green: 177/255, blue: 187/255) + .background(configuration.isPressed || isDisabled ? Color(red: 170/255, green: 177/255, blue: 187/255) : Color.primaryColor) .cornerRadius(9) .foregroundColor(.white) @@ -69,7 +90,7 @@ struct NextButtonStyle: ButtonStyle { bottomTrailing: 0.0, topTrailing: 0.0), style: .continuous) - .fill(isEnabled ? Color.primaryColor + .fill(isEnabled && !configuration.isPressed ? Color.primaryColor : Color(red: 170/255, green: 177/255, blue: 187/255))) // Disabled color } } @@ -87,7 +108,7 @@ struct LetStartButtonStyle: ButtonStyle { bottomTrailing: 0.0, topTrailing: 0.0), style: .continuous) - .fill(isEnabled ? Color.primaryColor + .fill(isEnabled && !configuration.isPressed ? Color.primaryColor : Color(red: 170/255, green: 177/255, blue: 187/255))) // Disabled color } } diff --git a/Rethread/Rethread/VerificationView.swift b/Rethread/Rethread/VerificationView.swift index 26e4904..015b28a 100644 --- a/Rethread/Rethread/VerificationView.swift +++ b/Rethread/Rethread/VerificationView.swift @@ -1,8 +1,10 @@ import SwiftUI struct VerificationView: View { - @Binding var currentUserSignedIn: Bool - @Environment(\.presentationMode) var presentationMode + // Sign in or Sign up verification? + @State var isSignIn: Bool + @Binding var path: [String] + @Environment(\.dismiss) private var dismiss @State private var code: [String] = ["", "", "", ""] @FocusState private var focusedField: Field? @@ -20,7 +22,7 @@ struct VerificationView: View { VStack(alignment: .leading) { HStack { Button(action: { - presentationMode.wrappedValue.dismiss() + dismiss() }) { Image(systemName: "chevron.left") } @@ -83,18 +85,25 @@ struct VerificationView: View { } Spacer() } - // Bottom content, including the sign-in button VStack (spacing: 16) { Button("Verify") { - // Go to the home screen, set currentUserSignedIn to true - currentUserSignedIn = true + // Handle sign in + if isSignIn { + // Sign in + print("Sign in") + } else { + withAnimation { + dismiss() + DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) { + path.append("WelcomeView") + } + } + } } .buttonStyle(PrimaryButtonStyle(width: 300)) - - Button(action: { // Handle request new code }) { @@ -113,11 +122,4 @@ struct VerificationView: View { } } -#if DEBUG -struct Verification_Preview: PreviewProvider { - static var previews: some View { - VerificationView(currentUserSignedIn: .constant(false)) - } -} -#endif diff --git a/Rethread/Rethread/WelcomeView.swift b/Rethread/Rethread/WelcomeView.swift index 7d73e47..40ccf66 100644 --- a/Rethread/Rethread/WelcomeView.swift +++ b/Rethread/Rethread/WelcomeView.swift @@ -1,7 +1,8 @@ import SwiftUI struct WelcomeView: View { - var action: () -> Void + @Binding var path: [String] + @State private var showOnboarding = false var body: some View { VStack { @@ -34,7 +35,11 @@ struct WelcomeView: View { .padding(.horizontal) - Button("Get Started", action: action) + Button("Get Started", action: { + withAnimation { + showOnboarding.toggle() + } + }) .buttonStyle(PrimaryButtonStyle(width: 200, height: 20)) .padding(.bottom, 55.0) .padding(.top) @@ -42,7 +47,11 @@ struct WelcomeView: View { } .frame(maxWidth: .infinity) // Ensure VStack takes full width } + .fullScreenCover(isPresented: $showOnboarding) { + OnboardingView() + } .edgesIgnoringSafeArea(.all) .background(Color(UIColor.systemGray6)) + .navigationBarBackButtonHidden(true) } } From d9f3c55b3e8a6483f884a83405bb17986425540b Mon Sep 17 00:00:00 2001 From: ParsaKargari Date: Thu, 4 Jan 2024 02:08:41 -0700 Subject: [PATCH 19/19] Video/Image holders. T&C Signed-off-by: ParsaKargari --- Rethread/Rethread.xcodeproj/project.pbxproj | 20 +++ .../UserInterfaceState.xcuserstate | Bin 69588 -> 91758 bytes Rethread/Rethread/.DS_Store | Bin 6148 -> 6148 bytes .../starSky.imageset/Contents.json | 21 ++++ .../starSky.imageset/starSky.jpg | Bin 0 -> 163019 bytes Rethread/Rethread/MainView.swift | 116 ++++++++++-------- .../Rethread/Models/TermsAndConditions.swift | 61 +++++++++ Rethread/Rethread/SignUpView.swift | 9 +- .../Rethread/VideoPlayer/PlayerView.swift | 18 +++ .../Rethread/VideoPlayer/UIPlayerView.swift | 51 ++++++++ Rethread/Rethread/WelcomeView.swift | 45 ++++--- 11 files changed, 271 insertions(+), 70 deletions(-) create mode 100644 Rethread/Rethread/Assets.xcassets/starSky.imageset/Contents.json create mode 100644 Rethread/Rethread/Assets.xcassets/starSky.imageset/starSky.jpg create mode 100644 Rethread/Rethread/Models/TermsAndConditions.swift create mode 100644 Rethread/Rethread/VideoPlayer/PlayerView.swift create mode 100644 Rethread/Rethread/VideoPlayer/UIPlayerView.swift diff --git a/Rethread/Rethread.xcodeproj/project.pbxproj b/Rethread/Rethread.xcodeproj/project.pbxproj index e446bdb..6b8cfca 100644 --- a/Rethread/Rethread.xcodeproj/project.pbxproj +++ b/Rethread/Rethread.xcodeproj/project.pbxproj @@ -25,6 +25,9 @@ 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A183892B383C47001E324A /* VerificationView.swift */; }; 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98A1838B2B38D32A001E324A /* ColorPalette.swift */; }; 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */; }; + 98F525C92B469BBD00CCAD78 /* PlayerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F525C82B469BBD00CCAD78 /* PlayerView.swift */; }; + 98F525CB2B469BEB00CCAD78 /* UIPlayerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F525CA2B469BEB00CCAD78 /* UIPlayerView.swift */; }; + 98F525CE2B46A96F00CCAD78 /* TermsAndConditions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98F525CD2B46A96F00CCAD78 /* TermsAndConditions.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -65,6 +68,9 @@ 98A183892B383C47001E324A /* VerificationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VerificationView.swift; sourceTree = ""; }; 98A1838B2B38D32A001E324A /* ColorPalette.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ColorPalette.swift; sourceTree = ""; }; 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; + 98F525C82B469BBD00CCAD78 /* PlayerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlayerView.swift; sourceTree = ""; }; + 98F525CA2B469BEB00CCAD78 /* UIPlayerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIPlayerView.swift; sourceTree = ""; }; + 98F525CD2B46A96F00CCAD78 /* TermsAndConditions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TermsAndConditions.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -97,6 +103,7 @@ isa = PBXGroup; children = ( 988A0F982B3C112300ACDC90 /* DatePickerModel.swift */, + 98F525CD2B46A96F00CCAD78 /* TermsAndConditions.swift */, ); path = Models; sourceTree = ""; @@ -143,6 +150,7 @@ 7C9AA2D12B0EC3BC00EF6F36 /* Extensions */, 7C9AA2D42B0ECADF00EF6F36 /* Styles */, 9897C7712B3E6BF600EDE9D9 /* Components */, + 98F525CC2B46A8E900CCAD78 /* VideoPlayer */, 7C9AA2CC2B0EC02600EF6F36 /* Models */, 98AE7AB82B1FAADB0029C2F7 /* OnboardingView.swift */, 98A183852B38273B001E324A /* MainView.swift */, @@ -191,6 +199,15 @@ path = Components; sourceTree = ""; }; + 98F525CC2B46A8E900CCAD78 /* VideoPlayer */ = { + isa = PBXGroup; + children = ( + 98F525C82B469BBD00CCAD78 /* PlayerView.swift */, + 98F525CA2B469BEB00CCAD78 /* UIPlayerView.swift */, + ); + path = VideoPlayer; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -334,8 +351,11 @@ 98AE7AB92B1FAADB0029C2F7 /* OnboardingView.swift in Sources */, 988A0F952B3BFB4C00ACDC90 /* SignUpView.swift in Sources */, 98A1838C2B38D32A001E324A /* ColorPalette.swift in Sources */, + 98F525CE2B46A96F00CCAD78 /* TermsAndConditions.swift in Sources */, 98A183862B38273B001E324A /* MainView.swift in Sources */, + 98F525C92B469BBD00CCAD78 /* PlayerView.swift in Sources */, 98A1838A2B383C47001E324A /* VerificationView.swift in Sources */, + 98F525CB2B469BEB00CCAD78 /* UIPlayerView.swift in Sources */, 98A183882B383C0B001E324A /* SignInView.swift in Sources */, 988A0F992B3C112300ACDC90 /* DatePickerModel.swift in Sources */, 9897C7732B3E6C4000EDE9D9 /* CustomDropdownMenu.swift in Sources */, diff --git a/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate b/Rethread/Rethread.xcodeproj/project.xcworkspace/xcuserdata/parsakargari.xcuserdatad/UserInterfaceState.xcuserstate index 88e14e123f78745d53d470650df7c6c32027a6e5..1381d7fa9179345660e34fd6286cbc32ad33592b 100644 GIT binary patch literal 91758 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 literal 69588 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 z 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 U&e~j7)}1SKaOe8_^P$@R0%#~?A^-pY diff --git a/Rethread/Rethread/.DS_Store b/Rethread/Rethread/.DS_Store index 803a0bf6017100ed275e8dd21c7b147f80ed5c05..628e65e27f8d5dfd618a4dd3419d4a0ccc347c98 100644 GIT binary patch delta 135 zcmZoMXfc=|#>B)qu~2NHo+2a5#DLw41(+BaStj!^ewO562m``Qh7^WWhJ1zqh8%`O zhDsp2XtE4r1BbDhfsTTSiTUIujP|&dZvMc?&$5}FgP#Lv&1OcX@640=MJzcO85n?w Lfnjri$QEV*C#xL@ delta 68 zcmZoMXfc=|#>B`mu~2NHo+2aD#DLwC4MbQb^D})|%+A8HS%HOvX)`+qKL=3FW)+c7G?lRY!4*> diff --git a/Rethread/Rethread/Assets.xcassets/starSky.imageset/Contents.json b/Rethread/Rethread/Assets.xcassets/starSky.imageset/Contents.json new file mode 100644 index 0000000..4aa7228 --- /dev/null +++ b/Rethread/Rethread/Assets.xcassets/starSky.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "starSky.jpg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Rethread/Rethread/Assets.xcassets/starSky.imageset/starSky.jpg b/Rethread/Rethread/Assets.xcassets/starSky.imageset/starSky.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9a64bd5ea6a4ed15e4d96ac89311adc37d78f707 GIT binary patch literal 163019 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 <-4#gUbEA(8u?zT1>fR;fUU<;=TS;8j$4rD^It+ zKVfC(*?+|?@%3GSH22_E+;Qx#@>Q@+arS3C4>*^xXs$1(PH|U)n zviG@EfBtjqH}$4wueh?+G`)8}fH7h7D{S{h{<^R5pLC!Fj3*rjX3v>y7W7{Gd>1|v+vr{9DV*AgZdh^JTNaQ7 z=Ss#v{z|3B<7u9=#A>v-Eqj(+(%O1qpU#L>mCt704l49VGmgn(OSbL$*s{;tZy5OS=M77K{ zcb1Y4j76EPk(vIpdIf4R)(V| z5O)++da|-&$Nrv0aFq$O;7oWsMX}vxfV^JyR;;;43zD0~Sd~rmGtXe{zqy*{J)e*N zWSaD7mpSO4?u=EN@sktVE&b~vJuKLha8Opcw&{Y?Do^gwhDU5q49oe#+UEzOM zOva^_G%ojwdSTl8MwkEh+{@|zueksJD(a;*&D=n=_e%QKVcu^?8^=-_|G(cw{qg-4 zQ5y+){Jdda`kc`JAx8lS_v9eNO#7BU5%$p<7Z^gl^;DyVlKl6|Hssp?@7aw$Nc=b6 zjo#fAkzg`U@eHAzy(DuTS@}kr>8PAcm8zU$k3#!U~u)r2ZU9}*6BxW?#MlItKegaonf0i#c;X0yg~9&h zuWtXCQv_}~!ipwPA)DANT#R?V9JTrIcNbGJu1zT~?B;t#pJ2Vnt2nTzGI9`W3?>3c zX&U997(RbgpGVu|ai7|uM8xHYfJHmbtqnCEaKFk~68oX?{_}{YhpvV6cpk46-2^F1 zqtV+^PNV$p$Fiqc+yLq1PX*5sMOfXa-8Jf!A72XmNa+9S`?hnz;V$3&DXDDd)`Y7{_3MF42| z3M4#s!*wb(!N4|%UWpQJPH2;NK-d-;i%O0M7kqxK`zYE`P8b)6**1qY(W>^3@CnOF z93SaP*x;UCF0+AoR;plK@s*IPTyn~0C}hqckI*lo@O3s2 z2Zf|>6k&acb44L+xxZ}C4GUO(A2%XN-iyil)I_K8S5$pqaw-ShQ*Vf@sB)enEI1Kw zSslpZ@(^=QQVS|j2_>wFoDH!4qvK#)R#Js{^0CPV$NWc@#9%Mm?VxHYUoth*zI{m{ zbJoYVOT_)Iw@|?BC>|B84cdY4DkV9!HVI`XOKE3})D5QE)g!dd3+tdocwZ(-1}9|j z7R+f5{TWZ#1Vog^UMt`kMQ|*&^PAXKdiL#e&H=!ip>8D6_G?7N-oStyRAUXxNXN(l zI8#ERBHR|da!!1hB@|Ks0jrfeva`IlDpMhooSwcTuSaoU;yib!z@U@Bb-Qo6+uK|^ zI~POwHtcm^cK!h9ZwdmTcBsLtpY#O?ZNJfH;*g>>Szf4Dve1Blv={sksW0ZQqL@03 zlFZbYh$Y`-kTaDOe$j83u6dmlut;oiCd#U|<+cXhv_f<~Z)H5AO}5P)Lw)RT`{N<2 z{Gx=HkaoDsN_v`DXh0&cHs{Ug2|gUix8y=OpR$JDv><&^dXrylATHv+alDx_|CaVg z$e`3Tb!9^*ce4)BC{86nb~PFWqTsCTVa+A$VY6irQZA`c6UZ$#k)u`}-b<-O-xx?* zVNJsuEczMvf7t8G-rec3Ho27hQB)n`<2H$sOjj6aF+jn%o)(^3H#-;rO zbrh`~(PkrdvJHRq+uSZ5SF3f8=Mt(Mg^I{(vlZY4^O0rJ2W(ijSE!l0dAmu1dQ{UXF`Yh+ z!w*2hcx&u~Iu%-RNeyez#Io8qBU(m4*w_j-% zcC%UW({3S|$P)Hk3t%;;%eZpVE~Rc5aY|brh<$v^i#-?Xj;-O4Q@+qwfGcqgGt|pr zsy6bi$b?b>cYGqqy!sx%SxR9I;v#xXL+5K46V9LtKO*!Z-DzlVySsGfLI8oCu$mXPUx!dDzhcvNT_yA;ncDNKpjRwyoF6xiJrDz#O@`~Y%%{0!;syTDep!4X z;U=Nbit}QkVU5TWuGM=MOB>)l3Q?Na#Qy41N)Mnx_Ws<4^eCcQZH^_TBGxa$yPzlq z;k+kO6Yy=6FOx(BL=kAXz?QY(;esRw&it&+TR82LN#Kxa>2AbF}1X9oprcS zPF~MPN>zeF%{#nrXTh+yA)G0E6$#RR^r!)#{`ZBe+mx6p=@R}N%o@&F_Kg0j&^5^( z!p4!O7;p{_PLO`bGDi1XuhYoCZ)h()n<59XgyJ zuHR5*HSk!`g{+bedUl1ZJJJl0$11NX7wl18=7w`b zP5rw}PGY67&saE9V7rE_V62mB(S6rBtwJ!@V~2O-qgevhCg^n#T_wuehoJlH=m9&( z4IMQ3z6bBQKIUVmyGg5rh_Q}ALxs4n5{*9v9$0b5rY>l0 z%N}Bn=#Lc|qnvi>6k!3>HS~z2GK-1S`qoUF>(b!&11kChTCt1qb6B!z(qG=Yw5t?Z zj#Gk>$i@R3F^!(My-AeH&wR)x&~^SXN1N{VY|-3}2{1m|GI|@Pa|)XH)SPh?J;a4b zP(5D#BE+Td1X5r>RU87IH^bVnH&VrI8T949tu$M*mxv%fJ z#;FxVnwm!+YG(1J$3nH`fHztla-ZhLfMxv9@Vx$^*SYCw&2mzsB!)b6LKhm022!>h zB`F_aOm+G6Ez~5fz=OKTA`= z|AEc!H~04Tfs;HyWYuHNY|AG4W7_CtF_3~89YW$`Wyv ziU{BM7y)Zm*#tW8`4~CHytdu!n>UbsRI2% zeVAZ47cteS%8GDZVtU&xyhSm$i@wSUJ(n13=U$um2|ePnCS>#6)cv zVnW@pVOIAl!GzSOsxQWsEcC!qDObmSs0K}Kg6yrpFySAa;vPCc$H-JiJzVLIYeVF> zF_Qtl=b|jIPby*Wg6bakeAeY1a2#I^g#JM|c%WO*+Y!lH)y7*c6r>>X9@NSI2xzAg zz)!xqHj6X%`28trQ2Ev{i*D?tj|QZEErs`jkj$zIa`A)O*-P?7 zwm@YEu4f!q?#ySx!m*HIA9unsx%=tL`m03MVW3Ph3l;>LkwLp~8K6|yO!Y_o3?$E1b z&{7A7z|in0o7;MlaDVLHwsOhWh=dHst5^)ffjIv$iyo#@b07DV6GffplHD!ytKsvh zS!3s!!iwRdhQKZTAP;%w`>)$)MEm}?LxF71N|y3MNwPlv@#gE@u7uQ8-(gwIcl9tF zNWPn?{}J@&woLA*rP`i8lajjCHKAc*Zov#F=Vv&D70)=p7Al%(*?@}N?z!m$ZlMDL z^)jtEGZdnp7H5C&lX@_x{Zpy~W`|m4I6Jy`k~YI!Q@g=TI#mu6)B_Yw0yY+Mc+QSm zLl8-cDCS=j*@h^adp&_`oB1Lw+5ZUKDH6O=3VpC-A!~5oq^J11_1eX5`vUUq*TbMi z5?DaJiW2Xy;e9Cq#!IvhcFAIxeOr>&nwZ$|)}UckIemoK0rsZjlyf2YvN&rU`WIqQ zdkJZ5D`eJI=7BlV@^WvjK2@D@3EvyQ0<*(&HTJIz)312bKb=XZt2#y$(G7h({BJfu z{Dk{ip6+yka?W}_ORu`LTRwX&b8!{NheQXO&tSMd^S`9&P*+u{R@_dB^$TTu9`dLHsNClLwARKnIBje zoLo`&G=0CJ`n5c#auOTl3bHvUGwu-y__vuR;E`MyXSgwABzpPb z$j#unnDuex>~-Xfk4-nmcoePcK9PEf@Lh&mjL^5{^vw~$# z5Gi24BFhG@oQVik8zV7O}4=gz)RaI&Bt5LWnxP&66$_*C*F9o?%%; zxo3>TO!_7`5}n(TCW@!h<9$OlUyL?+Kz}}|TB>>>5Lu(>CfC(gdK|E>8(5yjgV^?7 z`)_nG1WAg*S_j_={N4qOds@MKQv+F{dg>MrL)EH8yTr`Cd=eeXEdo}?6LSN*VYxB$ z8PKHTIZ(Y*0LLSbk9XyGIa}Fb_@Sx&xW zUb0%5YrRfNH=6+2?nplrQ#_@y5RNhi+I=+hH{g_`f?rqBnQIqD7NRInGvt9f=OuLU z1_$Pn#2YF1)19y*;*7SMkI-PirfGBdb|jtjqvyD*Xy~RzUpC#p+mU17vqX+z%ycX) zK#rWL;#JR+x42`7Pe)GdKWo1bStXU3P9C%~F!&oZfU6*X^(r@g_?+-3%!4)BF#ffa z&{Qi}aQ`~4Do?LsJxg|Gss-Y+T^ZvQ69#>jsu5ix_~{qOyq38S%?NA5MstmoKb~OE z0~UJMhCQfq;sg|NNJL_~Hi88Hl|M_u$N17+XOk; zwwPYv!(@=npbn9XNcw}3B6qgz4MmUgy!&TYfR|dK69t!4KB59sK@k3FO~TLQqNZE5 z&zOvLJ5%(Q=%h14h0>$)Q*zL!B4^_Lx-UQPo>^eO`J&#PShEso7HXa?Uke5d|`BJKa*#sb^jf+I4)ocrYh5OsSbwiha}I zE+0XR*qPYU}mfV3OSBQBczA{8V z|9W@jAZlp1?SBN<>|Lm@ctr7sa~?9nFhS?kq}+4yAY(9eKuvwumC+$0Rlhkn zuVY8(TQ;~pHOhJr(qL+FF2?Y8FCBfA*&>EF4L5mwF+@<9J6h6bcrq>9^~XDJ87X zhWt>bQ!><`A%NBSF^ykDNzMBi{vRa?bO6N$j|>&C?EeTpmU8C@@iN`(kPcHre!RYS zQAf{QhQSv{@*1<(lVdXapOOMjs(KzL=Y~pP68mP|RPmc`J0V{no`4e=^uJys!@NI{p zX>cg}zZkyw`ad(vO24z%bNU}R?5>UJF9m5Y=U{D@kEI`?$Ldncu(Y#+wWH2%eQa;s ztBbhKMDhz-(3Al@I##BeC{a1MqXxxnwGw9B5It0M9(y*`L8GGK(69i0O1#C+G=>x0 z%PrE&0FD{pwyEkTN^VE zRckmFG7!0MaPWmK=Ny`Mch=KNv^+%Gdx2+~Ll}QWV8hl}|6;(3Hr;%b3UY zM3tCcvl)s~Q)wQTPn)q1@FL@H64_6R!cy4%&S@gBtg|r{{buNiplKSY9d?VLyz#O) zA=N05n_u#xYJe}~Tx17plVXiXR3qEa!^m2FQZQZECx29A=#!Xf)m-fgyunlW#b&uGz&BsV&hesytB1;{QRE^X_r zsAPaEpQtpkl6FoNaaF%2SwcxB(4TGa?g`L?CV?#xri7#EHJLuk zZK<)rlsYdwKk?bILrnQXU%LqiNsSX_$e1AU>OmM73PFDt&oK8pHkQ72t-OL(BEtLo zv{f|Q3e%SDpi_N^o8fjov(FGe zme-p4$+*fr{rK!&8P!eGP7e&DY9UKXfgmZ|jtR35_{_c7kW5BWb2eOAg4A|ZJczxR z%6T=xv6xhlmu>i|{3O@Mh2kh(f4!{g=a#PxDs?Zi#0~CWB_Z^}Vhx}6mD>&cu2WVUh2-0-H>U{n#b{G!O&J;=*ufz;46#VJ%!nH)8R#g zC<6(r-o&7My6{}>M2put&fi-gJnRL9NnmMp@I{`3>z57{y)#N6G3t+Y7M3rE=uyJO zg_Q!-e`Oo22fa!{{zLtb0O}m0E-giL0gGnCaf6tH3cDW$PvlO~c6sBhRIbu)IEP-@ z<2}m5u%QvhGT(3&Y4x_Qd6ai{<35VO{+UzA-$%+=?}T%?44Y_OYVJwA3wm`Qsyvzw z@DIgOzvtM40=x`;Uz&*uBs=PmzPIx6Lm!85#y*6GqD~2zT*4t=nj!wWM{VbU=z*6v z<3CGH{|sVgRyo=TS*}tR$);w8*hk5h$t#*ajso*8Dge6Jpmusxjev?~HyA~2`3(`U zzl-rX5@+buQUC6q_SeiF}Sb|ESLIKqW||0 z!f*P{g05cH^*MQ5REETrnKBJUiqI}gA7D2@8J3i|7h^!&0GHXX<-+_8;FnQcl2>%! zIxkECo@3=FrJP;ISv1;?Kv+>5u%n4#eJ*B#fh;LT`+o#&e+P7=gtYDBL<2gChHQEc zTsK6Kr{P7O$bl;B93x8Lle8pCgS=hu@YHDnYZpw}3g%l}cxh>HMSYXkUc#sgn0#D8 zLM~2lIMv@ftM{(jNZ$gc2jbiMGC?$`N!huF3Eoq|^0z8ws;E^d80s!LgXy?bwO<_N zEv2KUVl^~gUvZjnoHJwoX{fEccj6gm)NuCR$0%}(t9S7)cT?jhaBjc|!Amc=Mj3ON zcr*g~YDZBn7NJd3o2>=!8?zCgAqYl%{B?~1_X!KPnm+f7$X|`pv#sPh6;(t^ht>{v z3ivp`wIM^7O@kViX+fo(W36FW*CmO2*OF<-9D|&jqe*S;Fy5Y8EG@`#JW%#uRIF@} zOBBi^rY> z4%}Xyk*Tr2EW9I?;><5sT2SzSXo&N(Q(|)cwYw?i*pHQ;N+};aS}}Ys9pf~!>dZ&^ zGq^7PvWQAfk^Nj`EXHo;dxYJvl#Lb2uc#QF^F~$cPuVq)Mzty#40YDM2HI8JEhhrr z_&AA*&k)tM3|;UY4w_F1ERA6T#yM$w)sjzI1^zCBYNbT3y-LWGQYwJ$^gwmTpXvZTjwc8v+96rXYA!2uaA}JwnoUi z#OH~|s19)4Mg~76V?mAK%{T%pCX4~goV<>E^n2fY)Y#vMOb?-poL|QQAeiaHgHCSR zs}kT=z4L=Aum#9CEStKduA1WeI$}8AY#J&mxK(3?u6O??_|(1VdGDa=R67e!&}x8@XRXb!hEmdX*7@P)uDakBGi5PSG}a;$ zXWblhl&mH|;qF9EEjXK@=8BuBHMznjl0t?CY^UkFJq-h8#=M`!Z$=wcn4NKknSUc+ zvXPJRAU$F}mDSaFPKXJjD8-pRZ4aO+#F+UG@XZtd8Z$7hHA>vJ*0;3~(I~?yKaSv@ z=R?U+SScMmA>o5o^Q~=%rvuMzfGlBdOSJ3v{R|Z1o}(g%nwaXN+womzE%SfPGWUB| zW!ipF+hCvm&jwb(qIC2zAztk3jm~eZa3;2uokSr@r{GNcPH>L}Ua_#9FD0IBC2Jwn zgSVo2Xf_YtRV`hlmA8-Pc1uBsQ~eJy%-gmt5aoKQ6sVFpM%LC(C-0 zp^Xo7^OpiH8MR${lm_ki1a+=4;Q!_|5*!P~z9N00*`%EQHj!$9Z=-7sVSGx^usrth zQ#y`tR@I1w$(@BQo%jgiw=Dg;f25u-(2sM(9Dya3;>}zld+gg9V%oTVAiuVb?y=B} zHCx55Q_st zxxFkt0?F*4%7f5zKi^WY*IU(cQmqk-lcqTr1HxFCx(X`9dkRFLgA&y$YSqTMIFdK>(xf8a zwpdlQ*)Ufn0?%^Mvf+^UObrQFY0SheB5l!<(7?|&z(!y$<+GTQ-q)VHvlG;|q?r*F$V}QjD-ew14 zg>{zs`Jjd3PENKl&+ULp?lr!`WA$@SAW5k2Oo!tD{iIQ4LYU^Rj5fo=Kbv`htErnjmQ0koSg!LZAkQ^SU8 z_phjsoFx-7{R59mOpm<7M0WCmnqsNx&k2TATt46rjqzUq$zkB^#8Jh3!r7}&{{%V46%*oQ@oek^1QwDz*Ow-aag!90)d{n#!{n+cH zs^CJ(MY?pVWm=7uk|>Bn`YLB7LAgjC4~Gs2{2{%utmKnrkp6^laIbnq=@__!3=?VT zQGZ~dkF&e;F!M*~mDXOzi&mf zsI6b!V;#+-^yTc$YHo}*(WB$;#CalDh2g0flwu$17?CG)70)d!G5L|Lh67=?;x#U) zCrRJxtWLK+a|W?LI5-Rdox9s=m|Rc==X(oR^q^emS(& zdk|I8=)!_5uQ;@xZke8=TL`&GY@aX2EIRboE_dXWmnQ~TG?`$!b7ToczExi2;*CG_ z6!~N-oO3uP!~6lk3spz0iIsV0Qs7Zo*G7(P6Mw;6HS0!TFM1=0Mje*>8sGW!Uo7pj zrW3Sd$?BsUo#jX`Cs}>$@{79(70c7=M>2sLgJwWLZ7_kxPHX3=751= z0w%Yp2d;7E8;y7cw_)DIodf?*vIH9nE2=W3PGdLv@9xxI#Vbiq2W**Te9F+rhGc3g zKwJ7X-4MM&5kF8!dr?NnShco5!e_lD$qS0`4n z&K|pEZ9XfOEX*!T=Gk{FOddRiL;o~mA=(uc#v476HW_|mwnDEg#`uLCca@m=ofMp5 zN4jW-a;>QO&%gA!Rh|nF?@<_4q&w-=G2PN<`IMU9z#-mCcse}YczT)G@amK#G=z(B zSZ0P4I3$0oSyYqDkPwIsvVde!hV`NH-{>j#s2EcldOS{7L z1B<*c!PBaA;qm{H2J@bc_v>5v6`u(wyj~=Ec(5hYqL{N#3bWqF2pUUX<(&YakV=of z;q(u9R8{BjGXD-rhwB46wwmcnlKu2BHSx_Ts$X^Dr{63B#755Om-5RCjyXM& zQnLt;v_&WJULXFt#=A+bX<-~15k4i$k`cF^B^oGdV~k(0f9?>8H>VbyYF zC{u@L|8+@=Y9Zo$dWf`1j@I#F$uIybfY^rxCE?OV9_QTi-u5`E*yaSOTt9|Qt2`?? zabE{QOO~72SMW^-$PXsCuM61tQ;c)Po2yguI+@Tw7d3( zZX)<^zicD}lI=@d3GLr=%tSgti>M#{nB2dTci{Kk$AqJU7_G!yBgiRupO=EIh8ATHqBPp34cWo^FY_|J;;#bBhpMwFAOo@AQ5OnHHv=nWmQhgV7%2 zsa-KkwO%nJ$&J>dG+fYWh^whfQnU|zb_EHzVFex;W(l1OSrJuzwftM7oG;3;QJ2ghpI^Z7P zCp=*T$aA*6nE}Z_Yn1N^6`lLeC9cgfUA#~eH=|#iJb7wO=i{&@+AO`$&uXzN@N4f$1XK&%pdD(M*&*b1H5SG?X`#$h^byIVA0z+hHjm-bI=YtPh0U{?)YV zJTZRrU#J()XZMZnB5nOy=_Y`enK1BXh#O2I1}7D~kL@Q_!8CAn%Cc1a$?ctkT^Kc= zEB%ka!amvNDzp22p`0AdMs8(1KLom8igmEF0rNBJHn`$q0&LqmrWMz%tE)e7!=aeo z;H})%I#xW>@dm>;=I7$$f{gSDa>8v=n?(Y_CeVEHP){S4@S9KaN;~;1mRJ&b)uC~k z|LV1wF1TjnVx1TY*s66;?9b7ng-w{J6Wt}`Dq)3B(JEHwb~_ZOkZ0CgiHjc50jdQak`y*WL(XvR~1N zYlKV)Qvq)+RXee!qsh`@c(GQ$!mGS|!Xo6gl-ACeKB3+~HH9M>Gn$R|UBCBQ%*`d> z+1QDID`c1#MO7i84Lls#jI7I^87>Va%~PP^WA?Eg-y(80 zt`dF3>?Dk3#r_2HHCYXWL#J;9;JHzbF{#hzrp){ma7-E3Ir54HL1+r0C`Z}wwR1}6 z7fto&RMyebl5G6x>(bh0v4MF)RT>}BPpjNto5|G9qo9m1~ zK9)+R=+5l)oLcuPI|0u~mD$SFVOQTwUgSljs(3C$t*YCNG5F1zDR$)k&0n<3dLJy_ z2f1_g{gmRf!ZCoQWWIE(j|7o_E!nhn5>NSw@z1cR-KxCRi^Lt^nF6_=;Do_MkaurO zsW&s4FjMx}!rssn@TP-?(T7R(%`>zP?}C}VJnu&ilg{7#YVP6-q2-8QnxE((Nm z+L*-9F3N+6&aFi4BePCsiZBgF)90$%aD~j7inwsFxSgKPjBH7rm@CYq;|r>@GnBi4 z-+{ce8>tYPl{Vt^lfKI{0@Bw967Q3h|86GlSEF19X#`8KhY5N?a(thOkj8t=P`}{J zEX0RJAjK7D`R$&DJRnl(keV4H$ZBu|3RDXUiRYmI`TIV`hAHww^>@J4+o0j9mOPa8p zY37ZrV@bvQj9vJ-r@y|4V26mA_-HK~Mcxg{z{%|T?MYVx0USmzAPFT)>mNwk%-Ypem7>0MH@PKF?BiKgi}jx=Q2j{!tC=@S9x6TMp~+zWsHaAj ztxGx2|1Gi8)c4hOB9`5tMh>Yn@lb}~j>ltC23K9k^(gkO{m3h2835kL~DzH{cn9}831 z| zvJuaSx_OZc{W{tS4}IOv$k?7Z&|| zr6Bz~bXk&dT(lH6N<~DBs(h#pDX8Aeoxg&xe-nm0uEwuItSJkUd8GpiT$*8yU_!SQ zjfk+6I#jS(-Z8Q6SRwIl$|R75S^o}zk=h8@hCB#={%7%6v^9v`&xYG0)NeMEuB~_z z8vf<)8)Ib`no;7kV|Ek#!L z5dF9ymTcU2&bcR=;P^SZ@(od84v7M0OA)?K`su2WDpHF>AHz_2EPtP-IrowMvgzQm zkR^}8szwTLqaz1N!o4~m&wQu9e2F-GGMeEi(RyP9tcupQ#d0OjvlI1~`$A%aYj6rGE&;#9?A`bAG+PITZNIcOS%mJE90&zI)2^ zzSmA(A@Jv}&S1iMHY>pj6=0K<4cdAV>!wfIgPzvFs_*f<^1o>Mtrd)cdr6UTijBe3 zpI7d@%ij^X?}V!jO#)>JG-7a}XOLH5;VRC()vAMg{oux3wNEAw%KL*AMpsK-&gx-o zt$aiD4NLN%1rZ5TYVLvi5XYTcmSDlyRLw7C8=Un~K<&dodG98&#hAS}b$I}w;OIMO ze)UJQ1l3l5j-uZAzO|GaR$ILM*WGH-W}uA42J$qsdnYaObA#L+dR=st^K}g~Iq}5;^u+C56KPMwl9GQC*pWV$bR07bSEJ(xM?P@fBqk+j822AWWcoK#dDNwy)!P-~B| z7mOxV6M1dQthZFBl`NhLWBtB(%$8f-8f=@TF&m2~g@j7?ZNkMHRdv8npv1~`(NAJX zJ=U{+vbvkf|1!1VDDTkN_1jWy@I-3(xQ77TN5C~&nCX!{NtSS8KzL2N*unxBg=PP( zUSao|1CZyYnMD3Jty?)6(mDsN$p_Qf9y_=dEx1S>O8AmiMUQcUD62L{#p;?w!R>z` zWuxmDLnW?}nWmQj>>zx{+pMK^kcNKI=MW>L&?KVn0e@dz5*BZ3wsG)m$?Kze!Bzaw zJRUr%467&$0+at5ZI)jDiX2yKMGbKCRXqTST+}jVoBC~1&Z!u1e(tkjkU_lb_D;;7 z8xME1y2^cSg1Vh5dLEMer6-?>Og_syoyv~r1>+37r&aoV=XaDQy5 zEU*AO7z`4pe3F_>!X24p!K+}0D1Ds8_6pF#zKfY9Z+BE3zOv^rdl=6kysFcu7uPZ! zI~Y_Aew4h?o26_`#u~OHr~#9EOCe-^#e?uJ(GoLMzSU3 z&>YhxIa*rmf?C3fX&0EcY>}qyMZz$fZhLWs;f4mH}bPa^GWUAb=f1(N#pjmx2xrg?t;W7(bwZZ%QISu_S z?WO+-dvSXup9^b<{S5$AskZb%W6cDGL(rkymj;~{nDU0U;$t2{^K|w)=s(^j8-wfBsQ6gc_$CBRt z-c(}o>X14269^YMr++7SlBG3(!x#v1gm_Z4tsittdLSZ}y!kU*!XV-1Cvnw}^hDEJ zpsI$>$+fl}+PS#fvQ`hob!L74t-p^YEMRFMkmHnl_06HqI4@jcS@D!hLg9|E58+qoN@U0;?R!acmY63p zM5Zdo#zdy9`^T)wh@aFkao8AG;@h}a34nxBzT(tM)^uFJLL5m#tzc2}V5wR?cu3oE z+Cs<%YVCyxFYr|oWspk^N0O_1kS~sx+|?Ki2vRlrltpR{C$O~OtQs>!j(0{Sr#S=4 zJKa2tY4Mx=v#bbRO8gJ!DpL^{J6PxC>!ZLseP3)9Vca*#jVEt8beJ1;X9b72Lx@pt zckS{<%-ofdz6DB4zm)!cR-w?K2286zBlCYlDM1>@gbCL_I9drA7QRUXtXo8(DBsTl zOed}l-9I>_$g|&DDE=C8rlwkR)D@)$2G2B&w9|hg0SArE)Ig38Qw=nYxBj8Tb!~n_ z=&FF;KajnQR%^lC>8Gk%Lp*&~MfzSjHT3b@Ft^+t8MA;XKQ9y&DX+tHm3YP3AyfBNIc^AElXl7esbD5h_%Ao$a^f;-;ye@OYOXC9Tl+r@orfcoe;mhc z*?VuYInJ3;Hf8UeMa zM(Tq|+tF(|19@B>O-p+iQAguij1(LZ{$hLWI#d9Jcg#NuE{mXN0h@ONy;tbH(GJV{ zC~(b9vxUg4Bz%0naj(~8gX3UeEg#xBaxP-NlT6DIqe@65N#3HA|rSI9dBC>9PQ5g%kdr~1%KXw==mREDB~~ra4gM*fA2&uwjgfdZ@1ju!VMRe7GJ4Q;OFh&kqL%C z$=0igow9=jI&At?tD6w9(Q@=&-lHNSQ^#9ICV*b$dP=TQwYMqPR{Yjku>IQ-qkOvx zy%I6gjX|(T9{JiNe8`SB^gCj0X}}oyd39tlE86*%j`)j>86x$tTN2%H!2WrqcJ18U zdfYO>b#lbUW%*b&!4{bnx~p4=aH-8R|w=Bu{qW4p!Qi=={U_w z*IRFrOA<9Um&-W<$`aIFL3Tgonm`5wmd_puHtBE({>3*EV@T#-bNBmtbIWYQ^U2aK zv`sziLPUbI#yd>t+(&NaK6W(}s2mw|RVM9-;p^rW2w2XM2l*jCt9^s-SjGj%4cH*kfuJ;EJZM|z={irsy#0y z_}dvgc!f1Ut2MG6bi%e6aDwp};F=x8h+HiJ-yyw|(yim~qet?c)mG@kWzZQFet%@Ri1;CuQE~gxI9~}l(b2Rl- zn5QF#t~~mm^J@WV;WSTJ=->Vpt9IgEDnp0wPBV3ikQzpPQeuoC+- z7;KCWTfIS0E}!+=fQ8*%FRZ_8&T7UcQgvK+X8E*KRDE0EOIx5Xkz32I*%U=`IU#a` zYs+FgXNh4P)4n(til+BXEd9eB<6JIb4_AWkPEGuyh>M`&EQnYkc(L|;C|7dq@@G-9 zxmy_NZYE+-74?>7W@WPK-D(^>hHwl2E#oBuJ<)bBkrP4NA8}TtWg)jl@pn<&nQ%xp z95Pl758Y171EVcG(NG^uwfVSx6lKo1Is2aSSj~43!mU98Yq8|l+c0|wA|~g;>=Pd2?U{g zddY|YA)%9iw^MjyctsH>bND1f=|ns-e6f}Y-`F;qPaG}V zuoRYhDboz*K#QAk?9&nQ*f-L^eUcDhJWjY;4BfsWE!j1v_h{KuHjd*a5HMSR=Wg_$ zE$p|xa7?uooIiRuz~w5So}a+FCjzbGe24eS1QDIYIPRolaJxZ#Ps{eg8)n}TG@aXg zg$*%{w-=A=KUSEi?iX-)8+|)yTefyRWQ<@EwX0iv{RI(eKgxB6XLhZ8(b2_+CI^RroD5WJxi{q5SKK{LN|%TkNzAOXWCJ<}>`cd<&fdZQ-vR4>a! zrxQ}^yp-^YYJYMANhhMA|0uprlKhd;0w+3ozN&{9rJaV4YTrKOKe1Gp^#NOPo|pRQ zBa;n2=k#*NQPXDxmqD{Qs<~KwQBbBX-TZ5Oi&Y;BF$0(vf%)1loA@<2*`c6Q8dnjZ zc1+V5?XlvX8D^eL04iz2!KrzemSWHeUA7fR6aD}#3)NB!_*B3x>hG}V^K6&HNwXc2 zerGp!DA7No%>PE4UyO zX!_@;n{f!gNV9i87IiEdfsh^nApJ1Yu#<^wFo*rhD{Wl^4v`{$2{52>`M>(8) zW*p%%^@npGR#JBcA3pN1n9CKP z<^2X+X@A$6-P}}_sZp;SEBOogP2$>&R>0WpU?B_-uhVJl>%1fy3Xc>$DmUeskOdI< z<+AlkUmo(lDy?A`7?b}%y(V`54v&pK8VG7OQ;yE^c|z7`POk6WS%_fS(d6j zYU0f6iuzg(T14Q3HmU4S6p$D2xP>iMN}n&B*ftg|`Gkb(xwG#d3yculpc>RaaAL zrBb#1{C(+i4!*eClRDDO$HJg(8fvs53B8bD8^1U52WtC03?IfldaC&%RynoStURBL z8x6^sp}YXb`%%Px#w11A#tQDbt&e1q`B^c6RU#vFuUa%-dlS8VdqwH$r538Ud7P~1 z%i!E;g5+DTuQim1`v@3ceRxzU?=ir6Lp~{4ZhN_^RaU#rcH4(&c}*Cs!JnP_o3BW_ z@!+N{?@uUrsm-W(W5duxT*K#C{AM0(tl-Z^#8?_ydb>5pHOsdR2_=6qh{?(Fs=&)t z7}zPOz4eEA@AV}|`KN7XRj~reWyB1JZrDafLn?aY1A54iF;RXC=V3k?c3@)W5dW!L)b<&GJeqeDyfOyqe}q)MC=#!fH5-BzIfegT)5X8^(5Yc z-VJ5TYJh;HzyG$JkaNHZ7h42T$u{OD7XM))lEACsl9eU&mrKN?;o(HgA`89p0A<3(hN})E-|i>zybTn#9M{0SVNF7;TlYjmyq@ix z<^LBrNa*RGntjvRKNqRm!ZjZOGte8se2n{E3od&e)sj`uGT}7d&-fWSgzCO{`s1TJ zEIEM=oQ+XQNnq?6z;%q{gOBx)6UPe^oW$zD%s3}4kzn7N zu7~qJk9GJ&fSWj3&V`9=JyfYaR!0oCw+KdP zG*3EynzhqO^hRNOE}P~m`vmz)I66X8;@M~FMeSd0@gLymRM&R*pnq(YclYt~-$ok> zypuTh;2Vz606U-nG@2ebZ5Qx1yEcGbX=9p8-uS=Xz+x-PeDPSR=;|D0FD`_r_adWv z1=1IhCx3Cvrnz)_iRm3rz;EMMv0mH- zvseJ1Do3AJQC-4atK$?tReVbOl%J|x#9F!u_I5x8_AsSYSASjU(u`NsdkyN#k*8W-Z#mA?SV;*h&wH#aJjfq{R3M+)*Fmlxa^s8tFS>i_K_^_S-Dn zF9!f?4nWn2al38jDh2k;5R&dgZaRzseVDPKRa@}xXB8#qu!7d>DD*q>sG09%ul(#` z*l(3fnZ!S=#_A5+~b|C1V0-h#ta(C=d0{OBv7ZS!=YQ7_3f$6dc_A|H3 zXngJUv!;?|33Eb@KT+Y&#t?4E{?|>S?(qJuI&^bqFX%!`74nM~C|mkd(l9O~>gM8- zMxU_B&2KL6S3X6wWfj0;KNSEo063GAlS_tt)4y;Bo^sAv_UR=PiQ*5xswf328AcM= zhY)=s!0TFGfLQiM?`ojkFI{~}szfW)N6uGswDJM7E*lYi>RYqmvz}zLh^t|fnsZ@b z7&1-w1w>_O1}DoZqshX`yLew^YQ1OXHBmLVq%5u`22J*Dxg@!}_YExl$|%Ld&;0B4 zm(YixLe}{L z-$QKo@U%p)(5CZh4v9%G^Tu5py_trh_YWGWOQMCkT0j1y_;11o?B598@YCA^MreUT zl?_=fp?rVs;*WVq6mQK}1_JimH9*x;v??hbD7<$@W0U+yxBVGnGF;ZBI?&UdLp6)sy0%#nz=S31K7^Ie#_C!)Yt%5cCZ$1$m90UIMG$O+mnd*UbaT?o`MADhVZMh?J1n4 z7j1p;*5}^9_kBr7YC4Y)>TxdVwUTOzgl?`eE- zrkk107B99S>Jn*(_H)X-uQBkZB=$gTlEe1@U!ls8)JMUFTHk=q49*@D2V! z*KJ%8RdX7>!#B?b#?5toF1o!`dF-77qy*aeXPiUFvo2C#O6F1(ElVPIGsHVy{Mqj+ z)gQC<`EFE!^^NHY0bmuqL_z@ z8=aVg9zN(7#=9MpTXicWuW*F7{%ea)Hy&KlI!c3H&j`Xdv%47_1&d5{<>452V5cGq~00Ax(u>q_WiM0AkPYyAyhT5b! z=Saf3aazSsI2}tMXufMtc=Yk(3bS9QLYcSuy+rZ5f7(2>wFK$IhcV8~irFb%YNQ0M z2cMSOP8`Lq(TSGmd!_S7xk+rO07JM!qb0mmOQkHUbVnw#^FXE+5~*5pK0B?ZV-kdE z3|oBt6`U{Og{IG?S~>_o7kH#x`&d`aZ|0R0vzv|p+y&qa0`SO8E8}>v?d|2PJOul7 zO)JmKYHfEz#4%~2<5Y0E29>5j8b^B!h8|%U?ou5&FRoesUY~I%CgdVzX|)p+I{xH+WR=*|(uss3Cg1wxq1BDw35sZ`;Oi`fR1@W!Pt~-I zweJQt27jYWf2btCDe*c%6uTmwh*Z7(5kES`pGPjP{lXrBVU@P1dyI02#_U(cafaK2 zg5hyb5w}1hJW0p{Fk@o{Ow+2VzifLwjxBoZT;) zhB$3Zh`UFjk*kF!=BKc*O|vI3%}7Ei701^nRb+ZF)MCydERsv9POsyERO%{j`GkKZyNnh=^ZNf z@+zu`zG!ig`dtFx3jJ1v=3X9So_%Z1}VpBL_=4;~BQpMdlV$)9o41o@-I;uE_lUNuZ9Qj3DVa z&EH_V-vhb#ywvv;WULUH`Ae?ROUqW(iO1U|q*Qkt+Z+F<>W9d*Spi6M@3C~1x;6Br zzQd4>WH43RhFRp(U(x~Jh1mr|iSw_XVEBg;lAEZ2AC7s(uPV0vZ>p-T?61K!0K6j> z<2q-%K$|3rq0dmaz?%9-qS&6=9*IV@i7=)B^PZ?Yk|RW^jOWjT98bg%MFrSPNz*59 ziz;=)`_7Aw*RwIP?wt6akjUCPDWnZoq(7n!)^*tVu}Le?$$WtvqM7pKKkX@e15n^0 z;;Np#JkLgq_9L=`woIBXOT&>5j!cG(ih(@p9lzYfb{^k1p-!TaH}64aKM*81JTL3f zTt8v%NB^|i%)oSAzRs8Y!!lhpfSw@}<0^kVsbk-t{A$sq4`NrS55Fs~$mdXY)$=g# z4!8=sOSN)d(#LlHHSvA~QvJh?G7CeB(JwH>`Yj4n_&)AceSP$O-?NHF$ZbiS^P_4q z`U6R$p-yJsP{gk?_-zz}jdMzXr$@>I-T0uKibY@?OFB=DmO_)dZrx0qIekA`n9%U9 z5k4gH_D@G8vg;j$u5B69I#m%va zJ~BhPXiR6K2f*+_+aJ!BoC$&!f1f2v`j7<4s z-~DFQ>I4*84WDqNc6h-8x;_;`yrzy<=zzYNpD-d90Iz~C$R6)vc{VgszOgc{U6Q_J zI*aWUO{}2}yPZ$~Hc8k^{rQAW7VAEX*I9L%Kvn3L2BRKhAroVL-P9~J2foO*yXRH; zD%ZF|4n+Ou5h>=kQ3pCH1~K@$iV*gh^0#nHWxC~gCho3dh@L^@@(B~qjB)UZvb{GM z;rn>CaPZToB1<(8ZCE+b+lpL9yIvo3_A9TrXss?!0zutslk9;?K7OVsq}sr8E8}!&YyK{!_3|JNO(oX zm66beZo%|Jk1V=}RgdkY592cz!9e%Ykn6FBpdlGJG1~P~kxSj;XVFxz(e{ek*TV3( zD}>57JN^{wGv=8>`L(PWO+H!p*fo%JEMEI-MZcwP*Y!7hJ9tY;kELUO79w3?81>V@fNW6r@%ifBWkF3*E?oHOEczFKxb zsPAOX;fxArc@INmq$;AlIOmfEeU5fjT2Ivyy7p6LfmBy88|waL!1#B(+a)#CVBnvu zk+q#bvjG*A+Zy#XklEy^~e-Il=VMC?A=7dMJFSah)IMV|%iSx?4BxD`is(l2dA2-ImC?x>Ow>Ui?7p2>Yp;kCUvz5s+Gx1Yo_B zU^3L5TL4x2jza>IfWV_6t}Ewc{X`B~ZtU7zDJfuuVEw*lQsD-A!3xcebgvi#cf|jA zeH10OY4Kf7=($CuyIFrMmce-&!NiQQdIo>`;I702m=^7Ktc%n?3c>rRj{&sfm?)f2 zRDI;C3NiUrNbJ-FvYZ9i8o<0`&;6R7ds#osbP?GqIG-5oBt3hchEg7zw77^bXn z&Um(1vqrP?3go$rB{Vo4w-KMU+}VZCg&Kt)oX!Y&9X(CZw+C}mltB&@hB=EKBz;(0 z_!h~tFiE*~?~rwz(IgS@MyCv43Av~&bUvnyma4y&q}1g>;BRytK7U-Kq7#gnwq6UV|$>v1Hn zm#vR0pits~RWCg1JP!er5t*wSyjm5dt1EeIJ zQ^YC4ktICf`quQLFYHMo-}j3FKH%O%qQK(HLL;ED-_7~FimlDdX(1JQADxzsBWq}; z!0=IL<6;8ktDIx>aXR8oN#!^Vdd@P50MGdCgu?#XoG^QQJAv)b11pPQW((LseBK9x zr)->awnzaDAHN91qWh*;+y_IR+ox1Wx04K^QKki)OT1OU@utDBa z_KM11r8aw5yzc}a3_JUie@!dtNV8AavKa8Lz4{u)wEMpV-bYb&gy4^=A-4iYjnToc z_FodD&AOt{K-B38H5V6=FtYsfzvePYJ}TGgncg+nap4eTG5M^Ou-`_K34Sb$OUFw* z7GvaMfcjPSSoAT{JvK6*G-Z zJR18C*$m}q#1aH>eRhn| zsm zV>fC0T0vhpP?N}Y0oXewgE9Or2S;9Kb@&A65_WLEa;YwkPmFHQOaOb8xvQqvK=&Qc zhzsCUo7;xOBz(w%cmR;La~7ao#TEybV=BiEF$J(h`}6yOp7#l5KDwMc{r%lvpVY~sF-D3MObq2dx4Muei7y?8h`8!JIbGD|ht%P6)e&Gcox z%-YtOH|JHr%q4QH<#(x1ux`E*KG0buQwXocj*o+Uzz9yq9%JNX) zQMa{y+;C&-itv;&LD`22^QG8W{2?}WC-Wj?mVTWz|yxKLKvdn%RYF~`?uyb6#=@z4}0@J6(_RMulPb75W`G-b9QOD5TD`Q*?IxDW6CAQQ_4t5N^6`Wz*f+`K|G z4ic`eTj}>cBv^fXrWk^!g%2nW}gN5yD=U z^%3S9<6)S8=KQ)*Fm7uQZmBh3_kUZv3HFG8(-FjMZv5>i!M7}@O9*OMJ zv+S0;05LO<7po^~qR`9%O4F=?O`Lq_xPi6K*N)=;wO8Dz=jiXKw-;)VzLMSgy+VfMj z=;-I|heGUJQ;zA+qYRSQQxHPwnc{n<^haM`=eGhU!?^Y|_T*dX>PuJg5&i67oKfFc` zmen*t1BE=Kb?U{n_z=(Fo5CA^CCsb@w6k2Icfd+Z>nO|l;!aC-y&2js5PLz+VXR2M zVgBYnihU)&sSx1K`AW)}ubH?KUo$FSE+^NlwnAHZ!M-VP;Tf!LsDv!^n3Cx4s;p?2 zAVlyx7K8}gH|~Pm!>V+W*+>bsQm%!rg=U9Iv;_NoV0@q0kIake!*8V)=f18W_F>`; z&{3f;-ADby*#=_-XP>QVSOnkE@{wT&V!O&xRJMRUM3$tv$AI*u(|b5}-5Xv}(etXrDSt)lM_y6u9l7RlX6!Tpjb33e{etW2sIk0RvInpUUVe z!X;EGPgRW48?!vq&78k*FV<#PBPrX%c^&ZCe zWhcoX{W1Ttrbu7Bh@;Yxr}i?gD^5|2@oR4PKZ=O0>I36)-$UDT#t$$?ymnn?7Ky!? zPq-E6ybYwqYIPbB`)mjU6z>hRp(KwFqAhFfuJ&Sr5QSf6igzI~fAU3VJxczjJlG3( z4n|o$bvTH!2SUmh7aLy;6XOAx4T|9}x%Nw=W=D8;B0UFth`n;i_26+immeFz_2LTd z7SZH@wtJ`A`6bUO^W`6UQR6OVn|NsRWsnBo%Fce~Cy|viX;%^t=PN2Qm_SDwDY4Iv zju5l!7i$BT&=9Yo1G(}QlxNq8#wbu`!CW5^LQ0dj3=x1tYCHud2CBxWV?7zi zEhD2WlhTw<@Tw{O;0*k zJf#M=xOU|?h52_bN*BCJDqJzF82D*c(9<^I2N!ns>tGjmk(_&#PaLBf(4$Fv=veo%0a{*aYLg)NW>JrJ z1^&o9lj_g{_lQtp;E8Q8T|X6GLi{%BbogE0kVC)DcbfwIvVLK{NvD}}^2w=?&V|td z>ova~uzS^og||fPKmnhlutDn6ese2}u7jxRwxK_TDdMdvcC(n_&+i28jap|#?tpV; z9J(l_Z^R&OLRlWnTihQpU)r5;{YN3gT4z+Ptq-M+OKf`cd2b}x&5L_!xEqxm^{M)s zdwX>TzuI9JP}@&5AS!xC>Us0(7Cvey1H7YZ)|HpU=P(clB@2!nLa)6ai4&BHATcc{ zUY+>bvX*pTg7S}?A8lu=nTT7GxT{LdJz;CvJRDsQ$fbmyyZivB?uoT&X4MD2Z<%rV zqSR2)$|${M+g>|jsqlr1y0(hK<6D-E>CHt8)&M@H_vQ>q9DznXW$9?|Q(i%-&89$U zkw?$nKP;f0elot*rBNeQGUKm2)8p~W+R*7cdmM-3e(qkKSNiK|O!S}*WW>CO3c$*F zoue}t{Piktm^fS>y{Vii7#cutC@2k9psr znKtp))y6M6@@XVYL>ryq0v5W}wYULSF~PHm;*ffoHyASt-szJ(LKZAGcWo4#@WnSUeE! zQIHZ>wVv=Qb+p2bJO4SC$1fC_&(exYnDt+|LQ18e1Wja>qN@O4X%D+!i=@?RdtCe{ zLDkXj2VYxpn<-jPEPkpjcJq*u#8XYD5Px{tu(7}wF&3Zz+1vvzFB)|ptG^i&*9a#y zcfgYGM+Xh(y~e%>5R8d?xCa4z&tVl)D>A*Xk(9f-7ApB^F>!?k*vTV4bA#E$*SJTWbC0`YBDn_0m0=+Chyxt9K#jj8_W1cNI z{1hv!Yb%f20r6PC-Tg(OD9NsB@5d1NS=pLyW;U%8IZqI)iTes6M*ft0jA^f|T`3u< zN0*$vuDWzjJ8)XMOWJB6zTcLO5ctr}RoD#w!}i*TX<-nsv#}XbzvrtutbH!~kD|J} zDB=LBgirq5C1ZBqBu~Y0pggUz(}yqo%E%&_q@L?m94*UVSteBI(J?piL;9u{=54f8 zNPW0a7_X;sX}IfCRAA?yy!MP18Rrx1jL(y0RlfJLe!5;Rv&#@_dM_fYNnZsnfE zlCK_`b;s=ilc4vOP5r}Vj&+8s*djTAzVS0U0*^iG0S9NcAxuEj1bCnW z>W1y>M6cecJg?CJrdiGvW=Pn){S9ScJol;a&D1*TeOvjoxJezRCj(EJndBmQApJe< z9=D5sHOCEUp8%U8it_$ZkP@B}Xu+i>g!|Wj^~LfmU|Vba8l9XLUzwa=tWqZ=4kCEs z@$+wHG;hhA&)*|jJq=H$Z}~) zp-C~(;khl#N;{tC2e*OyU7rNbH+oLf!qqWkWwMHiaMf?i7dmxrbI{tWZc=tdt=>@LD||f?oDZDi)Ew?pqDcjHjo-i3Km4Xq2Cu2w92KZrDH2GX6Z(E zO3Eyi(wcKUp|!RtfPPZJe$*inER$pLk$$Y;VjqdBJC-AsZ4Zf|%Ji&~+0}Kw!D@9m zRPLe-J|7z|mcq^IciX%ah9cKR0>URwt`>}~C#uS#hX9W}-XBxG9Q6Kr$AI^G(|iPN zg@=K7bSuS{{y>7Sx| zK<={($^S-R&*&Qz~H9djS9qEcw>v4VN}#9JOj zBC{XRlz$|oWcf7@kCV;N#mv`WZO3KI4<~Q+HUs#DCA=;_)X~a}(UmSh{rO$oibi>S z?^8V2WaY!|+js9zAz?4Q4MGW5{}GVfK(2BUTYq%#WWBqT3KxmG#^zCM#nM7?mgEq@ z*IsD{J`?Qog^jEJ!jh(V|4;5P5c3(NK>aq&^2Y3*Tn-9W^DH;D$nD_Ktu0}y5s_tK z0dU1`wmspU9yL$@t2I^g;E5 zxKe9@RY#`ldkasNf*xQON{`iE2hFpRKg@XVc$&}`kEIrRaHV~DZ%JqV{vrRXrC!Y~ zBFsBYqQl_N6RVpd@9pnfLg#=zb2!$gZKZzc2I@Ufz73d<&;@!aLjW7k7oi%eqU>#9 z*<0Clb(qFJXAv*gdtT@n026SU4UQhQ$v`u(YfNXxu7j{%aQ)7{fvtr zsJL_n6=OkFc%m?4J*p_on;njNdq*^Tm-nQh?Xq!%Bi{S_@vS+GMH%CZiV+h?l=-A) znAY0;B}IPHE#8me35md|n-dXI^T$*9knggu_|?7g;DCQ zv~^^oOAAG);P-@^GN`t+)_#)pVRTl< zJ$KY}UT6MHE)Dy`3vQa59}4XT(a_(tScN_P1LaStc!TL;^3{CQS1~WV zSfa(E|K+K#-K-^eZTI;i@X;^JPWPYLg#XCAi@@df6cJ_aubR%Yz=HisaS$kXlM*?dN>wfRBWw8b;Q9J$j)tcA- z#gSeLMDurU)3eY%=+D}>4cpTT{_D<-!xib69$+q^Rhl;cyonbVi>B*-AhM0 zR^t(&9i^p;!7?lrq#NaradeF;d(}Q`TrxJzKT)$kr0pxl;4zQ*-(JjdPZG7SxY`rA zPuL~LclOin)k|dicC-Swrmm!F`Z92RTo%~Xv81eK=vt4TVOI0zLJzJ;xZ2nD<CduxfIufqv-DA%2_XAJQ)Q^ z8~>=W(ne7z6L4qua1O>R#aJyZNX$U;l~}T z(-XMpKQ;u>gMSqKCrE&U`(XE^z31FSjU%p!_JRkXWKKO6$K!Fq4?X0Bid;6RZdFQz z*d^7svkZ}>BU0LzKB6aHyQ0!2_2nLtr~^stS}$W9sq;rBuR!)V51TjUnQ`#Y)H1=T zaYwdFR<{pFj6tPk`w|6G<7aJg78=89P)hhcYw;Luyi~j1y}ZbWKlHHt)ZPYe0Q=ZD zHEC2Xqjr9>rg+fdcgS&4^rpY&2R+OewPqTjxAQ(X?;2h4mIK6#s7-Ovu^HmmbWk7W zfI9oCW`2fK?-RK5f~yREOf4)4(H+jmnyEqKeeI=L#W!?Hh@lJuSmO{Sffpc;VtN3a z(#J9mi)dH*UCyXT`9u}?67D?C(T!3wh-ivBz}VY~Ad}=JOxA}#wv9@>v0+x>%KWex z7MDILGx-$pe3R?3iqZFVphCcfiGb8G{k7!*mO9JOWfQi9=jJlnXMJNqjB4)g;?EN} zOga17z-;I+>n3lA#w<)vvq$#rpAF{0Wq>3<4Rl`u04 z|7)unfRYHTC@q4b#J$1vUm+IV-KyVx4uWXya;u*rRM~5|V<7f-`aQak6&4ZWpG9X< zJzndjrx;m28j^iNCqy%Qyk^MWiJ)?XMU;6dRGd*tgaH{6Zi z*q!zWTYOxhcX>{|1l0aYQN9hOd45U@;xP+m3B)ZJ$948adhGg7DTf4Zj{A$+EM=P-3#xl;;Ac7V&`2NMN1CLvUBTr zH?68Yct0LAz*nVsor8^68|lcn0sZ!5#LSp?rE4unFc7Lu6|&7#djNVVTB((A$hED& zr>U(E9NaPUYU0hC%xrV-UxLeJ7-aVUTHAr;?_0a3!B_lbg0{zCU+tLw6k5|9@L^XV z-+9^|nJ%;8q?_u+rePr#2fbm&MZe5=)$u3l#oF4n3TJ6`kLsMn<#cTB+?NSAZiR)V zG}kv9HNh@SlfccqvrX&LZ?iLGnmX^6Mryss?A^TfT%HWt5hUw2zPDvD!vW8;!t$wT z1*;wM|4~@Y8Z9S2fAl-RPSExDnM(wuBDguGt;8wl5P2vvpp~q>ZR*|hO zm{;Y#h-(c7ynzgew^%bO@{*a$0q&^O=TM$?nrrGKA{a|a|HsNROz6!eEl1A$;jTbu zwtKiv<^5SQ$*HuYTIpK;j&!SrLI%Xgom)`k$0S(xEv1wEoj zZts-9OU9?2gSnCE;O_|xFwaGiX(ptxjKg`x%QDsb(|p>6ieuZxNlDj=ZWxs&Z&SJr zev44}%3WY;_qVCY^BGQZ_N*H_VW)p=r_5Ntiep}j4U?xSTDPbhyKj{2Y^9~s?Nf=2 zRCM;^%U5Q@KD57Z9)OW##V>=e1+cT!CqtA%BCxA&Lf2l(7TkLLvguPazr@o!eg3Kx zSLDQ#8MpWUd3v!U4E`9IQX!V_FLpB1`EOt?dglzYdLOpK|Dyf7;~(u_SRYYhTPn+N zCQk}D-}ziv_QR`-pcA;ahj_~QYQ7<&fQB|0b^5!Q0rKWSl1>?O1pA8-!=1tbb5LlY-kT#^W&58|Dz|EWYX(gvgNO?ijd7l!*Tg z{bu1pFHQ=|`*Dj%SJB;emBhS*eNxA<^_|K~(nIlf_>laBW#Zo7MUUJc{tulsHLhun z9YZ_@4I`8=iI4PVz4+x zZZ~q)1h}~-XL=xB(jM@|KYZAmU#pCFFYJ)qGO*;>4S)V?hAV3;@UOX*qR3+q?cY#+ z(O^qv<-u~b=V2eaIowK#!SOZ8{#;RmsLFUE5ARz4KZ+n~sB3M>y3nBF=3%3P4v9w4 zF?8>yf#IVc{{>f-(qT*c<@*d~&p(6mVhst*fbZzC7lzi(C|BLfEEb7%R z@tFfkM>~m`cttqJq8BQs{;Z>?)BEfi(OsWASc4T(p*T0co2GIBhse$sUE(Rpm3MnX zUf!u)-B<20bK7|0Y44Tu$1>-aPD-WhJO(|Y7YFcJA&F4-(%W+tFb+d21gE}iA$~iT z`4R(_QHm9kCOf_`C;P86?>?g^G*8>^gb?vwSgo`K6+5t#8wpwFVwhB3?8=jzqh%Rs zYDD`wDnp{5-BT9t)~~pPh>HD~r+ULGCjMPBeIFXA;%Lr|f^=v=ghELz@guQLFNf$~ z%yBfIyJvTHb|mMETKJq0XsNi6ST0Set4-YtftyoKdiz#AeTa{L&ES{{70%5MLl)m& zfv1KJc>rIFX4-=7dlc(G+CJ(&`(3xX=J*8`y;8Pn7yN29J}V|bmYrgQnz7CbP+e2_ z!AkE|oms=H!CQ@~Ly;|18?8|4;$WpJ1rlN%l#>^S7IqLVG`>4*Z8ET94_RKL<O<%%kkpELo4EJO{A^Qd6!XJgmFvJp)(K2DFJTYpkqx3>qgu0!+NYO>5dLGE z3G5mjE%E2M>orFE|4F}o2MKZ!cDa)}l+h^H0K7+}bZZ3wd;?|osgxvyQpi+QMZcVu z85?+-o#lSYt%R#V)V^tdrgl=0*j%1k!@tQAh#Qt>NFQkZ`;0YGvnSSr;wANFOYlp8 z9o0RGW6p{M$1(A7QvpQB9>Qx{N20-9)#&?L$W!FbHQl#XYND-x!jIIo*nxBP3Nv<{x8UuE1{4}Gs`h371Jpn(zt?xX zOIHYJ!s2S(FJlJtdzhlIaZ?K?tU*TB3JrOIHsU{;W?H>)fWNjqqeZY*SyU|nfnytR zvtFgv1BJ5pBE;$8C~CPa{$XQVEeP&X=g+u?DNUQHkP*l-m4`+lQM>72!n442{YPN- zKgw7>qAV$fRDZwA`DMM6DU zT{YI%5FyR-6f*^ca%J1Bc=~|bMRdMGWRl=_y8%W11=t;Er8-Xpdfi%J}uN0Sg#HC@34mSC5RL*J@fzcJ<%uANPu z`5sqQQ32o!@u|%FjlKAQiw}UOyut^MroH)?v>PgQ7h_vy?9#<5aVz+ZyIh*!Dgj%q zNv1YZ!@WzKHq59(wHy0~EMYt+0yuUeISc2BU!=*)^VGOh^yX1H9lTFH&I|*P#mY=> z?ok^|q#Le!*K?@{X>kPFb;UC-c+Mk`*P)a~Xls55U?@7=D(1wn_Khx7!@GG16e|dd zYizepc$8(QY``-$#Jak0#MrrDSuWvOdr@uBW?Ie4UAUZPp{~ci<)#7Z7#3&25mq|E z;wZOctHnT0XIwD-;h9=&F6t%_Eu0^Y<&J2qoXWZ3eIBFKrczA+p$?P28bk8qUAe!BX0-tZmoQV=!y7 z9Cm5!(-53UDKpi?8*2XmL;nC^%)?ijWx8rpT)ZLTJndQ)7k$He>g%12`HN^4S-&;Z zwYzX&nD@Sfe#Xui??B@S($LBtW4aG1Y&}!B^b1zTPSS% zjXI|f`O1crb9a60yew6^7bz`IQra9NR6b8E+T@d2a82iB(1Bh-(Y6n}C#* z%K%h?gB5;!Mabm`3yHA-Lt10W(~53AaLTnz$+C3rAT5~?vw>cvMw-YW4kvl zNHp>~loXtCI4-6rs=PuLEHjcTE~3^Am3f@Yo?~TQ(v6*Kt4Q+ZEfL&~u%r1UAltRm z8f^uzF9(Rq(w|iaI$U@-ig1FfcN%yTL3C5f{{Z<6R|V-Z4Xcj-0EtDS`ES3dQmh*cK)>~RhP%s#RDqZu%ria9@cNdU&UfVktBP)n z!-|Js-`t=F)h%j$5jhSVzyL-W#myX+T1Bg=!zA|;G9s$nJ;tifw8;C9urr9kAg*O_ zpUl(N<}~9tfUvV1_br1*P{W_ZF^jxs#Jd93PC5>4B4oj&;unfRV^r&FA ziTjq`8C!8H!{L@UlUkPI;AzHP!6_e%{2Ur(H)!!v?9Pyd;-spU%XQ+R=uiCO2tqBj zRzQDq5kr7&=#5w>bzDOlIbEU!A*XXI4a~pg#SNH>CBr^pP~P^z`ik;wVZ+>3QCQXg z09??}EtVpkudi?zq@|ubN^l3xWs40wN1jRY&J<%(iuLSExrh$u6P zYmee)0>%;KHb>6;3Hdm2iGt9z_eCx0K&)VP)AX5^Fd2`-}omM9Ms|TlXnc zTHU->sRD`o!x)NMyxYaZd-P~tiJ z%647GyXFx^f|p~cw5~MeeE60uvsG09mRyyesZ_e>uN5@4vSy0+im95o;Y#x^&|qdB z5dxGwDh(+yC>35MaaBN2Wki6}ucA49-CadCfS0o81!q7RG*OPRHWbRYn8r-sIap-xS9G@ z1(c*AA)hR?3vXo8TeraVJ$bl<#W>tEH?C0X2sc)`;J*6%lxEt{s||dRS05>BZcAJB z2pH5`H=Il!mk5>}8FKdZ6a{riqQ3O=FIe2dkim&UR>KTqxJuo7Z5-LBiIqrtDxg(s zX2TTms)dCI2Gcqutq8yG3T$1viHuat15i9o1Ze*NY0`n zUXog#yPcnzORUskl-`&Rn5euN)NBVtu|O%}RXYQ?wk<|Oh!U!eOHO#36!kH=eP&ir z2xY`Ul>HM9SWW_+yvr#5NHtMjB_Zbks0(k5`;9943C(BA4hvohmIU(VRe(Kn5i2h} z7@S>$E9xE@0e{jW*dn*%-uRUL~Roii#f!Yg02T&({9tLjqa!is6? zQTlP2Viu=_(y)#l`|&WXcv5fm12!}by-Fsyo$IQI+7|Db$jPawI3)s-nEqlIRePL% zp<9;cGR@a1V*y<<>B;UrYr3W3fJ$(wc9rQ^!b)k$d=oJ6c>KeGuZA94t|h}qUggF? zhyA%=7ea4Lum+!$rIT01#>*EzA!-GH7Ti?RGP(Ui%Bf{9Tt`4_nML}X_c6T6@etx; zP`+*@K<`rr0(El8myWxZuLcoxW@EGU3N-%!F@b0uQyf+aYPRaVLVz1se{gho?oeH} zD*5gdamkrw@E)afHpXXQ2ks}Gk!OiPwkvGWoUtwC7 zI3W(W%5DLGC0rv7E(ae{lySvXF}7;ndAh5(iB-vQDhHlqd@~}Ow@0akepJH#mmLb5$r>9sqOo9s)2=VAp62;;j{PC~yn6^%m7fX)G+?hBe&>j&IyIVB=E4-c3Vl z{mn03Okq{`007)-VT-9slt3Ovrvo0?fk!X{m!!d9*>Ea}Xs3@5JxY1h7j^v0?8fUy zJGtG=8)Vg9W>vX@aCS_acf~15Zn$Y{fdxr7o!RI4F!{hc}9q zSDh<9g`^#5dVp#19ahCRT!`h7T7Mvr6LO zcdop^eo=%X0)VAo$~(#;&l4H5k>)1kx?^`mtEp?XY{V)a)~Q46rrEEgJ9InY zzPp2CHR@I(6Sko!;^ACYTBI^OFoBe4>fix`&1z^^r;ITzvc@RxR$;v9POG?>wY$p( zttzH`&9ise8ZlpPBC&yF;e~mxsZDS~85C5Vf<9D1|r{anK`ntNFW}H)%YeB-4}n%sc2`3RNb%AM92@E zMym$fz96L$LuU85i)_2OLY__m_b`L`CPnG1If&msaiA;Z=*kqTsuX*bdb^2WQdx@;G z`Ef2-;*JSSuvNhqVe>qMW4h}wCXfr6^tf#rRWK{v0c(mXEx0rso}pD<5vyqCb|JEM zrgEKc2wCG+U-K4Oe%N5kaNtj*4koi-b2Ywt;&v^^cTGysSA5HvVWKOJMFl?5EE>88 zKZ#jyTtrgeZ-Wgo%!uWRxzP@$$+2nfU@lY&-TH{HTH&!TiP;(ZTr28pyJbpBY}xey zYZovOaKS_Yo*iV1bwFHp#+R%tramSgnxIGqQNsKlVDBr#hgCDGz^f$02CVhsTg@`% zX}grft9ZL$EWrnJmk<7fai!qA(H2sjg{|V^(xHw8Zc&kPlxguWEKbvLu|=YIoMN#6 z^Y1Y%jjO;+8!gs19e=zV1ih;@%xo1aS!DX0(VLnDjxwK_V*~+t#74C$xXM-GPy@Ng zuH&#{mR0qHHm^y>=PAKGO0$Q=Osd#ccIz`?V>2nu3wF7MqbYXBpt17=+P5u5eIwbq zQp8)_7-}i9)VLd4A`A|-#4`}B`W(tKipo7v0Ilb!GK(~%oVkglswL!RI0uP@EP&bi zsoLxLnT>;)SE`@PC^|XBQW&SizSTCwPjdOJLwkbjiL!-xBiB;M8z9+pZvDz9Vh3>x zFax=J!q#Jdb1(`iJD2E3fk=_1*e!&cmA3Z^HCoxHq-CDhCRx&pQJR-H4Hz>KMz^(< z#)f8N+#^BcT|{D!4%zVlrJ(d*cL%b7d6h8325+jE7iF-&>Se(lW-~y=g)1`^9>9eT zSc6p9UHwC$vrxs~?pp{OB(@HA+&L?lxd+@SO=0~+>R<{fjk*lexs3ug!Rgc>;Qs*G zqbqW&ewvhr2Ke1eO-};*i(6#Di796aN+y3$rc5y_)Iy3p6Aa9(JBKV4&802F;#YGP zSt*s-S9jbV6H}>KZA<&{8{W__<=|Ot7jqh+ z(4lmVM-51t@0x`jaU+HZc2=0ih_cRbN;1UmxIr#b?`{*^%)3<=l3m6Cn#h?m;rbe8)ZCJ z;FQ7KI`uv`0-9l(fw*}h->`!SrX}EN?K2qcF7VGeTB38hmKS(gDxA4WTIZU83V9~Y z0pdHVz{Y3v3yG>Ua}8HBC7$`1(Hh%8 z=HDsl+(&6uZ=`B6wgbi>2%c?M9+2N9&3+ECzNSR6eS|h_Lz6cY1WbGpTR&n0ZLTKO zGF#lBiptM^W`;oE%k>sH6`Gksm-&aKw}=fQYLTY|Gbyo-qSDo^(uSh+6qnU%9Kc^Zhk zE9PZ1sA%ON20tbyMT@FVVN$LttWpZKd#I`R5@dQ6U`r=23xRzS`sV>kfza{hQliHo z3l1;8l7PAfuMmK?j9LU~`6}0PxRf4Rie6DpU(dl@8tx%ZW0;iKo}jTPhgm&KQ*zdz zx4@WYDLmpAmiX4@mn>$n6C&PTC*Cxo;!dWFFQ{&^Hpkek)DP>J8-_vx^h1F;2R`F! zIV!-sO9Q^G)S8uOS2HtIp>@BxODi=--l8ktl#QyL8PqT163_SUXYnp(RK(kz#4MLn z0ld?wTd+p{6-mAD|wku8enAQWA zFS$;pE{!~53MSsS`am{duTV$G)W~#N?(+pms$SS4;F=A?K--yZ(QHT61la&Z*ka`w zQJ*l@4^a}CKmkuRHaSQxt?-XGZXyo*?0cA}^{A&aJ>t5a`RX>MJPgH7u6l)ggZP}d zsiQ~CYGfv!qE^o(-OR)zbR8h%viwSPCo;;K;q@iV+9TYgvrw?w#`2ElFQQ#F_sn5o za`wP3@ff#l^35Qzc;Y*X*BsHLM3@Cy`kI?9lR*`*;)-R0HETME-0xF2iKZy$H5FJ7 z)TD8TQ+&i{6C)gM3u1%pCC4i;_>Ky`la5stD+MsTqw+&y&uLCnq3T)T0k8Yayqu*; zgj(0RZB(w%`IN&CF6OZC!vL#j8m~)2*M6WmHQ0T^IRag+popr&Bq>~^)?+RB$#JXP z9GdJo^E4}{p7AZKLSY3MBTJTO)J#;sUF5{G2NAg^LF4_%LGTAg*OE znYZx)9Llz?JjV77RP!B{2;p&Z;FsKEz_*Jg`qT@Q37eE&2djbg@U61e7$~`54Zv)- z0WYbJa}g=3u_?FDDRgh{C*ToV`JAc?X@5-LpQfhq7T`>oER|y7P`8Oz68w`Pu2!bz zdr!wQsfNzYMdE7mMvZCa4o7Bla^1HoEQ)% zZjXNn8ESi*T%|zftL`LNURI(4CjK^~W26v)!^D45;x7&z6mJen@juSCB9w^8vc7b_b+94fU%;$L+wP5vX7UfJRxQ2Qdc7hYiZ z8wzWvtN#FFZa5DRZ$=if7M8e;Ih1w!OukE#cMN4 zL)=SeKLk%~jnzwAV~KT3Cf|S@*1jwTQnCgxkja{xn)CMA}yxbV8qr{`O$-Z_L=ZVVR}kT)NcG z%HsuY63~>^SY4L^ac1w}ZzNm<7X{MIz%7@-g10DY#pbw%YE9A#fUW9Vl2bdXW|Y;N z3H1%n97X^%*>is4RRJ`2DVg!a&~R<2gbLKH6HDI#7b*|IaNw6I7nFA~ThGQTo0-uN zA}-(Dq5#1QDFOG?*$YBm=L1XSFt&`=R|CBY733oW#499yB9)B1z{#&0l{p+N%*A5w z^(ccwbp>N2Fy>xZJ~~?50ixGxxY@Or4VZ)5v)k0LW(8T9cx`%@+U3H8bINw@zTz#d zadAwGtj=R-9LFG^`5QCbz+*KIOexgpKACi(ZC?_+&nz;5doe!#8j8A<8guGi?9Xvx zrs#dg0^&!?kshQLClz0yb<7@!gH2RP0 z;F$ObRsMHSBAv4mRPaC7%Q>J*4Go>ea;dU2Ulmv4eZnEowy*9#6sF6)c!6#vn5Oq{ zwAv)IhjFDKgCu(DRM{`l*uhk>^%K=kgacqSk$IR%UBXc8%C9h5h8ZTkd768f6h*Tv zs3R$W(3X8_KU5YfTTJmP?NZ9Lws#6j!G@K`xvvoR#;I3)!7F-uwr`EW%vRk8sDow7 z?qaC+7{zV(H=l|Ib#u_X)c3fmKV-;1@i!`<0NvcsWQo@17X$S@CEkhknfIugV(oWV z#H&kaGVMagT|_x%;+U&DE>k$)a6$19u(PNK%jiKW7&g@EQG@r?RaXv^Jnk&Fm)%2}Tnh?5N!Erjwq~iDq`Dis%ucGMISaeE z!$R3_a4%CeR8a*r3k>V{i^Meyi~?C2(aDQ*9a%Wc)C`m&W_CwnUu{Q5u%i>X5rB>; zyO_~LM!bA;8*OvjG_E0Y0nEuFt%y*mnUFbtDK})Upkcr5W84HF=AZq6kuMwbQ}>3}#QrE`3IdsG6gq9aZjtihyWl~&eaaYqwFjb`Ck zNp6}lo$w90P6KejT_7g2@oiLg0vfYy<~xfAZX8Y zTP8xt+2nYGLW_Cig3zdk5;`DR`W7W@-3`jst;#s5%{`S812--LSu`##Vz=;n^~yPy zcdG&1R=ggjT0c=Nh1pkI2}1G-DjNo~ean5A%H}@FqkEWb43!YHG~!tkK;uNKvb;oA z#WGAyiX_xOXv<|Le8<%iQjPnKaWFK@Jk%U(?p7Zk7ux(2nOL=pkz{OgisqF9CG$Ct zTuhR)#Bovl30^TS%@~8sxV&AEXQ$-cM+%)QJ^XVl>S|j{+fjF?tBXdDaU$;$B>I+b z2XNFUqltBHVBu#@Bd7orcK&_YkrNmGDOY~;v zQ7M(#Q9)pJ=3RUhS&J1g?+_ToJnA48F-LI?!u-UpWw?g$45?>O1=}*00Pt5-AgCv# zRm)9bg5c(6Fx=-+tA)5dK)ffk!>0Z+ahaMT*lMl;al~v&B~zHV#6p~i!K6w^K<(5y zspdIi1+xWSd_}om9Oh!m#3kgpzE@1vW(zH-Lr^I#O|8EPsuoq9M0m&(h?%(=vDRR_sykBGH%Yb~1Z z+5su97gG_Y`X&YurfE9Gg8PvR*MkRuVB}1z5QHC>h~%_W#2h1#I+pBr9gabOBZsM3 z3iw1OSga}xQ}!SgfI0OC;uWdt6?rZxfYeK{P)$IrW^iDZt8uGqUSil66THlGD|O8R zCu8vN8yLPIO=SCus^$Szb()ncH`C$3A(jrM-1bWy0NbC9>MO-p%NKJ7&}(x=d3uY8 z2nJnEK4Y#$m~5AhVqzfSd_<%7q-s=aZ!<5=+$BXqpL5uKKyHI9G#7I#COMCYtGH@5 zkzPo>#%W&%m>4B57)*Q^0^V+M=4Q3T*)?OyD)<~hoAZIP)%s<=1jtaNyR z1_9d=<&i37Ic~IO{a1}ky}*FAvD`fp+3kyKScOveoIn%au>vU9J;x`Q0+|E{BD~K8 z?qTG~c!)GXUdf#Bn1n&B>Ux!1Zy1L$Jw?-Dl&U8I=4^`BsjvWB2-vQ%@oQ?*cRfwY zvH@?TcQOSScg)Adj)_p-B4}eBOfw#*-eHCn%rdMJu>56rDrKpYaVm>eTXisZaH-HB zRSJGLV+X(m=J|`F*AUEb{0?v)Y?zr}GXDU;{d`^_!QT){ue8BtRpTYgB9N3s>x-}zIOtfa@g`fh? zIErm|fDP2@U224|pUkHmd<+zwE-_jk46=?7)M>>JGc)XUQ`xzAt|qZ6Ur@rJQu>up%a)^Z6Mq+N*Yz^=KD=Q9C)GThd4Ul~~WDZ5G?ZR#ZtXa#8^p-mE~ zy^zG6O-NJ|n>|HSsZW8G<)?{Rey}TV7#=EXO2s8=~F@*-HNaEHvg{7YbLUI)*ToS}am|l(!u&FG+!y zq{Js-%oeDI3pEnC8E^}=rXFGi$l><}$*Hw&H1;v6t36LdOgHX6Tb0yrdP`P^lQYz& zuZY877aguNt!Ltl7D@%Ptoj69PvR}>h(gZ9&N-Ov2yzHRM^8_vUV7#oxxL`}i0{#|OE; zfn#lB;|8wh9~HbVUb+>MCBb`m__nR?I@1gnXNa!j(jv2DC1Njx9%l#a0nEoFy2mP4>OXP zlbU_a3R_a-z^r0RC4vT?@YA>Dg3E0&V<7G(z42RZ}j~`*Q(>&r`^#jgb67 z?jrES`^2F6E4Iee5GCQ2jr$I0N$H#|f#QyF6z6?i@kLR(zU7Q(n{b039* zv{$b)F#A~Et8LjEaS|&W%%2PtWoeR#^Q~`{7|F}frmNV`mI!+~imI^J%D`+7#KUk_)Bs96%mxu11^ox!fp@gg!5M!!V$Es64965*L&V3Y+~%cIZ5$1qb; zknrw1m5Z!=R@Qp>tbBN%Kay0T0OaDiE(%+WVGC=t(C|;d@jXPak-1M{&zQNvP_WgE z#c$zTkAlH(h~$q3?q728gkYnOnlA0vz#l+6j`1Ata;>A;fT|46b1#P<;+v?M$5SC| zgDXN)E3+@uGpTgK)BB5feWoh;nAw%mz7rA?R`>C^y(b*Pti5=g$Kvsg%NCz<@dXD` zm&l)_zP=dgma}t>O88VVa=L<=#P3rsrcr$^VU)1czlwG7iBAmrf52(@F!(&ld=Qx# z=3qD&JD4~{<~mvAL=x+M8Ew{gN63q(c=;4HsIJ`n7s7H2*HN7{d-d=YIkAC3%S)+C zYhM>Y4pcKLMxOo^*Jq`)$V8$TKF4wCow=fJbdvnM|{I&ufTtnyZ;BJ=RFWrA}H z6JoRSIWJK+nbfg*mlRa{W;W%Ye;Dd3;sM;>%b5J_oqQEdm)3vEl)XxqE%PfG)N1j9 zQt_xS{B;Je#Jgt~GPs)gTdSO_KLQtv`ETi{7KB_o`0L?qU(6C&4?1Hme#kQg#X*)` z82 zHAKGtUxLubhF?;pRg(bMiOg%`JS2a?(eiOHN5blJ005-VKj5DkzbE)GGh#!CtzV0T z)|N6>q9Ih0{H@#YN8^u_@~^*(Zmp?SH}L3&SS;Ki8u$!4fINLJ2_337xCY6(Gk#R zBIKyj3!Z^!Fl=Wra)g-c0Y@K6I!G~pdU0Hh$4Ipa-<^GU&Z?5b@iM4N}v^R%=^-P`*5 z5!QTPBH?06Pbz z62~t2VmTJORf$RfnQXY4No_RYkNfFcr|xuMNHTM->S_ZZ^D8WOl_o3ZqA=60p-YTv z=o3>SD8m+aiB>%NCjx`-sL_Hv0#sl3`h@FdByi~@HUWsVHKwty?IgXh(#w>AXDR`q z7U)G3I1=^eM*zcM4B}y)II19PfDtrb=MM&=*iSg-IFP|eu4R>+*&lTIs1kC=KFO{I zk8kl-aT5-61`)Upuu8cJ1suZtZFP^PYglg#Vw_?C4)iXv^(#lFeq9^{IDm_ac%S{l zO?P^RN|SQFi6gK9F95N&_W5o(oR{kqlA)RaC-`}P{{Z$P6;H504JJ(`N@HOMB8IF} zYOCxN-=5NziDVJrtDBWu%NojUmh+Z-J>VPfb}XKRiHjs#{N3%}RelVZB0whC-pNN% z-O;}USZy2J$M#Dhrw9$63N4RKeQPBi3K;Lv&rdPa+G26^ZL6%d0eE??2%_^il=v;0 z{{Vc?{{UA}(FX*-&YqA?8N{cDKt!|K{8druY}-bWB7iEXD`QNQ>Zw6u5w7V3;r5J{ zQeb+DQ4#S*5W?wQA#m5yvZ(#-bWsOvKqb$aqjfYd@b+&Q>y*2PxCLB`QM1JCym zemvP%Q`A7l9Fr~C*~A9}edG1Eu-&P<69(%SZ5((E&oOQ9Ueoo$PqtcWBq%(%F+LWj z%>ylTab=wI3LsS?$-;;=5-1OYV0vMH;0xrVj;b&!OP=m&k+M7TBcEQ3l$ z0h-cG;o&DjPkdlH%4h>!DZ!>3zT+VPeB_|K!wjs)*V3e)^=W`M)s+FTWa=V(@S%~v zRK`-{GDCuc5Th*8&8wD*?yyEiwF}USS!Bf?ZaUbacss$DrH)A^Brl7wuxFb_ZvOxP zaT<0EoC91YzQ{ELhq~)!u~~%x(QSiI1h^YWD(QgWr_Zw=t3_~Ii|xN8)5HkaPso)c zs>z@Ro3H9A1+-8hGEt;6yGvcg_13$flc8D(a$lHI`&Y<3B4LFpP&N=zX}EPSoPmuI zwcE`{DOCVc1jJcwI(MuGMFwc*47xp>f6V^55w#VEb+blkL|tzgmmF6I4R^((<7vdk{CKJu}m1!ke0*Ucq&Dg*5U#4*%Nb_#C{^}I)3s3zs7&(Kk)DC&H&}o*G zWmMg5HfdBqV7aydTb=%#gGM-1AfV=he?0G|*AZbP9Bs4}P9K?3!ctxusUZN*^YYF( z!|SF~qxrTB5#pm6rkKIioauJZU4xTQiEy+i>Lrh_ROyDQg!r{`{fxBxN=Mb!mKAPyN#XMDTj7{(^;=HU>`X;j7zZ)K%QT`_( z?9GJmkKBoK)^D0ia)lgOfM`&$o?}KXGc5!rm>UbvN8YXItFUw^a3xYdqXbGE3r^ zU`6Eyx+MsQ{NpHDNgPxbm}H1sDJ)SWfVqH>)53X!Z-l^vHnW0z zKk(L|9Ata(xD1;%zI3a5|E2$nN4Im(@l!GjA^UpP-j|^Ad zJvY>|NQ^A-$v&9vv@u&SJI{vg&N`ST5J_Zo=gm0L&Dob_n?Ccd6UjW8&a%;>yNE`3 zz-|_(=$>dnvKXjg^UpkqgNRw8mZFR(!i2JjPaS!N1n2^=@J2Rp2Rz{JlG$H;^2t6r zBqqbaDA357xT_{MSC$jUGzvhB@t_FG2n`+UfF~V1v(J|q>|A=n6iDZ!;ex`5CWz8a zj$w@ybBG{P10Y)S_7fL8N$)t4#u!kF0@=*kN}osU%m#Bo6myFRFibcQ#V+aZDv2k$ zxsNmxLO9YT3ypJ#r#QXb?Qmk#?wFzo6e3S_(M_fm5TZ%5 zh%y=gzyl`^dH82{PJo(f6rRk zy&t^$FRmaUhZwGg44O8&rUsatg|a5E6xV{e&N_}#Tix10Hm)jZCr4H)cXO<{$!mhV zDl7hqR23SGJDp)vQ7vcCL)BAS_+z4=%1OCnp1??)scX5#8#03({{YKkgrpjM)m%|; zA5}(an)@uWRs!2A=Z|*_DvVi9F!PQRhEI|8HO=ukoDAQCrc<7*&#)oOf=JJb`oKzYqw8VX;Rgj3;?AnR!yq2{c_@E*R|=-(7XrduAHpmYjKC zl##_)Xr~z}A{|B7(;b%KWk;M%_myS$N>#VCUHrsh=3Pam5?M#;E*Yp{(i>%E+ixY7 zd7alyb{lQiQ)ShXOt+eOl;3HF9#wYK1%?>3X%uLdT&BKhrn5t?jca9@fVYkWb7A>QB zsIbKp5ku@66^g2ZfW-xd!L-57pynK>ao%X^b-SO}XR!YOFoGh4hM`f?YCpIL0=O|2B)-E=P1XCp(B|vr%>YT;Z2jOdLWp z#swXM6N(RDJJQrTo`F?hhA5!geM03FTEOyDQAHOr5CMr7S23eTjT$vY6j4(X6B830 z>WV0$iYru6MRK`(2lAfxV*db*ABaB~zEX-W#~-S@M#b|E#rKt8Vczr&7(4zD#1xAsTm)`E7vKWe^+rg>ijk8seq-GD9wt?738QSr@u?R+l4K1-vpY&+j6 zy#D~GFH5CvasDaQI0Du*mq%y5YhM@LO7~Gkt+T!F8nZ)bxX>57|HJ?w5dZ@K0{{a7 z0RaI3000000003I5FjuiF+f33QDOhu00;pB0RcY{-C++GlIG8Nn)~!J5KDp}hvPI_ zA@ySyH0LD8qAscPnO+$2H$zxM7RZ|+<_n4-^3Tj&CT!F5Y9XjC?k<;WhFtz?iItVN zu?^B|FtKxXS$SD|ev1nePfYz95cXo-keFDfzKExz-mAdawr@nZEJN`8%qK5dUUj%j z7lI!2xLyAMaK(>aN0ssxVF{Q_A?rztF?@0N-7B(Oy{_#{``uyX9`N)?@)Co~_AevE zAl4UEm&4u=@ba1#X?24{8l3OPa)sv?Sv7c*H+IXS(HBLCPZ}Vw%ev9@Tgj>uJ-ReC zgoK_($~@c2@`68bm-;w<31)~-(H=rm3~)>Q7oq71thp9@MqECr3`HG9&ycdpdS>S4=$>!Hiaix6M8@%k@FC%| z{)y$4SkdIiR%mrmA zo}TcC%6|rZ&P-8f zT;_aehUs=_GJc6su84R~1myW5<&cCIj>nXu(&)K8uC3nbQZz0rG`yZt!y1`a{_bv=uQk11BONw4qmEky0oX;eagb+yt z5J3bIMiiwfN>*OilVvGcMJY!(d}-F z`Aqg)KjXYHu@IkP=`hFSf-djtd?|IJZSKD5hVe5nzlR=Z+3(3y&$G_6_+C#tL46RN zpzzm$FR|*e4_i&A6_<|$>i!5XhIG36FTj^sq|NBGU0~NI{1x{hqCyMlx=ohyZF^1= z;90m|4Ea6%Gc)3w-Dk-A&8NwAnV(7+y?w~Ny_2QZ{Y&^%b^)&OY0)^t7l0GFfKVG7dCoMN zQ+P9D_ldv=@UcLRkxuX;r-2Lsw$6UA>{@Lv814k>`N#m#fO*X>Xzsng^E(1rQW>-O zQHTJI7WjQRxe@8>-cX3m$4QEr!QN7_oetk$-bpw&2gjUUb73^`GU&UDv;K3N6Ap*@ z!H9;$Cpd@zonT(WLx5OY_Q@i{lcpQ7ryA$RF=!L-9kGPbe*>)GtMf1%i<-S*K-69N z^^9gkK<0VErGgyf1yH-z7!?_tFd=JOlnuTZ(m)P6z`HwLXVK6m@?8~w%aBD=r+AxG z)ph;i+#~y#gatTjd-s|US1Weq0Jw55=W{5Dt@z^|g$IkQTEgBG>k;59$BdSfT+b{8 z+5qw1C{SSR^kIgM4l_fkeP@?r&CS~PfB`-lcZLFO=Kv|t^PC2jdB8@_dw9yC@4@3B z`E@f$BDu!H6F|Xu$3S^}VJ`ri$~=@t!6JM($1fP+06BeP)iLh^{CmX#<&w5+o5w*N zkH!RQezJd{P2eg0)|NxY+9r0d3(6aDXbiNyaRPWM5y#QWOE! za&z#-AU^@dH7c|;AI>0*C#~gMNZ9$w$$oxt3ut(7AQzr=rsW%AVAa+eB{OctGvymsp8Lhr?LyFxF z51jU=!`m$7*HFlUAS5|I&KeuGJj@tJV4QV;QpY1GO&pfJ8luf^ZFSsc<46VA^7hRMN94z0GlgQdG7bWK**n zu$^0zT7OIht_IuR)+IVOx@ENETmJyKz0?kQ-UJQq2+q zBB91VMgX&KM97`Pip-_je62H<&G49^P!E5`AfcvNg#~Q=viSu8(8Lj`#W=)(k^V7= zh~ez#72%Vj|l zeE$I48m5lk@sLKXQx_e*&ah>M^kL$4dT}bEZ_aZ~>yEI}47UW?W~t{k1TL8{_7CrX zl)$*8hz*^6WJrNNcZ!kMbKY1Tq)U{blJwykG0}6B-<@XW5truy1Fo3u0#6=rz4R;* zE+K#c*m*uOI$wawLI#rW@tlgJ*_1Y$w(AF56!zPQb;;BwU6EebHCEQ0a{mDH5Cvrq z5%Y>O(Z!zeBDRcg1E6dt-VG2Gv;)V+aEO$dCwydQPaEe0>XMx6;(5QOCqfkpzCRNh zocoQ)dEbU)Zqj*RzKy|jmBQ`$#bD$Xl<5BecbtkJMh`UYc+I{&4sbWgIC?Ovz4+tS z3liJ2`^GR7b+3_yZ)rv8#)}YsGCT*P7Xma;z*Ac7{o=qH=f}tGiBS(SI31O)FL+Ua z5DtD^Pn6cYWDF0niS1p(t>uwJ+rNweje}ilv)(~k;3>z)ykUyW#)(J>%lN^eu}XE2 z*Dc}1&gkfzU?PgXeB;nsnrz>nuNiW&4tu#saZ(LFaq1E0qY)aL59jT^2^TM_Dbz>W_kvkkP) zj~IKvlD2>DQX%B*{NcDeBd@GL)}Hyqs!$y{rt0)P{9sTzJGcO1#*A$vX}r*={qvPH zYPK9?!+woZxaRJf9b8-!w%n^j@OaG{g}1+)kzn=S4fb$}w`w<3gUs`M}W{ zglwGu02!xLF!AN9iE3gm7)Fme%J5LUJ3caE7qI6rvDgO~1LzvAZpBdBw+Iy%Pw$#h z;odPS5Z>|0N&2QrF)!PXu9Q=pf>`SJoG?dxb&4(v@0T1CIS=m0RFK)m06PwF(tIbJ zR4>LSTKZuzo-~@1tOBYv*>Rmyyquii!4=qI0KHaogdZCBFp{k_bbsbUx)~Kj*15r2 z2DIUj37;4`hOK=#38iW;oao;fGm2XI_{F+-Rw)9WZrln>{f03VG_w3+l_AJ>IJNc- zCIqCHOOw~eZo6_&FT;m4HzDI6Gs!iqVbF8(d}Q5&;lrV!N?34v&D(!CC6Zyfh%SMl zyq96`B1O^5aYDnCIXq%cA=Ef;oE_ksi4HpIfGVH<9zsWEmcgxi-iA>UPjkO@$s5;}*`{onQdhcJ!WbiO8&+W}^gd#mYe5HqXup*W~L7rjDN&CzMAIc$0+q z=l=k?u%IQcez6Vi^Byqml2Mp&!lILmAc#~|+x3i_`o%=sijK!51rpoQfe|5Vwr)3R ziE1@*FEJB-aL6?*IdW&HQ{w z;5H-Vb?*uQQbfmJB;R?Y6l%3wLARYr2 zK;w9XiWg#WfdC8TPB9JUadeqTwO>2A4W#795|j%af#(jqy6%eo@%hDAlt+Nq^^a$8 z_nLYGznqll>z!rMpy*yO0TD&pE*t?K{oq{!DedWVU=x!^4_MeqHhFr$?y@yc8Mr}@ zTO2}Pfi;8$7j-y1ec`GF5-LLAcfjNh^57D_a$I$!?baZppLh)$<#J&nm3VT3*J@we zCYp^+sg*{>z}?q++Tsmj@!m5M5mT24IDdF+tz)+qsCXt`8$gFF$|^(SjF`c@p0J|` z?)C;yzLMl1LZvmvELc(D#g&<%)(U8+OM%`UVIN73xFQB6J2=1)4zF$&0A-0X1*ERc zVW+0`GfAZevse`>J3czNN`q=6N1bJ6pi8D%9%XrbeBy=F8#%&s3CtE^D22nu{xQo) zaU7toJI7U&Xz*kY$+LJ<0ehGXf@>ZIYphO#in9ukmDzCOpfnZ7344{@^N69eM{V_t zX3^1<#;xMh2J3^YXN@@KmWO@g1#H|+KN!q)+~8pr>CkVS**P1%V#PjN-Tty~%UcJ$ z5|?W@zOf($Xt*E#P3EcvI8yQ6P$TFW$v>6FbPIM*#wCb%zdslx6rRt1FzsRKSr2#w zOG^frqPYQgzj&n+xU^slgUO(B@O0o@eE7uy*2HCgE(j1i%UnUKtO@g7_$JbF!0s-cynqBHJp7J2o!K{c??wYU;+bvHvIa)LcpBwya#G-&V$K_ zk1(^>f&~>T$;JB2Yp>Q%2jU{tb%B8 zt?P=K#^X;%5XLl#S_4@MZ5uGq0+VI{P%3hAW8gpsqs9$YrnT?+&PtPq^OSfM&+&jp zh2E|h7VT*5#T!5X@Lmic?x(E2nizxRdEa@-XG1r|+T0jgRSwO#iHXWwVw)>W+l>-7 z{kU`}avkJs1@ARmof8Lwc`&P#SDP_TML_t&E1@CN$og`m3tQ{)fY!VRtQ2h>%v~3E zy<(c9RCSuD*T}voU*`#> zAzJnEmrZuOCm12RKd;Uf-2)MdswT^?oQ45Z7seYxrn&vIYFtdRs(2bbKJl?9jgBTD zpl*cU=NExL*AuAd$OAp>c=drzrW3+Jp7U^Yw65?sI*hAW6=VNG55%O z!APsQ;OjSyDX*W5R61iAn{tsH>>03O@g@<#{Nj$Nut<8yDSkNK7J)rF#t|PqU}6L% zb4|{H{%Rhdxm6s9_wP2e_Ay|P5dLx>Feg74Um|SN zfCvOuedKAt0e7uTDY`ct@+#lM)(y}Nrr`v1?q|teTttuu&J<{@Ix&WksxZ)sI+l+-dbNpbH@I%HFAR|1ax%6xkrD7U{)Rg?Cr;NmN<75pBgh9#AZ7{=)OCRa=uMZ?&TavzAImlZ z9k!p0S=hxdKJZ;bMaQsd$BcFab*OG;&@y$~j-avJeBpc|Zua}nJ`Y{wIwq%n@!Yl6 z%K2bDwZ%1+gi-q8S_?wJ^^(YbFqVi|rWkP50oj6n%XrNZOT7*#5qk$%0oW6My<=q^ zBS2w{%ybavTgRoNK|02a5aBLDDtI_ZDo6un0?Q@@0Jn?;8xk)^#s;3*(s4d;6sxXX zT#&L(_4v)a+je3s14C#y?V$ll=;Z~~DVHe1q0TeJ_ue3zp8e%FTen@fi?G*q=PP?- ziUK52KK0`P!=DdW?~AV7;ku6RICPENU0vdxS`-zXYrp>Bt!r0X{(m^ayGl+R8hZ}S zVnztOiTh*#R0j~JI3?3(SW3Uit(N>J01)pgPrTVC_vq|-&2d48rjJ!fbb4E z%8lQHe)CqN^!JF*=sCnnA{1sUK+#jI(~pa5;5__d67~_u+J`LF^mjBB`~G zxyh%25dN_hD5rw>!O)A!{{XHJlJ+n{J2z2y>jZ#Pl1gA$S@1rw+CzamdAP1Y?b+=z zrJJ`LxBvrMY_q^+02|UrCimd|u@NKb9H6MaV~Q{qxVg@d9~lSPgeT?2@OPtl#e=KY ztTt^lk2fg9Leu)-B$mRt@?54YXVcbSAv@k!3>FmM#zyG_+g_c{{9>V|b&Liob9=yB zS0J+?R-m-wQR1f{!w#x*C%|EiR#dh7!9v-nVuk?EKbwQC3wR$HYCe{18WqV0vKM*;^aYn{xTOt;@okv9al?k}dRyiS2L16#;+o1fzt z7KdH@;!HIPL6|@gs_dsk^_!iGV(SGIId#*3T^P|$Ts8w2PZ$%leZAonT5z4Yp;PcP zr8zoVf`kI{x%^@Xtil}N1Co3`@q&R;cFxjtqxQsuOWJCG&lP~|ch zK)X8r@Sv3I6y~FF_l*@prM&#Of~nCs_{|b1F$PR&KCN7N3*wTP!id^)LHWDDK_=>k z@Q4}{&K8A7k-**3Zezs@Hq59&UI@&x0ealQPe!$oQMB5`_l(Ra^wSriPZxg^1DJ2; zdD#!nR3d@GJlsk(&h-wHkb3DhIbAT2QaIN7C zMk988=O<&8YOX}B9q(ACiKCJjpi^C8l9Jv&F$X!S9dB3G0S~CDtf&d&T;TFPo0%Z9 zG*i5Qket!}Glc-~I3nsLy`PNeK{s)yfyNY|l+)I1AXBrWE9p%#nYyC#!&s7~ajS~4 zP*v#Tct$|3?|ElyjN7+b#>-W}GA6FKAV2$nf`Q=8`_4q_-(K*PsDsJ-lma_EWU)|-(E0a@fay!8>k{x_nHI_HdBF`wv%8Dk zS;@y>9q(D8R9tXj!p|-c4X@PmfN{0#<8W+T+`^L&kv!nBhGz#e(abdfI_)OXzpJ(19q%Tl7 z*LVm5o!j@Uj2KM>=hD1lK}%ZiF>igIOzP`!JZO%YRt$PU%RVtBzIQoJvC#RN;b z%R*E2&X+Z>jNXKH*~1ioy5~3mohLKrDblt%o#!3Rnr-)h<7#^TakLx62WAFB9B-mc z8(a#f?T~2G;|rBLUfg6!^NAs#7kJFM6eH^-_;F?e;5TH(m5%oEnc6W~Gt+_70i<>3 zImIu6pBPF_zVn$#w`Y?!as(sz#12hy?+t^j@wmxHryPHIs5c8Q;+RsS=J$*s7JJi# zWF&`XPmoMH6@LZ9P1yKJfSCjHi7*K?eI475N|krsIuCCT4i%-V^}sho<9vJ0MIH9O zZa6zlsQ&=BmIN2G`Eiw#f*biV5mN7a_nfd^6Tka}={O3?n1j!pajLVTW$VHYYy4#P z;U919hy*wZqu|OBU2H$yV70LE$VVTp9s(QSy~6-R=tB;NExtzm+M)m>$wMd$d)LxZE1B()8*mnCeEuD-I% zu<+3z>jQ9s!#l?9(jjct_w&4?S4PtCViNDj8%z)`sV4cwgxTo81qMxWT@P<~3&96S9D8m}YaYyqpDlhe;*mKXF~|bDkDQ7$x;DS_4?$~X zmBT<9+1GfbXieyA9c{zWf!q$M!HAL2+W5rmjmZ*W)z^$lmZak?f!@eTKl_Cy8{4b^ zUelY-17QWdx-*CiqSk%l(18KNf}yU}uh$`F@Owp1c$q6WoCXyLK6fxx%6BsV04vTa zyCd<028bbF!|yi=tQ=y7x61d30u^hJcX1a*d4<=nj1kj;2kY+vBoyW7aVjb_()B*f zljYMeaT0io_~-8+f){=9^MxAzddd@*TpPt+k5-uJkTj0u^NwtNrpejkBS8^bUDqIx zMDuV&6Nwbcs21Lz#%>Wwj)o8`ZmQXo#Z#rZ1nuMseP>7>&L_V(n+As<>_6Jd(kv{$ z)@;)Cl{^+j&l$^ zn=`zg5DAaiSZXzOfRL9f?`ycbkQ4*T=>Y0b1$fIC%29 zK8&E7j}xrfF`YfQgX{+wMyXyZID-)C&iv-l(xZRZIR%7ca|CoIm$q{~x>#4gA40|MldbI;Cc4i|U4bOfh;F;qnnt&@x$GL+vhw<{qMx~DF1Qm-rL zthxrL^!MWd(F<+9ImxsPq5R-x>7{#p9x+6hv&o1Thn%K8T(4Pm0WZ!?rr}JS4agUR z7|LFR=K>(_hbJ^H&h&cc782&L9@1nG zTux8(n#0M}=kb67Pdc>U=;L-GsT}XlXg?n=8ba=-qw|Q{d=rLl!i=M=q};|-ZeYIOK8 z9ME>cr>|~lY*}X*mQYtMf4jzj3NLHjatQ%^m_$4sA-Vi!lu5ztI>Cl3-zE$MEKuLP zF(JKm!X1Rwwz$;2rn8q?fU?E1CC< zsM|$S^!vnGCn3Q4{V+qf%B7uP!$ozy7tG{LZWLi;BIxmwhba|!v#b8W6 z1_s6hle|N7xgFx@sNTez{c>3a>-IBpB)lQF6448A@AH8oMY~VV5jd{7{{YO>1~-+` zhuaKAkcVdv#!M)-59;Cw33GbLD5kH5BOL+LyjpBLJAGibzV1d>uslD(ibfp8zwWc6 zD?{)yln@Tw`NOWo8-geb&AlCAsTyvaKJc3Y=^f%BBnTou{lvKq%5SVH1fV&;))PlT zqvHj{!M;cQz(m`p)-#0%hhhEX0>JT+UXC@!5a2kiGC6}d{qZzcXGx5v_$&NncuT8> z)j_B@K$u;}^^0Ht^|^+2Ul8RT{N!GmpUoKr<%!Z@y)Z(JC;I5fJ%fW+z)-*}jpL~MKyl9@gSE_(UG+f{X^ z-molJnZsWF;RLikGC6Lg?QpCKP1hh2Cmu6`k#y6k$DGhqK7Wj?k`20CaJuw=IZy+xwSpkm znyK^a25*%s+W`gPBX{o@28Tu6&Q&R@9?n5d!Hef8nW}{^o$7Cs|-I<8v5N z#6_d;3Z((k>v(ZMM@VY?V1bD5vGJEpcwZf+G8!NbOKSbkjG#HXY#&*u5m~|OB5*?o zlDs|SBPJB*ITSkZeEY%DX!4Aiq6kicI`RDCH49th{{XmPRh4*WrtAjDoZlw1rsM03 zQ>OBt)(2e|k2%Rvhh_+k9>>r0p#iA&BB4- zgA{br^v%N5(YdDKc$;s|0Rj;(oLwZ*5^4C&U^<*9@q$95BSYgE%WYBie)8;q@zIyZ z5_A5Cb0CTvLVjb9AuFSJsJce6&LZ{(f^&@3qDb+L0lo@o_}7dW+zFyR{&QrHp{@*| z1>_D-IIpD#>BaIJ!h24_@B74Vq0Modc8HUcE`tlfKVRo6TmceKk@JK|h3d>Uc@EEc z3mc8zumxX(!eE|N&qv-d+`I~RfU67HvjCi;y#{IOTGGF7oC8#w;>Y>L1`)q*@FZP` zHk{=atI4R6IU%3jn7i-e`#qy<{CGqi+Z(8xiXqNB^R&-Imp$Tjj}${nDO-ZMhc(Qm)`l7yXbJ+--) z5;L=8z}-gDJ!fI1*I%Xppgl}Vf>;!Oa*>1p0{)pX3th>6a1^IQ&Hy35FV`u|d?!EF zC`}MdQY9T!yLa=OKuduRx7+iLFJWN#?->FCrM$Sr2ATjN@qpTqLGt}DOWK1SIAlna z(_V4}<{Nt7DU>0-1C+_JhNn~e%}B1p`N9M$`s>I2z;3AAEx9OG*}vlRg=j&;o?fpkLkhmgdxVS;tUA$A8?#UMXN#tBGAlk~&_-u+*! z+#L}*jwS=iE6L%;rFYTi0695BRi9lmfOq#(NG;8%A#R5_Z7bq=U>HtQsAAfPA;&!8Q@K|1;DxQlw|^K#3AY1AK?zbka~uJs zZ&B3u?-MEk(tUTFiF-JhpmiP*a15aK@_l41g#q8Jo6wF-C6)mpih;8K0Bqpf>wRM} zkWF)eHlu6*05X9#LhzY)WDdB>1<&b%;^|YnibE}pT;<6B02e<~tHuZ_dH8$8ghXA3 zx37#Gm3WvE$3rYU@gt0N6hH;r$xed@9>r<@0Jt%u1*W~2$pPM)6V7Z3bmoDBC0*e< zTh4Cbp^^KZ@)#@~@SZShJ3+~seM}LAdIkM?#g2_M>gsv3;~48VyU(M~#v70rFJ<8O z-yU(24K)t_^3e4L{svG-X|8qsVhj~@oWHJ69bRXQ6SE43me28y=?|UGddU=CLtW>P zA{=_cm4^1!elZ5j`*nTJ45)_#ec@T45glx|=Q$Ra4gQ(UuzBTh2BP+D#}X627!7Lj zKh6!QbD@6*0);;xcNp7IV20?0xE`+ z`)4ACN6(z9ZjFZ?1@n%~*1&J;kU>+Q8BZ*5I${M79yr86A*Q<5jJYc9H+|;1fmz3X zaiOY7alKS`qmu+_f&RI_4;=1i1410`Na&v2vXs1>xgjo-lW@irsj9LS zba})?MXDTqX5kUAK(8(^MG@HCrUDcaq1?>@k*e(9SRwR$nF)+^5ATd9*_{^vKtT}k z?>MZ+6J~yH5J44uIRR+#H-aFIh2h1HlbVm?G@2Cw;dlDv=!XKPyVgfG5Un|E^?{33 zffW(G>fy1xF8g2uv1*^uo1=hq7{)b9Y_|~9S`M6;>0NJAzvCbl1#r^~O2I2*pUyx5 z#C3dOqeyt)9`JmmU&a9vXem=n@q>UPh0n z6J0~+Igwov5_Fgey?8w0#*lHiuMQzAl{)_LS7FAU{{XCkHABzm&J9x)!q3+a14P>CiGa?=o;`1u5YnqC7aSO3X|H&cg)C_L%Ev=$icfh> zbc4dp6U&NsIjE67a9RMHJTOSG*Is@mEixQk$M=;4+9Q%2WT+(EG&rmgf#M!90_^}V37Y8II&*{&w?1(aSWvg~ zfeH8yT)yf;n+&&gQVk2$!ZjPo1jRo30dd;D&$KEwT zFhjQz1R9icimV^T0d^_ozE8ygiM^1lB7hYFQM>!%xO zxBTujlkG(UI%QWJg@`N}Cl!Fc(@Bsaf5 z84GVnYVj~ysQUmq#SLLagM{mM@;DS>RU;T?@kJCKY5e~HSOhg2iB}XIsnGtHBU&SU z7@|c4ffv>?sCja3fjgYfSVV)Cu|KiiX%&kF@9X)na6LnXF&{%?^jZd7#`kk^5wVyN3|y#gc0BXgBeK8bTp!i_68G zTy7gR@%NHGLusOU_kj$qF9R2jG#E%8*%K(>mqPK7LtyWd?+Ox*&bq$wro)}*pI9V< zI3=F&0SRij2b+vtfOWi)C>MSD#Z^ajot`sdD3hOlGU}ka(SC7&93#SWgSzqSCF4gf zXrql)dBjDG$mnc1nL$E6PvZ|G;rV5`&Qaa3Jo>rf3nZDtD2$qt>nqg4=r-}j0%d4Ieq0LD7h)^k zc0U0kc0S+l2wjjAc*K_AY&GyW$gq1^>*Fe#Rp?<=0m;btz?P!z3oZhh9p289=L1TP z3s;HfjFJ<@N}Wa<#8OAEGa#5pYEbkruPN$-Q0d`tUe|j$W`ZWfKMWu=C8uY+;tKBR zuTBQUO`qvNG_VHLt8|QP+`$=z`N{ z!8^z|P;Tk`8pHBA`4?ygGjw#k|jA*kuq68v4N4!y%{M07HZa2R!$cIyy~Y z$7yv;-GE)(AM-0d2pYZP-bXL!n1TUZy?!#O4LWkE`ide)$N$jw610ZDkp`0S;q)8ICz)} zk3y2Jr;HG?*3N$M>pTfm^Ke2ycI?j>kT9^{85m~83{*|8FFtWarEz$~K8B)O{{S!q zHl12N@Qo-q0)YOq;Y3>=y}lgUspw0bFeBL_o!@z~Y=vpoRsbCpsp}}b*!VeM`1!(6 ztsu?}R-`qvyZ}ZX*OUHY29&n*A31%PY&-t|cZ2`{cN=ipD}6ibDC;y=7wh!JjSClH z>(B9pAnXUOmEha@Wl310-S5T+z>BPR+vf^)1w|81-#CpZN+Y*7ge#X{_nhM-YBW!8 z`<4YGR10;h&b6C}3N#z_FpjW7DgM!bh%}x(t||<50ZZxeg)YtUudi9ja3_VhO@JUG zy!~LoLLZ0E#w9Amojos}FwhDYZk!O6?-NSvsV9WwJF8IWX9K$L-p0WM#8diTeNZmUynsB^0D!(gme9t~{1p&lBh5Z=$ zN}Tz@OsLYMuRd`^cuu!pj0ig*jl-X;qe6UOq}AfWUpvi0gb5~(oB*3FUG8I8tXnXu z@14UGE3Q|(4QYpM+(Sav<_CaYaV*k8bKVSA5DJX-*ZIO=0h78kr)~kNH?SJRah=$Re|a%v zQ?c*o0z$q)meDxdKWZ zU~WL)mB47|{{RCcbmMb0-dD~F-5f4HSZuj4h_Laz(mJn0i;)`t0CkbIUKzqke0MOt zs$-^Fm1v{1`0z+}jlk0XYGQ83`jHU9kJ(slF8 z=L1^<;r+1{lshHLATzH%^GeYOE63IWQgqP$7=gT-3o~ewr)C=gZCxLnQYMXq^|-{X z&=bxGP`Uu;z~Z+7L>|)?7e#lB0s+atSS2<&*!)beCBb}q!A-4E-td&?c)NYfXdvWr zK7C;{P%i}d&e(8AiOGqeo3j4+w%CY=4~!LQ&L-k1;!=EKf?9BN*7es}Q59$;ua5DT zEAYSG00_J5{@{j<j+_~JfHIdk!HD{jFf~N8h`gS zUR41sKCqQMp?Q2{Oe{5cdML3gn|@%rN>p(4-p#4fi5(E7r_qomVLCj5pDhl`C=4Gk>U`}D~&(E%OK zu|uc8(X>9iVqTKa(44P#nTQU+j_H=~8FmNOA_P&Ycf~Tu41^SMeVB@bgOH^Scab0{ z%|^TX%5y;z@|i5olwSQ9Itn)P{AKY#c|n`}Vn?{?lDBt(yM}kZtvPXjV&at4)lCOm z#wPZ0>n=Gq+mQqZA?JSZ5Qw~BED<@|E&~uJDaFH}z=*AU*Uw()#g~jV>W5 zYxXkSL%J!BU=U8`=JDx>+yqg(vu!h_&=!4p7m-_9v$ zCtk4@_z*wuS)>&ne{TkGN zOjM1JjbQ}WFzD|95R+Tu9co$~IEWOWKPJ57iMDMmI-l39Lxd*Xlf=mt5E{^6ag6LV zKkgujo-CXB%UUCCBgDfw1(W+kee8oy62A&8+b0pfjkf(-;pqFwEL`N=5S(R@$M zzy;dc4NThJ#EWmYH$jH6x5aMoKi*K1B>28RT$4{lN?<_i;I#B++m)Xrqn~ay z1SwCBw~IEHMu)AO=U;-MWAoMHS+sGHIq`oUaM=JU|03p$9?=H2ca~*^)4khh!ET!6?rXh40tA^TWh1Mi2JRLsqZEHVl6WQgG znCkO^K+h1;cW?+7eJAgTa%ysmzj?I~R2_NrZ#aO1qxHs$+p21N#1KB4jP9k^?9PL4 z=)gQ}@|YrTX~FyBMK&X&5G}79WN;U?$}J7QPp397M~@yH5FtF*j9h>{_&zg`Mvu$! zi(z>VE52Ra)3e1mGW1Q0sm~aJ%KTXiO?6CZzK!zXAycC&3UJ%M&H;ig0ylfOlTG>_ zKiyz9UZNSUhH<_OOH*|nsKJ}VFC{Z)vKfILQ z#A?rZvN@&Y>j(n6n*rUzrQTD*bT{}G9XkgcnEI(O+GC51|VhFVF zPLGUTbgwDb&IRF4)HTi_zC%slhrEKjQo_>g`{w~6qV1ty-NtbtF?G(q^SA>>&!>zy zJUs6w4RHWH!()Xy1bJ`y#W#}TTuX+}Aup|QykPO>96que5JGwX0Jw?e#1HZ71&D37 z?;l;^&`Hu!A3OND#HcalzOFKg3N#Nvgdu@y{>B3c(4W&NPD5Q1_w#dv9CtEFxDnO8 z{@Rpf+F!CX8AQG+w^(glVJy0Nem{zSobeRS4xD`GSO2KUk~4F)YfGE7tRd z#GYMY7j>=-h1({$%Ak*F#t39#=aUJphi=@Xv0ol=xuBXHnxuL@bILCd3|_rx_o3?v zow#$andbm)u)x2J9f49Qp!NOWNgx20$2aSbcmNh2&p2$vA#OUfUk_R6#EUnZ0_v#Y z;a2Tk;zm)JJY#t`IUKlM!?x?3B;jU_!T}IAC3pMa0qNP?!I?p2(0v9ZGj%`Ri(zCx zBjRN11EchR?hw!r(Cd$rF4Pcdwd?xFo{}`83KyA(O^yudd1jEzHw9g0~=`#tvdMcbK?deBG3=FqPUQO9fV%~Ul{Z;Zm;I^ykdt$90AT! z5$`E|{ojnR)1|P$q@(~S96s%nDdVEQP{vV$si1si0e}V5*?G((&DfyRM7W=p|9x3hQu{YquK%7$Z9=bF9G1WZWyc(E8c3~wJLS^LyNSv=y3DWY`a0I5l{LLoWO%;Lj=7GN9z(pvs9Hi_9b;)o7B2_JdO8i4nL@{9TRhAJ9ZZv0`kdC*PZ zR+=@4YI8W5&rZAJG}0oKT;M`lFoTw4P zACch0y=hAS0H9z6pjD(ipYtGC0+N@Htdr9wRyk|la}1|d{96en-Q{gZ=3J96M8p4zzCzqLv#RyR4YbZ~P#z*Yc}}nmLHKrKTmaK7)WtxMEho49&5%)r6`F7Hj3P%` zAL9)g79&TQ{NhN2UGe8GRb7{P46R}39$BZa(>w_pk2zpOEpw~}kq0fW^?@`X(B-?i z8VkU*{{Xj?KFc%77Qq}5Lc0OHBIrO1T;UP-TZsXJE|WM>SHBpLL`hh2kOfIBm{2O7 zwVbp(Lk7Wi^uF??L@x`*Z*|t|`NYG2A?Fu>HR}S+f@#P~>E-VT(N~P+2=MDhO%d(q z3b6dK5d!52FxYF5x_#h_P@welf{75=82i8!+TZ(<#ZyE{i48foKz~^_d+6c7);Tpl z&v>9JJiGguv|WS;6uTS;)<>i~)j#`$NJoG}XZMzHFLy0PCl#}Med3`JG(2hC{;>h5 z)tjATye@%OK7C?PCf)Zx++e0N;tRDuKUm}}+RIO84pd~`nEpBZX1d{RA?cnu!BW$K z$Ee^`gA!^dE$PJ&E}ID79Oa;z8;qVDF@bMmUUG^p2(x}4c?k3l&%dlg5PnenV`xDh z3*+lK1O_R#`EVl!utk4YAasq2B9DX4BnBRrpRYK>)Rch@Rq57UMh3@G#>xj&F7T>o zR$qS%ppH^+zaKd$)}U+c?;R$Fx1-(7AzdPC^Wz9M=-Ed6=AqkYsqpy9Y_Ms9!Q5V-boN%=m(_h=K-muoQwN$hwLipQS_R`B%&16e(>^I5&FuQ zJzLqAQp0C;$|a4KtBo9p4t^P6Knfc8_S)gG*_TlKViLyqN%x8aVQIz?K`^Gy_{QN2 z$HpMblUJX-&i+@4>%D{r%$ju7zw02yp$ z=!#;t)lb3e5?5+yhZDB|7n`{F#wp73N}lnq0c~MCPn;+VherM!h7eU~nOuq9p5Is& zh0UBEL;co3q4aMGP9bff;Pa6RLhrU*C@?PE1OqcMbyF`ytiEbA1& zg#l1;^5ND{qdD~FB(!)o7$8LG{omFXLLnGs*R&tT3la|cZ(gxxQX7sw^G;PsroM6v zZZ$cdAEpEjiVV@g?u-Z0QThKEp*?PC^eAJ`eKL`+&-OfW5K0p z>~{?BdP;(Q`Ad9(pANL!$XymbR73Q418KgJw#uLo)m=RRpcmOw7 zY2)h}W)V&`XE=m*0Jfg}KJmA(ZOeG&>E2V24n+L2AO~Tm8Ec@Cuj&0`AumaUAp}|9 z)whJ$vsHHDG}bYIbWj=!IQQ^&hMVVsEe07>lWjX&rm#4m~#u z@WcmV8)@XdVGzJ-rQFM?b`0Oe@twdt4)@m_afB?sgJtCLf#d@gH;<2;<|b=`UQa(b zK+35!e$U?^bc?N1hHa>php9MKb#CrEREsj^XmX? z({+V5A?bMf!3|zI{cwsEbOW4H8XY!k5H&q4*Zgw$flwlUd8ZXk4V(9i4o5_HlUoN1 zN`K6dB#&qJe;6@TMw@)#Z8O02ujl?}SO5mRHR1M5Ma?0k-AUY^t_N^jp72CyQs^ny z^NC4AofYuD< ztd+6ocaLN$DNilIEk|p^MEqiE6%l67pIM+w_Ai%=X^k!&I{ok}DL5T!e)!dc#Vm7A z=Nt**9qryn87}U8@u=efQaVow(N=rSp$?l54B;lR#tlKkjiI0+(L(=PQsgA}3Aa;8SY&lAQ)MG&|%>2~u4IHPHFZ z?rIMO{{T44X!x`qb&zFlaoSFQ<{D_BrpJrq&5gT|A>=sCfE+a6`>YuuU-g(!TXRW% zk9b0kGef^#427W35J}DBEsFL8emr29izj0^2L)-jCYP7})(}7gX()Iyl2=G`F!cKm zX1MPgR*)q8;DDnDa!zZAfTvSJ{{R`VY1(fT<^sAWAwrXcd_Ce0!*-O$7J^vdsy+@0 zwLO|M%2M#*b7)bl_Oq-SYTV@r$9{frRvT~~hvy>ncwR6QmUx)hbvdu|iAt&3=Hm&a z@9~oP4sy1Thn{=q7+B<(_yA$`fkM+-cZr~Q1NXu-M)jZLEJ7-MyuI8957J`D(_IR9#KyJ)oaWQQn#K{@Ykhs3_x|1>ByOx9ezmNLNR_gSuczy9r6jD^rum*Qjf<1C zI>S5eH`n&JzGcl6*JLAZP&w{ipMa7#TxkK%Mb~NfCEMJI6>; zxOOCJa3Pj*u%J= z9`Sz$h9NWwuE!0LOI6V>xjwPqN55G(uKxh6v6aL^$KyOuZ99BSSlvW8{ut}17S+GZ z?=IX`-S70k>@f+a%<-CKR057HHLO7=>m*+KMEP&5=Ud1$z)#=DImX!UmWpoL7);%$}`*_Aj1f*9Tq83(FdPBu=q1` z_0AedA3-(d?;VN=6$*lo2WALd2RFW@`Sl}QU)6NQ?AbP|?rvZ)%8`bxeWM`K- zHT8oe7qViUZLW-(fS$|%wx=Yt!0x>rU`mgR?-qv9MR@tcTR&N{19u#TkzM=dPv;9| zk-US>F{E~R3=!B5W&<&`1Yd>0qe}c`C@&?9*ZjoLsQ2N-Q^`=Sa_BYMzigsm!V=*s zJ3FJlg9z>G&N&AcSFZ-NO zgl9`}AV91{r2QN(n;q+nC1IRAdTS7WAa4W+j*i>`-xnl6d*uA%u7wb}#!=xOo}45& zQAdRFJYwS&1nE9KVrUo+0qN@$Q1S$x>kI(a`7g>~(&u{aznm7B+yO81nt}c(8)MYHr-us2 zF`}c=cg{(`lYnhTo3GnAq2x{J@74~H1#G^B>nwB{Zh_)qLld3@!IxH!G#>YWE#cP> z%5n9D6kJsW*9VU#ZBinqzy9LvQy@F+{{UP7RmdVM;}U^dH3Q3h@%hcr3ZsUzhm=l} zUmkEK58ORsv^WMJ_vOX7C`P1vpUyf48`y`(SdJtjuHW;8*gc+4tAK30D#7G13Z%kx z^Uf4j^2Qs7?n4!0g zV)Qp-zDEA$1#pCDGGCc8&TVf%`h4Pg7)=?zL+5!imGaONznnT%O#x3YYly3gEYbG( zy=KTjFk-#O!Ic2h%0BUF2Cn?3?rsDWMJGR4v<%@Nt$!E+YT$=Bu}-qQ9)9vd=@8`f z;Xshk^1#xI%E4c(h(kuAns4!tK%v&jlA^S!!S5Y}F*s4(9x(tIwCs=m;X&TI{l2jW z%*{7nJ!6+9=m+%80Hb%P9&mIN!0!^I9@Vd&v2+)(x9jQq;^kKz&xFD_G}!QCSan4h zF=C|CuRZS-JOoFC0pqMN9KJ_O(Z)Qc!?mzKToo_?wG0{B3Zb{>1W`aLboj+#ZOM1} z#a4%shHctj9x%2$i>iJ4!~`bqoKyy{)8i=e0K#}YTqB{=xqpmuHQu&l)jSgbBeCxQ z9p&%5tM5U%>h@p(Bpr^n;PB@Q1djO43@obq<2hA$(w@%TXOh|nf&JtS1^0r)#I48R z9viRz87ihhAEpq2-+n%D2~B#+LX6QhKkh4`?d`bACD9w-tRNuiDL<^760BT*%n}tl zb)3Yx)9tLj-Jr)k;w-zG7s}+pUL1k^m_Ux8hl20l1`a2abTS z;omswmD46vIx9oR-b6y1(_@ltC1`28b-YC>I)Vw(zj)#THqLc0D79eH&sZ+ND?`2KNZN(lDRK5(>mfQN+hhuPbF zpAg9)9?*Pz;?gh(#50SmFXKzK|1Vkx=H zflEVX0rBrPfRfHI9U4c&>lOkplSIi06(OVXgrG?6!IMYvtZa&afEfo~Gj5R?&LxGi zGryl$f<2ECGvhVb4bbR|l= zePaOB!aRD!;Dqh(A<6AbO481?&JSImj1&pb0#A7Y5H9Z5x5fgY-%a`62{tb&zIvG5 z6wtEIKX~r6E{2Iej6MjYH>CB91@Itt95K~8Lr*+7LUAB`&b{PY3U=Sq3nKYCnC@(C z9v9ANuE#9V;~?d}qXZwLnw{eW1QMVgAMYp}kv%Ej-ZBu-Y3C3pL6?WQ_lHH`B~||b zxRNwup>EOp`^ag96N2IVX028U@>y^c?`=GJ`EWV`5CjiDKNy2NrCryv@%rOk^LF#^ z-V2)auFoG+4H%Z$Unh)HN^b|dLYn>lF{fd4;9TYa_ALJZpUxG>wE+eBW(5mxdR{RM20Vv98AE=-Hg(=2 zN=&5iz_-REz57{R)yP#SM1n;+~#zmryo9 zZ2{WAxdp2L3_ZoP)7^u!scMaq)x?0C;!TkAouRx_ifJm9oo?1A|LQ;L2Tq@Ezq8Q|Y`_B#hqN=X?0gVo4AU zrjync5J1?^-yD^ve?Bl8p?ExcxlGwf95rm)jbi!+Ul8o_WT9ttSI(YukOdmo`sA#M zQ&Z*l{b1usuwA((UIx8#K5!O!hOOKG4`zdrL+?k5es7ssqF!9nR?>((X(u7vtBcm*^= z_reWhe190AL}w$DQ6lV1-|3SPk8OI%CDcVW_!+iGfL+I|>LLTY?3nMsXp60MOlkTw zMjngf|pWyCL*0K&*hhL0pTgGJ>xnB z2Ind%M*WW%!06Vb-&eN?Q+FE6BU(2zncz1ulAACTK)OCLEY<6e<1Y%S7g)6H!34Wo zy{=S*$At9tf&>!D-OY$qPDjQP`j6%Kz=)>lG-cR@Xf<`-4;@4XntvD;Xe>~vl@YS? zEO49x@JAL`P&rS3I2=Q1rr)eUs$gw*iFpg(f1dJaAZkrGDtH~-2O%7KezUf0g)q%?_ZZfqi(^308G% zxRCg0>iD0GV((z4f_GmySOSC(2yizniQj<5u7OImLBZ<~TCW9I@my5O zYP{_JFzJ*wQ(r#v5f@L)jXdW5a9VY?e7atq^57kbF2`kT9=#%uT536 z@6H+uLa0!_e>fqk^4EU<0IU;{Lem^+)@qO`e@udHkqDK|h^E1M9JshRHQWY^ax=gi zC$Pm)9-tq*0X7T8;AV}AYk~IUy9UD>dmkL1gX3RZvxcJf-KyQ8`(r>2>42Jk@)}G*Whsz>T5uRe>DGYb`oUOPD&Zicq&Km_R2=A2 zAd(V+ua^>q)817I<9_iC%{m+?U$p%(Sb^sAl#|(j2o0M>aauIa%xrPuoR{a$ZY$9A z{NhnGj>}viR>ztrIQJ;3 z^@yla=)bN3Q+x=&?PZ+_P+g}-9~g{)aXa~N zB>F51M{0mQOMWB>j3Pk@6WHE@D&3{Cc3T~3Zl{^{_|kb zMJPpx@9&G8lxk4ZoBrM@Ms!`*(0@41wbSMG>v+P_Iey3e!B_y$@m^dFCs61=6P#re zP0`5S{%`?8)$RM`p`ppqmlY`;oIKMBq0o!Id%>R}cpQs;bCiVKqie+s??`vf$*0Z* z0FvM1D1|1T^!W3D!$u14;rnGD9TdOrvu&M{^vNNmg4GMZM*jdz(Ey=C`Mz<{5&{QL zJNfg84JMwr>%_!@4uVuN>j7ns-zGCbM!cReD#dWz-i~G}nh>!#;`znWj_Fi=j}8Us zjmduRSvmt3)7DJ_gpWR-j1z0I1jj;>qH6a~yrTuTkv(BcwJUb(=K?5($_)#wDfiFw ztg9mSd-(5+oqH1>IkaFQ)rOqbnPiB*Fc>5kPEWq_O(46!&P*CRUpXLB1&*rI$iX7+bAkqN^yQ)7lY=Eqp#W3=0JzRWHXdH`glW8vu>ou4!Aw~A zJRD)6B;~JoKq=lAIv4iBR4JSCc*a{nc(2wBDs8pD#tK!iuPMLx7zkK%)A+;_wwo7| z7=SC|#%v@{Nw*+L*{OXlX$aptAB>q=G(WBh%xZaKUg9?XoG!-A7kB!~p=OOLRPn6Q zKmzy6gANm&+wH`Ry%$sOE<2%Fy?Mr+IS6xru1jOszt^nbkXc(P`(kBiHQ_t*Vi`?H zQcm(5orME_+yJOG?+n68x-Cf{fEtSeAy%7drZ#t;e>*w2G6A+U`oL@ulIl6KXewPV zr_Kh!oGWF)Mud4aY(wJ$$3qUt&brnY0jDOH#KJ59NE%;%IWD%@PRHjVkqo{kj1*fP zL(hyPwuLqN@K+&3r!!lY>78SYV3sIWn#SXWwJdZ`I>0j1Zr)nXHVFj}j65~cNiHcs z0TH}(0HH4aNtVj8AYWK!QmIise>kb&9k=pePZ2JV@r_v^95mqUgSPkaoEaNMTkjka zs&wPyCRUSVxiA(&6Z3)%QB}Y;u+xAgfZZ9Ul)9XJVxI-!z(zdiyO;`t?SQF1dd8xF zof^%7)WNF5vSk9)^XKmXD3;0&uJ0fBEEzO$)-44(VDl}_l!0y<7#?+XCiIN^#Y==c5O z8p+5H&KpVP#C&|NNRF?ddEuA z2fRfUA6N#rFBK`sJ`MTEWtvv>`G*-)2Xz=eKJd!H?9~ljcZ*AdW8Yz$R=BzXae$x( z?YGg1tD1^Bd&LXYJBiFNObR6F4k)(ZL;hBAqHXOzI^OtKWxMQV#DcBtkcz~^L(H)@o>(*%!j*oZq>p5kdtFiTf zvX|gYPeli106zU=Kt3S&4(=d;&|Oa&!~x!6$|PR#0t%l+x4)cWwIdoo9&tB<0Fc1K zq055yec`vV@EjhWIVcvw=<95Ba=M_5ftR1!Kaf7GiGT1AwuRmC&ntUFyL?t%&h-0EB zjx%l{-FU%mK)KkL%)y*T&s^n+7LQ}+5glEktLGJ9jzG0B^SwNy&LV+)y!yc^O6)PM zx=9}Jt<-k^0A8>Q=TX5rhB^QBCIX>kOeyyO;|j@!flUUYVU zc!VH$;{O25&;UUz+gwhJG;J0d>-NBcqsz|`Du5dK%>Y)Kpq_u+;Ry~nBf33erSYnc zo(+1y$xbV4o;&ez7#h*m?dkI10Rrls{5VPqF8=_prwaf@o7`Cn1kwfS6LZc71;Orb zr_bw!Kwe+f;~J`*1*z*U1soNTe~z)14WN_4Zy4fq7JV=-0YuohtAb8|Yu{(a3`uQ< z-F_$%gB2J9XPa8r-3!k?X0O1#cO{|5eNr9U*A&_fG7eFC!7LR z0uS5PJiAh_FURwOAq63zf4rSw0=LH)h=6jp^2QE}%meq6L{Nub*ZIqmPY(UQGT=&` z%1i_nhybU&6$She@9Pm>4_4Qi=hi3{Sl4y)^MV4MZkzxD%DZ|e&K4E~jj6JF%7`IV z(?tIOYYuEI=3q5&K%>_DU?8gi^OlN7IQ@&zE>>0EoZ<-y;Pa9p3EKXQamYwD3?Kx8 zd>9L)3U=yXRAKkc#Av0ab&o3k$2|==FbX;xoY}@!dfL1=2D}%5$U6qfcu8 zB1e_I!!gNkeeb*ocrQE!>j4}NAs?Av+X~4YEsx*5<@c$#wYghpC2rrwXf-vZ zJ2Q|~;9a@D6&MM%{&C4eksEzxwL+RG*7eWU00}4Xb@7}yDDX9`n$uw#elesJHYhWb zI3Ymnd;M~~%BxM|;|2(TsKlJ{@tOmo*30Rl8^5(7X4D0V2af?jEodHWXL% zWrU;DxQrU)0D2!YA1bkUPddpvDX<;8PO_yC5CJ#)WgQ~#T)0uK=m4K}=M&%yq)%_0 ze0gG?u{nT_^gggI3uPUic=t}r0wU=xjo|lyp@O@!>+cyYX@NB4Cuw;Ea(mt+Xih{p z=Ke7fKuz{Do-#IhtxaAY%$co zv-!lZAUEU1!ZWn3fO$Of;%|s+aaTwfUHi=qIauiO<+Kxn%h#+XycP6xxE7%hIUjjo zOGT-*{;<2Vg$0>X5Q|Oy8L}F{k4y!HBcrpY&N&&Rqi;L<#!1JSY3%<1cZPYSci*2_ zn_kd3ye==5q)D^m9tDpFc`?R;c(@JnHf?=436-|qXVw}4287{pR0z3mIkv+?&DLwv zc}HyZ&K{&G6eHduY;3_H$>23S{Nk00xN&+d_oDmDMBHfXFlM~9xQ27=qRECWp=-A=7cD4TN?j-_8Ig8`pEr z01c3?zuLdXI!X^wz-@|XHTlRG5CGHi;+j$A13t3CA(rn5Hdn7WX~^JjUlRa$1rAQS z%4A-E!h3r9$3y{*Nb~PGH%=Of#P(+G3>#hF#~1PE5LZUjHcwacfEo){x_=igYynVw z99IQ?DQP@n;B?sJ)nNqJz1*)@0fj2BtG*oY2TP|j5e*Hvj~eOs zm87M!vgk*rG!Zu1!7In>CJT<09PC9 zH^>cvdZo$R1d`fwzV(c@6?>ZFG>{;O2axkWoC1~Ltp~=rW*Ri~ge33t-Xg}I0H1Tu zS<1=UMwrAFqV{-j#HgxHeZA&}d7{M42aa5kD6oVUasL1?hO!H5!QakU@C{1&F|>ru zoIj@&m>Y*e_4R{p&cU}DBf>l_n2Kmy@W(Z#fC_xiIS%$J=~HIA`1O@eYMM`zte|z2 zeu>sq4v?48jjN~CAf7Li90IzWS4!iZWCu!GTL5>@IjhY8Bo8|8 zSa!5+X*?^7P`DFE^u$ty9)RY!;FYTHHadN|z-=m6C+~q(tH%ysG=mEuV_NF#1$i-S z0zW!&7ST`3;}kDXma^giy7h%-jfMRjEd{J!KKx)-z}4jSFdl*A;|}yZ+yaCrAwM{) ztUW)*Z4>a}f*fnL-YtCfKYS!46OQnBR9DgG7~2xlVWSG-T$N&TUl>9}Dv3`xM@_gC zz=pxHqY*lPo#JYs=$!rK%7KYVuOsJ-R82o8&MK)pBRA22MH|qgez7G~@1gO9HaA=Y zUa+@JIV;inWFQq|!1}-e32x2>$r}|x%ctH&078t~?R>P-L!mjXT3#S3W z-#EHrI(7d5b4Lh88m=PRypO-*G#y<7x4ZL=KogYf>&7o9h@CwzgT^%`DxablxF98>Us*y-uzjn{(JN zgTiGIPC=($XYq=wGz1R`gAPR&o9pwI4r#Vc{9|yFYCYqnmCJTz+@RpGrrg zm8bc@NMvXqECD4iDDLR@o5B;0gAsuf6aAS01IPK^C22u!NJ3!|+2b}LWAAyx5I5n8 zO7q0ZCDrNt;wUyllqlJi_V+b_P3nmC{AW&^PR~D%@BsNs!{p60#*yTFVhSDkax4omFxCBiK&*Qd$d&7d@(?C>7k0S((W ziSXlq!?<~TcZ5Tbn_n&fJUba`K%7F{vQGpzM;pWqjv90E`N^V3gx~tfMveyAg>Lz` zj&Kmza4SCZmVnVA`k0a}P!yjSq6qWXtGCZs328ZhL;hhI^-Vu3*P|gXI43-QJmo;p z@_2mWijC%W{tJarLN;>!G6@M$IP~BKfg5S)6Z@v8H zkyxm9E#Ko6p%(SW+VzIX08)3$(bvumNr-eEjn92x8luy7A>h9_c?60v$p? z`Uju9Y9K12=s|d6gJq})_=rC*8sjw>P3z?A6se0*gw52@xPV{*Q5-?l?=NL4(P6>h z#h@)lCYQ4pbFVtuhWIy(BSo$-mRvL)fdDt~xegE=L1E-DYIa>9Yx%)7CY7hd#ya*Y zD{cZf(txtJs^=gga5P>${9@`h1}4yD$?>G+I@ZuFK;fsT&)|6VJ0ZSQLAt`02+=plfwqPmb^eQRnoYe(_I{ z5F3Y|ed{0*g4|x0!S5go9I`YFMWxtpeHf@+oeuGHpa=!^j1839uZfaU1CCG0fm1o` z)en~xH?m)JWuZ&*p1o5#GpFg&y3nqh;(etAd0$C#8`+DJtsQCoHW<8^N#>EF(YeQ z*kpSEgui<6h$Rg=6K~cEL8Nf+Kz@(L3Lull@f#M8k2$nTR(#+N$VPlhB z*c(~y%!b8mou1D)B|wtM$DbE8ibNX~IQjFGhyw>^uaCS}P_hmanC6@n4TE~jS0P&v zP7hd1VugEut>BXNCA9eSlqd>9dLaB^R)M3?pUzXg*$9gN0Hz}v20rZT+v5UMwH5j| zkE|UL;pD!4F+>DPQ)f;kSJ(&sn8CEIQ%QzCm5_VZPq?cU9an*HMqs`gqOSyx$>#|2 z6oIHagj&46SRnhVN3{4l_F#RDBV%0MjYJ;=anS`Pmh?Hx6Vg(EB zxi|NO0SBQe?>2VP2SokzdKZ(IQwz!f4UhMayp(9ewTtcZkl8snN5FZ(l|;Kc`S`<2 zlLuq`;bzE1TmBhzASgL-j{_DX<6iI%VJx|B&N{_K2yxKE|O87zZ zGkG2#yXz2~KMqI7#v{@9(TV~LSl_9PIEG2*Ae}4Of?9r=6o4kCZZuA0!LT`8ST=Uk zhGzk4Jb1-XOSWMxq`X`noK}kZ4|zjD-F#$%1KzcYi`Y0TN!WbgM0I*HW{sus=R7$0 z#}Qk~x^djfk>_6wlBAC(VX_{_iX;U(@Fr4%63+6QW)hiSwMbejQ}e zBFHH*XgApy_|__bLa0y15fIgC+kc}j5D2UuwAD%CeSxyXx-*mC|1B`)e1qxfSA(Lm|iF0n_n9&PGjfisOexTef-Mie4% z`ND!-vK!kkKC;kB>DV@X^@;!+R^NU;Fh`Qr5nnI80_vJ~5T9wcrMag_8NjbQ94Uo9$zJ!8Is65_8ym z_q=h{DKhZ#KECr#f){P+#Sq4e=Pb&drjN%NBRo{nY;$#6ZP0q0ogj-&Ld-93{px`Vgf~V?-uR= z^~6;L)|swK-cGWGWSq{ij)x@{7^+nk^@D)~)#K+413*fg=R0VdjpmUIO)W2zC@^Z5 zE5RJ>8kgtiA#-|4Q2E6o*wVM--}Q_s;5lI+tINmhg5C+rXw9f6qeC^tYpI0*bF*M! z_f=@U9qG;pA}osF$3J`hvO>1%K7Mm?y1Lw+@T#7N=5>e_4Tm1@mo}%MBof`ZSaH^n`X36-7y1hMQ*Vke69&p(L*~;V0&f_SNX!-q8et)dG1qI1D^6R7T76uG}M#$kEUyK>~ z<~DeHf7sw5sT>Qu$S&;WxJ2~44J{j2zpspL@nAhpns__h#vzpklx)5ty1)!UqA37j z2rdD32ay_Y50jAvDPI!*064}(Z;kL^B;-Ogc%JOS05^EP6|-l*7`+fcK1YVWHe#Vr zYR4(>-bIX?*eqAx&B+?WNc3XrBPTzM+!UKaj-L*{7^w5Mc%EO*3Vrf6{2u+`un}w; zI*;*@-2j3EKu=hr1lwT0*74?mLqg5CX?^!>XW$PU{NXvY4(fZjoRn?1^5WL&Tq=2R zAXiFt@tT?tY#Z5dfI*fhQ%^dWM5u59Z)5j}fXmZfUyoR*iP;VaR7q6e`S+HT1BKe^ zec)mYuK@eUfhZ3TE--4K=#V^n#$%uo-E)Jwn)0W4O4=FQI`fYaBDp-jSa(!9!O|K# z`N79w;ll=w{%{L1)OoqUVNH+TQDD6W{{T1_$b6G-1$J>lOzuO=C(<^jN*38|&Y!lU{}j# zq{h)R&WDYj#AFkSQCUmc}KCWd&1p-yAQu#zGEZy%-*1|i!0TTqpnkZ^^xfckQu6YaL^OTA|9U@1*NqPHIxYkp{Ld&7StdQW!<`%L^U)Ro-isc zKZ|}dhEUx+_GfRrgU5^=njV1gJTO}0w>iFA@L&BlWJYb?ikTZ0B z!=H>GD4K?J-bee&SXz)z))H~wjJC}p4$p4%K0<>Ls$&Q(51&KU)K4usqQq7hcfOzKz#~^4M*W;7M zNBLktU2;wJj?O7GMT&N>?~0In0ykpvzn^&Z);*~NCFC~zV9Fm2i6I{pd zyl9r9J8#V2*1TjFg3W9&+lYEb>G>mmu-gnf>PG9npS*_wEmV8OqY5ICxRh)SKO+(r ztpdTpqv)G2iPj;a0IowD+XI4KdiRVQ4F!6^Q%dYw`SCCj)dJQ2vtT`;$D{L(2cK;> zzj$_H(s$H7OjSeN9UqL6E&!nKSeycMCb+%e0C<&%{4q1wgR>6~B`PlVkF47P@^$0$ zjP>AXp7TPdL&g9RMq_D5;pYWfdLHwD9B`RNn3|q&KoT;8Vsbk8nM$_el9%YgccA%h z4h3Gk;BX1&#sJMtkss$MilG8&#uBuFbRKaLE20`t?Z2HhLHo)5+lmfjvN5dN)uj38bX0WB)#q)a)L0UhH9tthaE(t!0~=? z&ZHuG%H{sEVgeRFF1=!-AXP=~yyJ{`1Y?I?`M~Wp7l!;{9Z)TLdGci>5}o$`*vTMi z2^&P?cp`2%R?jExlt?ItWxKkWDeTG~n)V$NSW6{tmE8tufb;rH(8W8(oK$J?`r(5> z4ySX$yf6s@ohINMZ@fjF0?>H(^M|hDmPy+G02y3)a6oBxLBM*-VNfu8NFHt6zR9bG zB!&g*jWMF$Tr4q+Yv?Pj^NK??h*wUK>h9*&u2}PD>4RV>$xv;jB7D17xJ9v(7Rh2O_4n`CJ+h z=^@9bjMZ2-k_WqiAUme#)(Ti_DC#NWoF^5agx8;8gGN9i2OazKfv8}x1Ea;o2Z3$u z!0iVs&%EpBd9pa4t_ZZRi-+b`x%`@e$x=Ibmuw^ z4veQs4;U$k1X0tlVjzvXdBqwxS8Ytb0CETKfV3oe@_gZ-6y-GexHR2gTzbVp@@eA% zCaCiA9`Q6rKpT8dwm6z}warsiCntVpDgmQU%HVeJ?|f$G31#E5a({R=Sl&**`HlrZ#3ZM_e;CD~rTary z#zSBmH;2ppVTuAFgdLs`!7(>z7DLc>>v_0hlGbR_$C-qI2$2dyj&JOUiIt0 zcu3eRcm~(*Ox6m!DpR?WM__?RfBZ7~v#)=b7Z(QaVEmsL0{R~H`{Aj>m15vG6GYN@ z*Ng*FDvo#2F+J3L#}dCg$;xM*gU7}!1f_jEWPllwOYr4lu7OL?Pk4}l!KzN5tX7VK z-P(RId(;F#2zBcwXp6$W46KQ#V>dHR!X6CcG+zrxp76k;)kGpctX5Y`V!cV@5}X0N zuip1_q9~NrHy?~ZrC6l)A6U%+?l*XVbw|G*vf-$FbAW6YK8|}T^P0^09xx?oQ6AF+%E7PMLhQSfu zufK0OA7I#b+45r=LJMHgJ$mzl5F6QjYZ01)1;OCPN{G$yF-5Fs0juve0f06FeZA!Y zA8>0=H*I|7164vv*^K6hHeNXK)=!hiAaWtT3BDYz0bPqojm#KJrhuByn?5FJ=!Qg2 z={khpezEp6&J!z$`Z4Qo22B@UuycNxU(cPtPk8e+d&(mGfPT28BVE5V^M6Z{< zbpq)FBY!!#3o(sG)I}#my*W(zF9B|LuU# zHn%tV!KW={DbqIuonBAD-ZEET0>A~1YIYvqIJ;mX+iPCB$`GRf@!~iri3gYVOU3lG@xIFE#!O_L*r|$p~(gX=SUa;xc zLMvV2APDjEiK?J~rbGrB^}ad93eUVpLPxxA%}(B=^_;*?8Kd3{O(MuOfIyh@ zfZ!v;$Ifc(y!!gZQ5tx?;DD@MKa2#1as%mdAP+<5tM5DmtJL6j;Xp$i2i7b(J6WZ? zzIXd({i=aSfjb5kr6nH5$Iip`%8i5}H0fTZY6h42#uvmb^;`rt_EeV@*cgEeO?YEp ziCxAC7FIAVKy!Taj##ecIcsf(Ya+`CoVx#Jz8ax4HSB&*tIdaqes2YF3=Z1MAf zA_O8{*LTO`Bqk>WVII-my7!dRCk~AbboZ3o#s)xs82gCk+0W^MDH{|M$vgi5?l=H(bT6NrhTZ4E z#9JxICi=q>yM+tJ(>WMGr+*nZM<$I04`*LXhXbh+BuC*rZ7Q?so%V5 z1Vc;D!GSbmfNAdunzK#>;PH*8fC5Ra-zF8x5e*$2Do~_aIsI_wHy+5|E)%IoR7YpL z2}2_oi))zSJs1k<@#7L`=lN5ooxpj`nMXtDioDPLEU`l#Az?Ffs zg!#$=0zPm1&Q20EZTZ4Zt*&FK>>dy69zmnR<-AIGE}M%FQd4G`;{O2Lb%!GQz#`K` z-S>!;wV|gx2d>QDX*@YWL>G9{;+`-{C-uu}g6(m2Iig1OJaPDPrkVul@s@0gNj$JB zF5@Z4JzFwRdteuh%v1ufpwRmP*-Z%uK3F4%~BzS2rNZrz2V=uPE;3< zta=cIOS1v)Z#O9fklvnk?AOjx_~G!Lmfo>_!pBQsy_=%Y+#*=X70?Oce_XuCVGieK zM(`dQfKcc^7$Jb0AUspXx^(6F3fQB|-SIAV#A$);ducrDCTbE=o-XmjXVGN;0PZ5j znoC`8tQHhjggJY~(wtx2oBV1FV&LB{9 zIkN>8j_z?rfQTV=*SsQ9O&5RG3Rwv^!{z?~xQE&-m-1kGA8eG{M~RA*9hU@&q+NG~ zt+(r(TA;7rE|-v!U{I1BykKmOTP7N;OE5_aH5Ps3)oi;iG|4GYYGX?jJZel%LB`x= zU_o^JOj3p+pzAj6QKS19Nvax;7pwqjBZI%JK{XumzGfq50H}rQ-bAuQ=K}JI-<+Uw zPTfZhz-`}g?<-vzXlVJus75HdFa6DZva0m@cZjei+WF%R8jk~B_r`Ik8=|j2=U9u3 zHi+lf)-I(>H60kJKCP!%fj#oeGQRy}5p?V_!Jr#(4a_-q`JG@uRX1iv*5Vl;BY08> ztLKL#9ED-Vud%q0s52<@;qm+BQcAn8mtKL9DajW0z4ryw!6S$c!^ShWK5(#j35AF} zGrS7ZQT$^MFz)%p)I5+cd}7*8+#`H*$DMCkPXns_TmY~Rio=``pdBiGTu@+IRB-s` zzgU2&*>vzTg6sFe37V>v=sAQq;}0GMU{^ZDQ$jp352ne@#el-dS*Y@78^wOpQd-^V z)ceJLp;ILM4<@~2IOeO}a~oGn!vC_&O{Nl%8h(_NS2>{&_czZ)z*B}fcP8!aO0#v`+4`q1h6Tj z{Q5j+h>{vVwjRW!mjtA@kK7qywl~B+ad$}eZD5fVH?ssT-j_6H;Dg2>c~|2Dvn$ok zEd|hp$`0V2CNk$+K#FX^p zO+1PdB-M@w1MeNApzw9~;}Nnq<(NfXylZ3eh&vv$kM+S(0{8y_F&YPmkMEl$AnNGA zAtVhr&UQ-?^Zx)b8mO)48ooOG;?-Rpp{>pP9x{@wi%@jpr{uuz`=yxRvO2zSm1BTn zB2$(H1OeHcKxqxhhxp+VJQqFR_DRQVXhoddEXz5>H&P0}Tu60ia^w$Ye zVK;`Javzc=K&80WZE^rMCXj)2q~uUES)x2 znJo5Upd~}76Je_n`^9AqQM5Yg-{|8;h$%&Qoj1Mdz%31`d?#nSf;t1;-W&kKk2nst zg2)f7h!G*kw_l5ko`6BF-hTJ2sKC}QhMkyzZ`u{_CqA8xapb*Z+CUwU?aCtd*{mTP zDQeLB4mfWS8&ptE7=5q!$Jc$-A3)TrEz-Gh8yrBa-ulI~V04Hw0;c`=&rA~k5azz5GxiLrpW8R+~OoT{j zPqp}QDNr+2~BU2A+{1wL=%HHbU}V*0`2KqGp^H6GSuz?nx|f1D7} zR>8LgiMarg>bMOueBSWQ7DmV{d@{JS(CJCs@siNG3(<%PVb=3R^iC*8?V2Q-!-4c#CWOWh5E##3J6GW_TGJW;}eq= zhTR_T?JzOq*TZn2i~tq`O>yeugn)z2%0c_iWoMAl_tptYS~LS+mh)MHX=%Rks6tI~ z&r=Yw4PM3t0FLVY-0{zhg!V)(I(OGPz&Fre)9J*AgX^DBvc)mJ>vqsBFV2_bGo@XW5)8DPr&04Z3H0m^OD>fvE5}i zr6TGWldziRYt|r05O0})85HYH&VCni3~+^ChBaa#f8H>&Ny(+jq&@AIl4=5)aVwMK zj7G3dd|JQwKmkmjS_F*JD&zH(#9-2B4~zm;Mp@25Ao{l` zff=s1nl5&v4)0$MJ9+oSA3i^P9NY!RM%11))4Xbhc6Y;=ocqQA6gOXoM=O1K%}q+E z9tWfL;Q>|MUT=2^D`hJ7a2JnV*x^Qo-Vn=9NAASAfBAQca4+HDoJ%I8S72ch7 zybTEv7h8Y1&Wh3Kb-#_`>PUm9gT_BH#TWi_k-eG}iLY1-5N)ozePvgGLK9u(RBqN} z5k^o3+}P#{xlijBOd5HI-@J+7a<9Po!3<{5nnw`VBPzHi%snUL91+a~#R>si!DsU^ zL^i4Wjy%Y%HvVP;O=WK{#tafPONZ@pWqK*WX8n7>nxJ@?gHa}&dl#9{)*FQ%KR8#0 zuEKq0h(P)O0Cj}|i;1HIN~xS}f@QuA&zyXdv#-+vItH#;psmYp4HT!Ak6A}f`#Lc@ z7frdaLifzTUN_za(4QG@rZ}@huQ^XE%aS`U65=R`eh-|2(Azt|u0Ej_*}o0_vWh`r z%6LB*bT9+NoIU+u!nHx1M!h~hva0=b8QZ;=#yuLdiKjL;# zr0TuCa1KOa!-PL``!ZS-u#|b$-v`bLAkhQ`czk0-0F-svkQ$^uQ5EADZS;q3J9Ld* zE0^wJl;wa%z$Q z_wc?mohz3EkCWa#?P)gvqx4T026U}sOTu@8qe)K-=d4i>QYGc);7lv{Q{TJ;i@U)8 z0Ol=f+BS04H-tO)ii8!u53j6ELY3qXvj70VD?`DRR3mlb{pA&?JEs_kN6K#e3jOi z1u4^;aSkVpYA0J0{{Xnl18$$+0LXd|@rhI(`7#I{9qI@7fEl+OL6fofyacHCm%prZ z*V%+^ALxh8EWte$-3io;EJfe4MRnqOHf+=OJ> zGlo+%obJl-SK2p6G1d?SsRoOS-)0&buuD5%d=~&gP%&4V@5URF=!*KOvE;>0FpO7$ zy&7mZxYf%{oXV8C*B*0WF&Bw8et5=Cp*DoszMPE^cBtMNKcqy&ck1k1pHXu)|Z6X2ApcF&2r{DSg391s=$F>x#lq2TYFFknD?7$=Q7(ch04z_1!YkG=7{ z5L*rdC(oRPK5gQd#By#zUxNiWN0w;G0R?KFF{CHhNMbegb@P>=Z=MVHorUyTnIwbg z@?J2D(Dw0)051%{N+*e&N{rqdop0WpTZ#vX$HqOoxTV%kuM-qcd{Yn`aT`{6#9$t$ zc#;8$LR~MuHH4ZMz+oZ=pWiDC1T-&yGTYb({&!tjMvbv1C_mX`M?cQ>?@f$htB@79ZAd9T&BkSU~@uf4zH8< z$&@#Tk8W>_Wow(|I^XHFX}|F#-01dBk^r7}8f*sTG8lp5`gB1o=<2U~|jHO|+H| z4f@}_Cp!%Q`fwH57*#8K_`!vU(G#H638ycUu#;S;EU&?cD9N@?z-N2b@c^4IwH<$r z=9naak>TaA#kIo0MsWl6ddudBDwk*d%|~&dr$hbVyas?JUmeljM64rI^2K>4Wi8-t z5aYvI3GvQ!DBZgM034#x1QiQ-{XQ~cgM35>-@FN9qL&AgCg6u$pAYeXs7;43d%++S z=tuR$5dvG{;R@HlIR5aEihhga>CR7qHYEM9IELWAvzw+!@Ywj)F*{QYuZDM>oZAMB zK?aV^0i07*4=-*oQAZ9h^x{yJ2T1Z`tq4Y4e*NMUAwa7!?m#J-$XA227QuJinB@Qm zJ>`Nk^vM)_4%vA_#_^&gLEbR|H_~9DUd5~%AYPTbl+)emyb(xzKb#sVPbRSh=Z)ru zY_sIR1i=-0>k@957FaxDK$G4yRdn-!cLF;YVL8ED4(E*FK~Etj-Qa~DSm(SZPNq=} z-=<9BvDkC6{RfO5)eJ}-$G?tqYpH^@u-7vD{xZ8Zmjn8^7>NNvX9LF_;x`&B_|FIH zfNL?&Nuzksp2kP|B-ZGiar{s=Znz!`UGRUs-~?re7wUI}j&wr(KC&z% znWX0Y;-j<@_{19pG~4;Yl8WJ*_{A1-Yz^Wf19u}oK5#-gCYvYD7_A(R-1-IEtI~VI z!9}&8$aIdI52roU6fF6{+!90g^@?b$O()^^jT&w$t9}0f%taOCc=eUQS~F$vVQ9gv zoF}|#tWXrbzf5&g0Gzz;b&UG?32{KAbz_Jd3FI{3G~wC%vJ&ncU`9hae%OLDLjeh- z$SPoVb$~0UZ#aQM@GH)21D^ZzVQ%>zatMJVs+qPaPTWs&y3TW9KN(!yI;H}^?&3=# z9pIdo>f{n5g?~=-Mq)O-V^=t5PoKOy1d8SNnpd7@c%uqGf#V#?>NBGSl6IQFPD9k| zBr9#cZya~~;P+gjw;1w;1M@!foq?#}{_#Av&p6CVsjP^iZ852QF0$&jV(V{Mt75$7 zf;_M^Wx-PC0DtCa^5(ff6M$g1o*>||uyed{cX-D_#`BICYhmOwi}fDH6hKMR_m8>f z5>ZL@F*Cs-&tLoKFf|wJ!R(9Z?-~ll zBhtL$ZKzc_l{cbS2Bk*QY4iH#;wVkh&OaDi!w(0r{_+TJ@V~$3D-zfU)A)SjaW{wP zh6>s|MPhiEKv?Xi>u0NS0a41cG>BV4uYCI@Y` zQ#65qOV$|0aWlLufJIBw%*uk`melUyRux^{2babT6%CL3kS@f~Bl*KStIR3xbA)0o zQu!BCA!rp+fZ!QYvOoC9g}X(XJmL3F^e0;D2DsC@ewgXUL%G&#kOuFZS{VwVs<@`S z{NSpf2Uk15?WcJuUNuf8ai)zo$GqnT+}oddtuNAT`^W)9X1T<&JoAfhA?GA1NuG-{ zbn!i6X2|1WR`|x1)y}n^P632IOr|)XG|X=~P|bG(i-d->A(jojA1(wyee&GIy9dIa zQ|DUsg%?P~+b8u7RMoXOU7z&i*@oFlH?vO19Q;`oE0PlG78xCp;xIpYnmg|3H$(U5c1>{VIS)^--#U=q-MhipM*y_<*1cqf_KF8XkShQqgWtSF zMV!@VuNYqffeQz$T@ZAg;PL{Ub@z!4khQ$M$>R^B%YkTjk1E%~g1pxw)-YF+4 zq)U)7TKhPFvre|(taH{k-g2ZDPN~K~4#+Qq!Hr>A`c^?)~u zAijFeV#AhXnoMt4(J4LP4fED6OACPo5_5$WPVD~t;ZzwNhgqR#^OVp#6#g(F6jdB1 zT|&FKj(T@|VQuFW*qPLAePSy?R%@w+9$vV_Cw2JBjo{ga!?#$KT}L1t;2L%2U`syo z2#eRbgl!qhkue6yduqNiQ2;q!v5>Qm1C?L*IkJTiD~mm3p#uN}v%eUsTX50Qk_t5I zEeM`m2qC4c&{;c~0SeY9c&?y1uQ?LyZ1~I6sm=vPwdWe*9(RFAkdf!k38B+-90sDQ z$(jyerYngm5AljnQPg?FJ83ildcbIrtB;ziE({SdPP4-K=M$u9P5FbG-M>#dFBtO$ z+iPMOoa?LZJC-;Z}!lCtd-Vu<*l!u7_02$jE*?l}@lmwOV4vZ1A zXFZ;AntK4v;6suxxuYSmBnq@uNguc&hBy&25t@GY|zUC zqWQoupk3cHH9)<%E5&gF%VZX*yS@{$zq7QShcfo(GHz5kU?RVDhI~ zZG+n2i0cCqo98X)J%(-}snLi8$?H0s{_{~}(Ql;d8+)_K&H$@?D!Chhz)j_n^zSUr zJj{TEj;C%GM$Mk^fYEkkNR*~?+lL8hQ08Wow4=|gLDB&z^<+LUU_q{&-;4l+6JYOO7ZI%Tk{!MUX7CzN z@OvHo?)t$al_+UAk?+~gCGb@{tGC}jrYS*sdSC0j2RJ1+e8<)Z%#!}?U=}x=(Hi3qca{cA7aWtFpk77>W zIZ+0YA6Wow6`Ilg;ClBoU^QZLb9>G7S&5uJaBo_2sV^llgHITMX}Ka%J>pdH z<;nqO|2V;awbc2PS-p(^t)f2M1eeVR< z%zQnWXG7Vq(8kn>vwUN+uI?uY=qDcWtk5SoK~=vv4y@MEykdx7tZ4W1hKN(akX_RB zT(qZ%sq>a4F3f_rSG+AP$V;qlTAFb&#kO`z)HiP~OTF@ZM=MN97_DYjR-~>B=Yr%=9mKnaEYX?E5-ALsuk63on(U^c6Ru}(mSeY^@xa! z>nMs1iTdWiUz4tS!%u$`03SQN<-E_Q2U_Qh<%fTGw2v68M+CT=JY_j%c}q9ErJ&#I zkWh!t3WmwT=c)_6_`seXPH?Rr?g{LdSDXqj2hJiU-r0+GYGDZic*Yz6ba$E+rzf9` z5nkKYCdxyNH}i=akveW`M$ydYG#d;fyg&p)_HpeAfDo6Bz2u0b4T0?TPCR9l1r$#n z+!B$#9L7JcHA~BjTVO9;rQkU)^`1JaB|^EH}`;nqg_nWj2i5p&K2|T1gHm$EhzEt z6BkK=j(%Je_+?`_8$Mh`U4{Ug>k$=KesOv(j0bOcJ6QbYq~7JYA_i_`I@bXn4(Xfd z_Av?-chQPDj?6h*-nz(WcG=?@5vn{z&POUUXG`-xjD&)VRB#;~Nt)0wl2O^wxx7dM zKP+yC0H&){J#&)KVAz(PG4~__V*>eLQGEw^Tkv?rf`K^R9F%Uga^$)gigY!uFz)u_ zqnGLsaVD(yiBK#ZJzul;<27s1L8-4S@HjveSsu@4&RfhX zy$_6PD^=@D7`Vpk)&UL20OO+pL#~z4=K&$QR5$)|F%cHhzut3(SChRHoE-_}0Z+pX zNx1NJKkhWk+JXe?c*)Xi*lY{W=K!yuAyjp5X0NOia7PIDg=x&InECt4s3>h?ezEdE zDbI@easq2$?Qxj6RqrVQPQd>F3_StS#=;c$;^TD*r>C50;OX8ri0!2hcg8g#+31Vdwn<}#6Z_&zZl{}sPnwwiUV@I07xdAmh{Lr<)rAVv-TavMOVpW_W^PFvjc zVvwZ^v*Q3kO|FJ)ZO9F8_lk&!Xtn3oG%G@$b7&iM_I%|mLxO(SA~ZHVWo2F`lY|Qk zUf4mbr-ecaHi769>ts5p6J7&owYfNS~Zwl;dU* zuy34Z_J(R8m_{{lM*jf&nr_yc#RYvsG->iVvz!fKy`C@^i|-)O_c3@io;$;cS>xp9)57;AmHm5!LJToN+w4E^7zOazd7U+ ztlVbwdYFfY-gPnPu7^H1fO;;!j5SRBAQ+cNYt~Q!y}qf6Xp$b$Kb(%L0Vfw8M1ijd z3y~NVsgDishewRu4wp!irXdtMbXn1m5Un$fHcuJ3rYezqeJ&*H*_%A#+ZZKxub%Tj z6O;aTi){UrQ`fiq#sQnV@3%S4M!>1?V6nPvgZ0u%@Fpba;G6LI$SnqLoH8KsG>mNG#nPX^=c@t+G zOxwS#RM1Ul08`_<8XWxNx;lDyf-gT=B;Vt#pi4EI5~hwk<6Ps~W2t}l2ppZJMA}ZU z4f|g>sw`&kp#7e3OGB;mGWV#VzA%-!{+I}`16=11ohe_uHa#uY=H_iPYSs&FyPolH zf+*_{4cy}At_4Q|^&a`aO2qSv8;%~aa4`|%>k70#W(K#kv44sopuG8KXlWUo`Cs6PvJjRnm{k>x47rOv52)3TuYqM8NF9UEUXqh&1-y38 zzA+_WLhU~Ail3FT_|Cxz`1tXV+QT<4uwd&wy>A>K*aO#$jN_yx{JwCcl=*L1H63U+ zKCpCwx!v$&2Bpi(G=8`w&AdzkiO+aAr;`q&gV4D}L@zIlkpr(8%J0*FrF=P}9&kw9 zz2!+)sdKoEQf{~ykIo$qImF&RF;W>>;}Fs)=K(vNPBVZg97Aq99?p!{(dOiBt)-V6+cj|9nF13*gp;|A)%-)2QbeSbJUiW}!xIF#&|;EQ|j1iaIJ z*&*W+Oz0@$=2NcNTLIDAhJ)aoV2qR7yqeah7niIhR8B_V@DC2Z4liWqWw=V!8oDvx zx${gRnRquQDT&ZlxE!DbcwAcO_8d6`yPJRp*~u^}nUDo0Q08|gEIg9VvK&g?YazzG zUa@m>=}ltFCbCVir(dfA^3OR)C^&%AJ$Hnvo_WA*MfvA1V!P9ucSh>rLc>iQAES_( zbF1DC0A8+i$E+pAoaVPL9sacc+OF;zH#uc<0vT(ryuhh=HcfZBYri4=zwTR zlO#MrOd^3wG=4E;h`Lqh;KC$n-bXy!o2UDem>i}a)pL8mW{g|=v0Bqp z4LGc~L3wb%?~(}CHje$}g(=-|Ay{$P9FInGB)#5o$kD@CXdUXfCBviH{o%AX8-TmY zBp&c|*qaN56i>f6GC1!xSFW6fiRpi4a}aRtVqlwNd)7Q%onZ@4a}+H+PH@pb42eP7 z%tKSA9OO1^eBi2{a7-$H86DiP>GPZ8Z>#}%Lmsae?>E}^JsGq#J!e2Km+_4Xl3)`Q z*BC%eongpHznuR7>gzNfXHeq_8iLwkT(hapa*f{Y^Oj1~@vM?cU{w9$9D&C^aAxuz z91ZEW5Gr!>gRo{;O>SsJ&M}sby*W^okGxBroMEG7<5?>Rd3(ar)jem(UATwnJHf~= zw~QdPd%+%40;9oGCB4lX=K?Pw<;7QLFRa=d4;iuX^OR_QONdRA@0?v54>uAt4^hi~ zy}6)ZI&T=3Z+M^vj5J!>siBw(NmNQ3f#T0%r;l>R` z*@X1sMt?Y{ih0qRlG!zit2OTigkPLg?dDt))SUaqpfS=besS6yPaI*XEXeN2)Keh+|)5ZltTKz5YTT47R~jQBo+6M zR0itL*8vuXcl4M@L~=(IN^mvSF4c+Fv7Hgyh?kSkPFMgur&Bcm`*M;ln~7(KqgY9G ziM}y<2o36BHwnh~_k<*aw*{81W)f;$@5WpxeB^{T@5WQ%-g7~wDjm0Yw=~UcvE0kx zSV`f?X6KDyqA}Mvwt9D)Oxv3=z7##VPM2O67fs_ib>A2|xB10z6W%AHpBQXx>sYj; z%$s}b6KvDA;SMGq4m#y^f*|#RAX?!r0F+K#d70Mk09&7*&MBuacs*l{FXI6Xm$x@S zQ>;t1>g3Z|JHdr?bY(W0!FV#sDsOI1Ygn+@rn8try<#C$`p)&E=L{SfuJSpwD>=d} zkL~LY0DRstj3{qe#k0$tO>{0boE0;U^UgbiMFso7Jy7ChGtPMvE#B}>@lGAM_yOkQ zx{q9BM)S2uA9={Vff<-m+}p zYzYs+nuskYI5bv?H1go1QEugE<_(%38NE1f48_Zrd7u!Q`N2u^Lk)G;#yr4VKkidd z`NEP?*a9S0d1|xnq6xg-EOW7+P@f};MT`3 zt^m+Jb5<3>9Bkjb2-gk1$Ieoc8L_kRmI5bPLhg9)1dnf-#$NV5rfFmd`R5jFCCHH< z36VAThyza?V!^0&f@wr|aCCUTco3m?hzwNc)@*ejSa^hd;*K$9+%;}q{N~HPQg23E zw_dSa(dWGColQ9n;2ts$>5(>HX6`Me91<@$S51859LvNolr-Xn4*1ttIF$WNr2ubN z^u@_&gJ_z-2t&z&U<1Yh7@FhG4VdiLa{}m>-Ze|C*KOtEL(Xum(tKlHC(bXljCPyK zgaq`?Ti>jJ=zGBr2Sx(d;$qRl8qX@%20y0o2uKXX@VHpf4i54u&OCLn#tm)H@sguJ zF5LRUBVqHDv%|cx5S;kI5m7o(a*Q_ZIy%K-hdxZGk}>qkV8^)NEeUj;;OI0l>kbO; zQwmB8e>tciA2=rDk8Gn|O>N^92*Y%_Rx9E0iczDR`r)TnS!VBDIkMU0%5A*o2Y)vP zI)x>f$&1yP2IX+=7)o82tVJIgM1g#`@-QE+BzkWYa@?KbbhsBzaxDQ59Oa#zrb=em z9AJSjgqeDQ?>Yls_nS9Q;KHm2faTFU$l7go_{Lj$iZZQFBI2#=v+^1Zcz-*rI3ANH>Hh|8-G0B^CglOvyt)t1@>k$gl zZ(q(EntN|8%k{aaLiKsYM|*MBExmcb=np5n)VBCNVLl0PcThGx`?k@#);SfIZ9mmvq!xW+A z${rlM#(L4$IQ6UboAO7AoVH(BwXoN2EN-8Ss3k+ccx^pnN#f)-vkP@&=QsnL9S*oN zjly$G9K}8{C{Hh}0bm-!o8ApVm@52lG>+z9E)ama?>UX8u0C%W5qFjkcth(4Pn-*X zt_t(-H9QRyEg(}C2;UEk@E;uWi90Cy(qhm;UFN5A=Mq)E9&)7jHm`XRENGqP<#{oC z#d;lJ^HukW7+Zx??-yr2nKV>8#ZvRl%EwqBuGpxM=LobLnl7%n!BA!b!RHcE*Ni~N zj5i+fStOi}oTOCzVkK!Y-6p_&WeOC|qIZJ!LKU5}5LsvMn+*+U%3}A!kBk?4E{?J*hhyKyDp7b+=96Lj=E8}09&lV) z)*?;K@qpYOa8nm}@-mWLVObX-1cza_=L1O6NcEeI6Sth$uzC5wAKMqLkh04}?RCvtQ5i9^fA0lFJLSV#-Tj~GQf{AS*NCR0c* zR>sDMjD|ul&Ro|x9dm#S-d8&DE&~t;k2nZeOj-88!9EPIArEduCZyP78ZGK(l+)nEK(0PBQKII^3wR!|M_ho~Jh23YU1IH; zE^0tLTndujCPaf_fp-Tp8PFYJ&6T$&K<9Zyxpj;mI48fHvVOQO`#0Bk7WoEY5UUrw zLnkLFf@{3$^5T){#&oS7Wy$G;Jxh0kdozH!q+T%%4_6yXC!;i6LMFd<0A8N3u{y=5 zCtdIHgOlYPqWJ7?3KfLo&QywZf`KVFOaSow;s$wJjR(VIz%L<>i4lDKVW%&)C!%DB zQ&-W8iy-RfWRLHbkkYW~nKz&~#+^Afy3W1%$WVRamcn?sL{rf@i{E(G%8Lxzzs>FVhO9(Yva}rmxClNp0bdB1jRxT z(bg{Ioh8Z$p2sl20bKW^Eb^nZ&Q7Ua2N;8cO$tWz*Tl1W-$4xyrTu zFoUIhb3QxDypVODpBN%4Xgl;`T0za;FG9=Y>mw~yiQaNK*2|oZ!Q{A+C&LkkBeNq1 zhnz*Q2gW(_Y464w*>9W{jxunWH_Xl`0QC=e!QGPvpm8%D5I$-X|@5=Hd|S97|jp#Uy6&LL+X_>nxP;$rI}3{Nm^e zyx~zzmntdu)xcTDUB8^*MBkiM0M0IGZw8RcXI)!?YNMIXDwOxPA4n6o-V20pE)=mh zt)H$ShUqRUMV{EaC%m9KJ>XSzI<6=oL%c;$A|@y}98|!oPv;zFjz^I4^M#ABS>(oU zCf}S5fZq1;kiTyo;8B!AfXKjYgvq4dwRmuSyvWujnzOls1gh%*g*G%8op@|ntYIQ( zo4;8?OGgb4c)3%f&3UEfn2k@9B{imcK8utiE5pT+{NG(gJ~A**G;?R#nFec~do zoJCjUxl|;!83=oayzE!EtTyBL!C2*W{{WTOti5kX8O0v^$}bKhwk!F=lcQLh6QbiF z9BG+AO>?aBM6tw1ho$2pM|TMz>-E74gNQT;+|gE^awBr8<=3pX{@mcey7Q3I{d>y> zr1g}?N1m`7?-J9Ev{S*+8m*yzsk zIkaM@Sb`%9TI~MuR;}ut<5*A%$|A<<36vn$v9}e|?Zb}bJ*MTNBJ!BfXabr?ykmCW zd|+sSZ*N&dr8EWm#MuhjCNb1$t^lkP$_$+g!XvCqrnv3FLX_z-)4gAeWK+&PU~k`98@!Hp z`r=0wzHm{sU~!UEFz(|5aO&oe0-a{Ur_MoEGhN_$AXII7{W00=I>2)z3BVq(+qgRG z2n%DYLjrW39}ldcN}H#Q@V+n<0IF-O48$VpwDwwO^I41n!c*kJ6I?7;S`M?E)as(T5daSr=r2;t;5v_U23;Q^U zX1g4&1JlMEfd%qlAb8vg#WQf986gq`!@_>tVn7?fi5~~naRO`ccQFkb3)fgmggQBK z!G_)@PzjH(B14xqq!DIo%B9J>AL@tr1 zSd9v`Q=GJn!a}LtF;bxJw3v;KuD&vW6y7i~QRZUPTJ^k$C=O|e&|v&w1+QS^)>YIU z(mA9+n2bQ2mb_n_5ul-$cw~X;>m@Y8E4=4Hp)PQ)ix%b)D=(Y^o+{gu#+2K4^@8tA z-}x|66_CD;C2%aXcs_Z@*!$>@20UMt6TzxNrpjSAlt)+Z`^_Q_P{GZP=^^hIdD)|U zFib&8o4KyipLktY;|X-u6a!W3ARgTJlo`q3&K3{GX#F+kBR>BC{2%y;iT8@5c<%;Z z4qq8kP5fYq+T#UgaUiE=HH4;?dBYFK<2Y+U-fMiZ9XiEok@IjWyd3W-6R>xJlSAh$ zsmb0z8hBxkX!V-l1kOX}ezKjf6BP}IrxlQQ-YBO7Hq`v(B@G;=FmG?!nkSwIA1Czx z0L?Fc&hU?S&UgO+hH!4=Y&4m?rnq@93E{wd&7BD38f{%eW7){@dO&}3L#R7x2b1@KXbIi%3Zv!L!V{Qe? zv#LUDeBj`-cDLaBz|epbwcv;Eh8;Vk&KVj^E`uQkssT&huF z=O_MmyeTPsxB)pj_{f*5F!{($+*BI89`fRvhvN{1fIRl*(pvC!od^f%jv@NuS66oH z83DWilpde?h5{K-R({z*gJrAl%*obUxv%=gEtZ8-#ujLoPX2NuvYU$gb#bR=Wjs+eAiRJv_L7Nua_RS+4UEVbm?6;D9`M{4_^5I0# z(L4LVv=P!gn;S5jWdHa zy^M&T9`Knys5<${R3y7!b@6~i4+CNE$KEbAmwfZb&Kq#P>BstEXgApK7@-a~6*&Gd z5kAJvVAu+Ga=r52DPNsphKRoL;0G8G)9~*Q=-tqOv{tvw4dA9Ote1G_) z_x}LBXFoZ)qfS12pF(qMzu<1Zd6P1 zVyahfcnjEP9?a2}j*F7y1ak9pwZOYP_noHPgU~!<9ylM585JJ&>mH6nk2z!>HSaux zI>8RqFBtp)LwJ*uz~>^Jl5Vl2Cy4c&Kz9kLkS;5D-ulCk0RCP#heo^FF}Y`nV_=@M zzM&O!+}=qB*lZVx>j+R?9!I=RGkT1G7OMKa6@pc65Bd)@X9PR%cUr zs^Iv~0MHXRO2ygx=E7OChwCVamtOVH5ipAk+A*SC`c?IPzoL$@z z!yo+TzyAP({{WV8i&g&s&i9)%Wa}wF4+dA45)~M{;fM(2J>%)7ae_wV*7Lu3a^(w+ zE`Rb}kioWW^MT)tNp6XCfl6<@fEIWM^MDcAh!wY~fPjOnb$Hy?OKLBUuwB3JG$zB0 zMY?WTtWxcNj4NPxuUJZwoY|}eFr(CQAXOie6h2Sq18EsafGqCmxT3v5Ad}8JkiJN% zh^9VGxBmc`NGi@cm`1J!#NS_7yKe`F7%41J-C^q()4mgDj4~>bdGUnVvqiUlKNyza zzT^FI0!-~^#=5}aJ2$uQkU%1x&HBIz5QJJ4d}gTT40dhUB)BjJP#HjmCll4zKyiwt&L(h^jRd-x!eE1^dcs zA=V))wde&=Z-B4=0F-xf^Wzr{3EOT}+y%MG zg#u49;EW`B1h|k7i0;fFc(joX%n&CJBd?dNayMRF4(n$G)@^vJz&S#%VBs56D5Uty)C;m=U=j{EFf@X~ ztGCgDORyoM@7^#bL9Xx2#HR(5o_N4uf+}(A)*eU1(SAIh^QDV*$NSDr;7W(GyyCin zAcLUqEe?W39^UdOPhG!QxY7ZEd0ajLT_(Rdc2}jtM4(d@-y7ps4v8#EiQV&(iE-Se z)$@)7)ICOw3BBmvK45D90Ib~aStm2G(q3deS%B>t=%hGOhRHPV9ceTZPYqrxxn;#1 z;ShsKICz(s@6IOKoPh@q@M7A*$p?*b))J_e7Ck8PZ|0dsG>|qMO-)X*x+in2+_<{| zN+jop3|h3yUyL3kfc-Gx0L`r<*Xf9@B(*h~Nco}Dube~$xU{{Wy6#}Q%fb&3dvJ#&S7?kypG=DuYo2?-JE)*f&TbDX2G{2Uemgf@Aprr!{qTttwhNl- z2V36v_{vh3Kyvx_hd}u|zur$ntmgIbVndoFCmS6e_;JvIX0R`5zgbe!d!h%Z>jBkl zh;d%XbNu5MH9Bc&Hg0~n1R#ZOYD${2!}E;F#WkSRIQNxRQDi!o$5X~Z6al*qN&H-3 zM^uL6x$oz!bws?G*Y7&S*Fa1bbngXfL$njD7|1Z7FJmi<;7;e8;}x#SSC3l6EMsas zJ}|)!>(YJx*%nNiouA%WUDu*(IH$I*CXSw2mZW;;BSa4z;6;BV4%( z6c?M;6T45GUF&{wfZPYm!uiDkrv7lC^@Xwl&LFQ1Q3Nn`@3WS%)Gq_0);dRKwY*5^ zS+?>L391XuAwnH^aQy&aio6t7;0hXI!r^R%aJu`+xgIwR22+$Ha|AS`1EYWLaojMm zMxH20Ax-9f$AEKzadY z2;oH0t_gt(Y#~AXOgwlhblUghC^YGHtWMaLHs3cjP@zXFu=?-b00mu8YrbAR^Q@(y zab2u^VjNJes{HldUcis;7ViF;RaRBtZ#Dv(K-b@_5gt}&S(N8IA(`(1dD@2k}CfII2trGaK21TAn!?ju^GsljlVe^0bh8lt&)qQ z(TYtMFAtn=K`=NUUl<8MzJI*dyLmv-h$JAMbsrd}O-d`GVz@vXI`@{F=#b+mT`Pc) zHrNHlCs@Kn8l4#+&_9epqz;cJYX&MVB1FWL%QLMXH^U?eriz)ObE0*Y0IqA+1|Ynu z+<{#V4g~K9lnc+!b~|~7Q+Av+-YA3x5|uvi`z1FpL1gXK-nEG$HmLJ>{qfaEY^thz z>k6da?IZHy2;?_k{$rp4dmlKNkdAD^X?^*^iSp66G->I)MXEjER{}hoU_3hUl^CLjJ?8KjVA#!uO0KGs$znWX#DqL6vb>&B#U?_4wtcXuO_`!F!+S=pgq&(n+ z4L-3b;PKBn5h_IW?=3-mOjv@2*uJk>q*Qd=Tcrsb#sg}n4)Ew5b=&vjBqD;yN&f&c z$Xa^wi9|5n;fO@Y&ak7+~T_ze9_^z>F0HWToO=m|l|C{_c@k{+dd-L<{(ayetb&WLSXkLjm5{Yn zt2y616fEMG|+KXfwZz2DL_*;*;VeruMuBa0Z4S*D5Z-+%gF0 zX)qdWd~YPVSyK!;mDlrtAw0x*`0qD_J*2`)z>`NNF`6`C!{-E=JXn00w@INHuZ%GW zZoObDYv-Hy9#02<6!Ad%`GB(eaH1!lIYhoMIKU-vZ{-1CZ+|kpWr4e)tMST?zr|>Sp^_l0A9B z$y0~(n5l|7Iro*@YUy7VW}s?;EBWNapbrXoz@bM+PaR~IfO+%%;?*i$p@i2nx4fR7 zoKO`=nx=PDI2Vtcb(HIr{{Zeb0yG|Q<2n$<5PVZj;j8K78M7ScgAQ< zBvKav09_F`a5bICxEhe#REJu?2WrypePF<-YsMDZj(uQjk?b)7n$&OwHumvfjM6wb zlGyooGi0glZbaK&k67=@7_TW>oMwowZ1wSrMLx_yp#B9OiQ-6#y03xs~z$zK4Zy?&E!-BDUOwt0zwKm{*73-Ol5C>d-*wjD=EZ0N{ z?DH_K+H`u&gQ$QREGP_76Ad6h9c%Yrcq4Z7-5p^_FJ<9;;2jX~PV$yl((%>~(9ycT z9&*Fk%e3G=u}+V1W-th16M?{fTtd=lOpqrEChiucD`CbYULfZ!sOS$EvP)>o?19Dy zVZyVFgl8nXFfXA3ay@#%Ij2Ty2YOMtl)$8hr2hbz!8<9j8F(;4{-JzfwJ|BZJpOU< z3|kf6LTgd3b(#PNHn#G=7%f(}&fYxCQettYVnP^lzm4DmotfSuQ%5&^VbXy!$@7C- z9W#fo2hy8okIAy@&5qjZ~leo`@x}pJz$k=@s()DJ8}|h*y91|Ew?HI zDaIff%fkzCd|@^F_WQD=AF0;$Wl z9esoab{VO%Sq3_Qk3K!&4N4w(Z~LqPy-SqdG4~)LfJ10D3zgQ@rQG@VfFbP-1N*=x zA{B=|uUQUSH@+MwrCD??uL&t$&Na!DXH zc=*Fk*TKoZ8ND=F(I1=;F^Wfivtu*w&QMEIO-vPYFk|?@)Gi!Y@@`)v(&3>1BjCQU z7CUzD5*H{G(er|k>hY)6LTPN;hlG4(wXm1Q4am%2L$ z)^+~?>x>Y1!FUs^n-IdLA>KM>{xC|Ccyho}^Gz7ir~nvhE{Q>>G|V>R7xsMYa-BZr<`L}&Je@_0vb;6$~(;=uCWN)^!M|W zXn^D63Wg4cZUq%h+0VQc7O3pO832|O@9P!VFa8W`qUf*h1qeyWLz;~TOSSFB9c8f} z%MGgmrMK%LyEj;8gur@)h9oyIqtp`6Cpw?}$w*DcmDz{&iiY{%^_vj^O&6?AqNyFD z92A~p#z6>eV$_X{$1&t^{Gfu=4Y|mrug*Kx6Y%R4tKQ~rvXEC9QowV>-dUg%&I#d1 z<3<$_znwpLA=nE!em=6#1B(OSY)~aMsdd?lYC@cgh6U5k6*&(lA6Nj1z@N?s4Rx(+ zHS&b=^x_;KfV}*8!3QB}r+=^3AgXI2fDBY!D?amNEgDg*(PBPabV9b4bCW8Ky|R<8 z+p`7=qEo?w$`2uq{xCp|HsW`8TP=UP!jdS_&SM0Nc*R1{JaXZ{!RrKpZz0o=CDp*`D4rMR_`;Uc(Yd98=)Nn~Kmdr4-*fK_Z(6+mT!tgEsL6yEMd6${b6!g-WRSOhjCML)!o1*`M_Sc*GFiZuI(@k8 zpj%*kc<&y$EC}Pw#Zy{DSxhTBR*2k)146ZsR5@@l6gFzDCnLj@k=PqQOcT3>S?-4a z02re*nybm?VgeUuvHtOjft%Y|p~Y;PlOaT%McUCEic?CrSOFAzY}OZ2YqyM+KnXSq z{#il04y~KkOJ)?V4>&Pw4U8n}3uhnBJ6BE3H18rHKxo24Lho-FP>z*tTt?h=IG#Ag z0ldT2$w!L=Vq}qlx>J)X1ZK3~;p+nNXFk3$?$OzR>82n7*Sx*DPT%htFpfdj#t|LY zhYO&Ww;w8XmqjMMVn(*8T(-b!F;WBB!Rsct#!ad?#0`Jty>B5y2iO63_0J$YcztB! zQ|l~^@-pxu8h?y_(jW_M@9QFscJYS_FLKZC9ioF|+xfwXu<9(B3aHUx85YpvbM9p$cC8od1QbeGad|PS zH&JyDj_?pkfov1cpBNc7Nk@13z^rlD-+^SxlMD(LbYOysRn<>ex{8>?wYv~plMPT5?_W4r1l_y26>aQ}ZX|R=w+!e5I$t?LX_tQcz}IJ=v(5|$ zGz9ti!ChgXZz`;OU&qcwkZ&K-ahtHfNl2OxVr7p7@*PBM_lBqi;RWBuK@-7n9st!F z`~9<`Lv4rA&M}}@wy*umVz>kRWn>Gvqt(sAppI2dc)0KogcJ2~?eExu}6+_|2rp4BzJqVi)pbq2y^Yf>f|YGO(t1*W|=u4EAQ9GovBscyXn& z{tTT=Mqs)*$JPv!?ZgVjdT^Z|fWh(V}>%W|ad0i2ZPD2_-yZPy5}J0>#b!;R|BWtr{g)U1xK#1)py?sd_24B zCgpw z?7&q6lrf6X2rr$yVpt_~C7%-uT2}+Y<0wMi;Fc(M>nI=s?M?ajlpvtd-XX}0>k)>h zX_p4a5#C!egXU<;@LjX`98g(0H#oPk`iX@?$~~rGbcqBZ-%q z5RXSa;t-K*W&6UNPu11 z(~6R)n$0#Jd0?a^*U)7dcoXzuY=Ysj`ND_=oxeEm^1UvAZs9T$XxdSylsx&kV_G4K z^}pl1CL^^szZuOQ;PT=c&=jXNkkF%9Ffo(Z@q5B}7$r7ZddV@LN+ugtWP@eiu^|<2VM{367X*A`($`8<9%T{2*on`xb~sYrNfnQ6{K@7 zTwqj!u@<%aOa<40q7S^`3F#mnbDIq42XB^O&g5{Q?c^9phJCl1rP5n45o#zeasHLl1uuy;V z?*+mKMhZ3#qi#KleM#eZf(Zy6z43=GLApo7iknmh;5_TTInC>&n~d=|%2tzbj%(6& zE?#INjr-ngiZ&w;Sx(K~3-)yVw|`1|Juz_`+$Og&;sK%wAy`OTmQy1ifs(H-uxHnU1J-cuWdFxO2h zKR*``N^*@46AM8`?MEAVnxjGFoUgpHLtj&;HcH^oy=dwEFi&din*HYLOap449k>>- z)GZo__nI(oRvzb%c_zIY3f%zidDd~R5d^1_jlA*3BSfZ`;bF(dC_>5` zm!r-ZWqhJA;=`YK#21`&@z<01pMo#0X^UK+-R1X&XGuj@AH zgHV^C?e~fZsFt1ioqS=pgqOcF#$7m@5P8^4HKw|q-ya^ZCI#4O`N*YBhQ9j4x2&rlt`E!><^XfQNVUnhjeMr1OR7ovq+Q z2arvl8Nh)Xtaj5)ec_>5#G?4h4ajadk?VVB1C0n?bC1^?!UBIrDG-;=QoLYnoO#0? zBl9pzhh7&Fg6GW0B5d3K?;R1SYIoqxj5y?PB7xvL$_2FkFl$KOW}IFSOSks-iptj$ z1J^RrKPT;sl@K}S>jncConyO{yT||}+8sRHP3<0hJ?69_&~u4vY}`flnv5R+U-!l) z(!};mUY5ZMxTC-!Ougdj1lnJL^~N$7dnjBXfM9Wa+@&h*ZuuSXVhXQFRoj|gd-07@ zg=Fu=d&$^IW!*G?(m7n@RLvoB;iG8NG6jW0u51 z1QZ@#aaFY<+%ryr0UCUUG)th`{%|DPiZ?sKzak4?+Zat3xW^&6NQhF4*>leQ<(Pjr zeM#TWZ!1klIVyeY-V;2oz#Ru~&Ily7A#caLY=%T4*{W#=s$8_Gp-}nPVf(U9`3m1sWG2i-s9|kw>cVt)9PWS|k9y}3Kq4*g@q$@zX~j9a#|LE`5N`b7+aUI@ zZ~V%viwgYwV=I8b7+oM6rj+dI%876+{{ZC8*Fm9M@77U)AROz|$tWtj9i4h6C<4bf ztP@s&ct4z11y$L&ZvgBFqm#~Pf{quQ1w2|N$LQ}6@x$-&fB?}%tTSMUVjVb1kKkm6 zkfYB_=M&DGpYC#OjYpxH1}_L2ACOId>kAho<|Tol5ud0%g4M(06JW>7Z{|)*iS-a!`&7WnDM>2bX|-P)nUMZcn*5QN{L=)#{0xet14-xCi}wF z!c7O+a^ypZmFJ(lD?mhT7t@^5jVo**6Pxb{r2+>hpRdM6Xc0s79R2WP<*0}b{CWPd z3TSs(<>30qR3&ZT>Iw&kd8{B^@^Gce15e))XwZmWH|v~bL8P{iEns4aC9BDSRaJ<= zJ(&;{#1`{jNA%Vm3J`ku`SXY>^E5Z#&JN@T=Zut9%0sM#Dnmm_H}Omp2q$+%ZN4$+ z6%u;Zk!$Cr)_pfCRbF?4EhnIt~bQ2Mhf%D@Swhm-#RnZj1_ zC)is3VW5=Jf$^L@^ag`OTU>g^4~tL(bN0?^vY@(Y-&dSe+8F~6Z+&x+AwgRmr>DG_ zNTai4u7D;6uDMDFG{Qw0~@2A>;w~4Pw%KCY&AZ z{9s_CDm9OS^tcae&R7W0B5|xXlZbd@rB4@(+uZENs-CyrBbyMMXC%kZUyPtcFCsGp zD%fEB7ZqZAuC;(r6}x8+(Kr}DHgwJT)>dJZq!)v?18@SPqcL$+&~)+W#0cMz)yR-N zn0?|zZdK0d9~rJkuxu_4)+2p$E$f~!&Vy1#=hGSwLWGOqO@1&W^t~YLJ^uiBhVX`> z;sip zSzpn^-0_FwAgE17y~=9gzMY33ID``PVTkDhI{BFGCU)@2Pjec@LML^ZL1+;3=L(%P z(!~D&Zv$kngiZ{f1XxiXxa7zx3PfKW!uN#KdeU5{oVIfl?i*Nfj-XsV?hi*V21T_LA@7?A3u0ZLwG z{;ogF_Ec+4@8>2BDaf=RCBcYDVq%`KG{Ldkjx&pcY7l%I{qQ9Vv26Jad;q#|z2fKr zM%D0m%?Ug_smi~%7zfH7={kwwzi@X{&I2(Xu1z}nF%M4rPNEqok!m;|r zPa8dJ1>xt$rZJ04!;AqdDaHb;s98gJL8IsI8yZTfKTvTbDFo?$au8Xk1pV$)8CXUy zv(8*2AfK1KEre15$5Z;jT?x@Po*Xq)2KfBogGdHXr``b(Em1Zf@myn9FCq9dOsWT+ zez|{jk}Tf5elYF!!uHvD`otw@5=M>2e)tJcMg<$cc%6T!PYSutrySCXORd*`wjHEe z>uk_CK5(i6KK}r0Vd{l|Z->UeY<0a7*K)^~obR47xa}to=MAqIfHLvFygIf+R)GV| z-T+xPrC*Fl2SB6-->(=cv0}U&Ttqjd^WInBV01V!u47rjk=uSHl6D<2)kWF*StY-x2yVT?-~bq%^V%?B59^t zSc6iYZa4;F95?#)k0mG}gyq**yh)S1)jVR^Jp?kAk{9OV0{F#5N;c1&XlkJ!$-|VQ zD^VHq>%6Th*wt|`uJe9}oFFmzHTmi9eP9hB;@En~9)p#{@a+9D4TK>jJ(z~l)<4q) zR1oYD_mlyGb~nR6cQ=bed{@TYY>OJZVhbwP?vIS5)K%A%zAzdw*wcTX+bK(zB^(+p zOXR+CgtBD~yXxmO0N`zTeBxcCPJ9dnJ}s{D_G)d@5kqsea+HZVJIBvoI5sK<`R4*P z*Vb4HxLajcOJA-TQ=k|euvm7uumN_=Kxp*15T&3;S!W<3CWqDV_9d_T!|d%5C<3*mv4AF$4nG; zwYcKqn#h22$&DsHK&fG08`don9rO{!PZoF$OFA}d&!B;PX^U*H^Hm~;Q;XEl|pT!dD2HHjJn^hfPB@Xl9TNinnQ;Na2osMAr*SfOdTlv!pSBFQBA)0y zmkD1=wd6HD;oido zy+qpIjbi}bpejq{*1qw;MhUztXnOM~YG4SyP&5{4+eSMv1gyns!;?$ClOz@(Fl7#t z&wHA2ddf3L$>*P*GDLK20PlyZ${D>9S45X_67hwUoik5W!>i`{!a&e*u-rNqj6`~{ z(;7$4H$WvAe9t<>6)2>@-nL`K~xGYpKM8sRO{t<45ZM4clf|o z>?ad%c)J#Sr<`PsJRpuF*)=!T3+ndW{+OWVy|~Ba$sw(gl=T3cpbv6-%q<;IJTz&^2ByTUpU+w@_O z*2>~$)pJM_zIgrc7q>r@KJdJGNN5gjT2us1nLqoSK}0XWa3)(0QQbJ2^OAwun3i!2 zy4Vc`(b|7FYVe}o(XsOfED-2ct6FsYV3g=^0Cr!UoaMv3BBRdHDZw3JQSz?S<9c22 zelZ0H(W#*?4(;OTOaTd!R-4$ow?6ZbiACb&G!Kh$P>WDS){hqwGh{n0>@I}T_j8z; zJcZA5&L$uuNn7^Sp7DlIQbXiwJKsy=3Y-B@QqqfRa0fndI)aLUv}h`QVJWzfHWgyu z1;>ja0caatARc$|te`1*U0{{>s9m2pg23`q;~3$}c}y)B+B{A>F(MwC-<@XwQOz4T z*Q`Par-e7`4}hYEh1Ay$cQl~W@#lC=q#Gx1A1qvRY9&{y{&6s@2%$lBuTxy>7VB{8 z8{xjQa6|-@sw!sGnwV#9^>;fw9P7b?#@wOB1PXp>@VJ?h#-YgS>s|Q5l+KmqcI_vZ z#!66QU^?rpBW?m%?XjW!XCOr9o!-1)WI;oKK0NuyqLHK{t#QZa5^Vq|bd!HGHjvfa zPlql>5Q0H?9}ldl1eSGOa$6RQ&*05OU{Lsb^x_JVH12zF)o~1;9NM6PGGiGlc&TaQonpIF&2#L>av+YU*~?`u zDr5e*PQY`-82yYCC_gyRPC6}3{jdjoLVDCQl|rTAOaV!Ia$vKn36}=skA^ycu{K>~ zHAvkx^_@pa&e#G7NUrCz-UvK&j#pCnX_W;z9pIo`;kOR8LLfTrxPpb@FX5hJT)H^n zA-wW`4s!}>dH6cODJZZi`g+RVD_}Q&c>|FS0ChaL&VgYRJzU=)jqCQE{9?+1ttk7} zZsycue3Pt7gr|Hq*Z080V0M=*HF?JAk7Br{tM!0E1=v&_z2`7xWcgo*9EVvsacx!T zJ{)}IFW{oPNy+aFfQBB^x7W@fuuvHjTW_4;c%u6q_cQDr-vedz|mmkeBy5~Zw+y-`Q8f28h3ct#vnj(z3;4r zjSyY~Sxu1G?fJ?C4TP(l>7{*2Zl(cbn}Kz$U0iBqY?RGE9&rFDf&@6p(5s$-d)8M8 z0-oD++5^h6fIgB@Dkvd7?*3M=wnJbpER=X1~VWt;s zgYm|7#V2Z;_?|GHPZC?^-u2EmsTe#D80-Y96;6m7-$wjl3R`u-zWwB&=qE%7ZRFS9 zTLmDt4{Ylj;i$08laaSMq#`(XPQY4YXBQ!2PkW0MYP(kKY;2sj+1F>nvP|l!y?YM>$J;)R1ws#Q+Y}on4h@e(ZRQH7>isT5=^wGxg zLARWtHZWdSk2=B#s#^Fng%~re*NCv6LE-n0f|wG&C%t3;0C}wTpE|hh03xZH4PkTT zHdle$lYnWA-uynW^HK*i{xH(fz2d(7%Hl|gz<1%s*(VNE>fpi(M^JAh$_Vg}@5TlZ z5+2Tf?oUESH`MRv0tKKBOVa@14IMr*M!>V_IDdR1)NrT7g}wN|3A%s>H0K{rFezy5 zZi629nGj$Ydw8?YI^GHJFe)y_?}LRgz&B7qHNMVqUG~btUdzUltiB!$(n6PC4lHU) z>JN9mo(?pme1^`ud2$|ZB{f1;i)4uL>BLALTeR%?!i^HRDzr|Wcjv}$1ePeYZGgn5 z56%I+a*)1y*m(W$M%@B*5$Jh;7?n1NVseAe*^yXmuss*N4GJtSoWl|zP;g04Zuc<) zQI8_zGxz%WV>mZlO&UhjqmwUd=521}o9eR|Iki!UR8oKTfhdNBY3(!FAW zJ4fiovleNB;DPxKzgQb>XPofz@c76Ly3pRSj>1WYtvHGuHm3y@S4FR^Xshg8^^Lj( zLrr$x@iowVKZV@QBGYl*b>!gshfc<5Is*SbO9O-o*LY)i6tJYj%|;Gdjy007qaw|L3`eYotM zQ=9={1xXiKyy=+fRpW1rc8I)tT%%%+uCGdWkhjbQ^D*AWiU@R^;4c**EaCQIbpWDE zbCA7;rYT4@or&HBG*jd~YxTzjkS*{i{Ffa7lmMrS=j8lgt1zWSi)Uch6O4W8*5ki! zg}vt4yt#yfu+q-)9-#u+d9DQ2@soC>-W=Kv=<}@C1RXwAZA-ZRajd@DdXBg2Qz)2( z!9!@EYh3=>bSNTk157njm%I%FQb7mV!X7ZkX(u=lr=SVO6oC*B-|8*XfI%cIFU@fr z0SJN7cHbOby<-d*$PnB=tO6@p6sHP2ai!Da2Lq!ziU4>$W4%g-WjT-50uZ`aKtp%% zV?hN6s%Jirj<5i*b!6;(gWHnQY@-3;*}u*O(rt!~5$xl5W8oo_$9R!o0MHEEf4pQJ zqpUve=2C{`AdjDH)G=YUrt8UvbRzs;=LC>71+2Yut>LB0U2Me(8ww|z#&!a(oMKcX zYDT=7MV}Ic{aK-{T~vP1 zdO9#h6q`I}lqmB&!u-ZF>9y{Ojh?J)2KW%<8U3@fSgbz@s z(VjV^1$s-Q^MHUnH)GS*4T>e?=O-odNBqju$+mC0c*KXa2}$&8tbYSqAO^H|h!k#! zf*y&A(6kf>!r&kQ1EA_0>}%AYwGH@ezUwFX)k3;7xvb}@ERq%1+c+)vb zwb)HKNf4KS4A2wTcri>=q2Vn~+TVCKPbUg>u58l zxsI=S2)>*rYV=I(txbmhaRd(F70U7fWa|V9p5k)#>mUf1aNna6=pt;{EBAg0h~|N( zzl=RfNIl23#9W&!dj;xtG{|TXWH=R9y_0xAwE|&Je^@p&h=a;K^MtkZ4?dHu1?&PR z6Tf(9N`xw3d`s?|`HH#_eIMa)rSo_Lw3!&PYti?LXpGXN2*yb-=U>&HCgNlY3a^Z3Fs z3a&Km7I@xWakaY-Z*KA7YEf3Vx0BvgtvnEKXxoqr3O#-qCiM2~ctP!f04Q}jFK1Z* z2r70ZM)dK3?2tf3)gOPpN*bJtI;ZK10AiZ`+=|;EW%zl-;jhe3Bfc=R1A>J-~wn8s0fI!uD~3Veoj$Gd9Dg-NOO~ zu?Cw>laE;{_{1*qn{2-;^@J**2{!SK%{HA=F4U0Cu|0YqC`JN&%73$vq^rg<`fJxjZ<~+#L4!D zSNk~%w??+-{$hD{fQ?jh$PwrajloJh{ZYY#QnykM|>plE$Pp70Y$4YPP; zQCh1I1A1nkFD5b_kpya}Z^r)dEwrNTUE$W4L@$gHVI75WH_%P@eP;uL3HF9O<*2-> zZjlE9n*p#M9Ngxle?#6$LQ&(F{njh0XewRkJpAFUQ`+{PePyWa#V@VmjRb89_LfSvKxX=P1Nn4PK4pa1wIi{_$3!TO7FIAr)Pp z?lDXY8l%5hcP%NSwjtFlqcIZj6><&KuE~7-;RGXP#ZhZ?ANLcwqud-}(gN)#);kz{ zjxn@C=@%$Vru1;hn0KE|Fyl?<^N!LK{jNaD3Ro|Z(VW<%O zsjf0bT7U%RP58x(8*HiC>AyHOqK*RzvwwNB`b8_t%KO#@y6B--f`>lvCIZCTop~Gv zW_U+t`FD#}1&s(XONL+^0r<@P!U-nT|W=QcJWfS{?{x4?0aQcSAH*M0cHQk@Kr*Tci_6Ku4ErbHL|Vyf+VO*!8f<5k4pWTh zZX<`sA&d6J0TIxFUKhxBgs*_6_c~qS0sQxGWczYiELF1YMO%1pTvi_i@U2TKmVrUWC!?r#~>nk_1J?+x@B0?i>2$B7^~H%lqJg<8}w)VX@2X?(L%ipwd`k$S_Xh7qTg?|o}6npmh$J@x!&g|15SX-9*c5$;B7hKW02dV!+r zL$ACHFNwqFE65_D4}N`7#}u-V{s;gQ-f}J|D7!-P_cDPbg9<0koY``OMQ;*o#~Bii z3bT_NL+JcDeqfI^?LT>}Av6?KSI4YGfhOHxZasi&qYym~!g_~!A<(Nr9Q>JnLxI)C zX%B0(K5{7})%A!Psl|tI5!vECGU>f)9!wes6NIlUaeZpif(|ijHIR95ov+X`=VQZ|371-3{_N%NmEVuaUvj0vku=XN(lXTMC+u z{V`Y@y>WhbkA(yav)P3K_d$6(`CPGN+K&z5PUc$&G$DQoa1eHEN*$iE%@G3Ek4*0f zL8%6<@sN$7i}5jgrUR1#e9W>Lc;$d*_x!P2d~Qo zXdZ>Xs~i~{J2ceXF7OC~fp-+{4+|ey(}3KA8RO?v6nXp?r z*Sr9XG!7p=v23pc-u>c16jk!i5;SbTIE%qcw7*ys5Z-awSGoLP4=4ggZ|~j!8&uJ} z7pO!QzVU(%L|QM$PBa_z;qYe<@{B><@I52mZp}6P7znQ?ePbh`!R#Ly5sRc3c@c!%+om2i9&fZq4x=LsZ0 zH%08;MHIM+57FBk?o@2JNZCb6`~f@$ow@ z^J76&m*F(tuNc6rq{{RMtO=r7t3lta2o-J!azrE}O7*`PWl~%LwYQI4;z}s8pCI#$ zOQWOP=4E1-Dto-VafDftz6~$OKJe|>Dv!n*P|)CSj8r0ns2>9iNi@;{(VLpI8^t|! zjZi5YAoDx;$Sg4qwsFP#GY~;!#`DFTW5Yn3CyXF{5BUADtECpHb`QKmp)ppbN&$CI z^f4-wLwHdjcN>G<0dStNbhAbk2D*cHucrreo40sdbPK*yDC@ts0SY$U;K_<9&YPTu zoi^Me8N~}eGE$uTxFRz4F6XR7SFGipaJYpj;T&Q%6U^Xh2+;okSP)bV!$&m+r~?xf z?w%xfb%-LPHOl+SJS|saugu3gT@VGDFz6qL;Pf<0+h60E>uCAi`e#Hu>n@9ddC{FyesFy zn*<635c<=GnXom{C-cVhRV&DY5Oni`APysx0mAb)mJ$iKq$-BP-x+)eB_Kvc+)ZCuP|&JJLU9H>^@PMsCN~jy!l;|ZPzBdEAB@%lE+0@YJDg%4 zJ(*rD)-NioqVsm1_l+>B=t-$O`1r~}CUh?%m_o`3HUYMh{ovRl5>8IIIq>0ej6~0u zD~iICLZIQ(hsx?=-B3-i`8YP-gAp`0qGkp~9OJ;TFWguzW;fwO)1ruBva7%3Ot zAPT~U&+{>Y5V%^=^6+2<-60P%%D4mx5d(OwpqopUIX|3*XhTz5n9@B6@sH1o%Y*9( zYNcYoS+?5jG*5UCg;bATKC^C1f}G4DTfY1`G_Ht?G;8<9Jkg}?UZ+2JUF>JmaAjz#Y#yKtiXKdCiG-@A<*Dk|wih8Wpkl%77D%w*`%bo^^%UE~4?{ zBL_3CF%3z1!gie)XkTmA5DrpM{{Xpm2sutNq8VAf&&IGg5O&yQg0(gcd&va|^5uQK z;PCg}hwqEA28;vKfyt^Nt^fdXIh)>HfG0rljUk(agSzO+?loFJ+kpdRBvI1ujm`<>b68UYo)ksRO(c|L=biyPY!ROK%IPTvVA%oWc0KRg-1>kEnPsb@={%bXop^)?k6Y{yOrUHN;jddFpU7iZ@HY>>6LOYv@KltI}wrPJpKG5x@u zYY<_rtFe3-+9HBsYR(s<0Tp!i4@z!fHGaaeQ5&e1&n4x`z%AGtz7Y4$y<=+Ts8iX= z$2iOlA>YFTs5*@d1oKmm3}D9r!Qnq^&NPZvs>9NrOlVEO6i+ZdH@x3v!b|bqLEg4; ze5BrUC$+%5!+^j-At(_(@aoV&bTr>iYgnBoIm-_0&BLYcV##`M7_Ds{VDW>v`Fv!n zP$%+Z5{nObAfQ63R5&uE4ve`2=yTspEfgucqxFV%rP4>kf_e)~jNvh~NRFN{6l2B? zf~Su1s2>L`D@EANn8|m!3&)(*khVPI2L}n^@M9RMQN+WAXoF?){{R>%4+^Ez(0K1D z($2`4IwB_HFYS;F4^J})wOdXH2Zz?OXM}rkQaOvG)-0zx*ctE7#sb`wl|$gfAciUq z^m+97#DD_J)y*t9?qGr5Z5j6Aj-}gj`Y_DEh=&7QWp|VaQGMfkSqLAdM{#(3;F{CA z#D`!Y_;4A@u;GO;ZcKJABPPhV&J$zVF+!Xn4i<9z=OCait&q_<-v$$)5oQucuA0XL zE#C*;GswExoHq!G5;{)~ToN2G{AQ(`l!zK2<<{`qDuV{o&Ke|np#=Lye3Ye!}VC=sP8QlohO81G8JG;fimJN#j19>*+*+-XbiH3bsq za)K>L<9a}%716~F7*t#id2I(P%DB8klDHZkk+$`Z0mPLY%fCOqZaL>c4Qb?DM$=Ly z_pICyXy0RAMmT`vyAIrIkdPn`S#(3Eyl902s(gRU2zm6Y?a7IvrUS~+>o*J)4c*LM zMRv3v#}Uvz-;97Q*`gc;f$Arr&T>4#J=4l&l~77q2igwBME~SrT)IpaC>EKb#iHtA|40X}DvfW3N1Xj|2u zqPYxGCoP@t8w66fcMV~_JWNuRvMt3?Y3m@HSP3sPzr1k*qnEUl!=s$;SWzZAd5*O)7bcM zp}x0I)-`}_FVOD{lt*HHV+`U!-@y7e$DGt1Z60ML)Zco|%nG=tzpk-hhW#Exe=a9@ zunn0g^wYTCd&LH?3q!#3^XGWtSOUuXr&H?|hRU)skDktPIF1d$>^QubD$c3I|jKBR?U9&k`$4Tj6<@r_A?6ctDJ%2;Mdr(0~D{FoYtcq6d) zfD)5WD}kDEjfG2RKC%J}#2Z~Ao;t^ABAu|}IY8+O{<6b1p4i5)u7Hd0nT$jV^i1SU zLxta`ykM3Gc|F67Y|~DKo^aI|ke%=^FRVa=Z8sEb@HO_u4Q^0x47wX z^2cMwPN7Z>y!pVei{=%|l@=n7oLt=jJ00aP76Jx2Y2uD>Vi*?D@MBsgwcjpO(_GgW zRU?8Vu@G^aSwKMg$gmE-?kgdk8gQ*T6oq{;b#BaH4P2fa17J9_^kZqp>t85hNMtCB z>Nv|nxrD)Jx9bSNQrXLLbxG3qJbK2IA?cWa)-N~|ip1tOug*cT-8IHJ4@Z&40+3N! z-!FJ32Rj>R1J4-3cW1Z1&N{|f5kU*e9zEwF1ELpcl zjAb}giyPf}*{oN|O7pM&A6SOUqM@3tc$>yH2v?-@JNUpzQgS`r-_96-Os90?8!5E+}$@uk-qJ!v97|=1ByBP<1b%<8g)3Yu@yn?rgK0RZgltte@a5583stwiu z0JwAwcWrsY0HJ)QFu=O;A9+l#cyw`7rwZC7^_wm9TK$X=4~OdTKa4NYIN|H_l^3Is zZ}FFvf^&%}d>76E+7iCD{ou65b^KziNL7=Jffbnu9Xa0I-lYx$Uz}o$%jn<;0`^P| zJB&1l09%`x@^Sggka~Jwsw~A@8$E zguq7Ia-q~B9F55T07}CZ92esll5MN6j2W;Ir@brd5HAh!Iz3^43(H)5VC$r0vxc0Ra5C?EP z;PtRGZtmRAIIqy@X**2Zh7+5=_cm-R({5cyTzJC3-ze}5k;=$^!OL7A>r2XZakC8o zA_-0bZ@vz5XnV-iF89Jd@ig9$=UOKJ0Ea9os)iOn57Rdp0#`@9I6b}Kq6iBBWO*+4 zc=w6EXpNtJj~Twd0(6D+aWEEDUDq-^zc}v&x4`&b^OO=wSJc36y@j*kc*Da1zaSe| z#xNR^cpjXnph4t^W7&i@h*yi`&NjIEK4vRm4Ff&nb4pbSx}O-c#_hPo2OuoI@uVVy z*H-{I5Wu2)%Q^&zfA=@-W(C%qL`*hpfP;K1EC{lmGEp+L;6z7Cu;!v0Qhu0Rvx8ij z8loz?anL}pI>!qLdgED6DSU4bi4<>p`C_S@>iIB6MQq1>6KIAo0(u+3V3aj+E+OjR zDWTr8WDS}m)@+2Fir+>fRj#jI@CkY7u*QeSiHzzamT1j%!2qdyF$BH$3*lUqYk;S? zIevJ@aBH!c5gMLR=O2V^ApW_u@n(bT4MVZc2}Qm-#ZHQv3EFj>gziIc%Qoa+cxGyM zTfiKu`^dow;4*MSCJ6-)+#cTYdkF-A0vhwI1z=xH+SF^0IElTx%V~vX{{RjO5aG!} zL!f)b8B%~F#l(^$TQ!#6X$J9>3@QX69ELg!uL00zg&zVgBq0Q)In4!VV>O1-3c=bL z&_ZHMAlPvH1nqqiWXUNwzPz>BZE6$M}00Nn$JA4IHyg0z~n4sxat zUAoEwF4J$`KnS-;{9v>Jx};ye@r5As+mQt=dKq*Sy>MV20HbF6z(^a$Uw)=4aB`x* z9x}yXBkaJosmG`t{o`49mhtPXRjJuSc##O2VK2852wDpZH)nigy(BUp)Ye!#$ht7j zf(ZPA&siPAjO)Yu;i{;Lg7Sw>ND!sr$x0@TpIKyV)Wn%{d(=Iz9{zHI6&o1DqV8b< zVA!i(azJVM-a#84Q||&CA+&d(<<<^22ZqM#vAZm0MTFD4nRo` zb+5M_0;$3L;+My2N7;JylS|<5lYISW)Sx%viW7*W7rD-iNNxy&wu|d8Tc~q7#9)jx zA1j7@O-n&^u_jW27&{Xls~dejAM1&OU-e49#Qw3IA|SvNo-Cd&5hMjD`EPr{A;bqZiz$QRm0eLe1*t`R<%lVqk=yqwQ!xttgYPurpOMuu+X`|gT?^aHCoEAJI&y1qz z#BuE*jUXThJ7J$A5HI7#B_-MvS6yUGCG+_6i7+r= zUwJTyyV;#jZ0`iYOCWC$fDYjY!IW&qmY4C4Um8Jtn#XdRKG?T46rU*=uqNE6KIQ_~ zyT12}ZEdwOX{m+h1{&-fYkS^OeG_Yf(t!6fV(jajl06lO$oOXuebZUfJUD~M4PyFD!CX4qYnocBFpTAjQj zn(yloK2_r6phjx;#dLh$Fl&Qev5gw?7@ZOV%`f+oMOTLan@(RjLdq2|%CvN78KNEa za0{RX+b_l?TtI61pC29N`!d9rMzN6r0U+|>`^p3i+gH3(jvXYzt6Q?{G0+r%gg90+~uJCobBrh%i5joS&Zf)S0h$%~DklVkDi&S3_4-enGBv5RP zb|-nSfC+=(ey_$D@zPcDKlo*kE0Hyn^D&0eSf{ruCfsOx(kM2>a&f2YAHM(+d>;vN zd7_LjBg6B5oJOiaD((4v;AJR`Gl@dDDP4Z-=M67C;rF>OB~Nwjml) zUHzFZCW!BU=LgzWQ8X{Ed%#O_hR@DWH#8Qfw-K-`uKqBzHQ>hivnm6J+q~EoXb+E^ zlu!ySLzZU7$w6yRIFhZ24F`$YjLL{W0%}ZO0RjY=>4^-PoC2&^xZWUzD>U_7G`mfh z`fJ8(6sMicN&yi%#YkyWemclc3L0qo%8@WudVFJ%)+P(h?*J;m3%svn(_#DT4!{R# z(~gA+#u5}az2U{DTL>7-2sPjJ#6aTfc*Xd2Ri79jpm7UaVbbUxM-4BIyUmFvyy77Z zUpPG^9L%iL0Ni`Y4%-Jmcv&K9Hw$nSa;~3v5)mI6G!}J$VSwfHoT)Gyh%~KWMyk7B zFivsnqp}{u4bkUzk12J8ARQRs>AAFR*0W={o#8DA;KfZpV?pl{S^~74^@xhraE-nU zws?;6kajBQFnMThdC2tGoCaLpE$AN9~rNV z+68(pvCAQ6Z&(M61A>QI!m#d4Ni6N1w}6AbQ$pe2vJ-cC&X_1C?9RdlSqQZ}zMSEa zUfO%bk`!%)t_!=buUJj*RGjJP_c+LOUmXZ`^}0Vl|7RnfJOPod^97D;4%%lG9yqrd^ltSg3t4U@V@xQqytq)0SzTl z?7mE~K(7Y|NCk~=eJ_lXMESw)Jut{J6MbbSpKFMH7l7Tu!F**LX|t<@ffCO@IFUqj zB*AXAF13J!r(A0aRoh~k%c)sX&(kUrFCfwPoK`jJe6LRNZ7SPI=4S*|1~34Y1s|MC z$`O{1o5t}9t#r76%Q-#Y8MY5oJqy8!Aq8RUtSd7(C9G)d)5ZnP{bCBNdtfPeb*xYe zeD#EYY~_QY@CV0Byg{gR2ebP+#)-wdc*q8yhUg#XEEU3if$QD?MU*Gea^?|DwEOp) zR0NUE4Q(%2QVJJtY`hOTvlIv6a^s6pP~5~L`iSjy+3T!SeY(XGb7%*i3^sCIdc%Xm z&p3FKjpIdnC-*W{s#vEc4xk#Xb)s>Aqg#~G^^`$M?c)+L3VX{jMxeKoSxyrHQ{W8o z+dPyL^hY2N9j<75JoSv?f*TjhS9!r+_u&QO;A6FLL*m~{ycXtLhrpXYu{u~ym^D;^ z#Kf*ica!(=fT|Ia$MJ;&RS8RP2R*m;-K5X;0%c z2vK`a4h^o38R@)i-ChkJoE9~7kOR)J3?pb-xB-F%HhxbY@g*uAGV}>J@tO|mZu!cA zDbr0JGq41Vef(emY>77$hUU-;{o^2^d!|m>8{Y;%2X6uO;|7SN9!1u(gf9Gdj_!%R zdBO-a<-p_jV-7NLa;mLB_lZMQ<5)pWZ0h}DrH=mqTw4J}Vm>E%%z!r6Z@gb{Pabni z6g5D^CZqifH^d$6UcPY5R(0nZFgVRX@Gv;wJ?4YK@relwflyH1E?Z~-oYm@P=A4BA z^MF|$iKI`Q6%}Vi!)C%UxbBYnjxtL$7D)b6b~2qII* zW^9$?yo8F4*{R}U2Di(nLB##B9tqkse)F*pO<;CefH?TbCi16db1J_Ab#QR%zl^G5 z%%Nnn;}PAK&kj^1i#G4)5wMSpnr+E*6_HkLcs=8?NhDt@7Q=F$9Nd-wE41~4xwe}p z6as|QZZTag^!#O$rUaf}uuPU0+{nP~@&4Dll&QemTnXnIinLYy-~bAkE?dSN4NxLZ zCPg=SUVKBW(J7~;{&1-$a|JI)oTNu_^@KfUB6`FJ2yIsT^^W?{X~V+LG3P8xAY-w; z4^IwJG>eanavfVkn(6hNsxf7rFc%O2EfbAn06$6m;<*3_a5U4_Kr*+$=8(E0yH}al zjD(B=0Oj!G_0x?G65oJX!Ll310D)BveYlBq(KNYN2BVYX6v%@&E-{VAl40^|4=>ge z{bFpvDBp2%4(k^xp|QEfD_|he?89ik!ep?*ttJX7gjn(Sedq_s$$XI~V7p1n6J~hYEm&pj16zqH=l1Ko7Ui z{l&WMcEsj(g86Fg$nUT&o4O*tC}wLteB0^OyN>^$Xg+7 zf^ERFnP_47FxxJsP7wfuN34)Hp0P`Ws9QQbOi(+xt98=i6hiQgnW&E0tR-sLg(ZhB zC(d-nCvm_QSeKRO0F~n?B#N=l*RHUb6Ox08CC5Pr>k9-2r})U{R7XVzjHxyf0d-F& z7rl7G;5wck;$^bb0?ThQ^78Uw(`>j;!WB`3c) zgYA$tf2;-Jl!bc4v=gUI%kE-r0xrjyn+dHiKl;l+_DxTWct+30JFV9n$C8mz9pF?P z5ozZRmX^8z`N^=W?KdNt*0Y?8u0390%S?32$c@j6r<0ffQc} zk7WMT zIM2L}NpkIihJsL4z5~t)TCouWt1w7L-PxuGkRaKkfcKg&4!OmEh)KHRdH~+MWLs+D zwDtVqf=_2hxs(7@51dD5$<4}`^-Qric*W5C4Jl+j;@L!yf3=P5hfY+{qn2Q}vT4t- z!dUi&(mZ_P1fqP1c){o(3amIW5e}0W0k-2)W0wp6q}@q<0C-<)I+FJN(qbGH(XS9tIN_{2(`iJ_3_FUnx1?G1X( z00Faul=K{w4+d>gQVo|DLZk`K6zH)RhX5qL*Bzrt)2t+OBqxY>f?AQHPSf9sloTG1 z`;>ML2PPx2{JX^(0cChH93C4L@PBv+>blF<9OS*Kmg58gH*lt&CN9O8U-_)2CRpu8)MbkgM|M#S~LdPtYTrHS21bVIVRL>zvr-pA)TOumTfK%uE9$ z9r#`Iftv_AK2EVQ z+z>L0utD*JCg9+M(&%desCM?f{<#89>n|=MQfDS10T%<49kpKv5$=Slp@|IMNXkKi2k`0iB2#kfVIv*3{5^+te~2~efT)82?n3uVX@HU9&lo}F4OUfSOvq6 z#!!+(8GbP~sNHX-_m`c3vS3oLyuZezhvC7ARkaoRI5T4{Y|SxABTvpCl5T=8uZ&t? z)iy%vdE*&2A3EbBA$jn2zZuX#PG`S(#f_t0aUNCqasjqyID<8N6O1tf3#q>tgUObp z!7ByM6oW%gkBn9pAny3YK%#T&2;b8H7``S^){W(BUQR^KhY+*(#%zJ_Jp|3s3&uHy ztjQj(vM4C=<;x4%bmS8FR-NO>LPJv?H!zY)FkTNv2%tX>7zn)>goCNq^N|1@3w%Eq z8VWr7W}-U4`tygF#)CgOvus{E!)o*@R64m+N`*nD-{TFc0+!F~-bkixNG{>y=Xgqr z6Ih*R>TATQYdh{v11?hkT=m`^Ew)Lt8#D7Lg>fuP>Zd zDc}QE5om^$8^pvx(&NJXl=^d3n-gzE_2&vKDMLY*Imk<-&6I$tcdXC?+%D&jMiwAi zyj>Id%e=g00NMA70-eU5@oJ$!OY}2|YqZ??$`Vn~zoFhtF2NPP3e<%48r3Lo4SO-8P329xq-oPMY(A zRN(E$c^xha9>(e8G&CBMDkOT=vmwBgJ>@~bHBrb0Dr+hdX}fZ1;$xDe!k6ce_?VU% za)yl1D_!Jy4@|-);0C@PR()Z>at|ZPmLaOv{&8-M=Xn#6#6n-J41okuDEf0=Z5aU~ z2Sy+^f{0|lFvoGw(eST0$t1vqEDnvhgb3&^bHZgX0_|MVMYp~_u~@^W4u!pI7>;={ zYH}BM6qHe}Dc&&>P!8kH2+b82UZ)sri+S(o8rXB(dVEhfHS)d}#sUJPFMfkJ8 zd(O3(ZN0ueFdKVYh(j(xTTK_otQVD~j%&O?2-U@)U1W)P^@)U! zd83=_97d-(B940WOm55;1(K1$1^gMy;^iDc3!j{#fKISM2hecIydxbQed3Un;Kt7avYz?L zVw(trq4BJjh9ix-ZxhE@KfEZsdjQ?RMclJgyg!2@b}7}vt~P@A-;61sN^Jv|04AvM zkRfdSFyW9Qw|vhUOXmoedutN{SAvE0StVKxsr1MltI|ii*{J zVL2Ct<=3pzU3NOb_I7rC39Jbaizglr`}T_EpX@Xgg-gQR)lVwi!w(c=8!0ZpEd z=MV*5sdw||IUe?gvbG3rx0gJNO_&)lL&FQQsJfmfoOZi-9c3PqT=SBE2bTdF2iv@i zNAAOB$Q$P4zq|q`rQ`4a00zsw@rsBB`^7#(j2diu$ixprmZtZ5#UK$$yaPqo#m{9N zVXT3u^Mjj2r+)tcIH0wFfM`wkdzc24lg1*N+}-0JhsrgGDPX(A64^Hs9q%SgQk~)+ z2fU-9wetAMImnY^^ET@q?wEP-{8zfU^@I3hKuLqqjZh zgr?W=hQh5d3g{KSa!^MhEwwTZD0aZeZ}+dw(i z@WPhcx8nqWX&M8e^OA;!smqWefjoiZ-_8Xf7W{CHiA2zA4YW}Wk4f2uRj=n8y`kP9 zfwT{lI%2vugMs-T{6Pw$TW(M-o#O=|yi8`q>M&d$ao5f*0liGt*(8rRF(i4I0TKWS z!|yo-V8wgy1qf8S-UCEFasnbbnPCRYgJzk`%Qgukyg2N?Inga{@C}Z&(TFi9@wtY& zYk}`O%Q7kR1|<+Wx^W|8+s-0H73$>;JxmY_2YE7vykkQ{qYYwscweD09%nc-9}7%$ zBt7`XV_gHBNeB>i&(FLeNi-q6n7g^G*Gl-_D!5iN=05X4vYeySk|cOnSsGjFf+;M^y*KgZ30h&p~!)HgYP1e^tY^F zH=e!Vhl3O#pz>q92=6R3aYzckIjLZtg!hM(YN5Sm;UUh={bWH!w+R50gX0of4Kn1C ztU1Wl9dqH$(T>rx0y~VwHDc=JUS1bi07)`X`f>2cX7Loeoj5xb#3N-}jF7K2m&u)Rv@^px{hO+p_Fl5yB3FH4iikKfKs-Kr{~p!Ue9FubYaBkIBX@qo+*D z027OGwPkDH$DDttP%g7zY<7+|_H*}=*?OaRyu!O~5>-w$&Q4cvj71n;H8V=OB}V%B z#0jzZz!DHi6?rm_^c?!nJ5D%aS}%K#h_@qz#U-M!N9VIFmu4oY19;njUcrV^HN0s} zlfJP561d;9zpT6?zVNjgm?uIsO+R=G*1hEub6sM4==F+6I8Ur3t-UJZR66xntn*xRoka5`ei!UR*B-%|%7Zgwy zHNXC5-Y9h0>G6|rfi3uaVH0sUJ>mt4ri^_WAbRsM7DQDw@p{g+hV~+wFF9iHGQGXw zLUfp^k-Y)<#6{F(*zn^IHxx}v>mV*l8_#V&7*q>xA$`&|`&`H*U@tt(M52oy-Vs22F&(A# zjS_9>#fTn9P6n&Rm=v}JtPGwU9Du#G_{Ovc_+e5T*BDUgJUMsg=KxEtE+|?O5{c&! z9v>&pL_jy&)>H_;PFA-GcSAV~QR4{wV^Il^x)osM?*$1$CFd99*EiBagX+BF^lkF{ zCngv*yG_7SMX>Rd8m>rpjRPa1=*}SJu*dV7JORvywex|UP_8)1d17-~#RNaf&nsGy&oDgeL&n5SQ;X-RN>nCJ+Or{&j*i4{-5>w0aYpuN-2E z3Q%?H4J{W#&Q%7HYj}xB?rZdA!M`|~YgIEsP~DkmfZ$_Vqi00KiUWsJ?ZR7YJpM8W zT|V#=5{B3fd1I4Ri|rk3I=F+b6j<$%f17=1yph46z~K(#V$K1Ss*U;oR)=} z$yV=6fRYE71rlQ|yM1JjnS@YQ17pjGk4`-EofW?3Y&YMWt<~2LjJW>*CNy3SHU9vM zC`n+m*NhS$EiUl^q2OcV0U!$az?0?j#ym#rHNr%;;U^Ahcmlb9qVW$G3C8DhG%N=j z%68wJne>pJ@RVw?bv^uH02FdkdGVecGocb3ViNHB#7TSO7Q_RQ&4uuK@?a_zUW_~1 z^+ya%NQ!YPiZ6 zQ%bkIbzI6`zK=H*ii?_Rb(WnrvS75YvjxZ~bBh4dVgz#Cc4cNBbYcl}PSoK%<5Kck zt|Z`2@TE=RyuKee$2{hsZsQOLoZ=%E_3X-V&1CgPdg6_m%2r#3CUVvi7m^i!-d zbuN)N^3To&S}fJlo#Gu$18REni`$1`3FTzSWHN!%g80hv8#!s=N8k{{TDNKJk^{{WSovm6ks4=(|R zl%{HtV_LIZ^>IO(dBr9azz`tR>ojfz=ntF&k!0i_KRD!9svNnnmnVbo#x6BZc*?Lx zh_B-z8v%k6CH*n$q8uSSPCCgH9#?}k`5qs5Ak&5b6jN#A8Azk75hzbf;}o?IQ_s9d zTWom74|LiuKREC}S7Vhz8uYAl#G<9K)0^Brdyl%7~TgOGD_kaTx_;Ha#U@41Q zxBKO)Z1QCdyZvz131ss1h7gg7ld6sz$-G>M>jJ2AU%nA@8c4* zlbnmjLTb~Z_vU7Y!0XNt))k8%-xMrdupg^AD%ZT3T!ZTD!9rbSp^&9({a}hbnW9iI zK(ufe(A22nb)3Wl1%57Z;Gn7(lf#z>#(D%n#t;&4L9;IiuQ#_U4GN^=?>dQda(zcG ziL(wCjI(hQL)jd|}YdlnV{MGh6`DmZt~a8WsBYfRatSIm)nvH}C%d z6zF^m$u3Qn$L9#j?4&l-^PIfaVobGTTt0G(8o)G`xxgMvbuX+ovxyy;vw`vLF!-QCb4N+vXB~e#syu2<5*^`UQL%B#DXlk!Jwsm;mTL^!QGI^ z%NfPR%F;yhf?EpxU{@oHFzdRLx6V57Pb01}<~v$r1<_xR{TPGJPViTddiR_(JYGyS zobUetDN5++#jWoRG&|pTpg@|uJp5!woakBgk`_|{+l7aP)i38L&|C^5j<8c=SupI5 z`!kMv^@wofIx6t^#0d$jYvZk9gpO+5YI?b{%baIBxCBc>TIK%$!9We`weyWBRb99d z7(C2armmcguhvN;-fO`o{{ZU|*0268{+0dxVWvtx0eZkh6kT=eIDrM(c*<9V-sMIh z_DnUgW%$j2K<2fT@`wZvyPVJUc}%r}*A61;YM==9E%$)|4$p4-_kkB|Y1#Z^P)v~4 zaBJfN2XRww6OQ+U-WZ5?#k}PkH?zE9iPgpNTz&uttU8*Pm*#ho**)gMZSjN+=uBf7 z(G#vbV7+26pcioQjHz!R^@m`itDGjUgZIH|PH=!Ed1&$eFkq_e74?muMn{$Lgi!>O zg9VvTwLY=l0aSM0T}3Xxwou0CZ;2Pn&;}cGtG?T9K zg*<~-#s_?ZoGPN-j#n6f8gJtvcmO#*u_TBI2H$wBJz>_pJ8((f)ad)m8{Tub5Q4fi zbYs>p_{xEZ1yjJ))?J_9j1_Ns_nX$v{SSFx2q}vCnQRItha4{#0Nvas-*{%H8?)9N zTeSQGn+O~fXni=gvwkoOw^*Cj@lf0X?T4-AtG+Rl#It7bYm936lyru)dB30h*NnJ8 zpw66Tq7y{p9WB5W6OzJnj2FjP#KImkMC5hWXxaMVog{*0@o_lkSXr?+oM7dP=qrvO zBu>m)b34iv8%mQ1y}43RexM{&J4_YASRk(g{muuijpS!0 zYnv4Ie})JLY(PF9@GcrrIeg~g4F`jOxKP9l4b*XaKCpGR)5ZA8$m~4h71sP=3N_mp zc3unvZv>M81lz3T0kyArA}9^tyh+4iq;tjsqU+b3XjBKGvnC!fI>iLmrX)N-BSv}g zfISbKQE&~8B6sn;besMRg+fr!DKIO$VYjBk9oL0dYWbIrj-6HPElTzC4g4x|Fb z@vNEza-3vHgWe+)HFAvb9p5-WP-vPTSc>fO1}#^d2_WZuo@PAe`QOe&aTds#?&L|} zPn=lf3w`4IqNsjy;Hot1<-vqlZqj^Ulnvn8{NuPJu_m(ljep?^2=9!ZmrZkqzI;9-6Gz!a8pWfGfm01f#vQljsMWed1@?+ucN-m(Li zjbUT>93BDZ5;ov!hlz_)w8DWG!nXuV2e%@4H8+o=Eb!el&ht~>oLw|uSa3Q#XAZye zkH$w=D$uhKfLt8R+9lO-!Nw>Oqs_{W>5vb5&KWW??s>!>SJo*4A2~}-{A8slEpP>} zivIvv5T4m&U7j4P#&#UzyCx7jQC@LWvbkK3Z~Wf2v&%nhWHjGhg_5T2z zz2#U%`NTXRcQG186<^tiMfWly$;)(ny=8s01tH8|K5$A<4NboprFNZOb7Jv9qvr$g z6(+~2gwP)bHh?*}fF|9E{{VqeIM=*ux4dClRQ^~Z0wiqtF{{aPmNZE)XkPQIdyo)vLV;3PU(HOk9ZMB<2RL9kpZV!%eD0H@tos?-RG<%X}+>3 z0n341S55VR27qkNs7_w;8tb2&66|<9f7V(^{N;qX&Z7!qBXJ>6ba$K_wR5netf$^j zo``hWn)iXxKJq{W?d{o}$IG@m+agiGd|(36SZ}oR+cbdJyjX!XxrEAmiOyODUdU|C z1mOAS3_=hD@6H!Bc|5&(#U!hFxF_+FbH|+9FokJ+%&AIy93#V_cynlKoXq9liK&zj zp9U3W9%Fz6ePSdJ&Kpm7jJvAhmQFL$-*^Nl;%xYz_y9*rmc6 z6%(WT#?bVg;s%ya478LwM+t`2?qRy2O~@x1wHs)_i3E5DILp0rg@hubDdQ45&G^B| z)xl*&zBtP19>`1Y{{RF4Xv>?!iOc5GzJDHLI}VkM!cc4%9w|DQ|6SlJkxz z3}^-E^N-e|Lmm6gwar>F+Ihy1EfA-l39^dlp<`=$^mvQgHKv zpx2SY@#UMtgJq9zoMPdXV5c7@7XTR)`gem(yc*5zE$ceUJij<3gv71$m9k6<$y`KJ z=c|`S^SD#S8tZ%J=E+xB>M8lkj=9E@=d5Tbp0Z8o(YR~>03sHIelf^_W?6(acFab< zY;g8)r^SlsP$5Gx=L*USV;~Gjw-aG_S{bk7Jid%xzZLCPVEnE`#L}nEN zyclgMBXUs_Hc%$MvadH7B{%Ob%a49BsJ+k0^5h{1 z@)u4Hk)X(*obH(IR=1!0B$XEYXv82ikW0Q?QnN+_K$)fhfEILFpExqhyF1AmH&t8|790Gg{ojZy$NX=x1Ln6JHLZ$$CW5%5_4vn-#R491HFNsGTJ4#ja5%O4#!=MH zhD{70+vURpSZu-qcY_>kS3yI^{u#L*66H+{yyr3VoH?cxhQ-6E?g!3s4_xEPHwqg# z&lva?#5l(2ttKdM39%0!7;iSkVEljSB6o1oCpe@4IIA$h$u1CapqHQ17G}wY1AqZR z;lfS^hl`zk;4Sf&NB#;&7dpM0$T|)4yaFk+Cax%PmC-2g83oZTHJrLPtaR%;#c&9o zrdN)$tk97xaW%) literal 0 HcmV?d00001 diff --git a/Rethread/Rethread/MainView.swift b/Rethread/Rethread/MainView.swift index af54443..c9a7703 100644 --- a/Rethread/Rethread/MainView.swift +++ b/Rethread/Rethread/MainView.swift @@ -15,62 +15,68 @@ struct MainView: View { var body: some View { NavigationStack (path: $path) { - VStack { - Spacer() - - Image(systemName: "photo") + ZStack (alignment: .bottom) { + // Add Image + Image("starSky") .resizable() - .aspectRatio(contentMode: .fit) - .frame(width: 30, height: 30) - .foregroundColor(.gray) - .padding(.bottom,20) - .frame(maxHeight: /*@START_MENU_TOKEN@*/.infinity/*@END_MENU_TOKEN@*/) + .overlay(Color.black.opacity(0.01)) + .clipped() + .edgesIgnoringSafeArea(.all) + .padding(.bottom, 210) // Description text - Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna.") - .font(.body) - .foregroundColor(.gray) - .multilineTextAlignment(.center) - .padding(.horizontal, 25) - .padding(.bottom, 55) - - - HStack(spacing: 30) { - // Log In Button - Button(action: { - path.append("SignInView") - }) { - HStack { - Text("Log In") - Image(systemName: "arrow.right.circle") + VStack { + Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna.") + .font(.body) + .foregroundColor(.gray) + .multilineTextAlignment(.center) + .padding(.horizontal, 25) + .padding(.bottom, 55) + .padding(.top, 35) + + + + HStack(spacing: 30) { + // Log In Button + Button(action: { + path.append("SignInView") + }) { + HStack { + Text("Log In") + Image(systemName: "arrow.right.circle") + } + .frame(maxWidth: .infinity) } - .frame(maxWidth: .infinity) - } - .buttonStyle(PrimaryButtonStyle()) - - // Sign Up Button - Button(action: { - path.append("SignUpView") - }) { - HStack { - Text("Join Us") - Image(systemName: "person.crop.circle.badge.plus") + .buttonStyle(PrimaryButtonStyle()) + + // Sign Up Button + Button(action: { + path.append("SignUpView") + }) { + HStack { + Text("Join Us") + Image(systemName: "person.crop.circle.badge.plus") + } + .frame(maxWidth: .infinity) } - .frame(maxWidth: .infinity) + .buttonStyle(SecondaryButtonStyle()) } - .buttonStyle(SecondaryButtonStyle()) - } - .padding(.horizontal) - .padding(.bottom, 15) - .navigationDestination(for: String.self) { view in - if view == "SignInView" { - SignInView(path: $path) - } else if view == "SignUpView" { - SignUpView(path: $path) - } else if view == "WelcomeView" { - WelcomeView(path: $path) + .padding(.horizontal) + .padding(.bottom, 15) + .navigationDestination(for: String.self) { view in + if view == "SignInView" { + SignInView(path: $path) + } else if view == "SignUpView" { + SignUpView(path: $path) + } else if view == "WelcomeView" { + WelcomeView(path: $path) + } } } + .frame(maxWidth: .infinity) + .background(Color.white) // Background for text readability + .cornerRadius(20) + .edgesIgnoringSafeArea(.bottom) } .frame(maxHeight: .infinity) .onAppear() { @@ -86,11 +92,15 @@ struct MainView: View { } .navigationTransition(.slide(axis: .vertical)) // Safe area for iPhone X and above - .safeAreaInset(edge: .top, alignment: .center, spacing: 0) { - Color.clear - .frame(height: 0) - .background(Material.bar) - } + .edgesIgnoringSafeArea(.all) // This will extend the content to the edges + .background(Color(UIColor.systemGray6)) + .overlay( + GeometryReader { geometry in + Color.white.opacity(0.65) // Adjust the opacity here for semi-transparency + .frame(width: geometry.size.width, height: geometry.safeAreaInsets.top) + .edgesIgnoringSafeArea(.top) + }, alignment: .top + ) } } diff --git a/Rethread/Rethread/Models/TermsAndConditions.swift b/Rethread/Rethread/Models/TermsAndConditions.swift new file mode 100644 index 0000000..5594532 --- /dev/null +++ b/Rethread/Rethread/Models/TermsAndConditions.swift @@ -0,0 +1,61 @@ +import SwiftUI + +struct TermsAndConditions: View { + var body: some View { + VStack { + Text("Terms & Conditions") + .font(.title) + .padding() + + ScrollView { + Text(""" + These Terms & Conditions govern your use of the ReThread mobile application ("App") provided by TechStart ("Company"). By downloading, installing, or using the App, you agree to comply with and be bound by these Terms. If you do not agree with these Terms, please do not use the App. + + 1. Acceptance of Terms + By using the App, you acknowledge that you have read, understood, and agree to these Terms. If you are using the App on behalf of a company or organization, you represent and warrant that you have the authority to bind that entity to these Terms. + + 2. App License + The Company grants you a limited, non-exclusive, non-transferable, revocable license to use the App for your personal or internal business purposes, subject to these Terms. + + 3. User Registration + You may be required to create an account or provide certain information to access certain features of the App. You agree that all information you provide is accurate and up-to-date, and you will keep your account credentials secure. + + 4. Privacy + Your use of the App is also governed by our Privacy Policy, which can be found [Insert Link to Privacy Policy]. By using the App, you consent to the collection, use, and sharing of your information as described in the Privacy Policy. + + 5. Prohibited Activities + You agree not to: + - Use the App for any illegal or unauthorized purpose. + - Modify, adapt, or hack the App. + - Attempt to gain unauthorized access to the App's systems or networks. + - Engage in any activity that may interfere with the proper functioning of the App. + + 6. Termination + The Company reserves the right to terminate your access to the App at any time, for any reason, without notice. + + 7. Disclaimer of Warranties + The App is provided "as is" and "as available" without warranties of any kind, either express or implied, including, but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. + + 8. Limitation of Liability + In no event shall the Company be liable for any indirect, incidental, special, consequential, or punitive damages, or any loss of profits or revenues, whether incurred directly or indirectly, or any loss of data, use, goodwill, or other intangible losses, resulting from your use of the App. + + 9. Changes to Terms + The Company reserves the right to update or modify these Terms at any time. Any changes will be effective immediately upon posting on the App. Your continued use of the App after any such changes constitute your acceptance of the revised Terms. + + 10. Governing Law + These Terms shall be governed by and construed in accordance with the laws of [Insert Jurisdiction]. Any disputes arising under or in connection with these Terms shall be subject to the exclusive jurisdiction of the courts of [Insert Jurisdiction]. + + 11. Contact Us + If you have any questions or concerns about these Terms, please contact us at [Insert Contact Information]. + """) + .padding() + } + } + } +} + +struct TermsAndConditions_Previews: PreviewProvider { + static var previews: some View { + TermsAndConditions() + } +} diff --git a/Rethread/Rethread/SignUpView.swift b/Rethread/Rethread/SignUpView.swift index b3b3da0..6d8a71e 100644 --- a/Rethread/Rethread/SignUpView.swift +++ b/Rethread/Rethread/SignUpView.swift @@ -17,6 +17,7 @@ struct SignUpView: View { @State private var formData = SignUpFormData() @State private var isPasswordVisible = false @State private var showingDatePicker = false + @State private var showingTermsAndConditions = false @State private var showingGenderPicker = false @State private var genderOptions = ["Male", "Female", "Other"] @State private var areTermsAccepted = false @@ -225,7 +226,7 @@ struct SignUpView: View { Button(action: { - // Handle terms and conditions + showingTermsAndConditions.toggle() }) { Text("Terms and Conditions") .foregroundColor(Color.primaryColor) @@ -252,6 +253,12 @@ struct SignUpView: View { .presentationDragIndicator(.visible) } + .sheet(isPresented: $showingTermsAndConditions){ + TermsAndConditions() + .presentationDetents([.medium, .large]) + .padding(.horizontal, 15) + .padding(.top, 15) + } .navigationBarBackButtonHidden(true) } } diff --git a/Rethread/Rethread/VideoPlayer/PlayerView.swift b/Rethread/Rethread/VideoPlayer/PlayerView.swift new file mode 100644 index 0000000..ac6546f --- /dev/null +++ b/Rethread/Rethread/VideoPlayer/PlayerView.swift @@ -0,0 +1,18 @@ +import SwiftUI + +struct PlayerView: UIViewRepresentable { + + func makeUIView(context: Context) -> UIVideoPlayer { + return UIVideoPlayer() + } + + func updateUIView(_ uiView: UIVideoPlayer, context: Context) { + + } +} + +struct PlayerView_Previews: PreviewProvider { + static var previews: some View { + PlayerView() + } +} diff --git a/Rethread/Rethread/VideoPlayer/UIPlayerView.swift b/Rethread/Rethread/VideoPlayer/UIPlayerView.swift new file mode 100644 index 0000000..10ddba6 --- /dev/null +++ b/Rethread/Rethread/VideoPlayer/UIPlayerView.swift @@ -0,0 +1,51 @@ +import Foundation +import SwiftUI +import AVKit + +class UIVideoPlayer: UIView { + + private var playerLayer = AVPlayerLayer() + private var player: AVPlayer? + + override init(frame: CGRect) { + super.init(frame: frame) + + guard let url = URL(string: "https://github.com/bbmvicomte/videoOnboardingScreen/blob/master/bounce.mp4?raw=true") else { return } + + player = AVPlayer(url: url) + player?.isMuted = true + + playerLayer.player = player + playerLayer.videoGravity = .resizeAspectFill + + layer.addSublayer(playerLayer) + + // Add observer + NotificationCenter.default.addObserver(self, + selector: #selector(playerItemDidReachEnd(notification:)), + name: .AVPlayerItemDidPlayToEndTime, + object: player?.currentItem) + + player?.play() + } + + override func layoutSubviews() { + super.layoutSubviews() + playerLayer.frame = bounds + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + @objc func playerItemDidReachEnd(notification: Notification) { + // Restart video from the beginning + player?.seek(to: CMTime.zero) + player?.play() + } + + deinit { + // Remove observer + NotificationCenter.default.removeObserver(self) + } +} diff --git a/Rethread/Rethread/WelcomeView.swift b/Rethread/Rethread/WelcomeView.swift index 40ccf66..6692b20 100644 --- a/Rethread/Rethread/WelcomeView.swift +++ b/Rethread/Rethread/WelcomeView.swift @@ -1,22 +1,17 @@ import SwiftUI +import AVKit struct WelcomeView: View { @Binding var path: [String] @State private var showOnboarding = false + @State private var player = AVPlayer() var body: some View { - VStack { - // Video placeholder - Rectangle() - .foregroundColor(.black.opacity(0.1)) - .overlay( - Image(systemName: "video.fill") // Video icon placeholder - .resizable() - .scaledToFit() - .frame(width: 30, height: 30) - .foregroundColor(.white) - .opacity(1) - ) + ZStack(alignment: .bottom) { + PlayerView() + .edgesIgnoringSafeArea(.all) + .padding(.bottom, 290) + Spacer() @@ -26,7 +21,7 @@ struct WelcomeView: View { .font(.title) .fontWeight(.bold) .foregroundColor(.gray) - .padding(.top, 30) + .padding(.top, 20) Text("Lorem ipsum dolor sit amet, consectetur adipiscing elit purus sit amet luctus venenatis, lectus magna fringilla urna, porttitor.") .font(.body) @@ -41,17 +36,35 @@ struct WelcomeView: View { } }) .buttonStyle(PrimaryButtonStyle(width: 200, height: 20)) - .padding(.bottom, 55.0) + .padding(.bottom, 40.0) .padding(.top) } - .frame(maxWidth: .infinity) // Ensure VStack takes full width + .frame(maxWidth: .infinity) + .background(Color.white) // Apply background and corner radius + .cornerRadius(15) // Adjust the corner radius as needed + } .fullScreenCover(isPresented: $showOnboarding) { OnboardingView() } - .edgesIgnoringSafeArea(.all) + .edgesIgnoringSafeArea(.all) // This will extend the content to the edges .background(Color(UIColor.systemGray6)) .navigationBarBackButtonHidden(true) + .overlay( + GeometryReader { geometry in + Color.white.opacity(0.65) // Adjust the opacity here for semi-transparency + .frame(width: geometry.size.width, height: geometry.safeAreaInsets.top) + .edgesIgnoringSafeArea(.top) + }, alignment: .top + ) + } +} + +#if DEBUG +struct MainView23_Previews: PreviewProvider { + static var previews: some View { + WelcomeView(path: .constant(["WelcomeView"])) } } +#endif