From dc81a097e935930cef60961dd077b4eaa155eb83 Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Thu, 21 Oct 2021 16:50:01 +1300 Subject: [PATCH 1/9] Add deep link url scheme --- SwiftSimctlExample/Info.plist | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/SwiftSimctlExample/Info.plist b/SwiftSimctlExample/Info.plist index 937b1a0..09f52b9 100644 --- a/SwiftSimctlExample/Info.plist +++ b/SwiftSimctlExample/Info.plist @@ -16,6 +16,19 @@ $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString 1.0 + CFBundleURLTypes + + + CFBundleTypeRole + Editor + CFBundleURLName + Deep Link + CFBundleURLSchemes + + com.example.SwiftSimctlExample + + + CFBundleVersion 1 LSRequiresIPhoneOS From 1839424fd935dc76dfde8bce2bc0fa3c58c69b90 Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Thu, 21 Oct 2021 18:20:15 +1300 Subject: [PATCH 2/9] Add deep link path to ContentView --- SwiftSimctlExample/ContentView.swift | 12 ++++++++++++ SwiftSimctlExample/SceneDelegate.swift | 21 +++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/SwiftSimctlExample/ContentView.swift b/SwiftSimctlExample/ContentView.swift index 486afa5..c5133d9 100644 --- a/SwiftSimctlExample/ContentView.swift +++ b/SwiftSimctlExample/ContentView.swift @@ -10,6 +10,7 @@ import SwiftUI struct ContentView: View { @State private var authorizationStatus: UNAuthorizationStatus = .notDetermined + @State private var deepLinkPath: String = "none" var body: some View { VStack { @@ -25,8 +26,19 @@ struct ContentView: View { } else if authorizationStatus == .denied { Button(action: { UIApplication.shared.open(URL(string: UIApplication.openSettingsURLString)!) }) { Text("Re-enable push authorization manually in settings") } } + + Text("Deep link path:") + .fontWeight(.bold) + .padding(4) + Text(deepLinkPath) + .foregroundColor(deepLinkPath == "none" ? .gray : .blue) + .padding(20) } .onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in self.updateAuthorizationStatus() } + .onReceive(NotificationCenter.default.publisher(for: .deepLink)) { notification in + guard let deepLinkPath = notification.object as? String else { return } + self.deepLinkPath = deepLinkPath + } .onAppear(perform: { self.updateAuthorizationStatus() }) } diff --git a/SwiftSimctlExample/SceneDelegate.swift b/SwiftSimctlExample/SceneDelegate.swift index 50e1073..81572d5 100644 --- a/SwiftSimctlExample/SceneDelegate.swift +++ b/SwiftSimctlExample/SceneDelegate.swift @@ -22,4 +22,25 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { window.makeKeyAndVisible() } } + + /// If the app is opened with a register url scheme, then this function will + /// filter urls whose scheme matches `com.example.SwiftSimctlExample` + /// and post the `.deepLink` notification with the object being the url host + path. + /// + /// Example: + /// - Opening `com.example.SwiftSimctlExample://foo/bar` broadcasts a + /// Notification named `deepLink` with object "foo/bar" + func scene(_ scene: UIScene, openURLContexts URLContexts: Set) { + if + let url = URLContexts.first?.url, + url.scheme?.lowercased() == "com.example.swiftsimctlexample" + { + let path = "\(url.host ?? "")\(url.path)" + NotificationCenter.default.post(name: .deepLink, object: path) + } + } +} + +extension Notification.Name { + static let deepLink: Notification.Name = .init(rawValue: "deepLink") } From 95c35a4842f8aa72e43f975ed0a4b48efb7b9cd0 Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Fri, 22 Oct 2021 10:20:13 +1300 Subject: [PATCH 3/9] Add open url ui test --- SwiftSimctlExample.xcodeproj/project.pbxproj | 4 ++ SwiftSimctlExample/Info.plist | 6 +-- SwiftSimctlExample/SceneDelegate.swift | 11 +++-- .../SwiftSimctlExample.entitlements | 4 ++ ...mple_01_HandlePushNotificationsTests.swift | 3 -- .../Example_02_ChangeAppearanceTests.swift | 2 - .../Example_03_OpenUrlTests.swift | 41 +++++++++++++++++++ SwiftSimctlExampleUITests/Shared.swift | 8 ++++ 8 files changed, 65 insertions(+), 14 deletions(-) create mode 100644 SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift diff --git a/SwiftSimctlExample.xcodeproj/project.pbxproj b/SwiftSimctlExample.xcodeproj/project.pbxproj index 5dabe09..791d041 100644 --- a/SwiftSimctlExample.xcodeproj/project.pbxproj +++ b/SwiftSimctlExample.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 3340A8692722117000C4CBA5 /* Example_03_OpenUrlTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3340A8682722116F00C4CBA5 /* Example_03_OpenUrlTests.swift */; }; F830E0C4242BA5B900875D0A /* Example_02_ChangeAppearanceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F830E0C3242BA5B900875D0A /* Example_02_ChangeAppearanceTests.swift */; }; F830E0C6242BA5E400875D0A /* Shared.swift in Sources */ = {isa = PBXBuildFile; fileRef = F830E0C5242BA5E400875D0A /* Shared.swift */; }; F851FF952423ADB20099A319 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F851FF942423ADB20099A319 /* AppDelegate.swift */; }; @@ -31,6 +32,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 3340A8682722116F00C4CBA5 /* Example_03_OpenUrlTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Example_03_OpenUrlTests.swift; sourceTree = ""; }; F830E0C3242BA5B900875D0A /* Example_02_ChangeAppearanceTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Example_02_ChangeAppearanceTests.swift; sourceTree = ""; }; F830E0C5242BA5E400875D0A /* Shared.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Shared.swift; sourceTree = ""; }; F851FF912423ADB20099A319 /* SwiftSimctlExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SwiftSimctlExample.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -118,6 +120,7 @@ F830E0C5242BA5E400875D0A /* Shared.swift */, F851FFB62423ADB30099A319 /* Example_01_HandlePushNotificationsTests.swift */, F830E0C3242BA5B900875D0A /* Example_02_ChangeAppearanceTests.swift */, + 3340A8682722116F00C4CBA5 /* Example_03_OpenUrlTests.swift */, ); path = SwiftSimctlExampleUITests; sourceTree = ""; @@ -251,6 +254,7 @@ buildActionMask = 2147483647; files = ( F830E0C6242BA5E400875D0A /* Shared.swift in Sources */, + 3340A8692722117000C4CBA5 /* Example_03_OpenUrlTests.swift in Sources */, F851FFB72423ADB30099A319 /* Example_01_HandlePushNotificationsTests.swift in Sources */, F830E0C4242BA5B900875D0A /* Example_02_ChangeAppearanceTests.swift in Sources */, ); diff --git a/SwiftSimctlExample/Info.plist b/SwiftSimctlExample/Info.plist index 09f52b9..b5a4d43 100644 --- a/SwiftSimctlExample/Info.plist +++ b/SwiftSimctlExample/Info.plist @@ -20,12 +20,12 @@ CFBundleTypeRole - Editor + None CFBundleURLName - Deep Link + com.swiftsimctl.example CFBundleURLSchemes - com.example.SwiftSimctlExample + swiftsimctlexample diff --git a/SwiftSimctlExample/SceneDelegate.swift b/SwiftSimctlExample/SceneDelegate.swift index 81572d5..e74123f 100644 --- a/SwiftSimctlExample/SceneDelegate.swift +++ b/SwiftSimctlExample/SceneDelegate.swift @@ -23,17 +23,16 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { } } - /// If the app is opened with a register url scheme, then this function will - /// filter urls whose scheme matches `com.example.SwiftSimctlExample` - /// and post the `.deepLink` notification with the object being the url host + path. + /// If the app is opened with a url using the registered scheme `swiftsimctlexample` + /// then ths code will post a deep link notification whose object is url host + path. /// /// Example: - /// - Opening `com.example.SwiftSimctlExample://foo/bar` broadcasts a - /// Notification named `deepLink` with object "foo/bar" + /// - Opening `swiftsimctlexample://foo/bar` posts a Notification + /// named `"deepLink"` with object `"foo/bar"` func scene(_ scene: UIScene, openURLContexts URLContexts: Set) { if let url = URLContexts.first?.url, - url.scheme?.lowercased() == "com.example.swiftsimctlexample" + url.scheme?.lowercased() == "swiftsimctlexample" { let path = "\(url.host ?? "")\(url.path)" NotificationCenter.default.post(name: .deepLink, object: path) diff --git a/SwiftSimctlExample/SwiftSimctlExample.entitlements b/SwiftSimctlExample/SwiftSimctlExample.entitlements index 903def2..8872e1b 100644 --- a/SwiftSimctlExample/SwiftSimctlExample.entitlements +++ b/SwiftSimctlExample/SwiftSimctlExample.entitlements @@ -4,5 +4,9 @@ aps-environment development + com.apple.developer.associated-domains + + swiftsimctlexample + diff --git a/SwiftSimctlExampleUITests/Example_01_HandlePushNotificationsTests.swift b/SwiftSimctlExampleUITests/Example_01_HandlePushNotificationsTests.swift index 39224d9..611a09f 100644 --- a/SwiftSimctlExampleUITests/Example_01_HandlePushNotificationsTests.swift +++ b/SwiftSimctlExampleUITests/Example_01_HandlePushNotificationsTests.swift @@ -10,9 +10,6 @@ import Simctl import XCTest class Example_01_HandlePushNotificationsTests: XCTestCase { - lazy var simctl = SimctlClient(SimulatorEnvironment(bundleIdentifier: exampleAppBundleId, - host: .localhost(port: 8080))!) - func testAllowPushNotifications() { // MARK: Launch app and enable push notifications let app = XCUIApplication.exampleApp diff --git a/SwiftSimctlExampleUITests/Example_02_ChangeAppearanceTests.swift b/SwiftSimctlExampleUITests/Example_02_ChangeAppearanceTests.swift index 3e8046d..e8e96e3 100644 --- a/SwiftSimctlExampleUITests/Example_02_ChangeAppearanceTests.swift +++ b/SwiftSimctlExampleUITests/Example_02_ChangeAppearanceTests.swift @@ -11,8 +11,6 @@ import SnapshotTesting import XCTest class Example_02_ChangeAppearanceTests: XCTestCase { - lazy var simctl = SimctlClient(SimulatorEnvironment(bundleIdentifier: exampleAppBundleId, - host: .localhost(port: 8080))!) // run on iPhone 11 Pro func testDifferentAppearances() throws { let app = XCUIApplication.exampleApp diff --git a/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift b/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift new file mode 100644 index 0000000..9c6fa59 --- /dev/null +++ b/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift @@ -0,0 +1,41 @@ +// +// Example_03_OpenUrlTests.swift +// SwiftSimctlExampleUITests +// +// Created by Robert Clark on 21.10.21. +// Copyright © 2021 Christian Treffs. All rights reserved. +// + +import Simctl +import XCTest + +class Example_03_OpenUrlTests: XCTestCase { + func testOpenUrlWithRegisteredScheme() throws { + let app = XCUIApplication.exampleApp + app.launch() + + let exp = expectation(description: "\(#function)") + + let deepLinkUrl = URL(string: "swiftsimctlexample://myDeepLink/display")! + + simctl.openUrl(deepLinkUrl) { result in + switch result { + case .success: + exp.fulfill() + + case let .failure(error): + XCTFail("\(error)") + } + } + + wait(for: [exp], timeout: 5.0) + + let deepLinkPathLabel = app.staticTexts["myDeepLink/display"] + guard deepLinkPathLabel.waitForExistence(timeout: 5.0) else { + XCTFail("We did not find deep link path label") + return + } + + XCTAssertEqual(deepLinkPathLabel.label, "myDeepLink/display") + } +} diff --git a/SwiftSimctlExampleUITests/Shared.swift b/SwiftSimctlExampleUITests/Shared.swift index 2943e8e..fd1b3ef 100644 --- a/SwiftSimctlExampleUITests/Shared.swift +++ b/SwiftSimctlExampleUITests/Shared.swift @@ -6,10 +6,18 @@ // Copyright © 2020 Christian Treffs. All rights reserved. // +import Simctl import XCTest let exampleAppBundleId = "com.example.SwiftSimctlExample" +let simctl = SimctlClient( + SimulatorEnvironment( + bundleIdentifier: exampleAppBundleId, + host: .localhost(port: 8080) + )! +) + extension XCUIApplication { static let exampleApp = XCUIApplication(bundleIdentifier: exampleAppBundleId) static let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard") From 33374d0499a3df2f1f48f560db93bc509e13badf Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Fri, 22 Oct 2021 11:07:34 +1300 Subject: [PATCH 4/9] Remove unnecessary associated-domains entitlement --- SwiftSimctlExample/SwiftSimctlExample.entitlements | 4 ---- 1 file changed, 4 deletions(-) diff --git a/SwiftSimctlExample/SwiftSimctlExample.entitlements b/SwiftSimctlExample/SwiftSimctlExample.entitlements index 8872e1b..903def2 100644 --- a/SwiftSimctlExample/SwiftSimctlExample.entitlements +++ b/SwiftSimctlExample/SwiftSimctlExample.entitlements @@ -4,9 +4,5 @@ aps-environment development - com.apple.developer.associated-domains - - swiftsimctlexample - From 31027ece2292f642f348b7f055150124a6e8bcd7 Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Sun, 24 Oct 2021 15:04:38 +1300 Subject: [PATCH 5/9] Fix typo and clarify documentation --- SwiftSimctlExample/SceneDelegate.swift | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/SwiftSimctlExample/SceneDelegate.swift b/SwiftSimctlExample/SceneDelegate.swift index e74123f..f2764ff 100644 --- a/SwiftSimctlExample/SceneDelegate.swift +++ b/SwiftSimctlExample/SceneDelegate.swift @@ -24,11 +24,11 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { } /// If the app is opened with a url using the registered scheme `swiftsimctlexample` - /// then ths code will post a deep link notification whose object is url host + path. + /// then this code will post a deep link notification whose object is url host + path. /// /// Example: - /// - Opening `swiftsimctlexample://foo/bar` posts a Notification - /// named `"deepLink"` with object `"foo/bar"` + /// - Opening `swiftsimctlexample://foo/bar/baz` posts a Notification + /// named `"deepLink"` with String object `"foo/bar/baz"`. func scene(_ scene: UIScene, openURLContexts URLContexts: Set) { if let url = URLContexts.first?.url, From 239ef75f7440df16dabbff841dda38313671f1dd Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Thu, 28 Oct 2021 22:00:34 +1300 Subject: [PATCH 6/9] Accept open url dialog if displayed --- SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift b/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift index 9c6fa59..36bd355 100644 --- a/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift +++ b/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift @@ -29,6 +29,15 @@ class Example_03_OpenUrlTests: XCTestCase { } wait(for: [exp], timeout: 5.0) + + // First installs on fresh simulators will prompt to open registered urls. + // UIInterruptionMonitor doesn't intercept this dialog (as of iOS 15 + // & Xcode 13) so we use Springboard to tap on the potential positive dialog + // button instead. + let openButton = XCUIApplication.springboard.buttons.element(boundBy: 1) + if openButton.waitForExistence(timeout: 2) { + openButton.tap() + } let deepLinkPathLabel = app.staticTexts["myDeepLink/display"] guard deepLinkPathLabel.waitForExistence(timeout: 5.0) else { From 849712dd4082290530874df12bae02d66e829cf0 Mon Sep 17 00:00:00 2001 From: Robert Clark Date: Thu, 28 Oct 2021 22:08:25 +1300 Subject: [PATCH 7/9] Bump SwiftSimctl dependency to 0.4 --- SwiftSimctlExample.xcodeproj/project.pbxproj | 2 +- .../project.xcworkspace/xcshareddata/swiftpm/Package.resolved | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/SwiftSimctlExample.xcodeproj/project.pbxproj b/SwiftSimctlExample.xcodeproj/project.pbxproj index 791d041..cb3c46a 100644 --- a/SwiftSimctlExample.xcodeproj/project.pbxproj +++ b/SwiftSimctlExample.xcodeproj/project.pbxproj @@ -528,7 +528,7 @@ repositoryURL = "https://github.com/ctreffs/SwiftSimctl.git"; requirement = { kind = upToNextMajorVersion; - minimumVersion = 0.3.0; + minimumVersion = 0.4.0; }; }; /* End XCRemoteSwiftPackageReference section */ diff --git a/SwiftSimctlExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/SwiftSimctlExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 8305dfe..e60453e 100644 --- a/SwiftSimctlExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/SwiftSimctlExample.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -42,8 +42,8 @@ "repositoryURL": "https://github.com/ctreffs/SwiftSimctl.git", "state": { "branch": null, - "revision": "967131171e494aeeeb98976999e09b86b714be6f", - "version": "0.3.0" + "revision": "3b6542059bedd9f1e4eb0c722d68a99e623486f5", + "version": "0.4.0" } } ] From b7245aca53d26329da44667b31479ebe2417a961 Mon Sep 17 00:00:00 2001 From: Christian Treffs Date: Fri, 29 Oct 2021 06:04:33 +0200 Subject: [PATCH 8/9] Re-record appearance test screenshots --- .../testDifferentAppearancesFullscreen.1.png | Bin 49853 -> 57567 bytes .../testDifferentAppearancesFullscreen.2.png | Bin 59655 -> 68599 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/SwiftSimctlExampleUITests/__Snapshots__/Example_02_ChangeAppearanceTests/testDifferentAppearancesFullscreen.1.png b/SwiftSimctlExampleUITests/__Snapshots__/Example_02_ChangeAppearanceTests/testDifferentAppearancesFullscreen.1.png index 2b6663019472226df0c2f82df0a4692e0146690f..63465c67ec32514071c8ce0ae116837c4834313c 100644 GIT binary patch literal 57567 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 literal 49853 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 b=a&>~-lxA?`I2}E_>q@UkuH*a_3nQFrbnR# diff --git a/SwiftSimctlExampleUITests/__Snapshots__/Example_02_ChangeAppearanceTests/testDifferentAppearancesFullscreen.2.png b/SwiftSimctlExampleUITests/__Snapshots__/Example_02_ChangeAppearanceTests/testDifferentAppearancesFullscreen.2.png index e55f8ab0d491804e29375014f89510fef401923a..125add153106199e79e3a4d6d6e8f9772c2266d9 100644 GIT binary patch literal 68599 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 literal 59655 zcmeIbXH-*L_b;r7f^rl)Dou|C6(K6U1}kDH$BKv$lmkcy>5xKEITnnf5~ZpLi1gl4 zKopcJq1S+v009CC0n+b^N6+#3kN19fKfLd_&mCb5Wbb9N_F8kz@|$zbJ=eWI%#GKs z*|BEXvSn*c&YV2IY?-*jvSq7pONxP(-Nq+pz@Ozl=Z%jq%WjgJ05^dSS4AXz*$7jsJU*S&|_!WNV@4qWvE&uUp z(Dq8~=cmOTUak0fz52HBYrDSPtOS2nd!4cJ0e9NM-{q%bj@W@lIp>oW7r|fQz`>9B z2k_7SzyAuaL%P1M>j2Xhjaad{g zO_>b-^w0b6{~>6@A|(IgQ;=7X#)`n_Kfd(+L+t40UvI_7R?epc$>ePOw{IgOIDPvs zx1p7|P=Y$`+okVM{xO7cnBj_FNAyDGD|XBVclOr-A-_2NdMm~dW0P@Z zZ@=6c+1VPwV*}<6{yodTpEbWX>DODy2B~ovL)CWgkC6z!9!eNd`{j07SkQ8$^T4N! zUq|>Ai&!Nh4xo~VIKQyU|0kRib}%eb5w*0?>q(qQjmxf>DbL6*pS-V}t?f72=76y7jNEF)e{D6EaGaUt_&0*KVlNfyY-3l(tUEWO`TeV}aC zRtiF~#1`#(4r%|MPTP>__lKgAy7Xr&S4gx& zTN-P2r6t{ss!poWE#WP(NqL5g10l3iGB&=~E?mVEMk!!2aCukmohDBt)f&#Kv-BXa z#?ahh#o7cvA>mMc={WNrYoh(4l1`Y9gmQ-_1uRAa4dGP(MK~LNvups52%4qSDxv&2 zOogpKv%OiL(cn82BQYGQnUU{1`rOixJ)Uem5Of+j(TwIZv}Y$rhV@8llWwio=Tq)| zgDO1C4;cueWIa!@B+#EjP;(D3gurX?tAVV^{fm7*%`8e1w0|ZG40B0m3>{A=TWlS0 z9U6_J%&qyMJ_l#T01@N^`i>yUenWR;Jhl%-!&F}mlnqBnBL-Jo7;KR>pp0Vl>7Rw; zD(Uy{eed^BqP3U6oAxBqkhG8{>xWv`5Obfj`n;-rhjuA8Byt~11U7|Cz|>9>xuXy* z=oMOEtzM1vS~zdgQjtgMCG!^=sWP^PD+z!c`oTGKOPi9GKF+tdN8DKiBk#Gc|5J^} ztA-WeApL>EQ5ghvzQkhtn$uQSIp%boq{Nsy^>sL1*0v#EWMDDb5*|CpVl|^t^NjiX zmbh;j;8~M7)zc*GR$GGZSHOmyjcAWaGtc1G9&Z^T30x!Rp8c?SkGE_?!>P%Nyzv&# zhMHk%$ej$5ioCJf|RD9aSAuTC22waDo%P5I@NQx$^x3{OWmYDCLJKI9U1XQh*$;A6i zPsE_Zk!$3nQ^^mtcntH_>kGkN>Wsq}FeIe&L$4QlGa)ia=hJSNjyLI0;^*L>(vnc@ zaXo(;Oo@Of?++PZBo;L-~e!_5Dtt~TUf&xooH8>e^x|{jmWQf`$M;=vR3BK_S zTx!L93QJkQoBU8;vd0tUEEIl1kV4K+__DC2i>Jo{J+E!QMBXOQS?&3=<1T&fIBd9C zhA?|aC?%2lU#9T$DONG|@M~SagP~95jS+H%8Y@ZfN#{?}a8^(86YzvW7x|~Ot>r54 zSXJmq#4wxm&J?;-CA}^vx*LdH!J%40Y3`{*IBu7HBl7xpMIP{b&W0c8jlXvmNQVpe za#j(o2fC1l;f)(ZudcWn(hOFe)`mUEA$0Br<^RLh#9tB{ zhQIPHWSL@&9j^MkAQZCfrV}7v3G=a?ILC{%!~8x3qtVq~VbPaitR8ox0(a{gpTTC2 z4GDOib9_$Dh(S)tz}{={o>LQOa>4iUqMP%olfUbLbrSPi|F%4XhqiRlqd2jjXK0A9 zg%p()k09>+ia$FLscCV~?L+9^@B}ewmK|gE0-VjIK+&I{HVnYvu?{*5pYEvK7#gir zaGjBoq7}{3%Qgi?{gC)sNZ2sJN--yA`83}g>D;cnuTsU=nxJlj`Yd71CUp`PicTc{ zxnN6Gtn1ba^4@qwxFm-1_E?GUJ=vI#8~lwTE4vTmau%r-M8?V(e!j&z0=eji-O-{ykQc@F>b@1bdDi2Dmr z$i)DH5r=d~#&(+(&vCTtc*!X2N%fR$e$dh-_zv`TS}9s-l2CGmjsjib@2Gqe$3mHH z7l^Dz&s22p+)S-O75>p(2#$O6S?$k(?wmz%J1Y8#1<*Lo`B7rdf=?2sFCkzcXdhR` z7~bP4C1w5577OLgw<@we8{5*Ou@40n-ZNzs6ssOSK+O#4cU21lrX$RD*WaR3zA_O* z4o-ti(_d~ERI?|I)zi!qVh4zKJnFHj^O5($u0ihH}>Q~1A?zHxDBoyYJ zn(|{UHAcH8jk#u*IgXju;tD(Qnrc9JwvTW5d*NSM+f8#~k}Wz{LD?xqwMwY8BuG@9 zceex9EYvku&oDvA``%N49?<>P{fl$8iqMhe#bg+~XQqJP4#=BRUkeqKEPNr1zj@Fh z?aO80XNtBL%+ec;eu`(mm@BzN4q2|b)B?#eFr3qC9wVrKRV8ximqr7}UOHXAD}0a* z16tYYJ=p%GR#Kw0f3?SJ$aG{em;s8l$wJ>7sMt(oeltK@{g?_4-cb!0wz!E?Kjv`d z#~e}(|DFTIY5SxtnASkx z@OwXC{|%I@Wj#u-H!kQTJ%V*`rDuKR0{!SmJ}mbL2)7=GabByqZ3wYJ)vJ`?fD%eF z?9K^p&kzDVFd48Q_A>vuAna5JMpe&XoaYN$ojJV%NNWVab->d~#ugK?7+Hi@F z*#&*p$W!4*%7!25r3QEqTeLqct+Z>sW3ABV-|L>yaYVt?Q<48l)T73Zm~ z2Hy^#ux$b&NAWkgTXH~_rvEo$xqrPj+lJpWTr|-^2%ev~M-GZvOc7$y9@iY3Etomk z=Zb-YVH#i5W+${qv?nJUhG*?>tIa+hKEo!VLac=9gV1U99e9Mux5xc${=>w=l8chWAx4Q{q$h{BTi(y_Jj4r(`2z@BY*CvatA2!n1;BC;tsP7-2&RZABKXKW#KH zu8%i;#omgE{%K}`${gSL604(x@_^HUd%sLXbvZKKH7WIn z_7(QGQ|T3C^w8d)mK`*G-TMmSH{GiKOWz}aBqAb-h$P~qe*|76ZX%r|QrsfzCV~LJ z7zGhd65%8fm=q!IUt9+fP7>iH5l#}}BoR&$;iP|@XHh&!6m%0sCPm>}QH=ZFy#dii zfM~Zww5254cN6Wq{k!og+ME>a;EJ}nMY#Z?go%G#XHiy(DD_5^pCrmp5+!koGTr_) z3ZisCQO=|&u~d|OD@sxRH}&AZF^}7gS}s_&Oz(xT761qhi;^cq$rGaF2~qNdD0xDZ zJn;|M7bQ=Kk|#vT6Qbk^QSyW+dE)0*spwTx(fhcfmzG5@EsNgl7QO!dPlZL%rhsTu zK(r|!+7u9N3jB9(3jDv_2$&UgSJ2++-DhKlq2jBzRet>#D*5}~(}(A8NS)bo>OSdN z>Y0-(lf{n>u3vXs(ab1C?(M2AhhDwedH>}7)wdsQPT7{SUs7WE^4+ICl4(BIwkfF< zaHjh8d}sq@H16_{#qNZJAS9(*kL(oSw83cEa`E-w|M^SFh_JaiI{NRszuR|0meW&k z-%MQpqcL$A>%2bf?D2oTYP2j2C;k~rzps>a?AOLXu@TtZp#!UbK0??jedA7eopNH~ zs$Uzwt$qyoRPc7skD+{j_-9xs;y_LyX~(aPqCx(<5+X`23)?E$kZ2H6_v}E$RDOM- zbE^WHJGZs%o#&;{H=gry+W?RKwFj{E>gXHa>Bisf)ppJpKjW9fN$TXQl#N6eI5zGu zm)(C?ZKiO?a`B^^0COICr7i&q^%^T8eci^%@j5>5{fC{R#P43z~{5 z1lDABN0|>r^Ss<(!mDkAgXjDJqgDd$&OdzRmyEnkx?%nc_DPTJK^`KCeB%##`nPw-bD`AL{)%lZdW^VPjA`Lv;ndEeULvJ zlozgeyy!VU-okJjL2fg5Hz+FlxDlp(pf%EPeiz26^0NB)in8;CyKb%h@T9y)CG-5` zz6*w8)w_)d>iT&Kq!|Asi1Ub+OWV5#s^$AvR1L{h1t^x%5EMOgu~!&IGZgLj7 z{jBKIC{Q;~b_UcBJ|-jAvjKq(bJg6q!*LpG8*GyP0fU-P=FC*&z_>9}1DVqA=&W;v zyMB+Vev(ZG<1DW^e^jh`9~h_G2F3D)nmX*WqgmyX@0$%4`;4U4F(e6bl^U|EU-w4^ z^)9$~Nc42vcbjbe;8mD=w)=M6-JM?pfbJwjhOT+LMRE*Qf2g400fQd`Dhhg3Oc#SX zeiBLSwzMfr_t=p8_wPJ4*FE6ww+Y)MN!adH@ML{YV_|QZWr5+>rs6;U$k=)}`Oc-f zonO_Lhs8)fh7|2te{uJ7qr-60$AB%htyAkyG)&rTzQRwu{H^+xc}P7+Q>YxXas(Hy=aN4@w)%e|_^nb%*Io$HrKP zP9`W`Y1q$MtcUYS12u3%P(&D?U=BDBP4jf_;DUnAq}S3qBaiQGQab2vee26!nJac- zDS)Qjr8!wo+}w4rNT6h{t84+%>vfYP9|Ni)FPD&;Oaxc;$LCQJLxfeam9tCVbou>(mvsGbd$qNDQM)CP-5xSimd0Lx@Axbj zK+nfB?F_w$>=UtT@840*!I83EXhnW6=O3yybs-n~+xK3!4H^ZdGp}4|H#y(hiktz3 zF57cZmnhF~ERxa0R#l`v4aYET^>tpDDrg?C#~2KN`in$iY39WWG9FZ%j!iNIm7w`E zPKiOO-LI~cE`58zYt+4}<}+rRW-749;xpG^$yud%ujBWXG%Iv4e%l|t@kKN-3 zc$$6U&nzAO(y+U6Kat{D45|qC_Ab@KREnMvv8l<-lC~YlW+Wqy+-7i_uiCUDWqaL6 zFv;h3I#;a>!aKDCbMOoAOXa<@iaKJ|oXo9;60$9SFKji}Yt$km%$2zqP-QdqX=+dH z+0Eg?I?^b!_nlMa)NKDx!RbiObcu49**bT8y&e@>U_ z1??r9bLkZaMnFl%xqwdJ1C9|lj+vAat&CkkIdf>5DaZcVK)ZwDJCo~{6<21g)Z0%9 zt3e-K5Ehc1RDlq=`S9vhuH{fbjdf{F?&G`eHQAWMDzE`-)D@Kpt__-pc0P^-$U?#U z?Uod=D8}BstE#TwRyzyh-APln$;crD=k9Y*?zD1}=e4NsKYt{=bK6y{R9&4qwf5n5 zpGJ*NaVgr(QBWk(_Q{Kv)!kCUYQ5p`=6lD#@&+@Vdg`V%3X8JdV>P-1KBYw5M@(?Y z0)peYMJZ2f!sd(szix@xQJBGlRCZ{#0;k2dWBgWYl7LHjgsR|0CCAs6{}ySJ5i|ez zBt^9%<=n`$*n?3;{%mBqs|_TjRqMl6Yd3F7LIArrcU4$C&_K8D?{i-*sosQDSMS7z zsri1bbua1fFf=7W^pWioTQ!L5c4u1wzMjuEtw{WI>yspk^wwlI=;c+tR6ow#IJbP` zdB&9{$EQjb3$oAmi}y=61;65bkb;PZln#%f+g2*>g&L-IJR618y_2zaJ3`!_CR^E0Uc2j(OZG!Q1?o|`Q|{L7CpIQjm|nZ_B~I+Y9s5T* zH4}T-A!eUcmNm^FPTH+s`5C+Fh)Y}9im<_(`N0H<3&DpigUFl#C(WS@GP4kU1H*rBx4l*k_!=T)~8G;*&1ss=!Qs%1gWF(Z<99xViP`F7W3iyWS z8a2+|0yWYdp)OSjlYqyQ-DUaFy-y*ZrfqB%!ps>diKi}DKqtjuR_YN{&(fh)#EiCU zo2dF74%+v7ir+`>(G7T6`Y~E-rOS{sdg;WhOYuO-bu>uZDhX+ajbJxJ%`Zv$f||%hXPkIQtmgsQgr72xhDPP9$x`B8jU;@Oq%cGwRP0JxTdH=4eoY2&)5cWjc^qQMi>9E{hVx)W4;8+r*HFlHIpSEZZqR6p_AL=?1~aPR6;4Fg4HKZ>}N!Om(Pz&weTtn~r7L-}<^{&aCD%2RK ze1EU&9qM>!Tm?7D@@;BZusyW<@Hl`^5emm9q2WR@4Ms?>Ln$MMWy!hHFK476OTJ-_ z*NZV8F&gTf>V4*S$jt13m%wb?-@uIYR-*{3GcNqy+)0+bUmg zt-Nt8XVcdQ;#|}ljYf|zFmHtmmt=3B2r0^n++z^1HyV^9u8-(HfrhS042oY@V=TVv zVkpAdXoYbRb&YyG)&nwjU4H3P-Bo@Gk!OZpRxDr@9DNows3FZX z)9T-R$f`3ayrc#>vRiSr2ONJME7c~>A%lY<&ga#q#(7MlwOk+BhhV=?S5q7I9^dU4 z$2uDO>9w27$)Zyw-t3B-Q9kz8rwE1MKm=Eh8`T@Hy-V679#CRAc|?c!A=YD$Huj#s zX-kDEa>sladov!B>hWp5S^AVcb3rW0#?`l~`(_*bjJHB-%da!+Oqg`d%)3iIF@Lv& zjSpAZuuU6)lrX97TV_mOwIWO)^KF51jh?6i0rHgwdl>Jt1mwGlNS|B_?Z>T4aTBMR zvMGf}UKEa}LYxXVEBbAzm%goFpNn~}Dn7Qqah20V;q%Qa8A14)U2Wa)uW&T;_<3@x z39_D^GHHHeoh8)daD}*x@2<|A_X-EvV6cc@tt(b(0WWXJ&I2Yz-b?kstC{(1Ro{8} z+w?HjM#A4ez%W%CGqHZ{hoOs^O|@+XdnU@1pWyoD$1@W(ibDQs+Eu>&^|}MSI}g7C z?73ox_In%4oi890Cv#p_O`+ACn%e9$BNc+*+1~O*uhp*SD?79zhurhO>}zUyfQhA# z1OFl>dtdwB++tbb+Lp11lQ3W1DwWO>8-PL=Ms~W80nl<&=TO z?w8rKh#@I>>Fft7ri%^nhPlB5jKl6Fp_#3ke(;>%t9dbUyr6bc>dK(E>&U&E4`#c&ed;b^Gig3}O$qlCvj1Mf_z#ob~+!Z$(lpy_nh3u(r-fz2I7IvC0>$`d+pSap}~hqBpy? zK!1mml;0zgbOX*z4k@CIv&uk~YqQAJW3b(iavNtfo{AUX3tknHb6yX0`;n20I@U4B zhrJaI=XU(|)%ASg;n)p~y~|HSG3gDfh7P}Wvye7nGoPFpIGi6^`3Er9YcG{X=H>NM zUeaO;@*!k5esZrlhvGzZQ`Y0GxX>${6E@obq^U+udCMtGZ+AtaoG zF7#W|j{cc(+B=QlqLl7@3@h4}AeT7+{0#dG_{lrt_9 zCtjuu-aJ}*UY4ry%zTuS2uVL%m0l8Vw%^)>@D}!$p?Lz#sO}9(kD^S-o zUCYsWt-u%m?ZpbDxEyH>{WpjWXZa5* zbA=?a{ur5!2eM;ZF(GKJk&yR&yzgj-QQEiI=%{Vn553;C^3(2Ihkp2ov^DR`V!ZsN zy#}*t4t1OHH}lOq^6Cy|XfurFwcwSh(Wx2furwc3(02#rd`)6n*nn!YIMJU%?)mwH>5!CKfUzIK(9%W+-zy)lHh9pk4e@2Zy0g0k==@;Np4 zE(miHNqBobo}r6<6CE7Z0IKqDaQlmR^c?M|gv-x?lMr7XyS(lWGS$UFsOky4Bo1kB|ug}LNg0VXSei$Qshsej_t9J=zA*=jWfC6G$M(5 zF1wTH;ra6Kkp_YA&Vq9K_U!uNPPP#3kUy0X+9KAgZ;MZ-PZZ|h=x38oxi*2b0oIuE zZYD=*(gS??h_Ay4ll1(7+tf}MaG*<@=UG3Wsib|AHe>78vW*%M>33SDtO$Pw7X2a6 zPmKbc3+OCCQME30E8ES=KYj&cGyrT$P%XBD2cJYt%vMV;Mh3@rcN40>%Fg}+ZwP}w>1(*U~jU66k21}erWliK#K6ePE@u_F-J4%htecR4jK`j zx&Go1N?7jIK%ZlDdkRk-Y7T5M%dS4L#F5u+}EnxW=d*$D_w>*3f*{h2& z$vmcgwd({ap@Q^9hPVN1hmCK`DUHSk&0aTfp2Fe_^5(7UKc5HKygrxoPO#=J z@bl6wy?%QywL4bp8!`se1#&sO)fkbn@3MMNjc)J@m>DQeJpiZ z5(r3^=@`mKUd1X{Jw11clSpS8s34+f2(4lJ#;(h(0Rji!*ctVyqn^694=jQXU-(V z((?T1d*zkSNlsnf@8U3Ym0rf&Pq#ejDFBU=(oNG8 zH9`_?SiZoVrL-D;Jx6GJe-nfuPh!96Uq1P^6+{{%-|d=cvbi^+k#5?ZGntGrbU|5x z)l&nj*C2M*=USM;2rQt_+xW0xH7b4F5DyOZ2uV+gp`#}oFln?zkJHt`@g``Tul9M& zU_v!ZF=F^|(wi#<;5@fgiY*I_l#{!1sW}gBJ22I$A@Pv(;PS09h}w+w^Pj>Uy?s@o zTc@YZ2p7-g#X@h<_g*pt%C`U2&w;Mm3xeH$?w^Fb)y8Zwrm4&ID0gM&^Dhgy_Ubz> z9_R;HnG0;1j`=6+$wLbDlz+)%q<` zWM|_yP9oY0TdH1rkr{jYPpNtImFk*Z0daDTdiR7y$d+9eo5SCD@hl+~ZLMe9HE6&p z+!r1qv6k+FmnfcUKOGSVNuk=D(i$(6_Kk%UDaBUd-dGXdo<0S|Xh=maxL8Xc*dY{) z{shzA2VHz>HVPoBH=h_at@>}kP{Tj@1G zjku@(W^9kW-`i!%`t$*WYY<)6BO4R+w8lw`i1eE+HL{*l7kgRnWY>8TdH(L#pzyOY zV!PA1W+kN;ufe8(<(+ii`WOU8$wv-x-lfI0Sw2ABjCF+k=0SLS`CVk%xJ^x3vfb$`3=~=D0z-U`xjg;NgsIsY`$;HqU^~nsJTxv%y-e~;1)T|K2;D`O9F8< z)RB}^49R&A%3qhRG^J!7zpcSteJ&yqr=^jR1ldy27fj6(@&}X0j-?M(u8__Qq&>aw za)R*IWqeCY>}|X1wOaE;U*=3(L9?MXEfKQA779ODY#|f=2Ente?mloK6`U2P`1Q_F zv(rwoxm`CNAi<$QnsLsrYkR;h3pgYNe;T9U{(j`pO_VV1+rmhBb1tvRe&6~}#~Zy~;Cot6m_9Fj45ntu2N954`&?Uw|Ekj4F|{iH zVWpAK?eJZChmc)4e=*O| zPD}7_IVCf({#+f+dspl#8@1ty<=-Y+)8IfN9RmLHyPENKm)F5$?4%($!)EOm(ZB8< z^BnV~K}d1=M-Z6E#F;}rf+PCWKuGhJfrboqeZ+b5Hv^+uP#eY18nGtL_RMNv_M+K+ zTVS@*wUf9kns&l<-^fG(tZK)+BQ{4xhyS|? z2zGgXO8b8_#)1`BKfC5X_GlXb-aRU{zwtlzXn$-yN&Y&Xf40GXZ4?dipOpv`QS$Hn z0O4l8h$sIQJdxo1oBpx$|2P#CCXiUROdvSHu?zlrUiVZ#t3pNM(mp%EyP4D0y~W-N zJ(sN~P8&JIoICdT*vbtX)^Cn~d`$e*$>pcc#c$Yr`*F}Zlg~!`jy~>dSp9O`K{4sg z%m61oifA^wqIpt^Q!shi(JwDmb`z@w-UYq=f4`!pZ&b!m&2NjLMtst z_j-!``znOEBnp+<9CFIvzv5J)=DgCM)|8Y9EEnVTC+);2*>9IV> zx#U67zsXaQ>mOrr62F{6wKLb+$hK$thRQElx8fsvX}{izh9jcRcYgRU=AEU0Fk;!v z1zIV$Iz(U?RQ&~W_L)wOQanG}({RoiqECym90;0DrpuLBOy=tm3QhgD&Jbvc)9#tV zlh(p`;v*@%KQonpOxeQ*S5ojpP~^hB5CLl9O@KbzoS$i}is)NyakXjA*c|=EX0e|) zuGcuN#-4xD8dH#Xrp_?fLO$-JQEWxwAazk;x zxftQ)*MnXkqMTH_?Y1_RjlPL!9yynU9h-;xjLa(~u6O;|w;1f4moI;KQ~zKiX1 ztb#_e@9*N0`iI2mr0NgZ`vGq}0weM5y9ZnI8MZfqv~Rf>=8xq;6B~55xdTl%cnma4 zZ=5|>P=T9&w>@RkE~CNg8y;g7w)&qE4y6xhvSIUU=Z$O+Zhxk^dVSz+@OjMFs+$jh z`jZCD!H+{RvHhbd#*O0X#d@Y}TB^iG({G|+ zu;Dddfal^0OT1e9OEMSxSqR)}S#(H$T9WqyBwJdeo?$m5gXEhD5WIVfT3c<=ol!Kx zx7|>$9t#1bnLl20gvfbDAuvgca8zwOHG9Dt^=&%@Zccfs6^|?FURh$pj)mZOMAS@e zhjHRmx!gz@h2YUm-Q9^mSP@HR6P5Wlf|$z>$;BhaK9W)062!%46wml2Uk=v?F7Pxq zhXyW2U8Xd5^Dk({vl|NF3}!~;+va=Ceej?vPxDk8|0me3YovfV3S0(wXN6IL6yO~K zJ4G)if%)dq;)9ahiRK(>06HQBKM@Zw50FUB4Iu;U4$?rt8*%H|c_0U3`Z^Iob zt=t(;^S3RZn6XasnW3&TY?5jU;YAr!vYAIZ>jU~iC~qsGq!)W7lCYtneWoWr~mrxLUd2*;mRG5?Me*9eYVy5gsP=lf& z @D#f^$t;P|LI@{`n1{uJ+p%j-VHH#G*3HH{x*7wiiY!AeI0re2r)rz{XnxxI&p z2)2z9loD!@Aq#1|bSL4-#FKdJ*ad!7(r2ts{Q9E-RQZ*K%vx?&%hP7WXny?>8G@iq z#x}6m!8(%FbKj5q0ylq;YSB~bQSdA{|AX5{pqMXOlr-vyj| z7J5s6gya}9Gc6mD7&^)D@#RfG>iz&Ee*MA?#}Pb)z=tJ8>ohWEMoFX852 zX9%uGjE6##PzxE@`vr#=Y3@l&PbxeUGfq<*9a$W6WK}%vn)eP;kR=zJOoPRbQC5AP zKB3}jj%VSRWi)vNiDQwlSOdq87%&#%V2{YLIN#mmAAxrrX+6|A^yELhl*O?gfZeJol{{Ja2#wCg-b) zIaF%}$yBQ@iC>z><545?SkoKVpbR^LZ4tq2W{@-2Q41ZT8)vg9Ded?Ch1z^U_32+R z?vB^ZDR571hhbT`Wq;80?HZ;d20F1_FXuEcI`+Fm8$;YwbKLEkvM`EEBr>Ykq`60L z$|9aAMI9!iXbHVpSHGW7%31vx#`$u^0&s=A7~_~f@|d0BdQSw`hNfoW%t>wLeWagb zDm4d9v)ipuAIDPgiAt!3EzwblSSWg$1ifbNzICjphfWF}g5)7SuFufxIv8ajc&myK3zp^E@q^bsUoB=SDjD)ZN6G@a zg1lH-@w3kyu=tfh&PPgw_PJW}Gc594zOdk(!mG*}GjAV8JKG2|f>Uo^11~A}VQCST z_)Mp{=@818_at@gnACASOhMi)g>3wQDzaHBpkkC4&rwVIk;EK1G8 zF-bbfe7`cVy}3!DfT$0JL=BV_AKTc-R-2hHh8|{bh{KM}xiSzq`$Pdy2oP#PFG_*U zj??im7@392bI_L3^@)1j#d=nh6tJHkP^{HeHdaMRArq!7VlE_B^e0$FEQVUaZu4~3da?0syhob=M;cF(@ORR zLQ;u^vG~pG zEMP_ znVNzQPE)d!=7J3+C1~G3O$LX@vZIscbNTJb(r_MzbLnOMO{!u9JB=EkzxD=&(An?z zC$fWa@t#8gi`~jjS@9lHaY#yNtEtG*lv6cgVDjsB1Ne9Pi>8p@E$s}4n=HOHs3o8U z_lYl*SLalW+c3NeSZm{h{$gYQq0)&R>&QV`1TsI=^xu^Ya`tGpMw=#4K4tkE z)O@@Blu2MnWy$JgGDw4-xN>rmv^JzMd3sDDAtuI_ai@f4d7}d!GH>>R;q_OU{p?}E zSVF8p0KtA7z}Gk0ADGbl&M`gbt1} zBUCj#`f>0VjKX_<(sa^tPkji$jdnuUR5MR_jI+e*2FBNckWphn?_}ij4#m^bwkXrl zl&IQ18~@sNi97{fkN#Z`6;@S-fIr@e2{s&pN7R>q;a!okQH@EmN`$Ep zv<&|yQygcZsN;_3@IL5MVv-d)lpyYy2H`Q!aytRlLx+XS@3y9Iv7Iw!o5@t_WYW3% zO^bt77j1O`0_>phS=Ny5wmtz3Ku&i&t?yiMp8FJ= zq~Cg@Ed3Vh81-<#mZl5qI~y$u6H7ks5+FHWnr(}(Q7WVC2OtfbF#Mx0aD{WWbS2^H zg9yO7g}H;^^3ldCaF-X&9~njbBo;T0;*rPj#QRdDqhkzdL%UdfQjMj@SlYWsZ}ev| zWvKi|a*TUudxoiPY=vqku|$t(h-;~7f@ɗi5u(>I06>RYDMAg!xXE8sxTj!_37 zDo3{h&%|pRKW`TBj`)iN4=o7%*u@$y&sZFVt%VuNz4T zB9JdMv+txt34yAQpLcRp0@{41)k5qYG=At=LR^2&b4KMo<`HP{xUrb|^Fki{CTYk)@B!V1c7TTg$`%;l>;~x*SdT+=7U>3Q(vtbb4G`-Bn@MANY4xJpe zLAxQC=-m+azPw`I=F;gCO?w}CUNvy}wjmK~>o?T9HLpxP;4@Xtr-Le`*R0KvDUp8^ zU>lop9Y$G!8gj?FFM3tRG8a1%Z;ds}=Z+4+uR@bO31hxz8p_Ok-S(=saMcQ?;6Tc6Klcx>;X&RRhQmG6#xTzv@rjlHQ; z356c+XxbLXj(9cTXni)seLd@`P*|lt!z4I?&%q^p(-k;8wmE@O z@D?88-bvEm=@C@eGvL$_g;Uo<0*rFiu!&#k3^kBeCi}e=T+y=VM$up9Tq{nxvw}{l zX+)ue8kN>*({aA~bP{6Nl`vYQ&PApX>;QHteR_WD}`1MS=kWofP}|s8IX>*pPqvc@?1bl5`l*hm#x_F{E2U`V|W+YtFA} z<}J}D{5`MhK^jYfJ9^!q+95VKI9IEHn{Q~FgVDz*Ur}@kVFiw)q|+0X1-JTZq?$v9 zmp^e98-l>+o0tniUEZ736g&J3n;OO}K_&(*xXzT(5);i$4$XJ=^N3k%VUUKTcHFQ3}s&r{VS+mJo^>trx^K|_x z>K!nV0srnK)htx!mu42-#<=4Yt&{#XSt)TYfAnU-Y^D!tqR&S9B5o)<&NiThmQ_vS zKJGLNAm`h75RPiuWMOnVzxm&2T2YH$nosKPrAL~Fv;@lpIm`Y}sdHQ7c1`6a=Cu#4 z1CcYayOYa6IE#AE^{i;8*Q8|3`$V_#;`fMX10bs%x+4jD;% zu9$F}aThp2M3i1+Pp>0NB>=f{Y!Ek}&mfn3kCg59$WCf#l^mn^QpDQW^N+yvH^NJ& z^Os}g?^fIT*8Y+NVB#}#14??oYXJUkr6H}nFU!2qwhI%{2_YIhmt{6U4$UUsM zNb#AhA`%M&`tEI_S_mZM7=VOxh%N(!Z8=*RZX4dQa6N}eP0dN@nga&p7Ppxk{6%Qq zrWF>f)tZ|OcOGiI-g!g1eG$8F$8=}&^^WFDEW>8&Soaok(EOIy5z@@HO8O21n)Ne! zGKT*BX_^F?67mtHz-HO8R%3H(PXOUA776kBFYZRa7$fRQRN6om^x=#O6zJHd$ewP& z;UH&CJw}WaWuRbsIJ2|CiEMJYU~Y&(a?^+ZbyeWe%ntp6Q%`8XyZfBzDG%etBzdu6 zs%5;o?$J;|(MXEU9g{3*9=pGn*A(0V1yHz2?f5!v>S)TBi`1mRo}h-Zvbk7+;LOG# zXYT?b6qf)N-e8$}1pqID89udbeNrX7Bo@Vo+hI;pjytOvyPB; zYIRy!-@bz2PjJ0~F*0d#*FolI-G1^o!+7m-p2mCQtzjO(0DaxJ6H;VmN(4&h=O)Bk5H@{QsQXJxA#gw4H?=~5V*UBC z1IvRB?9E#DON+Z0{e17o`Cqm_jLsU_o;At%?!o^3MWeV-T$|<*-Y@$fk2gNXo+nNI z^K{XWLPb;(@sdd5M0!c2Dn$lGWOha1M1+?_s8WQz|8YIUB}E>J$Y~O}mLdmS6s8bG zPDJq~Q4~%Ts}zM#|4p+Og-=D{Q&IR-6h0M&PetKVQTS98J{5&eMd4FX_*4`={h8mg zey1qsM3k8$%3t~~&hjeNV@)kvcIc$=ylzqWOBDVRg}+4MuYYq>Md2?|_)8T25{17+ z;V)76OBDVRg}+4MFH!hQ6#f#0zrdS~KVCxuPfgMiHu@pm5sobkM9v6`Bi z2QrZGq$lyegX)R`G3uO^#n<4!I(!NhQj(LCX=GxKlgr@nfsM<>RKym}!!F#~_+r0T zKtRB)Tlp0g6^5^taHm1FL1!_lb5C!to`Hc4rv0PV#eHJpJH)3_?#BGN=kWQ#<|Js6 zA@V9Qf@<+J6?ytuX#j?XKPM{R{AavaSlE~->^;D%g2W?)+lQ~ zF=77_BDwy>f!xG&=9MfZ*D0Ta+m?$xT{)HVW%~1JyTVE=1a3<}=rD$#Tm%kTplYr{ z2J_D-)cHHRjqKis;?;|`mq|X9xdOdi2e%I9hc$GHOFrCk1=Aj!Ujxk$+qm=axk}sE zuKT9q2gPlPsA+VKEN9}6!(!rzQkk_b23A`vG9HUdngTyBRpWQ*upP_Mgn4f3i=5T# zUmO~2#<~!SB+uFxd(7vfxAO0?&p8-QMR5Hq(^`^2`0 zm6VjA3^_0rQ z{^XwEXY1CjQ&m+}P*hY-ys!&Q_kbOwaq84TF$XbeX=x~$&s~`AotT*5EYcPi7vcC| zhoih+MN?kqh8O#CQSYjIOFRLqK@m${C=?2bM558~g%|f>p_Tez0=7yUe>oTG@CmR4 zEfJf4*=}qA1RwMJeZ$YqC&1lmfSI-%oH_Py1XI-2cc<$Ae_DkR8$7-9q7r(j%fOGx MDf5%r$L+%Z7w10Jp#T5? From bbca6cb4e05329a85306a7b1d07636371d2d5420 Mon Sep 17 00:00:00 2001 From: Christian Treffs Date: Fri, 29 Oct 2021 06:06:10 +0200 Subject: [PATCH 9/9] Lint --- SwiftSimctlExample/ContentView.swift | 6 +++++- SwiftSimctlExample/SceneDelegate.swift | 2 +- SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift | 6 +++--- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/SwiftSimctlExample/ContentView.swift b/SwiftSimctlExample/ContentView.swift index c5133d9..1fac145 100644 --- a/SwiftSimctlExample/ContentView.swift +++ b/SwiftSimctlExample/ContentView.swift @@ -26,7 +26,7 @@ struct ContentView: View { } else if authorizationStatus == .denied { Button(action: { UIApplication.shared.open(URL(string: UIApplication.openSettingsURLString)!) }) { Text("Re-enable push authorization manually in settings") } } - + Text("Deep link path:") .fontWeight(.bold) .padding(4) @@ -85,12 +85,16 @@ extension UNAuthorizationStatus: CustomStringConvertible { switch self { case .authorized: return .green + case .notDetermined: return .gray + case .denied: return .red + case .ephemeral: return .blue + case .provisional: return .yellow @unknown default: diff --git a/SwiftSimctlExample/SceneDelegate.swift b/SwiftSimctlExample/SceneDelegate.swift index f2764ff..2b9b284 100644 --- a/SwiftSimctlExample/SceneDelegate.swift +++ b/SwiftSimctlExample/SceneDelegate.swift @@ -22,7 +22,7 @@ class SceneDelegate: UIResponder, UIWindowSceneDelegate { window.makeKeyAndVisible() } } - + /// If the app is opened with a url using the registered scheme `swiftsimctlexample` /// then this code will post a deep link notification whose object is url host + path. /// diff --git a/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift b/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift index 36bd355..deb5f55 100644 --- a/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift +++ b/SwiftSimctlExampleUITests/Example_03_OpenUrlTests.swift @@ -15,9 +15,9 @@ class Example_03_OpenUrlTests: XCTestCase { app.launch() let exp = expectation(description: "\(#function)") - + let deepLinkUrl = URL(string: "swiftsimctlexample://myDeepLink/display")! - + simctl.openUrl(deepLinkUrl) { result in switch result { case .success: @@ -29,7 +29,7 @@ class Example_03_OpenUrlTests: XCTestCase { } wait(for: [exp], timeout: 5.0) - + // First installs on fresh simulators will prompt to open registered urls. // UIInterruptionMonitor doesn't intercept this dialog (as of iOS 15 // & Xcode 13) so we use Springboard to tap on the potential positive dialog