From c578e7386ab2f46ed5b99487e84b0760147cafaf Mon Sep 17 00:00:00 2001 From: qodhrkawk Date: Fri, 13 Nov 2020 11:11:09 +0900 Subject: [PATCH] =?UTF-8?q?scenedelegate=20=EC=99=84=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Mongle/Mongle.xcodeproj/project.pbxproj | 4 + Mongle/Mongle/AppDelegate.swift | 5 + Mongle/Mongle/Info.plist | 4 - .../Base.lproj/LaunchScreen.storyboard | 18 +- .../Resource/Storyboard/LogIn.storyboard | 4 +- .../Resource/Storyboard/Onboarding.storyboard | 6 +- .../Storyboard/OnboardingFirst.storyboard | 20 +- .../Resource/Storyboard/SignUp.storyboard | 6 +- .../Storyboard/SignUpAgree.storyboard | 13 +- .../Storyboard/WritingSentence.storyboard | 29 +- .../WritingSentenceSecond.storyboard | 50 +- .../WritingSentenceThird.storyboard | 35 +- Mongle/Mongle/SceneDelegate.swift | 47 +- Mongle/Mongle/Source/VCs/LogInVC.swift | 57 +- .../Mongle/Source/VCs/OnboardingFirstVC.swift | 14 +- .../Source/VCs/OnboardingFourthVC.swift | 6 + .../Mongle/Source/VCs/OnboardingMainVC.swift | 77 +- .../Source/VCs/OnboardingSecondVC.swift | 9 +- .../Mongle/Source/VCs/OnboardingThirdVC.swift | 11 +- Mongle/Mongle/Source/VCs/SignUpVC.swift | 34 +- .../VCs/ThemeSelectForWritingSentenceVC.swift | 2 +- .../Source/VCs/WritingSentenceSecondVC.swift | 2 + Mongle/Mongle/Source/Views/SplashView.swift | 43 + Mongle/Podfile | 1 + Mongle/Podfile.lock | 6 +- Mongle/Pods/Manifest.lock | 6 +- Mongle/Pods/Pods.xcodeproj/project.pbxproj | 2561 +++++++++-------- Mongle/Pods/SwiftyGif/LICENSE | 21 + Mongle/Pods/SwiftyGif/README.md | 160 + Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGif.h | 19 + .../SwiftyGif/SwiftyGifManager.swift | 126 + .../SwiftyGif/UIImage+SwiftyGif.swift | 332 +++ .../SwiftyGif/UIImageView+SwiftyGif.swift | 484 ++++ .../Pods-Mongle-acknowledgements.markdown | 25 + .../Pods-Mongle-acknowledgements.plist | 31 + ...le-frameworks-Debug-input-files.xcfilelist | 1 + ...e-frameworks-Debug-output-files.xcfilelist | 1 + ...-frameworks-Release-input-files.xcfilelist | 1 + ...frameworks-Release-output-files.xcfilelist | 1 + .../Pods-Mongle/Pods-Mongle-frameworks.sh | 2 + .../Pods-Mongle/Pods-Mongle.debug.xcconfig | 6 +- .../Pods-Mongle/Pods-Mongle.release.xcconfig | 6 +- .../SwiftyGif/SwiftyGif-Info.plist | 26 + .../SwiftyGif/SwiftyGif-dummy.m | 5 + .../SwiftyGif/SwiftyGif-prefix.pch | 12 + .../SwiftyGif/SwiftyGif-umbrella.h | 17 + .../SwiftyGif/SwiftyGif.debug.xcconfig | 10 + .../SwiftyGif/SwiftyGif.modulemap | 6 + .../SwiftyGif/SwiftyGif.release.xcconfig | 10 + 49 files changed, 3088 insertions(+), 1284 deletions(-) create mode 100644 Mongle/Mongle/Source/Views/SplashView.swift create mode 100644 Mongle/Pods/SwiftyGif/LICENSE create mode 100644 Mongle/Pods/SwiftyGif/README.md create mode 100644 Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGif.h create mode 100755 Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGifManager.swift create mode 100755 Mongle/Pods/SwiftyGif/SwiftyGif/UIImage+SwiftyGif.swift create mode 100755 Mongle/Pods/SwiftyGif/SwiftyGif/UIImageView+SwiftyGif.swift create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-Info.plist create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-dummy.m create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-prefix.pch create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-umbrella.h create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.debug.xcconfig create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.modulemap create mode 100644 Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.release.xcconfig diff --git a/Mongle/Mongle.xcodeproj/project.pbxproj b/Mongle/Mongle.xcodeproj/project.pbxproj index 4c5c0e1..c55ae5b 100644 --- a/Mongle/Mongle.xcodeproj/project.pbxproj +++ b/Mongle/Mongle.xcodeproj/project.pbxproj @@ -147,6 +147,7 @@ EC148CF924BC67E7006925A0 /* 43-emoji-wink.json in Resources */ = {isa = PBXBuildFile; fileRef = EC148CF824BC67E7006925A0 /* 43-emoji-wink.json */; }; EC178CCC24BE26F5008CF514 /* SignUpEnd.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = EC178CCB24BE26F5008CF514 /* SignUpEnd.storyboard */; }; EC178CCE24BE2719008CF514 /* SignUpEndVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC178CCD24BE2719008CF514 /* SignUpEndVC.swift */; }; + EC265295255D91590043C629 /* SplashView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC265294255D91590043C629 /* SplashView.swift */; }; EC2713EA2507C9D300E4B8C3 /* SignUpAgree.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = EC2713E92507C9D300E4B8C3 /* SignUpAgree.storyboard */; }; EC304629254ED08800DB6E4A /* ServiceAgreeForSignUp.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = EC304628254ED08800DB6E4A /* ServiceAgreeForSignUp.storyboard */; }; EC30462C254ED0AA00DB6E4A /* ServiceAgreeForSignUpVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC30462B254ED0AA00DB6E4A /* ServiceAgreeForSignUpVC.swift */; }; @@ -362,6 +363,7 @@ EC148CF824BC67E7006925A0 /* 43-emoji-wink.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "43-emoji-wink.json"; sourceTree = ""; }; EC178CCB24BE26F5008CF514 /* SignUpEnd.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = SignUpEnd.storyboard; sourceTree = ""; }; EC178CCD24BE2719008CF514 /* SignUpEndVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignUpEndVC.swift; sourceTree = ""; }; + EC265294255D91590043C629 /* SplashView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SplashView.swift; sourceTree = ""; }; EC2713E92507C9D300E4B8C3 /* SignUpAgree.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = SignUpAgree.storyboard; sourceTree = ""; }; EC304628254ED08800DB6E4A /* ServiceAgreeForSignUp.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = ServiceAgreeForSignUp.storyboard; sourceTree = ""; }; EC30462B254ED0AA00DB6E4A /* ServiceAgreeForSignUpVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ServiceAgreeForSignUpVC.swift; sourceTree = ""; }; @@ -460,6 +462,7 @@ 7FFEA28024BECD70003D381A /* MonglePopupView.swift */, 7FBFAB75255850CA0079FAC5 /* LoginRequestPopupView.swift */, 7FFEA28224BF4839003D381A /* ToastView.swift */, + EC265294255D91590043C629 /* SplashView.swift */, ); path = Views; sourceTree = ""; @@ -1078,6 +1081,7 @@ 7FA8C4B124C0EFB900317F43 /* ThemeBookmarkData.swift in Sources */, ECF391D0255826C5009337D3 /* OnboardingPVC.swift in Sources */, EC7410B824BA5F1A00CBAF1C /* ThemeMakeImagesCVC.swift in Sources */, + EC265295255D91590043C629 /* SplashView.swift in Sources */, B8F4DDF624B20FD00075FDC1 /* SearchTabMainVC.swift in Sources */, 7FFEA28924BF9C72003D381A /* TodaySentenceData.swift in Sources */, ECA23EE024B5F5F100C100F1 /* WritingSentenceSecondVC.swift in Sources */, diff --git a/Mongle/Mongle/AppDelegate.swift b/Mongle/Mongle/AppDelegate.swift index fe128be..2de468c 100644 --- a/Mongle/Mongle/AppDelegate.swift +++ b/Mongle/Mongle/AppDelegate.swift @@ -15,6 +15,11 @@ class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. + + + + + return true } diff --git a/Mongle/Mongle/Info.plist b/Mongle/Mongle/Info.plist index d6a01c7..5035a01 100644 --- a/Mongle/Mongle/Info.plist +++ b/Mongle/Mongle/Info.plist @@ -53,16 +53,12 @@ Default Configuration UISceneDelegateClassName $(PRODUCT_MODULE_NAME).SceneDelegate - UISceneStoryboardFile - LogIn UILaunchStoryboardName LaunchScreen - UIMainStoryboardFile - UnderTab UIRequiredDeviceCapabilities armv7 diff --git a/Mongle/Mongle/Resource/Storyboard/Base.lproj/LaunchScreen.storyboard b/Mongle/Mongle/Resource/Storyboard/Base.lproj/LaunchScreen.storyboard index 4aefc86..93fa46f 100644 --- a/Mongle/Mongle/Resource/Storyboard/Base.lproj/LaunchScreen.storyboard +++ b/Mongle/Mongle/Resource/Storyboard/Base.lproj/LaunchScreen.storyboard @@ -1,9 +1,11 @@ - + - + + + @@ -14,14 +16,8 @@ - - - - - - - + @@ -30,6 +26,8 @@ - + + + diff --git a/Mongle/Mongle/Resource/Storyboard/LogIn.storyboard b/Mongle/Mongle/Resource/Storyboard/LogIn.storyboard index 75ff327..5dc0fe8 100644 --- a/Mongle/Mongle/Resource/Storyboard/LogIn.storyboard +++ b/Mongle/Mongle/Resource/Storyboard/LogIn.storyboard @@ -1,9 +1,9 @@ - + - + diff --git a/Mongle/Mongle/Resource/Storyboard/Onboarding.storyboard b/Mongle/Mongle/Resource/Storyboard/Onboarding.storyboard index 678981d..a2c6167 100644 --- a/Mongle/Mongle/Resource/Storyboard/Onboarding.storyboard +++ b/Mongle/Mongle/Resource/Storyboard/Onboarding.storyboard @@ -1,5 +1,5 @@ - + @@ -68,6 +68,9 @@ + + + - + diff --git a/Mongle/Mongle/Resource/Storyboard/WritingSentence.storyboard b/Mongle/Mongle/Resource/Storyboard/WritingSentence.storyboard index 4e63756..4020331 100644 --- a/Mongle/Mongle/Resource/Storyboard/WritingSentence.storyboard +++ b/Mongle/Mongle/Resource/Storyboard/WritingSentence.storyboard @@ -1,9 +1,11 @@ - + - + + + @@ -15,7 +17,7 @@ - + + + - + - - + - - - + + + @@ -75,17 +80,18 @@ - - + + - + - + + @@ -110,7 +116,6 @@ - @@ -127,4 +132,12 @@ + + + + + + + + diff --git a/Mongle/Mongle/SceneDelegate.swift b/Mongle/Mongle/SceneDelegate.swift index c89bf14..8faf2f7 100644 --- a/Mongle/Mongle/SceneDelegate.swift +++ b/Mongle/Mongle/SceneDelegate.swift @@ -9,45 +9,70 @@ import UIKit class SceneDelegate: UIResponder, UIWindowSceneDelegate { - + var window: UIWindow? - - + + func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { // Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`. // If using a storyboard, the `window` property will automatically be initialized and attached to the scene. // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead). - guard let _ = (scene as? UIWindowScene) else { return } + + guard let scene = (scene as? UIWindowScene) else { return } + let defaults = UserDefaults.standard + + var storyBoard = UIStoryboard(name: "Onboarding", bundle: nil) + var rootVc = storyBoard.instantiateViewController(identifier: "OnboardingMainVC") + + OnboardingMainVC.shouldShowSplash = true + + if let appIsAlreadyLaunched = defaults.string(forKey: "isAlreadyLaunched"){ + storyBoard = UIStoryboard(name: "LogIn", bundle: nil) + rootVc = storyBoard.instantiateViewController(identifier: "LogInVC") + + } + else{ + defaults.set(true,forKey: "isAlreadyLaunched") + + } + + window = UIWindow(windowScene: scene) + + window?.rootViewController = rootVc + window?.makeKeyAndVisible() + + + // guard let _ = (scene as? UIWindowScene) else { return } } - + func sceneDidDisconnect(_ scene: UIScene) { // Called as the scene is being released by the system. // This occurs shortly after the scene enters the background, or when its session is discarded. // Release any resources associated with this scene that can be re-created the next time the scene connects. // The scene may re-connect later, as its session was not neccessarily discarded (see `application:didDiscardSceneSessions` instead). } - + func sceneDidBecomeActive(_ scene: UIScene) { // Called when the scene has moved from an inactive state to an active state. // Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive. } - + func sceneWillResignActive(_ scene: UIScene) { // Called when the scene will move from an active state to an inactive state. // This may occur due to temporary interruptions (ex. an incoming phone call). } - + func sceneWillEnterForeground(_ scene: UIScene) { // Called as the scene transitions from the background to the foreground. // Use this method to undo the changes made on entering the background. } - + func sceneDidEnterBackground(_ scene: UIScene) { // Called as the scene transitions from the foreground to the background. // Use this method to save data, release shared resources, and store enough scene-specific state information // to restore the scene back to its current state. } - - + + } diff --git a/Mongle/Mongle/Source/VCs/LogInVC.swift b/Mongle/Mongle/Source/VCs/LogInVC.swift index de9b834..48271bf 100644 --- a/Mongle/Mongle/Source/VCs/LogInVC.swift +++ b/Mongle/Mongle/Source/VCs/LogInVC.swift @@ -91,6 +91,7 @@ class LogInVC: UIViewController { } var runCount = 0 + var runCountForSplash = 0 //MARK:- LifeCycle Methods @@ -104,13 +105,10 @@ class LogInVC: UIViewController { self.view.addSubview(splash) - splash.snp.makeConstraints{ - $0.width.equalTo(350) - $0.height.equalTo(200) - $0.center.equalToSuperview() - + if(OnboardingMainVC.shouldShowSplash){ + showSplash() } - + OnboardingMainVC.shouldShowSplash = false // splashPlay() @@ -188,7 +186,52 @@ class LogInVC: UIViewController { }) } - + func showSplash(){ + let containView = UIView() + containView.backgroundColor = UIColor(red: 251 / 255.0, green: 251 / 255.0, blue: 251 / 255.0, alpha: 1.0) + self.view.addSubview(containView) + containView.frame = self.view.bounds + + var imageView = UIImageView() + do{ + let gif = try UIImage(gifName: "Comp 3") + imageView = UIImageView(gifImage: gif,loopCount: 1) + + self.view.addSubview(imageView) + imageView.snp.makeConstraints{ + $0.width.equalTo(350) + $0.height.equalTo(200) + $0.center.equalToSuperview() + + } + + + } catch{ + print(error) + } + + + Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true) { timer in + self.runCountForSplash += 1 + + + if self.runCountForSplash == 30 { + timer.invalidate() + + UIView.animate(withDuration: 1.0, animations: { + imageView.removeFromSuperview() + containView.alpha = 0 + + + }) + + + + } + } + + + } func animate2(){ UIView.animate(withDuration: 1.0, animations: { self.unHideAllItems() diff --git a/Mongle/Mongle/Source/VCs/OnboardingFirstVC.swift b/Mongle/Mongle/Source/VCs/OnboardingFirstVC.swift index 33c2b63..56edde0 100644 --- a/Mongle/Mongle/Source/VCs/OnboardingFirstVC.swift +++ b/Mongle/Mongle/Source/VCs/OnboardingFirstVC.swift @@ -17,9 +17,16 @@ class OnboardingFirstVC: UIViewController { @IBOutlet weak var mongleImage: UIImageView! @IBOutlet weak var mentImage: UIImageView! + @IBOutlet weak var mentTopConstraint: NSLayoutConstraint! - static var onboardingBDelegate: OnboardingButtonDelegate? + @IBOutlet weak var backgroundBottom: NSLayoutConstraint! + @IBOutlet weak var bookBottom: NSLayoutConstraint! + @IBOutlet weak var mongleBottom: NSLayoutConstraint! + + static var onboardingBDelegate: OnboardingButtonDelegate? + let deviceBound = UIScreen.main.bounds.height/812.0 + //MARK: - LifeCycle Methods @@ -44,6 +51,11 @@ class OnboardingFirstVC: UIViewController { mongleImage.image = UIImage(named: "onboarding1ImgMongle") mentImage.image = UIImage(named: "onboarding1Text") + + backgroundBottom.constant = 293*deviceBound + mentTopConstraint.constant = 116*deviceBound + bookBottom.constant = 293*deviceBound + mongleBottom.constant = 237*deviceBound diff --git a/Mongle/Mongle/Source/VCs/OnboardingFourthVC.swift b/Mongle/Mongle/Source/VCs/OnboardingFourthVC.swift index 0a0aff5..166838e 100644 --- a/Mongle/Mongle/Source/VCs/OnboardingFourthVC.swift +++ b/Mongle/Mongle/Source/VCs/OnboardingFourthVC.swift @@ -26,7 +26,10 @@ class OnboardingFourthVC: UIViewController { var collisionBehavior : UICollisionBehavior! var bouncingBehavior : UIDynamicItemBehavior! + @IBOutlet weak var mongleBottomConstraint: NSLayoutConstraint! + let deviceBound = UIScreen.main.bounds.height/812.0 + @IBOutlet weak var mentTop: NSLayoutConstraint! override func viewDidLoad() { super.viewDidLoad() @@ -48,6 +51,9 @@ class OnboardingFourthVC: UIViewController { lookAroundButton.setTitleColor(.veryLightPink, for: .normal) startButton.makeRounded(cornerRadius: 27) mongleContainView.backgroundColor = UIColor.black.withAlphaComponent(0) + mongleBottomConstraint.constant = 286*deviceBound + mentTop.constant = 116*deviceBound + } diff --git a/Mongle/Mongle/Source/VCs/OnboardingMainVC.swift b/Mongle/Mongle/Source/VCs/OnboardingMainVC.swift index 75d35f1..c2d4d0a 100644 --- a/Mongle/Mongle/Source/VCs/OnboardingMainVC.swift +++ b/Mongle/Mongle/Source/VCs/OnboardingMainVC.swift @@ -20,9 +20,18 @@ class OnboardingMainVC: UIViewController { @IBOutlet weak var jumpButton: UIButton! @IBOutlet weak var nextButton: UIButton! + @IBOutlet weak var stackTopCons: NSLayoutConstraint! + var runCount = 0 + static var shouldShowSplash = false + + let deviceBound = UIScreen.main.bounds.height/812.0 override func viewDidLoad() { super.viewDidLoad() + if(OnboardingMainVC.shouldShowSplash){ + showSplash() + } + OnboardingMainVC.shouldShowSplash = false setItems() // Do any additional setup after loading the view. } @@ -41,7 +50,7 @@ class OnboardingMainVC: UIViewController { OnboardingFourthVC.onboardingBDelegate = self - + stackTopCons.constant = 219*deviceBound nextButton.makeRounded(cornerRadius: 27) nextButton.backgroundColor = .softGreen @@ -60,7 +69,56 @@ class OnboardingMainVC: UIViewController { circles[i].makeRounded(cornerRadius: 3.5) } + + + + + } + + func showSplash(){ + let containView = UIView() + containView.backgroundColor = UIColor(red: 251 / 255.0, green: 251 / 255.0, blue: 251 / 255.0, alpha: 1.0) + self.view.addSubview(containView) + containView.frame = self.view.bounds + + var imageView = UIImageView() + do{ + let gif = try UIImage(gifName: "Comp 3") + imageView = UIImageView(gifImage: gif,loopCount: 1) + + self.view.addSubview(imageView) + imageView.snp.makeConstraints{ + $0.width.equalTo(350) + $0.height.equalTo(200) + $0.center.equalToSuperview() + + } + + + } catch{ + print(error) + } + + + Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true) { timer in + self.runCount += 1 + + if self.runCount == 30 { + timer.invalidate() + + UIView.animate(withDuration: 1.0, animations: { + imageView.removeFromSuperview() + containView.alpha = 0 + + + }) + + + + } + } + } @@ -117,6 +175,23 @@ class OnboardingMainVC: UIViewController { } + @IBAction func jumpButtonAction(_ sender: Any) { + guard let vcName = UIStoryboard(name: "LogIn", + bundle: nil).instantiateViewController( + withIdentifier: "LogInVC") as? LogInVC + else{ + return + } + + vcName.modalPresentationStyle = .fullScreen + self.dismiss(animated: true, completion: nil) + + self.present(vcName, animated: true, completion: nil) + + + } + + diff --git a/Mongle/Mongle/Source/VCs/OnboardingSecondVC.swift b/Mongle/Mongle/Source/VCs/OnboardingSecondVC.swift index 7ecebea..e579e14 100644 --- a/Mongle/Mongle/Source/VCs/OnboardingSecondVC.swift +++ b/Mongle/Mongle/Source/VCs/OnboardingSecondVC.swift @@ -15,8 +15,12 @@ class OnboardingSecondVC: UIViewController { @IBOutlet weak var backgroundImage: UIImageView! @IBOutlet weak var curatorImage: UIImageView! @IBOutlet weak var mongleImage: UIImageView! + let deviceBound = UIScreen.main.bounds.height/812.0 - + @IBOutlet weak var mentTop: NSLayoutConstraint! + + @IBOutlet weak var curatorBottom: NSLayoutConstraint! + @IBOutlet weak var mongleBottom: NSLayoutConstraint! static var onboardingBDelegate: OnboardingButtonDelegate? override func viewDidLoad() { @@ -47,6 +51,9 @@ class OnboardingSecondVC: UIViewController { mongleImage.image = UIImage(named: "onboarding2ImgMongle") mentImage.image = UIImage(named: "onboarding2Text") + mentTop.constant = 116*deviceBound + curatorBottom.constant = 245*deviceBound + mongleBottom.constant = 202*deviceBound } diff --git a/Mongle/Mongle/Source/VCs/OnboardingThirdVC.swift b/Mongle/Mongle/Source/VCs/OnboardingThirdVC.swift index b7254ad..8c2720e 100644 --- a/Mongle/Mongle/Source/VCs/OnboardingThirdVC.swift +++ b/Mongle/Mongle/Source/VCs/OnboardingThirdVC.swift @@ -18,6 +18,13 @@ class OnboardingThirdVC: UIViewController { @IBOutlet weak var mongleImage: UIImageView! static var onboardingBDelegate: OnboardingButtonDelegate? static var onboardingTFDelegate : OnboardingThreeToFourDelegate? + let deviceBound = UIScreen.main.bounds.height/812.0 + + @IBOutlet weak var mentTop: NSLayoutConstraint! + + @IBOutlet weak var bookBottom: NSLayoutConstraint! + + @IBOutlet weak var mongleBottom: NSLayoutConstraint! override func viewDidLoad() { super.viewDidLoad() @@ -43,7 +50,9 @@ class OnboardingThirdVC: UIViewController { mongleImage.image = UIImage(named: "onboarding3ImgMongle") mentImage.image = UIImage(named: "onboarding3Text") - + mentTop.constant = 116*deviceBound + bookBottom.constant = 205*deviceBound + mongleBottom.constant = 208*deviceBound } func startAnimation(){ diff --git a/Mongle/Mongle/Source/VCs/SignUpVC.swift b/Mongle/Mongle/Source/VCs/SignUpVC.swift index 9f6fe93..c369fc7 100644 --- a/Mongle/Mongle/Source/VCs/SignUpVC.swift +++ b/Mongle/Mongle/Source/VCs/SignUpVC.swift @@ -42,6 +42,8 @@ class SignUpVC: UIViewController, UITextFieldDelegate { @IBOutlet weak var progressBar: UIProgressView! @IBOutlet weak var upperBlurImageView: UIImageView! + + //MARK:- Constraints For Warning @IBOutlet weak var emailToPassWordConstraint: NSLayoutConstraint! @@ -135,15 +137,17 @@ class SignUpVC: UIViewController, UITextFieldDelegate { var emailIsWarning : Int = 0 var passwordIsWarning : Int = 0 - let deviceBound = UIScreen.main.bounds.height/812.0 + let deviceBound = (UIScreen.main.bounds.height-317.0)/495.0 + + @IBOutlet weak var upperBlurHeight: NSLayoutConstraint! //MARK:- LifeCycle Methods override func viewDidLoad() { super.viewDidLoad() - + print("devicebound : \(deviceBound)") setItems() setSmallBalls() setProgressBar() @@ -169,7 +173,7 @@ class SignUpVC: UIViewController, UITextFieldDelegate { //MARK:- User Define Functions func setItems(){ backButton.setImage(UIImage(named: "joinEmailErrorBtnClose")?.withRenderingMode(.alwaysOriginal), for: .normal) - + upperBlurHeight.constant = 91*deviceBound emailTextField.placeholder = "이메일 주소" passWordTextField.placeholder = "비밀번호" @@ -274,8 +278,12 @@ class SignUpVC: UIViewController, UITextFieldDelegate { if textField == passWordTextField || textField == passWordTextField2 { - let move = CGPoint(x: 0, y: 162) - signUpScrollView.setContentOffset(move, animated: false) +// let move = CGPoint(x: 0, y: (105+emailIsWarning)*Int(deviceBound)) + let move = CGPoint(x: 0, y: (105+emailIsWarning)) + UIView.animate(withDuration: 0.5, animations: { + + self.signUpScrollView.setContentOffset(move, animated: false) + }) hidePasswordWarning() @@ -283,13 +291,23 @@ class SignUpVC: UIViewController, UITextFieldDelegate { } else if textField == nickNameTextField { - let move = CGPoint(x: 0, y: 280) - signUpScrollView.setContentOffset(move, animated: false) +// let move = CGPoint(x: 0, y: (280+emailIsWarning+passwordIsWarning)*Int(deviceBound)) + let move = CGPoint(x: 0, y: (280+emailIsWarning+passwordIsWarning)) + UIView.animate(withDuration: 0.5, animations: { + + self.signUpScrollView.setContentOffset(move, animated: false) + }) + secondPasswordEnd() hideNickNameWarning() updateNicknameQuantity() } else if textField == emailTextField{ + let move = CGPoint(x: 0, y: 0) + UIView.animate(withDuration: 0.5, animations: { + + self.signUpScrollView.setContentOffset(move, animated: false) + }) secondPasswordEnd() hideEmailWarning() } @@ -384,7 +402,7 @@ class SignUpVC: UIViewController, UITextFieldDelegate { underBlur.snp.makeConstraints { $0.bottom.equalToSuperview().offset(-keyboardSize.height) - $0.height.equalTo(123) + $0.height.equalTo(123*deviceBound) $0.leading.trailing.equalToSuperview() } diff --git a/Mongle/Mongle/Source/VCs/ThemeSelectForWritingSentenceVC.swift b/Mongle/Mongle/Source/VCs/ThemeSelectForWritingSentenceVC.swift index fc56ad2..49b1333 100644 --- a/Mongle/Mongle/Source/VCs/ThemeSelectForWritingSentenceVC.swift +++ b/Mongle/Mongle/Source/VCs/ThemeSelectForWritingSentenceVC.swift @@ -227,7 +227,7 @@ class ThemeSelectForWritingSentenceVC: UIViewController, UITextFieldDelegate { guard let themeForSentences = data as? [ThemeSelectForWriteData] else {return} - self.themes.append(noName) +// self.themes.append(noName) for themeForSentence in themeForSentences{ self.themes.append(themeForSentence) diff --git a/Mongle/Mongle/Source/VCs/WritingSentenceSecondVC.swift b/Mongle/Mongle/Source/VCs/WritingSentenceSecondVC.swift index 8a9fd04..501d189 100644 --- a/Mongle/Mongle/Source/VCs/WritingSentenceSecondVC.swift +++ b/Mongle/Mongle/Source/VCs/WritingSentenceSecondVC.swift @@ -81,6 +81,8 @@ class WritingSentenceSecondVC: UIViewController, BookSearchDataDelegate { backButton.tintColor = .veryLightPink setNextButton() searchTextButton.setImage(UIImage(named: "themeWritingSentenceBookBtnBookSearch")?.withRenderingMode(.alwaysOriginal), for: .normal) + searchTextButton.imageView?.contentMode = .scaleToFill + searchTextButton.setBorder(borderColor: .veryLightPinkFive, borderWidth: 1.0) bookTitleLabel.text = "" setWarning() searchTextButton.makeRounded(cornerRadius: 10) diff --git a/Mongle/Mongle/Source/Views/SplashView.swift b/Mongle/Mongle/Source/Views/SplashView.swift new file mode 100644 index 0000000..3480145 --- /dev/null +++ b/Mongle/Mongle/Source/Views/SplashView.swift @@ -0,0 +1,43 @@ +// +// SplashView.swift +// Mongle +// +// Created by Yunjae Kim on 2020/11/13. +// Copyright © 2020 이주혁. All rights reserved. +// + +import UIKit +import SwiftyGif + +class SplashView: UIView { + + + + override init(frame: CGRect) { + super.init(frame: frame) + do{ + let gif = try UIImage(gifName: "Comp 3") + let imageView = UIImageView(gifImage: gif,loopCount: 1) + imageView.frame = self.bounds + self.addSubview(imageView) + + + } catch{ + print(error) + } + + + + + + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + + + + +} diff --git a/Mongle/Podfile b/Mongle/Podfile index 9f98a38..f40e593 100644 --- a/Mongle/Podfile +++ b/Mongle/Podfile @@ -13,6 +13,7 @@ pod 'Then' pod 'Hero' pod 'lottie-ios' pod 'Gifu' +pod 'SwiftyGif' # Pods for Mongle end diff --git a/Mongle/Podfile.lock b/Mongle/Podfile.lock index 4e33888..2e66c41 100644 --- a/Mongle/Podfile.lock +++ b/Mongle/Podfile.lock @@ -7,6 +7,7 @@ PODS: - Kingfisher/Core (5.10.1) - lottie-ios (3.1.8) - SnapKit (5.0.1) + - SwiftyGif (5.3.0) - Then (2.7.0) DEPENDENCIES: @@ -16,6 +17,7 @@ DEPENDENCIES: - Kingfisher (~> 5.0) - lottie-ios - SnapKit (~> 5.0.0) + - SwiftyGif - Then SPEC REPOS: @@ -26,6 +28,7 @@ SPEC REPOS: - Kingfisher - lottie-ios - SnapKit + - SwiftyGif - Then SPEC CHECKSUMS: @@ -35,8 +38,9 @@ SPEC CHECKSUMS: Kingfisher: eb36b7dfcc78d60877051c92c119a2865972961a lottie-ios: 48fac6be217c76937e36e340e2d09cf7b10b7f5f SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb + SwiftyGif: e466e86c660d343357ab944a819a101c4127cb40 Then: acfe0be7e98221c6204e12f8161459606d5d822d -PODFILE CHECKSUM: 9999fb439299937365a01785539b73ba18a8f324 +PODFILE CHECKSUM: 09d516795814edb0664344d1e9095e22e835a77b COCOAPODS: 1.9.3 diff --git a/Mongle/Pods/Manifest.lock b/Mongle/Pods/Manifest.lock index 4e33888..2e66c41 100644 --- a/Mongle/Pods/Manifest.lock +++ b/Mongle/Pods/Manifest.lock @@ -7,6 +7,7 @@ PODS: - Kingfisher/Core (5.10.1) - lottie-ios (3.1.8) - SnapKit (5.0.1) + - SwiftyGif (5.3.0) - Then (2.7.0) DEPENDENCIES: @@ -16,6 +17,7 @@ DEPENDENCIES: - Kingfisher (~> 5.0) - lottie-ios - SnapKit (~> 5.0.0) + - SwiftyGif - Then SPEC REPOS: @@ -26,6 +28,7 @@ SPEC REPOS: - Kingfisher - lottie-ios - SnapKit + - SwiftyGif - Then SPEC CHECKSUMS: @@ -35,8 +38,9 @@ SPEC CHECKSUMS: Kingfisher: eb36b7dfcc78d60877051c92c119a2865972961a lottie-ios: 48fac6be217c76937e36e340e2d09cf7b10b7f5f SnapKit: 97b92857e3df3a0c71833cce143274bf6ef8e5eb + SwiftyGif: e466e86c660d343357ab944a819a101c4127cb40 Then: acfe0be7e98221c6204e12f8161459606d5d822d -PODFILE CHECKSUM: 9999fb439299937365a01785539b73ba18a8f324 +PODFILE CHECKSUM: 09d516795814edb0664344d1e9095e22e835a77b COCOAPODS: 1.9.3 diff --git a/Mongle/Pods/Pods.xcodeproj/project.pbxproj b/Mongle/Pods/Pods.xcodeproj/project.pbxproj index 68e8e66..26bf9bc 100644 --- a/Mongle/Pods/Pods.xcodeproj/project.pbxproj +++ b/Mongle/Pods/Pods.xcodeproj/project.pbxproj @@ -7,747 +7,781 @@ objects = { /* Begin PBXBuildFile section */ - 000FB9EDA233684DCE3C0D776F682440 /* Array+HeroModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1149BF992664340980ABB20D6510C4D /* Array+HeroModifier.swift */; }; - 005B4F561333B9558CB12B5377C89CDF /* AnimatedControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = E28F9B13866075207299891CA97369D2 /* AnimatedControl.swift */; }; - 01C550A53C9E2047C83F8E85BBB558E6 /* ConstraintLayoutSupportDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE781F9515B9CF4462A0607DC670FC96 /* ConstraintLayoutSupportDSL.swift */; }; - 039EAFE7935113805F3FC21BF1B7C9D5 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 673781A66E657DB9CA3FF3B6125E25D7 /* LayoutConstraint.swift */; }; - 042933655BFFDC7E7290C04C429E32CA /* KeyframeGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 650CA88FCD3C5A49AE9AA7833311FF79 /* KeyframeGroup.swift */; }; + 000FB9EDA233684DCE3C0D776F682440 /* Array+HeroModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22E0E189BA6B31B07C79D37F6D4A6B64 /* Array+HeroModifier.swift */; }; + 005B4F561333B9558CB12B5377C89CDF /* AnimatedControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD618F46724A1666C518E2ADCF4AD180 /* AnimatedControl.swift */; }; + 01C550A53C9E2047C83F8E85BBB558E6 /* ConstraintLayoutSupportDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B9F5E38E35B7FF17C4EC4B203D3F91 /* ConstraintLayoutSupportDSL.swift */; }; + 039EAFE7935113805F3FC21BF1B7C9D5 /* LayoutConstraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7CAB3F4EC7A7101A0510D9B9596B101 /* LayoutConstraint.swift */; }; + 042933655BFFDC7E7290C04C429E32CA /* KeyframeGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 795FEB87FAD012EFAB8200461C298413 /* KeyframeGroup.swift */; }; 04543980C4A7CE442330B0F1BC4A9A54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - 056F36BBD8A84DFFDAAC3054E85D9FFE /* ShapeItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E030D20E30B8258323F65CE4CA00659 /* ShapeItem.swift */; }; - 0703CE26B7245672B91E0B78E1281E44 /* HeroTransition+UIViewControllerTransitioningDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3401C421AC29EE4AC4AD32F868FAE34F /* HeroTransition+UIViewControllerTransitioningDelegate.swift */; }; - 09433CD8C4A2D4227DF98AB78E246011 /* Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = C62890DC84AB9F21651C7F64F634EC13 /* Image.swift */; }; + 056F36BBD8A84DFFDAAC3054E85D9FFE /* ShapeItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4D4D24A669090A27466D5644A138B4D /* ShapeItem.swift */; }; + 0703CE26B7245672B91E0B78E1281E44 /* HeroTransition+UIViewControllerTransitioningDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD9434751E02B3494AEEC4FF32C9DE9A /* HeroTransition+UIViewControllerTransitioningDelegate.swift */; }; + 09433CD8C4A2D4227DF98AB78E246011 /* Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = F54B8AB80488E69628CADB592AFC151B /* Image.swift */; }; 09759A3CD181CC07D8E69462D2E9424C /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B99FD4243E137E0B9AC163E70D9764D4 /* CFNetwork.framework */; }; - 0A3AA2E0FDAF8A8858240069811996EA /* Lexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4FBE195A95FA32DCF3A3699C72A4F24 /* Lexer.swift */; }; - 0BCC90663FCEEE727193565299F96615 /* LayerImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F994D55A20731E1F674A2077B1547EA /* LayerImageProvider.swift */; }; - 0C5E11DE24DAA737704B355F5F2F3426 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C36A9793EE005393658DA65C96F0C61 /* ParameterEncoding.swift */; }; - 0C8C91A946F029E0110E06480F600A47 /* HeroTransition+CustomTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F8F592DA41CEC240EF6695ED2662DE6 /* HeroTransition+CustomTransition.swift */; }; - 0E2025F3049EB290C9C701EB7697FD83 /* HeroTransition+Animate.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEE7D769A9B9AEED6D80425FCEF54B01 /* HeroTransition+Animate.swift */; }; - 113F47C73EE6BD2FD94CE7F0131D7963 /* LRUAnimationCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58880C77985DEA326E266D3755E4549 /* LRUAnimationCache.swift */; }; - 1212C94DCD6110D6FD59682B542871AF /* PassThroughOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = E25A6E0C38C7369F8E045A531F117BB9 /* PassThroughOutputNode.swift */; }; - 132E0F619E4338E5D1B27E4C72076B3F /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2590E12388F3382BB244E5FFC78893E6 /* Notifications.swift */; }; - 133DFB5C6578D1EB9DBE5D6D97C4E5D4 /* AssetLibrary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20943A79D1783916DB9375435C808E6B /* AssetLibrary.swift */; }; - 143BC48EA7B427B9F43FBF38C1209904 /* HeroViewControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F78F1986B6FB9B01427079A2273309AD /* HeroViewControllerDelegate.swift */; }; - 14672662061590430AF4801C432020A6 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FB5C3F6EDF5E85028BCF9AE67A8CB15 /* SessionDelegate.swift */; }; - 14BD0DB2C04038BC5857C1F124208111 /* ImageAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3604CBFB489DB5C1C97BECA152DA5486 /* ImageAsset.swift */; }; - 163D80EDD1F5C6F1FA7BDE4124CC83D3 /* TextLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40D4BA2C71FF3979BC71A1DF19CF6BE5 /* TextLayerModel.swift */; }; - 16F25B4ACC45B14B8144A66A394C1181 /* InvertedMatteLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AD097E821679606048EEB2B065BD050 /* InvertedMatteLayer.swift */; }; - 16F2B118559E5283793D691EBBC9AA79 /* Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57A6CDC7BAACD3CEA85284441314494B /* Color.swift */; }; - 171CFEBFD0A93CFF6DC40E85EBF3BF8A /* CacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9355CFF52DDD9FA1263500B04FBDC4FC /* CacheSerializer.swift */; }; - 17AD9ACF6690DF6EDC3B5D56CBA45E95 /* GradientStroke.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB3C89F392CC2E66A55C3B3E0ADB005D /* GradientStroke.swift */; }; - 1945CD5D63A1C164AEAAA9A33E85571E /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EEF7244BB902810882BDE9DACC737BF7 /* Alamofire-dummy.m */; }; - 1956E392D500F3CD899D39A5F805736D /* Typealiases.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C0D43993F823C5AEBF1399A678302C9 /* Typealiases.swift */; }; - 1986B50C74F1697EA43F68335C93CEB3 /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6357018B437DFB007BA6EB76CBD1B42F /* MultipartFormData.swift */; }; - 1A73F39CDDEEADB24723A3F6CBC359AE /* ImageView+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5A70E1A6C7F324FA2D68F6EE89A9945 /* ImageView+Kingfisher.swift */; }; - 1AFB1E9136716C0B61D6C700FF1E60FD /* ConstraintLayoutGuide+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 140F0D33B7F03BC8647A3D98FB1DED77 /* ConstraintLayoutGuide+Extensions.swift */; }; + 0A3AA2E0FDAF8A8858240069811996EA /* Lexer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E938F1DF2FA738B72D5090A06A68B26 /* Lexer.swift */; }; + 0BCAA13CA8E4803C1D36DEB5DEAF165E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; + 0BCC90663FCEEE727193565299F96615 /* LayerImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = F355AB8AA1982B40877E8FE46D75F5B0 /* LayerImageProvider.swift */; }; + 0C5E11DE24DAA737704B355F5F2F3426 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52A762AA873FBE4F5C1995A0C3AAB1C6 /* ParameterEncoding.swift */; }; + 0C8C91A946F029E0110E06480F600A47 /* HeroTransition+CustomTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 360E579DF310BD5FE34FA9F3BC909318 /* HeroTransition+CustomTransition.swift */; }; + 0E2025F3049EB290C9C701EB7697FD83 /* HeroTransition+Animate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 435D114521A8366B4235472FE9A75F3A /* HeroTransition+Animate.swift */; }; + 113F47C73EE6BD2FD94CE7F0131D7963 /* LRUAnimationCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00645EDDBFAB8CCCEBA000E3EE203002 /* LRUAnimationCache.swift */; }; + 1212C94DCD6110D6FD59682B542871AF /* PassThroughOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AA9D5D4B48ECB72193BA19202FAD624 /* PassThroughOutputNode.swift */; }; + 132E0F619E4338E5D1B27E4C72076B3F /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F2DA33500417AA67A8E9C8526CFD930 /* Notifications.swift */; }; + 133DFB5C6578D1EB9DBE5D6D97C4E5D4 /* AssetLibrary.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC18BCE8CDF5810DD049360ED94CC3DC /* AssetLibrary.swift */; }; + 143BC48EA7B427B9F43FBF38C1209904 /* HeroViewControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB5690A728AF491219517B0670F99EA4 /* HeroViewControllerDelegate.swift */; }; + 14672662061590430AF4801C432020A6 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7A9FC0C4CF2463929131301D91BDC19 /* SessionDelegate.swift */; }; + 14BD0DB2C04038BC5857C1F124208111 /* ImageAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C28B30370E2AED0B2A707073F98A566 /* ImageAsset.swift */; }; + 163D80EDD1F5C6F1FA7BDE4124CC83D3 /* TextLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8525A9ED196D26AB0ACD4CA1E5B3361 /* TextLayerModel.swift */; }; + 16F25B4ACC45B14B8144A66A394C1181 /* InvertedMatteLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C110B929AEBA310B94500EA304465D62 /* InvertedMatteLayer.swift */; }; + 16F2B118559E5283793D691EBBC9AA79 /* Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FC9184F9DC31DE1DD70BBDCA52FB71C /* Color.swift */; }; + 171CFEBFD0A93CFF6DC40E85EBF3BF8A /* CacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DA3BEF5B63E6B34527E5D9359AB1D5D /* CacheSerializer.swift */; }; + 17AD9ACF6690DF6EDC3B5D56CBA45E95 /* GradientStroke.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9C5EADD0E9733283CEE351679C52A84 /* GradientStroke.swift */; }; + 1945CD5D63A1C164AEAAA9A33E85571E /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DFC4C981D85631FA9081775B4FFB3518 /* Alamofire-dummy.m */; }; + 1956E392D500F3CD899D39A5F805736D /* Typealiases.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62615FC9E74B13920A5FD452F3831387 /* Typealiases.swift */; }; + 1986B50C74F1697EA43F68335C93CEB3 /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44074700DBEC9F0B36B74D3A5A5BD018 /* MultipartFormData.swift */; }; + 1A73F39CDDEEADB24723A3F6CBC359AE /* ImageView+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CDAB1A4E04BE63E833CA304DABD1059 /* ImageView+Kingfisher.swift */; }; + 1AFB1E9136716C0B61D6C700FF1E60FD /* ConstraintLayoutGuide+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C65B95574AE6D6979D3ACF28E5A46BF /* ConstraintLayoutGuide+Extensions.swift */; }; 1CE44042F73BA78CD14C0B12D60A446E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B37CD83EDDA4DC74CC8979694A98F9EB /* UIKit.framework */; }; - 1D7F48845A5C5B0B8CE33CDDCAB00C7E /* GradientStrokeRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 505C6F309445664C3B2F7FA60C42CB06 /* GradientStrokeRenderer.swift */; }; - 1DB1D3B6C2277C62E7800391ADD15F93 /* CompatibleAnimationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6624D9D73DFBE8C3D06F6C9D1C66B628 /* CompatibleAnimationView.swift */; }; - 20831FD60D75466090EF28CF48BC6D58 /* AnimatedFrame.swift in Sources */ = {isa = PBXBuildFile; fileRef = C010473BCC19598AE30D53C31572E0B1 /* AnimatedFrame.swift */; }; - 20DB6C147E35DAB84491736902251366 /* LayerTransformNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77A5665B766192EF12C623A1DF1AAC1B /* LayerTransformNode.swift */; }; - 21190D5976EB482B5145C6882421D319 /* Shape.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B6FD9F7D7E26DC773758FA89D977CFE /* Shape.swift */; }; - 215B0E6FCE90EEB16427D07A070A862A /* AnimationCacheProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = B774F0E7EFAA277B13CA6614AB358CF7 /* AnimationCacheProvider.swift */; }; - 21AB1101BBE4D28D74ED4EDF0D59025A /* ConstraintInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52F52320CC5AEF2A1B4EB276E0224CEF /* ConstraintInsets.swift */; }; - 232B2F922E972D9F43D2EE15ACECE734 /* ConstraintPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEE6A9654A4B6D8F49F043331E2AF37E /* ConstraintPriority.swift */; }; - 2362AECE7AF295CACFA3CB5BBA594D7D /* ShapeContainerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1A035837429F25C4107EFAB1F4C6742 /* ShapeContainerLayer.swift */; }; - 26441EAD257B878842E16D9A2CBB7AF9 /* FloatValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60DC844F46DB0040682EEFE9DCFEFD91 /* FloatValueProvider.swift */; }; - 2825A5EB4AF728329361C25135C7C019 /* MathKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8BAFC2CAFAA7D53DE727DA077C84F4E /* MathKit.swift */; }; - 28B410124BA98ECF1807C19E90A3496E /* PolygonNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4D32C4559A6AEB051C6FF08DE313EC2 /* PolygonNode.swift */; }; - 28ED22D50E807703BDE53652BDB3BDA0 /* Hero-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5995BBE9B09101BF1BA540DA1F7582D8 /* Hero-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 29C812091887EA1BEF4F825CC4206F37 /* LayerDebugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52ED56F00AAC9DD52E24BBB9E6B52C37 /* LayerDebugging.swift */; }; - 2A1BBBC87AC2367BD14610A9D10D285E /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F859905097E59EE091787A09B77E683 /* ConstraintAttributes.swift */; }; - 2A88FB3F37A340B9B945E6545428CAAC /* Star.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE6905BCE29153AC7239C8BFA001A5E8 /* Star.swift */; }; - 2C06F2E972444D359754D21AC46BFFE2 /* ConstraintInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = C451F4BC2C07443144E4C0F40B905B32 /* ConstraintInsetTarget.swift */; }; - 2C61B040BA6A9A7AE66C4D9BA26D5520 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF3A3921C286EC095F0308741597FCCE /* SessionDelegate.swift */; }; - 2CE3B5EB3E415B5467CC027FC85D9F99 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE57F29762BA21F45F0C5ED5A0B8E577 /* Result.swift */; }; - 2D027FB0FDC92CB22C33177B40AB5870 /* ColorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4475A8D47DF16469681AC06F27D9102E /* ColorExtension.swift */; }; - 2D5ED1B8476998216E0C98D01EF11222 /* StarNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40FCB761F452D4FE33A1CC94F5DD59C9 /* StarNode.swift */; }; - 2F24C371BA4C2962F44ACC8E17667583 /* HeroCompatible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 446780B04D608B09D47E24281E6A213C /* HeroCompatible.swift */; }; - 2FD007391D11BE2AD5A143A954489D9E /* Array.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0883C671CA0FE6019CA8FDF102143143 /* Array.swift */; }; - 311A9AEC5A4E1D48E888D5F1EAC4C3EC /* Vectors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E8D307F0EE10AA4B48A8B77B741CB79 /* Vectors.swift */; }; - 32E8FA68B5ABDD28DB0283C0257DF3D3 /* AnimationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E757E481718F15EC10DC45E9D96E437 /* AnimationView.swift */; }; - 351D558292906E661BFAA51055D410AF /* PrecompAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEAAA7129F8CA9143380598081678830 /* PrecompAsset.swift */; }; - 3571F958A3907B3A806E62D50C2550D4 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49A0ED460A7DDC78F99A35926AB8574B /* NetworkReachabilityManager.swift */; }; - 3632F682816BD1DF509C609BF9CEF8EC /* Marker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30A8A89AE886B02331194B6F8CBCC76D /* Marker.swift */; }; - 365B451961D7A6B217C91C28CE366708 /* NullCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE19BE795C814CC1CA92836153DB35A1 /* NullCompositionLayer.swift */; }; + 1D7F48845A5C5B0B8CE33CDDCAB00C7E /* GradientStrokeRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83B12DEF62413484AF8A5EE11A24A441 /* GradientStrokeRenderer.swift */; }; + 1DB1D3B6C2277C62E7800391ADD15F93 /* CompatibleAnimationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12B33324DF58299226FE840CC9C2495C /* CompatibleAnimationView.swift */; }; + 1EE9E5A700E63BD57BEF10D683341A0C /* SwiftyGifManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B5151528F1FAE0CCAA0DC54ACD89DE6 /* SwiftyGifManager.swift */; }; + 20831FD60D75466090EF28CF48BC6D58 /* AnimatedFrame.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7824CEED901DBC041F50F41067960178 /* AnimatedFrame.swift */; }; + 20DB6C147E35DAB84491736902251366 /* LayerTransformNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = A79F5FB0F5EE33DD48EADDEA6D90FBED /* LayerTransformNode.swift */; }; + 21190D5976EB482B5145C6882421D319 /* Shape.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F1895918538192A74EE5EAFA365AEA /* Shape.swift */; }; + 215B0E6FCE90EEB16427D07A070A862A /* AnimationCacheProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0EA5567962FFE6B5311975F2ED52554 /* AnimationCacheProvider.swift */; }; + 21AB1101BBE4D28D74ED4EDF0D59025A /* ConstraintInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = 866570C81AF40757B2EF9FD651B4A9E1 /* ConstraintInsets.swift */; }; + 232B2F922E972D9F43D2EE15ACECE734 /* ConstraintPriority.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C020495FFA42C7CAF43E4F65B2D01F1 /* ConstraintPriority.swift */; }; + 2362AECE7AF295CACFA3CB5BBA594D7D /* ShapeContainerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66728D34F24F0A5467EDDED1497D1511 /* ShapeContainerLayer.swift */; }; + 26441EAD257B878842E16D9A2CBB7AF9 /* FloatValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF3FAEBAD4988FD2AF29F7F9580B7B0C /* FloatValueProvider.swift */; }; + 2825A5EB4AF728329361C25135C7C019 /* MathKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85C5D0A7845198D7FA7C79041337D208 /* MathKit.swift */; }; + 28B410124BA98ECF1807C19E90A3496E /* PolygonNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62004702A152E4FFFB8786BCFAD9BC5D /* PolygonNode.swift */; }; + 28ED22D50E807703BDE53652BDB3BDA0 /* Hero-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2FA6722CE2435D57C7E8226401CAC58A /* Hero-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 29C812091887EA1BEF4F825CC4206F37 /* LayerDebugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1172AF700C3C743238385AD655806CE9 /* LayerDebugging.swift */; }; + 2A1BBBC87AC2367BD14610A9D10D285E /* ConstraintAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CFBA636E9A565A3A1DA731D78879C11 /* ConstraintAttributes.swift */; }; + 2A88FB3F37A340B9B945E6545428CAAC /* Star.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56E28179B3C9B6DC8C930EEE56A5FF4F /* Star.swift */; }; + 2C06F2E972444D359754D21AC46BFFE2 /* ConstraintInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A3732EB9AE357E8BEA97A81BCCC0F93 /* ConstraintInsetTarget.swift */; }; + 2C61B040BA6A9A7AE66C4D9BA26D5520 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2F36E2551F8B6DF54618634C6CD59AA /* SessionDelegate.swift */; }; + 2CE3B5EB3E415B5467CC027FC85D9F99 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6DB43DE9E31A99BA4DA9143400B512E /* Result.swift */; }; + 2D027FB0FDC92CB22C33177B40AB5870 /* ColorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DA1B156D35301CD72B0D02B8F89C484 /* ColorExtension.swift */; }; + 2D5ED1B8476998216E0C98D01EF11222 /* StarNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38018419042564E600D6B256D520BC3B /* StarNode.swift */; }; + 2F24C371BA4C2962F44ACC8E17667583 /* HeroCompatible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03AA92EC464F4189E34C39819F98ECA4 /* HeroCompatible.swift */; }; + 2FD007391D11BE2AD5A143A954489D9E /* Array.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94B524AE311D3F143AB6F3B127710843 /* Array.swift */; }; + 311A9AEC5A4E1D48E888D5F1EAC4C3EC /* Vectors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FAEC036D536751E4954A45AF50E7D73 /* Vectors.swift */; }; + 32E8FA68B5ABDD28DB0283C0257DF3D3 /* AnimationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5F4932372F534D3E11A90F5340339EA /* AnimationView.swift */; }; + 351D558292906E661BFAA51055D410AF /* PrecompAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = B18A91287545FAF61A61329B2F6AD207 /* PrecompAsset.swift */; }; + 3571F958A3907B3A806E62D50C2550D4 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7027340383853BC35EC4BC80CAB5838F /* NetworkReachabilityManager.swift */; }; + 3632F682816BD1DF509C609BF9CEF8EC /* Marker.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAF3F5A7BFCE350F7749B8769C0C6890 /* Marker.swift */; }; + 365B451961D7A6B217C91C28CE366708 /* NullCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBE03E771B3C2AC552F237379837C286 /* NullCompositionLayer.swift */; }; 37C289CF48713DAB98845988FF35632C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; 37F88C9FF9FFB3BFE4D2011414548135 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DC3941416EFBB206127B6B76EC80BEF /* CoreGraphics.framework */; }; 38297E6B86106DEF51F853B19A64FEFD /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C24602E6F6B5D3A5A86A838DD5F22B4 /* QuartzCore.framework */; }; - 38406719BDA0D1C99B94A33EB1BF2AA1 /* HeroTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 41187C836D0D604F434283FA68BCD3AF /* HeroTransition.swift */; }; - 38D7DCFFDF757CCAEC9D2C4106181789 /* ValueContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5D5E00E914738658E78CE8A848A5FA1 /* ValueContainer.swift */; }; - 38ECB82C9A053349A8928D026F437792 /* ImageDataProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED55040321D5E86D5A883536230490F4 /* ImageDataProvider.swift */; }; - 3A271242C4761D52E05068C0C8EA575B /* Keyframe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0441B938B6549939D7D5290E10988202 /* Keyframe.swift */; }; - 3B6EE6F748F891E92E1AE63029F3D4DB /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4563D3F90CB9D33C7D33C1FD4B9F9D41 /* Box.swift */; }; - 3BC54CC7E297B6EC8A7A6649268D5A3A /* ShapeLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C430503AFF3ED54F8ACC665182797DFA /* ShapeLayerModel.swift */; }; - 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3DE9EB3EB0C767FE5EA036F57D3544F /* Constraint.swift */; }; - 3C52CE0A60C1071B0A1586B57CC4E2FD /* KingfisherError.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6EE933A536A33B878ED0F46F36E15ED /* KingfisherError.swift */; }; - 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB7E2076C7078B1BA9665F0AF3322DF4 /* ConstraintView+Extensions.swift */; }; - 3EB86695C87754EB177D572B138E9B48 /* NodePropertyMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17F0E4406B42C5E4F690061802A78D6D /* NodePropertyMap.swift */; }; - 4190C8CBADBD91A1AD4814DB130E35AA /* ImageSourceHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A58DA1374B47A63918C3316704C2D20 /* ImageSourceHelpers.swift */; }; - 41B1BEC856E9435A9B4016AF14EB8D6A /* GIFAnimatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C22612156D934442BC9FBAD1405848B3 /* GIFAnimatable.swift */; }; - 41FF41E112B4DFE9C5B4F130DA77C5F8 /* SingleValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A1944D607C7CBB163BD0D04C204F956 /* SingleValueProvider.swift */; }; - 432848A52E6A7EC1F084299032907A29 /* ImageTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 797BCF4BAC1AD2E9950A021FB88A1740 /* ImageTransition.swift */; }; - 447FCEA8BB2DFACD60B6B8ECECC027B9 /* CallbackQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF2B5DCFE2826CD4CD71E3AE40DC4B96 /* CallbackQueue.swift */; }; - 44FFADA8DAF3BF32F3D43C13A2F8BBED /* AnimatedButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E475634FDCAAC8C9FC114DAD976670C /* AnimatedButton.swift */; }; - 45984E7480A4DB592B40F0DA0DAE7514 /* Gifu-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = DA2EFE9A98A03E9C96516C7B09563541 /* Gifu-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4781CFEA0881C7AFD1539C12F074632D /* NSButton+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04AC84D2CF022DA5B2D0D3F69D540BF8 /* NSButton+Kingfisher.swift */; }; - 47BD9F0AC7BED5E512833F422AADF0BE /* VectorsExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1562E437DACE9DCC52412D5A5FA78FC5 /* VectorsExtensions.swift */; }; - 4A4CE175F7935768B34E2F8EC1C0D475 /* AnimationKeypath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B037156130FF5C44154D6EB75D7B8AF /* AnimationKeypath.swift */; }; - 4B1C14991FCEB01E9E05EF8F1FCD5671 /* ImagePrefetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = F946A68847800041E723FABE055948B4 /* ImagePrefetcher.swift */; }; - 4B288AC81506A29EC002A33979797B27 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = C53D97E729F9F554D667F21685701DFF /* Deprecated.swift */; }; - 4C0109B9064995D017EF8BA9471065BD /* HeroPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = A888C70B725197B4FA4ECD00BE73A52E /* HeroPlugin.swift */; }; - 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 07BE86A3DE059BAFC0C7C9C5EFF174EE /* SnapKit-dummy.m */; }; - 4CE99B6F88E1F663A633C5E273B0DBA7 /* KeyedDecodingContainerExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C07B615BB16F5AE5AAB00D785F6672FD /* KeyedDecodingContainerExtensions.swift */; }; - 4DD18CA1B0628DA289B294D2106D55A3 /* HeroTransition+Interactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E3A7AAEE36CBDECF1055C443A0575D5 /* HeroTransition+Interactive.swift */; }; - 4EC87E51E5464D46D95018D788EF5BE5 /* Transform.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78F802224D3AD7BC332090469AB6528A /* Transform.swift */; }; - 4F8432665B6DC1F62B7F7066E5F9BC24 /* PreCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CD171275464ABA3806EAD0CF7ABF170 /* PreCompositionLayer.swift */; }; - 4FCAA522F79E9F51E113CEB5EF2934F1 /* ShapeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF66BC5918DB6E242EF5C903F935346 /* ShapeNode.swift */; }; - 4FE0ACA2C156AE906F87C3E13CCF2736 /* ShapeCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CE1CB03D427EA498C42C90BE1A0DE14 /* ShapeCompositionLayer.swift */; }; - 5153D5A35E3EC6CD8CDE0B71392AB8F6 /* Interpolatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A342D56848714B710A25DED88F72138 /* Interpolatable.swift */; }; - 518DCB74D745F9C9A004B677AE7E45DE /* PathNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA5F759EA14A2443A38FCC38D853CE62 /* PathNode.swift */; }; - 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7618E8995BFE52B1460B291B234C31D2 /* ConstraintMaker.swift */; }; - 526D4A6E90525A42DEEE53B2EAD2C5E8 /* Kingfisher-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CBC0C86F5B7FC401C3B67BF6757A66D1 /* Kingfisher-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 529B9E57269EC11F5F8320C7C7056695 /* GradientFill.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F12353204D667A61E061E8334C9D478 /* GradientFill.swift */; }; - 53791F5E5F07400F92CFDFC89A432305 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77796B2696542BB2B8DCEAF680570BD8 /* Validation.swift */; }; - 54A790623BE5A1F101CE844FA5963E7D /* GroupNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5300F42D5BB3101E2BEC8F0A9B4A276A /* GroupNode.swift */; }; - 54BFA8D2F73EB928D9B2EDAED47C55FC /* lottie-ios-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 94744623F8D133953E8FEA26B7178D02 /* lottie-ios-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 561B43E02C4CC483EEAC28AE2C961D3D /* HeroStringConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49AD9EDB1B8B115CE638A6F0B6EB0EFE /* HeroStringConvertible.swift */; }; - 5640F08A69F52AA4E482C7E19C55B72B /* StrokeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE92FD1A5D9B5C780ADDDC01664F9B77 /* StrokeNode.swift */; }; - 565C22E5071430F1DB95C884B2CF9D00 /* HeroViewPropertyViewContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84D4F21C6F85E4A8A60778E030EB7927 /* HeroViewPropertyViewContext.swift */; }; - 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC86DD905EAD9E909F52FFE3660D7913 /* ConstraintLayoutSupport.swift */; }; - 584553ABB37646C634AAAE03AADAADE7 /* Trim.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4DEABDD2CCB892B9FF34843A10CEE40 /* Trim.swift */; }; - 5854DF509E8A016B6235793D04083035 /* ConstraintConstantTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 986A4391C8E9CEB79F694890E6FB459C /* ConstraintConstantTarget.swift */; }; - 596395B6FA3AB7BE5E2986C1057FFB51 /* CAMediaTimingFunction+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 818412D46A6D89BC69D5AEC2D5B5A6D3 /* CAMediaTimingFunction+Hero.swift */; }; + 38406719BDA0D1C99B94A33EB1BF2AA1 /* HeroTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B0E0E5A8E3B44F11E9C8B64DFBCD947 /* HeroTransition.swift */; }; + 38D7DCFFDF757CCAEC9D2C4106181789 /* ValueContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9649FDBC7D9BB62B46F600CCF653F706 /* ValueContainer.swift */; }; + 38ECB82C9A053349A8928D026F437792 /* ImageDataProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FD28A549E2EBEAF28B2DD94FB9552CB /* ImageDataProvider.swift */; }; + 3A271242C4761D52E05068C0C8EA575B /* Keyframe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 56447E3C8600508D530A72CB0395D3D5 /* Keyframe.swift */; }; + 3B6EE6F748F891E92E1AE63029F3D4DB /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA1756E8F16358F17D87172F12F3F92B /* Box.swift */; }; + 3BC54CC7E297B6EC8A7A6649268D5A3A /* ShapeLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F03DF3FD9395723160BB39EBF8E4D4A /* ShapeLayerModel.swift */; }; + 3BFC243AB9BD579969F0D5756560BCAA /* Constraint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F302C99BADC67694875C163145F288 /* Constraint.swift */; }; + 3C52CE0A60C1071B0A1586B57CC4E2FD /* KingfisherError.swift in Sources */ = {isa = PBXBuildFile; fileRef = CCE5CCB441476E3544BD72BD06C3080D /* KingfisherError.swift */; }; + 3E5285F4F36EAD77ECABBFB7F36BB1BB /* ConstraintView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7581F2FD59BF553350971F897FBB5660 /* ConstraintView+Extensions.swift */; }; + 3EB86695C87754EB177D572B138E9B48 /* NodePropertyMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = F611371EEA668A209D99AAEFC816FBD5 /* NodePropertyMap.swift */; }; + 4190C8CBADBD91A1AD4814DB130E35AA /* ImageSourceHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 224FEAE76BB951C9A4A79F923264D087 /* ImageSourceHelpers.swift */; }; + 41B1BEC856E9435A9B4016AF14EB8D6A /* GIFAnimatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0546F62D577AC6E2FEE035FA34DA0D03 /* GIFAnimatable.swift */; }; + 41FF41E112B4DFE9C5B4F130DA77C5F8 /* SingleValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18F359F863B621EF96E18E249CC751AC /* SingleValueProvider.swift */; }; + 432848A52E6A7EC1F084299032907A29 /* ImageTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F08D9D0AB88CBDF2C03140C2F223CE1 /* ImageTransition.swift */; }; + 447FCEA8BB2DFACD60B6B8ECECC027B9 /* CallbackQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = E57846F96542FF9D69AC8DD68A71FEDC /* CallbackQueue.swift */; }; + 44FFADA8DAF3BF32F3D43C13A2F8BBED /* AnimatedButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF807D1B7747273DC54E06397B94C106 /* AnimatedButton.swift */; }; + 45984E7480A4DB592B40F0DA0DAE7514 /* Gifu-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = ADC6A19AE8BD1C5C8CD075F6D9F5CA02 /* Gifu-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 45C87BF8F436388A396FB2C643378885 /* UIImage+SwiftyGif.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40C1D2F592535CE8272703DBA6809881 /* UIImage+SwiftyGif.swift */; }; + 4781CFEA0881C7AFD1539C12F074632D /* NSButton+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = A72EA9583ECB48CB7571992F47FDC5FC /* NSButton+Kingfisher.swift */; }; + 47BD9F0AC7BED5E512833F422AADF0BE /* VectorsExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6C7F3E39476A4D256948B39F68CEDF4 /* VectorsExtensions.swift */; }; + 4A4CE175F7935768B34E2F8EC1C0D475 /* AnimationKeypath.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB7468DCBED0EA992AD77CAEBC086708 /* AnimationKeypath.swift */; }; + 4B1C14991FCEB01E9E05EF8F1FCD5671 /* ImagePrefetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = B363A64816485437FF9BF12A8A08BAAE /* ImagePrefetcher.swift */; }; + 4B288AC81506A29EC002A33979797B27 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9948592CB5CBBC9E9E3FB96F0EE7FB8 /* Deprecated.swift */; }; + 4C0109B9064995D017EF8BA9471065BD /* HeroPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D8C8D5E48F908CFB65B78D3C25DD61A /* HeroPlugin.swift */; }; + 4C7A676DAE95EEAC3787A75349F0862D /* SnapKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F7641666AA9FF589221EE5D35B32BD7B /* SnapKit-dummy.m */; }; + 4CE99B6F88E1F663A633C5E273B0DBA7 /* KeyedDecodingContainerExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65407D4DF5AAE0ACA9BCC628A3B72674 /* KeyedDecodingContainerExtensions.swift */; }; + 4DD18CA1B0628DA289B294D2106D55A3 /* HeroTransition+Interactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 742128E7BBCFBBA84B9D0E8FC025033E /* HeroTransition+Interactive.swift */; }; + 4EC87E51E5464D46D95018D788EF5BE5 /* Transform.swift in Sources */ = {isa = PBXBuildFile; fileRef = A59905142AF25B72EF80EA1C35CB2188 /* Transform.swift */; }; + 4F8432665B6DC1F62B7F7066E5F9BC24 /* PreCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92AD229F5E70B700BD2ECE82E9F4A010 /* PreCompositionLayer.swift */; }; + 4FCAA522F79E9F51E113CEB5EF2934F1 /* ShapeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26720609B278654B416391CDFCA6962E /* ShapeNode.swift */; }; + 4FE0ACA2C156AE906F87C3E13CCF2736 /* ShapeCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A37690D65931404751BC41B4F2325A7 /* ShapeCompositionLayer.swift */; }; + 5153D5A35E3EC6CD8CDE0B71392AB8F6 /* Interpolatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5600351AE700517408117CC1357184CB /* Interpolatable.swift */; }; + 518DCB74D745F9C9A004B677AE7E45DE /* PathNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60687571C6D67DDCCF1BA25E47655E72 /* PathNode.swift */; }; + 51CD5887014967E77E58F5A163996454 /* ConstraintMaker.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6A635187D5F616722F2AEFA5CD7E495 /* ConstraintMaker.swift */; }; + 526D4A6E90525A42DEEE53B2EAD2C5E8 /* Kingfisher-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A853FB538BC7514205AD06C644DBFFFA /* Kingfisher-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 529B9E57269EC11F5F8320C7C7056695 /* GradientFill.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0EAA2985C06B97BBCF5D02CDE5E708C /* GradientFill.swift */; }; + 53791F5E5F07400F92CFDFC89A432305 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6BB02B9DA776C36719D93952CFC7F57 /* Validation.swift */; }; + 54A790623BE5A1F101CE844FA5963E7D /* GroupNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE2776611353FCE198172A4194CFA01E /* GroupNode.swift */; }; + 54BFA8D2F73EB928D9B2EDAED47C55FC /* lottie-ios-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E0AFA4FEF927174FFC1FFB21165B8A89 /* lottie-ios-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 561B43E02C4CC483EEAC28AE2C961D3D /* HeroStringConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FE398514CCA2F524E12903418D783ED /* HeroStringConvertible.swift */; }; + 5640F08A69F52AA4E482C7E19C55B72B /* StrokeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5617EEB351FE7046C0BAB355672A8098 /* StrokeNode.swift */; }; + 565C22E5071430F1DB95C884B2CF9D00 /* HeroViewPropertyViewContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = D056AADCCA626164B0717A05C54B2A2A /* HeroViewPropertyViewContext.swift */; }; + 57B1876F2BE4168E5BFDB63D8CC849A0 /* ConstraintLayoutSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = C89B025B2EAD98A1C12F82F1BB3C22AC /* ConstraintLayoutSupport.swift */; }; + 584553ABB37646C634AAAE03AADAADE7 /* Trim.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45045354554E7BF8CD6184BDA0483400 /* Trim.swift */; }; + 5854DF509E8A016B6235793D04083035 /* ConstraintConstantTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = E0D83B62DB904D9B834E323C728EB6FD /* ConstraintConstantTarget.swift */; }; + 596395B6FA3AB7BE5E2986C1057FFB51 /* CAMediaTimingFunction+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = A56CCBC4E8490AF44731A4BAF67D7C0F /* CAMediaTimingFunction+Hero.swift */; }; 5A331875CA15B464292AF2C5EE69524E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - 5A94F90FD6ECA79593FC09A6EA8AEB87 /* EllipseNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A8D29B3F3F7331870EE67C4098E0C06 /* EllipseNode.swift */; }; - 5AD5EE0D42721F7E45DAEB5D7D9FA3C4 /* ExtensionHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B0085D12F8A4825C1E8D1E23A493E22 /* ExtensionHelpers.swift */; }; - 5C1631DD0BB1562199798BF6C66B5B4E /* CurveVertex.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF35F19FD7685A43583BEB11D1E35D68 /* CurveVertex.swift */; }; - 5C2E4750AD6CFCC2ABBBA45A81122B8A /* AnyValueContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32C89D66FDB939DBF7832119E4607AED /* AnyValueContainer.swift */; }; - 5CA745D6F24598B881ED85918BBE6697 /* Indicator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E2890B626AE2CB46B1F06C4B348D54D /* Indicator.swift */; }; - 5D561331EDDD8446C2C74304EF534F0B /* HeroTransitionState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D40040B3B1C72707F85BAA01D20EEA4 /* HeroTransitionState.swift */; }; - 5EBCF31DAB05B8EB233C9882DD352D5A /* BezierPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95CC2942D89DF86219D64AA9677A7B9B /* BezierPath.swift */; }; - 611B67BEEBA7FB3983E8D9AC3796A551 /* HeroDefaultAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24050BC35848ED0F38F90C24E26BAC12 /* HeroDefaultAnimator.swift */; }; - 6159D72566F501262E6A4D8C4D432EF7 /* RectNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D2CE76EFB6B71CA5A6460A9C7DCA0F5 /* RectNode.swift */; }; - 624AB00A56716C4F58607EFC4510BFE5 /* GradientValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FE350EAB069180AAC4F59D1875AF757 /* GradientValueProvider.swift */; }; - 625EFFE2794AAB4D1985E56A6AA27A1C /* ImageCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 180CAF8298A31873A2E0EB21B79528F5 /* ImageCompositionLayer.swift */; }; - 62AD7D42C96A04828EEA3CC151AA5E38 /* RedirectHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E581F274A660A6B6CD8FF0032D61B3F2 /* RedirectHandler.swift */; }; - 63C2BA763C69F183DDB32456D7201543 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAA6173E4AF36F3B0388C2CAD4A526EF /* Filter.swift */; }; - 63D62B669C1B1D76B8FA2AEE51AF2863 /* HeroTransition+UITabBarControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C43AD585E967B27579A1C674C661E8C9 /* HeroTransition+UITabBarControllerDelegate.swift */; }; - 643A613AA5CF9D46017F0CDC66BF4FF3 /* AnyValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC2F73377C35B4F40F919E987664ADAF /* AnyValueProvider.swift */; }; - 64744C911253C3E01461FAD7C935C8D7 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = A068984407DEBF395DDF99CF58A5CCE7 /* Result.swift */; }; - 67B05D7C461667C7CA9B5DC1797598EA /* TextAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2288607DE1F545DF2F2C2AB919EBC38F /* TextAnimator.swift */; }; + 5A94F90FD6ECA79593FC09A6EA8AEB87 /* EllipseNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A8DA915234FA8B60124A780F243A4D3 /* EllipseNode.swift */; }; + 5AD5EE0D42721F7E45DAEB5D7D9FA3C4 /* ExtensionHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7DC38FDDD0803972C120B9B7D2DC51A /* ExtensionHelpers.swift */; }; + 5C1631DD0BB1562199798BF6C66B5B4E /* CurveVertex.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9D6C6C58E3748C7E7BD07AD918C4965 /* CurveVertex.swift */; }; + 5C2E4750AD6CFCC2ABBBA45A81122B8A /* AnyValueContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 872E0B6781EA4242C78B11DE3D168327 /* AnyValueContainer.swift */; }; + 5CA745D6F24598B881ED85918BBE6697 /* Indicator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CD97632B04E89F17150D5150F26762 /* Indicator.swift */; }; + 5D561331EDDD8446C2C74304EF534F0B /* HeroTransitionState.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFD6A6497CD46F9CB862B7CF1B573E05 /* HeroTransitionState.swift */; }; + 5E15F97881DAA1FCA5F8927D0EA61967 /* SwiftyGif.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A908CA40BDEB680E7992F4EE6FD27CF /* SwiftyGif.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5EBCF31DAB05B8EB233C9882DD352D5A /* BezierPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE4B2846E6F905AF49262F8C03C52D28 /* BezierPath.swift */; }; + 611B67BEEBA7FB3983E8D9AC3796A551 /* HeroDefaultAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9BB6F59910B58618E013E74041DE877 /* HeroDefaultAnimator.swift */; }; + 6159D72566F501262E6A4D8C4D432EF7 /* RectNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96B4B39A8DAF1865E48942137EBCFE74 /* RectNode.swift */; }; + 624AB00A56716C4F58607EFC4510BFE5 /* GradientValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7EC6FB51B4244CCD7D86161F9C8213F /* GradientValueProvider.swift */; }; + 625EFFE2794AAB4D1985E56A6AA27A1C /* ImageCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3792B581AB32CDACC425AB337CF6F81A /* ImageCompositionLayer.swift */; }; + 62AD7D42C96A04828EEA3CC151AA5E38 /* RedirectHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93D85053749107EA1ABB305C0F198EBA /* RedirectHandler.swift */; }; + 63C2BA763C69F183DDB32456D7201543 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AB3FDC547309A9DE9306BD8E5E14C97 /* Filter.swift */; }; + 63D62B669C1B1D76B8FA2AEE51AF2863 /* HeroTransition+UITabBarControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57F7EF41D09898B7B1A6A9F7E3FFB5CA /* HeroTransition+UITabBarControllerDelegate.swift */; }; + 643A613AA5CF9D46017F0CDC66BF4FF3 /* AnyValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F06B97081FC9C2BF0CADB8E9E200958 /* AnyValueProvider.swift */; }; + 64744C911253C3E01461FAD7C935C8D7 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7A7EF09B0A64F62E7463878B3041359 /* Result.swift */; }; + 677F3D8BEE5A2B1459168DC62EB16EB3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; + 67B05D7C461667C7CA9B5DC1797598EA /* TextAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 922C32375A2EF66F3FAF884740561CBA /* TextAnimator.swift */; }; 6804393EA55473086BC9AC4FE08F33F5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - 686FF933FB5A33BA7A11CF986A916A06 /* Placeholder.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF673F8DBD66C9C0D91590E2EF3290CE /* Placeholder.swift */; }; - 68A023075EBFA6565A1D80891D9B3685 /* ShapeTransform.swift in Sources */ = {isa = PBXBuildFile; fileRef = D09BDDE9C1963F8938B3525BA5149EB1 /* ShapeTransform.swift */; }; - 68CC6391EA4950E6A6075EEFB4BAB94D /* lottie-ios-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F23F87BF1FBCFE5385EB5F8F41094E3D /* lottie-ios-dummy.m */; }; - 6908EA3D9E70189438CE488ECB181688 /* AnyNodeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ED820EDDC07C4D8C2C403CC55FCDF13 /* AnyNodeProperty.swift */; }; - 6916C066364EAB3A23E1BCF1F449BC7F /* AnimatedSwitch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3829CA93B09504CEF70C04108564D614 /* AnimatedSwitch.swift */; }; - 69CCBEEDFCA6D743D80026568D961919 /* ConstraintMakerExtendable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 766EDB5BAB4C2C3EA185006A7C01EC4D /* ConstraintMakerExtendable.swift */; }; - 69E3A06BBDFDC7D06A9D4BDC4E895E73 /* ConstraintRelatableTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67FC12F181934B0294DE81FE69611264 /* ConstraintRelatableTarget.swift */; }; - 6C982242F96CBAE15ABD5CF5F147CD7F /* Repeater.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE9B4BF6BD9D539FC34C8CDDF8982C80 /* Repeater.swift */; }; - 6E0EB9E7FAAEDBB7A73ECF3095F69C4A /* UILayoutSupport+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9659244B6C8DA6D0F620406FD0A2E97 /* UILayoutSupport+Extensions.swift */; }; - 6E2AE42031E6C611C2AAAD2FE1B12BAD /* Delegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52A60C90A7A35CBD76176ABC74CC30E2 /* Delegate.swift */; }; - 6FDEA13D84E7966CA543C315FCDE7477 /* AnimationKeypathExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 655C64E7D4D0311056514AD3AE91ED75 /* AnimationKeypathExtension.swift */; }; - 7077E7A72EB1E524F2EF25029B712F2F /* MatchPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B4386F35E31ED4BA59BC8DD9DF8FD9A /* MatchPreprocessor.swift */; }; - 713643837AE7E542FFD9595143E0AA39 /* ImageDrawing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 316F2144A1F30CF1C56EEB08652EC205 /* ImageDrawing.swift */; }; - 717C581962354033F5A82D15D6F676D5 /* WKInterfaceImage+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AF4FF0F45A1CEF90CFFA80C58786CA1 /* WKInterfaceImage+Kingfisher.swift */; }; - 71DE9DC2FA583526AB4D1FD7F00C099C /* ConstraintDirectionalInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = F15CD17D0339574EE3C13D80D3094C08 /* ConstraintDirectionalInsetTarget.swift */; }; - 7444F9A464148E2AF88CF3654F7184A7 /* UIColorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5FFACF5B1C69F44601D1977B3C9D2D3 /* UIColorExtension.swift */; }; - 74F16EAC797A560DA6EE944A8CEBEC04 /* Kingfisher.h in Headers */ = {isa = PBXBuildFile; fileRef = 2FFEC9B202289154EB69B58BC39315F3 /* Kingfisher.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 75E146C12D1287228A0B493E87CDE31F /* ConstraintMakerRelatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F53DD8CFFF90A15E5ED253F0407E768A /* ConstraintMakerRelatable.swift */; }; - 76259741C02A8C73A3015C5D2DA496CA /* HeroModifier+HeroStringConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60B1146E05DFCE81391E6899651366F6 /* HeroModifier+HeroStringConvertible.swift */; }; + 686FF933FB5A33BA7A11CF986A916A06 /* Placeholder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03D02B63D4AFFE65B734B308D2DF710E /* Placeholder.swift */; }; + 68A023075EBFA6565A1D80891D9B3685 /* ShapeTransform.swift in Sources */ = {isa = PBXBuildFile; fileRef = 147CEF7BDB85020E7E8BC352815A6D0C /* ShapeTransform.swift */; }; + 68CC6391EA4950E6A6075EEFB4BAB94D /* lottie-ios-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BDD9338BE8682E8B0D48AB7197027883 /* lottie-ios-dummy.m */; }; + 6908EA3D9E70189438CE488ECB181688 /* AnyNodeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB32BC3C77A1A5C386A623BA74D206F2 /* AnyNodeProperty.swift */; }; + 6916C066364EAB3A23E1BCF1F449BC7F /* AnimatedSwitch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 712906F3B7A734869E9909C96534F21A /* AnimatedSwitch.swift */; }; + 69CCBEEDFCA6D743D80026568D961919 /* ConstraintMakerExtendable.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADA2593F165B9776B913D3373A839A0C /* ConstraintMakerExtendable.swift */; }; + 69E3A06BBDFDC7D06A9D4BDC4E895E73 /* ConstraintRelatableTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 100893137F1C5B3795A29AF705694D3B /* ConstraintRelatableTarget.swift */; }; + 6C982242F96CBAE15ABD5CF5F147CD7F /* Repeater.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84813600FF8789CFB87D55127D54AF41 /* Repeater.swift */; }; + 6E0EB9E7FAAEDBB7A73ECF3095F69C4A /* UILayoutSupport+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5743A95E54293EDA694160BB258D648 /* UILayoutSupport+Extensions.swift */; }; + 6E2AE42031E6C611C2AAAD2FE1B12BAD /* Delegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43E9EE32D993A1DB758185F795780BDB /* Delegate.swift */; }; + 6FDEA13D84E7966CA543C315FCDE7477 /* AnimationKeypathExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D61233EF578C97AA5039D594F9F5CE09 /* AnimationKeypathExtension.swift */; }; + 7054EEB1CB3DD574C77BB2A5818FD46B /* SwiftyGif-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C709578B61E477BE12C8E85C12BBCE22 /* SwiftyGif-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7077E7A72EB1E524F2EF25029B712F2F /* MatchPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BBA8C40D5DC75A5618B4B94527692DA /* MatchPreprocessor.swift */; }; + 713643837AE7E542FFD9595143E0AA39 /* ImageDrawing.swift in Sources */ = {isa = PBXBuildFile; fileRef = C220D431C1C71BF974FBA2EB186B780F /* ImageDrawing.swift */; }; + 717C581962354033F5A82D15D6F676D5 /* WKInterfaceImage+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA06CB9000D2DC3E1857704A17F95710 /* WKInterfaceImage+Kingfisher.swift */; }; + 71DE9DC2FA583526AB4D1FD7F00C099C /* ConstraintDirectionalInsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D8D0D1AED84D866FB73CC42087D454E /* ConstraintDirectionalInsetTarget.swift */; }; + 7444F9A464148E2AF88CF3654F7184A7 /* UIColorExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2758B8D197CA911923FE844690CFB6E8 /* UIColorExtension.swift */; }; + 74F16EAC797A560DA6EE944A8CEBEC04 /* Kingfisher.h in Headers */ = {isa = PBXBuildFile; fileRef = 09CCC0AB5B154143571487EB36803898 /* Kingfisher.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 75E146C12D1287228A0B493E87CDE31F /* ConstraintMakerRelatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BF97BFCCAB38162A54C376DB104797F /* ConstraintMakerRelatable.swift */; }; + 76259741C02A8C73A3015C5D2DA496CA /* HeroModifier+HeroStringConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FC0A93553F657711789A1FE28633A37 /* HeroModifier+HeroStringConvertible.swift */; }; 7664FD4F59A0C00866CBAE60B0A3AD64 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - 767925B99CC34D22E127120952AC715D /* Runtime.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9FE7EA90977AB410B6E91A7CC15FF78 /* Runtime.swift */; }; - 77C9889055A3B32EA13A9616824DB0ED /* ConstraintLayoutGuideDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FB41D16903B528D9D1BC3FC08A18CD4 /* ConstraintLayoutGuideDSL.swift */; }; - 783190536DC8297B50B399D8250F2032 /* HeroTransition+UINavigationControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0279792A35DC4D1FD1D08AD04FE3B7EB /* HeroTransition+UINavigationControllerDelegate.swift */; }; - 7C1702076F3A31D8D2D45A4A9F09B266 /* ConstraintMakerEditable.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBA5B434D1179DE89070110E1CF2FF41 /* ConstraintMakerEditable.swift */; }; - 7DC709F74495F62FDA39BD764DEF37DC /* CompositionLayersInitializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F126F11D50BCBD88A95ACE8453BEF2D /* CompositionLayersInitializer.swift */; }; - 7DCA6A380BAA14A7EE485571A99A3C8D /* LottieView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 245B7C0EEED7E4547C48D4E691F6E3E1 /* LottieView.swift */; }; - 7F87D68A6EF5D2BDA485ADD9223CCCAF /* AnimationViewInitializers.swift in Sources */ = {isa = PBXBuildFile; fileRef = F43E686B8144B27D1A82E95C17E54A5C /* AnimationViewInitializers.swift */; }; - 80538854F50E894E283C87058249C10C /* SourcePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC01DA615B94B3792EA41F88391A032B /* SourcePreprocessor.swift */; }; - 80F1CE5131DA37F9DF6516F927C78F16 /* KingfisherManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 223E1D8F4DCDE93C86FB257200DC3740 /* KingfisherManager.swift */; }; - 8267702DC8728FA8827B0E9F5850D564 /* HeroModifier+Advanced.swift in Sources */ = {isa = PBXBuildFile; fileRef = 473B153076F6129FEDCC8AF916DBC489 /* HeroModifier+Advanced.swift */; }; - 8277256ADEC3C4DCF79957D1CA681A9A /* ConstraintDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = C939BFB9F8361B282D4D820AD8593814 /* ConstraintDSL.swift */; }; - 83956E20859CDBBE7BC38ABADE0170FB /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 071FF45EF8C09654F8A66520C0C5C1A5 /* AFError.swift */; }; - 84FB7295031BEDF0073A52A61AF7129A /* Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCD3570B32B821874EDB601250CE2229 /* Kingfisher.swift */; }; - 85794C1E4A7DF398C62C13D57990914C /* PathOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD657DABD40600F4DABD58202975C125 /* PathOutputNode.swift */; }; - 85908A69CE5A0C54998A6D597BDB062F /* UIColor+HexString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85BD19AF391B2457CF126FF1AABAE396 /* UIColor+HexString.swift */; }; - 85D2D8270511FDD7E66514C703012B0C /* LayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 269B7FA630AC311F408FBF77544D9185 /* LayerModel.swift */; }; - 8626FAA249103A6A09C091809AB7FABB /* DashPattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F4CE4F269D3F879476DF7B19317FDBB /* DashPattern.swift */; }; - 8675FAF0C389A827D865B4231B097350 /* CG+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 257E189F911971D52DBDE48BC1C1E15A /* CG+Hero.swift */; }; - 86CE574CADD6EAE3E385F152C74EA78C /* FormatIndicatedCacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C1C9CA1E07FAEF750ADE09077350B96 /* FormatIndicatedCacheSerializer.swift */; }; - 86F13D0EE21A89D215E2FF3040198C69 /* FillI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35274263BB0557448084C99440A16301 /* FillI.swift */; }; - 86F6100A3164708D9449C570776E4A53 /* HeroDebugView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FC9ADEE2DE138212A2F26AD492DBE8D /* HeroDebugView.swift */; }; - 8705BBF0D428BF0AE1B554A377ECC540 /* ConstraintOffsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71997FB94C15A062768AB1996B30DA70 /* ConstraintOffsetTarget.swift */; }; - 89A9375A72E68E2D7A0FEE9F09B9DB10 /* AuthenticationChallengeResponsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E2693DE697BE8291EF2455D0EF1425E /* AuthenticationChallengeResponsable.swift */; }; - 8A50CF3AAB5BD9BF949142DEB8E5050A /* ImageModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26AA90934DE680B1EF2D2B7193E4E6F4 /* ImageModifier.swift */; }; - 8C84CD2B33AB82F29DA2DB5082067EA8 /* AnimationPublic.swift in Sources */ = {isa = PBXBuildFile; fileRef = A355EB0A70C9476E0D35A7023833EBD9 /* AnimationPublic.swift */; }; + 767925B99CC34D22E127120952AC715D /* Runtime.swift in Sources */ = {isa = PBXBuildFile; fileRef = C55C990C7FEF995EC1F0EF22BDF5DF3F /* Runtime.swift */; }; + 77C9889055A3B32EA13A9616824DB0ED /* ConstraintLayoutGuideDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BD72DC476B7EC80308D903D62BFD1AB /* ConstraintLayoutGuideDSL.swift */; }; + 783190536DC8297B50B399D8250F2032 /* HeroTransition+UINavigationControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22CCCAEC9CA820151EDA73215AE1BF54 /* HeroTransition+UINavigationControllerDelegate.swift */; }; + 7C1702076F3A31D8D2D45A4A9F09B266 /* ConstraintMakerEditable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06264092244C47F4E972731996316E3E /* ConstraintMakerEditable.swift */; }; + 7DC709F74495F62FDA39BD764DEF37DC /* CompositionLayersInitializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 000146338C8A7FBC5D88EC0E239828BC /* CompositionLayersInitializer.swift */; }; + 7DCA6A380BAA14A7EE485571A99A3C8D /* LottieView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5520D4C62CABCBE78FAA5F72DF9E7066 /* LottieView.swift */; }; + 7F87D68A6EF5D2BDA485ADD9223CCCAF /* AnimationViewInitializers.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD4D05D672FB3FD30A3891BE99A27DE5 /* AnimationViewInitializers.swift */; }; + 80538854F50E894E283C87058249C10C /* SourcePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C32602458EE66907CD7D748BF7D3C6F3 /* SourcePreprocessor.swift */; }; + 80F1CE5131DA37F9DF6516F927C78F16 /* KingfisherManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8742DE63245D8B0B0D477C39FD2A6056 /* KingfisherManager.swift */; }; + 8267702DC8728FA8827B0E9F5850D564 /* HeroModifier+Advanced.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB1EED7D06129BBBC1BC7F10B41A849E /* HeroModifier+Advanced.swift */; }; + 8277256ADEC3C4DCF79957D1CA681A9A /* ConstraintDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8C7C8C5BF5A52FEECBF11A45EAB6B05 /* ConstraintDSL.swift */; }; + 83956E20859CDBBE7BC38ABADE0170FB /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1C3A5AFC84EE5557FB94D0B2F192CF0 /* AFError.swift */; }; + 84FB7295031BEDF0073A52A61AF7129A /* Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 561C67157D92AD9611612488E316B1F6 /* Kingfisher.swift */; }; + 85794C1E4A7DF398C62C13D57990914C /* PathOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C831B9EBC722073C3C381F2C5F3304 /* PathOutputNode.swift */; }; + 85908A69CE5A0C54998A6D597BDB062F /* UIColor+HexString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DAECA16252350D9555330CFAF43480E /* UIColor+HexString.swift */; }; + 85D2D8270511FDD7E66514C703012B0C /* LayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F57DDDE2B79AD634568FE075ABF3FF /* LayerModel.swift */; }; + 8626FAA249103A6A09C091809AB7FABB /* DashPattern.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBA28AEBE0E147DB04A5F9EEF174A31C /* DashPattern.swift */; }; + 8675FAF0C389A827D865B4231B097350 /* CG+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 952DBC082BDAE504381DFADB78A3D87F /* CG+Hero.swift */; }; + 86CE574CADD6EAE3E385F152C74EA78C /* FormatIndicatedCacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 038FC01C3BD3C974F827893EE3913961 /* FormatIndicatedCacheSerializer.swift */; }; + 86F13D0EE21A89D215E2FF3040198C69 /* FillI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 663CCC735D6F362B207E9F9C36CF367D /* FillI.swift */; }; + 86F6100A3164708D9449C570776E4A53 /* HeroDebugView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1711A1A47B5D268070A1395B62A91E4A /* HeroDebugView.swift */; }; + 8705BBF0D428BF0AE1B554A377ECC540 /* ConstraintOffsetTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D9DCD10803664AAB16DD09873F4EA00 /* ConstraintOffsetTarget.swift */; }; + 89A9375A72E68E2D7A0FEE9F09B9DB10 /* AuthenticationChallengeResponsable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A2665D86FFB43808967D97BF9A0B357 /* AuthenticationChallengeResponsable.swift */; }; + 8A33ECA9EAFD6A60789BAF922DEDEC48 /* Pods-Mongle-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CB93DB765A69E592B11B11F1B390363 /* Pods-Mongle-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8A50CF3AAB5BD9BF949142DEB8E5050A /* ImageModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05BC6317267568459DFD3EA1846EC047 /* ImageModifier.swift */; }; + 8C84CD2B33AB82F29DA2DB5082067EA8 /* AnimationPublic.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CB6AE60D857F62089B7A2E3B0B9E0C /* AnimationPublic.swift */; }; 8CA19B3C581B7BB9A242E9572EF5CDB8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - 8E6EDBBE74D7D76CB6050A17E525C447 /* AnimationContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18EEB34B1E6D89116ADA3EF5F50075B9 /* AnimationContainer.swift */; }; - 8EB401DC59ED357AFE37BAF90CD90B3A /* GIFAnimatedImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80805638C41E81420E0A8A7A09111221 /* GIFAnimatedImage.swift */; }; + 8E6EDBBE74D7D76CB6050A17E525C447 /* AnimationContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = E141DFABC8037F0047CC698D0F2D3FB3 /* AnimationContainer.swift */; }; + 8EB401DC59ED357AFE37BAF90CD90B3A /* GIFAnimatedImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 758F48808C762F9A82447FA5077C9CE0 /* GIFAnimatedImage.swift */; }; 8ECEF46691822790A18862D8AE5ABBC9 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C24602E6F6B5D3A5A86A838DD5F22B4 /* QuartzCore.framework */; }; - 8FF9E93B5EAC24B1EA5114C1A84BA8F2 /* TextCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACE1D8B933A38CCF3AB3ED377FEFA0B0 /* TextCompositionLayer.swift */; }; - 904008B144F943E6AB481C75DAF55D71 /* KeypathSearchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3BE5D59A6EB4E0FE9779B52B1216F89 /* KeypathSearchable.swift */; }; - 9181F1C84D35AD2461021E528640DF81 /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD5D3E2A23678994F1B5F1CAD77D10C9 /* Merge.swift */; }; - 9251BC3AC56E5EEFFB11B4F389ABA332 /* NodeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93ABCC62A8097AE6C568CB5B6E3C16D4 /* NodeProperty.swift */; }; - 92CD1CE76015FE1F1F5732FA99D4ABF2 /* CGSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 492667D9C8A9D578BC4749000DE9A477 /* CGSize.swift */; }; - 931BBB8230A25161D5C37528A8F9FECF /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0039145C4B3BE74F56666023975E38D /* SessionManager.swift */; }; - 9323E896D635A137A6B790E24B61C346 /* AnimationContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = A811440D33F6D61347428A57D51345BA /* AnimationContext.swift */; }; - 933FDA5970AA525D6CB92BFEBA2BAB4A /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF125280632ACB9C9AAB519BA1EB6A67 /* Timeline.swift */; }; - 956DAA255510F305EC1661BE7A6A0D65 /* RenderNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B0DC89C26D01DAA6990D9F62EC59B7F /* RenderNode.swift */; }; - 971DE19A2425C011DEA7F234EF9DFB3D /* BasePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8A7977F247BE8631206D64DF7CD6005 /* BasePreprocessor.swift */; }; - 977C462E588D9085193D50156CEF2D5A /* Resource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 875EFA6AA14D883603DCD95D97937311 /* Resource.swift */; }; - 9801FDF7BBAE449C69C0D2A0E1B73398 /* CompatibleAnimationKeypath.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA37E502DA92CC65B74F9D439F6A8E0F /* CompatibleAnimationKeypath.swift */; }; - 981E678C694BD6CB6E47750023C41356 /* CascadePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5637CABA3EFF3121624AD997FDA78CC3 /* CascadePreprocessor.swift */; }; - 9820B3A65D65CCE7A683E5126C5100A8 /* SizeExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 844FE93D70A8C7C1F2F4A3B9B3A18C3F /* SizeExtensions.swift */; }; - 983ADF3305C62F8D9245A0625F5D3B45 /* TrimPathNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 108AA82362AF6895906743282976BD65 /* TrimPathNode.swift */; }; - 98A929C8E9012AB167672714FFD2113C /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FB2E0BD3BAE331A3707A8AE547D3A3D /* Request.swift */; }; - 99B5296A5EDECE0557B9DA53D9E19CA1 /* ConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 684A362C2ED39405E4AE9977DF65C87C /* ConstraintItem.swift */; }; - 9A074410CBBCE8C6BE663C80F235DC89 /* ImageFormat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F3B768E60092801AC1E6310089DD403 /* ImageFormat.swift */; }; - 9B09968922C73D50040C6EEF57890D6E /* ConstraintConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = 899EFBBF41E7BE7BE52AE6F9F755BF70 /* ConstraintConfig.swift */; }; - 9B6A8EAA0E7431297DEF11480E000F79 /* StringExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0F597D02D26A95807BE327ED2635096 /* StringExtensions.swift */; }; - 9BF3A86AFAFDA9B4C5150324F3DFD0D3 /* Nodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = D059C30460EF6A5F266B69D6EB672351 /* Nodes.swift */; }; - 9E4BB7162BF067D22CE6500181F9B99B /* FilepathImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFC188DD6DAAD0B0C824782775AE2C3D /* FilepathImageProvider.swift */; }; - A19C9C58F87FAF5DB267AE064023DF30 /* Kingfisher-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 899A2A241A114B15B66BB0C2000B5142 /* Kingfisher-dummy.m */; }; - A270CD9EC3C541FE86E65AEDCEF500CF /* ConstraintLayoutGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68CEEF8A88D00701D13E2560EBEE0DE6 /* ConstraintLayoutGuide.swift */; }; - A419C496DB3C554EE1C3DF03825C35F5 /* PointValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 973C568B5DF6AF385F3EF8AC449E72BA /* PointValueProvider.swift */; }; - A548935D2CB706C63EE8C391338190AE /* Rectangle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83AF6641123EC3D8EB312142B1FDDBFF /* Rectangle.swift */; }; - A6586EF93E2EB9BDE499C0AD98283E61 /* GradientFillRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD786847DBF7F1850BA7FB19350915E5 /* GradientFillRenderer.swift */; }; - A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 04D3038CA7C7BF6D94C857338F432C70 /* SnapKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - A6DB9B92686EF749373DE8D76E5A6375 /* Then.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF2AA24C52B3840A52156F27065D69FE /* Then.swift */; }; - A7EA1BA19DDD7C4C829D4E8BCB133B5D /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA52F4EB21B404297CB2ADE94C61B4A /* SwiftSupport.swift */; }; - A876A439F3819C8E92F68AA0985F340C /* AnimationTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF7EB0F0B7BC0D39B0852EA1E54D5370 /* AnimationTime.swift */; }; - AB333ACA619804B14FDACD4892AD0F33 /* DispatchQueue+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = CA81A9A3E3507F358F27BDF304BC0366 /* DispatchQueue+Hero.swift */; }; - AB8B45111A4E958CF8D633D8C6231689 /* ImageProgressive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 929E49C60D1DC75879C49663C30EAB17 /* ImageProgressive.swift */; }; - AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFE8253E72EBFF5CA7EDAA7F7256D35D /* ConstraintDirectionalInsets.swift */; }; - AC5A00D05AD80A2990C407BB4948C898 /* ColorValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A982AD019A67120ECE19BF7B33BB149 /* ColorValueProvider.swift */; }; - AE824D227E3FD46366D34004F0403B66 /* Mask.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3BA6F6F2AE5D59ABD097843F01D9C7B /* Mask.swift */; }; - AE8D5776F2B6CEB623A4F137801783A2 /* GroupInterpolator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C77432DC37C9C30296A71F74D11939A /* GroupInterpolator.swift */; }; - AEB271CF8DC83854F8BBFA430FB9BD30 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - AEDEEFE01BDC994BB676D0C6C4EA0B4F /* HeroAnimatorViewContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 677CB5190A4F82BCC5855687DEF55923 /* HeroAnimatorViewContext.swift */; }; - AFC64B1097F7355FF423D6A73E9C7210 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B400F3695B742424DBB9ED2183534EFD /* TaskDelegate.swift */; }; - AFD56F15DC3A3A586E58E93492D299A2 /* GroupOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0705E90C724852A81A93C709DF64D8C7 /* GroupOutputNode.swift */; }; - B1EEB201E44E9E562D052F9181538E23 /* Gifu-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 99C282E206A09D2C14638A919A1BDF11 /* Gifu-dummy.m */; }; - B2D8F9D8B91DE8C26D5C2355F1FB941A /* KingfisherOptionsInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 412B71CEDA1576AA62F6E36C4A9107B9 /* KingfisherOptionsInfo.swift */; }; - B326394F321460FE7EB46E0DC48306C9 /* CGFloatExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A6B694ABC58F1B5FC6755C4FC2FB71C /* CGFloatExtensions.swift */; }; - B369D23C61A79F2DF86542D294980D16 /* KeyframeInterpolator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC3B66579490F04AB6ABD717F27B0078 /* KeyframeInterpolator.swift */; }; + 8FF9E93B5EAC24B1EA5114C1A84BA8F2 /* TextCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB17C1035263615C106CD35A17D8A2FF /* TextCompositionLayer.swift */; }; + 904008B144F943E6AB481C75DAF55D71 /* KeypathSearchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E2F40282D524C44C2052BDC11CE4D77 /* KeypathSearchable.swift */; }; + 9181F1C84D35AD2461021E528640DF81 /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F0C4D2833FA086D3636A3B5E0C93D9F /* Merge.swift */; }; + 9251BC3AC56E5EEFFB11B4F389ABA332 /* NodeProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = D14DDDCC35CF520B01762198CEB18F8A /* NodeProperty.swift */; }; + 92CD1CE76015FE1F1F5732FA99D4ABF2 /* CGSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9EA12A86172EF76AD727297D3D58157 /* CGSize.swift */; }; + 931BBB8230A25161D5C37528A8F9FECF /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 955CFD43DC00688DEA877F3CBBC714CB /* SessionManager.swift */; }; + 9323E896D635A137A6B790E24B61C346 /* AnimationContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE389AE913732C020CBFE3C00E5264AF /* AnimationContext.swift */; }; + 933FDA5970AA525D6CB92BFEBA2BAB4A /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E62546DDC19A5383A73D79FBC2AC149 /* Timeline.swift */; }; + 956DAA255510F305EC1661BE7A6A0D65 /* RenderNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 244321FEACD7232CDCD7732FF12355A7 /* RenderNode.swift */; }; + 971DE19A2425C011DEA7F234EF9DFB3D /* BasePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4290D4E572C61BEEAFFBE4A557F6D48 /* BasePreprocessor.swift */; }; + 977C462E588D9085193D50156CEF2D5A /* Resource.swift in Sources */ = {isa = PBXBuildFile; fileRef = F79B9D4C8BC44856E8325340AA62AC04 /* Resource.swift */; }; + 9801FDF7BBAE449C69C0D2A0E1B73398 /* CompatibleAnimationKeypath.swift in Sources */ = {isa = PBXBuildFile; fileRef = D615BA6079E76006013AC5E03598BDFA /* CompatibleAnimationKeypath.swift */; }; + 981E678C694BD6CB6E47750023C41356 /* CascadePreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05345E1912FADE8AC5544FE6A7EEE2A6 /* CascadePreprocessor.swift */; }; + 9820B3A65D65CCE7A683E5126C5100A8 /* SizeExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 458E286D92537BF234DEB097D5939BE1 /* SizeExtensions.swift */; }; + 983ADF3305C62F8D9245A0625F5D3B45 /* TrimPathNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = A54DFF4C9E78FDE58C0F49F17EEE418B /* TrimPathNode.swift */; }; + 98A929C8E9012AB167672714FFD2113C /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981AF4716C9F1F8B20B6E3B7FF5FA8AD /* Request.swift */; }; + 99B5296A5EDECE0557B9DA53D9E19CA1 /* ConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A79157BD2B8672955F0EB5DEA897FAB4 /* ConstraintItem.swift */; }; + 9A074410CBBCE8C6BE663C80F235DC89 /* ImageFormat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D79AB1DA4F6689A51A3461685EACC6 /* ImageFormat.swift */; }; + 9B09968922C73D50040C6EEF57890D6E /* ConstraintConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6A40717974B24B4C2F0D2578BD0DA45 /* ConstraintConfig.swift */; }; + 9B6A8EAA0E7431297DEF11480E000F79 /* StringExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E0BD0671731D804A2779ED44096D9242 /* StringExtensions.swift */; }; + 9BF3A86AFAFDA9B4C5150324F3DFD0D3 /* Nodes.swift in Sources */ = {isa = PBXBuildFile; fileRef = B05CA7BD4E5D4BB79182B4F983B35111 /* Nodes.swift */; }; + 9E4BB7162BF067D22CE6500181F9B99B /* FilepathImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DB5650797823808C142040D15B4C740 /* FilepathImageProvider.swift */; }; + A19C9C58F87FAF5DB267AE064023DF30 /* Kingfisher-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 75D41B8987BC1633DE0E6B6E0A86A883 /* Kingfisher-dummy.m */; }; + A23CCC928B5B41F1F697C6D15D06CA55 /* Pods-Mongle-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 826C244908FAC4170C2386DBA4E3B85B /* Pods-Mongle-dummy.m */; }; + A270CD9EC3C541FE86E65AEDCEF500CF /* ConstraintLayoutGuide.swift in Sources */ = {isa = PBXBuildFile; fileRef = C67B9931AB1C2651FAD5B9DD34DAAA96 /* ConstraintLayoutGuide.swift */; }; + A419C496DB3C554EE1C3DF03825C35F5 /* PointValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EBA725FFC9B95363E1B2EDB1FE71934 /* PointValueProvider.swift */; }; + A548935D2CB706C63EE8C391338190AE /* Rectangle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FA1A9F812A44A878ECB0558CDF5DBC5 /* Rectangle.swift */; }; + A6586EF93E2EB9BDE499C0AD98283E61 /* GradientFillRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B9215019B3D64439F99DC3BF22189DB /* GradientFillRenderer.swift */; }; + A66ED57B365A35434C5BAF4B990819B7 /* SnapKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E614720FB99A35005BCC5670C828E61F /* SnapKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A6DB9B92686EF749373DE8D76E5A6375 /* Then.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4606AD3B62B3C21221934B4EFC7F84D /* Then.swift */; }; + A7EA1BA19DDD7C4C829D4E8BCB133B5D /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48E9BBE9BA77026E72CFC3788223078B /* SwiftSupport.swift */; }; + A876A439F3819C8E92F68AA0985F340C /* AnimationTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0786E588BCB8A4DFCC187386F6AF122 /* AnimationTime.swift */; }; + A9E70330524A80D4D04AF50A838666F5 /* SwiftyGif-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C20A85B9E699E8EF66D73A07A31FE4DF /* SwiftyGif-dummy.m */; }; + AB333ACA619804B14FDACD4892AD0F33 /* DispatchQueue+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38851A93E8600EA95BCA5B852C280169 /* DispatchQueue+Hero.swift */; }; + AB8B45111A4E958CF8D633D8C6231689 /* ImageProgressive.swift in Sources */ = {isa = PBXBuildFile; fileRef = E80D714CD551840C67B35967F0E2254B /* ImageProgressive.swift */; }; + AC35C9341C4BB156BB26FDD237EE3721 /* ConstraintDirectionalInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = A086106FDC770ADCCE3D3EE397775954 /* ConstraintDirectionalInsets.swift */; }; + AC5A00D05AD80A2990C407BB4948C898 /* ColorValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 093BC7D568FAC78FC0B8F41A988E1658 /* ColorValueProvider.swift */; }; + AE824D227E3FD46366D34004F0403B66 /* Mask.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6341B2CADFB50E53B6F3089748BB42A3 /* Mask.swift */; }; + AE8D5776F2B6CEB623A4F137801783A2 /* GroupInterpolator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9778B944CB05DB31F694F8CEA5CEA972 /* GroupInterpolator.swift */; }; + AEDEEFE01BDC994BB676D0C6C4EA0B4F /* HeroAnimatorViewContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 769A03B298F21F7E959334296BA4E287 /* HeroAnimatorViewContext.swift */; }; + AF6FF1855E227D3C93BB642FFB68EBB6 /* UIImageView+SwiftyGif.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72E31793804713978D3D4EEA476FC3FC /* UIImageView+SwiftyGif.swift */; }; + AFC64B1097F7355FF423D6A73E9C7210 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA410D39487F4FB4430ADDA4F50F4D9F /* TaskDelegate.swift */; }; + AFD56F15DC3A3A586E58E93492D299A2 /* GroupOutputNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F894DAB215B86B8BD59BC4E07A8E0E7 /* GroupOutputNode.swift */; }; + B1EEB201E44E9E562D052F9181538E23 /* Gifu-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CD575FB666A7FA70DF1260C2817B8A1A /* Gifu-dummy.m */; }; + B2D8F9D8B91DE8C26D5C2355F1FB941A /* KingfisherOptionsInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2DC6913F0CECA69052F0D908C2F13D0 /* KingfisherOptionsInfo.swift */; }; + B326394F321460FE7EB46E0DC48306C9 /* CGFloatExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B577BC193F89D62CF20A89880DF35438 /* CGFloatExtensions.swift */; }; + B369D23C61A79F2DF86542D294980D16 /* KeyframeInterpolator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98123CB420636D951F9DE8058269721D /* KeyframeInterpolator.swift */; }; B3CEEB0700D9E6722E9517229E51A370 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B37CD83EDDA4DC74CC8979694A98F9EB /* UIKit.framework */; }; - B46DC8478B86A6E2356EBC2FCA6E8A30 /* AnimationTextProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1BA16B2238DF4F163401120A3C527C5 /* AnimationTextProvider.swift */; }; - B4A5070619398ABCE3153716A8B1FD39 /* DefaultAnimationPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD98A7DFC586247105BF42357C1D0783 /* DefaultAnimationPreprocessor.swift */; }; - B4C86877D4658639A825AE10A5360041 /* SolidCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = E24574BD3D3C5B7BB458B1C52311763C /* SolidCompositionLayer.swift */; }; - B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CD21F7383304A32194C44FFDE666B47 /* ConstraintDescription.swift */; }; - B6AE25C51BED9621BBA67FE397452160 /* Parser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74D3DA2AFE6E79A53A4F6426B1504E68 /* Parser.swift */; }; - B761609304C53DD165E21D6979C187FA /* HeroModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE3D99BA121318799420B4C4348DFEC2 /* HeroModifier.swift */; }; - B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B2E294BABE76C8E6BDF8CEA0F8B4C19 /* Debugging.swift */; }; - BAA6B8A757D1C7D80877064966A6F57D /* HeroContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2B7542F86812827C14DC12BE8A57E86 /* HeroContext.swift */; }; - BD644148B96CAD95FE9EDB392919254B /* KeyframeExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC951E5DD8B35AEB5D5DFE42509D6C3E /* KeyframeExtensions.swift */; }; + B46DC8478B86A6E2356EBC2FCA6E8A30 /* AnimationTextProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB77B4854A336E6261DBB89A4A16A0F3 /* AnimationTextProvider.swift */; }; + B4A5070619398ABCE3153716A8B1FD39 /* DefaultAnimationPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 665742FE35FFB4F5DE953C515AF459E9 /* DefaultAnimationPreprocessor.swift */; }; + B4C86877D4658639A825AE10A5360041 /* SolidCompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85BF504BF7FE1E4F6748E10C2B2E6D68 /* SolidCompositionLayer.swift */; }; + B599696DFEF6B2A5ECF528F4E5BB1846 /* ConstraintDescription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42CFCC032D2E25C0D5E94B823536141A /* ConstraintDescription.swift */; }; + B6AE25C51BED9621BBA67FE397452160 /* Parser.swift in Sources */ = {isa = PBXBuildFile; fileRef = A141C5F32F2DE0DD33D856F501B3E605 /* Parser.swift */; }; + B761609304C53DD165E21D6979C187FA /* HeroModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = E379265F1174BBB991BA9633F46CC668 /* HeroModifier.swift */; }; + B780B272106411CBE258BB60FFC45410 /* Debugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 989291BC8B2EF034C9E820197A8F988C /* Debugging.swift */; }; + BAA6B8A757D1C7D80877064966A6F57D /* HeroContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = E059027A1F2A81B724F2994020FFCEB9 /* HeroContext.swift */; }; + BD644148B96CAD95FE9EDB392919254B /* KeyframeExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 825E3E236BBB436E8E68B5692C8AC023 /* KeyframeExtensions.swift */; }; BE18109174E3B3A854ABBCC35222BDE6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */; }; - BE63C2C8EC7B15BE0848D01ED7125E86 /* Hero-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B5373A5265D783271587C7D5EDBD1D8 /* Hero-dummy.m */; }; - BECA67DFB5E0984DFAEFCB775C31972E /* ConstraintView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DA077FFDC2B3A5B5720EC5324DF9F28 /* ConstraintView.swift */; }; - BEE6B677416CA71C981D1D3F60B18C96 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = B001956AB9B8A2EDD85322EBB93D7148 /* Alamofire.swift */; }; - BF176A4BF95237D8CC2D74B1726F3030 /* ItemsExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24C7DB4DC70C6670B8D7877D1782F7A9 /* ItemsExtension.swift */; }; - C0FFA57E39D99B6AC85FEF60CA966EE4 /* Source.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0553AF0BE860EDBE760D530918B1C79B /* Source.swift */; }; - C2CDC860BA74B75C0504A55B02E072F6 /* AnimatedImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB9B2E999C69883095CF7DFC281DC1DC /* AnimatedImageView.swift */; }; - C404ABC8391D8C5678272EA2B7149664 /* HeroProgressRunner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E96389B58DD12F7C74239518DB52B01 /* HeroProgressRunner.swift */; }; - C409433F2328566B78FA477EB56CA377 /* DiskStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48FFCA2B8AE0FB6FE918FE14B7AFEBC6 /* DiskStorage.swift */; }; - C412F27D75AFC0DF0F0289DBB270931C /* ConstraintMakerFinalizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DE6CB2968096E09D5FD742BECDB7ACC /* ConstraintMakerFinalizable.swift */; }; - C58AC3B6AC4597752277700E774B0927 /* ImageDownloaderDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF1E95F29D25D6B31272BE44A309DCDB /* ImageDownloaderDelegate.swift */; }; - C5E439F41564B914FA9B013E49556E78 /* AnimatorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20B7DCBE824E7298B12A7030E1951E9D /* AnimatorNode.swift */; }; - C6EEAC88D46661939CEC80B9C757D646 /* HeroCoreAnimationViewContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2516528EA09E7CD231C834B39296A773 /* HeroCoreAnimationViewContext.swift */; }; - C81E265F2E60B03E96EE9B3D9C0A846C /* GIFImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71A8823BD6868203145884BF25600778 /* GIFImageView.swift */; }; - C9CECE91B319FA2324E28A6CA0351A32 /* MaskContainerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7035B9BD72BCE17B4B22F241EE357D06 /* MaskContainerLayer.swift */; }; - CD698D8D49A0DB3669D8D58B4571268E /* ImageProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 246F1D9261D05311F7B471FEA2134421 /* ImageProcessor.swift */; }; - CDB5435BA7C37FB0B41513E0CDD51268 /* Glyph.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02DC0CD4C141440BBA368B28E891A876 /* Glyph.swift */; }; - CDD42E25D201469CAFEA9E6181525FA8 /* RequestModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9235FB90C3916C506FEFBB2BAA89F77 /* RequestModifier.swift */; }; - CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA986D956CB8AB3D19255837DA4EEC02 /* ConstraintRelation.swift */; }; - CE94A1EB58F3B3436BE5B75C20C968E0 /* Animator.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB6E7226DD215F0DBEDD6EB268273FDF /* Animator.swift */; }; - D0508A5E7A4DF1129A99994EFC3AACEE /* SessionDataTask.swift in Sources */ = {isa = PBXBuildFile; fileRef = A090D77A87D83DCEFA534DD045DF2347 /* SessionDataTask.swift */; }; - D0F527FECD9CDE6E33868A911863F3A2 /* HeroTransition+Complete.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FC2C807E4A8EDFDC6BB6762EBCF844F /* HeroTransition+Complete.swift */; }; - D1B4079BB427AA2EA1955C02EA34E7EC /* ImageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3833A2B08E0696D89E25BABEBF02B8C8 /* ImageCache.swift */; }; - D22578DEFBC8E974EE870ED97A585C66 /* PathElement.swift in Sources */ = {isa = PBXBuildFile; fileRef = E78D7900A593DF50A881EB0C84064D16 /* PathElement.swift */; }; - D2338B390E753CCA227453F41D92A453 /* Stroke.swift in Sources */ = {isa = PBXBuildFile; fileRef = 124A006E9E9B663652BF155DBB0F6FE9 /* Stroke.swift */; }; - D2ED11EF37BAE926F57B4DB51D237FF9 /* Animation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A14148E0EF778A4200A9E085383F347 /* Animation.swift */; }; - D3D8C379C6E4FB487E5ABD6800AD7B7E /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA411615B08FB03608F45D0DC91B1DA8 /* DispatchQueue+Alamofire.swift */; }; + BE63C2C8EC7B15BE0848D01ED7125E86 /* Hero-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9DE8C4781BD6E0EEBDC04E020A001A8A /* Hero-dummy.m */; }; + BECA67DFB5E0984DFAEFCB775C31972E /* ConstraintView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D2F68FBA4F44562FA5B6A860080B98F /* ConstraintView.swift */; }; + BEE6B677416CA71C981D1D3F60B18C96 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48BA3ECBE79D5E0F41DD627AA0E97FE1 /* Alamofire.swift */; }; + BF176A4BF95237D8CC2D74B1726F3030 /* ItemsExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8966B7A3AE0765907EE7E3AF51CD234F /* ItemsExtension.swift */; }; + C0FFA57E39D99B6AC85FEF60CA966EE4 /* Source.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58D9F1FD9647422D154FE9D303C19830 /* Source.swift */; }; + C2CDC860BA74B75C0504A55B02E072F6 /* AnimatedImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0EC414318FD84AFA7B74B86D7B853E7 /* AnimatedImageView.swift */; }; + C404ABC8391D8C5678272EA2B7149664 /* HeroProgressRunner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3723BED1B3CEC03D58E82D7658EFE9E4 /* HeroProgressRunner.swift */; }; + C409433F2328566B78FA477EB56CA377 /* DiskStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADF7613023ABA1460344B3032ED08B38 /* DiskStorage.swift */; }; + C412F27D75AFC0DF0F0289DBB270931C /* ConstraintMakerFinalizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5723F716939B7B72B670BB3289DC108C /* ConstraintMakerFinalizable.swift */; }; + C58AC3B6AC4597752277700E774B0927 /* ImageDownloaderDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14124014A2E7B958DC7567CA3B2451CD /* ImageDownloaderDelegate.swift */; }; + C5E439F41564B914FA9B013E49556E78 /* AnimatorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92CE64AA37A41530E11D9547D710D7A8 /* AnimatorNode.swift */; }; + C6EEAC88D46661939CEC80B9C757D646 /* HeroCoreAnimationViewContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9214A31AD7444C2BD1F0B07F5DDFE83 /* HeroCoreAnimationViewContext.swift */; }; + C81E265F2E60B03E96EE9B3D9C0A846C /* GIFImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A77FF259EE9D673D0019E8F3C36E6625 /* GIFImageView.swift */; }; + C9CECE91B319FA2324E28A6CA0351A32 /* MaskContainerLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DFA9824CFC5EC265CC3E2AFE06107C1 /* MaskContainerLayer.swift */; }; + CD698D8D49A0DB3669D8D58B4571268E /* ImageProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9111798C97D00B2B4C9625BF149AD91 /* ImageProcessor.swift */; }; + CDB5435BA7C37FB0B41513E0CDD51268 /* Glyph.swift in Sources */ = {isa = PBXBuildFile; fileRef = 653E6DAA02A9822A65A4985354FC82E9 /* Glyph.swift */; }; + CDD42E25D201469CAFEA9E6181525FA8 /* RequestModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC09496161A3B493247F8414C978C8DD /* RequestModifier.swift */; }; + CE62FEABA57B2B53EABF8C7DCCC6B2C4 /* ConstraintRelation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3976FD6B4FBC2A210544B1BE1246483 /* ConstraintRelation.swift */; }; + CE94A1EB58F3B3436BE5B75C20C968E0 /* Animator.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5083003B9DFE0CAE7D83ED108BF9E3C /* Animator.swift */; }; + D0508A5E7A4DF1129A99994EFC3AACEE /* SessionDataTask.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5A0CED27973FCEA85E0D337420CF2EB /* SessionDataTask.swift */; }; + D0F527FECD9CDE6E33868A911863F3A2 /* HeroTransition+Complete.swift in Sources */ = {isa = PBXBuildFile; fileRef = D75A3D07FB01935D6868AB8DF5657362 /* HeroTransition+Complete.swift */; }; + D1B4079BB427AA2EA1955C02EA34E7EC /* ImageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 932E367981E78AF508CB37787406E2DE /* ImageCache.swift */; }; + D22578DEFBC8E974EE870ED97A585C66 /* PathElement.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FEE8B9B2043AA9CAFF8DAB0DF7EDDB3 /* PathElement.swift */; }; + D2338B390E753CCA227453F41D92A453 /* Stroke.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9D86D1AA5A32F578A5C67591A87EE3C /* Stroke.swift */; }; + D2ED11EF37BAE926F57B4DB51D237FF9 /* Animation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C2852231F51A60C44E4394A18A042F8 /* Animation.swift */; }; + D3D8C379C6E4FB487E5ABD6800AD7B7E /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB7A2ABCFE601EFFCC3996620F4734DE /* DispatchQueue+Alamofire.swift */; }; D3DB9F1DF95D7732960C4A55972C115E /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E0E71C44B54E27A0270F40BBA1F6829F /* Accelerate.framework */; }; - D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84ABDD537DFBD57D37DBCAEAF9A161DC /* ConstraintMultiplierTarget.swift */; }; - D5233EE525CA015250991CF3A64A1D4E /* Then-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D34021A364FDFF09017290D02B46C4FD /* Then-dummy.m */; }; - D5B6C3D9C30E853925EDFD6F6B2F735A /* UIViewController+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = E54D54B42EEE4B1E961794F561707E59 /* UIViewController+Hero.swift */; }; - D65C254F5ABF2CB5ECEE50FE8F8E1A80 /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13AF951E958AB1715286FCD68C5C1F61 /* Response.swift */; }; - D7E9B05254499C8C0D1B5686AAC56E46 /* Pods-Mongle-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CB93DB765A69E592B11B11F1B390363 /* Pods-Mongle-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D99F7D4FA69590F4F4DE4234BC19616A /* UIView+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27312639F2D2D0F2704C99B65488243E /* UIView+Hero.swift */; }; - DB289656E21B490DA80311AD52DBA5C0 /* HeroTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A05BC00BE0BABAA3EE43D465CC597D2 /* HeroTypes.swift */; }; - DBFC63EC1CA25F1F1E1372552AF355C5 /* Asset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46E824EC12CB5F5BD0A49260F95EE42C /* Asset.swift */; }; - DC2F67DD3163291EB40DC85B0D8BFD12 /* HeroTransition+Start.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5655145C744E72BBEDB3E2A04D62432 /* HeroTransition+Start.swift */; }; - DCEB1D1D97936446FFCC775B87820D76 /* CALayer+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58CA9DD7C500662C8590908EAF4A2814 /* CALayer+Hero.swift */; }; + D4697DC40F3B059E4A0867838CA1814E /* ConstraintMultiplierTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8AB17BE4D1C0BFC51BAE3E682CFAC0A5 /* ConstraintMultiplierTarget.swift */; }; + D5233EE525CA015250991CF3A64A1D4E /* Then-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 73C3AAE2D2A8173D6C624A5799E0204D /* Then-dummy.m */; }; + D5B6C3D9C30E853925EDFD6F6B2F735A /* UIViewController+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F2AE8D6F3983AD7A19FE36AA695BD8E /* UIViewController+Hero.swift */; }; + D65C254F5ABF2CB5ECEE50FE8F8E1A80 /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68AB181DD00FE469BE9C35E037C6349E /* Response.swift */; }; + D99F7D4FA69590F4F4DE4234BC19616A /* UIView+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4C8EE2A69ADFB912FE5BF82344A8B23 /* UIView+Hero.swift */; }; + DB289656E21B490DA80311AD52DBA5C0 /* HeroTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDB1569461304251D47F969FF92E5E70 /* HeroTypes.swift */; }; + DBFC63EC1CA25F1F1E1372552AF355C5 /* Asset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 684B7E992BD8B23A89EE0921AE3AABC1 /* Asset.swift */; }; + DC2F67DD3163291EB40DC85B0D8BFD12 /* HeroTransition+Start.swift in Sources */ = {isa = PBXBuildFile; fileRef = 401B193551F64F81DE2B5EBC55330CE5 /* HeroTransition+Start.swift */; }; + DCEB1D1D97936446FFCC775B87820D76 /* CALayer+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = B324398710B905ABB9E6C6CABC4A5267 /* CALayer+Hero.swift */; }; DD6F354D687662E88A8E9B75ADF0EE95 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE542263EFE941153972EA24CECE1D62 /* CoreMedia.framework */; }; - DEDF109E7613586E4A97CAC85A4EEDE3 /* Group.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1B581B98638CA802E6305DA735C4FDD /* Group.swift */; }; - E0032647917CA040AC2D364F6E6A88D9 /* Ellipse.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1CA5C413753FEE366AF80FBF062C422 /* Ellipse.swift */; }; - E05D3E5962B58A2AE76850E534A24C7B /* UIKit+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = B06C565717776C46F99A68C54AAC08A9 /* UIKit+Hero.swift */; }; - E14591ACB8E8B67FA53C24B992997EB6 /* ConditionalPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 453926FDE2A14E9331703DDBDC616818 /* ConditionalPreprocessor.swift */; }; - E160D0FFF74A956073C054E110280A84 /* SizeValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BFDED3FE51323D1ABB36C6D0B5CFEE9 /* SizeValueProvider.swift */; }; - E259639E8D936042ECD20840FBBD4EC8 /* HeroTargetState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A23622B648D125D1E7BF78535BDF41A /* HeroTargetState.swift */; }; - E2ABCE1D394EDFD0EBE0FF31C7E9E36D /* UIImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB4642B19D31DD93987533F0D20769EF /* UIImageView.swift */; }; - E3747EC31FCCA97D75A81FC700CF7E24 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6849CDCB176560C2EE73F0037E25A1D2 /* ResponseSerialization.swift */; }; - E5E49B7F82458025BCFB0B282173997C /* Pods-Mongle-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 826C244908FAC4170C2386DBA4E3B85B /* Pods-Mongle-dummy.m */; }; - E61847769697A509C4F0294A443D23A9 /* LayerTextProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = C456FA698075381093F946C10BE10069 /* LayerTextProvider.swift */; }; - E65E75D9FF3AD6FD21154DE84D1AE4FA /* IgnoreSubviewModifiersPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A18F7BBEF220A7D535EE0DE2191CCF5 /* IgnoreSubviewModifiersPreprocessor.swift */; }; - E6ADCFAE0FA7FFD128FB1F2E150B48B0 /* AnimatorNodeDebugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D2756087877B89EF0461EBDF8CC4D44 /* AnimatorNodeDebugging.swift */; }; - E7D5ECE4A8A07914C61CCCF43EC2A237 /* FillRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = E325FEF876ECD20B376B45E82CBE201B /* FillRenderer.swift */; }; - E7D7D875688EDFBCB8F4C2C1F4F5B5E5 /* String+MD5.swift in Sources */ = {isa = PBXBuildFile; fileRef = F66B39F82692E17B5379C11068DD63D3 /* String+MD5.swift */; }; - E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26519E36A86A6C8D1F382A04FDDAC9A5 /* ConstraintPriorityTarget.swift */; }; - E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98C6C28A0BAFFA0B2B605258AB1C7FB0 /* LayoutConstraintItem.swift */; }; - EB1726F5E0D0EEBA20E4528B1E37A8FA /* ConstraintViewDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF87B1DD8CF49D30FD4E9DE29F096B59 /* ConstraintViewDSL.swift */; }; - EB627C7C3D390BCA2D1EC73E22BE0DE1 /* Gifu.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C9DCED2C052E48BD5EC6DB4B7755D16 /* Gifu.h */; settings = {ATTRIBUTES = (Public, ); }; }; - ED6AD4FF7251E66496D7BE20AD69F53E /* SolidLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3683B2E6C61310BED11FFE99838B0A2 /* SolidLayerModel.swift */; }; - EE55BD850539F8CF8AE9D2942CEF0870 /* UIImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3093D912FA21BCB1A5E436BE8946EFA /* UIImage.swift */; }; - EE909C7C786140109051BC9562EEC7C8 /* ConstraintMakerPriortizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CCF5E4C8E6D4A66C822174648FFAF64 /* ConstraintMakerPriortizable.swift */; }; - EF1EFC477000585DE0C664175F582416 /* AnimationImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3ACB408BB814455D3604123C2C8D058 /* AnimationImageProvider.swift */; }; - F0709DCF413ACE7F337DFAC0BA3B874B /* MemoryStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FA6007B2F0A62BD616983FE0D3790AA /* MemoryStorage.swift */; }; - F0AFE9E50E6BBC9567BDD80CEDB1F29B /* CompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEC980F5EDDD89CE409E739B8262CDD7 /* CompositionLayer.swift */; }; - F0E89F7017249BCB3B2C1320F9413B2C /* ImageDataProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D376F7C69C5C26C3D64F36C66CD1FE2 /* ImageDataProcessor.swift */; }; - F13F2AA7F2E6D95A181CAB99B900D531 /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71FF99816844AF967A15BB1A60C90687 /* ServerTrustPolicy.swift */; }; - F40E62C1F8006DD6E6FBFC3F498E3151 /* AnimationSubview.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D41F821050C1A91400E4F174D11B3BF /* AnimationSubview.swift */; }; - F48E95447BBE6B71B85A929CA0A29533 /* InterpolatableExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CB0EF8676117EB7FB3ADFEF4E60EDE7 /* InterpolatableExtensions.swift */; }; - F4DD189E36C289688DD2187E0A38D96F /* Regex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B48D9EBA83CCFC5C7FA79F2E11ABDB1 /* Regex.swift */; }; - F6176312F13D9B902ABCCEF17D819C17 /* FillNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0D15C8D74734BA9A21F526192F577BD /* FillNode.swift */; }; - F61B201AEC79CE462DBFFA6152FEB2F3 /* TextDocument.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A4E3C79ACAB61629F179C9BA61AC923 /* TextDocument.swift */; }; - F66ED581D2EBD170ABAD4EC0206B6C5C /* UIButton+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2272308A7922A310F7DE8E45D67CEC8E /* UIButton+Kingfisher.swift */; }; - F67D13F1DF0DD6F7271E3B94CCA8AC22 /* HeroDebugPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 447AD4EC0FF95C0EAD6A8AA49BDE6D20 /* HeroDebugPlugin.swift */; }; - F6DA446FBEF5784160510E3BA96BE49B /* ShapeRenderLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C2AD71AB99A562FA53C334E55B6CAFB /* ShapeRenderLayer.swift */; }; - F6E40305D650665BB3FC772F77FCD4D1 /* StrokeRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9EEB9B59C54774084F76F8553B98584 /* StrokeRenderer.swift */; }; - F70ABE4FA93474067F07429D20ECF28D /* GradientFillNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8108EAC1913A190F9198EF2E4F59B9A /* GradientFillNode.swift */; }; - F780F31334A5B069C756121AE82F008B /* Storage.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9007BD2F9279E0EE43C2B7B2AB52582 /* Storage.swift */; }; - F7B74645E07C39771156A1FA413B98D4 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E00E59DBC2776F693E41A5E54C961C3F /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F80D9DE6C306B5125AD6A15ECCE04451 /* Then-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0440521B75FA9DD1796E5E604D4FFF08 /* Then-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F88714503B965C342AF8504FB6E6AF15 /* GradientStrokeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67DF84AE4E94DCCD3E295F1E65C00BCC /* GradientStrokeNode.swift */; }; - F889A234E00ADD038A248ACCD63D5FE0 /* BundleImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6426F4C99B2D6D1D839F901E3FB1EBB6 /* BundleImageProvider.swift */; }; - F8C737DF6DC941405614BF2886B1DD4D /* ImageLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B229A6CB37459AD6BB465758D908AB3 /* ImageLayerModel.swift */; }; - FB7E4B3BFB5B9E4DFBFA56AFDF061226 /* TextAnimatorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5BF94CA3C97696DD82CC203CDC9BFDE /* TextAnimatorNode.swift */; }; + DEDF109E7613586E4A97CAC85A4EEDE3 /* Group.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08468EADC48065784EE417256A3EC8A4 /* Group.swift */; }; + E0032647917CA040AC2D364F6E6A88D9 /* Ellipse.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEEE51859B006080C208D45C5D406E6F /* Ellipse.swift */; }; + E05D3E5962B58A2AE76850E534A24C7B /* UIKit+Hero.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26F939B85A5BB48B6351423BBC06510A /* UIKit+Hero.swift */; }; + E14591ACB8E8B67FA53C24B992997EB6 /* ConditionalPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF9CF1FDE95BDFC60BCFAA1874A1E26C /* ConditionalPreprocessor.swift */; }; + E160D0FFF74A956073C054E110280A84 /* SizeValueProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C193421FB432FE68D297D2B3F9BFB68 /* SizeValueProvider.swift */; }; + E259639E8D936042ECD20840FBBD4EC8 /* HeroTargetState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F345B81C90DB3A75444DDAD096CBE1F /* HeroTargetState.swift */; }; + E2ABCE1D394EDFD0EBE0FF31C7E9E36D /* UIImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B75E04EFAC58E3BE13D333CF5D2010C /* UIImageView.swift */; }; + E3747EC31FCCA97D75A81FC700CF7E24 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB6D0A7F55BC2AC67579DD4F50323457 /* ResponseSerialization.swift */; }; + E61847769697A509C4F0294A443D23A9 /* LayerTextProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 366A56AF6D6D94D334873D875738BE59 /* LayerTextProvider.swift */; }; + E65E75D9FF3AD6FD21154DE84D1AE4FA /* IgnoreSubviewModifiersPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0220713FC998F6FFC8B7AF7B9A81EC40 /* IgnoreSubviewModifiersPreprocessor.swift */; }; + E6ADCFAE0FA7FFD128FB1F2E150B48B0 /* AnimatorNodeDebugging.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC046D42167D1DBDBA2817B0CD6C1998 /* AnimatorNodeDebugging.swift */; }; + E7D5ECE4A8A07914C61CCCF43EC2A237 /* FillRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA59BA7E2D8854E2F262B1031A59591F /* FillRenderer.swift */; }; + E7D7D875688EDFBCB8F4C2C1F4F5B5E5 /* String+MD5.swift in Sources */ = {isa = PBXBuildFile; fileRef = 010D50F2CCE7A1C53805C7611C84DDAC /* String+MD5.swift */; }; + E8F2429683B3015CBD39CE883770BCA7 /* ConstraintPriorityTarget.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2F4AEB3415826EBC247A86A27A739E7 /* ConstraintPriorityTarget.swift */; }; + E9A970BC24EA15832F248EA020072746 /* LayoutConstraintItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = F256C086573F82CC1AC1FCAD428172EA /* LayoutConstraintItem.swift */; }; + EB1726F5E0D0EEBA20E4528B1E37A8FA /* ConstraintViewDSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8F53F76ED32314B81A90FBDB51F5119 /* ConstraintViewDSL.swift */; }; + EB627C7C3D390BCA2D1EC73E22BE0DE1 /* Gifu.h in Headers */ = {isa = PBXBuildFile; fileRef = DB0082ABB38CC09099FE955D7AE3088F /* Gifu.h */; settings = {ATTRIBUTES = (Public, ); }; }; + ED6AD4FF7251E66496D7BE20AD69F53E /* SolidLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58682907823CF6D6C4370A459E1CBE4F /* SolidLayerModel.swift */; }; + EE55BD850539F8CF8AE9D2942CEF0870 /* UIImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40ABE3826BE8C9C56726722208694836 /* UIImage.swift */; }; + EE909C7C786140109051BC9562EEC7C8 /* ConstraintMakerPriortizable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C37D958EF6DE64619621C1F92318886 /* ConstraintMakerPriortizable.swift */; }; + EF1EFC477000585DE0C664175F582416 /* AnimationImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0247DA5A28881C240200017C7B3B536C /* AnimationImageProvider.swift */; }; + F0709DCF413ACE7F337DFAC0BA3B874B /* MemoryStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D21FE5D0AB544EE493551FCC02E18C0 /* MemoryStorage.swift */; }; + F0AFE9E50E6BBC9567BDD80CEDB1F29B /* CompositionLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4B7740E37A8CF54B9CD448BEABD2828 /* CompositionLayer.swift */; }; + F0E89F7017249BCB3B2C1320F9413B2C /* ImageDataProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = C801A75107C152694FAAACDFD366BC12 /* ImageDataProcessor.swift */; }; + F13F2AA7F2E6D95A181CAB99B900D531 /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3470AA58A9EF113F22CA718AC356BFD6 /* ServerTrustPolicy.swift */; }; + F40E62C1F8006DD6E6FBFC3F498E3151 /* AnimationSubview.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92B80B98731140BDD6643E1287988359 /* AnimationSubview.swift */; }; + F48E95447BBE6B71B85A929CA0A29533 /* InterpolatableExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E28C75D166F373C07A0BBC678C1F471 /* InterpolatableExtensions.swift */; }; + F4DD189E36C289688DD2187E0A38D96F /* Regex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84CBFEC499263EF9194C83BA3B8AE3E0 /* Regex.swift */; }; + F6176312F13D9B902ABCCEF17D819C17 /* FillNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D66EE4BF18BA2F6D4B91513D3F1502A /* FillNode.swift */; }; + F61B201AEC79CE462DBFFA6152FEB2F3 /* TextDocument.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9ECAC9F611762AE3BDF6728C61469DF /* TextDocument.swift */; }; + F66ED581D2EBD170ABAD4EC0206B6C5C /* UIButton+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1036EB45830805140A40EC7D6F8B7B5A /* UIButton+Kingfisher.swift */; }; + F67D13F1DF0DD6F7271E3B94CCA8AC22 /* HeroDebugPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = B14AEBC33E0353A5B0FC8CF01A42E502 /* HeroDebugPlugin.swift */; }; + F6DA446FBEF5784160510E3BA96BE49B /* ShapeRenderLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F230E030E3EBA7B9A4C90F57B66521D /* ShapeRenderLayer.swift */; }; + F6E40305D650665BB3FC772F77FCD4D1 /* StrokeRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B756DC0016A24794CFD87B5B42A142D5 /* StrokeRenderer.swift */; }; + F70ABE4FA93474067F07429D20ECF28D /* GradientFillNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED9325990D2E83DF78852C2CBDDE6320 /* GradientFillNode.swift */; }; + F780F31334A5B069C756121AE82F008B /* Storage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76A0400C5CDBA8AB1311EB93724ADF2F /* Storage.swift */; }; + F7B74645E07C39771156A1FA413B98D4 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E00689770CB4C211E29879F2E2510594 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F80D9DE6C306B5125AD6A15ECCE04451 /* Then-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CB736E8FE61E8DADA5444542ECC2CF84 /* Then-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F88714503B965C342AF8504FB6E6AF15 /* GradientStrokeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C254E817B143B007A2E644AF64CAE7F /* GradientStrokeNode.swift */; }; + F889A234E00ADD038A248ACCD63D5FE0 /* BundleImageProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B85C88F9E602C9D1820A56D4294B6F9 /* BundleImageProvider.swift */; }; + F8C737DF6DC941405614BF2886B1DD4D /* ImageLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00158D754985329CF7D20609C991B1A7 /* ImageLayerModel.swift */; }; + FB7E4B3BFB5B9E4DFBFA56AFDF061226 /* TextAnimatorNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6844797DABCB3DCC060F9327AC7B3CB5 /* TextAnimatorNode.swift */; }; FCD1BDD7A5206F43EE5EA0F116BFD7BE /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6DC3941416EFBB206127B6B76EC80BEF /* CoreGraphics.framework */; }; - FD2FD4F959CF6A242F1F79991E4C523D /* FrameStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A18725E8DAC7FCEBBE4BEFD00CB0CA7 /* FrameStore.swift */; }; - FD410BFE43E21D9B20E8D5B532236B1E /* Font.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AFA5E4BC0B21526FD846B16E63D0C66 /* Font.swift */; }; - FEAB0E502EA1A6C4F758823B3B4BDFFF /* ImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE607DDA6F91CD653AC6DBE994E067AE /* ImageDownloader.swift */; }; - FEBB2F0A8C4F5E943B120484DFABFD72 /* PreCompLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39E5F0CADFD84C8ECA6EACB6B3BC0BC2 /* PreCompLayerModel.swift */; }; - FFE261B887C4B4BF7D241F2EE4A811D3 /* CompoundBezierPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29D6EFBA83296028F7755E54B0BFC9A5 /* CompoundBezierPath.swift */; }; + FD2FD4F959CF6A242F1F79991E4C523D /* FrameStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 659B36EE505C05358C6398BF616360B9 /* FrameStore.swift */; }; + FD410BFE43E21D9B20E8D5B532236B1E /* Font.swift in Sources */ = {isa = PBXBuildFile; fileRef = 211C3B6A3E0F485D8FCA63C212B47066 /* Font.swift */; }; + FEAB0E502EA1A6C4F758823B3B4BDFFF /* ImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = A12F54CB576AB4FF4CC13B629B10EDC4 /* ImageDownloader.swift */; }; + FEBB2F0A8C4F5E943B120484DFABFD72 /* PreCompLayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 692497AB9F51FA3E512605A5C7ADCC15 /* PreCompLayerModel.swift */; }; + FFE261B887C4B4BF7D241F2EE4A811D3 /* CompoundBezierPath.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB73111C9B867509424025701D1D84AE /* CompoundBezierPath.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 197CCC40E02DEE31C34E3FF2AF2E5C46 /* PBXContainerItemProxy */ = { + 1375580AED451CAA9BA3A78DCB663C53 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = E8022D22FAA6690B5E1C379C1BCE1491; - remoteInfo = Kingfisher; + remoteGlobalIDString = 0B967D7F8561D42493EE289EC8D450D1; + remoteInfo = "lottie-ios"; }; - 2C89665B49AA00E9241B4A717E74AED4 /* PBXContainerItemProxy */ = { + 5EFEF9EED9E3DC4844C3EED4DDDB36B1 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = EAAA1AD3A8A1B59AB91319EE40752C6D; - remoteInfo = Alamofire; + remoteGlobalIDString = 15AEBAFA43912F898FC2E1A73025C946; + remoteInfo = SwiftyGif; }; - 2E96A29AD88D2616ADBC32907C93DA13 /* PBXContainerItemProxy */ = { + 65DC5F07A2DCE56159BC759F8EDD54C8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 0B967D7F8561D42493EE289EC8D450D1; - remoteInfo = "lottie-ios"; + remoteGlobalIDString = EAAA1AD3A8A1B59AB91319EE40752C6D; + remoteInfo = Alamofire; }; - 876FE85D80A30486E03B11150F4C48FD /* PBXContainerItemProxy */ = { + 6CF52463CBE2FBE22E86E26B85CB9570 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = B3893AEA4D7DBB9A086E889FC469132D; - remoteInfo = Hero; + remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; + remoteInfo = SnapKit; }; - 91706FE255BD27F6FAA7B601FC601F0A /* PBXContainerItemProxy */ = { + 9730BF2A9286BF60AFBDD2372509BC9F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 19622742EBA51E823D6DAE3F8CDBFAD4; - remoteInfo = SnapKit; + remoteGlobalIDString = C17AEFC79E770A2906EFAAB1A3757406; + remoteInfo = Then; }; - 9957CB61652E9203F16FF1E6D5C06872 /* PBXContainerItemProxy */ = { + AAD4011CF318D67667B160D1B295A694 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; remoteGlobalIDString = 830B5AB9E16163B4A1BA339D625FE46C; remoteInfo = Gifu; }; - F346949865579055339DEF5975C5ED31 /* PBXContainerItemProxy */ = { + C72A3DD4694C613457BC3DA374708B05 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = C17AEFC79E770A2906EFAAB1A3757406; - remoteInfo = Then; + remoteGlobalIDString = E8022D22FAA6690B5E1C379C1BCE1491; + remoteInfo = Kingfisher; + }; + E5EC5031E85DD3FC1FCB5219EA2CBE08 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = B3893AEA4D7DBB9A086E889FC469132D; + remoteInfo = Hero; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0279792A35DC4D1FD1D08AD04FE3B7EB /* HeroTransition+UINavigationControllerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+UINavigationControllerDelegate.swift"; path = "Sources/Transition/HeroTransition+UINavigationControllerDelegate.swift"; sourceTree = ""; }; - 02DC0CD4C141440BBA368B28E891A876 /* Glyph.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Glyph.swift; path = "lottie-swift/src/Private/Model/Text/Glyph.swift"; sourceTree = ""; }; - 0440521B75FA9DD1796E5E604D4FFF08 /* Then-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Then-umbrella.h"; sourceTree = ""; }; - 0441B938B6549939D7D5290E10988202 /* Keyframe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Keyframe.swift; path = "lottie-swift/src/Private/Model/Keyframes/Keyframe.swift"; sourceTree = ""; }; - 04AC84D2CF022DA5B2D0D3F69D540BF8 /* NSButton+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSButton+Kingfisher.swift"; path = "Sources/Extensions/NSButton+Kingfisher.swift"; sourceTree = ""; }; - 04D3038CA7C7BF6D94C857338F432C70 /* SnapKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-umbrella.h"; sourceTree = ""; }; + 000146338C8A7FBC5D88EC0E239828BC /* CompositionLayersInitializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositionLayersInitializer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/CompositionLayersInitializer.swift"; sourceTree = ""; }; + 00158D754985329CF7D20609C991B1A7 /* ImageLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/ImageLayerModel.swift"; sourceTree = ""; }; + 00645EDDBFAB8CCCEBA000E3EE203002 /* LRUAnimationCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LRUAnimationCache.swift; path = "lottie-swift/src/Public/AnimationCache/LRUAnimationCache.swift"; sourceTree = ""; }; + 010D50F2CCE7A1C53805C7611C84DDAC /* String+MD5.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+MD5.swift"; path = "Sources/Utility/String+MD5.swift"; sourceTree = ""; }; + 011CC883EB414D61AE8817728A69D28E /* SwiftyGif.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SwiftyGif.modulemap; sourceTree = ""; }; + 0220713FC998F6FFC8B7AF7B9A81EC40 /* IgnoreSubviewModifiersPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IgnoreSubviewModifiersPreprocessor.swift; path = Sources/Preprocessors/IgnoreSubviewModifiersPreprocessor.swift; sourceTree = ""; }; + 0247DA5A28881C240200017C7B3B536C /* AnimationImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationImageProvider.swift; path = "lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift"; sourceTree = ""; }; + 038FC01C3BD3C974F827893EE3913961 /* FormatIndicatedCacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FormatIndicatedCacheSerializer.swift; path = Sources/Cache/FormatIndicatedCacheSerializer.swift; sourceTree = ""; }; + 03AA92EC464F4189E34C39819F98ECA4 /* HeroCompatible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroCompatible.swift; path = Sources/HeroCompatible.swift; sourceTree = ""; }; + 03D02B63D4AFFE65B734B308D2DF710E /* Placeholder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Placeholder.swift; path = Sources/Image/Placeholder.swift; sourceTree = ""; }; 04FCEBF0D88AAF46ED93CFA15C7B3C73 /* Pods-Mongle-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Mongle-acknowledgements.plist"; sourceTree = ""; }; - 0553AF0BE860EDBE760D530918B1C79B /* Source.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Source.swift; path = Sources/General/ImageSource/Source.swift; sourceTree = ""; }; + 05345E1912FADE8AC5544FE6A7EEE2A6 /* CascadePreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CascadePreprocessor.swift; path = Sources/Preprocessors/CascadePreprocessor.swift; sourceTree = ""; }; + 0546F62D577AC6E2FEE035FA34DA0D03 /* GIFAnimatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GIFAnimatable.swift; path = Source/Classes/GIFAnimatable.swift; sourceTree = ""; }; + 05BC6317267568459DFD3EA1846EC047 /* ImageModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageModifier.swift; path = Sources/Networking/ImageModifier.swift; sourceTree = ""; }; 0615D67898B75B4E31040E706EC714C3 /* Pods-Mongle-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Mongle-acknowledgements.markdown"; sourceTree = ""; }; - 0705E90C724852A81A93C709DF64D8C7 /* GroupOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift"; sourceTree = ""; }; - 071FF45EF8C09654F8A66520C0C5C1A5 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; - 07BE86A3DE059BAFC0C7C9C5EFF174EE /* SnapKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SnapKit-dummy.m"; sourceTree = ""; }; - 0883C671CA0FE6019CA8FDF102143143 /* Array.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Array.swift; path = Source/Extensions/Array.swift; sourceTree = ""; }; - 0A6B694ABC58F1B5FC6755C4FC2FB71C /* CGFloatExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CGFloatExtensions.swift; path = "lottie-swift/src/Private/Utility/Extensions/CGFloatExtensions.swift"; sourceTree = ""; }; - 0B0085D12F8A4825C1E8D1E23A493E22 /* ExtensionHelpers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExtensionHelpers.swift; path = Sources/Utility/ExtensionHelpers.swift; sourceTree = ""; }; - 0B6FD9F7D7E26DC773758FA89D977CFE /* Shape.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Shape.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Shape.swift"; sourceTree = ""; }; - 0C9DCED2C052E48BD5EC6DB4B7755D16 /* Gifu.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Gifu.h; path = Source/Gifu.h; sourceTree = ""; }; - 0EC2C1D5CD96AA143618E57113052E03 /* Kingfisher-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Kingfisher-Info.plist"; sourceTree = ""; }; - 0F8F592DA41CEC240EF6695ED2662DE6 /* HeroTransition+CustomTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+CustomTransition.swift"; path = "Sources/Transition/HeroTransition+CustomTransition.swift"; sourceTree = ""; }; - 0FB2E0BD3BAE331A3707A8AE547D3A3D /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; - 0FC9ADEE2DE138212A2F26AD492DBE8D /* HeroDebugView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroDebugView.swift; path = "Sources/Debug Plugin/HeroDebugView.swift"; sourceTree = ""; }; - 108AA82362AF6895906743282976BD65 /* TrimPathNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrimPathNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift"; sourceTree = ""; }; - 124A006E9E9B663652BF155DBB0F6FE9 /* Stroke.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stroke.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Stroke.swift"; sourceTree = ""; }; - 13AF951E958AB1715286FCD68C5C1F61 /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + 06264092244C47F4E972731996316E3E /* ConstraintMakerEditable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerEditable.swift; path = Source/ConstraintMakerEditable.swift; sourceTree = ""; }; + 08468EADC48065784EE417256A3EC8A4 /* Group.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Group.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Group.swift"; sourceTree = ""; }; + 093BC7D568FAC78FC0B8F41A988E1658 /* ColorValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ColorValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift"; sourceTree = ""; }; + 09CCC0AB5B154143571487EB36803898 /* Kingfisher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Kingfisher.h; path = Sources/Kingfisher.h; sourceTree = ""; }; + 09F57DDDE2B79AD634568FE075ABF3FF /* LayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/LayerModel.swift"; sourceTree = ""; }; + 0A41389C63CDFFA452FF883F6D5EFDDD /* Kingfisher.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Kingfisher.modulemap; sourceTree = ""; }; + 0B85C88F9E602C9D1820A56D4294B6F9 /* BundleImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BundleImageProvider.swift; path = "lottie-swift/src/Public/iOS/BundleImageProvider.swift"; sourceTree = ""; }; + 0C28B30370E2AED0B2A707073F98A566 /* ImageAsset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageAsset.swift; path = "lottie-swift/src/Private/Model/Assets/ImageAsset.swift"; sourceTree = ""; }; + 0C65B95574AE6D6979D3ACF28E5A46BF /* ConstraintLayoutGuide+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintLayoutGuide+Extensions.swift"; path = "Source/ConstraintLayoutGuide+Extensions.swift"; sourceTree = ""; }; + 0D8C8D5E48F908CFB65B78D3C25DD61A /* HeroPlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroPlugin.swift; path = Sources/HeroPlugin.swift; sourceTree = ""; }; + 0DA1B156D35301CD72B0D02B8F89C484 /* ColorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ColorExtension.swift; path = "lottie-swift/src/Private/Utility/Primitives/ColorExtension.swift"; sourceTree = ""; }; + 0F345B81C90DB3A75444DDAD096CBE1F /* HeroTargetState.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTargetState.swift; path = Sources/HeroTargetState.swift; sourceTree = ""; }; + 0FAEC036D536751E4954A45AF50E7D73 /* Vectors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Vectors.swift; path = "lottie-swift/src/Public/Primitives/Vectors.swift"; sourceTree = ""; }; + 0FD28A549E2EBEAF28B2DD94FB9552CB /* ImageDataProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDataProvider.swift; path = Sources/General/ImageSource/ImageDataProvider.swift; sourceTree = ""; }; + 0FDBC2F4B4BA7AC0D3925179CDF6BE98 /* Kingfisher-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Kingfisher-Info.plist"; sourceTree = ""; }; + 100893137F1C5B3795A29AF705694D3B /* ConstraintRelatableTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelatableTarget.swift; path = Source/ConstraintRelatableTarget.swift; sourceTree = ""; }; + 1036EB45830805140A40EC7D6F8B7B5A /* UIButton+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Kingfisher.swift"; path = "Sources/Extensions/UIButton+Kingfisher.swift"; sourceTree = ""; }; + 111831C8F13D0E83B7A59E069E9B4D65 /* lottie-ios-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "lottie-ios-Info.plist"; sourceTree = ""; }; + 1172AF700C3C743238385AD655806CE9 /* LayerDebugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerDebugging.swift; path = "lottie-swift/src/Private/Utility/Debugging/LayerDebugging.swift"; sourceTree = ""; }; + 12B33324DF58299226FE840CC9C2495C /* CompatibleAnimationView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompatibleAnimationView.swift; path = "lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationView.swift"; sourceTree = ""; }; 13E778F4B833EE5D7ABE882406A8215E /* Hero.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Hero.framework; path = Hero.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 140F0D33B7F03BC8647A3D98FB1DED77 /* ConstraintLayoutGuide+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintLayoutGuide+Extensions.swift"; path = "Source/ConstraintLayoutGuide+Extensions.swift"; sourceTree = ""; }; - 1562E437DACE9DCC52412D5A5FA78FC5 /* VectorsExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VectorsExtensions.swift; path = "lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift"; sourceTree = ""; }; - 15C8B86850CA83B0F098F51753887CEF /* Hero.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Hero.modulemap; sourceTree = ""; }; - 17F0E4406B42C5E4F690061802A78D6D /* NodePropertyMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NodePropertyMap.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift"; sourceTree = ""; }; - 180CAF8298A31873A2E0EB21B79528F5 /* ImageCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/ImageCompositionLayer.swift"; sourceTree = ""; }; - 18EEB34B1E6D89116ADA3EF5F50075B9 /* AnimationContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationContainer.swift; path = "lottie-swift/src/Private/LayerContainers/AnimationContainer.swift"; sourceTree = ""; }; - 1B229A6CB37459AD6BB465758D908AB3 /* ImageLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/ImageLayerModel.swift"; sourceTree = ""; }; - 1B2E294BABE76C8E6BDF8CEA0F8B4C19 /* Debugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debugging.swift; path = Source/Debugging.swift; sourceTree = ""; }; - 1C577DF1D098794A17D800905F5115F3 /* Kingfisher-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-prefix.pch"; sourceTree = ""; }; - 1CCF5E4C8E6D4A66C822174648FFAF64 /* ConstraintMakerPriortizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerPriortizable.swift; path = Source/ConstraintMakerPriortizable.swift; sourceTree = ""; }; - 1CD171275464ABA3806EAD0CF7ABF170 /* PreCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PreCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/PreCompositionLayer.swift"; sourceTree = ""; }; - 1DF4F40C6B389DD995057592E592858E /* Hero-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Hero-Info.plist"; sourceTree = ""; }; - 1ED1F31B1C05169344553F944C9A1FB7 /* Kingfisher.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Kingfisher.release.xcconfig; sourceTree = ""; }; - 1F4CE4F269D3F879476DF7B19317FDBB /* DashPattern.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DashPattern.swift; path = "lottie-swift/src/Private/Model/Objects/DashPattern.swift"; sourceTree = ""; }; - 1FB5C3F6EDF5E85028BCF9AE67A8CB15 /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Sources/Networking/SessionDelegate.swift; sourceTree = ""; }; - 1FE350EAB069180AAC4F59D1875AF757 /* GradientValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift"; sourceTree = ""; }; - 20943A79D1783916DB9375435C808E6B /* AssetLibrary.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssetLibrary.swift; path = "lottie-swift/src/Private/Model/Assets/AssetLibrary.swift"; sourceTree = ""; }; - 20B7DCBE824E7298B12A7030E1951E9D /* AnimatorNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatorNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/AnimatorNode.swift"; sourceTree = ""; }; - 223E1D8F4DCDE93C86FB257200DC3740 /* KingfisherManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherManager.swift; path = Sources/General/KingfisherManager.swift; sourceTree = ""; }; - 2272308A7922A310F7DE8E45D67CEC8E /* UIButton+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Kingfisher.swift"; path = "Sources/Extensions/UIButton+Kingfisher.swift"; sourceTree = ""; }; - 2288607DE1F545DF2F2C2AB919EBC38F /* TextAnimator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextAnimator.swift; path = "lottie-swift/src/Private/Model/Text/TextAnimator.swift"; sourceTree = ""; }; - 24050BC35848ED0F38F90C24E26BAC12 /* HeroDefaultAnimator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroDefaultAnimator.swift; path = Sources/Animator/HeroDefaultAnimator.swift; sourceTree = ""; }; - 245B7C0EEED7E4547C48D4E691F6E3E1 /* LottieView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LottieView.swift; path = "lottie-swift/src/Public/iOS/LottieView.swift"; sourceTree = ""; }; - 246F1D9261D05311F7B471FEA2134421 /* ImageProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageProcessor.swift; path = Sources/Image/ImageProcessor.swift; sourceTree = ""; }; - 24C7DB4DC70C6670B8D7877D1782F7A9 /* ItemsExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemsExtension.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Extensions/ItemsExtension.swift"; sourceTree = ""; }; - 2516528EA09E7CD231C834B39296A773 /* HeroCoreAnimationViewContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroCoreAnimationViewContext.swift; path = Sources/Animator/HeroCoreAnimationViewContext.swift; sourceTree = ""; }; - 257E189F911971D52DBDE48BC1C1E15A /* CG+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CG+Hero.swift"; path = "Sources/Extensions/CG+Hero.swift"; sourceTree = ""; }; - 2590E12388F3382BB244E5FFC78893E6 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; - 26519E36A86A6C8D1F382A04FDDAC9A5 /* ConstraintPriorityTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriorityTarget.swift; path = Source/ConstraintPriorityTarget.swift; sourceTree = ""; }; - 269B7FA630AC311F408FBF77544D9185 /* LayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/LayerModel.swift"; sourceTree = ""; }; - 26AA90934DE680B1EF2D2B7193E4E6F4 /* ImageModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageModifier.swift; path = Sources/Networking/ImageModifier.swift; sourceTree = ""; }; + 14124014A2E7B958DC7567CA3B2451CD /* ImageDownloaderDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDownloaderDelegate.swift; path = Sources/Networking/ImageDownloaderDelegate.swift; sourceTree = ""; }; + 147CEF7BDB85020E7E8BC352815A6D0C /* ShapeTransform.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeTransform.swift; path = "lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift"; sourceTree = ""; }; + 1711A1A47B5D268070A1395B62A91E4A /* HeroDebugView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroDebugView.swift; path = "Sources/Debug Plugin/HeroDebugView.swift"; sourceTree = ""; }; + 17E322C184551275088D6A5B21275B99 /* SwiftyGif.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftyGif.debug.xcconfig; sourceTree = ""; }; + 18F359F863B621EF96E18E249CC751AC /* SingleValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleValueProvider.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift"; sourceTree = ""; }; + 1A3732EB9AE357E8BEA97A81BCCC0F93 /* ConstraintInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsetTarget.swift; path = Source/ConstraintInsetTarget.swift; sourceTree = ""; }; + 1B7115AA511882B18AE2B1C8D570169B /* Alamofire.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.debug.xcconfig; sourceTree = ""; }; + 1C020495FFA42C7CAF43E4F65B2D01F1 /* ConstraintPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriority.swift; path = Source/ConstraintPriority.swift; sourceTree = ""; }; + 1CD7762A6B720DD53BF4427E79DDC096 /* Hero.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Hero.modulemap; sourceTree = ""; }; + 1D57DABA6C1297B77055AEDE37FE2B3C /* SnapKit.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.release.xcconfig; sourceTree = ""; }; + 1D6128EB6D071EAC3412CD04515D7D86 /* Hero-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Hero-Info.plist"; sourceTree = ""; }; + 1DAECA16252350D9555330CFAF43480E /* UIColor+HexString.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIColor+HexString.swift"; path = "Sources/Extensions/UIColor+HexString.swift"; sourceTree = ""; }; + 1DB5650797823808C142040D15B4C740 /* FilepathImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FilepathImageProvider.swift; path = "lottie-swift/src/Public/iOS/FilepathImageProvider.swift"; sourceTree = ""; }; + 1E2F40282D524C44C2052BDC11CE4D77 /* KeypathSearchable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeypathSearchable.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift"; sourceTree = ""; }; + 1E62546DDC19A5383A73D79FBC2AC149 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; + 1E938F1DF2FA738B72D5090A06A68B26 /* Lexer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lexer.swift; path = Sources/Parser/Lexer.swift; sourceTree = ""; }; + 1ECA06CC34CFDA96C8C37110FB694EAB /* Alamofire.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.release.xcconfig; sourceTree = ""; }; + 1F894DAB215B86B8BD59BC4E07A8E0E7 /* GroupOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/GroupOutputNode.swift"; sourceTree = ""; }; + 1FE398514CCA2F524E12903418D783ED /* HeroStringConvertible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroStringConvertible.swift; path = Sources/Parser/HeroStringConvertible.swift; sourceTree = ""; }; + 1FEE8B9B2043AA9CAFF8DAB0DF7EDDB3 /* PathElement.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathElement.swift; path = "lottie-swift/src/Private/Utility/Primitives/PathElement.swift"; sourceTree = ""; }; + 211C3B6A3E0F485D8FCA63C212B47066 /* Font.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Font.swift; path = "lottie-swift/src/Private/Model/Text/Font.swift"; sourceTree = ""; }; + 224FEAE76BB951C9A4A79F923264D087 /* ImageSourceHelpers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageSourceHelpers.swift; path = Source/Helpers/ImageSourceHelpers.swift; sourceTree = ""; }; + 22CCCAEC9CA820151EDA73215AE1BF54 /* HeroTransition+UINavigationControllerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+UINavigationControllerDelegate.swift"; path = "Sources/Transition/HeroTransition+UINavigationControllerDelegate.swift"; sourceTree = ""; }; + 22E0E189BA6B31B07C79D37F6D4A6B64 /* Array+HeroModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Array+HeroModifier.swift"; path = "Sources/Extensions/Array+HeroModifier.swift"; sourceTree = ""; }; + 244321FEACD7232CDCD7732FF12355A7 /* RenderNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RenderNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/RenderNode.swift"; sourceTree = ""; }; + 25D8758AACA04235594FFC84C91E6A10 /* Alamofire-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Alamofire-Info.plist"; sourceTree = ""; }; + 26720609B278654B416391CDFCA6962E /* ShapeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift"; sourceTree = ""; }; 26C79A904CEE4512D48C9D31B5F68FD4 /* Pods-Mongle-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Mongle-frameworks.sh"; sourceTree = ""; }; - 27312639F2D2D0F2704C99B65488243E /* UIView+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Hero.swift"; path = "Sources/Extensions/UIView+Hero.swift"; sourceTree = ""; }; + 26F939B85A5BB48B6351423BBC06510A /* UIKit+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIKit+Hero.swift"; path = "Sources/Extensions/UIKit+Hero.swift"; sourceTree = ""; }; + 2716C58D91449122185EB666E6F4DAA7 /* Gifu-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Gifu-prefix.pch"; sourceTree = ""; }; + 2758B8D197CA911923FE844690CFB6E8 /* UIColorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIColorExtension.swift; path = "lottie-swift/src/Public/iOS/UIColorExtension.swift"; sourceTree = ""; }; 289C15AEF51DC7BF24C12BAA58675782 /* Pods-Mongle.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Mongle.release.xcconfig"; sourceTree = ""; }; - 29D6EFBA83296028F7755E54B0BFC9A5 /* CompoundBezierPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompoundBezierPath.swift; path = "lottie-swift/src/Private/Utility/Primitives/CompoundBezierPath.swift"; sourceTree = ""; }; - 2A18725E8DAC7FCEBBE4BEFD00CB0CA7 /* FrameStore.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FrameStore.swift; path = Source/Classes/FrameStore.swift; sourceTree = ""; }; - 2A8D29B3F3F7331870EE67C4098E0C06 /* EllipseNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EllipseNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift"; sourceTree = ""; }; - 2B4386F35E31ED4BA59BC8DD9DF8FD9A /* MatchPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatchPreprocessor.swift; path = Sources/Preprocessors/MatchPreprocessor.swift; sourceTree = ""; }; + 2A0AB08E9A473D7064967180EAD7C861 /* SwiftyGif-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "SwiftyGif-Info.plist"; sourceTree = ""; }; + 2A37690D65931404751BC41B4F2325A7 /* ShapeCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/ShapeCompositionLayer.swift"; sourceTree = ""; }; 2B519E3B0DC6BC424CADC9BB96C8CA84 /* Pods-Mongle.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Mongle.debug.xcconfig"; sourceTree = ""; }; - 2B5373A5265D783271587C7D5EDBD1D8 /* Hero-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Hero-dummy.m"; sourceTree = ""; }; - 2BFDED3FE51323D1ABB36C6D0B5CFEE9 /* SizeValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SizeValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift"; sourceTree = ""; }; - 2D376F7C69C5C26C3D64F36C66CD1FE2 /* ImageDataProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDataProcessor.swift; path = Sources/Networking/ImageDataProcessor.swift; sourceTree = ""; }; - 2E030D20E30B8258323F65CE4CA00659 /* ShapeItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeItem.swift; path = "lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift"; sourceTree = ""; }; - 2FFEC9B202289154EB69B58BC39315F3 /* Kingfisher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Kingfisher.h; path = Sources/Kingfisher.h; sourceTree = ""; }; - 30A8A89AE886B02331194B6F8CBCC76D /* Marker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Marker.swift; path = "lottie-swift/src/Private/Model/Objects/Marker.swift"; sourceTree = ""; }; + 2BBA8C40D5DC75A5618B4B94527692DA /* MatchPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatchPreprocessor.swift; path = Sources/Preprocessors/MatchPreprocessor.swift; sourceTree = ""; }; + 2C193421FB432FE68D297D2B3F9BFB68 /* SizeValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SizeValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/SizeValueProvider.swift"; sourceTree = ""; }; + 2C37D958EF6DE64619621C1F92318886 /* ConstraintMakerPriortizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerPriortizable.swift; path = Source/ConstraintMakerPriortizable.swift; sourceTree = ""; }; + 2CDAB1A4E04BE63E833CA304DABD1059 /* ImageView+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ImageView+Kingfisher.swift"; path = "Sources/Extensions/ImageView+Kingfisher.swift"; sourceTree = ""; }; + 2D66EE4BF18BA2F6D4B91513D3F1502A /* FillNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift"; sourceTree = ""; }; + 2F0C4D2833FA086D3636A3B5E0C93D9F /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Merge.swift"; sourceTree = ""; }; + 2FA6722CE2435D57C7E8226401CAC58A /* Hero-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Hero-umbrella.h"; sourceTree = ""; }; + 31046C6D83DFDC72B8EF4F2D112379F1 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; 310CB1BA529E3879120964AC44906D90 /* Pods-Mongle.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Mongle.modulemap"; sourceTree = ""; }; - 316F2144A1F30CF1C56EEB08652EC205 /* ImageDrawing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDrawing.swift; path = Sources/Image/ImageDrawing.swift; sourceTree = ""; }; - 31BDA63FC1EC5C645C6CFF101AF04C06 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; - 32C89D66FDB939DBF7832119E4607AED /* AnyValueContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyValueContainer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift"; sourceTree = ""; }; - 3401C421AC29EE4AC4AD32F868FAE34F /* HeroTransition+UIViewControllerTransitioningDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+UIViewControllerTransitioningDelegate.swift"; path = "Sources/Transition/HeroTransition+UIViewControllerTransitioningDelegate.swift"; sourceTree = ""; }; - 35274263BB0557448084C99440A16301 /* FillI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillI.swift; path = "lottie-swift/src/Private/Model/ShapeItems/FillI.swift"; sourceTree = ""; }; - 3604CBFB489DB5C1C97BECA152DA5486 /* ImageAsset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageAsset.swift; path = "lottie-swift/src/Private/Model/Assets/ImageAsset.swift"; sourceTree = ""; }; - 3829CA93B09504CEF70C04108564D614 /* AnimatedSwitch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedSwitch.swift; path = "lottie-swift/src/Public/iOS/AnimatedSwitch.swift"; sourceTree = ""; }; - 3833A2B08E0696D89E25BABEBF02B8C8 /* ImageCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCache.swift; path = Sources/Cache/ImageCache.swift; sourceTree = ""; }; - 39E5F0CADFD84C8ECA6EACB6B3BC0BC2 /* PreCompLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PreCompLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/PreCompLayerModel.swift"; sourceTree = ""; }; - 3A23622B648D125D1E7BF78535BDF41A /* HeroTargetState.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTargetState.swift; path = Sources/HeroTargetState.swift; sourceTree = ""; }; - 3A58DA1374B47A63918C3316704C2D20 /* ImageSourceHelpers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageSourceHelpers.swift; path = Source/Helpers/ImageSourceHelpers.swift; sourceTree = ""; }; + 3126D1AE014DC59826EB8AC48B0DAA8A /* Then-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Then-prefix.pch"; sourceTree = ""; }; + 3263E1E51F9187E0C1D91C2EBAB867A7 /* lottie-ios.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-ios.release.xcconfig"; sourceTree = ""; }; + 33CD97632B04E89F17150D5150F26762 /* Indicator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Indicator.swift; path = Sources/Views/Indicator.swift; sourceTree = ""; }; + 3470AA58A9EF113F22CA718AC356BFD6 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; + 34F302C99BADC67694875C163145F288 /* Constraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constraint.swift; path = Source/Constraint.swift; sourceTree = ""; }; + 360E579DF310BD5FE34FA9F3BC909318 /* HeroTransition+CustomTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+CustomTransition.swift"; path = "Sources/Transition/HeroTransition+CustomTransition.swift"; sourceTree = ""; }; + 366A56AF6D6D94D334873D875738BE59 /* LayerTextProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerTextProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift"; sourceTree = ""; }; + 3723BED1B3CEC03D58E82D7658EFE9E4 /* HeroProgressRunner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroProgressRunner.swift; path = Sources/Transition/HeroProgressRunner.swift; sourceTree = ""; }; + 3792B581AB32CDACC425AB337CF6F81A /* ImageCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/ImageCompositionLayer.swift"; sourceTree = ""; }; + 38018419042564E600D6B256D520BC3B /* StarNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StarNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/StarNode.swift"; sourceTree = ""; }; + 38851A93E8600EA95BCA5B852C280169 /* DispatchQueue+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Hero.swift"; path = "Sources/Extensions/DispatchQueue+Hero.swift"; sourceTree = ""; }; + 3B9215019B3D64439F99DC3BF22189DB /* GradientFillRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFillRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift"; sourceTree = ""; }; 3C24602E6F6B5D3A5A86A838DD5F22B4 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - 3CE1CB03D427EA498C42C90BE1A0DE14 /* ShapeCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/ShapeCompositionLayer.swift"; sourceTree = ""; }; - 3D2CE76EFB6B71CA5A6460A9C7DCA0F5 /* RectNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RectNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/RectNode.swift"; sourceTree = ""; }; - 3D41F821050C1A91400E4F174D11B3BF /* AnimationSubview.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationSubview.swift; path = "lottie-swift/src/Public/iOS/AnimationSubview.swift"; sourceTree = ""; }; - 3E1584422429696FE658EA1753DAF8BC /* lottie-ios.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "lottie-ios.modulemap"; sourceTree = ""; }; - 3E475634FDCAAC8C9FC114DAD976670C /* AnimatedButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedButton.swift; path = "lottie-swift/src/Public/iOS/AnimatedButton.swift"; sourceTree = ""; }; - 3FA6007B2F0A62BD616983FE0D3790AA /* MemoryStorage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MemoryStorage.swift; path = Sources/Cache/MemoryStorage.swift; sourceTree = ""; }; - 40D4BA2C71FF3979BC71A1DF19CF6BE5 /* TextLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/TextLayerModel.swift"; sourceTree = ""; }; + 3C254E817B143B007A2E644AF64CAE7F /* GradientStrokeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStrokeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift"; sourceTree = ""; }; + 3C2852231F51A60C44E4394A18A042F8 /* Animation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Animation.swift; path = "lottie-swift/src/Private/Model/Animation.swift"; sourceTree = ""; }; + 3D2F68FBA4F44562FA5B6A860080B98F /* ConstraintView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintView.swift; path = Source/ConstraintView.swift; sourceTree = ""; }; + 3D8D0D1AED84D866FB73CC42087D454E /* ConstraintDirectionalInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsetTarget.swift; path = Source/ConstraintDirectionalInsetTarget.swift; sourceTree = ""; }; + 3F03DF3FD9395723160BB39EBF8E4D4A /* ShapeLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/ShapeLayerModel.swift"; sourceTree = ""; }; + 3F3988C04A96C2A5D43D1C4824F06988 /* SnapKit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.debug.xcconfig; sourceTree = ""; }; + 401B193551F64F81DE2B5EBC55330CE5 /* HeroTransition+Start.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Start.swift"; path = "Sources/Transition/HeroTransition+Start.swift"; sourceTree = ""; }; + 40ABE3826BE8C9C56726722208694836 /* UIImage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIImage.swift; path = Source/Extensions/UIImage.swift; sourceTree = ""; }; + 40C1D2F592535CE8272703DBA6809881 /* UIImage+SwiftyGif.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImage+SwiftyGif.swift"; path = "SwiftyGif/UIImage+SwiftyGif.swift"; sourceTree = ""; }; 40E5F8D9277E714962AFA02550F15F8A /* Gifu.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Gifu.framework; path = Gifu.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 40FCB761F452D4FE33A1CC94F5DD59C9 /* StarNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StarNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/StarNode.swift"; sourceTree = ""; }; - 41187C836D0D604F434283FA68BCD3AF /* HeroTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTransition.swift; path = Sources/Transition/HeroTransition.swift; sourceTree = ""; }; - 412B71CEDA1576AA62F6E36C4A9107B9 /* KingfisherOptionsInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherOptionsInfo.swift; path = Sources/General/KingfisherOptionsInfo.swift; sourceTree = ""; }; - 4348CC8E17FD4325B66D6E143D6355C7 /* Then.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Then.release.xcconfig; sourceTree = ""; }; - 446780B04D608B09D47E24281E6A213C /* HeroCompatible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroCompatible.swift; path = Sources/HeroCompatible.swift; sourceTree = ""; }; - 4475A8D47DF16469681AC06F27D9102E /* ColorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ColorExtension.swift; path = "lottie-swift/src/Private/Utility/Primitives/ColorExtension.swift"; sourceTree = ""; }; - 447AD4EC0FF95C0EAD6A8AA49BDE6D20 /* HeroDebugPlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroDebugPlugin.swift; path = "Sources/Debug Plugin/HeroDebugPlugin.swift"; sourceTree = ""; }; - 453926FDE2A14E9331703DDBDC616818 /* ConditionalPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConditionalPreprocessor.swift; path = Sources/Preprocessors/ConditionalPreprocessor.swift; sourceTree = ""; }; - 4563D3F90CB9D33C7D33C1FD4B9F9D41 /* Box.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Box.swift; path = Sources/Utility/Box.swift; sourceTree = ""; }; - 46E824EC12CB5F5BD0A49260F95EE42C /* Asset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Asset.swift; path = "lottie-swift/src/Private/Model/Assets/Asset.swift"; sourceTree = ""; }; - 473B153076F6129FEDCC8AF916DBC489 /* HeroModifier+Advanced.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroModifier+Advanced.swift"; path = "Sources/HeroModifier+Advanced.swift"; sourceTree = ""; }; - 48FFCA2B8AE0FB6FE918FE14B7AFEBC6 /* DiskStorage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DiskStorage.swift; path = Sources/Cache/DiskStorage.swift; sourceTree = ""; }; - 492667D9C8A9D578BC4749000DE9A477 /* CGSize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CGSize.swift; path = Source/Extensions/CGSize.swift; sourceTree = ""; }; - 49A0ED460A7DDC78F99A35926AB8574B /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; - 49AD9EDB1B8B115CE638A6F0B6EB0EFE /* HeroStringConvertible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroStringConvertible.swift; path = Sources/Parser/HeroStringConvertible.swift; sourceTree = ""; }; - 4A1944D607C7CBB163BD0D04C204F956 /* SingleValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleValueProvider.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/SingleValueProvider.swift"; sourceTree = ""; }; - 4A4E3C79ACAB61629F179C9BA61AC923 /* TextDocument.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextDocument.swift; path = "lottie-swift/src/Private/Model/Text/TextDocument.swift"; sourceTree = ""; }; - 4AD097E821679606048EEB2B065BD050 /* InvertedMatteLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvertedMatteLayer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/InvertedMatteLayer.swift"; sourceTree = ""; }; - 4B037156130FF5C44154D6EB75D7B8AF /* AnimationKeypath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationKeypath.swift; path = "lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift"; sourceTree = ""; }; - 4B2B168A3FD9EE3554B40BCDC77251A8 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; - 4B48D9EBA83CCFC5C7FA79F2E11ABDB1 /* Regex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Regex.swift; path = Sources/Parser/Regex.swift; sourceTree = ""; }; - 4C1C9CA1E07FAEF750ADE09077350B96 /* FormatIndicatedCacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FormatIndicatedCacheSerializer.swift; path = Sources/Cache/FormatIndicatedCacheSerializer.swift; sourceTree = ""; }; - 4C37B1B150715BEBFC75DF955658D601 /* SnapKit.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.debug.xcconfig; sourceTree = ""; }; - 4CD21F7383304A32194C44FFDE666B47 /* ConstraintDescription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDescription.swift; path = Source/ConstraintDescription.swift; sourceTree = ""; }; - 4DE6CB2968096E09D5FD742BECDB7ACC /* ConstraintMakerFinalizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerFinalizable.swift; path = Source/ConstraintMakerFinalizable.swift; sourceTree = ""; }; - 4E3A7AAEE36CBDECF1055C443A0575D5 /* HeroTransition+Interactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Interactive.swift"; path = "Sources/Transition/HeroTransition+Interactive.swift"; sourceTree = ""; }; - 4E73D39231D8E268CE87489C20F6210F /* Alamofire.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.debug.xcconfig; sourceTree = ""; }; - 4F12353204D667A61E061E8334C9D478 /* GradientFill.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFill.swift; path = "lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift"; sourceTree = ""; }; - 4FB41D16903B528D9D1BC3FC08A18CD4 /* ConstraintLayoutGuideDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuideDSL.swift; path = Source/ConstraintLayoutGuideDSL.swift; sourceTree = ""; }; - 4FC2C807E4A8EDFDC6BB6762EBCF844F /* HeroTransition+Complete.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Complete.swift"; path = "Sources/Transition/HeroTransition+Complete.swift"; sourceTree = ""; }; - 505C6F309445664C3B2F7FA60C42CB06 /* GradientStrokeRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStrokeRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift"; sourceTree = ""; }; + 42CFCC032D2E25C0D5E94B823536141A /* ConstraintDescription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDescription.swift; path = Source/ConstraintDescription.swift; sourceTree = ""; }; + 435D114521A8366B4235472FE9A75F3A /* HeroTransition+Animate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Animate.swift"; path = "Sources/Transition/HeroTransition+Animate.swift"; sourceTree = ""; }; + 43E9EE32D993A1DB758185F795780BDB /* Delegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delegate.swift; path = Sources/Utility/Delegate.swift; sourceTree = ""; }; + 44074700DBEC9F0B36B74D3A5A5BD018 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; + 45045354554E7BF8CD6184BDA0483400 /* Trim.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Trim.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Trim.swift"; sourceTree = ""; }; + 458E286D92537BF234DEB097D5939BE1 /* SizeExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SizeExtensions.swift; path = Sources/Utility/SizeExtensions.swift; sourceTree = ""; }; + 48BA3ECBE79D5E0F41DD627AA0E97FE1 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; + 48E9BBE9BA77026E72CFC3788223078B /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = Sources/SwiftSupport.swift; sourceTree = ""; }; + 497EA8811C5DFAFD54E302F998FEE957 /* Hero-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Hero-prefix.pch"; sourceTree = ""; }; + 4A908CA40BDEB680E7992F4EE6FD27CF /* SwiftyGif.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SwiftyGif.h; path = SwiftyGif/SwiftyGif.h; sourceTree = ""; }; + 4B0E0E5A8E3B44F11E9C8B64DFBCD947 /* HeroTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTransition.swift; path = Sources/Transition/HeroTransition.swift; sourceTree = ""; }; + 4DA3BEF5B63E6B34527E5D9359AB1D5D /* CacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CacheSerializer.swift; path = Sources/Cache/CacheSerializer.swift; sourceTree = ""; }; 51BA97E8B5085EFFB47BC9C0B785CEA7 /* Lottie.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Lottie.framework; path = "lottie-ios.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 52A60C90A7A35CBD76176ABC74CC30E2 /* Delegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delegate.swift; path = Sources/Utility/Delegate.swift; sourceTree = ""; }; - 52ED56F00AAC9DD52E24BBB9E6B52C37 /* LayerDebugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerDebugging.swift; path = "lottie-swift/src/Private/Utility/Debugging/LayerDebugging.swift"; sourceTree = ""; }; - 52F52320CC5AEF2A1B4EB276E0224CEF /* ConstraintInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsets.swift; path = Source/ConstraintInsets.swift; sourceTree = ""; }; - 5300F42D5BB3101E2BEC8F0A9B4A276A /* GroupNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderContainers/GroupNode.swift"; sourceTree = ""; }; + 52A762AA873FBE4F5C1995A0C3AAB1C6 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 5520D4C62CABCBE78FAA5F72DF9E7066 /* LottieView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LottieView.swift; path = "lottie-swift/src/Public/iOS/LottieView.swift"; sourceTree = ""; }; 55F13D2E7593C88E54A69F5931B4BB74 /* Pods-Mongle-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Mongle-Info.plist"; sourceTree = ""; }; - 5637CABA3EFF3121624AD997FDA78CC3 /* CascadePreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CascadePreprocessor.swift; path = Sources/Preprocessors/CascadePreprocessor.swift; sourceTree = ""; }; - 56BEC2BC039B8454CD697F8B234A1E0D /* Hero.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Hero.release.xcconfig; sourceTree = ""; }; - 57A6CDC7BAACD3CEA85284441314494B /* Color.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Color.swift; path = "lottie-swift/src/Public/Primitives/Color.swift"; sourceTree = ""; }; - 58CA9DD7C500662C8590908EAF4A2814 /* CALayer+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CALayer+Hero.swift"; path = "Sources/Extensions/CALayer+Hero.swift"; sourceTree = ""; }; - 5995BBE9B09101BF1BA540DA1F7582D8 /* Hero-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Hero-umbrella.h"; sourceTree = ""; }; - 5AFA5E4BC0B21526FD846B16E63D0C66 /* Font.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Font.swift; path = "lottie-swift/src/Private/Model/Text/Font.swift"; sourceTree = ""; }; - 5B0DC89C26D01DAA6990D9F62EC59B7F /* RenderNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RenderNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/RenderNode.swift"; sourceTree = ""; }; - 5D2756087877B89EF0461EBDF8CC4D44 /* AnimatorNodeDebugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatorNodeDebugging.swift; path = "lottie-swift/src/Private/Utility/Debugging/AnimatorNodeDebugging.swift"; sourceTree = ""; }; + 5600351AE700517408117CC1357184CB /* Interpolatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Interpolatable.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift"; sourceTree = ""; }; + 5617EEB351FE7046C0BAB355672A8098 /* StrokeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StrokeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift"; sourceTree = ""; }; + 561C67157D92AD9611612488E316B1F6 /* Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Kingfisher.swift; path = Sources/General/Kingfisher.swift; sourceTree = ""; }; + 56447E3C8600508D530A72CB0395D3D5 /* Keyframe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Keyframe.swift; path = "lottie-swift/src/Private/Model/Keyframes/Keyframe.swift"; sourceTree = ""; }; + 56E28179B3C9B6DC8C930EEE56A5FF4F /* Star.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Star.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Star.swift"; sourceTree = ""; }; + 5723F716939B7B72B670BB3289DC108C /* ConstraintMakerFinalizable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerFinalizable.swift; path = Source/ConstraintMakerFinalizable.swift; sourceTree = ""; }; + 57F7EF41D09898B7B1A6A9F7E3FFB5CA /* HeroTransition+UITabBarControllerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+UITabBarControllerDelegate.swift"; path = "Sources/Transition/HeroTransition+UITabBarControllerDelegate.swift"; sourceTree = ""; }; + 58682907823CF6D6C4370A459E1CBE4F /* SolidLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SolidLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/SolidLayerModel.swift"; sourceTree = ""; }; + 58D9F1FD9647422D154FE9D303C19830 /* Source.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Source.swift; path = Sources/General/ImageSource/Source.swift; sourceTree = ""; }; + 59F1895918538192A74EE5EAFA365AEA /* Shape.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Shape.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Shape.swift"; sourceTree = ""; }; + 5B5151528F1FAE0CCAA0DC54ACD89DE6 /* SwiftyGifManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftyGifManager.swift; path = SwiftyGif/SwiftyGifManager.swift; sourceTree = ""; }; 5D797E9A5C5782CE845840781FA1CC81 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 5DA077FFDC2B3A5B5720EC5324DF9F28 /* ConstraintView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintView.swift; path = Source/ConstraintView.swift; sourceTree = ""; }; - 5E2890B626AE2CB46B1F06C4B348D54D /* Indicator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Indicator.swift; path = Sources/Views/Indicator.swift; sourceTree = ""; }; - 5ED820EDDC07C4D8C2C403CC55FCDF13 /* AnyNodeProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyNodeProperty.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift"; sourceTree = ""; }; - 5F3B768E60092801AC1E6310089DD403 /* ImageFormat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageFormat.swift; path = Sources/Image/ImageFormat.swift; sourceTree = ""; }; - 60B1146E05DFCE81391E6899651366F6 /* HeroModifier+HeroStringConvertible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroModifier+HeroStringConvertible.swift"; path = "Sources/HeroModifier+HeroStringConvertible.swift"; sourceTree = ""; }; - 60DC844F46DB0040682EEFE9DCFEFD91 /* FloatValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FloatValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift"; sourceTree = ""; }; - 6357018B437DFB007BA6EB76CBD1B42F /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; - 6426F4C99B2D6D1D839F901E3FB1EBB6 /* BundleImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BundleImageProvider.swift; path = "lottie-swift/src/Public/iOS/BundleImageProvider.swift"; sourceTree = ""; }; - 650CA88FCD3C5A49AE9AA7833311FF79 /* KeyframeGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeGroup.swift; path = "lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift"; sourceTree = ""; }; - 655C64E7D4D0311056514AD3AE91ED75 /* AnimationKeypathExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationKeypathExtension.swift; path = "lottie-swift/src/Private/Utility/Extensions/AnimationKeypathExtension.swift"; sourceTree = ""; }; - 6624D9D73DFBE8C3D06F6C9D1C66B628 /* CompatibleAnimationView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompatibleAnimationView.swift; path = "lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationView.swift"; sourceTree = ""; }; - 673781A66E657DB9CA3FF3B6125E25D7 /* LayoutConstraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraint.swift; path = Source/LayoutConstraint.swift; sourceTree = ""; }; - 677CB5190A4F82BCC5855687DEF55923 /* HeroAnimatorViewContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroAnimatorViewContext.swift; path = Sources/Animator/HeroAnimatorViewContext.swift; sourceTree = ""; }; - 67DF84AE4E94DCCD3E295F1E65C00BCC /* GradientStrokeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStrokeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientStrokeNode.swift"; sourceTree = ""; }; - 67FC12F181934B0294DE81FE69611264 /* ConstraintRelatableTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelatableTarget.swift; path = Source/ConstraintRelatableTarget.swift; sourceTree = ""; }; - 6849CDCB176560C2EE73F0037E25A1D2 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; - 684A362C2ED39405E4AE9977DF65C87C /* ConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintItem.swift; path = Source/ConstraintItem.swift; sourceTree = ""; }; - 68CEEF8A88D00701D13E2560EBEE0DE6 /* ConstraintLayoutGuide.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuide.swift; path = Source/ConstraintLayoutGuide.swift; sourceTree = ""; }; - 6A14148E0EF778A4200A9E085383F347 /* Animation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Animation.swift; path = "lottie-swift/src/Private/Model/Animation.swift"; sourceTree = ""; }; - 6C2AD71AB99A562FA53C334E55B6CAFB /* ShapeRenderLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeRenderLayer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift"; sourceTree = ""; }; - 6C77432DC37C9C30296A71F74D11939A /* GroupInterpolator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupInterpolator.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift"; sourceTree = ""; }; - 6D40040B3B1C72707F85BAA01D20EEA4 /* HeroTransitionState.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTransitionState.swift; path = Sources/Transition/HeroTransitionState.swift; sourceTree = ""; }; + 5DFA9824CFC5EC265CC3E2AFE06107C1 /* MaskContainerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaskContainerLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/MaskContainerLayer.swift"; sourceTree = ""; }; + 5E28C75D166F373C07A0BBC678C1F471 /* InterpolatableExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InterpolatableExtensions.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift"; sourceTree = ""; }; + 5EBA725FFC9B95363E1B2EDB1FE71934 /* PointValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PointValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/PointValueProvider.swift"; sourceTree = ""; }; + 5F2DA33500417AA67A8E9C8526CFD930 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; + 60687571C6D67DDCCF1BA25E47655E72 /* PathNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/PathNode.swift"; sourceTree = ""; }; + 62004702A152E4FFFB8786BCFAD9BC5D /* PolygonNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PolygonNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift"; sourceTree = ""; }; + 62615FC9E74B13920A5FD452F3831387 /* Typealiases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Typealiases.swift; path = Source/Typealiases.swift; sourceTree = ""; }; + 6341B2CADFB50E53B6F3089748BB42A3 /* Mask.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Mask.swift; path = "lottie-swift/src/Private/Model/Objects/Mask.swift"; sourceTree = ""; }; + 653E6DAA02A9822A65A4985354FC82E9 /* Glyph.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Glyph.swift; path = "lottie-swift/src/Private/Model/Text/Glyph.swift"; sourceTree = ""; }; + 65407D4DF5AAE0ACA9BCC628A3B72674 /* KeyedDecodingContainerExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyedDecodingContainerExtensions.swift; path = "lottie-swift/src/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift"; sourceTree = ""; }; + 659B36EE505C05358C6398BF616360B9 /* FrameStore.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FrameStore.swift; path = Source/Classes/FrameStore.swift; sourceTree = ""; }; + 66306012030817A4C465BA79C3E85911 /* Kingfisher.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Kingfisher.debug.xcconfig; sourceTree = ""; }; + 663CCC735D6F362B207E9F9C36CF367D /* FillI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillI.swift; path = "lottie-swift/src/Private/Model/ShapeItems/FillI.swift"; sourceTree = ""; }; + 665742FE35FFB4F5DE953C515AF459E9 /* DefaultAnimationPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultAnimationPreprocessor.swift; path = Sources/Preprocessors/DefaultAnimationPreprocessor.swift; sourceTree = ""; }; + 66728D34F24F0A5467EDDED1497D1511 /* ShapeContainerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeContainerLayer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift"; sourceTree = ""; }; + 6844797DABCB3DCC060F9327AC7B3CB5 /* TextAnimatorNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextAnimatorNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift"; sourceTree = ""; }; + 684B7E992BD8B23A89EE0921AE3AABC1 /* Asset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Asset.swift; path = "lottie-swift/src/Private/Model/Assets/Asset.swift"; sourceTree = ""; }; + 68AB181DD00FE469BE9C35E037C6349E /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + 692497AB9F51FA3E512605A5C7ADCC15 /* PreCompLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PreCompLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/PreCompLayerModel.swift"; sourceTree = ""; }; + 6A7D1E3F70CD72E004BE7ADE4D0319F0 /* SwiftyGif-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftyGif-prefix.pch"; sourceTree = ""; }; + 6AA9D5D4B48ECB72193BA19202FAD624 /* PassThroughOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PassThroughOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift"; sourceTree = ""; }; + 6B75E04EFAC58E3BE13D333CF5D2010C /* UIImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIImageView.swift; path = Source/Extensions/UIImageView.swift; sourceTree = ""; }; + 6BF97BFCCAB38162A54C376DB104797F /* ConstraintMakerRelatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerRelatable.swift; path = Source/ConstraintMakerRelatable.swift; sourceTree = ""; }; + 6CBDE3E78429A3C59D41DC9B42B2EEDA /* Gifu.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Gifu.modulemap; sourceTree = ""; }; + 6CFBA636E9A565A3A1DA731D78879C11 /* ConstraintAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintAttributes.swift; path = Source/ConstraintAttributes.swift; sourceTree = ""; }; 6DC3941416EFBB206127B6B76EC80BEF /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; - 6E2693DE697BE8291EF2455D0EF1425E /* AuthenticationChallengeResponsable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AuthenticationChallengeResponsable.swift; path = Sources/Networking/AuthenticationChallengeResponsable.swift; sourceTree = ""; }; - 6E8D307F0EE10AA4B48A8B77B741CB79 /* Vectors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Vectors.swift; path = "lottie-swift/src/Public/Primitives/Vectors.swift"; sourceTree = ""; }; - 6F994D55A20731E1F674A2077B1547EA /* LayerImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerImageProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerImageProvider.swift"; sourceTree = ""; }; - 6FF66BC5918DB6E242EF5C903F935346 /* ShapeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/ShapeNode.swift"; sourceTree = ""; }; - 7035B9BD72BCE17B4B22F241EE357D06 /* MaskContainerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaskContainerLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/MaskContainerLayer.swift"; sourceTree = ""; }; - 71122F41F5A756AE246A28AFE4A4CB1F /* SnapKit.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SnapKit.release.xcconfig; sourceTree = ""; }; - 71997FB94C15A062768AB1996B30DA70 /* ConstraintOffsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintOffsetTarget.swift; path = Source/ConstraintOffsetTarget.swift; sourceTree = ""; }; - 71A8823BD6868203145884BF25600778 /* GIFImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GIFImageView.swift; path = Source/Classes/GIFImageView.swift; sourceTree = ""; }; - 71FF99816844AF967A15BB1A60C90687 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; - 735D949A43BF84B076D8B654E533CEB2 /* lottie-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-ios.debug.xcconfig"; sourceTree = ""; }; - 74D3DA2AFE6E79A53A4F6426B1504E68 /* Parser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Parser.swift; path = Sources/Parser/Parser.swift; sourceTree = ""; }; - 7618E8995BFE52B1460B291B234C31D2 /* ConstraintMaker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMaker.swift; path = Source/ConstraintMaker.swift; sourceTree = ""; }; - 766EDB5BAB4C2C3EA185006A7C01EC4D /* ConstraintMakerExtendable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerExtendable.swift; path = Source/ConstraintMakerExtendable.swift; sourceTree = ""; }; - 77796B2696542BB2B8DCEAF680570BD8 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; - 77A5665B766192EF12C623A1DF1AAC1B /* LayerTransformNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerTransformNode.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerTransformNode.swift"; sourceTree = ""; }; - 78F802224D3AD7BC332090469AB6528A /* Transform.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Transform.swift; path = "lottie-swift/src/Private/Model/Objects/Transform.swift"; sourceTree = ""; }; - 797BCF4BAC1AD2E9950A021FB88A1740 /* ImageTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageTransition.swift; path = Sources/Image/ImageTransition.swift; sourceTree = ""; }; - 7C8C70F375F98A5F529BD51CF839B5B0 /* Then.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Then.debug.xcconfig; sourceTree = ""; }; - 7CB0EF8676117EB7FB3ADFEF4E60EDE7 /* InterpolatableExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InterpolatableExtensions.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/InterpolatableExtensions.swift"; sourceTree = ""; }; + 6FC9184F9DC31DE1DD70BBDCA52FB71C /* Color.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Color.swift; path = "lottie-swift/src/Public/Primitives/Color.swift"; sourceTree = ""; }; + 7027340383853BC35EC4BC80CAB5838F /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; + 712906F3B7A734869E9909C96534F21A /* AnimatedSwitch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedSwitch.swift; path = "lottie-swift/src/Public/iOS/AnimatedSwitch.swift"; sourceTree = ""; }; + 72E31793804713978D3D4EEA476FC3FC /* UIImageView+SwiftyGif.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+SwiftyGif.swift"; path = "SwiftyGif/UIImageView+SwiftyGif.swift"; sourceTree = ""; }; + 73705B07DA88A8128D75E5E778CE56E5 /* Gifu.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Gifu.release.xcconfig; sourceTree = ""; }; + 73C3AAE2D2A8173D6C624A5799E0204D /* Then-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Then-dummy.m"; sourceTree = ""; }; + 742128E7BBCFBBA84B9D0E8FC025033E /* HeroTransition+Interactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Interactive.swift"; path = "Sources/Transition/HeroTransition+Interactive.swift"; sourceTree = ""; }; + 7581F2FD59BF553350971F897FBB5660 /* ConstraintView+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintView+Extensions.swift"; path = "Source/ConstraintView+Extensions.swift"; sourceTree = ""; }; + 758F48808C762F9A82447FA5077C9CE0 /* GIFAnimatedImage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GIFAnimatedImage.swift; path = Sources/Image/GIFAnimatedImage.swift; sourceTree = ""; }; + 75D41B8987BC1633DE0E6B6E0A86A883 /* Kingfisher-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Kingfisher-dummy.m"; sourceTree = ""; }; + 769A03B298F21F7E959334296BA4E287 /* HeroAnimatorViewContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroAnimatorViewContext.swift; path = Sources/Animator/HeroAnimatorViewContext.swift; sourceTree = ""; }; + 76A0400C5CDBA8AB1311EB93724ADF2F /* Storage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Storage.swift; path = Sources/Cache/Storage.swift; sourceTree = ""; }; + 7824CEED901DBC041F50F41067960178 /* AnimatedFrame.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedFrame.swift; path = Source/Classes/AnimatedFrame.swift; sourceTree = ""; }; + 795FEB87FAD012EFAB8200461C298413 /* KeyframeGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeGroup.swift; path = "lottie-swift/src/Private/Model/Keyframes/KeyframeGroup.swift"; sourceTree = ""; }; + 7973220E631A8E23930F3AA6E3719F4B /* lottie-ios.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "lottie-ios.modulemap"; sourceTree = ""; }; + 7A8DA915234FA8B60124A780F243A4D3 /* EllipseNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EllipseNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/EllipseNode.swift"; sourceTree = ""; }; + 7AB3FDC547309A9DE9306BD8E5E14C97 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Sources/Image/Filter.swift; sourceTree = ""; }; + 7AD67EFB9A7864151301DC2890207AA2 /* SwiftyGif.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SwiftyGif.framework; path = SwiftyGif.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7CB93DB765A69E592B11B11F1B390363 /* Pods-Mongle-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Mongle-umbrella.h"; sourceTree = ""; }; - 7E96389B58DD12F7C74239518DB52B01 /* HeroProgressRunner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroProgressRunner.swift; path = Sources/Transition/HeroProgressRunner.swift; sourceTree = ""; }; - 7FDA0E8E7FB0C5D2989A9441C7D54A7B /* Then-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Then-Info.plist"; sourceTree = ""; }; - 80805638C41E81420E0A8A7A09111221 /* GIFAnimatedImage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GIFAnimatedImage.swift; path = Sources/Image/GIFAnimatedImage.swift; sourceTree = ""; }; - 80FE64CB6C2C4892EFD74855DD14407A /* lottie-ios.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-ios.release.xcconfig"; sourceTree = ""; }; - 818412D46A6D89BC69D5AEC2D5B5A6D3 /* CAMediaTimingFunction+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CAMediaTimingFunction+Hero.swift"; path = "Sources/Extensions/CAMediaTimingFunction+Hero.swift"; sourceTree = ""; }; + 7F230E030E3EBA7B9A4C90F57B66521D /* ShapeRenderLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeRenderLayer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeRenderLayer.swift"; sourceTree = ""; }; + 825E3E236BBB436E8E68B5692C8AC023 /* KeyframeExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeExtensions.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/KeyframeExtensions.swift"; sourceTree = ""; }; 826C244908FAC4170C2386DBA4E3B85B /* Pods-Mongle-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Mongle-dummy.m"; sourceTree = ""; }; - 83AF6641123EC3D8EB312142B1FDDBFF /* Rectangle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rectangle.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift"; sourceTree = ""; }; - 844FE93D70A8C7C1F2F4A3B9B3A18C3F /* SizeExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SizeExtensions.swift; path = Sources/Utility/SizeExtensions.swift; sourceTree = ""; }; - 84ABDD537DFBD57D37DBCAEAF9A161DC /* ConstraintMultiplierTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMultiplierTarget.swift; path = Source/ConstraintMultiplierTarget.swift; sourceTree = ""; }; - 84D4F21C6F85E4A8A60778E030EB7927 /* HeroViewPropertyViewContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroViewPropertyViewContext.swift; path = Sources/Animator/HeroViewPropertyViewContext.swift; sourceTree = ""; }; - 85BD19AF391B2457CF126FF1AABAE396 /* UIColor+HexString.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIColor+HexString.swift"; path = "Sources/Extensions/UIColor+HexString.swift"; sourceTree = ""; }; - 85EEDA65FBD8AF4308F17EBC7813CA9E /* Then.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Then.modulemap; sourceTree = ""; }; - 875EFA6AA14D883603DCD95D97937311 /* Resource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Resource.swift; path = Sources/General/ImageSource/Resource.swift; sourceTree = ""; }; - 894627DE9DBE0A822872BF635723EFB5 /* Gifu-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Gifu-Info.plist"; sourceTree = ""; }; - 899A2A241A114B15B66BB0C2000B5142 /* Kingfisher-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Kingfisher-dummy.m"; sourceTree = ""; }; - 899EFBBF41E7BE7BE52AE6F9F755BF70 /* ConstraintConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConfig.swift; path = Source/ConstraintConfig.swift; sourceTree = ""; }; - 8A05BC00BE0BABAA3EE43D465CC597D2 /* HeroTypes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTypes.swift; path = Sources/HeroTypes.swift; sourceTree = ""; }; - 8A342D56848714B710A25DED88F72138 /* Interpolatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Interpolatable.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/Interpolatable.swift"; sourceTree = ""; }; - 8AA6CBEB371E9DBF7628C3D92C056416 /* Kingfisher.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Kingfisher.modulemap; sourceTree = ""; }; - 8C49B2499D5467BCE522AD24A437643C /* Alamofire.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.release.xcconfig; sourceTree = ""; }; - 8E757E481718F15EC10DC45E9D96E437 /* AnimationView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationView.swift; path = "lottie-swift/src/Public/Animation/AnimationView.swift"; sourceTree = ""; }; - 8F859905097E59EE091787A09B77E683 /* ConstraintAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintAttributes.swift; path = Source/ConstraintAttributes.swift; sourceTree = ""; }; - 929E49C60D1DC75879C49663C30EAB17 /* ImageProgressive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageProgressive.swift; path = Sources/Image/ImageProgressive.swift; sourceTree = ""; }; + 83B12DEF62413484AF8A5EE11A24A441 /* GradientStrokeRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStrokeRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientStrokeRenderer.swift"; sourceTree = ""; }; + 84813600FF8789CFB87D55127D54AF41 /* Repeater.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeater.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Repeater.swift"; sourceTree = ""; }; + 84CBFEC499263EF9194C83BA3B8AE3E0 /* Regex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Regex.swift; path = Sources/Parser/Regex.swift; sourceTree = ""; }; + 85BF504BF7FE1E4F6748E10C2B2E6D68 /* SolidCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SolidCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/SolidCompositionLayer.swift"; sourceTree = ""; }; + 85C5D0A7845198D7FA7C79041337D208 /* MathKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MathKit.swift; path = "lottie-swift/src/Private/Utility/Extensions/MathKit.swift"; sourceTree = ""; }; + 866570C81AF40757B2EF9FD651B4A9E1 /* ConstraintInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsets.swift; path = Source/ConstraintInsets.swift; sourceTree = ""; }; + 872E0B6781EA4242C78B11DE3D168327 /* AnyValueContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyValueContainer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyValueContainer.swift"; sourceTree = ""; }; + 8742DE63245D8B0B0D477C39FD2A6056 /* KingfisherManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherManager.swift; path = Sources/General/KingfisherManager.swift; sourceTree = ""; }; + 8966B7A3AE0765907EE7E3AF51CD234F /* ItemsExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ItemsExtension.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Extensions/ItemsExtension.swift"; sourceTree = ""; }; + 8AB17BE4D1C0BFC51BAE3E682CFAC0A5 /* ConstraintMultiplierTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMultiplierTarget.swift; path = Source/ConstraintMultiplierTarget.swift; sourceTree = ""; }; + 8F06B97081FC9C2BF0CADB8E9E200958 /* AnyValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift"; sourceTree = ""; }; + 8F2AE8D6F3983AD7A19FE36AA695BD8E /* UIViewController+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+Hero.swift"; path = "Sources/Extensions/UIViewController+Hero.swift"; sourceTree = ""; }; + 8FC0A93553F657711789A1FE28633A37 /* HeroModifier+HeroStringConvertible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroModifier+HeroStringConvertible.swift"; path = "Sources/HeroModifier+HeroStringConvertible.swift"; sourceTree = ""; }; + 922C32375A2EF66F3FAF884740561CBA /* TextAnimator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextAnimator.swift; path = "lottie-swift/src/Private/Model/Text/TextAnimator.swift"; sourceTree = ""; }; + 92AD229F5E70B700BD2ECE82E9F4A010 /* PreCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PreCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/PreCompositionLayer.swift"; sourceTree = ""; }; + 92B80B98731140BDD6643E1287988359 /* AnimationSubview.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationSubview.swift; path = "lottie-swift/src/Public/iOS/AnimationSubview.swift"; sourceTree = ""; }; + 92CE64AA37A41530E11D9547D710D7A8 /* AnimatorNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatorNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/AnimatorNode.swift"; sourceTree = ""; }; 9317E4947CA2FE1B5D5999034C09CCA7 /* Then.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Then.framework; path = Then.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 9355CFF52DDD9FA1263500B04FBDC4FC /* CacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CacheSerializer.swift; path = Sources/Cache/CacheSerializer.swift; sourceTree = ""; }; - 93ABCC62A8097AE6C568CB5B6E3C16D4 /* NodeProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NodeProperty.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/NodeProperty.swift"; sourceTree = ""; }; - 94744623F8D133953E8FEA26B7178D02 /* lottie-ios-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-ios-umbrella.h"; sourceTree = ""; }; - 95CC2942D89DF86219D64AA9677A7B9B /* BezierPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BezierPath.swift; path = "lottie-swift/src/Private/Utility/Primitives/BezierPath.swift"; sourceTree = ""; }; - 96F4338C29EEFC70BAEF9FC901634D59 /* Gifu.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Gifu.modulemap; sourceTree = ""; }; - 973C568B5DF6AF385F3EF8AC449E72BA /* PointValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PointValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/PointValueProvider.swift"; sourceTree = ""; }; + 932E367981E78AF508CB37787406E2DE /* ImageCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCache.swift; path = Sources/Cache/ImageCache.swift; sourceTree = ""; }; + 93D85053749107EA1ABB305C0F198EBA /* RedirectHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RedirectHandler.swift; path = Sources/Networking/RedirectHandler.swift; sourceTree = ""; }; + 94B524AE311D3F143AB6F3B127710843 /* Array.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Array.swift; path = Source/Extensions/Array.swift; sourceTree = ""; }; + 952DBC082BDAE504381DFADB78A3D87F /* CG+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CG+Hero.swift"; path = "Sources/Extensions/CG+Hero.swift"; sourceTree = ""; }; + 955CFD43DC00688DEA877F3CBBC714CB /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; + 9649FDBC7D9BB62B46F600CCF653F706 /* ValueContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ValueContainer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueContainer.swift"; sourceTree = ""; }; + 96B4B39A8DAF1865E48942137EBCFE74 /* RectNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RectNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/RectNode.swift"; sourceTree = ""; }; + 9778B944CB05DB31F694F8CEA5CEA972 /* GroupInterpolator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupInterpolator.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/GroupInterpolator.swift"; sourceTree = ""; }; 979486118B3E90C08386079D57962701 /* SnapKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SnapKit.framework; path = SnapKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 986A4391C8E9CEB79F694890E6FB459C /* ConstraintConstantTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConstantTarget.swift; path = Source/ConstraintConstantTarget.swift; sourceTree = ""; }; - 98C6C28A0BAFFA0B2B605258AB1C7FB0 /* LayoutConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraintItem.swift; path = Source/LayoutConstraintItem.swift; sourceTree = ""; }; - 99C282E206A09D2C14638A919A1BDF11 /* Gifu-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Gifu-dummy.m"; sourceTree = ""; }; - 9A18F7BBEF220A7D535EE0DE2191CCF5 /* IgnoreSubviewModifiersPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IgnoreSubviewModifiersPreprocessor.swift; path = Sources/Preprocessors/IgnoreSubviewModifiersPreprocessor.swift; sourceTree = ""; }; - 9A982AD019A67120ECE19BF7B33BB149 /* ColorValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ColorValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/ColorValueProvider.swift"; sourceTree = ""; }; - 9AF4FF0F45A1CEF90CFFA80C58786CA1 /* WKInterfaceImage+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "WKInterfaceImage+Kingfisher.swift"; path = "Sources/Extensions/WKInterfaceImage+Kingfisher.swift"; sourceTree = ""; }; - 9C0D43993F823C5AEBF1399A678302C9 /* Typealiases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Typealiases.swift; path = Source/Typealiases.swift; sourceTree = ""; }; - 9C36A9793EE005393658DA65C96F0C61 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 98123CB420636D951F9DE8058269721D /* KeyframeInterpolator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeInterpolator.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/KeyframeInterpolator.swift"; sourceTree = ""; }; + 981AF4716C9F1F8B20B6E3B7FF5FA8AD /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; + 989291BC8B2EF034C9E820197A8F988C /* Debugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debugging.swift; path = Source/Debugging.swift; sourceTree = ""; }; + 98D79AB1DA4F6689A51A3461685EACC6 /* ImageFormat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageFormat.swift; path = Sources/Image/ImageFormat.swift; sourceTree = ""; }; + 9A2665D86FFB43808967D97BF9A0B357 /* AuthenticationChallengeResponsable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AuthenticationChallengeResponsable.swift; path = Sources/Networking/AuthenticationChallengeResponsable.swift; sourceTree = ""; }; + 9B80CCF2C65912CCDD543AD94EDBD629 /* SnapKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SnapKit.modulemap; sourceTree = ""; }; + 9BD72DC476B7EC80308D903D62BFD1AB /* ConstraintLayoutGuideDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuideDSL.swift; path = Source/ConstraintLayoutGuideDSL.swift; sourceTree = ""; }; + 9D21FE5D0AB544EE493551FCC02E18C0 /* MemoryStorage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MemoryStorage.swift; path = Sources/Cache/MemoryStorage.swift; sourceTree = ""; }; 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 9F126F11D50BCBD88A95ACE8453BEF2D /* CompositionLayersInitializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositionLayersInitializer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/CompositionLayersInitializer.swift"; sourceTree = ""; }; - A0039145C4B3BE74F56666023975E38D /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; - A068984407DEBF395DDF99CF58A5CCE7 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; - A090D77A87D83DCEFA534DD045DF2347 /* SessionDataTask.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDataTask.swift; path = Sources/Networking/SessionDataTask.swift; sourceTree = ""; }; - A1B581B98638CA802E6305DA735C4FDD /* Group.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Group.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Group.swift"; sourceTree = ""; }; - A1BA16B2238DF4F163401120A3C527C5 /* AnimationTextProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationTextProvider.swift; path = "lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift"; sourceTree = ""; }; - A355EB0A70C9476E0D35A7023833EBD9 /* AnimationPublic.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationPublic.swift; path = "lottie-swift/src/Public/Animation/AnimationPublic.swift"; sourceTree = ""; }; - A368399878F675925DB1466C2E83AC72 /* SnapKit-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "SnapKit-Info.plist"; sourceTree = ""; }; - A3BE5D59A6EB4E0FE9779B52B1216F89 /* KeypathSearchable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeypathSearchable.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/KeypathSearchable.swift"; sourceTree = ""; }; - A3DE9EB3EB0C767FE5EA036F57D3544F /* Constraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Constraint.swift; path = Source/Constraint.swift; sourceTree = ""; }; + 9D9DCD10803664AAB16DD09873F4EA00 /* ConstraintOffsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintOffsetTarget.swift; path = Source/ConstraintOffsetTarget.swift; sourceTree = ""; }; + 9DE8C4781BD6E0EEBDC04E020A001A8A /* Hero-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Hero-dummy.m"; sourceTree = ""; }; + 9DED11B1663BA72CC11C38FB5F31882D /* Kingfisher.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Kingfisher.release.xcconfig; sourceTree = ""; }; + 9E1A882A71B8E8D4AAFC024DA979BFE5 /* Kingfisher-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-prefix.pch"; sourceTree = ""; }; + 9E5D58C101F41206328D174AF79F860C /* SwiftyGif.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftyGif.release.xcconfig; sourceTree = ""; }; + 9F08D9D0AB88CBDF2C03140C2F223CE1 /* ImageTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageTransition.swift; path = Sources/Image/ImageTransition.swift; sourceTree = ""; }; + 9FA1A9F812A44A878ECB0558CDF5DBC5 /* Rectangle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rectangle.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Rectangle.swift"; sourceTree = ""; }; + A0786E588BCB8A4DFCC187386F6AF122 /* AnimationTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationTime.swift; path = "lottie-swift/src/Public/Primitives/AnimationTime.swift"; sourceTree = ""; }; + A086106FDC770ADCCE3D3EE397775954 /* ConstraintDirectionalInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsets.swift; path = Source/ConstraintDirectionalInsets.swift; sourceTree = ""; }; + A12F54CB576AB4FF4CC13B629B10EDC4 /* ImageDownloader.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDownloader.swift; path = Sources/Networking/ImageDownloader.swift; sourceTree = ""; }; + A141C5F32F2DE0DD33D856F501B3E605 /* Parser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Parser.swift; path = Sources/Parser/Parser.swift; sourceTree = ""; }; + A2F4AEB3415826EBC247A86A27A739E7 /* ConstraintPriorityTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriorityTarget.swift; path = Source/ConstraintPriorityTarget.swift; sourceTree = ""; }; A418F9E97C6BDCA4E3CC476475BF4C81 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - A424EA4F6A37368681CD5129D2FD2415 /* Kingfisher.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Kingfisher.debug.xcconfig; sourceTree = ""; }; - A5D5E00E914738658E78CE8A848A5FA1 /* ValueContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ValueContainer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueContainer.swift"; sourceTree = ""; }; - A8108EAC1913A190F9198EF2E4F59B9A /* GradientFillNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFillNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift"; sourceTree = ""; }; - A811440D33F6D61347428A57D51345BA /* AnimationContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationContext.swift; path = "lottie-swift/src/Private/Utility/Helpers/AnimationContext.swift"; sourceTree = ""; }; - A888C70B725197B4FA4ECD00BE73A52E /* HeroPlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroPlugin.swift; path = Sources/HeroPlugin.swift; sourceTree = ""; }; - A9EEB9B59C54774084F76F8553B98584 /* StrokeRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StrokeRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift"; sourceTree = ""; }; - AA411615B08FB03608F45D0DC91B1DA8 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; - AB4642B19D31DD93987533F0D20769EF /* UIImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIImageView.swift; path = Source/Extensions/UIImageView.swift; sourceTree = ""; }; - AB7E2076C7078B1BA9665F0AF3322DF4 /* ConstraintView+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ConstraintView+Extensions.swift"; path = "Source/ConstraintView+Extensions.swift"; sourceTree = ""; }; - AC01DA615B94B3792EA41F88391A032B /* SourcePreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourcePreprocessor.swift; path = Sources/Preprocessors/SourcePreprocessor.swift; sourceTree = ""; }; - AC86DD905EAD9E909F52FFE3660D7913 /* ConstraintLayoutSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupport.swift; path = Source/ConstraintLayoutSupport.swift; sourceTree = ""; }; - ACE1D8B933A38CCF3AB3ED377FEFA0B0 /* TextCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/TextCompositionLayer.swift"; sourceTree = ""; }; - AF3A3921C286EC095F0308741597FCCE /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; - AF673F8DBD66C9C0D91590E2EF3290CE /* Placeholder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Placeholder.swift; path = Sources/Image/Placeholder.swift; sourceTree = ""; }; - AFC188DD6DAAD0B0C824782775AE2C3D /* FilepathImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FilepathImageProvider.swift; path = "lottie-swift/src/Public/iOS/FilepathImageProvider.swift"; sourceTree = ""; }; - B001956AB9B8A2EDD85322EBB93D7148 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; - B06C565717776C46F99A68C54AAC08A9 /* UIKit+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIKit+Hero.swift"; path = "Sources/Extensions/UIKit+Hero.swift"; sourceTree = ""; }; - B0F597D02D26A95807BE327ED2635096 /* StringExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StringExtensions.swift; path = "lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift"; sourceTree = ""; }; - B19FE93EEE3B70343B88D8D59D6716FA /* Gifu.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Gifu.debug.xcconfig; sourceTree = ""; }; - B1CA5C413753FEE366AF80FBF062C422 /* Ellipse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Ellipse.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift"; sourceTree = ""; }; - B3683B2E6C61310BED11FFE99838B0A2 /* SolidLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SolidLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/SolidLayerModel.swift"; sourceTree = ""; }; + A54DFF4C9E78FDE58C0F49F17EEE418B /* TrimPathNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrimPathNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/ModifierNodes/TrimPathNode.swift"; sourceTree = ""; }; + A56CCBC4E8490AF44731A4BAF67D7C0F /* CAMediaTimingFunction+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CAMediaTimingFunction+Hero.swift"; path = "Sources/Extensions/CAMediaTimingFunction+Hero.swift"; sourceTree = ""; }; + A59905142AF25B72EF80EA1C35CB2188 /* Transform.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Transform.swift; path = "lottie-swift/src/Private/Model/Objects/Transform.swift"; sourceTree = ""; }; + A5A0CED27973FCEA85E0D337420CF2EB /* SessionDataTask.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDataTask.swift; path = Sources/Networking/SessionDataTask.swift; sourceTree = ""; }; + A5F4932372F534D3E11A90F5340339EA /* AnimationView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationView.swift; path = "lottie-swift/src/Public/Animation/AnimationView.swift"; sourceTree = ""; }; + A6A635187D5F616722F2AEFA5CD7E495 /* ConstraintMaker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMaker.swift; path = Source/ConstraintMaker.swift; sourceTree = ""; }; + A72EA9583ECB48CB7571992F47FDC5FC /* NSButton+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "NSButton+Kingfisher.swift"; path = "Sources/Extensions/NSButton+Kingfisher.swift"; sourceTree = ""; }; + A77FF259EE9D673D0019E8F3C36E6625 /* GIFImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GIFImageView.swift; path = Source/Classes/GIFImageView.swift; sourceTree = ""; }; + A79157BD2B8672955F0EB5DEA897FAB4 /* ConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintItem.swift; path = Source/ConstraintItem.swift; sourceTree = ""; }; + A79F5FB0F5EE33DD48EADDEA6D90FBED /* LayerTransformNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerTransformNode.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerTransformNode.swift"; sourceTree = ""; }; + A7B9F5E38E35B7FF17C4EC4B203D3F91 /* ConstraintLayoutSupportDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupportDSL.swift; path = Source/ConstraintLayoutSupportDSL.swift; sourceTree = ""; }; + A853FB538BC7514205AD06C644DBFFFA /* Kingfisher-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-umbrella.h"; sourceTree = ""; }; + A8F53F76ED32314B81A90FBDB51F5119 /* ConstraintViewDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintViewDSL.swift; path = Source/ConstraintViewDSL.swift; sourceTree = ""; }; + A9BB6F59910B58618E013E74041DE877 /* HeroDefaultAnimator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroDefaultAnimator.swift; path = Sources/Animator/HeroDefaultAnimator.swift; sourceTree = ""; }; + AB1EED7D06129BBBC1BC7F10B41A849E /* HeroModifier+Advanced.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroModifier+Advanced.swift"; path = "Sources/HeroModifier+Advanced.swift"; sourceTree = ""; }; + AB32BC3C77A1A5C386A623BA74D206F2 /* AnyNodeProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyNodeProperty.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/AnyNodeProperty.swift"; sourceTree = ""; }; + AB5690A728AF491219517B0670F99EA4 /* HeroViewControllerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroViewControllerDelegate.swift; path = Sources/HeroViewControllerDelegate.swift; sourceTree = ""; }; + AB73111C9B867509424025701D1D84AE /* CompoundBezierPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompoundBezierPath.swift; path = "lottie-swift/src/Private/Utility/Primitives/CompoundBezierPath.swift"; sourceTree = ""; }; + AD1B4F60C6A461E17DC213007C0B578C /* lottie-ios.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "lottie-ios.debug.xcconfig"; sourceTree = ""; }; + AD9434751E02B3494AEEC4FF32C9DE9A /* HeroTransition+UIViewControllerTransitioningDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+UIViewControllerTransitioningDelegate.swift"; path = "Sources/Transition/HeroTransition+UIViewControllerTransitioningDelegate.swift"; sourceTree = ""; }; + ADA2593F165B9776B913D3373A839A0C /* ConstraintMakerExtendable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerExtendable.swift; path = Source/ConstraintMakerExtendable.swift; sourceTree = ""; }; + ADC6A19AE8BD1C5C8CD075F6D9F5CA02 /* Gifu-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Gifu-umbrella.h"; sourceTree = ""; }; + ADF7613023ABA1460344B3032ED08B38 /* DiskStorage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DiskStorage.swift; path = Sources/Cache/DiskStorage.swift; sourceTree = ""; }; + AE389AE913732C020CBFE3C00E5264AF /* AnimationContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationContext.swift; path = "lottie-swift/src/Private/Utility/Helpers/AnimationContext.swift"; sourceTree = ""; }; + AF807D1B7747273DC54E06397B94C106 /* AnimatedButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedButton.swift; path = "lottie-swift/src/Public/iOS/AnimatedButton.swift"; sourceTree = ""; }; + B05CA7BD4E5D4BB79182B4F983B35111 /* Nodes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Nodes.swift; path = Sources/Parser/Nodes.swift; sourceTree = ""; }; + B0EC414318FD84AFA7B74B86D7B853E7 /* AnimatedImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedImageView.swift; path = Sources/Views/AnimatedImageView.swift; sourceTree = ""; }; + B14AEBC33E0353A5B0FC8CF01A42E502 /* HeroDebugPlugin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroDebugPlugin.swift; path = "Sources/Debug Plugin/HeroDebugPlugin.swift"; sourceTree = ""; }; + B18A91287545FAF61A61329B2F6AD207 /* PrecompAsset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrecompAsset.swift; path = "lottie-swift/src/Private/Model/Assets/PrecompAsset.swift"; sourceTree = ""; }; + B324398710B905ABB9E6C6CABC4A5267 /* CALayer+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CALayer+Hero.swift"; path = "Sources/Extensions/CALayer+Hero.swift"; sourceTree = ""; }; + B363A64816485437FF9BF12A8A08BAAE /* ImagePrefetcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImagePrefetcher.swift; path = Sources/Networking/ImagePrefetcher.swift; sourceTree = ""; }; B37CD83EDDA4DC74CC8979694A98F9EB /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; - B400F3695B742424DBB9ED2183534EFD /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; - B4D5B980B9853ADE7B49F8729290183C /* lottie-ios-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-ios-prefix.pch"; sourceTree = ""; }; - B774F0E7EFAA277B13CA6614AB358CF7 /* AnimationCacheProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationCacheProvider.swift; path = "lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift"; sourceTree = ""; }; - B8A7977F247BE8631206D64DF7CD6005 /* BasePreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BasePreprocessor.swift; path = Sources/Preprocessors/BasePreprocessor.swift; sourceTree = ""; }; + B577BC193F89D62CF20A89880DF35438 /* CGFloatExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CGFloatExtensions.swift; path = "lottie-swift/src/Private/Utility/Extensions/CGFloatExtensions.swift"; sourceTree = ""; }; + B6BB02B9DA776C36719D93952CFC7F57 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; + B756DC0016A24794CFD87B5B42A142D5 /* StrokeRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StrokeRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/StrokeRenderer.swift"; sourceTree = ""; }; + B75E6B0D90556836AF8B77DDCD9824BF /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; B99FD4243E137E0B9AC163E70D9764D4 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/CFNetwork.framework; sourceTree = DEVELOPER_DIR; }; - BD98A7DFC586247105BF42357C1D0783 /* DefaultAnimationPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultAnimationPreprocessor.swift; path = Sources/Preprocessors/DefaultAnimationPreprocessor.swift; sourceTree = ""; }; - BDD31A99041ECFEA7A205ADFBD4DF778 /* Gifu.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Gifu.release.xcconfig; sourceTree = ""; }; - BEC980F5EDDD89CE409E739B8262CDD7 /* CompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/CompositionLayer.swift"; sourceTree = ""; }; - BEE7D769A9B9AEED6D80425FCEF54B01 /* HeroTransition+Animate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Animate.swift"; path = "Sources/Transition/HeroTransition+Animate.swift"; sourceTree = ""; }; - BF1E95F29D25D6B31272BE44A309DCDB /* ImageDownloaderDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDownloaderDelegate.swift; path = Sources/Networking/ImageDownloaderDelegate.swift; sourceTree = ""; }; - BF7EB0F0B7BC0D39B0852EA1E54D5370 /* AnimationTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationTime.swift; path = "lottie-swift/src/Public/Primitives/AnimationTime.swift"; sourceTree = ""; }; - BFA52F4EB21B404297CB2ADE94C61B4A /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = Sources/SwiftSupport.swift; sourceTree = ""; }; - C010473BCC19598AE30D53C31572E0B1 /* AnimatedFrame.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedFrame.swift; path = Source/Classes/AnimatedFrame.swift; sourceTree = ""; }; - C07B615BB16F5AE5AAB00D785F6672FD /* KeyedDecodingContainerExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyedDecodingContainerExtensions.swift; path = "lottie-swift/src/Private/Model/Extensions/KeyedDecodingContainerExtensions.swift"; sourceTree = ""; }; - C0D15C8D74734BA9A21F526192F577BD /* FillNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/FillNode.swift"; sourceTree = ""; }; - C1A035837429F25C4107EFAB1F4C6742 /* ShapeContainerLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeContainerLayer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/RenderLayers/ShapeContainerLayer.swift"; sourceTree = ""; }; - C22612156D934442BC9FBAD1405848B3 /* GIFAnimatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GIFAnimatable.swift; path = Source/Classes/GIFAnimatable.swift; sourceTree = ""; }; - C33D5FF154ED03474CFFFC2C2812FD97 /* Hero.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Hero.debug.xcconfig; sourceTree = ""; }; - C3D1E438149E8B950B3BFCEB475889EA /* Gifu-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Gifu-prefix.pch"; sourceTree = ""; }; + B9EA12A86172EF76AD727297D3D58157 /* CGSize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CGSize.swift; path = Source/Extensions/CGSize.swift; sourceTree = ""; }; + BB6D0A7F55BC2AC67579DD4F50323457 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; + BB77B4854A336E6261DBB89A4A16A0F3 /* AnimationTextProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationTextProvider.swift; path = "lottie-swift/src/Public/TextProvider/AnimationTextProvider.swift"; sourceTree = ""; }; + BC046D42167D1DBDBA2817B0CD6C1998 /* AnimatorNodeDebugging.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatorNodeDebugging.swift; path = "lottie-swift/src/Private/Utility/Debugging/AnimatorNodeDebugging.swift"; sourceTree = ""; }; + BD4D05D672FB3FD30A3891BE99A27DE5 /* AnimationViewInitializers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationViewInitializers.swift; path = "lottie-swift/src/Public/Animation/AnimationViewInitializers.swift"; sourceTree = ""; }; + BD618F46724A1666C518E2ADCF4AD180 /* AnimatedControl.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedControl.swift; path = "lottie-swift/src/Public/iOS/AnimatedControl.swift"; sourceTree = ""; }; + BDB1569461304251D47F969FF92E5E70 /* HeroTypes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTypes.swift; path = Sources/HeroTypes.swift; sourceTree = ""; }; + BDD9338BE8682E8B0D48AB7197027883 /* lottie-ios-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "lottie-ios-dummy.m"; sourceTree = ""; }; + BF9CF1FDE95BDFC60BCFAA1874A1E26C /* ConditionalPreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConditionalPreprocessor.swift; path = Sources/Preprocessors/ConditionalPreprocessor.swift; sourceTree = ""; }; + BFD94BFDA759ACCDDC5F14C7D35B11A5 /* SnapKit-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "SnapKit-Info.plist"; sourceTree = ""; }; + C110B929AEBA310B94500EA304465D62 /* InvertedMatteLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvertedMatteLayer.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/InvertedMatteLayer.swift"; sourceTree = ""; }; + C20A85B9E699E8EF66D73A07A31FE4DF /* SwiftyGif-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SwiftyGif-dummy.m"; sourceTree = ""; }; + C220D431C1C71BF974FBA2EB186B780F /* ImageDrawing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDrawing.swift; path = Sources/Image/ImageDrawing.swift; sourceTree = ""; }; + C32602458EE66907CD7D748BF7D3C6F3 /* SourcePreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourcePreprocessor.swift; path = Sources/Preprocessors/SourcePreprocessor.swift; sourceTree = ""; }; C3F44C782D64D7EB20B61CE3844EBFAD /* Kingfisher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Kingfisher.framework; path = Kingfisher.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - C430503AFF3ED54F8ACC665182797DFA /* ShapeLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/ShapeLayerModel.swift"; sourceTree = ""; }; - C43AD585E967B27579A1C674C661E8C9 /* HeroTransition+UITabBarControllerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+UITabBarControllerDelegate.swift"; path = "Sources/Transition/HeroTransition+UITabBarControllerDelegate.swift"; sourceTree = ""; }; - C451F4BC2C07443144E4C0F40B905B32 /* ConstraintInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintInsetTarget.swift; path = Source/ConstraintInsetTarget.swift; sourceTree = ""; }; - C456FA698075381093F946C10BE10069 /* LayerTextProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerTextProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerTextProvider.swift"; sourceTree = ""; }; - C53D97E729F9F554D667F21685701DFF /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = Sources/General/Deprecated.swift; sourceTree = ""; }; - C58880C77985DEA326E266D3755E4549 /* LRUAnimationCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LRUAnimationCache.swift; path = "lottie-swift/src/Public/AnimationCache/LRUAnimationCache.swift"; sourceTree = ""; }; - C5B8D661EC11DA07D2E87765A0964733 /* SnapKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-prefix.pch"; sourceTree = ""; }; - C5FFACF5B1C69F44601D1977B3C9D2D3 /* UIColorExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIColorExtension.swift; path = "lottie-swift/src/Public/iOS/UIColorExtension.swift"; sourceTree = ""; }; - C62890DC84AB9F21651C7F64F634EC13 /* Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Image.swift; path = Sources/Image/Image.swift; sourceTree = ""; }; - C939BFB9F8361B282D4D820AD8593814 /* ConstraintDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDSL.swift; path = Source/ConstraintDSL.swift; sourceTree = ""; }; - CA81A9A3E3507F358F27BDF304BC0366 /* DispatchQueue+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Hero.swift"; path = "Sources/Extensions/DispatchQueue+Hero.swift"; sourceTree = ""; }; - CAA6173E4AF36F3B0388C2CAD4A526EF /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Sources/Image/Filter.swift; sourceTree = ""; }; - CBC0C86F5B7FC401C3B67BF6757A66D1 /* Kingfisher-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-umbrella.h"; sourceTree = ""; }; - CD657DABD40600F4DABD58202975C125 /* PathOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift"; sourceTree = ""; }; - CE3D99BA121318799420B4C4348DFEC2 /* HeroModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroModifier.swift; path = Sources/HeroModifier.swift; sourceTree = ""; }; + C4290D4E572C61BEEAFFBE4A557F6D48 /* BasePreprocessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BasePreprocessor.swift; path = Sources/Preprocessors/BasePreprocessor.swift; sourceTree = ""; }; + C55C990C7FEF995EC1F0EF22BDF5DF3F /* Runtime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Runtime.swift; path = Sources/Utility/Runtime.swift; sourceTree = ""; }; + C67B9931AB1C2651FAD5B9DD34DAAA96 /* ConstraintLayoutGuide.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutGuide.swift; path = Source/ConstraintLayoutGuide.swift; sourceTree = ""; }; + C6A40717974B24B4C2F0D2578BD0DA45 /* ConstraintConfig.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConfig.swift; path = Source/ConstraintConfig.swift; sourceTree = ""; }; + C6B527A6240CE41A375F16FD8D4D2B5C /* SnapKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-prefix.pch"; sourceTree = ""; }; + C6C831B9EBC722073C3C381F2C5F3304 /* PathOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PathOutputNode.swift"; sourceTree = ""; }; + C709578B61E477BE12C8E85C12BBCE22 /* SwiftyGif-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftyGif-umbrella.h"; sourceTree = ""; }; + C801A75107C152694FAAACDFD366BC12 /* ImageDataProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDataProcessor.swift; path = Sources/Networking/ImageDataProcessor.swift; sourceTree = ""; }; + C89B025B2EAD98A1C12F82F1BB3C22AC /* ConstraintLayoutSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupport.swift; path = Source/ConstraintLayoutSupport.swift; sourceTree = ""; }; + C9214A31AD7444C2BD1F0B07F5DDFE83 /* HeroCoreAnimationViewContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroCoreAnimationViewContext.swift; path = Sources/Animator/HeroCoreAnimationViewContext.swift; sourceTree = ""; }; + C9948592CB5CBBC9E9E3FB96F0EE7FB8 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = Sources/General/Deprecated.swift; sourceTree = ""; }; + CA06CB9000D2DC3E1857704A17F95710 /* WKInterfaceImage+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "WKInterfaceImage+Kingfisher.swift"; path = "Sources/Extensions/WKInterfaceImage+Kingfisher.swift"; sourceTree = ""; }; + CB736E8FE61E8DADA5444542ECC2CF84 /* Then-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Then-umbrella.h"; sourceTree = ""; }; + CB7468DCBED0EA992AD77CAEBC086708 /* AnimationKeypath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationKeypath.swift; path = "lottie-swift/src/Public/DynamicProperties/AnimationKeypath.swift"; sourceTree = ""; }; + CCE5CCB441476E3544BD72BD06C3080D /* KingfisherError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherError.swift; path = Sources/General/KingfisherError.swift; sourceTree = ""; }; + CCEBFE8767A42497F43BE8AC5C5E7312 /* Gifu-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Gifu-Info.plist"; sourceTree = ""; }; + CD575FB666A7FA70DF1260C2817B8A1A /* Gifu-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Gifu-dummy.m"; sourceTree = ""; }; + CE2776611353FCE198172A4194CFA01E /* GroupNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderContainers/GroupNode.swift"; sourceTree = ""; }; CE542263EFE941153972EA24CECE1D62 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/CoreMedia.framework; sourceTree = DEVELOPER_DIR; }; - CE92FD1A5D9B5C780ADDDC01664F9B77 /* StrokeNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StrokeNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/StrokeNode.swift"; sourceTree = ""; }; - D04FE218E0E454802C8AEEF62C16CDC1 /* SnapKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SnapKit.modulemap; sourceTree = ""; }; - D059C30460EF6A5F266B69D6EB672351 /* Nodes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Nodes.swift; path = Sources/Parser/Nodes.swift; sourceTree = ""; }; - D09BDDE9C1963F8938B3525BA5149EB1 /* ShapeTransform.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeTransform.swift; path = "lottie-swift/src/Private/Model/ShapeItems/ShapeTransform.swift"; sourceTree = ""; }; - D34021A364FDFF09017290D02B46C4FD /* Then-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Then-dummy.m"; sourceTree = ""; }; - D4D32C4559A6AEB051C6FF08DE313EC2 /* PolygonNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PolygonNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/PathNodes/PolygonNode.swift"; sourceTree = ""; }; - D4DEABDD2CCB892B9FF34843A10CEE40 /* Trim.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Trim.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Trim.swift"; sourceTree = ""; }; - D7AA1B6475956E3028F34EDB4360DB57 /* Then-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Then-prefix.pch"; sourceTree = ""; }; - D8BAFC2CAFAA7D53DE727DA077C84F4E /* MathKit.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MathKit.swift; path = "lottie-swift/src/Private/Utility/Extensions/MathKit.swift"; sourceTree = ""; }; - D977402DDB403160A51928E5E2BC6F3E /* lottie-ios-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "lottie-ios-Info.plist"; sourceTree = ""; }; - DA2EFE9A98A03E9C96516C7B09563541 /* Gifu-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Gifu-umbrella.h"; sourceTree = ""; }; - DB3C89F392CC2E66A55C3B3E0ADB005D /* GradientStroke.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStroke.swift; path = "lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift"; sourceTree = ""; }; - DC2F73377C35B4F40F919E987664ADAF /* AnyValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/AnyValueProvider.swift"; sourceTree = ""; }; - DCD3570B32B821874EDB601250CE2229 /* Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Kingfisher.swift; path = Sources/General/Kingfisher.swift; sourceTree = ""; }; - DD5D3E2A23678994F1B5F1CAD77D10C9 /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Merge.swift"; sourceTree = ""; }; - DE9B4BF6BD9D539FC34C8CDDF8982C80 /* Repeater.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeater.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Repeater.swift"; sourceTree = ""; }; - DEAAA7129F8CA9143380598081678830 /* PrecompAsset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrecompAsset.swift; path = "lottie-swift/src/Private/Model/Assets/PrecompAsset.swift"; sourceTree = ""; }; - DF2B5DCFE2826CD4CD71E3AE40DC4B96 /* CallbackQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CallbackQueue.swift; path = Sources/Utility/CallbackQueue.swift; sourceTree = ""; }; - DF87B1DD8CF49D30FD4E9DE29F096B59 /* ConstraintViewDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintViewDSL.swift; path = Source/ConstraintViewDSL.swift; sourceTree = ""; }; - DFE8253E72EBFF5CA7EDAA7F7256D35D /* ConstraintDirectionalInsets.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsets.swift; path = Source/ConstraintDirectionalInsets.swift; sourceTree = ""; }; - E00E59DBC2776F693E41A5E54C961C3F /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; + CE75C4A652A5AC82DE01E24CCF1C6D1C /* Hero.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Hero.debug.xcconfig; sourceTree = ""; }; + D056AADCCA626164B0717A05C54B2A2A /* HeroViewPropertyViewContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroViewPropertyViewContext.swift; path = Sources/Animator/HeroViewPropertyViewContext.swift; sourceTree = ""; }; + D0EA5567962FFE6B5311975F2ED52554 /* AnimationCacheProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationCacheProvider.swift; path = "lottie-swift/src/Public/AnimationCache/AnimationCacheProvider.swift"; sourceTree = ""; }; + D14DDDCC35CF520B01762198CEB18F8A /* NodeProperty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NodeProperty.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/NodeProperty.swift"; sourceTree = ""; }; + D2E18CBEE55806463BBA56FE93A6F463 /* Then-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Then-Info.plist"; sourceTree = ""; }; + D5D8BB5C9166879A528CADB3F40BE8F8 /* Hero.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Hero.release.xcconfig; sourceTree = ""; }; + D61233EF578C97AA5039D594F9F5CE09 /* AnimationKeypathExtension.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationKeypathExtension.swift; path = "lottie-swift/src/Private/Utility/Extensions/AnimationKeypathExtension.swift"; sourceTree = ""; }; + D615BA6079E76006013AC5E03598BDFA /* CompatibleAnimationKeypath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompatibleAnimationKeypath.swift; path = "lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift"; sourceTree = ""; }; + D6C7F3E39476A4D256948B39F68CEDF4 /* VectorsExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VectorsExtensions.swift; path = "lottie-swift/src/Private/Utility/Primitives/VectorsExtensions.swift"; sourceTree = ""; }; + D75A3D07FB01935D6868AB8DF5657362 /* HeroTransition+Complete.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Complete.swift"; path = "Sources/Transition/HeroTransition+Complete.swift"; sourceTree = ""; }; + D7A9FC0C4CF2463929131301D91BDC19 /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Sources/Networking/SessionDelegate.swift; sourceTree = ""; }; + D7CAB3F4EC7A7101A0510D9B9596B101 /* LayoutConstraint.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraint.swift; path = Source/LayoutConstraint.swift; sourceTree = ""; }; + D83B8ADAFDBA51164553C6BA3ECB5909 /* Then.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Then.debug.xcconfig; sourceTree = ""; }; + DAF3F5A7BFCE350F7749B8769C0C6890 /* Marker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Marker.swift; path = "lottie-swift/src/Private/Model/Objects/Marker.swift"; sourceTree = ""; }; + DB0082ABB38CC09099FE955D7AE3088F /* Gifu.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Gifu.h; path = Source/Gifu.h; sourceTree = ""; }; + DB0B0972702F485C0D96D49DA8A743AF /* Then.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Then.modulemap; sourceTree = ""; }; + DEEE51859B006080C208D45C5D406E6F /* Ellipse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Ellipse.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Ellipse.swift"; sourceTree = ""; }; + DF3FAEBAD4988FD2AF29F7F9580B7B0C /* FloatValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FloatValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/FloatValueProvider.swift"; sourceTree = ""; }; + DFC4C981D85631FA9081775B4FFB3518 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; + E00689770CB4C211E29879F2E2510594 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; + E059027A1F2A81B724F2994020FFCEB9 /* HeroContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroContext.swift; path = Sources/HeroContext.swift; sourceTree = ""; }; + E0AFA4FEF927174FFC1FFB21165B8A89 /* lottie-ios-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-ios-umbrella.h"; sourceTree = ""; }; + E0BD0671731D804A2779ED44096D9242 /* StringExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StringExtensions.swift; path = "lottie-swift/src/Private/Utility/Extensions/StringExtensions.swift"; sourceTree = ""; }; + E0D83B62DB904D9B834E323C728EB6FD /* ConstraintConstantTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintConstantTarget.swift; path = Source/ConstraintConstantTarget.swift; sourceTree = ""; }; E0E71C44B54E27A0270F40BBA1F6829F /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Accelerate.framework; sourceTree = DEVELOPER_DIR; }; - E1149BF992664340980ABB20D6510C4D /* Array+HeroModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Array+HeroModifier.swift"; path = "Sources/Extensions/Array+HeroModifier.swift"; sourceTree = ""; }; - E24574BD3D3C5B7BB458B1C52311763C /* SolidCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SolidCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/SolidCompositionLayer.swift"; sourceTree = ""; }; - E25A6E0C38C7369F8E045A531F117BB9 /* PassThroughOutputNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PassThroughOutputNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/PassThroughOutputNode.swift"; sourceTree = ""; }; - E26D48917E9F735A35CDBDE204F03BBE /* Alamofire-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Alamofire-Info.plist"; sourceTree = ""; }; - E28F9B13866075207299891CA97369D2 /* AnimatedControl.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedControl.swift; path = "lottie-swift/src/Public/iOS/AnimatedControl.swift"; sourceTree = ""; }; - E2B7542F86812827C14DC12BE8A57E86 /* HeroContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroContext.swift; path = Sources/HeroContext.swift; sourceTree = ""; }; - E3093D912FA21BCB1A5E436BE8946EFA /* UIImage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UIImage.swift; path = Source/Extensions/UIImage.swift; sourceTree = ""; }; - E325FEF876ECD20B376B45E82CBE201B /* FillRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift"; sourceTree = ""; }; - E3ACB408BB814455D3604123C2C8D058 /* AnimationImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationImageProvider.swift; path = "lottie-swift/src/Public/ImageProvider/AnimationImageProvider.swift"; sourceTree = ""; }; - E3BA6F6F2AE5D59ABD097843F01D9C7B /* Mask.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Mask.swift; path = "lottie-swift/src/Private/Model/Objects/Mask.swift"; sourceTree = ""; }; - E4FBE195A95FA32DCF3A3699C72A4F24 /* Lexer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lexer.swift; path = Sources/Parser/Lexer.swift; sourceTree = ""; }; - E54D54B42EEE4B1E961794F561707E59 /* UIViewController+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+Hero.swift"; path = "Sources/Extensions/UIViewController+Hero.swift"; sourceTree = ""; }; - E5655145C744E72BBEDB3E2A04D62432 /* HeroTransition+Start.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "HeroTransition+Start.swift"; path = "Sources/Transition/HeroTransition+Start.swift"; sourceTree = ""; }; - E581F274A660A6B6CD8FF0032D61B3F2 /* RedirectHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RedirectHandler.swift; path = Sources/Networking/RedirectHandler.swift; sourceTree = ""; }; - E5BF94CA3C97696DD82CC203CDC9BFDE /* TextAnimatorNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextAnimatorNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/Text/TextAnimatorNode.swift"; sourceTree = ""; }; - E6EE933A536A33B878ED0F46F36E15ED /* KingfisherError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherError.swift; path = Sources/General/KingfisherError.swift; sourceTree = ""; }; - E78D7900A593DF50A881EB0C84064D16 /* PathElement.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathElement.swift; path = "lottie-swift/src/Private/Utility/Primitives/PathElement.swift"; sourceTree = ""; }; - E9235FB90C3916C506FEFBB2BAA89F77 /* RequestModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RequestModifier.swift; path = Sources/Networking/RequestModifier.swift; sourceTree = ""; }; - E9FE7EA90977AB410B6E91A7CC15FF78 /* Runtime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Runtime.swift; path = Sources/Utility/Runtime.swift; sourceTree = ""; }; - EA5F759EA14A2443A38FCC38D853CE62 /* PathNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PathNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Protocols/PathNode.swift"; sourceTree = ""; }; - EA79832715EE039927F3746C67F6A3F3 /* Hero-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Hero-prefix.pch"; sourceTree = ""; }; - EA986D956CB8AB3D19255837DA4EEC02 /* ConstraintRelation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelation.swift; path = Source/ConstraintRelation.swift; sourceTree = ""; }; - EB9B2E999C69883095CF7DFC281DC1DC /* AnimatedImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedImageView.swift; path = Sources/Views/AnimatedImageView.swift; sourceTree = ""; }; - EBA5B434D1179DE89070110E1CF2FF41 /* ConstraintMakerEditable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerEditable.swift; path = Source/ConstraintMakerEditable.swift; sourceTree = ""; }; - EC3B66579490F04AB6ABD717F27B0078 /* KeyframeInterpolator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeInterpolator.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/ValueProviders/KeyframeInterpolator.swift"; sourceTree = ""; }; + E141DFABC8037F0047CC698D0F2D3FB3 /* AnimationContainer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationContainer.swift; path = "lottie-swift/src/Private/LayerContainers/AnimationContainer.swift"; sourceTree = ""; }; + E1A8271D9EABA24114E77587C6654ECD /* lottie-ios-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "lottie-ios-prefix.pch"; sourceTree = ""; }; + E2F36E2551F8B6DF54618634C6CD59AA /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; + E379265F1174BBB991BA9633F46CC668 /* HeroModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroModifier.swift; path = Sources/HeroModifier.swift; sourceTree = ""; }; + E4606AD3B62B3C21221934B4EFC7F84D /* Then.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Then.swift; path = Sources/Then/Then.swift; sourceTree = ""; }; + E4C8EE2A69ADFB912FE5BF82344A8B23 /* UIView+Hero.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Hero.swift"; path = "Sources/Extensions/UIView+Hero.swift"; sourceTree = ""; }; + E4D4D24A669090A27466D5644A138B4D /* ShapeItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShapeItem.swift; path = "lottie-swift/src/Private/Model/ShapeItems/ShapeItem.swift"; sourceTree = ""; }; + E5743A95E54293EDA694160BB258D648 /* UILayoutSupport+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILayoutSupport+Extensions.swift"; path = "Source/UILayoutSupport+Extensions.swift"; sourceTree = ""; }; + E57846F96542FF9D69AC8DD68A71FEDC /* CallbackQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CallbackQueue.swift; path = Sources/Utility/CallbackQueue.swift; sourceTree = ""; }; + E614720FB99A35005BCC5670C828E61F /* SnapKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SnapKit-umbrella.h"; sourceTree = ""; }; + E7DC38FDDD0803972C120B9B7D2DC51A /* ExtensionHelpers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExtensionHelpers.swift; path = Sources/Utility/ExtensionHelpers.swift; sourceTree = ""; }; + E80D714CD551840C67B35967F0E2254B /* ImageProgressive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageProgressive.swift; path = Sources/Image/ImageProgressive.swift; sourceTree = ""; }; + E9D86D1AA5A32F578A5C67591A87EE3C /* Stroke.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stroke.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Stroke.swift"; sourceTree = ""; }; + E9ECAC9F611762AE3BDF6728C61469DF /* TextDocument.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextDocument.swift; path = "lottie-swift/src/Private/Model/Text/TextDocument.swift"; sourceTree = ""; }; + EA410D39487F4FB4430ADDA4F50F4D9F /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; + EA59BA7E2D8854E2F262B1031A59591F /* FillRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FillRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/FillRenderer.swift"; sourceTree = ""; }; + EB17C1035263615C106CD35A17D8A2FF /* TextCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/TextCompositionLayer.swift"; sourceTree = ""; }; + EBA28AEBE0E147DB04A5F9EEF174A31C /* DashPattern.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DashPattern.swift; path = "lottie-swift/src/Private/Model/Objects/DashPattern.swift"; sourceTree = ""; }; + EBE03E771B3C2AC552F237379837C286 /* NullCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NullCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/NullCompositionLayer.swift"; sourceTree = ""; }; + EC09496161A3B493247F8414C978C8DD /* RequestModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RequestModifier.swift; path = Sources/Networking/RequestModifier.swift; sourceTree = ""; }; + EC18BCE8CDF5810DD049360ED94CC3DC /* AssetLibrary.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssetLibrary.swift; path = "lottie-swift/src/Private/Model/Assets/AssetLibrary.swift"; sourceTree = ""; }; EC75B334BE536A1DCFF91A5AD585351B /* Pods_Mongle.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Mongle.framework; path = "Pods-Mongle.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - ED55040321D5E86D5A883536230490F4 /* ImageDataProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDataProvider.swift; path = Sources/General/ImageSource/ImageDataProvider.swift; sourceTree = ""; }; - EE19BE795C814CC1CA92836153DB35A1 /* NullCompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NullCompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/NullCompositionLayer.swift"; sourceTree = ""; }; - EE607DDA6F91CD653AC6DBE994E067AE /* ImageDownloader.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDownloader.swift; path = Sources/Networking/ImageDownloader.swift; sourceTree = ""; }; - EE781F9515B9CF4462A0607DC670FC96 /* ConstraintLayoutSupportDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintLayoutSupportDSL.swift; path = Source/ConstraintLayoutSupportDSL.swift; sourceTree = ""; }; - EEF7244BB902810882BDE9DACC737BF7 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; - EF2AA24C52B3840A52156F27065D69FE /* Then.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Then.swift; path = Sources/Then/Then.swift; sourceTree = ""; }; - F15CD17D0339574EE3C13D80D3094C08 /* ConstraintDirectionalInsetTarget.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDirectionalInsetTarget.swift; path = Source/ConstraintDirectionalInsetTarget.swift; sourceTree = ""; }; - F23F87BF1FBCFE5385EB5F8F41094E3D /* lottie-ios-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "lottie-ios-dummy.m"; sourceTree = ""; }; - F43E686B8144B27D1A82E95C17E54A5C /* AnimationViewInitializers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationViewInitializers.swift; path = "lottie-swift/src/Public/Animation/AnimationViewInitializers.swift"; sourceTree = ""; }; - F53DD8CFFF90A15E5ED253F0407E768A /* ConstraintMakerRelatable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintMakerRelatable.swift; path = Source/ConstraintMakerRelatable.swift; sourceTree = ""; }; - F5A70E1A6C7F324FA2D68F6EE89A9945 /* ImageView+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ImageView+Kingfisher.swift"; path = "Sources/Extensions/ImageView+Kingfisher.swift"; sourceTree = ""; }; - F66B39F82692E17B5379C11068DD63D3 /* String+MD5.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+MD5.swift"; path = "Sources/Utility/String+MD5.swift"; sourceTree = ""; }; - F78F1986B6FB9B01427079A2273309AD /* HeroViewControllerDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroViewControllerDelegate.swift; path = Sources/HeroViewControllerDelegate.swift; sourceTree = ""; }; - F9007BD2F9279E0EE43C2B7B2AB52582 /* Storage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Storage.swift; path = Sources/Cache/Storage.swift; sourceTree = ""; }; - F946A68847800041E723FABE055948B4 /* ImagePrefetcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImagePrefetcher.swift; path = Sources/Networking/ImagePrefetcher.swift; sourceTree = ""; }; - F9659244B6C8DA6D0F620406FD0A2E97 /* UILayoutSupport+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UILayoutSupport+Extensions.swift"; path = "Source/UILayoutSupport+Extensions.swift"; sourceTree = ""; }; - FA37E502DA92CC65B74F9D439F6A8E0F /* CompatibleAnimationKeypath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompatibleAnimationKeypath.swift; path = "lottie-swift/src/Public/iOS/Compatibility/CompatibleAnimationKeypath.swift"; sourceTree = ""; }; - FB6E7226DD215F0DBEDD6EB268273FDF /* Animator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Animator.swift; path = Source/Classes/Animator.swift; sourceTree = ""; }; - FC951E5DD8B35AEB5D5DFE42509D6C3E /* KeyframeExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KeyframeExtensions.swift; path = "lottie-swift/src/Private/Utility/Interpolatable/KeyframeExtensions.swift"; sourceTree = ""; }; - FD786847DBF7F1850BA7FB19350915E5 /* GradientFillRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFillRenderer.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/OutputNodes/Renderables/GradientFillRenderer.swift"; sourceTree = ""; }; - FE57F29762BA21F45F0C5ED5A0B8E577 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Sources/Utility/Result.swift; sourceTree = ""; }; - FE6905BCE29153AC7239C8BFA001A5E8 /* Star.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Star.swift; path = "lottie-swift/src/Private/Model/ShapeItems/Star.swift"; sourceTree = ""; }; - FEE6A9654A4B6D8F49F043331E2AF37E /* ConstraintPriority.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintPriority.swift; path = Source/ConstraintPriority.swift; sourceTree = ""; }; - FF125280632ACB9C9AAB519BA1EB6A67 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; - FF35F19FD7685A43583BEB11D1E35D68 /* CurveVertex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurveVertex.swift; path = "lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift"; sourceTree = ""; }; + ED5CAFF895F4C3C42B53437740248B5C /* Gifu.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Gifu.debug.xcconfig; sourceTree = ""; }; + ED9325990D2E83DF78852C2CBDDE6320 /* GradientFillNode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFillNode.swift; path = "lottie-swift/src/Private/NodeRenderSystem/Nodes/RenderNodes/GradientFillNode.swift"; sourceTree = ""; }; + EFD6A6497CD46F9CB862B7CF1B573E05 /* HeroTransitionState.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeroTransitionState.swift; path = Sources/Transition/HeroTransitionState.swift; sourceTree = ""; }; + F0EAA2985C06B97BBCF5D02CDE5E708C /* GradientFill.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientFill.swift; path = "lottie-swift/src/Private/Model/ShapeItems/GradientFill.swift"; sourceTree = ""; }; + F1C3A5AFC84EE5557FB94D0B2F192CF0 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; + F256C086573F82CC1AC1FCAD428172EA /* LayoutConstraintItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayoutConstraintItem.swift; path = Source/LayoutConstraintItem.swift; sourceTree = ""; }; + F2DC6913F0CECA69052F0D908C2F13D0 /* KingfisherOptionsInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherOptionsInfo.swift; path = Sources/General/KingfisherOptionsInfo.swift; sourceTree = ""; }; + F355AB8AA1982B40877E8FE46D75F5B0 /* LayerImageProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LayerImageProvider.swift; path = "lottie-swift/src/Private/LayerContainers/Utility/LayerImageProvider.swift"; sourceTree = ""; }; + F378F6AD7FC561BD602E7F4BAF9F0A84 /* Then.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Then.release.xcconfig; sourceTree = ""; }; + F3976FD6B4FBC2A210544B1BE1246483 /* ConstraintRelation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintRelation.swift; path = Source/ConstraintRelation.swift; sourceTree = ""; }; + F4B7740E37A8CF54B9CD448BEABD2828 /* CompositionLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositionLayer.swift; path = "lottie-swift/src/Private/LayerContainers/CompLayers/CompositionLayer.swift"; sourceTree = ""; }; + F5083003B9DFE0CAE7D83ED108BF9E3C /* Animator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Animator.swift; path = Source/Classes/Animator.swift; sourceTree = ""; }; + F54B8AB80488E69628CADB592AFC151B /* Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Image.swift; path = Sources/Image/Image.swift; sourceTree = ""; }; + F611371EEA668A209D99AAEFC816FBD5 /* NodePropertyMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NodePropertyMap.swift; path = "lottie-swift/src/Private/NodeRenderSystem/NodeProperties/Protocols/NodePropertyMap.swift"; sourceTree = ""; }; + F6DB43DE9E31A99BA4DA9143400B512E /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Sources/Utility/Result.swift; sourceTree = ""; }; + F7641666AA9FF589221EE5D35B32BD7B /* SnapKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SnapKit-dummy.m"; sourceTree = ""; }; + F79B9D4C8BC44856E8325340AA62AC04 /* Resource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Resource.swift; path = Sources/General/ImageSource/Resource.swift; sourceTree = ""; }; + F7A7EF09B0A64F62E7463878B3041359 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; + F7EC6FB51B4244CCD7D86161F9C8213F /* GradientValueProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientValueProvider.swift; path = "lottie-swift/src/Public/DynamicProperties/ValueProviders/GradientValueProvider.swift"; sourceTree = ""; }; + F8525A9ED196D26AB0ACD4CA1E5B3361 /* TextLayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TextLayerModel.swift; path = "lottie-swift/src/Private/Model/Layers/TextLayerModel.swift"; sourceTree = ""; }; + F8C7C8C5BF5A52FEECBF11A45EAB6B05 /* ConstraintDSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintDSL.swift; path = Source/ConstraintDSL.swift; sourceTree = ""; }; + F8CB6AE60D857F62089B7A2E3B0B9E0C /* AnimationPublic.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationPublic.swift; path = "lottie-swift/src/Public/Animation/AnimationPublic.swift"; sourceTree = ""; }; + F9111798C97D00B2B4C9625BF149AD91 /* ImageProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageProcessor.swift; path = Sources/Image/ImageProcessor.swift; sourceTree = ""; }; + F9C5EADD0E9733283CEE351679C52A84 /* GradientStroke.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GradientStroke.swift; path = "lottie-swift/src/Private/Model/ShapeItems/GradientStroke.swift"; sourceTree = ""; }; + F9D6C6C58E3748C7E7BD07AD918C4965 /* CurveVertex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurveVertex.swift; path = "lottie-swift/src/Private/Utility/Primitives/CurveVertex.swift"; sourceTree = ""; }; + FA1756E8F16358F17D87172F12F3F92B /* Box.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Box.swift; path = Sources/Utility/Box.swift; sourceTree = ""; }; + FB7A2ABCFE601EFFCC3996620F4734DE /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; + FE4B2846E6F905AF49262F8C03C52D28 /* BezierPath.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BezierPath.swift; path = "lottie-swift/src/Private/Utility/Primitives/BezierPath.swift"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ + 06FDAE763919A7B12DBE5F3E67445C32 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 677F3D8BEE5A2B1459168DC62EB16EB3 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 090C1D63463ACF622287EFF9D5C9392D /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -764,29 +798,29 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 3C8B1704CC97EF12D3409771318C6433 /* Frameworks */ = { + 377C2F5BC7DB8F4E0A8FF0612236C2D6 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 04543980C4A7CE442330B0F1BC4A9A54 /* Foundation.framework in Frameworks */, + 0BCAA13CA8E4803C1D36DEB5DEAF165E /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 61AF6B13CCC2E38FDA0B9BAB05581FD5 /* Frameworks */ = { + 3C8B1704CC97EF12D3409771318C6433 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D3DB9F1DF95D7732960C4A55972C115E /* Accelerate.framework in Frameworks */, - 09759A3CD181CC07D8E69462D2E9424C /* CFNetwork.framework in Frameworks */, - 6804393EA55473086BC9AC4FE08F33F5 /* Foundation.framework in Frameworks */, + 04543980C4A7CE442330B0F1BC4A9A54 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 91C78624BAB58F912CE7F4BE99122D73 /* Frameworks */ = { + 61AF6B13CCC2E38FDA0B9BAB05581FD5 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - AEB271CF8DC83854F8BBFA430FB9BD30 /* Foundation.framework in Frameworks */, + D3DB9F1DF95D7732960C4A55972C115E /* Accelerate.framework in Frameworks */, + 09759A3CD181CC07D8E69462D2E9424C /* CFNetwork.framework in Frameworks */, + 6804393EA55473086BC9AC4FE08F33F5 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -824,286 +858,156 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 076898E6D48141459216346783ED975C /* Pods */ = { + 17E32DE61E7F7210A8B1B104FD38BEBB /* SnapKit */ = { isa = PBXGroup; children = ( - 59E6F1604E9124E30DA1813547B389A3 /* Alamofire */, - 50C19C3351B55250D458CE90B46A45E1 /* Gifu */, - 3FF38973260CEF56B887628C90EFDA8E /* Hero */, - C13179E10C6809FCDA51132EE55EB56F /* Kingfisher */, - 4C01413EA54A89BC18D5037643D67906 /* lottie-ios */, - A0CDE89162A49A836BDF510953F26CEB /* SnapKit */, - BB46C4E867E845E0EFF9C0721CEE1FEA /* Then */, + 34F302C99BADC67694875C163145F288 /* Constraint.swift */, + 6CFBA636E9A565A3A1DA731D78879C11 /* ConstraintAttributes.swift */, + C6A40717974B24B4C2F0D2578BD0DA45 /* ConstraintConfig.swift */, + E0D83B62DB904D9B834E323C728EB6FD /* ConstraintConstantTarget.swift */, + 42CFCC032D2E25C0D5E94B823536141A /* ConstraintDescription.swift */, + A086106FDC770ADCCE3D3EE397775954 /* ConstraintDirectionalInsets.swift */, + 3D8D0D1AED84D866FB73CC42087D454E /* ConstraintDirectionalInsetTarget.swift */, + F8C7C8C5BF5A52FEECBF11A45EAB6B05 /* ConstraintDSL.swift */, + 866570C81AF40757B2EF9FD651B4A9E1 /* ConstraintInsets.swift */, + 1A3732EB9AE357E8BEA97A81BCCC0F93 /* ConstraintInsetTarget.swift */, + A79157BD2B8672955F0EB5DEA897FAB4 /* ConstraintItem.swift */, + C67B9931AB1C2651FAD5B9DD34DAAA96 /* ConstraintLayoutGuide.swift */, + 0C65B95574AE6D6979D3ACF28E5A46BF /* ConstraintLayoutGuide+Extensions.swift */, + 9BD72DC476B7EC80308D903D62BFD1AB /* ConstraintLayoutGuideDSL.swift */, + C89B025B2EAD98A1C12F82F1BB3C22AC /* ConstraintLayoutSupport.swift */, + A7B9F5E38E35B7FF17C4EC4B203D3F91 /* ConstraintLayoutSupportDSL.swift */, + A6A635187D5F616722F2AEFA5CD7E495 /* ConstraintMaker.swift */, + 06264092244C47F4E972731996316E3E /* ConstraintMakerEditable.swift */, + ADA2593F165B9776B913D3373A839A0C /* ConstraintMakerExtendable.swift */, + 5723F716939B7B72B670BB3289DC108C /* ConstraintMakerFinalizable.swift */, + 2C37D958EF6DE64619621C1F92318886 /* ConstraintMakerPriortizable.swift */, + 6BF97BFCCAB38162A54C376DB104797F /* ConstraintMakerRelatable.swift */, + 8AB17BE4D1C0BFC51BAE3E682CFAC0A5 /* ConstraintMultiplierTarget.swift */, + 9D9DCD10803664AAB16DD09873F4EA00 /* ConstraintOffsetTarget.swift */, + 1C020495FFA42C7CAF43E4F65B2D01F1 /* ConstraintPriority.swift */, + A2F4AEB3415826EBC247A86A27A739E7 /* ConstraintPriorityTarget.swift */, + 100893137F1C5B3795A29AF705694D3B /* ConstraintRelatableTarget.swift */, + F3976FD6B4FBC2A210544B1BE1246483 /* ConstraintRelation.swift */, + 3D2F68FBA4F44562FA5B6A860080B98F /* ConstraintView.swift */, + 7581F2FD59BF553350971F897FBB5660 /* ConstraintView+Extensions.swift */, + A8F53F76ED32314B81A90FBDB51F5119 /* ConstraintViewDSL.swift */, + 989291BC8B2EF034C9E820197A8F988C /* Debugging.swift */, + D7CAB3F4EC7A7101A0510D9B9596B101 /* LayoutConstraint.swift */, + F256C086573F82CC1AC1FCAD428172EA /* LayoutConstraintItem.swift */, + 62615FC9E74B13920A5FD452F3831387 /* Typealiases.swift */, + E5743A95E54293EDA694160BB258D648 /* UILayoutSupport+Extensions.swift */, + DA5A303A0092CEA158F4014618160093 /* Support Files */, ); - name = Pods; + name = SnapKit; + path = SnapKit; sourceTree = ""; }; - 3FF38973260CEF56B887628C90EFDA8E /* Hero */ = { + 24A14B9079AAB58F5325AEBE17969978 /* Gifu */ = { isa = PBXGroup; children = ( - E1149BF992664340980ABB20D6510C4D /* Array+HeroModifier.swift */, - B8A7977F247BE8631206D64DF7CD6005 /* BasePreprocessor.swift */, - 58CA9DD7C500662C8590908EAF4A2814 /* CALayer+Hero.swift */, - 818412D46A6D89BC69D5AEC2D5B5A6D3 /* CAMediaTimingFunction+Hero.swift */, - 5637CABA3EFF3121624AD997FDA78CC3 /* CascadePreprocessor.swift */, - 257E189F911971D52DBDE48BC1C1E15A /* CG+Hero.swift */, - 453926FDE2A14E9331703DDBDC616818 /* ConditionalPreprocessor.swift */, - BD98A7DFC586247105BF42357C1D0783 /* DefaultAnimationPreprocessor.swift */, - CA81A9A3E3507F358F27BDF304BC0366 /* DispatchQueue+Hero.swift */, - 677CB5190A4F82BCC5855687DEF55923 /* HeroAnimatorViewContext.swift */, - 446780B04D608B09D47E24281E6A213C /* HeroCompatible.swift */, - E2B7542F86812827C14DC12BE8A57E86 /* HeroContext.swift */, - 2516528EA09E7CD231C834B39296A773 /* HeroCoreAnimationViewContext.swift */, - 447AD4EC0FF95C0EAD6A8AA49BDE6D20 /* HeroDebugPlugin.swift */, - 0FC9ADEE2DE138212A2F26AD492DBE8D /* HeroDebugView.swift */, - 24050BC35848ED0F38F90C24E26BAC12 /* HeroDefaultAnimator.swift */, - CE3D99BA121318799420B4C4348DFEC2 /* HeroModifier.swift */, - 473B153076F6129FEDCC8AF916DBC489 /* HeroModifier+Advanced.swift */, - 60B1146E05DFCE81391E6899651366F6 /* HeroModifier+HeroStringConvertible.swift */, - A888C70B725197B4FA4ECD00BE73A52E /* HeroPlugin.swift */, - 7E96389B58DD12F7C74239518DB52B01 /* HeroProgressRunner.swift */, - 49AD9EDB1B8B115CE638A6F0B6EB0EFE /* HeroStringConvertible.swift */, - 3A23622B648D125D1E7BF78535BDF41A /* HeroTargetState.swift */, - 41187C836D0D604F434283FA68BCD3AF /* HeroTransition.swift */, - BEE7D769A9B9AEED6D80425FCEF54B01 /* HeroTransition+Animate.swift */, - 4FC2C807E4A8EDFDC6BB6762EBCF844F /* HeroTransition+Complete.swift */, - 0F8F592DA41CEC240EF6695ED2662DE6 /* HeroTransition+CustomTransition.swift */, - 4E3A7AAEE36CBDECF1055C443A0575D5 /* HeroTransition+Interactive.swift */, - E5655145C744E72BBEDB3E2A04D62432 /* HeroTransition+Start.swift */, - 0279792A35DC4D1FD1D08AD04FE3B7EB /* HeroTransition+UINavigationControllerDelegate.swift */, - C43AD585E967B27579A1C674C661E8C9 /* HeroTransition+UITabBarControllerDelegate.swift */, - 3401C421AC29EE4AC4AD32F868FAE34F /* HeroTransition+UIViewControllerTransitioningDelegate.swift */, - 6D40040B3B1C72707F85BAA01D20EEA4 /* HeroTransitionState.swift */, - 8A05BC00BE0BABAA3EE43D465CC597D2 /* HeroTypes.swift */, - F78F1986B6FB9B01427079A2273309AD /* HeroViewControllerDelegate.swift */, - 84D4F21C6F85E4A8A60778E030EB7927 /* HeroViewPropertyViewContext.swift */, - 9A18F7BBEF220A7D535EE0DE2191CCF5 /* IgnoreSubviewModifiersPreprocessor.swift */, - E4FBE195A95FA32DCF3A3699C72A4F24 /* Lexer.swift */, - 2B4386F35E31ED4BA59BC8DD9DF8FD9A /* MatchPreprocessor.swift */, - D059C30460EF6A5F266B69D6EB672351 /* Nodes.swift */, - 74D3DA2AFE6E79A53A4F6426B1504E68 /* Parser.swift */, - 4B48D9EBA83CCFC5C7FA79F2E11ABDB1 /* Regex.swift */, - AC01DA615B94B3792EA41F88391A032B /* SourcePreprocessor.swift */, - BFA52F4EB21B404297CB2ADE94C61B4A /* SwiftSupport.swift */, - 85BD19AF391B2457CF126FF1AABAE396 /* UIColor+HexString.swift */, - B06C565717776C46F99A68C54AAC08A9 /* UIKit+Hero.swift */, - 27312639F2D2D0F2704C99B65488243E /* UIView+Hero.swift */, - E54D54B42EEE4B1E961794F561707E59 /* UIViewController+Hero.swift */, - E2BEF5BCAD8F3159A8FA77BB3652884C /* Support Files */, + 7824CEED901DBC041F50F41067960178 /* AnimatedFrame.swift */, + F5083003B9DFE0CAE7D83ED108BF9E3C /* Animator.swift */, + 94B524AE311D3F143AB6F3B127710843 /* Array.swift */, + B9EA12A86172EF76AD727297D3D58157 /* CGSize.swift */, + 659B36EE505C05358C6398BF616360B9 /* FrameStore.swift */, + 0546F62D577AC6E2FEE035FA34DA0D03 /* GIFAnimatable.swift */, + A77FF259EE9D673D0019E8F3C36E6625 /* GIFImageView.swift */, + DB0082ABB38CC09099FE955D7AE3088F /* Gifu.h */, + 224FEAE76BB951C9A4A79F923264D087 /* ImageSourceHelpers.swift */, + 40ABE3826BE8C9C56726722208694836 /* UIImage.swift */, + 6B75E04EFAC58E3BE13D333CF5D2010C /* UIImageView.swift */, + DC6A816CAAC4D2406C25DBA9A92A2837 /* Support Files */, ); - name = Hero; - path = Hero; + name = Gifu; + path = Gifu; sourceTree = ""; }; - 4C01413EA54A89BC18D5037643D67906 /* lottie-ios */ = { + 380A96470A865D8B525799BD559CD7B2 /* Support Files */ = { isa = PBXGroup; children = ( - 3E475634FDCAAC8C9FC114DAD976670C /* AnimatedButton.swift */, - E28F9B13866075207299891CA97369D2 /* AnimatedControl.swift */, - 3829CA93B09504CEF70C04108564D614 /* AnimatedSwitch.swift */, - 6A14148E0EF778A4200A9E085383F347 /* Animation.swift */, - B774F0E7EFAA277B13CA6614AB358CF7 /* AnimationCacheProvider.swift */, - 18EEB34B1E6D89116ADA3EF5F50075B9 /* AnimationContainer.swift */, - A811440D33F6D61347428A57D51345BA /* AnimationContext.swift */, - E3ACB408BB814455D3604123C2C8D058 /* AnimationImageProvider.swift */, - 4B037156130FF5C44154D6EB75D7B8AF /* AnimationKeypath.swift */, - 655C64E7D4D0311056514AD3AE91ED75 /* AnimationKeypathExtension.swift */, - A355EB0A70C9476E0D35A7023833EBD9 /* AnimationPublic.swift */, - 3D41F821050C1A91400E4F174D11B3BF /* AnimationSubview.swift */, - A1BA16B2238DF4F163401120A3C527C5 /* AnimationTextProvider.swift */, - BF7EB0F0B7BC0D39B0852EA1E54D5370 /* AnimationTime.swift */, - 8E757E481718F15EC10DC45E9D96E437 /* AnimationView.swift */, - F43E686B8144B27D1A82E95C17E54A5C /* AnimationViewInitializers.swift */, - 20B7DCBE824E7298B12A7030E1951E9D /* AnimatorNode.swift */, - 5D2756087877B89EF0461EBDF8CC4D44 /* AnimatorNodeDebugging.swift */, - 5ED820EDDC07C4D8C2C403CC55FCDF13 /* AnyNodeProperty.swift */, - 32C89D66FDB939DBF7832119E4607AED /* AnyValueContainer.swift */, - DC2F73377C35B4F40F919E987664ADAF /* AnyValueProvider.swift */, - 46E824EC12CB5F5BD0A49260F95EE42C /* Asset.swift */, - 20943A79D1783916DB9375435C808E6B /* AssetLibrary.swift */, - 95CC2942D89DF86219D64AA9677A7B9B /* BezierPath.swift */, - 6426F4C99B2D6D1D839F901E3FB1EBB6 /* BundleImageProvider.swift */, - 0A6B694ABC58F1B5FC6755C4FC2FB71C /* CGFloatExtensions.swift */, - 57A6CDC7BAACD3CEA85284441314494B /* Color.swift */, - 4475A8D47DF16469681AC06F27D9102E /* ColorExtension.swift */, - 9A982AD019A67120ECE19BF7B33BB149 /* ColorValueProvider.swift */, - FA37E502DA92CC65B74F9D439F6A8E0F /* CompatibleAnimationKeypath.swift */, - 6624D9D73DFBE8C3D06F6C9D1C66B628 /* CompatibleAnimationView.swift */, - BEC980F5EDDD89CE409E739B8262CDD7 /* CompositionLayer.swift */, - 9F126F11D50BCBD88A95ACE8453BEF2D /* CompositionLayersInitializer.swift */, - 29D6EFBA83296028F7755E54B0BFC9A5 /* CompoundBezierPath.swift */, - FF35F19FD7685A43583BEB11D1E35D68 /* CurveVertex.swift */, - 1F4CE4F269D3F879476DF7B19317FDBB /* DashPattern.swift */, - B1CA5C413753FEE366AF80FBF062C422 /* Ellipse.swift */, - 2A8D29B3F3F7331870EE67C4098E0C06 /* EllipseNode.swift */, - AFC188DD6DAAD0B0C824782775AE2C3D /* FilepathImageProvider.swift */, - 35274263BB0557448084C99440A16301 /* FillI.swift */, - C0D15C8D74734BA9A21F526192F577BD /* FillNode.swift */, - E325FEF876ECD20B376B45E82CBE201B /* FillRenderer.swift */, - 60DC844F46DB0040682EEFE9DCFEFD91 /* FloatValueProvider.swift */, - 5AFA5E4BC0B21526FD846B16E63D0C66 /* Font.swift */, - 02DC0CD4C141440BBA368B28E891A876 /* Glyph.swift */, - 4F12353204D667A61E061E8334C9D478 /* GradientFill.swift */, - A8108EAC1913A190F9198EF2E4F59B9A /* GradientFillNode.swift */, - FD786847DBF7F1850BA7FB19350915E5 /* GradientFillRenderer.swift */, - DB3C89F392CC2E66A55C3B3E0ADB005D /* GradientStroke.swift */, - 67DF84AE4E94DCCD3E295F1E65C00BCC /* GradientStrokeNode.swift */, - 505C6F309445664C3B2F7FA60C42CB06 /* GradientStrokeRenderer.swift */, - 1FE350EAB069180AAC4F59D1875AF757 /* GradientValueProvider.swift */, - A1B581B98638CA802E6305DA735C4FDD /* Group.swift */, - 6C77432DC37C9C30296A71F74D11939A /* GroupInterpolator.swift */, - 5300F42D5BB3101E2BEC8F0A9B4A276A /* GroupNode.swift */, - 0705E90C724852A81A93C709DF64D8C7 /* GroupOutputNode.swift */, - 3604CBFB489DB5C1C97BECA152DA5486 /* ImageAsset.swift */, - 180CAF8298A31873A2E0EB21B79528F5 /* ImageCompositionLayer.swift */, - 1B229A6CB37459AD6BB465758D908AB3 /* ImageLayerModel.swift */, - 8A342D56848714B710A25DED88F72138 /* Interpolatable.swift */, - 7CB0EF8676117EB7FB3ADFEF4E60EDE7 /* InterpolatableExtensions.swift */, - 4AD097E821679606048EEB2B065BD050 /* InvertedMatteLayer.swift */, - 24C7DB4DC70C6670B8D7877D1782F7A9 /* ItemsExtension.swift */, - C07B615BB16F5AE5AAB00D785F6672FD /* KeyedDecodingContainerExtensions.swift */, - 0441B938B6549939D7D5290E10988202 /* Keyframe.swift */, - FC951E5DD8B35AEB5D5DFE42509D6C3E /* KeyframeExtensions.swift */, - 650CA88FCD3C5A49AE9AA7833311FF79 /* KeyframeGroup.swift */, - EC3B66579490F04AB6ABD717F27B0078 /* KeyframeInterpolator.swift */, - A3BE5D59A6EB4E0FE9779B52B1216F89 /* KeypathSearchable.swift */, - 52ED56F00AAC9DD52E24BBB9E6B52C37 /* LayerDebugging.swift */, - 6F994D55A20731E1F674A2077B1547EA /* LayerImageProvider.swift */, - 269B7FA630AC311F408FBF77544D9185 /* LayerModel.swift */, - C456FA698075381093F946C10BE10069 /* LayerTextProvider.swift */, - 77A5665B766192EF12C623A1DF1AAC1B /* LayerTransformNode.swift */, - 245B7C0EEED7E4547C48D4E691F6E3E1 /* LottieView.swift */, - C58880C77985DEA326E266D3755E4549 /* LRUAnimationCache.swift */, - 30A8A89AE886B02331194B6F8CBCC76D /* Marker.swift */, - E3BA6F6F2AE5D59ABD097843F01D9C7B /* Mask.swift */, - 7035B9BD72BCE17B4B22F241EE357D06 /* MaskContainerLayer.swift */, - D8BAFC2CAFAA7D53DE727DA077C84F4E /* MathKit.swift */, - DD5D3E2A23678994F1B5F1CAD77D10C9 /* Merge.swift */, - 93ABCC62A8097AE6C568CB5B6E3C16D4 /* NodeProperty.swift */, - 17F0E4406B42C5E4F690061802A78D6D /* NodePropertyMap.swift */, - EE19BE795C814CC1CA92836153DB35A1 /* NullCompositionLayer.swift */, - E25A6E0C38C7369F8E045A531F117BB9 /* PassThroughOutputNode.swift */, - E78D7900A593DF50A881EB0C84064D16 /* PathElement.swift */, - EA5F759EA14A2443A38FCC38D853CE62 /* PathNode.swift */, - CD657DABD40600F4DABD58202975C125 /* PathOutputNode.swift */, - 973C568B5DF6AF385F3EF8AC449E72BA /* PointValueProvider.swift */, - D4D32C4559A6AEB051C6FF08DE313EC2 /* PolygonNode.swift */, - DEAAA7129F8CA9143380598081678830 /* PrecompAsset.swift */, - 39E5F0CADFD84C8ECA6EACB6B3BC0BC2 /* PreCompLayerModel.swift */, - 1CD171275464ABA3806EAD0CF7ABF170 /* PreCompositionLayer.swift */, - 83AF6641123EC3D8EB312142B1FDDBFF /* Rectangle.swift */, - 3D2CE76EFB6B71CA5A6460A9C7DCA0F5 /* RectNode.swift */, - 5B0DC89C26D01DAA6990D9F62EC59B7F /* RenderNode.swift */, - DE9B4BF6BD9D539FC34C8CDDF8982C80 /* Repeater.swift */, - 0B6FD9F7D7E26DC773758FA89D977CFE /* Shape.swift */, - 3CE1CB03D427EA498C42C90BE1A0DE14 /* ShapeCompositionLayer.swift */, - C1A035837429F25C4107EFAB1F4C6742 /* ShapeContainerLayer.swift */, - 2E030D20E30B8258323F65CE4CA00659 /* ShapeItem.swift */, - C430503AFF3ED54F8ACC665182797DFA /* ShapeLayerModel.swift */, - 6FF66BC5918DB6E242EF5C903F935346 /* ShapeNode.swift */, - 6C2AD71AB99A562FA53C334E55B6CAFB /* ShapeRenderLayer.swift */, - D09BDDE9C1963F8938B3525BA5149EB1 /* ShapeTransform.swift */, - 4A1944D607C7CBB163BD0D04C204F956 /* SingleValueProvider.swift */, - 2BFDED3FE51323D1ABB36C6D0B5CFEE9 /* SizeValueProvider.swift */, - E24574BD3D3C5B7BB458B1C52311763C /* SolidCompositionLayer.swift */, - B3683B2E6C61310BED11FFE99838B0A2 /* SolidLayerModel.swift */, - FE6905BCE29153AC7239C8BFA001A5E8 /* Star.swift */, - 40FCB761F452D4FE33A1CC94F5DD59C9 /* StarNode.swift */, - B0F597D02D26A95807BE327ED2635096 /* StringExtensions.swift */, - 124A006E9E9B663652BF155DBB0F6FE9 /* Stroke.swift */, - CE92FD1A5D9B5C780ADDDC01664F9B77 /* StrokeNode.swift */, - A9EEB9B59C54774084F76F8553B98584 /* StrokeRenderer.swift */, - 2288607DE1F545DF2F2C2AB919EBC38F /* TextAnimator.swift */, - E5BF94CA3C97696DD82CC203CDC9BFDE /* TextAnimatorNode.swift */, - ACE1D8B933A38CCF3AB3ED377FEFA0B0 /* TextCompositionLayer.swift */, - 4A4E3C79ACAB61629F179C9BA61AC923 /* TextDocument.swift */, - 40D4BA2C71FF3979BC71A1DF19CF6BE5 /* TextLayerModel.swift */, - 78F802224D3AD7BC332090469AB6528A /* Transform.swift */, - D4DEABDD2CCB892B9FF34843A10CEE40 /* Trim.swift */, - 108AA82362AF6895906743282976BD65 /* TrimPathNode.swift */, - C5FFACF5B1C69F44601D1977B3C9D2D3 /* UIColorExtension.swift */, - A5D5E00E914738658E78CE8A848A5FA1 /* ValueContainer.swift */, - 6E8D307F0EE10AA4B48A8B77B741CB79 /* Vectors.swift */, - 1562E437DACE9DCC52412D5A5FA78FC5 /* VectorsExtensions.swift */, - F52D3FFB5925A27D74DAAC46F0C6A4C0 /* Support Files */, + 1CD7762A6B720DD53BF4427E79DDC096 /* Hero.modulemap */, + 9DE8C4781BD6E0EEBDC04E020A001A8A /* Hero-dummy.m */, + 1D6128EB6D071EAC3412CD04515D7D86 /* Hero-Info.plist */, + 497EA8811C5DFAFD54E302F998FEE957 /* Hero-prefix.pch */, + 2FA6722CE2435D57C7E8226401CAC58A /* Hero-umbrella.h */, + CE75C4A652A5AC82DE01E24CCF1C6D1C /* Hero.debug.xcconfig */, + D5D8BB5C9166879A528CADB3F40BE8F8 /* Hero.release.xcconfig */, ); - name = "lottie-ios"; - path = "lottie-ios"; + name = "Support Files"; + path = "../Target Support Files/Hero"; sourceTree = ""; }; - 50C19C3351B55250D458CE90B46A45E1 /* Gifu */ = { + 39B29969DF039F141F0EDF3FD3360687 /* Hero */ = { isa = PBXGroup; children = ( - C010473BCC19598AE30D53C31572E0B1 /* AnimatedFrame.swift */, - FB6E7226DD215F0DBEDD6EB268273FDF /* Animator.swift */, - 0883C671CA0FE6019CA8FDF102143143 /* Array.swift */, - 492667D9C8A9D578BC4749000DE9A477 /* CGSize.swift */, - 2A18725E8DAC7FCEBBE4BEFD00CB0CA7 /* FrameStore.swift */, - C22612156D934442BC9FBAD1405848B3 /* GIFAnimatable.swift */, - 71A8823BD6868203145884BF25600778 /* GIFImageView.swift */, - 0C9DCED2C052E48BD5EC6DB4B7755D16 /* Gifu.h */, - 3A58DA1374B47A63918C3316704C2D20 /* ImageSourceHelpers.swift */, - E3093D912FA21BCB1A5E436BE8946EFA /* UIImage.swift */, - AB4642B19D31DD93987533F0D20769EF /* UIImageView.swift */, - 9FD9D75CCC9844C1E1501935475B4D5D /* Support Files */, + 22E0E189BA6B31B07C79D37F6D4A6B64 /* Array+HeroModifier.swift */, + C4290D4E572C61BEEAFFBE4A557F6D48 /* BasePreprocessor.swift */, + B324398710B905ABB9E6C6CABC4A5267 /* CALayer+Hero.swift */, + A56CCBC4E8490AF44731A4BAF67D7C0F /* CAMediaTimingFunction+Hero.swift */, + 05345E1912FADE8AC5544FE6A7EEE2A6 /* CascadePreprocessor.swift */, + 952DBC082BDAE504381DFADB78A3D87F /* CG+Hero.swift */, + BF9CF1FDE95BDFC60BCFAA1874A1E26C /* ConditionalPreprocessor.swift */, + 665742FE35FFB4F5DE953C515AF459E9 /* DefaultAnimationPreprocessor.swift */, + 38851A93E8600EA95BCA5B852C280169 /* DispatchQueue+Hero.swift */, + 769A03B298F21F7E959334296BA4E287 /* HeroAnimatorViewContext.swift */, + 03AA92EC464F4189E34C39819F98ECA4 /* HeroCompatible.swift */, + E059027A1F2A81B724F2994020FFCEB9 /* HeroContext.swift */, + C9214A31AD7444C2BD1F0B07F5DDFE83 /* HeroCoreAnimationViewContext.swift */, + B14AEBC33E0353A5B0FC8CF01A42E502 /* HeroDebugPlugin.swift */, + 1711A1A47B5D268070A1395B62A91E4A /* HeroDebugView.swift */, + A9BB6F59910B58618E013E74041DE877 /* HeroDefaultAnimator.swift */, + E379265F1174BBB991BA9633F46CC668 /* HeroModifier.swift */, + AB1EED7D06129BBBC1BC7F10B41A849E /* HeroModifier+Advanced.swift */, + 8FC0A93553F657711789A1FE28633A37 /* HeroModifier+HeroStringConvertible.swift */, + 0D8C8D5E48F908CFB65B78D3C25DD61A /* HeroPlugin.swift */, + 3723BED1B3CEC03D58E82D7658EFE9E4 /* HeroProgressRunner.swift */, + 1FE398514CCA2F524E12903418D783ED /* HeroStringConvertible.swift */, + 0F345B81C90DB3A75444DDAD096CBE1F /* HeroTargetState.swift */, + 4B0E0E5A8E3B44F11E9C8B64DFBCD947 /* HeroTransition.swift */, + 435D114521A8366B4235472FE9A75F3A /* HeroTransition+Animate.swift */, + D75A3D07FB01935D6868AB8DF5657362 /* HeroTransition+Complete.swift */, + 360E579DF310BD5FE34FA9F3BC909318 /* HeroTransition+CustomTransition.swift */, + 742128E7BBCFBBA84B9D0E8FC025033E /* HeroTransition+Interactive.swift */, + 401B193551F64F81DE2B5EBC55330CE5 /* HeroTransition+Start.swift */, + 22CCCAEC9CA820151EDA73215AE1BF54 /* HeroTransition+UINavigationControllerDelegate.swift */, + 57F7EF41D09898B7B1A6A9F7E3FFB5CA /* HeroTransition+UITabBarControllerDelegate.swift */, + AD9434751E02B3494AEEC4FF32C9DE9A /* HeroTransition+UIViewControllerTransitioningDelegate.swift */, + EFD6A6497CD46F9CB862B7CF1B573E05 /* HeroTransitionState.swift */, + BDB1569461304251D47F969FF92E5E70 /* HeroTypes.swift */, + AB5690A728AF491219517B0670F99EA4 /* HeroViewControllerDelegate.swift */, + D056AADCCA626164B0717A05C54B2A2A /* HeroViewPropertyViewContext.swift */, + 0220713FC998F6FFC8B7AF7B9A81EC40 /* IgnoreSubviewModifiersPreprocessor.swift */, + 1E938F1DF2FA738B72D5090A06A68B26 /* Lexer.swift */, + 2BBA8C40D5DC75A5618B4B94527692DA /* MatchPreprocessor.swift */, + B05CA7BD4E5D4BB79182B4F983B35111 /* Nodes.swift */, + A141C5F32F2DE0DD33D856F501B3E605 /* Parser.swift */, + 84CBFEC499263EF9194C83BA3B8AE3E0 /* Regex.swift */, + C32602458EE66907CD7D748BF7D3C6F3 /* SourcePreprocessor.swift */, + 48E9BBE9BA77026E72CFC3788223078B /* SwiftSupport.swift */, + 1DAECA16252350D9555330CFAF43480E /* UIColor+HexString.swift */, + 26F939B85A5BB48B6351423BBC06510A /* UIKit+Hero.swift */, + E4C8EE2A69ADFB912FE5BF82344A8B23 /* UIView+Hero.swift */, + 8F2AE8D6F3983AD7A19FE36AA695BD8E /* UIViewController+Hero.swift */, + 380A96470A865D8B525799BD559CD7B2 /* Support Files */, ); - name = Gifu; - path = Gifu; + name = Hero; + path = Hero; sourceTree = ""; }; - 50EED82EBD2A85F3153EDD4B7FA669B7 /* Core */ = { + 48A7A00F5F7D4921E66A4BA66938D417 /* Support Files */ = { isa = PBXGroup; children = ( - EB9B2E999C69883095CF7DFC281DC1DC /* AnimatedImageView.swift */, - 6E2693DE697BE8291EF2455D0EF1425E /* AuthenticationChallengeResponsable.swift */, - 4563D3F90CB9D33C7D33C1FD4B9F9D41 /* Box.swift */, - 9355CFF52DDD9FA1263500B04FBDC4FC /* CacheSerializer.swift */, - DF2B5DCFE2826CD4CD71E3AE40DC4B96 /* CallbackQueue.swift */, - 52A60C90A7A35CBD76176ABC74CC30E2 /* Delegate.swift */, - C53D97E729F9F554D667F21685701DFF /* Deprecated.swift */, - 48FFCA2B8AE0FB6FE918FE14B7AFEBC6 /* DiskStorage.swift */, - 0B0085D12F8A4825C1E8D1E23A493E22 /* ExtensionHelpers.swift */, - CAA6173E4AF36F3B0388C2CAD4A526EF /* Filter.swift */, - 4C1C9CA1E07FAEF750ADE09077350B96 /* FormatIndicatedCacheSerializer.swift */, - 80805638C41E81420E0A8A7A09111221 /* GIFAnimatedImage.swift */, - C62890DC84AB9F21651C7F64F634EC13 /* Image.swift */, - 3833A2B08E0696D89E25BABEBF02B8C8 /* ImageCache.swift */, - 2D376F7C69C5C26C3D64F36C66CD1FE2 /* ImageDataProcessor.swift */, - ED55040321D5E86D5A883536230490F4 /* ImageDataProvider.swift */, - EE607DDA6F91CD653AC6DBE994E067AE /* ImageDownloader.swift */, - BF1E95F29D25D6B31272BE44A309DCDB /* ImageDownloaderDelegate.swift */, - 316F2144A1F30CF1C56EEB08652EC205 /* ImageDrawing.swift */, - 5F3B768E60092801AC1E6310089DD403 /* ImageFormat.swift */, - 26AA90934DE680B1EF2D2B7193E4E6F4 /* ImageModifier.swift */, - F946A68847800041E723FABE055948B4 /* ImagePrefetcher.swift */, - 246F1D9261D05311F7B471FEA2134421 /* ImageProcessor.swift */, - 929E49C60D1DC75879C49663C30EAB17 /* ImageProgressive.swift */, - 797BCF4BAC1AD2E9950A021FB88A1740 /* ImageTransition.swift */, - F5A70E1A6C7F324FA2D68F6EE89A9945 /* ImageView+Kingfisher.swift */, - 5E2890B626AE2CB46B1F06C4B348D54D /* Indicator.swift */, - 2FFEC9B202289154EB69B58BC39315F3 /* Kingfisher.h */, - DCD3570B32B821874EDB601250CE2229 /* Kingfisher.swift */, - E6EE933A536A33B878ED0F46F36E15ED /* KingfisherError.swift */, - 223E1D8F4DCDE93C86FB257200DC3740 /* KingfisherManager.swift */, - 412B71CEDA1576AA62F6E36C4A9107B9 /* KingfisherOptionsInfo.swift */, - 3FA6007B2F0A62BD616983FE0D3790AA /* MemoryStorage.swift */, - 04AC84D2CF022DA5B2D0D3F69D540BF8 /* NSButton+Kingfisher.swift */, - AF673F8DBD66C9C0D91590E2EF3290CE /* Placeholder.swift */, - E581F274A660A6B6CD8FF0032D61B3F2 /* RedirectHandler.swift */, - E9235FB90C3916C506FEFBB2BAA89F77 /* RequestModifier.swift */, - 875EFA6AA14D883603DCD95D97937311 /* Resource.swift */, - FE57F29762BA21F45F0C5ED5A0B8E577 /* Result.swift */, - E9FE7EA90977AB410B6E91A7CC15FF78 /* Runtime.swift */, - A090D77A87D83DCEFA534DD045DF2347 /* SessionDataTask.swift */, - 1FB5C3F6EDF5E85028BCF9AE67A8CB15 /* SessionDelegate.swift */, - 844FE93D70A8C7C1F2F4A3B9B3A18C3F /* SizeExtensions.swift */, - 0553AF0BE860EDBE760D530918B1C79B /* Source.swift */, - F9007BD2F9279E0EE43C2B7B2AB52582 /* Storage.swift */, - F66B39F82692E17B5379C11068DD63D3 /* String+MD5.swift */, - 2272308A7922A310F7DE8E45D67CEC8E /* UIButton+Kingfisher.swift */, - 9AF4FF0F45A1CEF90CFFA80C58786CA1 /* WKInterfaceImage+Kingfisher.swift */, + 7973220E631A8E23930F3AA6E3719F4B /* lottie-ios.modulemap */, + BDD9338BE8682E8B0D48AB7197027883 /* lottie-ios-dummy.m */, + 111831C8F13D0E83B7A59E069E9B4D65 /* lottie-ios-Info.plist */, + E1A8271D9EABA24114E77587C6654ECD /* lottie-ios-prefix.pch */, + E0AFA4FEF927174FFC1FFB21165B8A89 /* lottie-ios-umbrella.h */, + AD1B4F60C6A461E17DC213007C0B578C /* lottie-ios.debug.xcconfig */, + 3263E1E51F9187E0C1D91C2EBAB867A7 /* lottie-ios.release.xcconfig */, ); - name = Core; + name = "Support Files"; + path = "../Target Support Files/lottie-ios"; sourceTree = ""; }; 54C57DB794B05EE0054FC71B1466720A /* iOS */ = { @@ -1120,87 +1024,26 @@ name = iOS; sourceTree = ""; }; - 59E6F1604E9124E30DA1813547B389A3 /* Alamofire */ = { - isa = PBXGroup; - children = ( - 071FF45EF8C09654F8A66520C0C5C1A5 /* AFError.swift */, - B001956AB9B8A2EDD85322EBB93D7148 /* Alamofire.swift */, - AA411615B08FB03608F45D0DC91B1DA8 /* DispatchQueue+Alamofire.swift */, - 6357018B437DFB007BA6EB76CBD1B42F /* MultipartFormData.swift */, - 49A0ED460A7DDC78F99A35926AB8574B /* NetworkReachabilityManager.swift */, - 2590E12388F3382BB244E5FFC78893E6 /* Notifications.swift */, - 9C36A9793EE005393658DA65C96F0C61 /* ParameterEncoding.swift */, - 0FB2E0BD3BAE331A3707A8AE547D3A3D /* Request.swift */, - 13AF951E958AB1715286FCD68C5C1F61 /* Response.swift */, - 6849CDCB176560C2EE73F0037E25A1D2 /* ResponseSerialization.swift */, - A068984407DEBF395DDF99CF58A5CCE7 /* Result.swift */, - 71FF99816844AF967A15BB1A60C90687 /* ServerTrustPolicy.swift */, - AF3A3921C286EC095F0308741597FCCE /* SessionDelegate.swift */, - A0039145C4B3BE74F56666023975E38D /* SessionManager.swift */, - B400F3695B742424DBB9ED2183534EFD /* TaskDelegate.swift */, - FF125280632ACB9C9AAB519BA1EB6A67 /* Timeline.swift */, - 77796B2696542BB2B8DCEAF680570BD8 /* Validation.swift */, - DA35FAA0872980AAD5163968CE485965 /* Support Files */, - ); - name = Alamofire; - path = Alamofire; - sourceTree = ""; - }; - 661C0481FE3B962EC92E66260E5FF598 /* Support Files */ = { + 563690D46CB54CF05B2963C52FD0B5D1 /* Kingfisher */ = { isa = PBXGroup; children = ( - 85EEDA65FBD8AF4308F17EBC7813CA9E /* Then.modulemap */, - D34021A364FDFF09017290D02B46C4FD /* Then-dummy.m */, - 7FDA0E8E7FB0C5D2989A9441C7D54A7B /* Then-Info.plist */, - D7AA1B6475956E3028F34EDB4360DB57 /* Then-prefix.pch */, - 0440521B75FA9DD1796E5E604D4FFF08 /* Then-umbrella.h */, - 7C8C70F375F98A5F529BD51CF839B5B0 /* Then.debug.xcconfig */, - 4348CC8E17FD4325B66D6E143D6355C7 /* Then.release.xcconfig */, + DA46E79181CF9A3F3BB217BC29EBB3E2 /* Core */, + 5F3B92B8789DA980FF4F82840E6F0D57 /* Support Files */, ); - name = "Support Files"; - path = "../Target Support Files/Then"; - sourceTree = ""; - }; - 72AF33B56D7CBEDEA2D06BE31531C73E /* Products */ = { - isa = PBXGroup; - children = ( - 5D797E9A5C5782CE845840781FA1CC81 /* Alamofire.framework */, - 40E5F8D9277E714962AFA02550F15F8A /* Gifu.framework */, - 13E778F4B833EE5D7ABE882406A8215E /* Hero.framework */, - C3F44C782D64D7EB20B61CE3844EBFAD /* Kingfisher.framework */, - 51BA97E8B5085EFFB47BC9C0B785CEA7 /* Lottie.framework */, - EC75B334BE536A1DCFF91A5AD585351B /* Pods_Mongle.framework */, - 979486118B3E90C08386079D57962701 /* SnapKit.framework */, - 9317E4947CA2FE1B5D5999034C09CCA7 /* Then.framework */, - ); - name = Products; - sourceTree = ""; - }; - 757F59E2B6D35C1A392B55CB1710D4B6 /* Support Files */ = { - isa = PBXGroup; - children = ( - D04FE218E0E454802C8AEEF62C16CDC1 /* SnapKit.modulemap */, - 07BE86A3DE059BAFC0C7C9C5EFF174EE /* SnapKit-dummy.m */, - A368399878F675925DB1466C2E83AC72 /* SnapKit-Info.plist */, - C5B8D661EC11DA07D2E87765A0964733 /* SnapKit-prefix.pch */, - 04D3038CA7C7BF6D94C857338F432C70 /* SnapKit-umbrella.h */, - 4C37B1B150715BEBFC75DF955658D601 /* SnapKit.debug.xcconfig */, - 71122F41F5A756AE246A28AFE4A4CB1F /* SnapKit.release.xcconfig */, - ); - name = "Support Files"; - path = "../Target Support Files/SnapKit"; + name = Kingfisher; + path = Kingfisher; sourceTree = ""; }; - 7AD0CC49522B544486BF2CD50A827D5B /* Support Files */ = { + 5F3B92B8789DA980FF4F82840E6F0D57 /* Support Files */ = { isa = PBXGroup; children = ( - 8AA6CBEB371E9DBF7628C3D92C056416 /* Kingfisher.modulemap */, - 899A2A241A114B15B66BB0C2000B5142 /* Kingfisher-dummy.m */, - 0EC2C1D5CD96AA143618E57113052E03 /* Kingfisher-Info.plist */, - 1C577DF1D098794A17D800905F5115F3 /* Kingfisher-prefix.pch */, - CBC0C86F5B7FC401C3B67BF6757A66D1 /* Kingfisher-umbrella.h */, - A424EA4F6A37368681CD5129D2FD2415 /* Kingfisher.debug.xcconfig */, - 1ED1F31B1C05169344553F944C9A1FB7 /* Kingfisher.release.xcconfig */, + 0A41389C63CDFFA452FF883F6D5EFDDD /* Kingfisher.modulemap */, + 75D41B8987BC1633DE0E6B6E0A86A883 /* Kingfisher-dummy.m */, + 0FDBC2F4B4BA7AC0D3925179CDF6BE98 /* Kingfisher-Info.plist */, + 9E1A882A71B8E8D4AAFC024DA979BFE5 /* Kingfisher-prefix.pch */, + A853FB538BC7514205AD06C644DBFFFA /* Kingfisher-umbrella.h */, + 66306012030817A4C465BA79C3E85911 /* Kingfisher.debug.xcconfig */, + 9DED11B1663BA72CC11C38FB5F31882D /* Kingfisher.release.xcconfig */, ); name = "Support Files"; path = "../Target Support Files/Kingfisher"; @@ -1231,92 +1074,71 @@ name = Frameworks; sourceTree = ""; }; - 9FD9D75CCC9844C1E1501935475B4D5D /* Support Files */ = { + 830DDD7743E73826DC5F6ED51012705E /* Support Files */ = { isa = PBXGroup; children = ( - 96F4338C29EEFC70BAEF9FC901634D59 /* Gifu.modulemap */, - 99C282E206A09D2C14638A919A1BDF11 /* Gifu-dummy.m */, - 894627DE9DBE0A822872BF635723EFB5 /* Gifu-Info.plist */, - C3D1E438149E8B950B3BFCEB475889EA /* Gifu-prefix.pch */, - DA2EFE9A98A03E9C96516C7B09563541 /* Gifu-umbrella.h */, - B19FE93EEE3B70343B88D8D59D6716FA /* Gifu.debug.xcconfig */, - BDD31A99041ECFEA7A205ADFBD4DF778 /* Gifu.release.xcconfig */, + 011CC883EB414D61AE8817728A69D28E /* SwiftyGif.modulemap */, + C20A85B9E699E8EF66D73A07A31FE4DF /* SwiftyGif-dummy.m */, + 2A0AB08E9A473D7064967180EAD7C861 /* SwiftyGif-Info.plist */, + 6A7D1E3F70CD72E004BE7ADE4D0319F0 /* SwiftyGif-prefix.pch */, + C709578B61E477BE12C8E85C12BBCE22 /* SwiftyGif-umbrella.h */, + 17E322C184551275088D6A5B21275B99 /* SwiftyGif.debug.xcconfig */, + 9E5D58C101F41206328D174AF79F860C /* SwiftyGif.release.xcconfig */, ); name = "Support Files"; - path = "../Target Support Files/Gifu"; + path = "../Target Support Files/SwiftyGif"; sourceTree = ""; }; - A0CDE89162A49A836BDF510953F26CEB /* SnapKit */ = { + 90785E8A5BEA28DE21C0FDFE060AE001 /* Support Files */ = { isa = PBXGroup; children = ( - A3DE9EB3EB0C767FE5EA036F57D3544F /* Constraint.swift */, - 8F859905097E59EE091787A09B77E683 /* ConstraintAttributes.swift */, - 899EFBBF41E7BE7BE52AE6F9F755BF70 /* ConstraintConfig.swift */, - 986A4391C8E9CEB79F694890E6FB459C /* ConstraintConstantTarget.swift */, - 4CD21F7383304A32194C44FFDE666B47 /* ConstraintDescription.swift */, - DFE8253E72EBFF5CA7EDAA7F7256D35D /* ConstraintDirectionalInsets.swift */, - F15CD17D0339574EE3C13D80D3094C08 /* ConstraintDirectionalInsetTarget.swift */, - C939BFB9F8361B282D4D820AD8593814 /* ConstraintDSL.swift */, - 52F52320CC5AEF2A1B4EB276E0224CEF /* ConstraintInsets.swift */, - C451F4BC2C07443144E4C0F40B905B32 /* ConstraintInsetTarget.swift */, - 684A362C2ED39405E4AE9977DF65C87C /* ConstraintItem.swift */, - 68CEEF8A88D00701D13E2560EBEE0DE6 /* ConstraintLayoutGuide.swift */, - 140F0D33B7F03BC8647A3D98FB1DED77 /* ConstraintLayoutGuide+Extensions.swift */, - 4FB41D16903B528D9D1BC3FC08A18CD4 /* ConstraintLayoutGuideDSL.swift */, - AC86DD905EAD9E909F52FFE3660D7913 /* ConstraintLayoutSupport.swift */, - EE781F9515B9CF4462A0607DC670FC96 /* ConstraintLayoutSupportDSL.swift */, - 7618E8995BFE52B1460B291B234C31D2 /* ConstraintMaker.swift */, - EBA5B434D1179DE89070110E1CF2FF41 /* ConstraintMakerEditable.swift */, - 766EDB5BAB4C2C3EA185006A7C01EC4D /* ConstraintMakerExtendable.swift */, - 4DE6CB2968096E09D5FD742BECDB7ACC /* ConstraintMakerFinalizable.swift */, - 1CCF5E4C8E6D4A66C822174648FFAF64 /* ConstraintMakerPriortizable.swift */, - F53DD8CFFF90A15E5ED253F0407E768A /* ConstraintMakerRelatable.swift */, - 84ABDD537DFBD57D37DBCAEAF9A161DC /* ConstraintMultiplierTarget.swift */, - 71997FB94C15A062768AB1996B30DA70 /* ConstraintOffsetTarget.swift */, - FEE6A9654A4B6D8F49F043331E2AF37E /* ConstraintPriority.swift */, - 26519E36A86A6C8D1F382A04FDDAC9A5 /* ConstraintPriorityTarget.swift */, - 67FC12F181934B0294DE81FE69611264 /* ConstraintRelatableTarget.swift */, - EA986D956CB8AB3D19255837DA4EEC02 /* ConstraintRelation.swift */, - 5DA077FFDC2B3A5B5720EC5324DF9F28 /* ConstraintView.swift */, - AB7E2076C7078B1BA9665F0AF3322DF4 /* ConstraintView+Extensions.swift */, - DF87B1DD8CF49D30FD4E9DE29F096B59 /* ConstraintViewDSL.swift */, - 1B2E294BABE76C8E6BDF8CEA0F8B4C19 /* Debugging.swift */, - 673781A66E657DB9CA3FF3B6125E25D7 /* LayoutConstraint.swift */, - 98C6C28A0BAFFA0B2B605258AB1C7FB0 /* LayoutConstraintItem.swift */, - 9C0D43993F823C5AEBF1399A678302C9 /* Typealiases.swift */, - F9659244B6C8DA6D0F620406FD0A2E97 /* UILayoutSupport+Extensions.swift */, - 757F59E2B6D35C1A392B55CB1710D4B6 /* Support Files */, + 31046C6D83DFDC72B8EF4F2D112379F1 /* Alamofire.modulemap */, + DFC4C981D85631FA9081775B4FFB3518 /* Alamofire-dummy.m */, + 25D8758AACA04235594FFC84C91E6A10 /* Alamofire-Info.plist */, + B75E6B0D90556836AF8B77DDCD9824BF /* Alamofire-prefix.pch */, + E00689770CB4C211E29879F2E2510594 /* Alamofire-umbrella.h */, + 1B7115AA511882B18AE2B1C8D570169B /* Alamofire.debug.xcconfig */, + 1ECA06CC34CFDA96C8C37110FB694EAB /* Alamofire.release.xcconfig */, ); - name = SnapKit; - path = SnapKit; + name = "Support Files"; + path = "../Target Support Files/Alamofire"; sourceTree = ""; }; - BB46C4E867E845E0EFF9C0721CEE1FEA /* Then */ = { + 92E7CACB488FBB8C86244844A92FBCB1 /* SwiftyGif */ = { isa = PBXGroup; children = ( - EF2AA24C52B3840A52156F27065D69FE /* Then.swift */, - 661C0481FE3B962EC92E66260E5FF598 /* Support Files */, - ); - name = Then; - path = Then; + 4A908CA40BDEB680E7992F4EE6FD27CF /* SwiftyGif.h */, + 5B5151528F1FAE0CCAA0DC54ACD89DE6 /* SwiftyGifManager.swift */, + 40C1D2F592535CE8272703DBA6809881 /* UIImage+SwiftyGif.swift */, + 72E31793804713978D3D4EEA476FC3FC /* UIImageView+SwiftyGif.swift */, + 830DDD7743E73826DC5F6ED51012705E /* Support Files */, + ); + name = SwiftyGif; + path = SwiftyGif; sourceTree = ""; }; - BB8AA6D851B873AA66232CAA1098BBDB /* Targets Support Files */ = { + 998A3AF19024134319D220A4E2034BB2 /* Products */ = { isa = PBXGroup; children = ( - 7FAA72E4221CFA130A62095E134FD184 /* Pods-Mongle */, + 5D797E9A5C5782CE845840781FA1CC81 /* Alamofire.framework */, + 40E5F8D9277E714962AFA02550F15F8A /* Gifu.framework */, + 13E778F4B833EE5D7ABE882406A8215E /* Hero.framework */, + C3F44C782D64D7EB20B61CE3844EBFAD /* Kingfisher.framework */, + 51BA97E8B5085EFFB47BC9C0B785CEA7 /* Lottie.framework */, + EC75B334BE536A1DCFF91A5AD585351B /* Pods_Mongle.framework */, + 979486118B3E90C08386079D57962701 /* SnapKit.framework */, + 7AD67EFB9A7864151301DC2890207AA2 /* SwiftyGif.framework */, + 9317E4947CA2FE1B5D5999034C09CCA7 /* Then.framework */, ); - name = "Targets Support Files"; + name = Products; sourceTree = ""; }; - C13179E10C6809FCDA51132EE55EB56F /* Kingfisher */ = { + BB8AA6D851B873AA66232CAA1098BBDB /* Targets Support Files */ = { isa = PBXGroup; children = ( - 50EED82EBD2A85F3153EDD4B7FA669B7 /* Core */, - 7AD0CC49522B544486BF2CD50A827D5B /* Support Files */, + 7FAA72E4221CFA130A62095E134FD184 /* Pods-Mongle */, ); - name = Kingfisher; - path = Kingfisher; + name = "Targets Support Files"; sourceTree = ""; }; CF1408CF629C7361332E53B88F7BD30C = { @@ -1324,55 +1146,297 @@ children = ( 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, 8275CCB4E8732497B1021FCBC240F3C2 /* Frameworks */, - 076898E6D48141459216346783ED975C /* Pods */, - 72AF33B56D7CBEDEA2D06BE31531C73E /* Products */, + D908F336C5E29897F5075706314E0D3C /* Pods */, + 998A3AF19024134319D220A4E2034BB2 /* Products */, BB8AA6D851B873AA66232CAA1098BBDB /* Targets Support Files */, ); sourceTree = ""; }; - DA35FAA0872980AAD5163968CE485965 /* Support Files */ = { + CF4D5FA14C36CB35C3020BB3C42829E0 /* Alamofire */ = { + isa = PBXGroup; + children = ( + F1C3A5AFC84EE5557FB94D0B2F192CF0 /* AFError.swift */, + 48BA3ECBE79D5E0F41DD627AA0E97FE1 /* Alamofire.swift */, + FB7A2ABCFE601EFFCC3996620F4734DE /* DispatchQueue+Alamofire.swift */, + 44074700DBEC9F0B36B74D3A5A5BD018 /* MultipartFormData.swift */, + 7027340383853BC35EC4BC80CAB5838F /* NetworkReachabilityManager.swift */, + 5F2DA33500417AA67A8E9C8526CFD930 /* Notifications.swift */, + 52A762AA873FBE4F5C1995A0C3AAB1C6 /* ParameterEncoding.swift */, + 981AF4716C9F1F8B20B6E3B7FF5FA8AD /* Request.swift */, + 68AB181DD00FE469BE9C35E037C6349E /* Response.swift */, + BB6D0A7F55BC2AC67579DD4F50323457 /* ResponseSerialization.swift */, + F7A7EF09B0A64F62E7463878B3041359 /* Result.swift */, + 3470AA58A9EF113F22CA718AC356BFD6 /* ServerTrustPolicy.swift */, + E2F36E2551F8B6DF54618634C6CD59AA /* SessionDelegate.swift */, + 955CFD43DC00688DEA877F3CBBC714CB /* SessionManager.swift */, + EA410D39487F4FB4430ADDA4F50F4D9F /* TaskDelegate.swift */, + 1E62546DDC19A5383A73D79FBC2AC149 /* Timeline.swift */, + B6BB02B9DA776C36719D93952CFC7F57 /* Validation.swift */, + 90785E8A5BEA28DE21C0FDFE060AE001 /* Support Files */, + ); + name = Alamofire; + path = Alamofire; + sourceTree = ""; + }; + D48E9FDF3F6A4ACCEFC0EFD8952D0CEE /* lottie-ios */ = { + isa = PBXGroup; + children = ( + AF807D1B7747273DC54E06397B94C106 /* AnimatedButton.swift */, + BD618F46724A1666C518E2ADCF4AD180 /* AnimatedControl.swift */, + 712906F3B7A734869E9909C96534F21A /* AnimatedSwitch.swift */, + 3C2852231F51A60C44E4394A18A042F8 /* Animation.swift */, + D0EA5567962FFE6B5311975F2ED52554 /* AnimationCacheProvider.swift */, + E141DFABC8037F0047CC698D0F2D3FB3 /* AnimationContainer.swift */, + AE389AE913732C020CBFE3C00E5264AF /* AnimationContext.swift */, + 0247DA5A28881C240200017C7B3B536C /* AnimationImageProvider.swift */, + CB7468DCBED0EA992AD77CAEBC086708 /* AnimationKeypath.swift */, + D61233EF578C97AA5039D594F9F5CE09 /* AnimationKeypathExtension.swift */, + F8CB6AE60D857F62089B7A2E3B0B9E0C /* AnimationPublic.swift */, + 92B80B98731140BDD6643E1287988359 /* AnimationSubview.swift */, + BB77B4854A336E6261DBB89A4A16A0F3 /* AnimationTextProvider.swift */, + A0786E588BCB8A4DFCC187386F6AF122 /* AnimationTime.swift */, + A5F4932372F534D3E11A90F5340339EA /* AnimationView.swift */, + BD4D05D672FB3FD30A3891BE99A27DE5 /* AnimationViewInitializers.swift */, + 92CE64AA37A41530E11D9547D710D7A8 /* AnimatorNode.swift */, + BC046D42167D1DBDBA2817B0CD6C1998 /* AnimatorNodeDebugging.swift */, + AB32BC3C77A1A5C386A623BA74D206F2 /* AnyNodeProperty.swift */, + 872E0B6781EA4242C78B11DE3D168327 /* AnyValueContainer.swift */, + 8F06B97081FC9C2BF0CADB8E9E200958 /* AnyValueProvider.swift */, + 684B7E992BD8B23A89EE0921AE3AABC1 /* Asset.swift */, + EC18BCE8CDF5810DD049360ED94CC3DC /* AssetLibrary.swift */, + FE4B2846E6F905AF49262F8C03C52D28 /* BezierPath.swift */, + 0B85C88F9E602C9D1820A56D4294B6F9 /* BundleImageProvider.swift */, + B577BC193F89D62CF20A89880DF35438 /* CGFloatExtensions.swift */, + 6FC9184F9DC31DE1DD70BBDCA52FB71C /* Color.swift */, + 0DA1B156D35301CD72B0D02B8F89C484 /* ColorExtension.swift */, + 093BC7D568FAC78FC0B8F41A988E1658 /* ColorValueProvider.swift */, + D615BA6079E76006013AC5E03598BDFA /* CompatibleAnimationKeypath.swift */, + 12B33324DF58299226FE840CC9C2495C /* CompatibleAnimationView.swift */, + F4B7740E37A8CF54B9CD448BEABD2828 /* CompositionLayer.swift */, + 000146338C8A7FBC5D88EC0E239828BC /* CompositionLayersInitializer.swift */, + AB73111C9B867509424025701D1D84AE /* CompoundBezierPath.swift */, + F9D6C6C58E3748C7E7BD07AD918C4965 /* CurveVertex.swift */, + EBA28AEBE0E147DB04A5F9EEF174A31C /* DashPattern.swift */, + DEEE51859B006080C208D45C5D406E6F /* Ellipse.swift */, + 7A8DA915234FA8B60124A780F243A4D3 /* EllipseNode.swift */, + 1DB5650797823808C142040D15B4C740 /* FilepathImageProvider.swift */, + 663CCC735D6F362B207E9F9C36CF367D /* FillI.swift */, + 2D66EE4BF18BA2F6D4B91513D3F1502A /* FillNode.swift */, + EA59BA7E2D8854E2F262B1031A59591F /* FillRenderer.swift */, + DF3FAEBAD4988FD2AF29F7F9580B7B0C /* FloatValueProvider.swift */, + 211C3B6A3E0F485D8FCA63C212B47066 /* Font.swift */, + 653E6DAA02A9822A65A4985354FC82E9 /* Glyph.swift */, + F0EAA2985C06B97BBCF5D02CDE5E708C /* GradientFill.swift */, + ED9325990D2E83DF78852C2CBDDE6320 /* GradientFillNode.swift */, + 3B9215019B3D64439F99DC3BF22189DB /* GradientFillRenderer.swift */, + F9C5EADD0E9733283CEE351679C52A84 /* GradientStroke.swift */, + 3C254E817B143B007A2E644AF64CAE7F /* GradientStrokeNode.swift */, + 83B12DEF62413484AF8A5EE11A24A441 /* GradientStrokeRenderer.swift */, + F7EC6FB51B4244CCD7D86161F9C8213F /* GradientValueProvider.swift */, + 08468EADC48065784EE417256A3EC8A4 /* Group.swift */, + 9778B944CB05DB31F694F8CEA5CEA972 /* GroupInterpolator.swift */, + CE2776611353FCE198172A4194CFA01E /* GroupNode.swift */, + 1F894DAB215B86B8BD59BC4E07A8E0E7 /* GroupOutputNode.swift */, + 0C28B30370E2AED0B2A707073F98A566 /* ImageAsset.swift */, + 3792B581AB32CDACC425AB337CF6F81A /* ImageCompositionLayer.swift */, + 00158D754985329CF7D20609C991B1A7 /* ImageLayerModel.swift */, + 5600351AE700517408117CC1357184CB /* Interpolatable.swift */, + 5E28C75D166F373C07A0BBC678C1F471 /* InterpolatableExtensions.swift */, + C110B929AEBA310B94500EA304465D62 /* InvertedMatteLayer.swift */, + 8966B7A3AE0765907EE7E3AF51CD234F /* ItemsExtension.swift */, + 65407D4DF5AAE0ACA9BCC628A3B72674 /* KeyedDecodingContainerExtensions.swift */, + 56447E3C8600508D530A72CB0395D3D5 /* Keyframe.swift */, + 825E3E236BBB436E8E68B5692C8AC023 /* KeyframeExtensions.swift */, + 795FEB87FAD012EFAB8200461C298413 /* KeyframeGroup.swift */, + 98123CB420636D951F9DE8058269721D /* KeyframeInterpolator.swift */, + 1E2F40282D524C44C2052BDC11CE4D77 /* KeypathSearchable.swift */, + 1172AF700C3C743238385AD655806CE9 /* LayerDebugging.swift */, + F355AB8AA1982B40877E8FE46D75F5B0 /* LayerImageProvider.swift */, + 09F57DDDE2B79AD634568FE075ABF3FF /* LayerModel.swift */, + 366A56AF6D6D94D334873D875738BE59 /* LayerTextProvider.swift */, + A79F5FB0F5EE33DD48EADDEA6D90FBED /* LayerTransformNode.swift */, + 5520D4C62CABCBE78FAA5F72DF9E7066 /* LottieView.swift */, + 00645EDDBFAB8CCCEBA000E3EE203002 /* LRUAnimationCache.swift */, + DAF3F5A7BFCE350F7749B8769C0C6890 /* Marker.swift */, + 6341B2CADFB50E53B6F3089748BB42A3 /* Mask.swift */, + 5DFA9824CFC5EC265CC3E2AFE06107C1 /* MaskContainerLayer.swift */, + 85C5D0A7845198D7FA7C79041337D208 /* MathKit.swift */, + 2F0C4D2833FA086D3636A3B5E0C93D9F /* Merge.swift */, + D14DDDCC35CF520B01762198CEB18F8A /* NodeProperty.swift */, + F611371EEA668A209D99AAEFC816FBD5 /* NodePropertyMap.swift */, + EBE03E771B3C2AC552F237379837C286 /* NullCompositionLayer.swift */, + 6AA9D5D4B48ECB72193BA19202FAD624 /* PassThroughOutputNode.swift */, + 1FEE8B9B2043AA9CAFF8DAB0DF7EDDB3 /* PathElement.swift */, + 60687571C6D67DDCCF1BA25E47655E72 /* PathNode.swift */, + C6C831B9EBC722073C3C381F2C5F3304 /* PathOutputNode.swift */, + 5EBA725FFC9B95363E1B2EDB1FE71934 /* PointValueProvider.swift */, + 62004702A152E4FFFB8786BCFAD9BC5D /* PolygonNode.swift */, + B18A91287545FAF61A61329B2F6AD207 /* PrecompAsset.swift */, + 692497AB9F51FA3E512605A5C7ADCC15 /* PreCompLayerModel.swift */, + 92AD229F5E70B700BD2ECE82E9F4A010 /* PreCompositionLayer.swift */, + 9FA1A9F812A44A878ECB0558CDF5DBC5 /* Rectangle.swift */, + 96B4B39A8DAF1865E48942137EBCFE74 /* RectNode.swift */, + 244321FEACD7232CDCD7732FF12355A7 /* RenderNode.swift */, + 84813600FF8789CFB87D55127D54AF41 /* Repeater.swift */, + 59F1895918538192A74EE5EAFA365AEA /* Shape.swift */, + 2A37690D65931404751BC41B4F2325A7 /* ShapeCompositionLayer.swift */, + 66728D34F24F0A5467EDDED1497D1511 /* ShapeContainerLayer.swift */, + E4D4D24A669090A27466D5644A138B4D /* ShapeItem.swift */, + 3F03DF3FD9395723160BB39EBF8E4D4A /* ShapeLayerModel.swift */, + 26720609B278654B416391CDFCA6962E /* ShapeNode.swift */, + 7F230E030E3EBA7B9A4C90F57B66521D /* ShapeRenderLayer.swift */, + 147CEF7BDB85020E7E8BC352815A6D0C /* ShapeTransform.swift */, + 18F359F863B621EF96E18E249CC751AC /* SingleValueProvider.swift */, + 2C193421FB432FE68D297D2B3F9BFB68 /* SizeValueProvider.swift */, + 85BF504BF7FE1E4F6748E10C2B2E6D68 /* SolidCompositionLayer.swift */, + 58682907823CF6D6C4370A459E1CBE4F /* SolidLayerModel.swift */, + 56E28179B3C9B6DC8C930EEE56A5FF4F /* Star.swift */, + 38018419042564E600D6B256D520BC3B /* StarNode.swift */, + E0BD0671731D804A2779ED44096D9242 /* StringExtensions.swift */, + E9D86D1AA5A32F578A5C67591A87EE3C /* Stroke.swift */, + 5617EEB351FE7046C0BAB355672A8098 /* StrokeNode.swift */, + B756DC0016A24794CFD87B5B42A142D5 /* StrokeRenderer.swift */, + 922C32375A2EF66F3FAF884740561CBA /* TextAnimator.swift */, + 6844797DABCB3DCC060F9327AC7B3CB5 /* TextAnimatorNode.swift */, + EB17C1035263615C106CD35A17D8A2FF /* TextCompositionLayer.swift */, + E9ECAC9F611762AE3BDF6728C61469DF /* TextDocument.swift */, + F8525A9ED196D26AB0ACD4CA1E5B3361 /* TextLayerModel.swift */, + A59905142AF25B72EF80EA1C35CB2188 /* Transform.swift */, + 45045354554E7BF8CD6184BDA0483400 /* Trim.swift */, + A54DFF4C9E78FDE58C0F49F17EEE418B /* TrimPathNode.swift */, + 2758B8D197CA911923FE844690CFB6E8 /* UIColorExtension.swift */, + 9649FDBC7D9BB62B46F600CCF653F706 /* ValueContainer.swift */, + 0FAEC036D536751E4954A45AF50E7D73 /* Vectors.swift */, + D6C7F3E39476A4D256948B39F68CEDF4 /* VectorsExtensions.swift */, + 48A7A00F5F7D4921E66A4BA66938D417 /* Support Files */, + ); + name = "lottie-ios"; + path = "lottie-ios"; + sourceTree = ""; + }; + D908F336C5E29897F5075706314E0D3C /* Pods */ = { isa = PBXGroup; children = ( - 31BDA63FC1EC5C645C6CFF101AF04C06 /* Alamofire.modulemap */, - EEF7244BB902810882BDE9DACC737BF7 /* Alamofire-dummy.m */, - E26D48917E9F735A35CDBDE204F03BBE /* Alamofire-Info.plist */, - 4B2B168A3FD9EE3554B40BCDC77251A8 /* Alamofire-prefix.pch */, - E00E59DBC2776F693E41A5E54C961C3F /* Alamofire-umbrella.h */, - 4E73D39231D8E268CE87489C20F6210F /* Alamofire.debug.xcconfig */, - 8C49B2499D5467BCE522AD24A437643C /* Alamofire.release.xcconfig */, + CF4D5FA14C36CB35C3020BB3C42829E0 /* Alamofire */, + 24A14B9079AAB58F5325AEBE17969978 /* Gifu */, + 39B29969DF039F141F0EDF3FD3360687 /* Hero */, + 563690D46CB54CF05B2963C52FD0B5D1 /* Kingfisher */, + D48E9FDF3F6A4ACCEFC0EFD8952D0CEE /* lottie-ios */, + 17E32DE61E7F7210A8B1B104FD38BEBB /* SnapKit */, + 92E7CACB488FBB8C86244844A92FBCB1 /* SwiftyGif */, + F85545FB8F3916C2CFFB6F72CD03CE85 /* Then */, + ); + name = Pods; + sourceTree = ""; + }; + DA46E79181CF9A3F3BB217BC29EBB3E2 /* Core */ = { + isa = PBXGroup; + children = ( + B0EC414318FD84AFA7B74B86D7B853E7 /* AnimatedImageView.swift */, + 9A2665D86FFB43808967D97BF9A0B357 /* AuthenticationChallengeResponsable.swift */, + FA1756E8F16358F17D87172F12F3F92B /* Box.swift */, + 4DA3BEF5B63E6B34527E5D9359AB1D5D /* CacheSerializer.swift */, + E57846F96542FF9D69AC8DD68A71FEDC /* CallbackQueue.swift */, + 43E9EE32D993A1DB758185F795780BDB /* Delegate.swift */, + C9948592CB5CBBC9E9E3FB96F0EE7FB8 /* Deprecated.swift */, + ADF7613023ABA1460344B3032ED08B38 /* DiskStorage.swift */, + E7DC38FDDD0803972C120B9B7D2DC51A /* ExtensionHelpers.swift */, + 7AB3FDC547309A9DE9306BD8E5E14C97 /* Filter.swift */, + 038FC01C3BD3C974F827893EE3913961 /* FormatIndicatedCacheSerializer.swift */, + 758F48808C762F9A82447FA5077C9CE0 /* GIFAnimatedImage.swift */, + F54B8AB80488E69628CADB592AFC151B /* Image.swift */, + 932E367981E78AF508CB37787406E2DE /* ImageCache.swift */, + C801A75107C152694FAAACDFD366BC12 /* ImageDataProcessor.swift */, + 0FD28A549E2EBEAF28B2DD94FB9552CB /* ImageDataProvider.swift */, + A12F54CB576AB4FF4CC13B629B10EDC4 /* ImageDownloader.swift */, + 14124014A2E7B958DC7567CA3B2451CD /* ImageDownloaderDelegate.swift */, + C220D431C1C71BF974FBA2EB186B780F /* ImageDrawing.swift */, + 98D79AB1DA4F6689A51A3461685EACC6 /* ImageFormat.swift */, + 05BC6317267568459DFD3EA1846EC047 /* ImageModifier.swift */, + B363A64816485437FF9BF12A8A08BAAE /* ImagePrefetcher.swift */, + F9111798C97D00B2B4C9625BF149AD91 /* ImageProcessor.swift */, + E80D714CD551840C67B35967F0E2254B /* ImageProgressive.swift */, + 9F08D9D0AB88CBDF2C03140C2F223CE1 /* ImageTransition.swift */, + 2CDAB1A4E04BE63E833CA304DABD1059 /* ImageView+Kingfisher.swift */, + 33CD97632B04E89F17150D5150F26762 /* Indicator.swift */, + 09CCC0AB5B154143571487EB36803898 /* Kingfisher.h */, + 561C67157D92AD9611612488E316B1F6 /* Kingfisher.swift */, + CCE5CCB441476E3544BD72BD06C3080D /* KingfisherError.swift */, + 8742DE63245D8B0B0D477C39FD2A6056 /* KingfisherManager.swift */, + F2DC6913F0CECA69052F0D908C2F13D0 /* KingfisherOptionsInfo.swift */, + 9D21FE5D0AB544EE493551FCC02E18C0 /* MemoryStorage.swift */, + A72EA9583ECB48CB7571992F47FDC5FC /* NSButton+Kingfisher.swift */, + 03D02B63D4AFFE65B734B308D2DF710E /* Placeholder.swift */, + 93D85053749107EA1ABB305C0F198EBA /* RedirectHandler.swift */, + EC09496161A3B493247F8414C978C8DD /* RequestModifier.swift */, + F79B9D4C8BC44856E8325340AA62AC04 /* Resource.swift */, + F6DB43DE9E31A99BA4DA9143400B512E /* Result.swift */, + C55C990C7FEF995EC1F0EF22BDF5DF3F /* Runtime.swift */, + A5A0CED27973FCEA85E0D337420CF2EB /* SessionDataTask.swift */, + D7A9FC0C4CF2463929131301D91BDC19 /* SessionDelegate.swift */, + 458E286D92537BF234DEB097D5939BE1 /* SizeExtensions.swift */, + 58D9F1FD9647422D154FE9D303C19830 /* Source.swift */, + 76A0400C5CDBA8AB1311EB93724ADF2F /* Storage.swift */, + 010D50F2CCE7A1C53805C7611C84DDAC /* String+MD5.swift */, + 1036EB45830805140A40EC7D6F8B7B5A /* UIButton+Kingfisher.swift */, + CA06CB9000D2DC3E1857704A17F95710 /* WKInterfaceImage+Kingfisher.swift */, + ); + name = Core; + sourceTree = ""; + }; + DA5A303A0092CEA158F4014618160093 /* Support Files */ = { + isa = PBXGroup; + children = ( + 9B80CCF2C65912CCDD543AD94EDBD629 /* SnapKit.modulemap */, + F7641666AA9FF589221EE5D35B32BD7B /* SnapKit-dummy.m */, + BFD94BFDA759ACCDDC5F14C7D35B11A5 /* SnapKit-Info.plist */, + C6B527A6240CE41A375F16FD8D4D2B5C /* SnapKit-prefix.pch */, + E614720FB99A35005BCC5670C828E61F /* SnapKit-umbrella.h */, + 3F3988C04A96C2A5D43D1C4824F06988 /* SnapKit.debug.xcconfig */, + 1D57DABA6C1297B77055AEDE37FE2B3C /* SnapKit.release.xcconfig */, ); name = "Support Files"; - path = "../Target Support Files/Alamofire"; + path = "../Target Support Files/SnapKit"; sourceTree = ""; }; - E2BEF5BCAD8F3159A8FA77BB3652884C /* Support Files */ = { + DC6A816CAAC4D2406C25DBA9A92A2837 /* Support Files */ = { isa = PBXGroup; children = ( - 15C8B86850CA83B0F098F51753887CEF /* Hero.modulemap */, - 2B5373A5265D783271587C7D5EDBD1D8 /* Hero-dummy.m */, - 1DF4F40C6B389DD995057592E592858E /* Hero-Info.plist */, - EA79832715EE039927F3746C67F6A3F3 /* Hero-prefix.pch */, - 5995BBE9B09101BF1BA540DA1F7582D8 /* Hero-umbrella.h */, - C33D5FF154ED03474CFFFC2C2812FD97 /* Hero.debug.xcconfig */, - 56BEC2BC039B8454CD697F8B234A1E0D /* Hero.release.xcconfig */, + 6CBDE3E78429A3C59D41DC9B42B2EEDA /* Gifu.modulemap */, + CD575FB666A7FA70DF1260C2817B8A1A /* Gifu-dummy.m */, + CCEBFE8767A42497F43BE8AC5C5E7312 /* Gifu-Info.plist */, + 2716C58D91449122185EB666E6F4DAA7 /* Gifu-prefix.pch */, + ADC6A19AE8BD1C5C8CD075F6D9F5CA02 /* Gifu-umbrella.h */, + ED5CAFF895F4C3C42B53437740248B5C /* Gifu.debug.xcconfig */, + 73705B07DA88A8128D75E5E778CE56E5 /* Gifu.release.xcconfig */, ); name = "Support Files"; - path = "../Target Support Files/Hero"; + path = "../Target Support Files/Gifu"; sourceTree = ""; }; - F52D3FFB5925A27D74DAAC46F0C6A4C0 /* Support Files */ = { + F7455F19C436E58B4A4AC480519A8AD5 /* Support Files */ = { isa = PBXGroup; children = ( - 3E1584422429696FE658EA1753DAF8BC /* lottie-ios.modulemap */, - F23F87BF1FBCFE5385EB5F8F41094E3D /* lottie-ios-dummy.m */, - D977402DDB403160A51928E5E2BC6F3E /* lottie-ios-Info.plist */, - B4D5B980B9853ADE7B49F8729290183C /* lottie-ios-prefix.pch */, - 94744623F8D133953E8FEA26B7178D02 /* lottie-ios-umbrella.h */, - 735D949A43BF84B076D8B654E533CEB2 /* lottie-ios.debug.xcconfig */, - 80FE64CB6C2C4892EFD74855DD14407A /* lottie-ios.release.xcconfig */, + DB0B0972702F485C0D96D49DA8A743AF /* Then.modulemap */, + 73C3AAE2D2A8173D6C624A5799E0204D /* Then-dummy.m */, + D2E18CBEE55806463BBA56FE93A6F463 /* Then-Info.plist */, + 3126D1AE014DC59826EB8AC48B0DAA8A /* Then-prefix.pch */, + CB736E8FE61E8DADA5444542ECC2CF84 /* Then-umbrella.h */, + D83B8ADAFDBA51164553C6BA3ECB5909 /* Then.debug.xcconfig */, + F378F6AD7FC561BD602E7F4BAF9F0A84 /* Then.release.xcconfig */, ); name = "Support Files"; - path = "../Target Support Files/lottie-ios"; + path = "../Target Support Files/Then"; + sourceTree = ""; + }; + F85545FB8F3916C2CFFB6F72CD03CE85 /* Then */ = { + isa = PBXGroup; + children = ( + E4606AD3B62B3C21221934B4EFC7F84D /* Then.swift */, + F7455F19C436E58B4A4AC480519A8AD5 /* Support Files */, + ); + name = Then; + path = Then; sourceTree = ""; }; /* End PBXGroup section */ @@ -1386,6 +1450,15 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 1B3658701CDECD8C2DAEDB3E9B87228B /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 7054EEB1CB3DD574C77BB2A5818FD46B /* SwiftyGif-umbrella.h in Headers */, + 5E15F97881DAA1FCA5F8927D0EA61967 /* SwiftyGif.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1CCDD56A9B9D2F20D65FF1855104394E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1402,6 +1475,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 5CA80DD31246F9906F9359D67037AE27 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 8A33ECA9EAFD6A60789BAF922DEDEC48 /* Pods-Mongle-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 6C82A261E114E04E54D5D64380D759BE /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1427,14 +1508,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - B48A07265F898FA94369CA0D21725D14 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - D7E9B05254499C8C0D1B5686AAC56E46 /* Pods-Mongle-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; FCA903FBC6FCC19FBFF772C5B82479CE /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1465,6 +1538,24 @@ productReference = 51BA97E8B5085EFFB47BC9C0B785CEA7 /* Lottie.framework */; productType = "com.apple.product-type.framework"; }; + 15AEBAFA43912F898FC2E1A73025C946 /* SwiftyGif */ = { + isa = PBXNativeTarget; + buildConfigurationList = 31E29D2E3ED1D800E63F012CC892648F /* Build configuration list for PBXNativeTarget "SwiftyGif" */; + buildPhases = ( + 1B3658701CDECD8C2DAEDB3E9B87228B /* Headers */, + 35B51FE3E3AA700057167B2F17DB182E /* Sources */, + 06FDAE763919A7B12DBE5F3E67445C32 /* Frameworks */, + 08219B7DC6E8BC3A0C88C5A0F5540AB7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = SwiftyGif; + productName = SwiftyGif; + productReference = 7AD67EFB9A7864151301DC2890207AA2 /* SwiftyGif.framework */; + productType = "com.apple.product-type.framework"; + }; 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */ = { isa = PBXNativeTarget; buildConfigurationList = 7F8CE4DC18DBEA01587212F09727DB3D /* Build configuration list for PBXNativeTarget "SnapKit" */; @@ -1503,23 +1594,24 @@ }; A0EA7C0AED19FE2B71B9AD7F326BAD03 /* Pods-Mongle */ = { isa = PBXNativeTarget; - buildConfigurationList = 6244139BECBB8483EE297BDC5FDC0346 /* Build configuration list for PBXNativeTarget "Pods-Mongle" */; + buildConfigurationList = E73F7746D4DADF820B3A376623703C6E /* Build configuration list for PBXNativeTarget "Pods-Mongle" */; buildPhases = ( - B48A07265F898FA94369CA0D21725D14 /* Headers */, - 0C81A9B9AA77905AB8CEE2FFF3B0BC94 /* Sources */, - 91C78624BAB58F912CE7F4BE99122D73 /* Frameworks */, - E599BE273076C050EC69027C5B6C1433 /* Resources */, + 5CA80DD31246F9906F9359D67037AE27 /* Headers */, + 3AAFF8B6CAE2F4E777CC7C355548BE71 /* Sources */, + 377C2F5BC7DB8F4E0A8FF0612236C2D6 /* Frameworks */, + 5B1922D47A60B5471BD4617BD1914B43 /* Resources */, ); buildRules = ( ); dependencies = ( - 8C3D85001836BA831FBB68B296EF17C5 /* PBXTargetDependency */, - 4B6B63B1FF6E9BFFDBA1CDDFB98AE959 /* PBXTargetDependency */, - 713A94C54EA10F987EE9F124749C1254 /* PBXTargetDependency */, - 0939A27E3862D7BBDA0A6F0690D60E5F /* PBXTargetDependency */, - 87EE00A8548B45A4B1FFACCFCEBF2D44 /* PBXTargetDependency */, - BFBC7EE3A40E97F0D3C8090DC5D662D4 /* PBXTargetDependency */, - AFF5C6CB242B742CF8B134EAADC7C872 /* PBXTargetDependency */, + 6725A3F6405189D659547275EAC1C3D9 /* PBXTargetDependency */, + 4E78A2C29B659DD1EDB00A775AD0C6C6 /* PBXTargetDependency */, + B5740379D9A467C25985C13AA671D2E4 /* PBXTargetDependency */, + 2CC63B64C358DF85EA74AAC85F116BC7 /* PBXTargetDependency */, + 58C55F3BF88D2EA3C379E9A867F327CE /* PBXTargetDependency */, + 584899ECCDC8484B563FBECBC8489F46 /* PBXTargetDependency */, + 5A9FF6D747E60565056602C314EAC1E2 /* PBXTargetDependency */, + 9CF7747DB911FB681EFD7674F6645BA0 /* PBXTargetDependency */, ); name = "Pods-Mongle"; productName = "Pods-Mongle"; @@ -1616,7 +1708,7 @@ Base, ); mainGroup = CF1408CF629C7361332E53B88F7BD30C; - productRefGroup = 72AF33B56D7CBEDEA2D06BE31531C73E /* Products */; + productRefGroup = 998A3AF19024134319D220A4E2034BB2 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( @@ -1627,12 +1719,20 @@ 0B967D7F8561D42493EE289EC8D450D1 /* lottie-ios */, A0EA7C0AED19FE2B71B9AD7F326BAD03 /* Pods-Mongle */, 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */, + 15AEBAFA43912F898FC2E1A73025C946 /* SwiftyGif */, C17AEFC79E770A2906EFAAB1A3757406 /* Then */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ + 08219B7DC6E8BC3A0C88C5A0F5540AB7 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 133C3F7198BB1C43252A333536DEBF8C /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -1668,21 +1768,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9C691CAA90D9565F2EFF5EF823D8A80C /* Resources */ = { + 5B1922D47A60B5471BD4617BD1914B43 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - A5EEE57DDAA76478FBAAE5512E4E4136 /* Resources */ = { + 9C691CAA90D9565F2EFF5EF823D8A80C /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - E599BE273076C050EC69027C5B6C1433 /* Resources */ = { + A5EEE57DDAA76478FBAAE5512E4E4136 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1710,14 +1810,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 0C81A9B9AA77905AB8CEE2FFF3B0BC94 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - E5E49B7F82458025BCFB0B282173997C /* Pods-Mongle-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 0CDB9028959BA2593F7C5704933F1E4C /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -1752,6 +1844,25 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 35B51FE3E3AA700057167B2F17DB182E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + A9E70330524A80D4D04AF50A838666F5 /* SwiftyGif-dummy.m in Sources */, + 1EE9E5A700E63BD57BEF10D683341A0C /* SwiftyGifManager.swift in Sources */, + 45C87BF8F436388A396FB2C643378885 /* UIImage+SwiftyGif.swift in Sources */, + AF6FF1855E227D3C93BB642FFB68EBB6 /* UIImageView+SwiftyGif.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 3AAFF8B6CAE2F4E777CC7C355548BE71 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + A23CCC928B5B41F1F697C6D15D06CA55 /* Pods-Mongle-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 89222AF845A30312C284F407BA48B98F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -2045,57 +2156,61 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 0939A27E3862D7BBDA0A6F0690D60E5F /* PBXTargetDependency */ = { + 2CC63B64C358DF85EA74AAC85F116BC7 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Kingfisher; target = E8022D22FAA6690B5E1C379C1BCE1491 /* Kingfisher */; - targetProxy = 197CCC40E02DEE31C34E3FF2AF2E5C46 /* PBXContainerItemProxy */; + targetProxy = C72A3DD4694C613457BC3DA374708B05 /* PBXContainerItemProxy */; }; - 4B6B63B1FF6E9BFFDBA1CDDFB98AE959 /* PBXTargetDependency */ = { + 4E78A2C29B659DD1EDB00A775AD0C6C6 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Gifu; target = 830B5AB9E16163B4A1BA339D625FE46C /* Gifu */; - targetProxy = 9957CB61652E9203F16FF1E6D5C06872 /* PBXContainerItemProxy */; + targetProxy = AAD4011CF318D67667B160D1B295A694 /* PBXContainerItemProxy */; }; - 713A94C54EA10F987EE9F124749C1254 /* PBXTargetDependency */ = { + 584899ECCDC8484B563FBECBC8489F46 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = Hero; - target = B3893AEA4D7DBB9A086E889FC469132D /* Hero */; - targetProxy = 876FE85D80A30486E03B11150F4C48FD /* PBXContainerItemProxy */; + name = SwiftyGif; + target = 15AEBAFA43912F898FC2E1A73025C946 /* SwiftyGif */; + targetProxy = 5EFEF9EED9E3DC4844C3EED4DDDB36B1 /* PBXContainerItemProxy */; }; - 87EE00A8548B45A4B1FFACCFCEBF2D44 /* PBXTargetDependency */ = { + 58C55F3BF88D2EA3C379E9A867F327CE /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = SnapKit; target = 19622742EBA51E823D6DAE3F8CDBFAD4 /* SnapKit */; - targetProxy = 91706FE255BD27F6FAA7B601FC601F0A /* PBXContainerItemProxy */; + targetProxy = 6CF52463CBE2FBE22E86E26B85CB9570 /* PBXContainerItemProxy */; }; - 8C3D85001836BA831FBB68B296EF17C5 /* PBXTargetDependency */ = { + 5A9FF6D747E60565056602C314EAC1E2 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Then; + target = C17AEFC79E770A2906EFAAB1A3757406 /* Then */; + targetProxy = 9730BF2A9286BF60AFBDD2372509BC9F /* PBXContainerItemProxy */; + }; + 6725A3F6405189D659547275EAC1C3D9 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; target = EAAA1AD3A8A1B59AB91319EE40752C6D /* Alamofire */; - targetProxy = 2C89665B49AA00E9241B4A717E74AED4 /* PBXContainerItemProxy */; + targetProxy = 65DC5F07A2DCE56159BC759F8EDD54C8 /* PBXContainerItemProxy */; }; - AFF5C6CB242B742CF8B134EAADC7C872 /* PBXTargetDependency */ = { + 9CF7747DB911FB681EFD7674F6645BA0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "lottie-ios"; target = 0B967D7F8561D42493EE289EC8D450D1 /* lottie-ios */; - targetProxy = 2E96A29AD88D2616ADBC32907C93DA13 /* PBXContainerItemProxy */; + targetProxy = 1375580AED451CAA9BA3A78DCB663C53 /* PBXContainerItemProxy */; }; - BFBC7EE3A40E97F0D3C8090DC5D662D4 /* PBXTargetDependency */ = { + B5740379D9A467C25985C13AA671D2E4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = Then; - target = C17AEFC79E770A2906EFAAB1A3757406 /* Then */; - targetProxy = F346949865579055339DEF5975C5ED31 /* PBXContainerItemProxy */; + name = Hero; + target = B3893AEA4D7DBB9A086E889FC469132D /* Hero */; + targetProxy = E5EC5031E85DD3FC1FCB5219EA2CBE08 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 1AEF535829682F76DFF8A3E346D5FB52 /* Debug */ = { + 2B4213593963C9525762563577028CD9 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 2B519E3B0DC6BC424CADC9BB96C8CA84 /* Pods-Mongle.debug.xcconfig */; + baseConfigurationReference = 17E322C184551275088D6A5B21275B99 /* SwiftyGif.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2105,23 +2220,22 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Mongle/Pods-Mongle-Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/SwiftyGif/SwiftyGif-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SwiftyGif/SwiftyGif-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", "@loader_path/Frameworks", ); - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Mongle/Pods-Mongle.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + MODULEMAP_FILE = "Target Support Files/SwiftyGif/SwiftyGif.modulemap"; + PRODUCT_MODULE_NAME = SwiftyGif; + PRODUCT_NAME = SwiftyGif; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -2130,7 +2244,7 @@ }; 2EA5A4099D3BBA09D06A8B51C14CA714 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8C49B2499D5467BCE522AD24A437643C /* Alamofire.release.xcconfig */; + baseConfigurationReference = 1ECA06CC34CFDA96C8C37110FB694EAB /* Alamofire.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2164,9 +2278,45 @@ }; name = Release; }; + 3B0CC028200E9BD46F310CC0EE59E26D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9E5D58C101F41206328D174AF79F860C /* SwiftyGif.release.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SwiftyGif/SwiftyGif-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SwiftyGif/SwiftyGif-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MODULEMAP_FILE = "Target Support Files/SwiftyGif/SwiftyGif.modulemap"; + PRODUCT_MODULE_NAME = SwiftyGif; + PRODUCT_NAME = SwiftyGif; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; 43098495E83F6B48A17CE341366E739E /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 735D949A43BF84B076D8B654E533CEB2 /* lottie-ios.debug.xcconfig */; + baseConfigurationReference = AD1B4F60C6A461E17DC213007C0B578C /* lottie-ios.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2201,7 +2351,7 @@ }; 624AF9006C0213AC81A593D80AE47826 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1ED1F31B1C05169344553F944C9A1FB7 /* Kingfisher.release.xcconfig */; + baseConfigurationReference = 9DED11B1663BA72CC11C38FB5F31882D /* Kingfisher.release.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -2238,7 +2388,7 @@ }; 73B201A0641E8BDF892BA0B27E0AF833 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 71122F41F5A756AE246A28AFE4A4CB1F /* SnapKit.release.xcconfig */; + baseConfigurationReference = 1D57DABA6C1297B77055AEDE37FE2B3C /* SnapKit.release.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -2275,7 +2425,7 @@ }; 7A80CA2E0803214CD1C99F3D4BE9CCFE /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B19FE93EEE3B70343B88D8D59D6716FA /* Gifu.debug.xcconfig */; + baseConfigurationReference = ED5CAFF895F4C3C42B53437740248B5C /* Gifu.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2310,7 +2460,7 @@ }; 80FBF1B05E31A624FE253A065DCFC9FC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 80FE64CB6C2C4892EFD74855DD14407A /* lottie-ios.release.xcconfig */; + baseConfigurationReference = 3263E1E51F9187E0C1D91C2EBAB867A7 /* lottie-ios.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2344,9 +2494,9 @@ }; name = Release; }; - 97E166C492F56D82B21F9C62D3EC5AB9 /* Release */ = { + 9D0D3698BA040853D821311B0B086946 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 289C15AEF51DC7BF24C12BAA58675782 /* Pods-Mongle.release.xcconfig */; + baseConfigurationReference = 2B519E3B0DC6BC424CADC9BB96C8CA84 /* Pods-Mongle.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -2377,15 +2527,14 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; A86537130E9D1C67331391B89A585CAB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A424EA4F6A37368681CD5129D2FD2415 /* Kingfisher.debug.xcconfig */; + baseConfigurationReference = 66306012030817A4C465BA79C3E85911 /* Kingfisher.debug.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -2419,9 +2568,48 @@ }; name = Debug; }; + AE9963100BA88EF16ECD3BEF5289DCB3 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 289C15AEF51DC7BF24C12BAA58675782 /* Pods-Mongle.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Mongle/Pods-Mongle-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 13.5; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Mongle/Pods-Mongle.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; AFA88406794C895BA0C96ECBFFC4598A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = C33D5FF154ED03474CFFFC2C2812FD97 /* Hero.debug.xcconfig */; + baseConfigurationReference = CE75C4A652A5AC82DE01E24CCF1C6D1C /* Hero.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2520,7 +2708,7 @@ }; E8FFFC6D27B58721BFB227F1311494ED /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4E73D39231D8E268CE87489C20F6210F /* Alamofire.debug.xcconfig */; + baseConfigurationReference = 1B7115AA511882B18AE2B1C8D570169B /* Alamofire.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2555,7 +2743,7 @@ }; EC3D41AC50A50D84B688EC126D64B172 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4348CC8E17FD4325B66D6E143D6355C7 /* Then.release.xcconfig */; + baseConfigurationReference = F378F6AD7FC561BD602E7F4BAF9F0A84 /* Then.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2591,7 +2779,7 @@ }; F3063D92833EC27981292E5173BA419C /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7C8C70F375F98A5F529BD51CF839B5B0 /* Then.debug.xcconfig */; + baseConfigurationReference = D83B8ADAFDBA51164553C6BA3ECB5909 /* Then.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2626,7 +2814,7 @@ }; F3B323C7BA27D24A50A6F858262D0900 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 56BEC2BC039B8454CD697F8B234A1E0D /* Hero.release.xcconfig */; + baseConfigurationReference = D5D8BB5C9166879A528CADB3F40BE8F8 /* Hero.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2722,7 +2910,7 @@ }; F93AF49C1CAF2486F9DC6AE9F85C0739 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4C37B1B150715BEBFC75DF955658D601 /* SnapKit.debug.xcconfig */; + baseConfigurationReference = 3F3988C04A96C2A5D43D1C4824F06988 /* SnapKit.debug.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -2758,7 +2946,7 @@ }; FA61C480E6B78C366AD8DD69818675CC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = BDD31A99041ECFEA7A205ADFBD4DF778 /* Gifu.release.xcconfig */; + baseConfigurationReference = 73705B07DA88A8128D75E5E778CE56E5 /* Gifu.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -2804,29 +2992,29 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3E8FE3182F7A698B2443CEBCF9A30678 /* Build configuration list for PBXNativeTarget "Hero" */ = { + 31E29D2E3ED1D800E63F012CC892648F /* Build configuration list for PBXNativeTarget "SwiftyGif" */ = { isa = XCConfigurationList; buildConfigurations = ( - AFA88406794C895BA0C96ECBFFC4598A /* Debug */, - F3B323C7BA27D24A50A6F858262D0900 /* Release */, + 2B4213593963C9525762563577028CD9 /* Debug */, + 3B0CC028200E9BD46F310CC0EE59E26D /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { + 3E8FE3182F7A698B2443CEBCF9A30678 /* Build configuration list for PBXNativeTarget "Hero" */ = { isa = XCConfigurationList; buildConfigurations = ( - DFD9D19FEEBF98DE271D7FBABCB845B5 /* Debug */, - F5F04600F5626DC980F02790D1ED2C19 /* Release */, + AFA88406794C895BA0C96ECBFFC4598A /* Debug */, + F3B323C7BA27D24A50A6F858262D0900 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 6244139BECBB8483EE297BDC5FDC0346 /* Build configuration list for PBXNativeTarget "Pods-Mongle" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - 1AEF535829682F76DFF8A3E346D5FB52 /* Debug */, - 97E166C492F56D82B21F9C62D3EC5AB9 /* Release */, + DFD9D19FEEBF98DE271D7FBABCB845B5 /* Debug */, + F5F04600F5626DC980F02790D1ED2C19 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -2867,6 +3055,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + E73F7746D4DADF820B3A376623703C6E /* Build configuration list for PBXNativeTarget "Pods-Mongle" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9D0D3698BA040853D821311B0B086946 /* Debug */, + AE9963100BA88EF16ECD3BEF5289DCB3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; F474713E7462A344D5557EB151CFA07E /* Build configuration list for PBXNativeTarget "Kingfisher" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/Mongle/Pods/SwiftyGif/LICENSE b/Mongle/Pods/SwiftyGif/LICENSE new file mode 100644 index 0000000..72eef53 --- /dev/null +++ b/Mongle/Pods/SwiftyGif/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2016 Alexis Creuzot + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Mongle/Pods/SwiftyGif/README.md b/Mongle/Pods/SwiftyGif/README.md new file mode 100644 index 0000000..c5ff005 --- /dev/null +++ b/Mongle/Pods/SwiftyGif/README.md @@ -0,0 +1,160 @@ +[![Language](https://img.shields.io/badge/swift-5.0-blue.svg)](http://swift.org) +[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/SwiftyGif.svg)](https://img.shields.io/cocoapods/v/SwiftyGif.svg) +[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) +[![Build Status](https://travis-ci.org/kirualex/SwiftyGif.svg?branch=master)](https://travis-ci.org/kirualex/SwiftyGif) +[![Pod License](http://img.shields.io/cocoapods/l/SDWebImage.svg?style=flat)](https://raw.githubusercontent.com/kirualex/SwiftyGif/master/LICENSE) + +# SwiftyGif +High performance & easy to use Gif engine + +

+
+ +

+ +## Features +- [x] UIImage and UIImageView extension based +- [x] Remote Gifs +- [x] Great CPU/Memory performances +- [x] Control playback +- [x] Allow control of display quality by using 'levelOfIntegrity' +- [x] Allow control CPU/memory tradeoff via 'memoryLimit' + +## Installation + +#### With CocoaPods +```ruby +source 'https://github.com/CocoaPods/Specs.git' +use_frameworks! +pod 'SwiftyGif' +``` + +#### With Carthage +Follow the usual Carthage instructions on how to [add a framework to an application](https://github.com/Carthage/Carthage#adding-frameworks-to-an-application). When adding SwiftyGif among the frameworks listed in `Cartfile`, apply its syntax for [GitHub repositories](https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#github-repositories): + +``` +github "kirualex/SwiftyGif" +``` + +#### With Swift Package Manager +```ruby +https://github.com/kirualex/SwiftyGif.git +``` + +## How to Use + +#### Project files +As of now, Xcode `xcassets` folders do not recognize `.gif` as images. This means you need to put your `.gif` oustide of the assets. I recommend creating a group `gif` for instance. + +#### Quick Start +SwiftyGif uses familiar `UIImage` and `UIImageView` to display gifs. + +```swift +import SwiftyGif + +do { + let gif = try UIImage(gifName: "MyImage.gif") + let imageview = UIImageView(gifImage: gif, loopCount: 3) // Use -1 for infinite loop + imageview.frame = view.bounds + view.addSubview(imageview) +} catch { + print(error) +} +``` + +In case your `UIImageView` is already created (via Nib or Storyboards for instance), it's even easier. + +```swift +self.myImageView.setGifImage(gif) + +// You can also set it with an URL pointing to your gif +let url = URL(string: "...") +self.myImageView.setGifFromURL(url) +``` + +#### Performances +A `SwiftyGifManager` can hold one or several UIImageView using the same memory pool. This allows you to tune the memory limits to you convenience. If no manager is declared, SwiftyGif will just use the `SwiftyGifManager.defaultManager`. + + +##### Level of integrity +Setting a lower level of integrity will allow for frame skipping, lowering both CPU and memory usage. This can be a godd option if you need to preview a lot of gifs at the same time. + +```swift +do { + let gif = try UIImage(gifName: "MyImage.gif", levelOfIntegrity:0.5) +} catch { + print(error) +} +``` + +#### Controls +SwiftyGif offer various controls on the current `UIImageView` playing your gif file. + +```swift +self.myImageView.startAnimatingGif() +self.myImageView.stopAnimatingGif() +self.myImageView.showFrameAtIndexDelta(delta: Int) +self.myImageView.showFrameAtIndex(index: Int) +``` + +To allow easy use of those controls, some utility methods are provided : + +```swift +self.myImageView.isAnimatingGif() // Returns wether the gif is currently playing +self.myImageView.gifImage!.framesCount() // Returns number of frames for this gif +``` + +#### Delegate +You can declare a SwiftyGifDelegate to receive updates on the gif lifecycle. +For instance, if you want your controller `MyController` to act as the delegate: +```swift +override func viewDidLoad() { + super.viewDidLoad() + self.imageView.delegate = self +} +``` + +Then simply add an extension: + +```swift +extension MyController : SwiftyGifDelegate { + + func gifURLDidFinish(sender: UIImageView) { + print("gifURLDidFinish") + } + + func gifURLDidFail(sender: UIImageView) { + print("gifURLDidFail") + } + + func gifDidStart(sender: UIImageView) { + print("gifDidStart") + } + + func gifDidLoop(sender: UIImageView) { + print("gifDidLoop") + } + + func gifDidStop(sender: UIImageView) { + print("gifDidStop") + } +} +``` + +## Benchmark +#### Display 1 Image +| |CPU Usage(average) |Memory Usage(average) | +|:-------------:|:-----------------:|:-----------------------:| +|FLAnimatedImage|35% |9,5Mb | +|SwiftyGif |2% |18,4Mb | +|SwiftyGif(memoryLimit:10)|34% |9,5Mb | + +#### Display 6 Images +| |CPU Usage(average) |Memory Usage(average) | +|:-------------:|:-----------------:|:-----------------------:| +|FLAnimatedImage|65% |25,1Mb | +|SwiftyGif |22% |105Mb | +|SwiftyGif(memoryLimit:20)|45% |26Mb | + +Measured on an iPhone 6S, iOS 9.3.1 and Xcode 7.3. + diff --git a/Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGif.h b/Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGif.h new file mode 100644 index 0000000..251ffbc --- /dev/null +++ b/Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGif.h @@ -0,0 +1,19 @@ +// +// SwiftyGif.h +// SwiftyGif +// +// Created by Scott Hoyt on 1/12/17. +// Copyright © 2017 alexiscreuzot. All rights reserved. +// + +#import + +//! Project version number for SwiftyGif. +FOUNDATION_EXPORT double SwiftyGifVersionNumber; + +//! Project version string for SwiftyGif. +FOUNDATION_EXPORT const unsigned char SwiftyGifVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGifManager.swift b/Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGifManager.swift new file mode 100755 index 0000000..b4478c3 --- /dev/null +++ b/Mongle/Pods/SwiftyGif/SwiftyGif/SwiftyGifManager.swift @@ -0,0 +1,126 @@ +// +// SwiftyGifManager.swift +// +// +import ImageIO +import UIKit +import Foundation + +open class SwiftyGifManager { + + // A convenient default manager if we only have one gif to display here and there + public static var defaultManager = SwiftyGifManager(memoryLimit: 50) + + fileprivate var timer: CADisplayLink? + fileprivate var displayViews: [UIImageView] = [] + fileprivate var totalGifSize: Int + fileprivate var memoryLimit: Int + open var haveCache: Bool + open var remoteCache : [URL : Data] = [:] + + /// Initialize a manager + /// + /// - Parameter memoryLimit: The number of Mb max for this manager + public init(memoryLimit: Int) { + self.memoryLimit = memoryLimit + totalGifSize = 0 + haveCache = true + } + + deinit { + stopTimer() + } + + public func startTimerIfNeeded() { + guard timer == nil else { + return + } + + timer = CADisplayLink(target: self, selector: #selector(updateImageView)) + + #if swift(>=4.2) + timer?.add(to: .main, forMode: .common) + #else + timer?.add(to: .main, forMode: RunLoopMode.commonModes) + #endif + } + + public func stopTimer() { + timer?.invalidate() + timer = nil + } + + /// Add a new imageView to this manager if it doesn't exist + /// - Parameter imageView: The UIImageView we're adding to this manager + open func addImageView(_ imageView: UIImageView) -> Bool { + if containsImageView(imageView) { + startTimerIfNeeded() + return false + } + + updateCacheSize(for: imageView, add: true) + displayViews.append(imageView) + startTimerIfNeeded() + + return true + } + + /// Delete an imageView from this manager if it exists + /// - Parameter imageView: The UIImageView we want to delete + open func deleteImageView(_ imageView: UIImageView) { + guard let index = displayViews.firstIndex(of: imageView) else { + return + } + + displayViews.remove(at: index) + updateCacheSize(for: imageView, add: false) + } + + open func updateCacheSize(for imageView: UIImageView, add: Bool) { + totalGifSize += (add ? 1 : -1) * (imageView.gifImage?.imageSize ?? 0) + haveCache = totalGifSize <= memoryLimit + + for imageView in displayViews { + DispatchQueue.global(qos: .userInteractive).sync(execute: imageView.updateCache) + } + } + + open func clear() { + displayViews.forEach { $0.clear() } + displayViews = [] + stopTimer() + } + + /// Check if an imageView is already managed by this manager + /// - Parameter imageView: The UIImageView we're searching + /// - Returns : a boolean for wether the imageView was found + open func containsImageView(_ imageView: UIImageView) -> Bool{ + return displayViews.contains(imageView) + } + + /// Check if this manager has cache for an imageView + /// - Parameter imageView: The UIImageView we're searching cache for + /// - Returns : a boolean for wether we have cache for the imageView + open func hasCache(_ imageView: UIImageView) -> Bool{ + return imageView.displaying && (imageView.loopCount == -1 || imageView.loopCount >= 5) ? haveCache : false + } + + /// Update imageView current image. This method is called by the main loop. + /// This is what create the animation. + @objc func updateImageView(){ + guard !displayViews.isEmpty else { + stopTimer() + return + } + + for imageView in displayViews { + DispatchQueue.global(qos: DispatchQoS.QoSClass.userInteractive).sync { + imageView.image = imageView.currentImage + } + + if imageView.isAnimatingGif() { + DispatchQueue.global(qos: DispatchQoS.QoSClass.userInteractive).sync(execute: imageView.updateCurrentImage) + } + } + } +} diff --git a/Mongle/Pods/SwiftyGif/SwiftyGif/UIImage+SwiftyGif.swift b/Mongle/Pods/SwiftyGif/SwiftyGif/UIImage+SwiftyGif.swift new file mode 100755 index 0000000..e8319bb --- /dev/null +++ b/Mongle/Pods/SwiftyGif/SwiftyGif/UIImage+SwiftyGif.swift @@ -0,0 +1,332 @@ +// +// UIImage+SwiftyGif.swift +// + +import ImageIO +import UIKit + +public typealias GifLevelOfIntegrity = Float + +extension GifLevelOfIntegrity { + public static let highestNoFrameSkipping: GifLevelOfIntegrity = 1 + public static let `default`: GifLevelOfIntegrity = 0.8 + public static let lowForManyGifs: GifLevelOfIntegrity = 0.5 + public static let lowForTooManyGifs: GifLevelOfIntegrity = 0.2 + public static let superLowForSlideShow: GifLevelOfIntegrity = 0.1 +} + +enum GifParseError: Error { + case invalidFilename + case noImages + case noProperties + case noGifDictionary + case noTimingInfo +} + +extension GifParseError: LocalizedError { + public var errorDescription: String? { + switch self { + case .invalidFilename: + return "Invalid file name" + case .noImages,.noProperties, .noGifDictionary,.noTimingInfo: + return "Invalid gif file " + } + } +} + +public extension UIImage { + /// Convenience initializer. Creates a gif with its backing data. + /// + /// - Parameter imageData: The actual image data, can be GIF or some other format + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + convenience init?(imageData:Data, levelOfIntegrity: GifLevelOfIntegrity = .default) throws { + do { + try self.init(gifData: imageData, levelOfIntegrity: levelOfIntegrity) + } catch { + self.init(data: imageData) + } + } + + /// Convenience initializer. Creates a image with its backing data. + /// + /// - Parameter imageName: Filename + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + convenience init?(imageName: String, levelOfIntegrity: GifLevelOfIntegrity = .default) throws { + self.init() + + do { + try setGif(imageName, levelOfIntegrity: levelOfIntegrity) + } catch { + self.init(named: imageName) + } + } +} + +// MARK: - Inits + +public extension UIImage { + + /// Convenience initializer. Creates a gif with its backing data. + /// + /// - Parameter gifData: The actual gif data + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + convenience init(gifData:Data, levelOfIntegrity: GifLevelOfIntegrity = .default) throws { + self.init() + try setGifFromData(gifData, levelOfIntegrity: levelOfIntegrity) + } + + /// Convenience initializer. Creates a gif with its backing data. + /// + /// - Parameter gifName: Filename + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + convenience init(gifName: String, levelOfIntegrity: GifLevelOfIntegrity = .default) throws { + self.init() + try setGif(gifName, levelOfIntegrity: levelOfIntegrity) + } + + /// Set backing data for this gif. Overwrites any existing data. + /// + /// - Parameter data: The actual gif data + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + func setGifFromData(_ data: Data, levelOfIntegrity: GifLevelOfIntegrity) throws { + guard let imageSource = CGImageSourceCreateWithData(data as CFData, nil) else { return } + self.imageSource = imageSource + imageData = data + + calculateFrameDelay(try delayTimes(imageSource), levelOfIntegrity: levelOfIntegrity) + calculateFrameSize() + } + + /// Set backing data for this gif. Overwrites any existing data. + /// + /// - Parameter name: Filename + func setGif(_ name: String) throws { + try setGif(name, levelOfIntegrity: .default) + } + + /// Check the number of frame for this gif + /// + /// - Return number of frames + func framesCount() -> Int { + return displayOrder?.count ?? 0 + } + + /// Set backing data for this gif. Overwrites any existing data. + /// + /// - Parameter name: Filename + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + func setGif(_ name: String, levelOfIntegrity: GifLevelOfIntegrity) throws { + if let url = Bundle.main.url(forResource: name, + withExtension: name.pathExtension() == "gif" ? "" : "gif") { + if let data = try? Data(contentsOf: url) { + try setGifFromData(data, levelOfIntegrity: levelOfIntegrity) + } + } else { + throw GifParseError.invalidFilename + } + } + + func clear() { + imageData = nil + imageSource = nil + displayOrder = nil + imageCount = nil + imageSize = nil + displayRefreshFactor = nil + } + + // MARK: Logic + + private func convertToDelay(_ pointer:UnsafeRawPointer?) -> Float? { + if pointer == nil { + return nil + } + + return unsafeBitCast(pointer, to:AnyObject.self).floatValue + } + + /// Get delay times for each frames + /// + /// - Parameter imageSource: reference to the gif image source + /// - Returns array of delays + private func delayTimes(_ imageSource:CGImageSource) throws -> [Float] { + let imageCount = CGImageSourceGetCount(imageSource) + + guard imageCount > 0 else { + throw GifParseError.noImages + } + + var imageProperties = [CFDictionary]() + + for i in 0.. CFDictionary in + let key = Unmanaged.passUnretained(kCGImagePropertyGIFDictionary).toOpaque() + let value = CFDictionaryGetValue(dict, key) + + if value == nil { + throw GifParseError.noGifDictionary + } + + return unsafeBitCast(value, to: CFDictionary.self) + } + + let EPS:Float = 1e-6 + + let frameDelays:[Float] = try frameProperties.map() { + let unclampedKey = Unmanaged.passUnretained(kCGImagePropertyGIFUnclampedDelayTime).toOpaque() + let unclampedPointer:UnsafeRawPointer? = CFDictionaryGetValue($0, unclampedKey) + + if let value = convertToDelay(unclampedPointer), value >= EPS { + return value + } + + let clampedKey = Unmanaged.passUnretained(kCGImagePropertyGIFDelayTime).toOpaque() + let clampedPointer:UnsafeRawPointer? = CFDictionaryGetValue($0, clampedKey) + + if let value = convertToDelay(clampedPointer) { + return value + } + + throw GifParseError.noTimingInfo + } + + return frameDelays + } + + /// Compute backing data for this gif + /// + /// - Parameter delaysArray: decoded delay times for this gif + /// - Parameter levelOfIntegrity: 0 to 1, 1 meaning no frame skipping + private func calculateFrameDelay(_ delaysArray: [Float], levelOfIntegrity: GifLevelOfIntegrity) { + let levelOfIntegrity = max(0, min(1, levelOfIntegrity)) + var delays = delaysArray + + // Factors send to CADisplayLink.frameInterval + let displayRefreshFactors = [60, 30, 20, 15, 12, 10, 6, 5, 4, 3, 2, 1] + + // maxFramePerSecond,default is 60 + let maxFramePerSecond = displayRefreshFactors[0] + + // frame numbers per second + let displayRefreshRates = displayRefreshFactors.map { maxFramePerSecond / $0 } + + // time interval per frame + let displayRefreshDelayTime = displayRefreshRates.map { 1 / Float($0) } + + // caclulate the time when each frame should be displayed at(start at 0) + for i in delays.indices.dropFirst() { + delays[i] += delays[i - 1] + } + + //find the appropriate Factors then BREAK + for (i, delayTime) in displayRefreshDelayTime.enumerated() { + let displayPosition = delays.map { Int($0 / delayTime) } + var frameLoseCount: Float = 0 + + for j in displayPosition.indices.dropFirst() where displayPosition[j] == displayPosition[j - 1] { + frameLoseCount += 1 + } + + if displayPosition.first == 0 { + frameLoseCount += 1 + } + + if frameLoseCount <= Float(displayPosition.count) * (1 - levelOfIntegrity) || i == displayRefreshDelayTime.count - 1 { + imageCount = displayPosition.last + displayRefreshFactor = displayRefreshFactors[i] + displayOrder = [] + var oldIndex = 0 + var newIndex = 1 + let imageCount = self.imageCount ?? 0 + + while newIndex <= imageCount && oldIndex < displayPosition.count { + if newIndex <= displayPosition[oldIndex] { + displayOrder?.append(oldIndex) + newIndex += 1 + } else { + oldIndex += 1 + } + } + + break + } + } + } + + /// Compute frame size for this gif + private func calculateFrameSize(){ + guard let imageSource = imageSource, + let imageCount = imageCount, + let cgImage = CGImageSourceCreateImageAtIndex(imageSource, 0, nil) else { + return + } + + let image = UIImage(cgImage: cgImage) + imageSize = Int(image.size.height * image.size.width * 4) * imageCount / 1_000_000 + } +} + +// MARK: - Properties + +private let _imageSourceKey = malloc(4) +private let _displayRefreshFactorKey = malloc(4) +private let _imageSizeKey = malloc(4) +private let _imageCountKey = malloc(4) +private let _displayOrderKey = malloc(4) +private let _imageDataKey = malloc(4) + +public extension UIImage { + + var imageSource: CGImageSource? { + get { + let result = objc_getAssociatedObject(self, _imageSourceKey!) + return result == nil ? nil : (result as! CGImageSource) + } + set { + objc_setAssociatedObject(self, _imageSourceKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + } + + var displayRefreshFactor: Int?{ + get { return objc_getAssociatedObject(self, _displayRefreshFactorKey!) as? Int } + set { objc_setAssociatedObject(self, _displayRefreshFactorKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var imageSize: Int?{ + get { return objc_getAssociatedObject(self, _imageSizeKey!) as? Int } + set { objc_setAssociatedObject(self, _imageSizeKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var imageCount: Int?{ + get { return objc_getAssociatedObject(self, _imageCountKey!) as? Int } + set { objc_setAssociatedObject(self, _imageCountKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var displayOrder: [Int]?{ + get { return objc_getAssociatedObject(self, _displayOrderKey!) as? [Int] } + set { objc_setAssociatedObject(self, _displayOrderKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var imageData:Data? { + get { + let result = objc_getAssociatedObject(self, _imageDataKey!) + return result == nil ? nil : (result as? Data) + } + set { + objc_setAssociatedObject(self, _imageDataKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + } + } +} + +extension String { + fileprivate func pathExtension() -> String { + return (self as NSString).pathExtension + } +} diff --git a/Mongle/Pods/SwiftyGif/SwiftyGif/UIImageView+SwiftyGif.swift b/Mongle/Pods/SwiftyGif/SwiftyGif/UIImageView+SwiftyGif.swift new file mode 100755 index 0000000..6bf721e --- /dev/null +++ b/Mongle/Pods/SwiftyGif/SwiftyGif/UIImageView+SwiftyGif.swift @@ -0,0 +1,484 @@ +// +// UIImageView+SwiftyGif.swift +// + +import ImageIO +import UIKit + +@objc public protocol SwiftyGifDelegate { + @objc optional func gifDidStart(sender: UIImageView) + @objc optional func gifDidLoop(sender: UIImageView) + @objc optional func gifDidStop(sender: UIImageView) + @objc optional func gifURLDidFinish(sender: UIImageView) + @objc optional func gifURLDidFail(sender: UIImageView, url: URL, error: Error?) +} + +public extension UIImageView { + /// Set an image and a manager to an existing UIImageView. If the image is not an GIF image, set it in normal way and remove self form SwiftyGifManager + /// + /// WARNING : this overwrite any previous gif. + /// - Parameter gifImage: The UIImage containing the gif backing data + /// - Parameter manager: The manager to handle the gif display + /// - Parameter loopCount: The number of loops we want for this gif. -1 means infinite. + func setImage(_ image: UIImage, manager: SwiftyGifManager = .defaultManager, loopCount: Int = -1) { + if let _ = image.imageData { + setGifImage(image, manager: manager, loopCount: loopCount) + } else { + manager.deleteImageView(self) + self.image = image + } + } +} + +public extension UIImageView { + + // MARK: - Inits + + /// Convenience initializer. Creates a gif holder (defaulted to infinite loop). + /// + /// - Parameter gifImage: The UIImage containing the gif backing data + /// - Parameter manager: The manager to handle the gif display + convenience init(gifImage: UIImage, manager: SwiftyGifManager = .defaultManager, loopCount: Int = -1) { + self.init() + setGifImage(gifImage,manager: manager, loopCount: loopCount) + } + + /// Convenience initializer. Creates a gif holder (defaulted to infinite loop). + /// + /// - Parameter gifImage: The UIImage containing the gif backing data + /// - Parameter manager: The manager to handle the gif display + convenience init(gifURL: URL, manager: SwiftyGifManager = .defaultManager, loopCount: Int = -1) { + self.init() + setGifFromURL(gifURL, manager: manager, loopCount: loopCount) + } + + /// Set a gif image and a manager to an existing UIImageView. + /// + /// WARNING : this overwrite any previous gif. + /// - Parameter gifImage: The UIImage containing the gif backing data + /// - Parameter manager: The manager to handle the gif display + /// - Parameter loopCount: The number of loops we want for this gif. -1 means infinite. + func setGifImage(_ gifImage: UIImage, manager: SwiftyGifManager = .defaultManager, loopCount: Int = -1) { + if let imageData = gifImage.imageData, (gifImage.imageCount ?? 0) < 1 { + image = UIImage(data: imageData) + return + } + + self.loopCount = loopCount + self.gifImage = gifImage + animationManager = manager + syncFactor = 0 + displayOrderIndex = 0 + cache = NSCache() + haveCache = false + + if let source = gifImage.imageSource, let cgImage = CGImageSourceCreateImageAtIndex(source, 0, nil) { + currentImage = UIImage(cgImage: cgImage) + + if manager.addImageView(self) { + startDisplay() + startAnimatingGif() + } + } + } +} + +// MARK: - Download gif + +public extension UIImageView { + + /// Download gif image and sets it. + /// + /// - Parameters: + /// - url: The URL pointing to the gif data + /// - manager: The manager to handle the gif display + /// - loopCount: The number of loops we want for this gif. -1 means infinite. + /// - showLoader: Show UIActivityIndicatorView or not + /// - Returns: An URL session task. Note: You can cancel the downloading task if it needed. + @discardableResult + func setGifFromURL(_ url: URL, + manager: SwiftyGifManager = .defaultManager, + loopCount: Int = -1, + levelOfIntegrity: GifLevelOfIntegrity = .default, + session: URLSession = URLSession.shared, + showLoader: Bool = true, + customLoader: UIView? = nil) -> URLSessionDataTask? { + + if let data = manager.remoteCache[url] { + self.parseDownloadedGif(url: url, + data: data, + error: nil, + manager: manager, + loopCount: loopCount, + levelOfIntegrity: levelOfIntegrity) + return nil + } + + stopAnimatingGif() + + let loader: UIView? = showLoader ? createLoader(from: customLoader) : nil + + let task = session.dataTask(with: url) { data, _, error in + DispatchQueue.main.async { + loader?.removeFromSuperview() + self.parseDownloadedGif(url: url, + data: data, + error: error, + manager: manager, + loopCount: loopCount, + levelOfIntegrity: levelOfIntegrity) + } + } + + task.resume() + + return task + } + + private func createLoader(from view: UIView? = nil) -> UIView { + let loader = view ?? UIActivityIndicatorView() + addSubview(loader) + loader.translatesAutoresizingMaskIntoConstraints = false + + addConstraint(NSLayoutConstraint( + item: loader, + attribute: .centerX, + relatedBy: .equal, + toItem: self, + attribute: .centerX, + multiplier: 1, + constant: 0)) + + addConstraint(NSLayoutConstraint( + item: loader, + attribute: .centerY, + relatedBy: .equal, + toItem: self, + attribute: .centerY, + multiplier: 1, + constant: 0)) + + (loader as? UIActivityIndicatorView)?.startAnimating() + + return loader + } + + private func parseDownloadedGif(url: URL, + data: Data?, + error: Error?, + manager: SwiftyGifManager, + loopCount: Int, + levelOfIntegrity: GifLevelOfIntegrity) { + guard let data = data else { + report(url: url, error: error) + return + } + + do { + let image = try UIImage(gifData: data, levelOfIntegrity: levelOfIntegrity) + manager.remoteCache[url] = data + setGifImage(image, manager: manager, loopCount: loopCount) + startAnimatingGif() + delegate?.gifURLDidFinish?(sender: self) + } catch { + report(url: url, error: error) + } + } + + private func report(url: URL, error: Error?) { + delegate?.gifURLDidFail?(sender: self, url: url, error: error) + } +} + +// MARK: - Logic + +public extension UIImageView { + + /// Start displaying the gif for this UIImageView. + private func startDisplay() { + displaying = true + updateCache() + } + + /// Stop displaying the gif for this UIImageView. + private func stopDisplay() { + displaying = false + updateCache() + } + + /// Start displaying the gif for this UIImageView. + func startAnimatingGif() { + isPlaying = true + } + + /// Stop displaying the gif for this UIImageView. + func stopAnimatingGif() { + isPlaying = false + } + + /// Check if this imageView is currently playing a gif + /// + /// - Returns wether the gif is currently playing + func isAnimatingGif() -> Bool{ + return isPlaying + } + + /// Show a specific frame based on a delta from current frame + /// + /// - Parameter delta: The delsta from current frame we want + func showFrameForIndexDelta(_ delta: Int) { + guard let gifImage = gifImage else { return } + var nextIndex = displayOrderIndex + delta + + while nextIndex >= gifImage.framesCount() { + nextIndex -= gifImage.framesCount() + } + + while nextIndex < 0 { + nextIndex += gifImage.framesCount() + } + + showFrameAtIndex(nextIndex) + } + + /// Show a specific frame + /// + /// - Parameter index: The index of frame to show + func showFrameAtIndex(_ index: Int) { + displayOrderIndex = index + updateFrame() + } + + /// Update cache for the current imageView. + func updateCache() { + guard let animationManager = animationManager else { return } + + if animationManager.hasCache(self) && !haveCache { + prepareCache() + haveCache = true + } else if !animationManager.hasCache(self) && haveCache { + cache?.removeAllObjects() + haveCache = false + } + } + + /// Update current image displayed. This method is called by the manager. + func updateCurrentImage() { + if displaying { + updateFrame() + updateIndex() + + if loopCount == 0 || !isDisplayedInScreen(self) || !isPlaying { + stopDisplay() + } + } else { + if isDisplayedInScreen(self) && loopCount != 0 && isPlaying { + startDisplay() + } + + if isDiscarded(self) { + animationManager?.deleteImageView(self) + } + } + } + + /// Force update frame + private func updateFrame() { + if haveCache, let image = cache?.object(forKey: displayOrderIndex as AnyObject) as? UIImage { + currentImage = image + } else { + currentImage = frameAtIndex(index: currentFrameIndex()) + } + } + + /// Get current frame index + func currentFrameIndex() -> Int{ + return displayOrderIndex + } + + /// Get frame at specific index + func frameAtIndex(index: Int) -> UIImage { + guard let gifImage = gifImage, + let imageSource = gifImage.imageSource, + let displayOrder = gifImage.displayOrder, index < displayOrder.count, + let cgImage = CGImageSourceCreateImageAtIndex(imageSource, displayOrder[index], nil) else { + return UIImage() + } + + return UIImage(cgImage: cgImage) + } + + /// Check if the imageView has been discarded and is not in the view hierarchy anymore. + /// + /// - Returns : A boolean for weather the imageView was discarded + func isDiscarded(_ imageView: UIView?) -> Bool { + return imageView?.superview == nil + } + + /// Check if the imageView is displayed. + /// + /// - Returns : A boolean for weather the imageView is displayed + func isDisplayedInScreen(_ imageView: UIView?) -> Bool { + guard !isHidden, let imageView = imageView else { + return false + } + + let screenRect = UIScreen.main.bounds + let viewRect = imageView.convert(bounds, to:nil) + let intersectionRect = viewRect.intersection(screenRect) + + return window != nil && !intersectionRect.isEmpty && !intersectionRect.isNull + } + + func clear() { + if let gifImage = gifImage { + gifImage.clear() + } + + gifImage = nil + currentImage = nil + cache?.removeAllObjects() + animationManager = nil + image = nil + } + + /// Update loop count and sync factor. + private func updateIndex() { + guard let gif = self.gifImage, + let displayRefreshFactor = gif.displayRefreshFactor, + displayRefreshFactor > 0 else { + return + } + + syncFactor = (syncFactor + 1) % displayRefreshFactor + + if syncFactor == 0, let imageCount = gif.imageCount, imageCount > 0 { + displayOrderIndex = (displayOrderIndex+1) % imageCount + + if displayOrderIndex == 0 { + if loopCount == -1 { + delegate?.gifDidLoop?(sender: self) + } else if loopCount > 1 { + delegate?.gifDidLoop?(sender: self) + loopCount -= 1 + } else { + delegate?.gifDidStop?(sender: self) + loopCount -= 1 + } + } + } + } + + /// Prepare the cache by adding every images of the gif to an NSCache object. + private func prepareCache() { + guard let cache = self.cache else { return } + + cache.removeAllObjects() + + guard let gif = self.gifImage, + let displayOrder = gif.displayOrder, + let imageSource = gif.imageSource else { return } + + for (i, order) in displayOrder.enumerated() { + guard let cgImage = CGImageSourceCreateImageAtIndex(imageSource, order, nil) else { continue } + + cache.setObject(UIImage(cgImage: cgImage), forKey: i as AnyObject) + } + } +} + +// MARK: - Dynamic properties + +private let _gifImageKey = malloc(4) +private let _cacheKey = malloc(4) +private let _currentImageKey = malloc(4) +private let _displayOrderIndexKey = malloc(4) +private let _syncFactorKey = malloc(4) +private let _haveCacheKey = malloc(4) +private let _loopCountKey = malloc(4) +private let _displayingKey = malloc(4) +private let _isPlayingKey = malloc(4) +private let _animationManagerKey = malloc(4) +private let _delegateKey = malloc(4) + +public extension UIImageView { + + var gifImage: UIImage? { + get { return possiblyNil(_gifImageKey) } + set { objc_setAssociatedObject(self, _gifImageKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var currentImage: UIImage? { + get { return possiblyNil(_currentImageKey) } + set { objc_setAssociatedObject(self, _currentImageKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + private var displayOrderIndex: Int { + get { return value(_displayOrderIndexKey, 0) } + set { objc_setAssociatedObject(self, _displayOrderIndexKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + private var syncFactor: Int { + get { return value(_syncFactorKey, 0) } + set { objc_setAssociatedObject(self, _syncFactorKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var loopCount: Int { + get { return value(_loopCountKey, 0) } + set { objc_setAssociatedObject(self, _loopCountKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var animationManager: SwiftyGifManager? { + get { return (objc_getAssociatedObject(self, _animationManagerKey!) as? SwiftyGifManager) } + set { objc_setAssociatedObject(self, _animationManagerKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var delegate: SwiftyGifDelegate? { + get { return (objc_getAssociatedObject(self, _delegateKey!) as? SwiftyGifDelegate) } + set { objc_setAssociatedObject(self, _delegateKey!, newValue, .OBJC_ASSOCIATION_ASSIGN) } + } + + private var haveCache: Bool { + get { return value(_haveCacheKey, false) } + set { objc_setAssociatedObject(self, _haveCacheKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + var displaying: Bool { + get { return value(_displayingKey, false) } + set { objc_setAssociatedObject(self, _displayingKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + private var isPlaying: Bool { + get { + return value(_isPlayingKey, false) + } + set { + objc_setAssociatedObject(self, _isPlayingKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) + + if newValue { + delegate?.gifDidStart?(sender: self) + } else { + delegate?.gifDidStop?(sender: self) + } + } + } + + private var cache: NSCache? { + get { return (objc_getAssociatedObject(self, _cacheKey!) as? NSCache) } + set { objc_setAssociatedObject(self, _cacheKey!, newValue, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) } + } + + private func value(_ key:UnsafeMutableRawPointer?, _ defaultValue:T) -> T { + return (objc_getAssociatedObject(self, key!) as? T) ?? defaultValue + } + + private func possiblyNil(_ key:UnsafeMutableRawPointer?) -> T? { + let result = objc_getAssociatedObject(self, key!) + + if result == nil { + return nil + } + + return (result as? T) + } +} diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.markdown b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.markdown index 3015063..88a2ad1 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.markdown +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.markdown @@ -126,6 +126,31 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +## SwiftyGif + +The MIT License (MIT) + +Copyright (c) 2016 Alexis Creuzot + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ## Then The MIT License (MIT) diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.plist b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.plist index f1daa8e..750d00f 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.plist +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-acknowledgements.plist @@ -171,6 +171,37 @@ THE SOFTWARE. FooterText The MIT License (MIT) +Copyright (c) 2016 Alexis Creuzot + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + License + MIT + Title + SwiftyGif + Type + PSGroupSpecifier + + + FooterText + The MIT License (MIT) + Copyright (c) 2015 Suyeol Jeon (xoul.kr) Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-input-files.xcfilelist b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-input-files.xcfilelist index f513ba1..0125f6e 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-input-files.xcfilelist +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-input-files.xcfilelist @@ -4,5 +4,6 @@ ${BUILT_PRODUCTS_DIR}/Gifu/Gifu.framework ${BUILT_PRODUCTS_DIR}/Hero/Hero.framework ${BUILT_PRODUCTS_DIR}/Kingfisher/Kingfisher.framework ${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework +${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework ${BUILT_PRODUCTS_DIR}/Then/Then.framework ${BUILT_PRODUCTS_DIR}/lottie-ios/Lottie.framework \ No newline at end of file diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-output-files.xcfilelist b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-output-files.xcfilelist index e8f912e..b73e219 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-output-files.xcfilelist +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Debug-output-files.xcfilelist @@ -3,5 +3,6 @@ ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Gifu.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Hero.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Kingfisher.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SnapKit.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftyGif.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Then.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Lottie.framework \ No newline at end of file diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-input-files.xcfilelist b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-input-files.xcfilelist index f513ba1..0125f6e 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-input-files.xcfilelist +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-input-files.xcfilelist @@ -4,5 +4,6 @@ ${BUILT_PRODUCTS_DIR}/Gifu/Gifu.framework ${BUILT_PRODUCTS_DIR}/Hero/Hero.framework ${BUILT_PRODUCTS_DIR}/Kingfisher/Kingfisher.framework ${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework +${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework ${BUILT_PRODUCTS_DIR}/Then/Then.framework ${BUILT_PRODUCTS_DIR}/lottie-ios/Lottie.framework \ No newline at end of file diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-output-files.xcfilelist b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-output-files.xcfilelist index e8f912e..b73e219 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-output-files.xcfilelist +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks-Release-output-files.xcfilelist @@ -3,5 +3,6 @@ ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Gifu.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Hero.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Kingfisher.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SnapKit.framework +${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftyGif.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Then.framework ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Lottie.framework \ No newline at end of file diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks.sh b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks.sh index 5f98de1..c1a1015 100755 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks.sh +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle-frameworks.sh @@ -202,6 +202,7 @@ if [[ "$CONFIGURATION" == "Debug" ]]; then install_framework "${BUILT_PRODUCTS_DIR}/Hero/Hero.framework" install_framework "${BUILT_PRODUCTS_DIR}/Kingfisher/Kingfisher.framework" install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" + install_framework "${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework" install_framework "${BUILT_PRODUCTS_DIR}/Then/Then.framework" install_framework "${BUILT_PRODUCTS_DIR}/lottie-ios/Lottie.framework" fi @@ -211,6 +212,7 @@ if [[ "$CONFIGURATION" == "Release" ]]; then install_framework "${BUILT_PRODUCTS_DIR}/Hero/Hero.framework" install_framework "${BUILT_PRODUCTS_DIR}/Kingfisher/Kingfisher.framework" install_framework "${BUILT_PRODUCTS_DIR}/SnapKit/SnapKit.framework" + install_framework "${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework" install_framework "${BUILT_PRODUCTS_DIR}/Then/Then.framework" install_framework "${BUILT_PRODUCTS_DIR}/lottie-ios/Lottie.framework" fi diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.debug.xcconfig b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.debug.xcconfig index c3665ec..2aef3ab 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.debug.xcconfig +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.debug.xcconfig @@ -1,9 +1,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu" "${PODS_CONFIGURATION_BUILD_DIR}/Hero" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/Then" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu" "${PODS_CONFIGURATION_BUILD_DIR}/Hero" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyGif" "${PODS_CONFIGURATION_BUILD_DIR}/Then" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu/Gifu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Hero/Hero.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Then/Then.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu/Gifu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Hero/Hero.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyGif/SwiftyGif.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Then/Then.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_LDFLAGS = $(inherited) -framework "Accelerate" -framework "Alamofire" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "Foundation" -framework "Gifu" -framework "Hero" -framework "Kingfisher" -framework "Lottie" -framework "QuartzCore" -framework "SnapKit" -framework "Then" -framework "UIKit" +OTHER_LDFLAGS = $(inherited) -framework "Accelerate" -framework "Alamofire" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "Foundation" -framework "Gifu" -framework "Hero" -framework "Kingfisher" -framework "Lottie" -framework "QuartzCore" -framework "SnapKit" -framework "SwiftyGif" -framework "Then" -framework "UIKit" OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.release.xcconfig b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.release.xcconfig index c3665ec..2aef3ab 100644 --- a/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.release.xcconfig +++ b/Mongle/Pods/Target Support Files/Pods-Mongle/Pods-Mongle.release.xcconfig @@ -1,9 +1,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu" "${PODS_CONFIGURATION_BUILD_DIR}/Hero" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/Then" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu" "${PODS_CONFIGURATION_BUILD_DIR}/Hero" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyGif" "${PODS_CONFIGURATION_BUILD_DIR}/Then" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu/Gifu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Hero/Hero.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Then/Then.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.framework/Headers" +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Gifu/Gifu.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Hero/Hero.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SnapKit/SnapKit.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyGif/SwiftyGif.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/Then/Then.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/lottie-ios/Lottie.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_LDFLAGS = $(inherited) -framework "Accelerate" -framework "Alamofire" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "Foundation" -framework "Gifu" -framework "Hero" -framework "Kingfisher" -framework "Lottie" -framework "QuartzCore" -framework "SnapKit" -framework "Then" -framework "UIKit" +OTHER_LDFLAGS = $(inherited) -framework "Accelerate" -framework "Alamofire" -framework "CFNetwork" -framework "CoreGraphics" -framework "CoreMedia" -framework "Foundation" -framework "Gifu" -framework "Hero" -framework "Kingfisher" -framework "Lottie" -framework "QuartzCore" -framework "SnapKit" -framework "SwiftyGif" -framework "Then" -framework "UIKit" OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-Info.plist b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-Info.plist new file mode 100644 index 0000000..ed54e5d --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 5.3.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-dummy.m b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-dummy.m new file mode 100644 index 0000000..c522b94 --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_SwiftyGif : NSObject +@end +@implementation PodsDummy_SwiftyGif +@end diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-prefix.pch b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-prefix.pch new file mode 100644 index 0000000..beb2a24 --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-umbrella.h b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-umbrella.h new file mode 100644 index 0000000..42df561 --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif-umbrella.h @@ -0,0 +1,17 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + +#import "SwiftyGif.h" + +FOUNDATION_EXPORT double SwiftyGifVersionNumber; +FOUNDATION_EXPORT const unsigned char SwiftyGifVersionString[]; + diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.debug.xcconfig b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.debug.xcconfig new file mode 100644 index 0000000..fb43df4 --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.debug.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftyGif +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/SwiftyGif +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.modulemap b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.modulemap new file mode 100644 index 0000000..3749666 --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.modulemap @@ -0,0 +1,6 @@ +framework module SwiftyGif { + umbrella header "SwiftyGif-umbrella.h" + + export * + module * { export * } +} diff --git a/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.release.xcconfig b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.release.xcconfig new file mode 100644 index 0000000..fb43df4 --- /dev/null +++ b/Mongle/Pods/Target Support Files/SwiftyGif/SwiftyGif.release.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftyGif +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/SwiftyGif +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES