From 64f1bc62a6dacf586355b4fa5bf24cd1de9370c5 Mon Sep 17 00:00:00 2001
From: George <george.makhoul@kuwaitnet.com>
Date: Thu, 20 Jun 2024 11:21:04 +0300
Subject: [PATCH] temp

---
 .DS_Store                                     |  Bin 8196 -> 8196 bytes
 MiniScanner.xcodeproj/project.pbxproj         |   62 +
 .../xcschemes/xcschememanagement.plist        |    2 +-
 .../xcshareddata/swiftpm/Package.resolved     |   24 +-
 .../UserInterfaceState.xcuserstate            |  Bin 276720 -> 240413 bytes
 .../xcdebugger/Breakpoints_v2.xcbkptlist      |   18 -
 MiniScanner/.DS_Store                         |  Bin 10244 -> 10244 bytes
 MiniScanner/Extensions/.DS_Store              |  Bin 0 -> 8196 bytes
 .../LogoAnimationView/LogoAnimationView.swift |    8 +
 .../LogoAnimationView/StickerView.swift       |  417 +++++
 .../UIView+Constraints.swift                  |   21 +
 MiniScanner/Extensions/MyExtention.swift      |  791 +++++++++
 .../PagerImageCollectionViewCell.swift        |    1 -
 .../CustomViews/BannerView.swift              |   49 +-
 .../CustomViews/BannerView.xib                |    2 +-
 .../EditViewController.swift                  |  108 +-
 .../EditViewController/EditViewController.xib |    7 +-
 MiniScanner/Supporting Files/.DS_Store        |  Bin 8196 -> 10244 bytes
 .../close.imageset/Contents.json              |   21 +
 .../Assets.xcassets/close.imageset/close.png  |  Bin 0 -> 3262 bytes
 .../resize.imageset/Contents.json             |   21 +
 .../resize.imageset/resize.png                |  Bin 0 -> 2599 bytes
 .../MultiPageScanSession.swift                |   24 +
 MiniScanner/Supporting Files/Info.plist       |    7 -
 .../LogoAnimationView/.DS_Store               |  Bin 0 -> 6148 bytes
 .../LogoAnimationView/StickerView.swift       |  417 +++++
 .../UIView+Constraints.swift                  |   21 +
 .../Supporting Files/MyExtention.swift        |  762 +++++++++
 .../Sources/FSPageControl.swift               |    0
 .../Sources/FSPageViewLayout.swift            |    0
 .../Sources/FSPageViewTransformer.swift       |    4 +-
 .../Sources/FSPagerCollectionView.swift       |    0
 .../Sources/FSPagerView.swift                 |   21 +-
 .../Sources/FSPagerViewCell.swift             |  105 ++
 .../Sources/FSPagerViewLayoutAttributes.swift |    0
 .../Sources/FSPagerViewObjcCompat.h           |    0
 .../Sources/FSPagerViewObjcCompat.m           |    0
 Podfile                                       |    1 -
 Podfile.lock                                  |    6 +-
 Pods/FSPagerView/README-OBJECTIVE-C.md        |  416 -----
 Pods/Manifest.lock                            |    6 +-
 Pods/Pods.xcodeproj/project.pbxproj           | 1476 +++++++----------
 .../xcschemes/FSPagerView.xcscheme            |   58 -
 .../xcschemes/xcschememanagement.plist        |   21 +-
 Pods/{FSPagerView => TLPhotoPicker}/LICENSE   |    2 +-
 Pods/TLPhotoPicker/README.md                  |  408 +++++
 .../Classes/SynchronizedDictionary.swift      |   54 +
 .../Classes/TLAlbumPopView.swift              |   83 +
 .../Classes/TLAssetCollection+Extension.swift |   68 +
 .../TLAssetPreviewViewController.swift        |  204 +++
 .../Classes/TLAssetsCollection.swift          |  430 +++++
 .../TLPhotoPicker/Classes/TLBundle.swift      |   29 +
 .../Classes/TLCollectionTableViewCell.swift   |   25 +
 .../Classes/TLCollectionTableViewCell.xib     |   60 +
 .../Classes/TLPhotoCollectionViewCell.swift   |  182 ++
 .../Classes/TLPhotoCollectionViewCell.xib     |  142 ++
 .../Classes/TLPhotoLibrary.swift              |  293 ++++
 .../TLPhotopickerDataSourcesProtocol.swift    |   17 +
 .../TLPhotosPickerViewController.swift        | 1358 +++++++++++++++
 .../Classes/TLPhotosPickerViewController.xib  |  232 +++
 .../TLPhotoPickerController.bundle/arrow.png  |  Bin 0 -> 1105 bytes
 .../camera@3x.png                             |  Bin 0 -> 3079 bytes
 .../insertPhotoMaterial@3x.png                |  Bin 0 -> 1672 bytes
 .../pop_arrow.png                             |  Bin 0 -> 1496 bytes
 .../TLPhotoPickerController.bundle/video.png  |  Bin 0 -> 834 bytes
 .../FSPagerView/FSPagerView-Info.plist        |   26 -
 .../FSPagerView/FSPagerView-dummy.m           |    5 -
 .../FSPagerView/FSPagerView-prefix.pch        |   12 -
 .../FSPagerView/FSPagerView-umbrella.h        |   17 -
 .../FSPagerView/FSPagerView.debug.xcconfig    |   15 -
 .../FSPagerView/FSPagerView.modulemap         |    6 -
 .../FSPagerView/FSPagerView.release.xcconfig  |   15 -
 ...Pods-MiniScanner-acknowledgements.markdown |   23 -
 .../Pods-MiniScanner-acknowledgements.plist   |   29 -
 ...er-frameworks-Debug-input-files.xcfilelist |    1 -
 ...r-frameworks-Debug-output-files.xcfilelist |    1 -
 ...-frameworks-Release-input-files.xcfilelist |    1 -
 ...frameworks-Release-output-files.xcfilelist |    1 -
 .../Pods-MiniScanner-frameworks.sh            |    2 -
 .../Pods-MiniScanner.debug.xcconfig           |    6 +-
 .../Pods-MiniScanner.release.xcconfig         |    6 +-
 81 files changed, 7083 insertions(+), 1567 deletions(-)
 create mode 100644 MiniScanner/Extensions/.DS_Store
 create mode 100755 MiniScanner/Extensions/LogoAnimationView/LogoAnimationView.swift
 create mode 100755 MiniScanner/Extensions/LogoAnimationView/StickerView.swift
 create mode 100755 MiniScanner/Extensions/LogoAnimationView/UIView+Constraints.swift
 create mode 100755 MiniScanner/Extensions/MyExtention.swift
 create mode 100644 MiniScanner/Supporting Files/Assets.xcassets/close.imageset/Contents.json
 create mode 100644 MiniScanner/Supporting Files/Assets.xcassets/close.imageset/close.png
 create mode 100644 MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/Contents.json
 create mode 100644 MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/resize.png
 create mode 100644 MiniScanner/Supporting Files/LogoAnimationView/.DS_Store
 create mode 100755 MiniScanner/Supporting Files/LogoAnimationView/StickerView.swift
 create mode 100755 MiniScanner/Supporting Files/LogoAnimationView/UIView+Constraints.swift
 create mode 100755 MiniScanner/Supporting Files/MyExtention.swift
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPageControl.swift (100%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPageViewLayout.swift (100%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPageViewTransformer.swift (99%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPagerCollectionView.swift (100%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPagerView.swift (97%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPagerViewCell.swift (67%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPagerViewLayoutAttributes.swift (100%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPagerViewObjcCompat.h (100%)
 rename {Pods/FSPagerView => MiniScanner/Supporting Files}/Sources/FSPagerViewObjcCompat.m (100%)
 delete mode 100644 Pods/FSPagerView/README-OBJECTIVE-C.md
 delete mode 100644 Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/FSPagerView.xcscheme
 rename Pods/{FSPagerView => TLPhotoPicker}/LICENSE (93%)
 create mode 100644 Pods/TLPhotoPicker/README.md
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/SynchronizedDictionary.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAlbumPopView.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetCollection+Extension.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetPreviewViewController.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetsCollection.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLBundle.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.xib
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.xib
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoLibrary.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotopickerDataSourcesProtocol.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.swift
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.xib
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/arrow.png
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/camera@3x.png
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/insertPhotoMaterial@3x.png
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/pop_arrow.png
 create mode 100644 Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/video.png
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView-Info.plist
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView-dummy.m
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView-prefix.pch
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView-umbrella.h
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView.debug.xcconfig
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView.modulemap
 delete mode 100644 Pods/Target Support Files/FSPagerView/FSPagerView.release.xcconfig

diff --git a/.DS_Store b/.DS_Store
index 5f07804f262af356ef417d73e26aebb21e8b73a3..e1fcced5fcaf1911be78ad5f61788a441f9cb554 100644
GIT binary patch
delta 26
icmZp1XmQw3E;!j+V9#bFp)0JL*(JWQZ2lv{&I|yH?FrNX

delta 73
zcmZp1XmQw3F37ljvX4Nans{}!nW>I~uBB0}jzYDik%5kaiLqI2EhmSlvc7dte0EN5
dUVi6f0U>$DuFVEQ*I75SNqlG7{7;0P82}?f74`rC

diff --git a/MiniScanner.xcodeproj/project.pbxproj b/MiniScanner.xcodeproj/project.pbxproj
index 9724627..e932361 100644
--- a/MiniScanner.xcodeproj/project.pbxproj
+++ b/MiniScanner.xcodeproj/project.pbxproj
@@ -84,7 +84,18 @@
 		53CD5F5E2C1505EC0010424B /* UIWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53CD5F5D2C1505EC0010424B /* UIWindow.swift */; };
 		53CD5F612C15A6210010424B /* SettingViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53CD5F5F2C15A6210010424B /* SettingViewController.swift */; };
 		53CD5F622C15A6210010424B /* SettingViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 53CD5F602C15A6210010424B /* SettingViewController.xib */; };
+		53D9D1C22C1AF521004D1C1C /* StickerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53D9D1BE2C1AF521004D1C1C /* StickerView.swift */; };
+		53D9D1C42C1AF521004D1C1C /* UIView+Constraints.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53D9D1C02C1AF521004D1C1C /* UIView+Constraints.swift */; };
+		53D9D1C52C1AF521004D1C1C /* MyExtention.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53D9D1C12C1AF521004D1C1C /* MyExtention.swift */; };
 		53E3A2092C19D17100C9B95E /* PreviewImageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E3A2082C19D17100C9B95E /* PreviewImageViewController.swift */; };
+		53E7D3352C1B00880025A1D3 /* FSPagerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D32C2C1B00880025A1D3 /* FSPagerView.swift */; };
+		53E7D3362C1B00880025A1D3 /* FSPageViewTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D32D2C1B00880025A1D3 /* FSPageViewTransformer.swift */; };
+		53E7D3372C1B00880025A1D3 /* FSPagerViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D32F2C1B00880025A1D3 /* FSPagerViewCell.swift */; };
+		53E7D3382C1B00880025A1D3 /* FSPagerViewLayoutAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D3302C1B00880025A1D3 /* FSPagerViewLayoutAttributes.swift */; };
+		53E7D3392C1B00880025A1D3 /* FSPageViewLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D3312C1B00880025A1D3 /* FSPageViewLayout.swift */; };
+		53E7D33A2C1B00880025A1D3 /* FSPageControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D3322C1B00880025A1D3 /* FSPageControl.swift */; };
+		53E7D33B2C1B00880025A1D3 /* FSPagerViewObjcCompat.m in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D3332C1B00880025A1D3 /* FSPagerViewObjcCompat.m */; };
+		53E7D33C2C1B00880025A1D3 /* FSPagerCollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53E7D3342C1B00880025A1D3 /* FSPagerCollectionView.swift */; };
 		53EDED962C18387E00DB8DF9 /* TYPageControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 53EDED922C18387E00DB8DF9 /* TYPageControl.m */; };
 		53EDED972C18387E00DB8DF9 /* TYCyclePagerView.m in Sources */ = {isa = PBXBuildFile; fileRef = 53EDED932C18387E00DB8DF9 /* TYCyclePagerView.m */; };
 		53EDED982C18387E00DB8DF9 /* TYCyclePagerTransformLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 53EDED942C18387E00DB8DF9 /* TYCyclePagerTransformLayout.m */; };
@@ -235,7 +246,19 @@
 		53CD5F5D2C1505EC0010424B /* UIWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIWindow.swift; sourceTree = "<group>"; };
 		53CD5F5F2C15A6210010424B /* SettingViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingViewController.swift; sourceTree = "<group>"; };
 		53CD5F602C15A6210010424B /* SettingViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SettingViewController.xib; sourceTree = "<group>"; };
+		53D9D1BE2C1AF521004D1C1C /* StickerView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StickerView.swift; sourceTree = "<group>"; };
+		53D9D1C02C1AF521004D1C1C /* UIView+Constraints.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "UIView+Constraints.swift"; sourceTree = "<group>"; };
+		53D9D1C12C1AF521004D1C1C /* MyExtention.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MyExtention.swift; sourceTree = "<group>"; };
 		53E3A2082C19D17100C9B95E /* PreviewImageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreviewImageViewController.swift; sourceTree = "<group>"; };
+		53E7D32C2C1B00880025A1D3 /* FSPagerView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPagerView.swift; sourceTree = "<group>"; };
+		53E7D32D2C1B00880025A1D3 /* FSPageViewTransformer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPageViewTransformer.swift; sourceTree = "<group>"; };
+		53E7D32E2C1B00880025A1D3 /* FSPagerViewObjcCompat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FSPagerViewObjcCompat.h; sourceTree = "<group>"; };
+		53E7D32F2C1B00880025A1D3 /* FSPagerViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPagerViewCell.swift; sourceTree = "<group>"; };
+		53E7D3302C1B00880025A1D3 /* FSPagerViewLayoutAttributes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPagerViewLayoutAttributes.swift; sourceTree = "<group>"; };
+		53E7D3312C1B00880025A1D3 /* FSPageViewLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPageViewLayout.swift; sourceTree = "<group>"; };
+		53E7D3322C1B00880025A1D3 /* FSPageControl.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPageControl.swift; sourceTree = "<group>"; };
+		53E7D3332C1B00880025A1D3 /* FSPagerViewObjcCompat.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FSPagerViewObjcCompat.m; sourceTree = "<group>"; };
+		53E7D3342C1B00880025A1D3 /* FSPagerCollectionView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FSPagerCollectionView.swift; sourceTree = "<group>"; };
 		53EDED902C18387E00DB8DF9 /* TYCyclePagerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TYCyclePagerView.h; sourceTree = "<group>"; };
 		53EDED912C18387E00DB8DF9 /* TYCyclePagerTransformLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TYCyclePagerTransformLayout.h; sourceTree = "<group>"; };
 		53EDED922C18387E00DB8DF9 /* TYPageControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TYPageControl.m; sourceTree = "<group>"; };
@@ -540,6 +563,31 @@
 			path = KNAlert;
 			sourceTree = "<group>";
 		};
+		53D9D1BD2C1AF521004D1C1C /* LogoAnimationView */ = {
+			isa = PBXGroup;
+			children = (
+				53D9D1BE2C1AF521004D1C1C /* StickerView.swift */,
+				53D9D1C02C1AF521004D1C1C /* UIView+Constraints.swift */,
+			);
+			path = LogoAnimationView;
+			sourceTree = "<group>";
+		};
+		53E7D32B2C1B00880025A1D3 /* Sources */ = {
+			isa = PBXGroup;
+			children = (
+				53E7D32C2C1B00880025A1D3 /* FSPagerView.swift */,
+				53E7D32D2C1B00880025A1D3 /* FSPageViewTransformer.swift */,
+				53E7D32E2C1B00880025A1D3 /* FSPagerViewObjcCompat.h */,
+				53E7D32F2C1B00880025A1D3 /* FSPagerViewCell.swift */,
+				53E7D3302C1B00880025A1D3 /* FSPagerViewLayoutAttributes.swift */,
+				53E7D3312C1B00880025A1D3 /* FSPageViewLayout.swift */,
+				53E7D3322C1B00880025A1D3 /* FSPageControl.swift */,
+				53E7D3332C1B00880025A1D3 /* FSPagerViewObjcCompat.m */,
+				53E7D3342C1B00880025A1D3 /* FSPagerCollectionView.swift */,
+			);
+			path = Sources;
+			sourceTree = "<group>";
+		};
 		53EDED8F2C18387E00DB8DF9 /* CyclePagerView */ = {
 			isa = PBXGroup;
 			children = (
@@ -724,6 +772,9 @@
 		EC8A9B0C254DC30800F9AF99 /* Supporting Files */ = {
 			isa = PBXGroup;
 			children = (
+				53E7D32B2C1B00880025A1D3 /* Sources */,
+				53D9D1BD2C1AF521004D1C1C /* LogoAnimationView */,
+				53D9D1C12C1AF521004D1C1C /* MyExtention.swift */,
 				53EDED8F2C18387E00DB8DF9 /* CyclePagerView */,
 				53F21F932C1377B900172BFC /* Fonts */,
 				53014F4B2C11A8E80071CE39 /* CustomWeScan */,
@@ -941,8 +992,10 @@
 				5359841E2C14B835003EB6ED /* SearchFilesView.swift in Sources */,
 				53014FA02C11A8E80071CE39 /* MultiPageScanSession.swift in Sources */,
 				53014F9A2C11A8E80071CE39 /* CIImage+Utils.swift in Sources */,
+				53D9D1C42C1AF521004D1C1C /* UIView+Constraints.swift in Sources */,
 				53CD5F5E2C1505EC0010424B /* UIWindow.swift in Sources */,
 				EC8A9B17254DCC2900F9AF99 /* URL+Extensions.swift in Sources */,
+				53D9D1C52C1AF521004D1C1C /* MyExtention.swift in Sources */,
 				535983F22C144E87003EB6ED /* Keys.swift in Sources */,
 				EC70252C254E066400BE1958 /* SettingsViewController.swift in Sources */,
 				EC0CF21D254D8F3900888722 /* String+Extensions.swift in Sources */,
@@ -954,16 +1007,19 @@
 				53014FAA2C11A8E80071CE39 /* Quadrilateral.swift in Sources */,
 				53EDED982C18387E00DB8DF9 /* TYCyclePagerTransformLayout.m in Sources */,
 				53014FA42C11A8E80071CE39 /* EditScanViewController.swift in Sources */,
+				53E7D33C2C1B00880025A1D3 /* FSPagerCollectionView.swift in Sources */,
 				EC8A9B1A254DCE3E00F9AF99 /* UIImage+Extensions.swift in Sources */,
 				53014FB72C11A8E80071CE39 /* CaptureDevice.swift in Sources */,
 				53014F8F2C11A8E80071CE39 /* RectangleFeaturesFunnel.swift in Sources */,
 				53014F932C11A8E80071CE39 /* PDFCreator.swift in Sources */,
 				539D1C852C164F85009DB24A /* CustomTabBarView.swift in Sources */,
+				53E7D33B2C1B00880025A1D3 /* FSPagerViewObjcCompat.m in Sources */,
 				EC702537254E1DE000BE1958 /* UIViewController+Extensions.swift in Sources */,
 				535983E92C1428D4003EB6ED /* UIColor+Extensions.swift in Sources */,
 				53014F972C11A8E80071CE39 /* AVCaptureVideoOrientation+Utils.swift in Sources */,
 				535983EF2C142C9F003EB6ED /* Localization.swift in Sources */,
 				53014F992C11A8E80071CE39 /* CGPoint+Utils.swift in Sources */,
+				53E7D3392C1B00880025A1D3 /* FSPageViewLayout.swift in Sources */,
 				53014FA62C11A8E80071CE39 /* Error.swift in Sources */,
 				53014FA72C11A8E80071CE39 /* VisionRectangleDetector.swift in Sources */,
 				53BAE0ED2C15E0890072189E /* EditViewController.swift in Sources */,
@@ -976,6 +1032,8 @@
 				53014FA92C11A8E80071CE39 /* QuadrilateralView.swift in Sources */,
 				53CD5F562C1503150010424B /* BMViewController.swift in Sources */,
 				EC702546254E1E9E00BE1958 /* WalkthroughModel.swift in Sources */,
+				53D9D1C22C1AF521004D1C1C /* StickerView.swift in Sources */,
+				53E7D3352C1B00880025A1D3 /* FSPagerView.swift in Sources */,
 				53014F912C11A8E80071CE39 /* ShutterButton.swift in Sources */,
 				53F21F8B2C1246AF00172BFC /* AllFolderTableViewCell.swift in Sources */,
 				53014FBD2C11A8E80071CE39 /* CaptureSession+Focus.swift in Sources */,
@@ -991,7 +1049,9 @@
 				53014FA32C11A8E80071CE39 /* ZoomGestureController.swift in Sources */,
 				53EDED962C18387E00DB8DF9 /* TYPageControl.m in Sources */,
 				53E3A2092C19D17100C9B95E /* PreviewImageViewController.swift in Sources */,
+				53E7D3362C1B00880025A1D3 /* FSPageViewTransformer.swift in Sources */,
 				EC70252A254E066400BE1958 /* SettingsViewController+Safari.swift in Sources */,
+				53E7D3372C1B00880025A1D3 /* FSPagerViewCell.swift in Sources */,
 				53014F9B2C11A8E80071CE39 /* CGAffineTransform+Utils.swift in Sources */,
 				53014FBC2C11A8E80071CE39 /* CaptureSession.swift in Sources */,
 				EC702542254E1E7500BE1958 /* ClassicWalkthroughViewController.swift in Sources */,
@@ -1004,6 +1064,7 @@
 				53014FB82C11A8E80071CE39 /* Transformable.swift in Sources */,
 				53014FA22C11A8E80071CE39 /* ScannedPageViewController.swift in Sources */,
 				EC8A9B1D254DCEC600F9AF99 /* File.swift in Sources */,
+				53E7D33A2C1B00880025A1D3 /* FSPageControl.swift in Sources */,
 				EC8A9B24254DE72F00F9AF99 /* UIView+Extensions.swift in Sources */,
 				EC0CF200254D8BBF00888722 /* SceneDelegate.swift in Sources */,
 				53014FBB2C11A8E80071CE39 /* CaptureSession+Orientation.swift in Sources */,
@@ -1014,6 +1075,7 @@
 				539D1C8B2C16E97F009DB24A /* ShareSheetViewController.swift in Sources */,
 				53014F962C11A8E80071CE39 /* ScannerViewController.swift in Sources */,
 				53014FA52C11A8E80071CE39 /* EditScanCornerView.swift in Sources */,
+				53E7D3382C1B00880025A1D3 /* FSPagerViewLayoutAttributes.swift in Sources */,
 				53014F8E2C11A8E80071CE39 /* ImageScannerController.swift in Sources */,
 				EC70252B254E066400BE1958 /* SettingsTableViewCell.swift in Sources */,
 				535983ED2C142B49003EB6ED /* UIFont+Extensions.swift in Sources */,
diff --git a/MiniScanner.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist b/MiniScanner.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist
index 9f3ce57..3efba6c 100644
--- a/MiniScanner.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/MiniScanner.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -7,7 +7,7 @@
 		<key>MiniScanner.xcscheme_^#shared#^_</key>
 		<dict>
 			<key>orderHint</key>
-			<integer>9</integer>
+			<integer>8</integer>
 		</dict>
 	</dict>
 </dict>
diff --git a/MiniScanner.xcworkspace/xcshareddata/swiftpm/Package.resolved b/MiniScanner.xcworkspace/xcshareddata/swiftpm/Package.resolved
index 2a402b6..970347f 100644
--- a/MiniScanner.xcworkspace/xcshareddata/swiftpm/Package.resolved
+++ b/MiniScanner.xcworkspace/xcshareddata/swiftpm/Package.resolved
@@ -1,14 +1,16 @@
 {
-  "pins" : [
-    {
-      "identity" : "lnextensionexecutor",
-      "kind" : "remoteSourceControl",
-      "location" : "https://github.com/LeoNatan/LNExtensionExecutor.git",
-      "state" : {
-        "revision" : "16b741f659e344f4569c9f9d32ef2298ef0233ff",
-        "version" : "1.2.0"
+  "object": {
+    "pins": [
+      {
+        "package": "LNExtensionExecutor",
+        "repositoryURL": "https://github.com/LeoNatan/LNExtensionExecutor.git",
+        "state": {
+          "branch": null,
+          "revision": "16b741f659e344f4569c9f9d32ef2298ef0233ff",
+          "version": "1.2.0"
+        }
       }
-    }
-  ],
-  "version" : 2
+    ]
+  },
+  "version": 1
 }
diff --git a/MiniScanner.xcworkspace/xcuserdata/g.makhoul.xcuserdatad/UserInterfaceState.xcuserstate b/MiniScanner.xcworkspace/xcuserdata/g.makhoul.xcuserdatad/UserInterfaceState.xcuserstate
index 4ccd91bec66ee792ed7249cb0293bc785bf47de2..38a977e2d2b167a27acc1d8314705b731235324d 100644
GIT binary patch
literal 240413
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
L|KI<FHs}05<(ckU

literal 276720
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
PTl+tT|G$4CornA%EDZ{C

diff --git a/MiniScanner.xcworkspace/xcuserdata/g.makhoul.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/MiniScanner.xcworkspace/xcuserdata/g.makhoul.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
index 6d52f9d..216ee44 100644
--- a/MiniScanner.xcworkspace/xcuserdata/g.makhoul.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
+++ b/MiniScanner.xcworkspace/xcuserdata/g.makhoul.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
@@ -3,22 +3,4 @@
    uuid = "270C854E-19C5-4254-A77F-7774BFB2FDA6"
    type = "0"
    version = "2.0">
-   <Breakpoints>
-      <BreakpointProxy
-         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
-         <BreakpointContent
-            uuid = "781CC172-B153-4DD6-BA44-38196A7A37FD"
-            shouldBeEnabled = "Yes"
-            ignoreCount = "0"
-            continueAfterRunningActions = "No"
-            filePath = "MiniScanner/Modules/EditViewController/EditViewController.swift"
-            startingColumnNumber = "9223372036854775807"
-            endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "239"
-            endingLineNumber = "239"
-            landmarkName = "saveFileAndShare(with:name:)"
-            landmarkType = "7">
-         </BreakpointContent>
-      </BreakpointProxy>
-   </Breakpoints>
 </Bucket>
diff --git a/MiniScanner/.DS_Store b/MiniScanner/.DS_Store
index b70afdd5908417f48436ff71e03f67913f48e0de..6beef102e5d580989a74bd8ee08a491859ba95d7 100644
GIT binary patch
delta 560
zcmZn(XbG6$&#1mJU^hRb`eq)1*^EMlItqqH#<e;M)s{vEItnIcCX??78&7^CXjY$@
zTvm{jlb^)Ez<4&PASbi9#K7RbfB+*CGYcylI|nBhHxDl#zkr~Su%L*bsHm8@gs7yH
zq)fbka8hD&c6w2MX<mwReolUoQ%-4Wbb3){N^n79a%Nt7L`iBzNpNOWYP^6Dn$n=u
zlsKqRJy3f{WdTr;2$~}IqSVwpuz~(*X~n4}5lHOFcme+6<f8nXoPhk|%#zIfyvUg1
zjQn!XlGI$!ytI6vm1UW!<^BaAsp7EIqGBM8p(i3XC$T;$HOD{CDZiv7KQ}V5s3<Wn
zJ=Liaq!eUaa(-SwQ7Xu&h)f_G<QrxC4-8<S?BES!Xh0YO49XA&1B0?dD1^x&0uzGL
zjGQ5P`FW|F$_@b_kr*K6V9;i8WbkDOW5{NxVwlJ<mtiHtZiW*KcNyL@{AFZklw?$5
z)Mhkcv}Lqs^k58R3}Q@XOkvDq%z_xn#0a4oWT7;aVl18<CnT|1Nhp|=!_?S9N5RO@
Zc=82d`^|gAqu4gHEBs>FEFjFx3;=u<l}G>p

delta 81
zcmZn(XbG6$&#1OBU^hRb+GZYs*^HBSi@HvJBWSi+SR|O0!_eGRN5RO@V)8*z`^{@5
bqu4e!d}Q3ruJDUx^Cz(qCKUO}Yb8AZN-`R{

diff --git a/MiniScanner/Extensions/.DS_Store b/MiniScanner/Extensions/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..90fd3d40cd3a786558f50de1cbb037ba8985620d
GIT binary patch
literal 8196
zcmeHM&1%~~5dOBwAy6pkA8{$6>bVfe8z`<^FoYiJru3NFNnC?$g;*w~C*5=C8}t==
z$`j-{`XD{E-^?ySvTCqgLJFCM-A`Wad^`GPcg4s6Tzhu33$y@iunKP8XY-dL_odd#
zz0mWR=x7hTLI+=v;~10LXzMTqOaW8C6fgx$f&W1PzO$ulEO_txyVjZlrof$4K+cDV
zRWJ@%c+{hVjivy^b#`mvHS++qi2}v}3y*3_PM<xvVCq7O;k-HTM>3ok2P`~#b2x7f
z7iM-LLvcDg?IIlx7kjkU6fgzq3P|q$6bU|Q)?Uuvrx+n)9zVqn>p6d&An&Hxpr2-a
zTFFM+W8L|!g;&5M?9*mIwv^+)DywH%%<*H6<Dqg4$+O4VM;Mn_KJfQ3&Z}OyU)=5w
zN?t6%kPdfygKT`NUZeAqxP;X>OOo*Pa@<^g{B|V@EM<ALqUGu5vZsff4lnQ)J=Tmd
zlc<bTak-XwHH@L#CSy5<Tjb7hMz#rtjoB{d*q-44U9>SHXTGX`mFTvV@in<p*0aVQ
za<$AouXy-IeaoA&=??f_T6^BRuCCf4*J{IPKz2i&Z=ZXhPqwrvpGLRL_gvL`PcHdR
z7xq(QRz|rJlPzWa2e!&HzpSuHq$j!}CE_VPUoGZk6`pX0cRXjBMu)q-^4#0xnW{$#
z+Y?4<Mh|oLHDzYpE6iL5R!o5#Rbb7tw<Q1XEdKs~qdpk9DPRiRt^#g7=_PIY5OV99
zH<D{dtcR>pWL)7<P1tBUPSkXqc>RYVuOki>n>b+Mkv%N8@*%+9|Ej$;cUOTwycUOC

literal 0
HcmV?d00001

diff --git a/MiniScanner/Extensions/LogoAnimationView/LogoAnimationView.swift b/MiniScanner/Extensions/LogoAnimationView/LogoAnimationView.swift
new file mode 100755
index 0000000..4da81a6
--- /dev/null
+++ b/MiniScanner/Extensions/LogoAnimationView/LogoAnimationView.swift
@@ -0,0 +1,8 @@
+//
+//  LogoAnimationView.swift
+//  AnimatedGifLaunchScreen-Example
+//
+//  Created by Amer Hukic on 13/09/2018.
+//  Copyright © 2018 Amer Hukic. All rights reserved.
+//
+
diff --git a/MiniScanner/Extensions/LogoAnimationView/StickerView.swift b/MiniScanner/Extensions/LogoAnimationView/StickerView.swift
new file mode 100755
index 0000000..7e407b2
--- /dev/null
+++ b/MiniScanner/Extensions/LogoAnimationView/StickerView.swift
@@ -0,0 +1,417 @@
+//
+//  StickerView.swift
+//  StickerView
+//
+//  Created by Edgar Sia on 1/12/18.
+//  Copyright © 2018 Edgar Sia. All rights reserved.
+//
+
+import UIKit
+
+enum StickerViewHandler:Int {
+    case close = 0
+    case rotate
+    case flip
+}
+
+enum StickerViewPosition:Int {
+    case topLeft = 0
+    case topRight
+    case bottomLeft
+    case bottomRight
+}
+
+@inline(__always) func CGRectGetCenter(_ rect:CGRect) -> CGPoint {
+    return CGPoint(x: rect.midX, y: rect.midY)
+}
+
+@inline(__always) func CGRectScale(_ rect:CGRect, wScale:CGFloat, hScale:CGFloat) -> CGRect {
+    return CGRect(x: rect.origin.x, y: rect.origin.y, width: rect.size.width * wScale, height: rect.size.height * hScale)
+}
+
+@inline(__always) func CGAffineTransformGetAngle(_ t:CGAffineTransform) -> CGFloat {
+    return atan2(t.b, t.a)
+}
+
+@inline(__always) func CGPointGetDistance(point1:CGPoint, point2:CGPoint) -> CGFloat {
+    let fx = point2.x - point1.x
+    let fy = point2.y - point1.y
+    return sqrt(fx * fx + fy * fy)
+}
+
+@objc protocol StickerViewDelegate {
+    @objc func stickerViewDidBeginMoving(_ stickerView: StickerView)
+    @objc func stickerViewDidChangeMoving(_ stickerView: StickerView)
+    @objc func stickerViewDidEndMoving(_ stickerView: StickerView)
+    @objc func stickerViewDidBeginRotating(_ stickerView: StickerView)
+    @objc func stickerViewDidChangeRotating(_ stickerView: StickerView)
+    @objc func stickerViewDidEndRotating(_ stickerView: StickerView)
+    @objc func stickerViewDidClose(_ stickerView: StickerView)
+    @objc func stickerViewDidTap(_ stickerView: StickerView)
+}
+
+class StickerView: UIView {
+    var delegate: StickerViewDelegate!
+    /// The contentView inside the sticker view.
+    var contentView:UIView!
+    /// Enable the close handler or not. Default value is YES.
+    var enableClose:Bool = true {
+        didSet {
+            if self.showEditing {
+                self.setEnableClose(self.enableClose)
+            }
+        }
+    }
+    /// Enable the rotate/resize handler or not. Default value is YES.
+    var enableRotate:Bool = true{
+        didSet {
+            if self.showEditing {
+                self.setEnableRotate(self.enableRotate)
+            }
+        }
+    }
+    /// Enable the flip handler or not. Default value is YES.
+    var enableFlip:Bool = true
+    /// Show close and rotate/resize handlers or not. Default value is YES.
+    var showEditing:Bool = true {
+        didSet {
+            if self.showEditing {
+                self.setEnableClose(self.enableClose)
+                self.setEnableRotate(self.enableRotate)
+                self.setEnableFlip(self.enableFlip)
+                self.contentView?.layer.borderWidth = 1
+            }
+            else {
+                self.setEnableClose(false)
+                self.setEnableRotate(false)
+                self.setEnableFlip(false)
+                self.contentView?.layer.borderWidth = 0
+            }
+        }
+    }
+    
+    /// Minimum value for the shorter side while resizing. Default value will be used if not set.
+    private var _minimumSize:NSInteger = 0
+    var minimumSize:NSInteger {
+        set {
+            _minimumSize = max(newValue, self.defaultMinimumSize)
+        }
+        get {
+            return _minimumSize
+        }
+    }
+    /// Color of the outline border. Default: brown color.
+    private var _outlineBorderColor:UIColor = .clear
+    var outlineBorderColor:UIColor {
+        set {
+            _outlineBorderColor = newValue
+            self.contentView?.layer.borderColor = _outlineBorderColor.cgColor
+        }
+        get {
+            return _outlineBorderColor
+        }
+    }
+    /// A convenient property for you to store extra information.
+    var userInfo:Any?
+    
+ 
+    init(contentView: UIView) {
+        self.defaultInset = 11
+        self.defaultMinimumSize = 4 * self.defaultInset
+        
+        var frame = contentView.frame
+        frame = CGRect(x: 0, y: 0, width: frame.size.width + CGFloat(self.defaultInset) * 2, height: frame.size.height + CGFloat(self.defaultInset) * 2)
+        super.init(frame: frame)
+        self.backgroundColor = UIColor.clear
+        self.addGestureRecognizer(self.moveGesture)
+        self.addGestureRecognizer(self.tapGesture)
+        
+        // Setup content view
+        self.contentView = contentView
+        self.contentView.center = CGRectGetCenter(self.bounds)
+        self.contentView.isUserInteractionEnabled = false
+        self.contentView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
+        self.contentView.layer.allowsEdgeAntialiasing = true
+        self.addSubview(self.contentView)
+        
+        // Setup editing handlers
+        self.setPosition(.topLeft, forHandler: .close)
+        self.addSubview(self.closeImageView)
+        self.setPosition(.bottomRight, forHandler: .rotate)
+        self.addSubview(self.rotateImageView)
+        self.setPosition(.bottomLeft, forHandler: .flip)
+        self.addSubview(self.flipImageView)
+        
+        self.showEditing = true
+        self.enableClose = true
+        self.enableRotate = true
+        self.enableFlip = false
+        
+        self.minimumSize = self.defaultMinimumSize
+        self.outlineBorderColor = .white
+    }
+    
+    required init?(coder aDecoder: NSCoder) {
+        fatalError("init(coder:) has not been implemented")
+    }
+    
+    func setImage(_ image:UIImage, forHandler handler:StickerViewHandler) {
+        switch handler {
+        case .close:
+            self.closeImageView.image = image
+        case .rotate:
+            self.rotateImageView.image = image
+        case .flip:
+            self.flipImageView.image = image
+        }
+    }
+ 
+    func setPosition(_ position:StickerViewPosition, forHandler handler:StickerViewHandler) {
+        let origin = self.contentView.frame.origin
+        let size = self.contentView.frame.size
+        
+        var handlerView:UIImageView?
+        switch handler {
+        case .close:
+            handlerView = self.closeImageView
+        case .rotate:
+            handlerView = self.rotateImageView
+        case .flip:
+            handlerView = self.flipImageView
+        }
+        
+        switch position {
+        case .topLeft:
+            handlerView?.center = origin
+            handlerView?.autoresizingMask = [.flexibleRightMargin, .flexibleBottomMargin]
+        case .topRight:
+            handlerView?.center = CGPoint(x: origin.x + size.width, y: origin.y)
+            handlerView?.autoresizingMask = [.flexibleLeftMargin, .flexibleBottomMargin]
+        case .bottomLeft:
+            handlerView?.center = CGPoint(x: origin.x, y: origin.y + size.height)
+            handlerView?.autoresizingMask = [.flexibleRightMargin, .flexibleTopMargin]
+        case .bottomRight:
+            handlerView?.center = CGPoint(x: origin.x + size.width, y: origin.y + size.height)
+            handlerView?.autoresizingMask = [.flexibleLeftMargin, .flexibleTopMargin]
+        }
+        
+        handlerView?.tag = position.rawValue
+    }
+    
+    /**
+     *  Customize handler's size
+     *
+     *  @param size Handler's size
+     */
+    func setHandlerSize(_ size:Int) {
+        if size <= 0 {
+            return
+        }
+        
+        self.defaultInset = NSInteger(round(Float(size) / 2))
+        self.defaultMinimumSize = 4 * self.defaultInset
+        self.minimumSize = max(self.minimumSize, self.defaultMinimumSize)
+        
+        let originalCenter = self.center
+        let originalTransform = self.transform
+        var frame = self.contentView.frame
+        frame = CGRect(x: 0, y: 0, width: frame.size.width + CGFloat(self.defaultInset) * 2, height: frame.size.height + CGFloat(self.defaultInset) * 2)
+        
+        self.contentView.removeFromSuperview()
+        
+        self.transform = CGAffineTransform.identity
+        self.frame = frame
+        
+        self.contentView.center = CGRectGetCenter(self.bounds)
+        self.addSubview(self.contentView)
+        self.sendSubviewToBack(self.contentView)
+        
+        let handlerFrame = CGRect(x: 0, y: 0, width: self.defaultInset * 2, height: self.defaultInset * 2)
+        self.closeImageView.frame = handlerFrame
+        self.setPosition(StickerViewPosition(rawValue: self.closeImageView.tag)!, forHandler: .close)
+        self.rotateImageView.frame = handlerFrame
+        self.setPosition(StickerViewPosition(rawValue: self.rotateImageView.tag)!, forHandler: .rotate)
+        self.flipImageView.frame = handlerFrame
+        self.setPosition(StickerViewPosition(rawValue: self.flipImageView.tag)!, forHandler: .flip)
+        
+        self.center = originalCenter
+        self.transform = originalTransform
+    }
+    
+    /**
+     *  Default value
+     */
+    private var defaultInset:NSInteger
+    private var defaultMinimumSize:NSInteger
+    
+    /**
+     *  Variables for moving view
+     */
+    private var beginningPoint = CGPoint.zero
+    private var beginningCenter = CGPoint.zero
+    
+    /**
+     *  Variables for rotating and resizing view
+     */
+    private var initialBounds = CGRect.zero
+    private var initialDistance:CGFloat = 0
+    private var deltaAngle:CGFloat = 0
+    
+    private lazy var moveGesture = {
+        return UIPanGestureRecognizer(target: self, action: #selector(handleMoveGesture(_:)))
+    }()
+    private lazy var rotateImageView:UIImageView = {
+        let rotateImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 32, height: 32))
+        rotateImageView.cornerRadiuss = 16
+        rotateImageView.tintColor = UIColor.black
+        rotateImageView.contentMode = UIView.ContentMode.scaleAspectFill
+        rotateImageView.backgroundColor = UIColor.white
+        rotateImageView.isUserInteractionEnabled = true
+        rotateImageView.addGestureRecognizer(self.rotateGesture)
+        
+        return rotateImageView
+    }()
+    private lazy var rotateGesture = {
+        return UIPanGestureRecognizer(target: self, action: #selector(handleRotateGesture(_:)))
+    }()
+    private lazy var closeImageView:UIImageView = {
+        let closeImageview = UIImageView(frame: CGRect(x: 0, y: 0, width: 32, height: 32))
+        closeImageview.cornerRadiuss = 16
+        closeImageview.tintColor = UIColor.black
+        closeImageview.contentMode = UIView.ContentMode.scaleAspectFill
+        closeImageview.backgroundColor = UIColor.white
+        closeImageview.isUserInteractionEnabled = true
+        closeImageview.addGestureRecognizer(self.closeGesture)
+        return closeImageview
+    }()
+    private lazy var closeGesture = {
+        return UITapGestureRecognizer(target: self, action: #selector(handleCloseGesture(_:)))
+    }()
+    private lazy var flipImageView:UIImageView = {
+        let flipImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: self.defaultInset * 2, height: self.defaultInset * 2))
+        flipImageView.contentMode = UIView.ContentMode.scaleAspectFit
+        flipImageView.backgroundColor = UIColor.clear
+        flipImageView.isUserInteractionEnabled = true
+        flipImageView.addGestureRecognizer(self.flipGesture)
+        return flipImageView
+    }()
+    private lazy var flipGesture = {
+        return UITapGestureRecognizer(target: self, action: #selector(handleFlipGesture(_:)))
+    }()
+    private lazy var tapGesture = {
+        return UITapGestureRecognizer(target: self, action: #selector(handleTapGesture(_:)))
+    }()
+    // MARK: - Gesture Handlers
+    @objc
+    func handleMoveGesture(_ recognizer: UIPanGestureRecognizer) {
+        let touchLocation = recognizer.location(in: self.superview)
+        switch recognizer.state {
+        case .began:
+            self.beginningPoint = touchLocation
+            self.beginningCenter = self.center
+            if let delegate = self.delegate {
+                delegate.stickerViewDidBeginMoving(self)
+            }
+        case .changed:
+            self.center = CGPoint(x: self.beginningCenter.x + (touchLocation.x - self.beginningPoint.x), y: self.beginningCenter.y + (touchLocation.y - self.beginningPoint.y))
+            if let delegate = self.delegate {
+                delegate.stickerViewDidChangeMoving(self)
+            }
+        case .ended:
+            self.center = CGPoint(x: self.beginningCenter.x + (touchLocation.x - self.beginningPoint.x), y: self.beginningCenter.y + (touchLocation.y - self.beginningPoint.y))
+            if let delegate = self.delegate {
+                delegate.stickerViewDidEndMoving(self)
+            }
+        default:
+            break
+        }
+    }
+    
+    @objc
+    func handleRotateGesture(_ recognizer: UIPanGestureRecognizer) {
+        let touchLocation = recognizer.location(in: self.superview)
+        let center = self.center
+        
+        switch recognizer.state {
+        case .began:
+            self.deltaAngle = CGFloat(atan2f(Float(touchLocation.y - center.y), Float(touchLocation.x - center.x))) - CGAffineTransformGetAngle(self.transform)
+            self.initialBounds = self.bounds
+            self.initialDistance = CGPointGetDistance(point1: center, point2: touchLocation)
+            if let delegate = self.delegate {
+                delegate.stickerViewDidBeginRotating(self)
+            }
+        case .changed:
+            let angle = atan2f(Float(touchLocation.y - center.y), Float(touchLocation.x - center.x))
+            let angleDiff = Float(self.deltaAngle) - angle
+            self.transform = CGAffineTransform(rotationAngle: CGFloat(-angleDiff))
+            
+            var scale = CGPointGetDistance(point1: center, point2: touchLocation) / self.initialDistance
+            let minimumScale = CGFloat(self.minimumSize) / min(self.initialBounds.size.width, self.initialBounds.size.height)
+            scale = max(scale, minimumScale)
+            let scaledBounds = CGRectScale(self.initialBounds, wScale: scale, hScale: scale)
+            self.bounds = scaledBounds
+            self.setNeedsDisplay()
+            
+            if let delegate = self.delegate {
+                delegate.stickerViewDidChangeRotating(self)
+            }
+        case .ended:
+            if let delegate = self.delegate {
+                delegate.stickerViewDidEndRotating(self)
+            }
+        default:
+            break
+        }
+    }
+    
+    @objc
+    func handleCloseGesture(_ recognizer: UITapGestureRecognizer) {
+        if let delegate = self.delegate {
+            delegate.stickerViewDidClose(self)
+        }
+        self.removeFromSuperview()
+    }
+    
+    @objc
+    func handleFlipGesture(_ recognizer: UITapGestureRecognizer) {
+        UIView.animate(withDuration: 0.3) {
+            self.contentView.transform = self.contentView.transform.scaledBy(x: -1, y: 1)
+        }
+    }
+    
+    @objc
+    func handleTapGesture(_ recognizer: UITapGestureRecognizer) {
+        if let delegate = self.delegate {
+            delegate.stickerViewDidTap(self)
+        }
+    }
+    
+    // MARK: - Private Methods
+    private func setEnableClose(_ enableClose:Bool) {
+        self.closeImageView.isHidden = !enableClose
+        self.closeImageView.isUserInteractionEnabled = enableClose
+    }
+    
+    private func setEnableRotate(_ enableRotate:Bool) {
+        self.rotateImageView.isHidden = !enableRotate
+        self.rotateImageView.isUserInteractionEnabled = enableRotate
+    }
+    
+    private func setEnableFlip(_ enableFlip:Bool) {
+        self.flipImageView.isHidden = !enableFlip
+        self.flipImageView.isUserInteractionEnabled = enableFlip
+    }
+}
+
+extension StickerView: UIGestureRecognizerDelegate {
+    func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldBeRequiredToFailBy otherGestureRecognizer: UIGestureRecognizer) -> Bool {
+        /**
+         * ref: http://stackoverflow.com/questions/19095165/should-superviews-gesture-cancel-subviews-gesture-in-ios-7/
+         *
+         * The `gestureRecognizer` would be either closeGestureRecognizer or rotateGestureRecognizer,
+         * `otherGestureRecognizer` should work only when `gestureRecognizer` is failed.
+         * So, we always return YES here.
+         */
+        return true
+    }
+}
diff --git a/MiniScanner/Extensions/LogoAnimationView/UIView+Constraints.swift b/MiniScanner/Extensions/LogoAnimationView/UIView+Constraints.swift
new file mode 100755
index 0000000..992e1c7
--- /dev/null
+++ b/MiniScanner/Extensions/LogoAnimationView/UIView+Constraints.swift
@@ -0,0 +1,21 @@
+//
+//  UIView+Constraints.swift
+//  AnimatedGifLaunchScreen-Example
+//
+//  Created by Amer Hukic on 13/09/2018.
+//  Copyright © 2018 Amer Hukic. All rights reserved.
+//
+
+import UIKit
+
+extension UIView {
+    
+    func pinEdgesToSuperView() {
+        guard let superView = superview else { return }
+        translatesAutoresizingMaskIntoConstraints = false
+        topAnchor.constraint(equalTo: superView.topAnchor).isActive = true
+        leftAnchor.constraint(equalTo: superView.leftAnchor).isActive = true
+        bottomAnchor.constraint(equalTo: superView.bottomAnchor).isActive = true
+        rightAnchor.constraint(equalTo: superView.rightAnchor).isActive = true
+    }
+}
diff --git a/MiniScanner/Extensions/MyExtention.swift b/MiniScanner/Extensions/MyExtention.swift
new file mode 100755
index 0000000..2c38189
--- /dev/null
+++ b/MiniScanner/Extensions/MyExtention.swift
@@ -0,0 +1,791 @@
+import UIKit
+import Foundation
+import CoreLocation
+import QuartzCore
+import CoreGraphics
+import SystemConfiguration
+import TLPhotoPicker
+
+let SCREEN_WIDTH = UIScreen.main.bounds.width
+let SCREEN_HEIGHT = UIScreen.main.bounds.height
+let storyBoard = UIStoryboard.init(name: "Main", bundle: nil)
+let appDelegate = UIApplication.shared.delegate as! AppDelegate
+
+let BANNER_ADID = "ca-app-pub-3940256099942544/2934735716"
+let FULL_ADID = "ca-app-pub-3940256099942544/4411468910"
+let APPOPENADID = "ca-app-pub-3940256099942544/5662855259"
+let APP_NATIVE = "ca-app-pub-3940256099942544/3986624511"
+
+let appID = "app ID"
+let devURL = "developer URL"
+let Mail_ID = "support mail"
+var RateURL : String = "app URL"
+
+var AppName = "Cam Scanner"
+var PDFFileName = "FinalPDF"
+
+let ShadowColor = UIColor.init(named: "ShadowColor")!
+let FontColor = UIColor.init(named: "FontColor")!
+let BGColor = UIColor.init(named: "BGColor")!
+let ThemeColor = UIColor.init(named: "ThemeColor")!
+
+var bottomPadding: CGFloat = UIApplication.shared.keyWindow?.safeAreaInsets.bottom ?? 0.0
+var topPadding: CGFloat = UIApplication.shared.keyWindow?.safeAreaInsets.top ?? 0.0
+
+class MyFunc: NSObject
+{
+    func convertImageToBase64(image: UIImage) -> String {
+        let imageData = image.pngData()!
+        return imageData.base64EncodedString(options: Data.Base64EncodingOptions.lineLength64Characters)
+    }
+
+    func convertBase64ToImage(imageString: String) -> UIImage {
+        let imageData = Data(base64Encoded: imageString, options: Data.Base64DecodingOptions.ignoreUnknownCharacters)!
+        return UIImage(data: imageData)!
+    }
+}
+
+class UserDefaultMgr
+{
+    class func setSortType(strId: Int)
+    {
+        UserDefaults.standard.setValue(strId, forKey: "sortType")
+        UserDefaults.standard.synchronize()
+    }
+    class func getSortType() -> Int{
+        if UserDefaults.standard.object(forKey: "sortType") == nil{
+            return 0
+        }
+        return UserDefaults.standard.value(forKey: "sortType") as! Int
+    }
+    
+    
+    class func getIsDoc4Time() -> Int{
+        if UserDefaults.standard.object(forKey: "ad_DocCount") == nil{
+            return 0
+        }
+        return UserDefaults.standard.value(forKey: "ad_DocCount") as! Int
+    }
+    class func setIsDoc4Time(strId: Int)
+    {
+        UserDefaults.standard.setValue(strId, forKey: "ad_DocCount")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsOCROneTime() -> Int{
+        if UserDefaults.standard.object(forKey: "ad_OCRcount") == nil{
+            return 0
+        }
+        return UserDefaults.standard.value(forKey: "ad_OCRcount") as! Int
+    }
+    class func setIsOCROneTime(strId: Int)
+    {
+        UserDefaults.standard.setValue(strId, forKey: "ad_OCRcount")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func setIsChangeLayout(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isChangeLayout")
+        UserDefaults.standard.synchronize()
+    }
+    class func getIsChangeLayout() -> Bool{
+        if UserDefaults.standard.object(forKey: "isChangeLayout") == nil{
+            setIsChangeLayout(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isChangeLayout") as! Bool
+    }
+    
+    class func setIsPasscode(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isPasscode")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsPasscode() -> Bool{
+        if UserDefaults.standard.object(forKey: "isPasscode") == nil{
+            setIsPasscode(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isPasscode") as! Bool
+    }
+    
+    class func setIsFaceID(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isFaceID")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsFaceID() -> Bool{
+        if UserDefaults.standard.object(forKey: "isFaceID") == nil{
+            setIsFaceID(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isFaceID") as! Bool
+    }
+    
+    
+    class func setIsTouchID(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isTouchID")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsTouchID() -> Bool{
+        if UserDefaults.standard.object(forKey: "isTouchID") == nil{
+            setIsTouchID(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isTouchID") as! Bool
+    }
+    
+}
+
+
+let aloaderSpinnerMarginSide : CGFloat = 35.0
+let aloaderSpinnerMarginTop : CGFloat = 20.0
+let aloaderTitleMargin : CGFloat = 5.0
+
+let maxCount = 6
+
+
+open class ProcessLoader : UIView {
+    
+    fileprivate var coverView : UIView?
+    fileprivate var titleLabel : UILabel?
+    fileprivate var loadingView : SwiftLoadingView?
+    fileprivate var animated : Bool = true
+    fileprivate var canUpdated = false
+    fileprivate var title: String?
+    fileprivate var speed = 1
+    
+    fileprivate var config : Config = Config() {
+        didSet {
+            self.loadingView?.config = config
+        }
+    }
+    
+    @objc func rotated(_ notification: Notification) {
+        
+        let loader = ProcessLoader.sharedInstance
+        
+        let height : CGFloat = UIScreen.main.bounds.size.height
+        let width : CGFloat = UIScreen.main.bounds.size.width
+        let center : CGPoint = CGPoint(x: width / 2.0, y: height / 2.0)
+        
+        loader.center = center
+        loader.coverView?.frame = UIScreen.main.bounds
+    }
+    
+    override open var frame : CGRect {
+        didSet {
+            self.update()
+        }
+    }
+    
+    class var sharedInstance: ProcessLoader {
+        struct Singleton {
+            static let instance = ProcessLoader(frame: CGRect(origin: CGPoint(x: 0,y: 0),size: CGSize(width: Config().size,height: Config().size)))
+        }
+        return Singleton.instance
+    }
+    
+    open class func show(animated: Bool) {
+        self.show(title: nil, animated: animated)
+    }
+    
+    open class func show(title: String?, animated : Bool) {
+        
+        let currentWindow : UIWindow = UIApplication.shared.keyWindow!
+        
+        let loader = ProcessLoader.sharedInstance
+        loader.canUpdated = true
+        loader.animated = animated
+        loader.title = title
+        loader.update()
+                
+        let height : CGFloat = UIScreen.main.bounds.size.height
+        let width : CGFloat = UIScreen.main.bounds.size.width
+        let center : CGPoint = CGPoint(x: width / 2.0, y: height / 2.0)
+        
+        loader.center = center
+        
+        if (loader.superview == nil) {
+            loader.coverView = UIView(frame: currentWindow.bounds)
+            loader.coverView?.backgroundColor = loader.config.foregroundColor.withAlphaComponent(loader.config.foregroundAlpha)
+            
+            currentWindow.addSubview(loader.coverView!)
+            currentWindow.addSubview(loader)
+            loader.start()
+        }
+    }
+    
+    open class func hide() {
+        
+        let loader = ProcessLoader.sharedInstance
+        NotificationCenter.default.removeObserver(loader)
+        
+        loader.stop()
+    }
+    
+    public class func setConfig(config : Config) {
+        let loader = ProcessLoader.sharedInstance
+        loader.config = config
+        loader.frame = CGRect(origin: CGPoint(x: 0, y: 0),size: CGSize(width: loader.config.size, height: loader.config.size))
+    }
+    
+    private func setup() {
+        self.alpha = 0
+        self.update()
+    }
+    
+    private func start() {
+        self.loadingView?.start()
+        
+        if (self.animated) {
+            UIView.animate(withDuration: 0.3, animations: { () -> Void in
+                self.alpha = 1
+                }, completion: { (finished) -> Void in
+                    
+            });
+        } else {
+            self.alpha = 1
+        }
+    }
+    
+    private func stop() {
+        
+        DispatchQueue.main.async {
+            if (self.animated) {
+                UIView.animate(withDuration: 0.3, animations: { () -> Void in
+                    self.alpha = 0
+                }, completion: { (finished) -> Void in
+                    self.removeFromSuperview()
+                    self.coverView?.removeFromSuperview()
+                    self.loadingView?.stop()
+                });
+            } else {
+                self.alpha = 0
+                self.removeFromSuperview()
+                self.coverView?.removeFromSuperview()
+                self.loadingView?.stop()
+            }
+        }
+    }
+    
+    private func update() {
+        self.backgroundColor = self.config.backgroundColor
+        self.layer.cornerRadius = self.config.cornerRadius
+        let loadingViewSize = self.frame.size.width - (aloaderSpinnerMarginSide * 2)
+        
+        if (self.loadingView == nil) {
+            self.loadingView = SwiftLoadingView(frame: self.frameForSpinner())
+            self.addSubview(self.loadingView!)
+        } else {
+            self.loadingView?.frame = self.frameForSpinner()
+        }
+        
+        if (self.titleLabel == nil) {
+            self.titleLabel = UILabel(frame: CGRect(origin: CGPoint(x: aloaderTitleMargin, y: aloaderSpinnerMarginTop + loadingViewSize), size: CGSize(width: self.frame.width - aloaderTitleMargin*2, height:  42.0)))
+            self.addSubview(self.titleLabel!)
+            self.titleLabel?.numberOfLines = 1
+            self.titleLabel?.textAlignment = NSTextAlignment.center
+            self.titleLabel?.adjustsFontSizeToFitWidth = true
+        } else {
+            self.titleLabel?.frame = CGRect(origin: CGPoint(x: aloaderTitleMargin, y: aloaderSpinnerMarginTop + loadingViewSize), size: CGSize(width: self.frame.width - aloaderTitleMargin*2, height: 42.0))
+        }
+        
+        self.titleLabel?.font = self.config.titleTextFont
+        self.titleLabel?.textColor = self.config.titleTextColor
+        self.titleLabel?.text = self.title
+        
+        self.titleLabel?.isHidden = self.title == nil
+    }
+    
+    func frameForSpinner() -> CGRect {
+        let loadingViewSize = self.frame.size.width - (aloaderSpinnerMarginSide * 2)
+        
+        if (self.title == nil) {
+            let yOffset = (self.frame.size.height - loadingViewSize) / 2
+            return CGRect(origin: CGPoint(x: aloaderSpinnerMarginSide, y: yOffset), size: CGSize(width: loadingViewSize, height: loadingViewSize))
+        }
+        return CGRect(origin: CGPoint(x: aloaderSpinnerMarginSide, y: aloaderSpinnerMarginTop), size: CGSize(width: loadingViewSize, height: loadingViewSize))
+    }
+    
+    override init(frame: CGRect) {
+        super.init(frame: frame)
+        self.setup()
+    }
+    
+    required public init?(coder aDecoder: NSCoder) {
+        super.init(coder: aDecoder)
+    }
+    
+    class SwiftLoadingView : UIView {
+        
+        fileprivate var speed : Int?
+        fileprivate var lineWidth : Float?
+        fileprivate var lineTintColor : UIColor?
+        fileprivate var backgroundLayer : CAShapeLayer?
+        fileprivate var isSpinning : Bool?
+        
+        var config : Config = Config() {
+            didSet {
+                self.update()
+            }
+        }
+        
+        override init(frame: CGRect) {
+            super.init(frame: frame)
+            self.setup()
+        }
+        
+        required init?(coder aDecoder: NSCoder) {
+            super.init(coder: aDecoder)
+        }
+        
+        func setup() {
+            self.backgroundColor = UIColor.clear
+            self.lineWidth = fmaxf(Float(self.frame.size.width) * 0.025, 1)
+            
+            self.backgroundLayer = CAShapeLayer()
+            self.backgroundLayer?.strokeColor = self.config.spinnerColor.cgColor
+            self.backgroundLayer?.fillColor = self.backgroundColor?.cgColor
+            self.backgroundLayer?.lineCap = CAShapeLayerLineCap.round
+            self.backgroundLayer?.lineWidth = CGFloat(self.lineWidth!)
+            self.layer.addSublayer(self.backgroundLayer!)
+        }
+        
+        func update() {
+            self.lineWidth = self.config.spinnerLineWidth
+            self.speed = self.config.speed
+            
+            self.backgroundLayer?.lineWidth = CGFloat(self.lineWidth!)
+            self.backgroundLayer?.strokeColor = self.config.spinnerColor.cgColor
+        }
+        
+        override func draw(_ rect: CGRect) {
+            self.backgroundLayer?.frame = self.bounds
+        }
+        
+        func drawBackgroundCircle(_ partial : Bool) {
+            let startAngle : CGFloat = .pi / CGFloat(2.0)
+            var endAngle : CGFloat = (2.0 * .pi) + startAngle
+            
+            let center : CGPoint = CGPoint(x: self.bounds.size.width / 2,y: self.bounds.size.height / 2)
+            let radius : CGFloat = (CGFloat(self.bounds.size.width) - CGFloat(self.lineWidth!)) / CGFloat(2.0)
+            
+            let processBackgroundPath : UIBezierPath = UIBezierPath()
+            processBackgroundPath.lineWidth = CGFloat(self.lineWidth!)
+            
+            if (partial) {
+                endAngle = (1.8 * .pi) + startAngle
+            }
+            
+            processBackgroundPath.addArc(withCenter: center, radius: radius, startAngle: startAngle, endAngle: endAngle, clockwise: true)
+            self.backgroundLayer?.path = processBackgroundPath.cgPath;
+        }
+        
+        func start() {
+            self.isSpinning? = true
+            self.drawBackgroundCircle(true)
+            
+            let rotationAnimation : CABasicAnimation = CABasicAnimation(keyPath: "transform.rotation.z")
+            rotationAnimation.toValue = NSNumber(value: .pi * 2.0)
+            rotationAnimation.duration = 1;
+            rotationAnimation.isCumulative = true;
+            rotationAnimation.repeatCount = HUGE;
+            self.backgroundLayer?.add(rotationAnimation, forKey: "rotationAnimation")
+        }
+        
+        func stop() {
+            self.drawBackgroundCircle(false)
+            self.backgroundLayer?.removeAllAnimations()
+            self.isSpinning? = false
+        }
+    }
+    
+    public struct Config {
+        public var size : CGFloat = 120.0
+        public var spinnerColor = BGColor
+        public var spinnerLineWidth :Float = 1.0
+        public var titleTextColor = UIColor.black
+        public var speed :Int = 1
+        public var titleTextFont : UIFont = UIFont.boldSystemFont(ofSize: 16.0)
+        public var backgroundColor = FontColor
+        public var foregroundColor = UIColor.clear
+        public var foregroundAlpha:CGFloat = 0.0
+        public var cornerRadius : CGFloat = 10.0
+        public init() {}
+    }
+}
+
+extension UIView {
+        
+    func roundCorners(corners: UIRectCorner, radius: CGFloat) {
+        let path = UIBezierPath(roundedRect: bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
+        let mask = CAShapeLayer()
+        mask.path = path.cgPath
+        layer.mask = mask
+    }
+    
+    func addShadow(offset: CGSize, color: UIColor, radius: CGFloat, opacity: Float) {
+        layer.masksToBounds = false
+        layer.shadowOffset = offset
+        layer.shadowColor = color.cgColor
+        layer.shadowRadius = radius
+        layer.shadowOpacity = opacity
+
+        let backgroundCGColor = backgroundColor?.cgColor
+        backgroundColor = nil
+        layer.backgroundColor =  backgroundCGColor
+    }
+    
+    
+    func addFixShadow() {
+        layer.masksToBounds = false
+        layer.shadowOffset = CGSize.init(width: 2.0, height: 2.0)
+        layer.shadowColor = ShadowColor.cgColor
+        layer.shadowRadius = 4.0
+        layer.shadowOpacity = 0.5
+
+        let backgroundCGColor = backgroundColor?.cgColor
+        backgroundColor = nil
+        layer.backgroundColor =  backgroundCGColor
+    }
+}
+
+extension Array {
+  mutating func remove(at indexes: [Int]) {
+    for index in indexes.sorted(by: >) {
+      remove(at: index)
+    }
+  }
+}
+
+extension Sequence where Element: Hashable {
+    func uniqued() -> [Element] {
+        var set = Set<Element>()
+        return filter { set.insert($0).inserted }
+    }
+}
+
+extension UIViewController {
+
+    func showAlertWithTitle( alertTitle : String , msg:String )
+    {
+        let alert = UIAlertController(title:alertTitle, message: msg, preferredStyle: .alert)
+        let action = UIAlertAction(title: "OK", style: .cancel, handler: nil)
+        alert.addAction(action)
+        self.present(alert, animated: true, completion: nil)
+        
+    }
+    
+    func OpenPhotosPicker(_ self : UIViewController){
+        
+        let TLController = TLPhotosPickerViewController()
+        TLController.delegate = self as? TLPhotosPickerViewControllerDelegate
+        TLController.didExceedMaximumNumberOfSelection = { [weak self] (picker) in
+            
+            let alert = UIAlertController(title: "", message: "Exceed Maximum Number Of Selection", preferredStyle: .alert)
+            alert.addAction(UIAlertAction(title: "Ok", style: .default, handler: nil))
+            self!.present(alert, animated: true, completion: nil)
+        }
+        
+        var configure = TLPhotosPickerConfigure()
+        configure.numberOfColumn = 3
+        configure.usedCameraButton = false
+        configure.mediaType = .image
+        configure.maxSelectedAssets = 50
+        TLController.configure = configure
+        TLController.selectedAssets.removeAll()
+        TLController.logDelegate = self  as? TLPhotosPickerLogDelegate
+        
+        if let popoverController = TLController.popoverPresentationController {
+            popoverController.sourceView = self.view
+            popoverController.sourceRect = CGRect(x: self.view.bounds.midX, y: self.view.bounds.midY, width: 0, height: 0)
+        }
+        TLController.modalPresentationStyle = .fullScreen
+        self.present(TLController, animated: true, completion: nil)
+    }
+}
+
+
+extension UIApplication
+{
+    class func topViewController(controller: UIViewController? = UIApplication.shared.keyWindow?.rootViewController) -> UIViewController? {
+        if let navigationController = controller as? UINavigationController {
+            return topViewController(controller: navigationController.visibleViewController)
+        }
+        if let tabController = controller as? UITabBarController {
+            if let selected = tabController.selectedViewController {
+                return topViewController(controller: selected)
+            }
+        }
+        if let presented = controller?.presentedViewController {
+            return topViewController(controller: presented)
+        }
+        return controller
+    }
+
+    class func getTopViewController(base: UIViewController? = UIApplication.shared.keyWindow?.rootViewController) -> UIViewController? {
+
+        if let nav = base as? UINavigationController {
+            return getTopViewController(base: nav.visibleViewController)
+
+        } else if let tab = base as? UITabBarController, let selected = tab.selectedViewController {
+            return getTopViewController(base: selected)
+
+        } else if let presented = base?.presentedViewController {
+            return getTopViewController(base: presented)
+        }
+        return base
+    }
+}
+
+
+extension UIColor {
+            
+    public convenience init?(hexString: String) {
+        var cString: String = hexString.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines).uppercased()
+        
+        if (cString.hasPrefix("#")) {
+            if let range = cString.range(of: cString) {
+                cString = cString.substring(from: cString.index(range.lowerBound, offsetBy: 1))
+            }
+        }
+        
+        if ((cString.count) != 6) {
+            self.init(white: 0.2, alpha: 1)
+            return
+        }
+        
+        var rgbValue: UInt32 = 0
+        Scanner(string: cString).scanHexInt32(&rgbValue)
+        
+        self.init(
+            red: CGFloat((rgbValue & 0xFF0000) >> 16) / 255.0,
+            green: CGFloat((rgbValue & 0x00FF00) >> 8) / 255.0,
+            blue: CGFloat(rgbValue & 0x0000FF) / 255.0,
+            alpha: CGFloat(1.0)
+        )
+    }
+}
+
+extension UIView {
+
+    var height:CGFloat{return self.bounds.size.height}
+    var width:CGFloat{return self.bounds.size.width}
+    var x:CGFloat{return self.frame.origin.x}
+    var y:CGFloat{return self.frame.origin.y}
+
+    func MoveToXwithDuration(toX:CGFloat,duration:Double) {
+        UIView.animate(withDuration: duration) {
+            self.frame.origin.x = toX
+        }
+    }
+    
+    func MoveToYwithDuration(toY:CGFloat,duration:Double) {
+        
+        UIView.animate(withDuration: duration) {
+            self.frame.origin.y = toY
+        }
+    }
+    
+    @IBInspectable
+    var cornerRadiuss: CGFloat {
+        get {
+            return layer.cornerRadius
+        }
+        set {
+            layer.cornerRadius = newValue
+        }
+    }
+    
+    @IBInspectable
+    var borderWidth: CGFloat {
+        get
+        {
+            return layer.borderWidth
+        }
+        set
+        {
+            layer.borderWidth = newValue
+        }
+    }
+    
+    @IBInspectable
+    var borderColor: UIColor? {
+        get {
+            if let color = layer.borderColor {
+                return UIColor(cgColor: color)
+            }
+            return nil
+        }
+        set {
+            if let color = newValue {
+                layer.borderColor = color.cgColor
+            } else {
+                layer.borderColor = nil
+            }
+        }
+    }
+    
+    //FIND The parent view from UIVIEW
+    var parentViewController: UIViewController? {
+        var parentResponder: UIResponder? = self
+        while parentResponder != nil {
+            parentResponder = parentResponder!.next
+            if let viewController = parentResponder as? UIViewController {
+                return viewController
+            }
+        }
+        return nil
+    }
+    
+    func TakeScreenshot() -> UIImage {
+
+        UIGraphicsBeginImageContextWithOptions(self.bounds.size, false, UIScreen.main.scale)
+        drawHierarchy(in: self.bounds, afterScreenUpdates: true)
+        let image = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        if (image != nil)
+        {
+            return image!
+        }
+        return UIImage()
+    }
+}
+
+extension Int
+{
+    var FloatValue:CGFloat{return CGFloat(self)}
+    var DoubleValue:Double{return Double(self)}
+}
+
+
+extension UIImage{
+
+    var height:CGFloat{return self.size.height}
+    var width:CGFloat{return self.size.width}
+    
+    func resizeImage(targetSize: CGSize) -> UIImage? {
+        let size = self.size
+        
+        let widthRatio  = targetSize.width  / size.width
+        let heightRatio = targetSize.height / size.height
+        
+        // Figure out what our orientation is, and use that to form the rectangle
+        var newSize: CGSize
+        if(widthRatio > heightRatio) {
+            newSize = CGSize(width: size.width * heightRatio, height: size.height * heightRatio)
+        } else {
+            newSize = CGSize(width: size.width * widthRatio, height: size.height * widthRatio)
+        }
+        
+        // This is the rect that we've calculated out and this is what is actually used below
+        let rect = CGRect(origin: .zero, size: newSize)
+        
+        // Actually do the resizing to the rect using the ImageContext stuff
+        UIGraphicsBeginImageContextWithOptions(newSize, false, 1.0)
+        self.draw(in: rect)
+        let newImage = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        
+        return newImage
+    }
+    
+    func BlurImage(value:NSNumber) -> UIImage {
+        
+        let context = CIContext(options: [CIContextOption.useSoftwareRenderer:true])
+        let CIImage = CoreImage.CIImage(image:self)
+        let blurFilter = CIFilter(name: "CIGaussianBlur")
+        blurFilter?.setValue(CIImage, forKey: kCIInputImageKey)
+        blurFilter?.setValue(value, forKey: "inputRadius")
+        let imageRef = context.createCGImage((blurFilter?.outputImage)!, from: (CIImage?.extent)!)
+        
+        let newImage = UIImage(cgImage:imageRef!)
+        return newImage
+    }
+    
+    func fixImageOrientation()->UIImage {
+        UIGraphicsBeginImageContext(self.size)
+        self.draw(at: .zero)
+        let newImage = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        return newImage ?? self
+    }
+}
+
+extension String
+{
+    var toInteger:Int?{
+        get{
+            return Int(self)
+        }
+    }
+    
+    var toDouble:Double?{
+        get{
+            return Double(self)
+        }
+    }
+    
+    var toFloat:Float?{
+        get{
+            return Float(self)
+        }
+    }
+    
+    var toBool:Bool?{
+        get
+        {
+            if self == "1"
+            {
+                return "1" == self ?  true : false
+            }
+            return "true" == self ?  true : false
+        }
+    }
+}
+
+extension CGFloat
+{
+    var toInt:Int?{
+        get{
+            return Int(self)
+        }
+    }
+}
+
+
+struct ImageHeaderData{
+    static var PNG: [UInt8] = [0x89]
+    static var JPEG: [UInt8] = [0xFF]
+    static var GIF: [UInt8] = [0x47]
+    static var TIFF_01: [UInt8] = [0x49]
+    static var TIFF_02: [UInt8] = [0x4D]
+}
+
+enum ImageFormat{
+    case Unknown, PNG, JPEG, GIF, TIFF
+}
+
+
+extension NSData{
+    var imageFormat: ImageFormat{
+        var buffer = [UInt8](repeating: 0, count: 1)
+        self.getBytes(&buffer, range: NSRange(location: 0,length: 1))
+        if buffer == ImageHeaderData.PNG
+        {
+            return .PNG
+        } else if buffer == ImageHeaderData.JPEG
+        {
+            return .JPEG
+        } else if buffer == ImageHeaderData.GIF
+        {
+            return .GIF
+        } else if buffer == ImageHeaderData.TIFF_01 || buffer == ImageHeaderData.TIFF_02{
+            return .TIFF
+        } else{
+            return .Unknown
+        }
+    }
+}
diff --git a/MiniScanner/Modules/EditViewController/CustomCells/PagerImageCollectionViewCell/PagerImageCollectionViewCell.swift b/MiniScanner/Modules/EditViewController/CustomCells/PagerImageCollectionViewCell/PagerImageCollectionViewCell.swift
index ea9c7ae..8c2661f 100644
--- a/MiniScanner/Modules/EditViewController/CustomCells/PagerImageCollectionViewCell/PagerImageCollectionViewCell.swift
+++ b/MiniScanner/Modules/EditViewController/CustomCells/PagerImageCollectionViewCell/PagerImageCollectionViewCell.swift
@@ -7,7 +7,6 @@
 //
 
 import UIKit
-import FSPagerView
 class PagerImageCollectionViewCell: UICollectionViewCell {
     // MARK: - Outlets
     @IBOutlet weak var cellImageView: UIImageView!
diff --git a/MiniScanner/Modules/EditViewController/CustomViews/BannerView.swift b/MiniScanner/Modules/EditViewController/CustomViews/BannerView.swift
index ce49434..4197331 100644
--- a/MiniScanner/Modules/EditViewController/CustomViews/BannerView.swift
+++ b/MiniScanner/Modules/EditViewController/CustomViews/BannerView.swift
@@ -7,12 +7,12 @@
 //
 
 import UIKit
-import FSPagerView
 
 protocol BannerViewDelegate {
     func updateSelectedIndex(index: Int)
     func delete(index: Int)
     func preview(index: Int)
+    func update(session: MultiPageScanSession?)
 }
 
 class BannerView: UIView {
@@ -28,6 +28,10 @@ class BannerView: UIView {
         }
     }
     
+    var signatureImage: UIImage!
+    var signAllDoc: Bool = false
+    var donePressed: Bool = false
+    var isEditing: Bool = false
     fileprivate let transformerTypes: [FSPagerViewTransformerType] = [.crossFading,
                                                                       .zoomOut,
                                                                       .depth,
@@ -37,6 +41,7 @@ class BannerView: UIView {
                                                                       .invertedFerrisWheel,
                                                                       .coverFlow,
                                                                       .cubic]
+    var options:ImageScannerOptions!
     
     fileprivate var typeIndex = 0 {
         didSet {
@@ -67,7 +72,7 @@ class BannerView: UIView {
     
     // MARK: - Properties
     
-    var scanSession:MultiPageScanSession?
+    var scanSession: MultiPageScanSession?
     
     
     // MARK: - Init
@@ -101,7 +106,7 @@ class BannerView: UIView {
     // MARK: - Methods
     private func clearUI() {
         view.backgroundColor = .clear
-        
+        self.options = ImageScannerOptions()
     }
     
     
@@ -110,6 +115,28 @@ class BannerView: UIView {
         self.scanSession = session
         clearUI()
     }
+    func reloadSignature(with : UIImage, isAll: Bool = false) {
+        self.signatureImage = with
+        self.signAllDoc = isAll
+        pagerView.reloadData()
+    }
+    
+    func saveSignarure() {
+        donePressed = true
+        let cell = pagerView.cellForItem(at: pagerView.currentIndex)
+        cell?.selectedStickerView1?.showEditing = false
+        let image =  cell?.contentView.TakeScreenshot()
+        cell?.selectedStickerView1?.removeFromSuperview()
+        self.scanSession?.remove(index: pagerView.currentIndex)
+        
+        let scannedItem = ScannedItem(originalImage: image ?? UIImage(), quad: nil)
+        scannedItem.colorOption = self.options.defaultColorRenderOption
+        scannedItem.rotation = 180
+        scannedItem.render { (_) in }
+        self.scanSession?.add(item: scannedItem, at: pagerView.currentIndex)
+        cell?.imageView?.image = image
+        delegate?.update(session: self.scanSession)
+    }
     
 }
 
@@ -122,16 +149,30 @@ extension BannerView: FSPagerViewDataSource,FSPagerViewDelegate {
         let cell = pagerView.dequeueReusableCell(withReuseIdentifier: "cell", at: index)
         cell.index = index
         cell.delegate = self
+        
         if let item = scanSession?.scannedItems[index] {
             cell.imageView?.image = item.renderedImage?.retrieveImage()
         }
+        if isEditing {
+            if signAllDoc {
+                if cell.sign == nil {
+                    cell.sign = signatureImage
+                }
+            } else {
+                if index == pagerView.currentIndex {
+                    if cell.sign == nil {
+                        cell.sign = signatureImage
+                    }
+                }
+            }
+        }
+        
         return cell
     }
     
     func pagerViewWillEndDragging(_ pagerView: FSPagerView, targetIndex: Int) {
         delegate?.updateSelectedIndex(index: targetIndex)
     }
-    
 }
 
 extension BannerView: FSPagerViewCellDelegate {
diff --git a/MiniScanner/Modules/EditViewController/CustomViews/BannerView.xib b/MiniScanner/Modules/EditViewController/CustomViews/BannerView.xib
index e6de6b7..e2b0840 100644
--- a/MiniScanner/Modules/EditViewController/CustomViews/BannerView.xib
+++ b/MiniScanner/Modules/EditViewController/CustomViews/BannerView.xib
@@ -20,7 +20,7 @@
             <rect key="frame" x="0.0" y="0.0" width="393" height="645"/>
             <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
             <subviews>
-                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Qub-hE-fqd" customClass="FSPagerView" customModule="FSPagerView">
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Qub-hE-fqd" customClass="FSPagerView" customModule="MiniScanner" customModuleProvider="target">
                     <rect key="frame" x="0.0" y="0.0" width="393" height="645"/>
                     <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                 </view>
diff --git a/MiniScanner/Modules/EditViewController/EditViewController.swift b/MiniScanner/Modules/EditViewController/EditViewController.swift
index 8b133e5..04f7f75 100644
--- a/MiniScanner/Modules/EditViewController/EditViewController.swift
+++ b/MiniScanner/Modules/EditViewController/EditViewController.swift
@@ -11,6 +11,7 @@ import LNExtensionExecutor
 import NBBottomSheet
 import QuickLook
 import AVKit
+import EPSignature
 
 public protocol EditViewControllerDelegate: NSObjectProtocol {
     func editViewController(_ editViewController: EditViewController, finished session: MultiPageScanSession)
@@ -32,7 +33,10 @@ public class EditViewController: UIViewController {
     var selectedFolder: AppConfigurator.Folder?
     private var localFileManager: LocalFileManager?
     private var fileURL: URL?
+    var options:ImageScannerOptions!
     
+    var signatureImage = UIImage()
+    var isAll: Bool = false
     lazy private var activityIndicator: UIActivityIndicatorView = {
         let activityIndicator = UIActivityIndicatorView(style: .large)
         activityIndicator.color = .white
@@ -41,8 +45,6 @@ public class EditViewController: UIViewController {
         return activityIndicator
     }()
     
-    
-    
     // MARK: - LifeCycle
     public override func viewDidLoad() {
         super.viewDidLoad()
@@ -57,7 +59,32 @@ public class EditViewController: UIViewController {
         continueButton.setTitleColor(.white, for: .normal)
         continueButton.layer.cornerRadius = 10
         localFileManager = LocalFileManager()
-
+        options = ImageScannerOptions()
+    }
+    
+    @objc func onTouchDoneButton() {
+        self.banner.donePressed = true
+        if let items = scanSession?.scannedItems {
+            let cell = banner.pagerView.cellForItemat(index: self.banner.pagerView.currentIndex)
+                cell?.selectedStickerView1?.showEditing = false
+                
+                cell?.trashButton.isHidden = true
+                cell?.previewButton.isHidden = true
+                let image =  cell?.contentView.TakeScreenshot()
+                cell?.trashButton.isHidden = false
+                cell?.previewButton.isHidden = false
+                cell?.selectedStickerView1?.removeFromSuperview()
+                
+                if let img = image {
+                    let scannedItem = ScannedItem(originalImage: img, renderImage: img, quad: nil)
+                    scannedItem.colorOption = self.options.defaultColorRenderOption
+                    scannedItem.rotation = 180
+                    self.scanSession = self.scanSession?.replaceAndGet(item: scannedItem, at: banner.pagerView.currentIndex)
+                    self.banner.scanSession = self.scanSession
+                    self.banner.pagerView.reloadData()
+                    updatePageLabel()
+                }
+            }
     }
     
     @IBAction func backIndex(_ sender: UIButton) {
@@ -94,7 +121,7 @@ public class EditViewController: UIViewController {
         let configuration = NBBottomSheetConfiguration(animationDuration: 0.4, sheetSize: .fixed(322))
         
         let bottomSheetController = NBBottomSheetController(configuration: configuration)
-            bottomSheetController.present(popup, on: self)
+        bottomSheetController.present(popup, on: self)
     }
     
     public init(scanSession: MultiPageScanSession){
@@ -175,7 +202,7 @@ public class EditViewController: UIViewController {
             self.present(shareController, animated: true, completion: nil)
             self.activityIndicator.stopAnimating()
         }
-
+        
     }
     
     // MARK: - TABBAR ACTION
@@ -183,10 +210,20 @@ public class EditViewController: UIViewController {
         
     }
     
+    @IBAction func signatureTapped(_ sender: UIButton) {
+        let signatureVC = EPSignatureViewController(signatureDelegate: self, showsDate: true, showsSaveSignatureOption: true)
+        let nav = UINavigationController(rootViewController: signatureVC)
+        nav.modalPresentationStyle = .fullScreen
+        self.present(nav, animated: true, completion: nil)
+    }
 }
 
 // MARK: - BannerViewDelegate
 extension EditViewController: BannerViewDelegate {
+    func update(session: MultiPageScanSession?) {
+        self.scanSession = session
+    }
+    
     func preview(index: Int) {
         let previewController = PreviewImageViewController()
         if let image = scanSession?.scannedItems[index].renderedImage?.retrieveImage() {
@@ -197,7 +234,7 @@ extension EditViewController: BannerViewDelegate {
     
     func delete(index: Int) {
         let alertController = UIAlertController(title: "Alert", message: "Are you sure you want to delete this image?", preferredStyle: .alert)
-
+        
         let okAction = UIAlertAction(title: "Yes", style: .default) { (action) in
             self.scanSession?.remove(index: index)
             if index != 0 {
@@ -215,11 +252,11 @@ extension EditViewController: BannerViewDelegate {
             }
             self.dismiss(animated: true)
         }
-
+        
         let cancelAction = UIAlertAction(title: "Cancel", style: .cancel) { (action) in
             self.dismiss(animated: true)
         }
-
+        
         alertController.addAction(okAction)
         alertController.addAction(cancelAction)
         self.present(alertController, animated: true, completion: nil)
@@ -232,7 +269,7 @@ extension EditViewController: BannerViewDelegate {
     
     private func saveFileAndShare(with: String, name: String) {
         activityIndicator.startAnimating()
-
+        
         var images = [URL]()
         for index in 0..<(scanSession?.scannedItems.count ?? 0) {
             if let url = scanSession?.scannedItems[index].renderedImage {
@@ -269,7 +306,7 @@ extension EditViewController: ShareSheetViewControllerDelegate {
         DispatchQueue.main.async {
             self.saveFileAndShare(with: ShareOptions.gmail, name: name)
         }
-
+        
     }
     
     func printTapped() {
@@ -303,8 +340,8 @@ extension EditViewController: ShareSheetViewControllerDelegate {
                 let shareController = UIActivityViewController(activityItems: self.payload, applicationActivities: nil)
                 self.present(shareController, animated: true, completion: nil)
                 self.activityIndicator.stopAnimating()
-
-
+                
+                
             })
         }
     }
@@ -318,7 +355,7 @@ extension EditViewController: ShareSheetViewControllerDelegate {
             }
         }
         print("images: \(images)")
-         if let folder = selectedFolder {
+        if let folder = selectedFolder {
             PDFManager.createMultiPDFPage(from: images, localFileManager: localFileManager, folder: folder, name: name, {
                 self.activityIndicator.stopAnimating()
                 self.navigationController?.popViewController(animated: true)
@@ -337,3 +374,48 @@ extension EditViewController: QLPreviewControllerDataSource {
         return fileURL! as QLPreviewItem
     }
 }
+
+// MARK: - EPSignatureDelegate
+extension EditViewController: EPSignatureDelegate {
+    public func epSignature(_: EPSignatureViewController, didCancel error : NSError) {
+        print("User canceled")
+    }
+    
+    public func epSignature(_: EPSignatureViewController, didSign signatureImage : UIImage, boundingRect: CGRect) {
+        self.dismiss(animated: true) {
+            self.banner.donePressed = false
+            self.banner.isEditing = true
+            self.signatureImage = signatureImage
+            let alertController = UIAlertController(title: "", message: "Do you want to sign:", preferredStyle: .alert)
+            
+            let allAction = UIAlertAction(title: "All document", style: .default) { (action) in
+                self.banner.signatureImage = signatureImage
+                self.banner.signAllDoc = true
+                self.banner.pagerView.reloadData()
+                
+                let doneButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.done, target: self, action: #selector(self.onTouchDoneButton))
+                self.navigationItem.rightBarButtonItem = doneButton
+                self.dismiss(animated: true)
+            }
+            
+            let currentAction = UIAlertAction(title: "Current page", style: .default) { (action) in
+                self.banner.signatureImage = signatureImage
+                self.banner.signAllDoc = false
+                self.banner.pagerView.reloadData()
+                
+                let doneButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonItem.SystemItem.done, target: self, action: #selector(self.onTouchDoneButton))
+                self.navigationItem.rightBarButtonItem = doneButton
+                self.dismiss(animated: true)
+            }
+            let cancelAction = UIAlertAction(title: "Cancel", style: .cancel) { (action) in
+                self.banner.isEditing = false
+                self.dismiss(animated: true)
+            }
+            
+            alertController.addAction(allAction)
+            alertController.addAction(currentAction)
+            alertController.addAction(cancelAction)
+            self.present(alertController, animated: true, completion: nil)
+        }
+    }
+}
diff --git a/MiniScanner/Modules/EditViewController/EditViewController.xib b/MiniScanner/Modules/EditViewController/EditViewController.xib
index 5c2a541..f6ecf3f 100644
--- a/MiniScanner/Modules/EditViewController/EditViewController.xib
+++ b/MiniScanner/Modules/EditViewController/EditViewController.xib
@@ -99,7 +99,7 @@
                             </constraints>
                         </view>
                         <label opaque="NO" userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Direct Share" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontForContentSizeCategory="YES" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Kl7-O6-xwc">
-                            <rect key="frame" x="166" y="13" width="98.333333333333314" height="22"/>
+                            <rect key="frame" x="171" y="13" width="88.333333333333314" height="22"/>
                             <fontDescription key="fontDescription" name="Poppins-Medium" family="Poppins" pointSize="16"/>
                             <nil key="textColor"/>
                             <nil key="highlightedColor"/>
@@ -228,6 +228,9 @@
                                         <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="1gC-XS-O2e">
                                             <rect key="frame" x="0.0" y="0.0" width="82" height="90"/>
                                             <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
+                                            <connections>
+                                                <action selector="signatureTapped:" destination="-1" eventType="touchUpInside" id="oKV-wj-LNT"/>
+                                            </connections>
                                         </button>
                                     </subviews>
                                     <color key="backgroundColor" systemColor="systemBackgroundColor"/>
@@ -288,7 +291,7 @@
                                             </constraints>
                                         </imageView>
                                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="edit" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="qsI-va-wrT">
-                                            <rect key="frame" x="0.0" y="52" width="82" height="24"/>
+                                            <rect key="frame" x="0.0" y="52" width="82" height="20"/>
                                             <fontDescription key="fontDescription" name="Poppins-Regular" family="Poppins" pointSize="17"/>
                                             <nil key="textColor"/>
                                             <nil key="highlightedColor"/>
diff --git a/MiniScanner/Supporting Files/.DS_Store b/MiniScanner/Supporting Files/.DS_Store
index 4305f7734bae3905870154284d7bffee466c2663..c2fa1916ae96cee75a48220af50e8511e972e506 100644
GIT binary patch
delta 897
zcmb7CO-lk%6uqM@f+Wq<S}05u(L(&nigsxU1qFr??QGI%92jTR><bB9xT^?xd;da+
zxN^~=KhdV&(X!5)T$CA2GrYN%xpVHBd(UZZG}E(0BqY!CQ6drPI1Z04N2}~>h316$
zPP*?D=DQA8*p~27lJ@A3RFdhEHpw8Js#HPLaLdR-bcTvbr&Qh1jNFN4obYboxJ7KU
zf_tHR;P%@ClYn1S&V;2&BE^IcS~F>8T4=KeudiG4J_+&^?SezWNq|wMA^=rH&Od;B
zXQM|jPQIHLc!?}@V0Z3@XJsuG6r<~_H$kzs9*YFU_-dSq)5~=W4KyX1$r;6xNl2+z
zYqUjUYiqD3zWm<N!*k*%vOa3&qLH@%9fd3vzW(Yl`2N^X-IV+yQ_(d;SMa%j6Mz|1
zQ;-all#uDBidopCf=V8e@w!4;+D1jfn@^JzhUCJ;LvroG9Vxnk%rZJu7YAzp?ymrE
z!NM~yokn|X%FaiEl_&5>aXWX)Z+7PN?|W>YCST%Z3=!dxmHhXt=js2;l}QVh7#eff
Fl^?Nt!mj`T

delta 118
zcmZn(XmOBWU|?W$DortDU;r^WfEYvza8E20o2aMAD6uhMH$S7qW*z~3rpZ%8B{we+
zl40KbL-Z8m<T+Aj1(|_rfk1*ANVtNuZ7lrGJegl5kb@Co7{lavo@tZ4M2ld0P5}Uo
CWg9U7

diff --git a/MiniScanner/Supporting Files/Assets.xcassets/close.imageset/Contents.json b/MiniScanner/Supporting Files/Assets.xcassets/close.imageset/Contents.json
new file mode 100644
index 0000000..acb0efb
--- /dev/null
+++ b/MiniScanner/Supporting Files/Assets.xcassets/close.imageset/Contents.json	
@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "filename" : "close.png",
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/MiniScanner/Supporting Files/Assets.xcassets/close.imageset/close.png b/MiniScanner/Supporting Files/Assets.xcassets/close.imageset/close.png
new file mode 100644
index 0000000000000000000000000000000000000000..97b961b4d8697e22a5b53dd3e5124af5c850acfb
GIT binary patch
literal 3262
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

literal 0
HcmV?d00001

diff --git a/MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/Contents.json b/MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/Contents.json
new file mode 100644
index 0000000..c83c48d
--- /dev/null
+++ b/MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/Contents.json	
@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "filename" : "resize.png",
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}
diff --git a/MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/resize.png b/MiniScanner/Supporting Files/Assets.xcassets/resize.imageset/resize.png
new file mode 100644
index 0000000000000000000000000000000000000000..911f9384ea8897e410975ab8632a475ce2d60d2d
GIT binary patch
literal 2599
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

literal 0
HcmV?d00001

diff --git a/MiniScanner/Supporting Files/CustomWeScan/MultiPageSession/MultiPageScanSession.swift b/MiniScanner/Supporting Files/CustomWeScan/MultiPageSession/MultiPageScanSession.swift
index 86039cf..fbc9168 100644
--- a/MiniScanner/Supporting Files/CustomWeScan/MultiPageSession/MultiPageScanSession.swift	
+++ b/MiniScanner/Supporting Files/CustomWeScan/MultiPageSession/MultiPageScanSession.swift	
@@ -38,6 +38,13 @@ public class ScannedItem{
         self.colorOption = colorOption
     }
     
+    public init(originalImage:UIImage, renderImage: UIImage, quad:Quadrilateral? = nil, colorOption:ScannedItemColorOption = .color) {
+        self.originalImage = filePath().saveImage(image: originalImage.withFixedOrientation())
+        self.quad = quad
+        self.colorOption = colorOption
+        self.renderedImage = filePath().saveImage(image: renderImage.withFixedOrientation())
+    }
+    
     public func render(completion: @escaping (_ image:URL?)->Void){
         ScannedItemRenderer().render(scannedItem: self) { (image) in
             self.renderedImage = self.filePath().saveImage(image: image?.withFixedOrientation())
@@ -62,10 +69,27 @@ public class MultiPageScanSession {
         self.scannedItems.append(item)
     }
     
+    public func add(item: ScannedItem, at: Int) {
+        self.scannedItems.insert(item, at: at)
+    }
+    
     public func remove(index:Int){
         self.scannedItems.remove(at: index)
     }
     
+    public func replace(with item: ScannedItem, at: Int) {
+        if (scannedItems.indices.contains(at)) == true {
+            scannedItems[at] = item
+        }
+    }
+    
+    public func replaceAndGet(item: ScannedItem, at: Int) -> MultiPageScanSession{
+        if (scannedItems.indices.contains(at)) == true {
+            scannedItems[at] = item
+        }
+        return self
+    }
+    
 }
 
 extension ScannedItem {
diff --git a/MiniScanner/Supporting Files/Info.plist b/MiniScanner/Supporting Files/Info.plist
index 328f2af..7648ba4 100644
--- a/MiniScanner/Supporting Files/Info.plist	
+++ b/MiniScanner/Supporting Files/Info.plist	
@@ -70,12 +70,5 @@
 	<array>
 		<string>UIInterfaceOrientationPortrait</string>
 	</array>
-	<key>UISupportedInterfaceOrientations~ipad</key>
-	<array>
-		<string>UIInterfaceOrientationLandscapeLeft</string>
-		<string>UIInterfaceOrientationLandscapeRight</string>
-		<string>UIInterfaceOrientationPortrait</string>
-		<string>UIInterfaceOrientationPortraitUpsideDown</string>
-	</array>
 </dict>
 </plist>
diff --git a/MiniScanner/Supporting Files/LogoAnimationView/.DS_Store b/MiniScanner/Supporting Files/LogoAnimationView/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6
GIT binary patch
literal 6148
zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3
zem<@ulZcFPQ@L2!n>{z**<q8>++&mCkOWA81W14cNZ<zv;LbK1Poaz?KmsK2CSc!(
z0ynLxE!0092;Krf2c+FF_Fe*7ECH>lEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ
zLs35+`xjp>T0<F0fCPF1$Cyrb|F7^5{eNG?83~ZUUlGt@xh*qZDeu<Z%US-OSsOPv
j)R!Z4KLME7ReXlK;d!wEw5GODWMKRea10D2@KpjYNUI8I

literal 0
HcmV?d00001

diff --git a/MiniScanner/Supporting Files/LogoAnimationView/StickerView.swift b/MiniScanner/Supporting Files/LogoAnimationView/StickerView.swift
new file mode 100755
index 0000000..e07326b
--- /dev/null
+++ b/MiniScanner/Supporting Files/LogoAnimationView/StickerView.swift	
@@ -0,0 +1,417 @@
+//
+//  StickerView.swift
+//  StickerView
+//
+//  Created by Edgar Sia on 1/12/18.
+//  Copyright © 2018 Edgar Sia. All rights reserved.
+//
+
+import UIKit
+
+enum StickerViewHandler:Int {
+    case close = 0
+    case rotate
+    case flip
+}
+
+enum StickerViewPosition:Int {
+    case topLeft = 0
+    case topRight
+    case bottomLeft
+    case bottomRight
+}
+
+@inline(__always) func CGRectGetCenter(_ rect:CGRect) -> CGPoint {
+    return CGPoint(x: rect.midX, y: rect.midY)
+}
+
+@inline(__always) func CGRectScale(_ rect:CGRect, wScale:CGFloat, hScale:CGFloat) -> CGRect {
+    return CGRect(x: rect.origin.x, y: rect.origin.y, width: rect.size.width * wScale, height: rect.size.height * hScale)
+}
+
+@inline(__always) func CGAffineTransformGetAngle(_ t:CGAffineTransform) -> CGFloat {
+    return atan2(t.b, t.a)
+}
+
+@inline(__always) func CGPointGetDistance(point1:CGPoint, point2:CGPoint) -> CGFloat {
+    let fx = point2.x - point1.x
+    let fy = point2.y - point1.y
+    return sqrt(fx * fx + fy * fy)
+}
+
+@objc protocol StickerViewDelegate {
+    @objc func stickerViewDidBeginMoving(_ stickerView: StickerView)
+    @objc func stickerViewDidChangeMoving(_ stickerView: StickerView)
+    @objc func stickerViewDidEndMoving(_ stickerView: StickerView)
+    @objc func stickerViewDidBeginRotating(_ stickerView: StickerView)
+    @objc func stickerViewDidChangeRotating(_ stickerView: StickerView)
+    @objc func stickerViewDidEndRotating(_ stickerView: StickerView)
+    @objc func stickerViewDidClose(_ stickerView: StickerView)
+    @objc func stickerViewDidTap(_ stickerView: StickerView)
+}
+
+open class StickerView: UIView {
+    var delegate: StickerViewDelegate!
+    /// The contentView inside the sticker view.
+    var contentView:UIView!
+    /// Enable the close handler or not. Default value is YES.
+    var enableClose:Bool = true {
+        didSet {
+            if self.showEditing {
+                self.setEnableClose(self.enableClose)
+            }
+        }
+    }
+    /// Enable the rotate/resize handler or not. Default value is YES.
+    var enableRotate:Bool = true{
+        didSet {
+            if self.showEditing {
+                self.setEnableRotate(self.enableRotate)
+            }
+        }
+    }
+    /// Enable the flip handler or not. Default value is YES.
+    var enableFlip:Bool = true
+    /// Show close and rotate/resize handlers or not. Default value is YES.
+    var showEditing:Bool = true {
+        didSet {
+            if self.showEditing {
+                self.setEnableClose(self.enableClose)
+                self.setEnableRotate(self.enableRotate)
+                self.setEnableFlip(self.enableFlip)
+                self.contentView?.layer.borderWidth = 1
+            }
+            else {
+                self.setEnableClose(false)
+                self.setEnableRotate(false)
+                self.setEnableFlip(false)
+                self.contentView?.layer.borderWidth = 0
+            }
+        }
+    }
+    
+    /// Minimum value for the shorter side while resizing. Default value will be used if not set.
+    private var _minimumSize:NSInteger = 0
+    var minimumSize:NSInteger {
+        set {
+            _minimumSize = max(newValue, self.defaultMinimumSize)
+        }
+        get {
+            return _minimumSize
+        }
+    }
+    /// Color of the outline border. Default: brown color.
+    private var _outlineBorderColor:UIColor = .clear
+    var outlineBorderColor:UIColor {
+        set {
+            _outlineBorderColor = newValue
+            self.contentView?.layer.borderColor = _outlineBorderColor.cgColor
+        }
+        get {
+            return _outlineBorderColor
+        }
+    }
+    /// A convenient property for you to store extra information.
+    var userInfo:Any?
+    
+ 
+    init(contentView: UIView) {
+        self.defaultInset = 11
+        self.defaultMinimumSize = 4 * self.defaultInset
+        
+        var frame = contentView.frame
+        frame = CGRect(x: 0, y: 0, width: frame.size.width + CGFloat(self.defaultInset) * 2, height: frame.size.height + CGFloat(self.defaultInset) * 2)
+        super.init(frame: frame)
+        self.backgroundColor = UIColor.clear
+        self.addGestureRecognizer(self.moveGesture)
+        self.addGestureRecognizer(self.tapGesture)
+        
+        // Setup content view
+        self.contentView = contentView
+        self.contentView.center = CGRectGetCenter(self.bounds)
+        self.contentView.isUserInteractionEnabled = false
+        self.contentView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
+        self.contentView.layer.allowsEdgeAntialiasing = true
+        self.addSubview(self.contentView)
+        
+        // Setup editing handlers
+        self.setPosition(.topLeft, forHandler: .close)
+        self.addSubview(self.closeImageView)
+        self.setPosition(.bottomRight, forHandler: .rotate)
+        self.addSubview(self.rotateImageView)
+        self.setPosition(.bottomLeft, forHandler: .flip)
+        self.addSubview(self.flipImageView)
+        
+        self.showEditing = true
+        self.enableClose = true
+        self.enableRotate = true
+        self.enableFlip = false
+        
+        self.minimumSize = self.defaultMinimumSize
+        self.outlineBorderColor = .white
+    }
+    
+    required public init?(coder aDecoder: NSCoder) {
+        fatalError("init(coder:) has not been implemented")
+    }
+    
+    func setImage(_ image:UIImage, forHandler handler:StickerViewHandler) {
+        switch handler {
+        case .close:
+            self.closeImageView.image = image
+        case .rotate:
+            self.rotateImageView.image = image
+        case .flip:
+            self.flipImageView.image = image
+        }
+    }
+ 
+    func setPosition(_ position:StickerViewPosition, forHandler handler:StickerViewHandler) {
+        let origin = self.contentView.frame.origin
+        let size = self.contentView.frame.size
+        
+        var handlerView:UIImageView?
+        switch handler {
+        case .close:
+            handlerView = self.closeImageView
+        case .rotate:
+            handlerView = self.rotateImageView
+        case .flip:
+            handlerView = self.flipImageView
+        }
+        
+        switch position {
+        case .topLeft:
+            handlerView?.center = origin
+            handlerView?.autoresizingMask = [.flexibleRightMargin, .flexibleBottomMargin]
+        case .topRight:
+            handlerView?.center = CGPoint(x: origin.x + size.width, y: origin.y)
+            handlerView?.autoresizingMask = [.flexibleLeftMargin, .flexibleBottomMargin]
+        case .bottomLeft:
+            handlerView?.center = CGPoint(x: origin.x, y: origin.y + size.height)
+            handlerView?.autoresizingMask = [.flexibleRightMargin, .flexibleTopMargin]
+        case .bottomRight:
+            handlerView?.center = CGPoint(x: origin.x + size.width, y: origin.y + size.height)
+            handlerView?.autoresizingMask = [.flexibleLeftMargin, .flexibleTopMargin]
+        }
+        
+        handlerView?.tag = position.rawValue
+    }
+    
+    /**
+     *  Customize handler's size
+     *
+     *  @param size Handler's size
+     */
+    func setHandlerSize(_ size:Int) {
+        if size <= 0 {
+            return
+        }
+        
+        self.defaultInset = NSInteger(round(Float(size) / 2))
+        self.defaultMinimumSize = 4 * self.defaultInset
+        self.minimumSize = max(self.minimumSize, self.defaultMinimumSize)
+        
+        let originalCenter = self.center
+        let originalTransform = self.transform
+        var frame = self.contentView.frame
+        frame = CGRect(x: 0, y: 0, width: frame.size.width + CGFloat(self.defaultInset) * 2, height: frame.size.height + CGFloat(self.defaultInset) * 2)
+        
+        self.contentView.removeFromSuperview()
+        
+        self.transform = CGAffineTransform.identity
+        self.frame = frame
+        
+        self.contentView.center = CGRectGetCenter(self.bounds)
+        self.addSubview(self.contentView)
+        self.sendSubviewToBack(self.contentView)
+        
+        let handlerFrame = CGRect(x: 0, y: 0, width: self.defaultInset * 2, height: self.defaultInset * 2)
+        self.closeImageView.frame = handlerFrame
+        self.setPosition(StickerViewPosition(rawValue: self.closeImageView.tag)!, forHandler: .close)
+        self.rotateImageView.frame = handlerFrame
+        self.setPosition(StickerViewPosition(rawValue: self.rotateImageView.tag)!, forHandler: .rotate)
+        self.flipImageView.frame = handlerFrame
+        self.setPosition(StickerViewPosition(rawValue: self.flipImageView.tag)!, forHandler: .flip)
+        
+        self.center = originalCenter
+        self.transform = originalTransform
+    }
+    
+    /**
+     *  Default value
+     */
+    private var defaultInset:NSInteger
+    private var defaultMinimumSize:NSInteger
+    
+    /**
+     *  Variables for moving view
+     */
+    private var beginningPoint = CGPoint.zero
+    private var beginningCenter = CGPoint.zero
+    
+    /**
+     *  Variables for rotating and resizing view
+     */
+    private var initialBounds = CGRect.zero
+    private var initialDistance:CGFloat = 0
+    private var deltaAngle:CGFloat = 0
+    
+    private lazy var moveGesture = {
+        return UIPanGestureRecognizer(target: self, action: #selector(handleMoveGesture(_:)))
+    }()
+    private lazy var rotateImageView:UIImageView = {
+        let rotateImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
+        rotateImageView.cornerRadiuss = 10
+        rotateImageView.tintColor = UIColor.black
+        rotateImageView.contentMode = UIView.ContentMode.scaleAspectFit
+        rotateImageView.backgroundColor = UIColor.white
+        rotateImageView.isUserInteractionEnabled = true
+        rotateImageView.addGestureRecognizer(self.rotateGesture)
+        
+        return rotateImageView
+    }()
+    private lazy var rotateGesture = {
+        return UIPanGestureRecognizer(target: self, action: #selector(handleRotateGesture(_:)))
+    }()
+    private lazy var closeImageView:UIImageView = {
+        let closeImageview = UIImageView(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
+        closeImageview.cornerRadiuss = 10
+        closeImageview.tintColor = UIColor.black
+        closeImageview.contentMode = UIView.ContentMode.scaleAspectFit
+        closeImageview.backgroundColor = UIColor.white
+        closeImageview.isUserInteractionEnabled = true
+        closeImageview.addGestureRecognizer(self.closeGesture)
+        return closeImageview
+    }()
+    private lazy var closeGesture = {
+        return UITapGestureRecognizer(target: self, action: #selector(handleCloseGesture(_:)))
+    }()
+    private lazy var flipImageView:UIImageView = {
+        let flipImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: self.defaultInset * 2, height: self.defaultInset * 2))
+        flipImageView.contentMode = UIView.ContentMode.scaleAspectFit
+        flipImageView.backgroundColor = UIColor.clear
+        flipImageView.isUserInteractionEnabled = true
+        flipImageView.addGestureRecognizer(self.flipGesture)
+        return flipImageView
+    }()
+    private lazy var flipGesture = {
+        return UITapGestureRecognizer(target: self, action: #selector(handleFlipGesture(_:)))
+    }()
+    private lazy var tapGesture = {
+        return UITapGestureRecognizer(target: self, action: #selector(handleTapGesture(_:)))
+    }()
+    // MARK: - Gesture Handlers
+    @objc
+    func handleMoveGesture(_ recognizer: UIPanGestureRecognizer) {
+        let touchLocation = recognizer.location(in: self.superview)
+        switch recognizer.state {
+        case .began:
+            self.beginningPoint = touchLocation
+            self.beginningCenter = self.center
+            if let delegate = self.delegate {
+                delegate.stickerViewDidBeginMoving(self)
+            }
+        case .changed:
+            self.center = CGPoint(x: self.beginningCenter.x + (touchLocation.x - self.beginningPoint.x), y: self.beginningCenter.y + (touchLocation.y - self.beginningPoint.y))
+            if let delegate = self.delegate {
+                delegate.stickerViewDidChangeMoving(self)
+            }
+        case .ended:
+            self.center = CGPoint(x: self.beginningCenter.x + (touchLocation.x - self.beginningPoint.x), y: self.beginningCenter.y + (touchLocation.y - self.beginningPoint.y))
+            if let delegate = self.delegate {
+                delegate.stickerViewDidEndMoving(self)
+            }
+        default:
+            break
+        }
+    }
+    
+    @objc
+    func handleRotateGesture(_ recognizer: UIPanGestureRecognizer) {
+        let touchLocation = recognizer.location(in: self.superview)
+        let center = self.center
+        
+        switch recognizer.state {
+        case .began:
+            self.deltaAngle = CGFloat(atan2f(Float(touchLocation.y - center.y), Float(touchLocation.x - center.x))) - CGAffineTransformGetAngle(self.transform)
+            self.initialBounds = self.bounds
+            self.initialDistance = CGPointGetDistance(point1: center, point2: touchLocation)
+            if let delegate = self.delegate {
+                delegate.stickerViewDidBeginRotating(self)
+            }
+        case .changed:
+            let angle = atan2f(Float(touchLocation.y - center.y), Float(touchLocation.x - center.x))
+            let angleDiff = Float(self.deltaAngle) - angle
+            self.transform = CGAffineTransform(rotationAngle: CGFloat(-angleDiff))
+            
+            var scale = CGPointGetDistance(point1: center, point2: touchLocation) / self.initialDistance
+            let minimumScale = CGFloat(self.minimumSize) / min(self.initialBounds.size.width, self.initialBounds.size.height)
+            scale = max(scale, minimumScale)
+            let scaledBounds = CGRectScale(self.initialBounds, wScale: scale, hScale: scale)
+            self.bounds = scaledBounds
+            self.setNeedsDisplay()
+            
+            if let delegate = self.delegate {
+                delegate.stickerViewDidChangeRotating(self)
+            }
+        case .ended:
+            if let delegate = self.delegate {
+                delegate.stickerViewDidEndRotating(self)
+            }
+        default:
+            break
+        }
+    }
+    
+    @objc
+    func handleCloseGesture(_ recognizer: UITapGestureRecognizer) {
+        if let delegate = self.delegate {
+            delegate.stickerViewDidClose(self)
+        }
+        self.removeFromSuperview()
+    }
+    
+    @objc
+    func handleFlipGesture(_ recognizer: UITapGestureRecognizer) {
+        UIView.animate(withDuration: 0.3) {
+            self.contentView.transform = self.contentView.transform.scaledBy(x: -1, y: 1)
+        }
+    }
+    
+    @objc
+    func handleTapGesture(_ recognizer: UITapGestureRecognizer) {
+        if let delegate = self.delegate {
+            delegate.stickerViewDidTap(self)
+        }
+    }
+    
+    // MARK: - Private Methods
+    private func setEnableClose(_ enableClose:Bool) {
+        self.closeImageView.isHidden = !enableClose
+        self.closeImageView.isUserInteractionEnabled = enableClose
+    }
+    
+    private func setEnableRotate(_ enableRotate:Bool) {
+        self.rotateImageView.isHidden = !enableRotate
+        self.rotateImageView.isUserInteractionEnabled = enableRotate
+    }
+    
+    private func setEnableFlip(_ enableFlip:Bool) {
+        self.flipImageView.isHidden = !enableFlip
+        self.flipImageView.isUserInteractionEnabled = enableFlip
+    }
+}
+
+extension StickerView: UIGestureRecognizerDelegate {
+    public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldBeRequiredToFailBy otherGestureRecognizer: UIGestureRecognizer) -> Bool {
+        /**
+         * ref: http://stackoverflow.com/questions/19095165/should-superviews-gesture-cancel-subviews-gesture-in-ios-7/
+         *
+         * The `gestureRecognizer` would be either closeGestureRecognizer or rotateGestureRecognizer,
+         * `otherGestureRecognizer` should work only when `gestureRecognizer` is failed.
+         * So, we always return YES here.
+         */
+        return true
+    }
+}
diff --git a/MiniScanner/Supporting Files/LogoAnimationView/UIView+Constraints.swift b/MiniScanner/Supporting Files/LogoAnimationView/UIView+Constraints.swift
new file mode 100755
index 0000000..992e1c7
--- /dev/null
+++ b/MiniScanner/Supporting Files/LogoAnimationView/UIView+Constraints.swift	
@@ -0,0 +1,21 @@
+//
+//  UIView+Constraints.swift
+//  AnimatedGifLaunchScreen-Example
+//
+//  Created by Amer Hukic on 13/09/2018.
+//  Copyright © 2018 Amer Hukic. All rights reserved.
+//
+
+import UIKit
+
+extension UIView {
+    
+    func pinEdgesToSuperView() {
+        guard let superView = superview else { return }
+        translatesAutoresizingMaskIntoConstraints = false
+        topAnchor.constraint(equalTo: superView.topAnchor).isActive = true
+        leftAnchor.constraint(equalTo: superView.leftAnchor).isActive = true
+        bottomAnchor.constraint(equalTo: superView.bottomAnchor).isActive = true
+        rightAnchor.constraint(equalTo: superView.rightAnchor).isActive = true
+    }
+}
diff --git a/MiniScanner/Supporting Files/MyExtention.swift b/MiniScanner/Supporting Files/MyExtention.swift
new file mode 100755
index 0000000..fdf6fc4
--- /dev/null
+++ b/MiniScanner/Supporting Files/MyExtention.swift	
@@ -0,0 +1,762 @@
+import UIKit
+import Foundation
+import CoreLocation
+import QuartzCore
+import CoreGraphics
+import SystemConfiguration
+
+let SCREEN_WIDTH = UIScreen.main.bounds.width
+let SCREEN_HEIGHT = UIScreen.main.bounds.height
+let storyBoard = UIStoryboard.init(name: "Main", bundle: nil)
+let appDelegate = UIApplication.shared.delegate as! AppDelegate
+
+let BANNER_ADID = "ca-app-pub-3940256099942544/2934735716"
+let FULL_ADID = "ca-app-pub-3940256099942544/4411468910"
+let APPOPENADID = "ca-app-pub-3940256099942544/5662855259"
+let APP_NATIVE = "ca-app-pub-3940256099942544/3986624511"
+
+let appID = "app ID"
+let devURL = "developer URL"
+let Mail_ID = "support mail"
+var RateURL : String = "app URL"
+
+var AppName = "Cam Scanner"
+var PDFFileName = "FinalPDF"
+
+let ShadowColor = UIColor.init(named: "ShadowColor")!
+let FontColor = UIColor.init(named: "FontColor")!
+let BGColor = UIColor.init(named: "BGColor")!
+let ThemeColor = UIColor.init(named: "ThemeColor")!
+
+var bottomPadding: CGFloat = UIApplication.shared.keyWindow?.safeAreaInsets.bottom ?? 0.0
+var topPadding: CGFloat = UIApplication.shared.keyWindow?.safeAreaInsets.top ?? 0.0
+
+class MyFunc: NSObject
+{
+    func convertImageToBase64(image: UIImage) -> String {
+        let imageData = image.pngData()!
+        return imageData.base64EncodedString(options: Data.Base64EncodingOptions.lineLength64Characters)
+    }
+
+    func convertBase64ToImage(imageString: String) -> UIImage {
+        let imageData = Data(base64Encoded: imageString, options: Data.Base64DecodingOptions.ignoreUnknownCharacters)!
+        return UIImage(data: imageData)!
+    }
+}
+
+class UserDefaultMgr
+{
+    class func setSortType(strId: Int)
+    {
+        UserDefaults.standard.setValue(strId, forKey: "sortType")
+        UserDefaults.standard.synchronize()
+    }
+    class func getSortType() -> Int{
+        if UserDefaults.standard.object(forKey: "sortType") == nil{
+            return 0
+        }
+        return UserDefaults.standard.value(forKey: "sortType") as! Int
+    }
+    
+    
+    class func getIsDoc4Time() -> Int{
+        if UserDefaults.standard.object(forKey: "ad_DocCount") == nil{
+            return 0
+        }
+        return UserDefaults.standard.value(forKey: "ad_DocCount") as! Int
+    }
+    class func setIsDoc4Time(strId: Int)
+    {
+        UserDefaults.standard.setValue(strId, forKey: "ad_DocCount")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsOCROneTime() -> Int{
+        if UserDefaults.standard.object(forKey: "ad_OCRcount") == nil{
+            return 0
+        }
+        return UserDefaults.standard.value(forKey: "ad_OCRcount") as! Int
+    }
+    class func setIsOCROneTime(strId: Int)
+    {
+        UserDefaults.standard.setValue(strId, forKey: "ad_OCRcount")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func setIsChangeLayout(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isChangeLayout")
+        UserDefaults.standard.synchronize()
+    }
+    class func getIsChangeLayout() -> Bool{
+        if UserDefaults.standard.object(forKey: "isChangeLayout") == nil{
+            setIsChangeLayout(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isChangeLayout") as! Bool
+    }
+    
+    class func setIsPasscode(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isPasscode")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsPasscode() -> Bool{
+        if UserDefaults.standard.object(forKey: "isPasscode") == nil{
+            setIsPasscode(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isPasscode") as! Bool
+    }
+    
+    class func setIsFaceID(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isFaceID")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsFaceID() -> Bool{
+        if UserDefaults.standard.object(forKey: "isFaceID") == nil{
+            setIsFaceID(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isFaceID") as! Bool
+    }
+    
+    
+    class func setIsTouchID(type: Bool){
+        UserDefaults.standard.setValue(type, forKey: "isTouchID")
+        UserDefaults.standard.synchronize()
+    }
+    
+    class func getIsTouchID() -> Bool{
+        if UserDefaults.standard.object(forKey: "isTouchID") == nil{
+            setIsTouchID(type: false)
+            return false
+        }
+        return UserDefaults.standard.value(forKey: "isTouchID") as! Bool
+    }
+    
+}
+
+
+let aloaderSpinnerMarginSide : CGFloat = 35.0
+let aloaderSpinnerMarginTop : CGFloat = 20.0
+let aloaderTitleMargin : CGFloat = 5.0
+
+let maxCount = 6
+
+
+open class ProcessLoader : UIView {
+    
+    fileprivate var coverView : UIView?
+    fileprivate var titleLabel : UILabel?
+    fileprivate var loadingView : SwiftLoadingView?
+    fileprivate var animated : Bool = true
+    fileprivate var canUpdated = false
+    fileprivate var title: String?
+    fileprivate var speed = 1
+    
+    fileprivate var config : Config = Config() {
+        didSet {
+            self.loadingView?.config = config
+        }
+    }
+    
+    @objc func rotated(_ notification: Notification) {
+        
+        let loader = ProcessLoader.sharedInstance
+        
+        let height : CGFloat = UIScreen.main.bounds.size.height
+        let width : CGFloat = UIScreen.main.bounds.size.width
+        let center : CGPoint = CGPoint(x: width / 2.0, y: height / 2.0)
+        
+        loader.center = center
+        loader.coverView?.frame = UIScreen.main.bounds
+    }
+    
+    override open var frame : CGRect {
+        didSet {
+            self.update()
+        }
+    }
+    
+    class var sharedInstance: ProcessLoader {
+        struct Singleton {
+            static let instance = ProcessLoader(frame: CGRect(origin: CGPoint(x: 0,y: 0),size: CGSize(width: Config().size,height: Config().size)))
+        }
+        return Singleton.instance
+    }
+    
+    open class func show(animated: Bool) {
+        self.show(title: nil, animated: animated)
+    }
+    
+    open class func show(title: String?, animated : Bool) {
+        
+        let currentWindow : UIWindow = UIApplication.shared.keyWindow!
+        
+        let loader = ProcessLoader.sharedInstance
+        loader.canUpdated = true
+        loader.animated = animated
+        loader.title = title
+        loader.update()
+                
+        let height : CGFloat = UIScreen.main.bounds.size.height
+        let width : CGFloat = UIScreen.main.bounds.size.width
+        let center : CGPoint = CGPoint(x: width / 2.0, y: height / 2.0)
+        
+        loader.center = center
+        
+        if (loader.superview == nil) {
+            loader.coverView = UIView(frame: currentWindow.bounds)
+            loader.coverView?.backgroundColor = loader.config.foregroundColor.withAlphaComponent(loader.config.foregroundAlpha)
+            
+            currentWindow.addSubview(loader.coverView!)
+            currentWindow.addSubview(loader)
+            loader.start()
+        }
+    }
+    
+    open class func hide() {
+        
+        let loader = ProcessLoader.sharedInstance
+        NotificationCenter.default.removeObserver(loader)
+        
+        loader.stop()
+    }
+    
+    public class func setConfig(config : Config) {
+        let loader = ProcessLoader.sharedInstance
+        loader.config = config
+        loader.frame = CGRect(origin: CGPoint(x: 0, y: 0),size: CGSize(width: loader.config.size, height: loader.config.size))
+    }
+    
+    private func setup() {
+        self.alpha = 0
+        self.update()
+    }
+    
+    private func start() {
+        self.loadingView?.start()
+        
+        if (self.animated) {
+            UIView.animate(withDuration: 0.3, animations: { () -> Void in
+                self.alpha = 1
+                }, completion: { (finished) -> Void in
+                    
+            });
+        } else {
+            self.alpha = 1
+        }
+    }
+    
+    private func stop() {
+        
+        DispatchQueue.main.async {
+            if (self.animated) {
+                UIView.animate(withDuration: 0.3, animations: { () -> Void in
+                    self.alpha = 0
+                }, completion: { (finished) -> Void in
+                    self.removeFromSuperview()
+                    self.coverView?.removeFromSuperview()
+                    self.loadingView?.stop()
+                });
+            } else {
+                self.alpha = 0
+                self.removeFromSuperview()
+                self.coverView?.removeFromSuperview()
+                self.loadingView?.stop()
+            }
+        }
+    }
+    
+    private func update() {
+        self.backgroundColor = self.config.backgroundColor
+        self.layer.cornerRadius = self.config.cornerRadius
+        let loadingViewSize = self.frame.size.width - (aloaderSpinnerMarginSide * 2)
+        
+        if (self.loadingView == nil) {
+            self.loadingView = SwiftLoadingView(frame: self.frameForSpinner())
+            self.addSubview(self.loadingView!)
+        } else {
+            self.loadingView?.frame = self.frameForSpinner()
+        }
+        
+        if (self.titleLabel == nil) {
+            self.titleLabel = UILabel(frame: CGRect(origin: CGPoint(x: aloaderTitleMargin, y: aloaderSpinnerMarginTop + loadingViewSize), size: CGSize(width: self.frame.width - aloaderTitleMargin*2, height:  42.0)))
+            self.addSubview(self.titleLabel!)
+            self.titleLabel?.numberOfLines = 1
+            self.titleLabel?.textAlignment = NSTextAlignment.center
+            self.titleLabel?.adjustsFontSizeToFitWidth = true
+        } else {
+            self.titleLabel?.frame = CGRect(origin: CGPoint(x: aloaderTitleMargin, y: aloaderSpinnerMarginTop + loadingViewSize), size: CGSize(width: self.frame.width - aloaderTitleMargin*2, height: 42.0))
+        }
+        
+        self.titleLabel?.font = self.config.titleTextFont
+        self.titleLabel?.textColor = self.config.titleTextColor
+        self.titleLabel?.text = self.title
+        
+        self.titleLabel?.isHidden = self.title == nil
+    }
+    
+    func frameForSpinner() -> CGRect {
+        let loadingViewSize = self.frame.size.width - (aloaderSpinnerMarginSide * 2)
+        
+        if (self.title == nil) {
+            let yOffset = (self.frame.size.height - loadingViewSize) / 2
+            return CGRect(origin: CGPoint(x: aloaderSpinnerMarginSide, y: yOffset), size: CGSize(width: loadingViewSize, height: loadingViewSize))
+        }
+        return CGRect(origin: CGPoint(x: aloaderSpinnerMarginSide, y: aloaderSpinnerMarginTop), size: CGSize(width: loadingViewSize, height: loadingViewSize))
+    }
+    
+    override init(frame: CGRect) {
+        super.init(frame: frame)
+        self.setup()
+    }
+    
+    required public init?(coder aDecoder: NSCoder) {
+        super.init(coder: aDecoder)
+    }
+    
+    class SwiftLoadingView : UIView {
+        
+        fileprivate var speed : Int?
+        fileprivate var lineWidth : Float?
+        fileprivate var lineTintColor : UIColor?
+        fileprivate var backgroundLayer : CAShapeLayer?
+        fileprivate var isSpinning : Bool?
+        
+        var config : Config = Config() {
+            didSet {
+                self.update()
+            }
+        }
+        
+        override init(frame: CGRect) {
+            super.init(frame: frame)
+            self.setup()
+        }
+        
+        required init?(coder aDecoder: NSCoder) {
+            super.init(coder: aDecoder)
+        }
+        
+        func setup() {
+            self.backgroundColor = UIColor.clear
+            self.lineWidth = fmaxf(Float(self.frame.size.width) * 0.025, 1)
+            
+            self.backgroundLayer = CAShapeLayer()
+            self.backgroundLayer?.strokeColor = self.config.spinnerColor.cgColor
+            self.backgroundLayer?.fillColor = self.backgroundColor?.cgColor
+            self.backgroundLayer?.lineCap = CAShapeLayerLineCap.round
+            self.backgroundLayer?.lineWidth = CGFloat(self.lineWidth!)
+            self.layer.addSublayer(self.backgroundLayer!)
+        }
+        
+        func update() {
+            self.lineWidth = self.config.spinnerLineWidth
+            self.speed = self.config.speed
+            
+            self.backgroundLayer?.lineWidth = CGFloat(self.lineWidth!)
+            self.backgroundLayer?.strokeColor = self.config.spinnerColor.cgColor
+        }
+        
+        override func draw(_ rect: CGRect) {
+            self.backgroundLayer?.frame = self.bounds
+        }
+        
+        func drawBackgroundCircle(_ partial : Bool) {
+            let startAngle : CGFloat = .pi / CGFloat(2.0)
+            var endAngle : CGFloat = (2.0 * .pi) + startAngle
+            
+            let center : CGPoint = CGPoint(x: self.bounds.size.width / 2,y: self.bounds.size.height / 2)
+            let radius : CGFloat = (CGFloat(self.bounds.size.width) - CGFloat(self.lineWidth!)) / CGFloat(2.0)
+            
+            let processBackgroundPath : UIBezierPath = UIBezierPath()
+            processBackgroundPath.lineWidth = CGFloat(self.lineWidth!)
+            
+            if (partial) {
+                endAngle = (1.8 * .pi) + startAngle
+            }
+            
+            processBackgroundPath.addArc(withCenter: center, radius: radius, startAngle: startAngle, endAngle: endAngle, clockwise: true)
+            self.backgroundLayer?.path = processBackgroundPath.cgPath;
+        }
+        
+        func start() {
+            self.isSpinning? = true
+            self.drawBackgroundCircle(true)
+            
+            let rotationAnimation : CABasicAnimation = CABasicAnimation(keyPath: "transform.rotation.z")
+            rotationAnimation.toValue = NSNumber(value: .pi * 2.0)
+            rotationAnimation.duration = 1;
+            rotationAnimation.isCumulative = true;
+            rotationAnimation.repeatCount = HUGE;
+            self.backgroundLayer?.add(rotationAnimation, forKey: "rotationAnimation")
+        }
+        
+        func stop() {
+            self.drawBackgroundCircle(false)
+            self.backgroundLayer?.removeAllAnimations()
+            self.isSpinning? = false
+        }
+    }
+    
+    public struct Config {
+        public var size : CGFloat = 120.0
+        public var spinnerColor = BGColor
+        public var spinnerLineWidth :Float = 1.0
+        public var titleTextColor = UIColor.black
+        public var speed :Int = 1
+        public var titleTextFont : UIFont = UIFont.boldSystemFont(ofSize: 16.0)
+        public var backgroundColor = FontColor
+        public var foregroundColor = UIColor.clear
+        public var foregroundAlpha:CGFloat = 0.0
+        public var cornerRadius : CGFloat = 10.0
+        public init() {}
+    }
+}
+
+extension UIView {
+        
+    func roundCorners(corners: UIRectCorner, radius: CGFloat) {
+        let path = UIBezierPath(roundedRect: bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
+        let mask = CAShapeLayer()
+        mask.path = path.cgPath
+        layer.mask = mask
+    }
+    
+    func addShadow(offset: CGSize, color: UIColor, radius: CGFloat, opacity: Float) {
+        layer.masksToBounds = false
+        layer.shadowOffset = offset
+        layer.shadowColor = color.cgColor
+        layer.shadowRadius = radius
+        layer.shadowOpacity = opacity
+
+        let backgroundCGColor = backgroundColor?.cgColor
+        backgroundColor = nil
+        layer.backgroundColor =  backgroundCGColor
+    }
+    
+    
+    func addFixShadow() {
+        layer.masksToBounds = false
+        layer.shadowOffset = CGSize.init(width: 2.0, height: 2.0)
+        layer.shadowColor = ShadowColor.cgColor
+        layer.shadowRadius = 4.0
+        layer.shadowOpacity = 0.5
+
+        let backgroundCGColor = backgroundColor?.cgColor
+        backgroundColor = nil
+        layer.backgroundColor =  backgroundCGColor
+    }
+}
+
+extension Array {
+  mutating func remove(at indexes: [Int]) {
+    for index in indexes.sorted(by: >) {
+      remove(at: index)
+    }
+  }
+}
+
+extension Sequence where Element: Hashable {
+    func uniqued() -> [Element] {
+        var set = Set<Element>()
+        return filter { set.insert($0).inserted }
+    }
+}
+
+extension UIViewController {
+
+    func showAlertWithTitle( alertTitle : String , msg:String )
+    {
+        let alert = UIAlertController(title:alertTitle, message: msg, preferredStyle: .alert)
+        let action = UIAlertAction(title: "OK", style: .cancel, handler: nil)
+        alert.addAction(action)
+        self.present(alert, animated: true, completion: nil)
+        
+    }
+}
+
+
+extension UIApplication
+{
+    class func topViewController(controller: UIViewController? = UIApplication.shared.keyWindow?.rootViewController) -> UIViewController? {
+        if let navigationController = controller as? UINavigationController {
+            return topViewController(controller: navigationController.visibleViewController)
+        }
+        if let tabController = controller as? UITabBarController {
+            if let selected = tabController.selectedViewController {
+                return topViewController(controller: selected)
+            }
+        }
+        if let presented = controller?.presentedViewController {
+            return topViewController(controller: presented)
+        }
+        return controller
+    }
+
+    class func getTopViewController(base: UIViewController? = UIApplication.shared.keyWindow?.rootViewController) -> UIViewController? {
+
+        if let nav = base as? UINavigationController {
+            return getTopViewController(base: nav.visibleViewController)
+
+        } else if let tab = base as? UITabBarController, let selected = tab.selectedViewController {
+            return getTopViewController(base: selected)
+
+        } else if let presented = base?.presentedViewController {
+            return getTopViewController(base: presented)
+        }
+        return base
+    }
+}
+
+
+extension UIColor {
+            
+    public convenience init?(hexString: String) {
+        var cString: String = hexString.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines).uppercased()
+        
+        if (cString.hasPrefix("#")) {
+            if let range = cString.range(of: cString) {
+                cString = cString.substring(from: cString.index(range.lowerBound, offsetBy: 1))
+            }
+        }
+        
+        if ((cString.count) != 6) {
+            self.init(white: 0.2, alpha: 1)
+            return
+        }
+        
+        var rgbValue: UInt32 = 0
+        Scanner(string: cString).scanHexInt32(&rgbValue)
+        
+        self.init(
+            red: CGFloat((rgbValue & 0xFF0000) >> 16) / 255.0,
+            green: CGFloat((rgbValue & 0x00FF00) >> 8) / 255.0,
+            blue: CGFloat(rgbValue & 0x0000FF) / 255.0,
+            alpha: CGFloat(1.0)
+        )
+    }
+}
+
+extension UIView {
+
+    var height:CGFloat{return self.bounds.size.height}
+    var width:CGFloat{return self.bounds.size.width}
+    var x:CGFloat{return self.frame.origin.x}
+    var y:CGFloat{return self.frame.origin.y}
+
+    func MoveToXwithDuration(toX:CGFloat,duration:Double) {
+        UIView.animate(withDuration: duration) {
+            self.frame.origin.x = toX
+        }
+    }
+    
+    func MoveToYwithDuration(toY:CGFloat,duration:Double) {
+        
+        UIView.animate(withDuration: duration) {
+            self.frame.origin.y = toY
+        }
+    }
+    
+    @IBInspectable
+    var cornerRadiuss: CGFloat {
+        get {
+            return layer.cornerRadius
+        }
+        set {
+            layer.cornerRadius = newValue
+        }
+    }
+    
+    @IBInspectable
+    var borderWidth: CGFloat {
+        get
+        {
+            return layer.borderWidth
+        }
+        set
+        {
+            layer.borderWidth = newValue
+        }
+    }
+    
+    @IBInspectable
+    var borderColor: UIColor? {
+        get {
+            if let color = layer.borderColor {
+                return UIColor(cgColor: color)
+            }
+            return nil
+        }
+        set {
+            if let color = newValue {
+                layer.borderColor = color.cgColor
+            } else {
+                layer.borderColor = nil
+            }
+        }
+    }
+    
+    //FIND The parent view from UIVIEW
+    var parentViewController: UIViewController? {
+        var parentResponder: UIResponder? = self
+        while parentResponder != nil {
+            parentResponder = parentResponder!.next
+            if let viewController = parentResponder as? UIViewController {
+                return viewController
+            }
+        }
+        return nil
+    }
+    
+    func TakeScreenshot() -> UIImage {
+
+        UIGraphicsBeginImageContextWithOptions(self.bounds.size, false, UIScreen.main.scale)
+        drawHierarchy(in: self.bounds, afterScreenUpdates: true)
+        let image = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        if (image != nil)
+        {
+            return image!
+        }
+        return UIImage()
+    }
+}
+
+extension Int
+{
+    var FloatValue:CGFloat{return CGFloat(self)}
+    var DoubleValue:Double{return Double(self)}
+}
+
+
+extension UIImage{
+
+    var height:CGFloat{return self.size.height}
+    var width:CGFloat{return self.size.width}
+    
+    func resizeImage(targetSize: CGSize) -> UIImage? {
+        let size = self.size
+        
+        let widthRatio  = targetSize.width  / size.width
+        let heightRatio = targetSize.height / size.height
+        
+        // Figure out what our orientation is, and use that to form the rectangle
+        var newSize: CGSize
+        if(widthRatio > heightRatio) {
+            newSize = CGSize(width: size.width * heightRatio, height: size.height * heightRatio)
+        } else {
+            newSize = CGSize(width: size.width * widthRatio, height: size.height * widthRatio)
+        }
+        
+        // This is the rect that we've calculated out and this is what is actually used below
+        let rect = CGRect(origin: .zero, size: newSize)
+        
+        // Actually do the resizing to the rect using the ImageContext stuff
+        UIGraphicsBeginImageContextWithOptions(newSize, false, 1.0)
+        self.draw(in: rect)
+        let newImage = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        
+        return newImage
+    }
+    
+    func BlurImage(value:NSNumber) -> UIImage {
+        
+        let context = CIContext(options: [CIContextOption.useSoftwareRenderer:true])
+        let CIImage = CoreImage.CIImage(image:self)
+        let blurFilter = CIFilter(name: "CIGaussianBlur")
+        blurFilter?.setValue(CIImage, forKey: kCIInputImageKey)
+        blurFilter?.setValue(value, forKey: "inputRadius")
+        let imageRef = context.createCGImage((blurFilter?.outputImage)!, from: (CIImage?.extent)!)
+        
+        let newImage = UIImage(cgImage:imageRef!)
+        return newImage
+    }
+    
+    func fixImageOrientation()->UIImage {
+        UIGraphicsBeginImageContext(self.size)
+        self.draw(at: .zero)
+        let newImage = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        return newImage ?? self
+    }
+}
+
+extension String
+{
+    var toInteger:Int?{
+        get{
+            return Int(self)
+        }
+    }
+    
+    var toDouble:Double?{
+        get{
+            return Double(self)
+        }
+    }
+    
+    var toFloat:Float?{
+        get{
+            return Float(self)
+        }
+    }
+    
+    var toBool:Bool?{
+        get
+        {
+            if self == "1"
+            {
+                return "1" == self ?  true : false
+            }
+            return "true" == self ?  true : false
+        }
+    }
+}
+
+extension CGFloat
+{
+    var toInt:Int?{
+        get{
+            return Int(self)
+        }
+    }
+}
+
+
+struct ImageHeaderData{
+    static var PNG: [UInt8] = [0x89]
+    static var JPEG: [UInt8] = [0xFF]
+    static var GIF: [UInt8] = [0x47]
+    static var TIFF_01: [UInt8] = [0x49]
+    static var TIFF_02: [UInt8] = [0x4D]
+}
+
+enum ImageFormat{
+    case Unknown, PNG, JPEG, GIF, TIFF
+}
+
+
+extension NSData{
+    var imageFormat: ImageFormat{
+        var buffer = [UInt8](repeating: 0, count: 1)
+        self.getBytes(&buffer, range: NSRange(location: 0,length: 1))
+        if buffer == ImageHeaderData.PNG
+        {
+            return .PNG
+        } else if buffer == ImageHeaderData.JPEG
+        {
+            return .JPEG
+        } else if buffer == ImageHeaderData.GIF
+        {
+            return .GIF
+        } else if buffer == ImageHeaderData.TIFF_01 || buffer == ImageHeaderData.TIFF_02{
+            return .TIFF
+        } else{
+            return .Unknown
+        }
+    }
+}
diff --git a/Pods/FSPagerView/Sources/FSPageControl.swift b/MiniScanner/Supporting Files/Sources/FSPageControl.swift
similarity index 100%
rename from Pods/FSPagerView/Sources/FSPageControl.swift
rename to MiniScanner/Supporting Files/Sources/FSPageControl.swift
diff --git a/Pods/FSPagerView/Sources/FSPageViewLayout.swift b/MiniScanner/Supporting Files/Sources/FSPageViewLayout.swift
similarity index 100%
rename from Pods/FSPagerView/Sources/FSPageViewLayout.swift
rename to MiniScanner/Supporting Files/Sources/FSPageViewLayout.swift
diff --git a/Pods/FSPagerView/Sources/FSPageViewTransformer.swift b/MiniScanner/Supporting Files/Sources/FSPageViewTransformer.swift
similarity index 99%
rename from Pods/FSPagerView/Sources/FSPageViewTransformer.swift
rename to MiniScanner/Supporting Files/Sources/FSPageViewTransformer.swift
index 2878679..7f46771 100644
--- a/Pods/FSPagerView/Sources/FSPageViewTransformer.swift
+++ b/MiniScanner/Supporting Files/Sources/FSPageViewTransformer.swift	
@@ -26,8 +26,8 @@ open class FSPagerViewTransformer: NSObject {
     open internal(set) weak var pagerView: FSPagerView?
     open internal(set) var type: FSPagerViewTransformerType
     
-    open var minimumScale: CGFloat = 0.65
-    open var minimumAlpha: CGFloat = 0.6
+    @objc open var minimumScale: CGFloat = 0.65
+    @objc open var minimumAlpha: CGFloat = 0.6
     
     @objc
     public init(type: FSPagerViewTransformerType) {
diff --git a/Pods/FSPagerView/Sources/FSPagerCollectionView.swift b/MiniScanner/Supporting Files/Sources/FSPagerCollectionView.swift
similarity index 100%
rename from Pods/FSPagerView/Sources/FSPagerCollectionView.swift
rename to MiniScanner/Supporting Files/Sources/FSPagerCollectionView.swift
diff --git a/Pods/FSPagerView/Sources/FSPagerView.swift b/MiniScanner/Supporting Files/Sources/FSPagerView.swift
similarity index 97%
rename from Pods/FSPagerView/Sources/FSPagerView.swift
rename to MiniScanner/Supporting Files/Sources/FSPagerView.swift
index 7fb17d9..32d00cd 100644
--- a/Pods/FSPagerView/Sources/FSPagerView.swift
+++ b/MiniScanner/Supporting Files/Sources/FSPagerView.swift	
@@ -477,10 +477,24 @@ open class FSPagerView: UIView,UICollectionViewDataSource,UICollectionViewDelega
     /// Reloads all of the data for the collection view.
     @objc(reloadData)
     open func reloadData() {
-        self.collectionViewLayout.needsReprepare = true;
+        self.collectionViewLayout.needsReprepare = true
         self.collectionView.reloadData()
+        self.collectionView.layoutIfNeeded()
     }
     
+    open func getCell(at: Int) -> FSPagerViewCell {
+        if let cell = self.collectionView.cellForItem(at: IndexPath(row: at, section: 0)) as? FSPagerViewCell {
+            return cell
+        }
+        return FSPagerViewCell()
+    }
+    
+    open func reloadData(at: Int) {
+        let index = IndexPath(row: at, section: 0)
+        self.collectionView.reloadItems(at: [index])
+    }
+    
+    
     /// Selects the item at the specified index and optionally scrolls it into view.
     ///
     /// - Parameters:
@@ -549,6 +563,11 @@ open class FSPagerView: UIView,UICollectionViewDataSource,UICollectionViewDelega
         return self.collectionView.cellForItem(at: indexPath) as? FSPagerViewCell
     }
     
+    open func cellForItemat(index: Int) -> FSPagerViewCell? {
+        let indexPath = IndexPath(row: index, section: 0)
+        return self.collectionView.cellForItem(at: indexPath) as? FSPagerViewCell
+    }
+    
     // MARK: - Private functions
     
     fileprivate func commonInit() {
diff --git a/Pods/FSPagerView/Sources/FSPagerViewCell.swift b/MiniScanner/Supporting Files/Sources/FSPagerViewCell.swift
similarity index 67%
rename from Pods/FSPagerView/Sources/FSPagerViewCell.swift
rename to MiniScanner/Supporting Files/Sources/FSPagerViewCell.swift
index 832de15..9b4b55c 100644
--- a/Pods/FSPagerView/Sources/FSPagerViewCell.swift
+++ b/MiniScanner/Supporting Files/Sources/FSPagerViewCell.swift	
@@ -17,6 +17,32 @@ open class FSPagerViewCell: UICollectionViewCell {
     
     open var delegate: FSPagerViewCellDelegate?
     open var index: Int?
+    open var sign: UIImage! {
+        didSet {
+            loadCaptureSignature(sign ?? UIImage())
+        }
+    }
+    var session: MultiPageScanSession?
+    
+    private var selectedStickerView:StickerView?
+    
+    var selectedStickerView1:StickerView? {
+        get {
+            return selectedStickerView
+        }
+        set {
+            if selectedStickerView != newValue {
+                if let selectedStickerView = selectedStickerView {
+                    selectedStickerView.showEditing = false
+                }
+                selectedStickerView = newValue
+            }
+            if let selectedStickerView = selectedStickerView {
+                selectedStickerView.showEditing = true
+                selectedStickerView.superview?.bringSubviewToFront(selectedStickerView)
+            }
+        }
+    }
     
     /// Returns the label used for the main textual content of the pager view cell.
     @objc
@@ -108,6 +134,8 @@ open class FSPagerViewCell: UICollectionViewCell {
         }
     }
     
+
+    
     open override var isSelected: Bool {
         set {
             super.isSelected = newValue
@@ -188,4 +216,81 @@ open class FSPagerViewCell: UICollectionViewCell {
         }
     }
     
+    func grayscale(image: UIImage) -> UIImage?
+    {
+        let context = CIContext(options: nil)
+        if let filter = CIFilter(name: "CIPhotoEffectNoir") {
+            filter.setValue(CIImage(image: image), forKey: kCIInputImageKey)
+            if let output = filter.outputImage {
+                if let cgImage = context.createCGImage(output, from: output.extent) {
+                    return UIImage(cgImage: cgImage)
+                }
+            }
+        }
+        return nil
+    }
+    
+    func loadCaptureSignature(_ cropImage : UIImage)
+    {
+        let grayImg = grayscale(image: cropImage)
+        let newImage = grayImg
+        
+        let imageSize = CGSize(width: 125, height: 125)
+        
+        let testImage = UIImageView()
+        testImage.frame.size = imageSize
+        testImage.contentMode = .scaleAspectFit
+        testImage.image = newImage
+        
+        let stickerView = StickerView.init(contentView: testImage)
+        stickerView.center = contentView.center
+        stickerView.delegate = self
+        if let exitIcon = UIImage(named: "close"),
+           let rotateIcon =  UIImage(named: "resize") {
+            stickerView.setImage(exitIcon, forHandler: StickerViewHandler.close)
+            stickerView.setImage(rotateIcon, forHandler: StickerViewHandler.rotate)
+        }
+        
+        stickerView.showEditing = false
+        
+        self.selectedStickerView1 = stickerView
+        if let sign = self.selectedStickerView1 {
+                contentView.addSubview(sign)
+        }
+    }
+}
+extension FSPagerViewCell: StickerViewDelegate {
+    func stickerViewDidBeginMoving(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidChangeMoving(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidEndMoving(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidBeginRotating(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidChangeRotating(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidEndRotating(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidClose(_ stickerView: StickerView) {
+        return
+    }
+    
+    func stickerViewDidTap(_ stickerView: StickerView) {
+        selectedStickerView1?.showEditing = !(selectedStickerView1?.showEditing ?? false)
+    }
+    
+    
 }
diff --git a/Pods/FSPagerView/Sources/FSPagerViewLayoutAttributes.swift b/MiniScanner/Supporting Files/Sources/FSPagerViewLayoutAttributes.swift
similarity index 100%
rename from Pods/FSPagerView/Sources/FSPagerViewLayoutAttributes.swift
rename to MiniScanner/Supporting Files/Sources/FSPagerViewLayoutAttributes.swift
diff --git a/Pods/FSPagerView/Sources/FSPagerViewObjcCompat.h b/MiniScanner/Supporting Files/Sources/FSPagerViewObjcCompat.h
similarity index 100%
rename from Pods/FSPagerView/Sources/FSPagerViewObjcCompat.h
rename to MiniScanner/Supporting Files/Sources/FSPagerViewObjcCompat.h
diff --git a/Pods/FSPagerView/Sources/FSPagerViewObjcCompat.m b/MiniScanner/Supporting Files/Sources/FSPagerViewObjcCompat.m
similarity index 100%
rename from Pods/FSPagerView/Sources/FSPagerViewObjcCompat.m
rename to MiniScanner/Supporting Files/Sources/FSPagerViewObjcCompat.m
diff --git a/Podfile b/Podfile
index 754b27a..64a9519 100644
--- a/Podfile
+++ b/Podfile
@@ -10,7 +10,6 @@ target 'MiniScanner' do
   pod 'IQKeyboardManagerSwift'
   pod 'ImagePicker'
   pod 'NBBottomSheet'
-  pod 'FSPagerView'
   pod 'EPSignature'
 
 
diff --git a/Podfile.lock b/Podfile.lock
index d3193b9..6649453 100644
--- a/Podfile.lock
+++ b/Podfile.lock
@@ -1,6 +1,5 @@
 PODS:
   - EPSignature (1.0.6)
-  - FSPagerView (0.8.3)
   - ImagePicker (3.2.0)
   - IQKeyboardManagerSwift (7.0.3)
   - LanguageManager-iOS (1.2.7)
@@ -8,7 +7,6 @@ PODS:
 
 DEPENDENCIES:
   - EPSignature
-  - FSPagerView
   - ImagePicker
   - IQKeyboardManagerSwift
   - LanguageManager-iOS
@@ -17,7 +15,6 @@ DEPENDENCIES:
 SPEC REPOS:
   trunk:
     - EPSignature
-    - FSPagerView
     - ImagePicker
     - IQKeyboardManagerSwift
     - LanguageManager-iOS
@@ -25,12 +22,11 @@ SPEC REPOS:
 
 SPEC CHECKSUMS:
   EPSignature: 3fa3b520c80717b98019723faa60a41794b03fbc
-  FSPagerView: 670405b2f18e2a87fa37f20b00de783e562c25a8
   ImagePicker: 1d950bbb2422548ed58791b4ec7f42fe42920511
   IQKeyboardManagerSwift: f9c5dc36cba16ddd2e51fa7d51c34a2e083029b5
   LanguageManager-iOS: 6b2dbb3793445827114708f0759b76e96932d7c8
   NBBottomSheet: aa7a52809b2d7b193f733247b8ce391a59904372
 
-PODFILE CHECKSUM: 23ea4bb572ed7de088aee5894c2fe160357b3d96
+PODFILE CHECKSUM: 55e1d258d6921724b2dcc8fa7966f2e028ae9600
 
 COCOAPODS: 1.14.3
diff --git a/Pods/FSPagerView/README-OBJECTIVE-C.md b/Pods/FSPagerView/README-OBJECTIVE-C.md
deleted file mode 100644
index ee4cbd7..0000000
--- a/Pods/FSPagerView/README-OBJECTIVE-C.md
+++ /dev/null
@@ -1,416 +0,0 @@
-![fspagerview](https://cloud.githubusercontent.com/assets/5186464/24086370/45e7e8dc-0d49-11e7-86aa-139354fe00c5.jpg)
-
-[![Languages](https://img.shields.io/badge/language-swift%204.2%20|%20objc-FF69B4.svg?style=plastic)](#) <br/>
-[![Platform](https://img.shields.io/badge/platform-iOS%20|%20tvOS-blue.svg?style=plastic)](http://cocoadocs.org/docsets/FSPagerView) 
-[![Version](https://img.shields.io/cocoapods/v/FSPagerView.svg?style=flat)](http://cocoadocs.org/docsets/FSPagerView)
-[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=plastic)](https://github.com/Carthage/Carthage)
-[![SPM compatible](https://img.shields.io/badge/SPM-compatible-FF9966.svg?style=plastic)](https://swift.org/package-manager/)
-
-|[<b>SWIFT</b>](https://github.com/WenchaoD/FSPagerView/blob/master/README.md)|<b>OBJECTIVE-C</b>|
-|---|---|
-
-**FSPagerView** is an elegant Screen Slide Library implemented primarily with ***UICollectionView***. It is extremely helpful for making Banner、Product Show、Welcome/Guide Pages、Screen/ViewController Sliders.
-
-## Features
-*  ***Infinite*** scrolling.
-*  ***Automatic*** Sliding.
-*  Support ***Horizontal*** and ***Vertical*** paging.
-*  Fully customizable item, with predefined banner-style item.
-*  Fully customizable ***page control***.
-*  Rich build-in 3D transformers.
-*  ***Simple*** and ***Delightful*** api usage.
-*  Support **SWIFT** and **OBJECTIVE-C**.
-
-## Demo1 Banner
-
-| Banner |
-|---|
-|![9](https://cloud.githubusercontent.com/assets/5186464/22688057/9003d880-ed65-11e6-882e-4587c97c8878.gif) |
-
-### automaticSlidingInterval
-The time interval of automatic sliding. 0 means disabling automatic sliding. Default is 0.
-
-**e.g.**
-
-```objc
-pagerView.automaticSlidingInterval = 3.0;
-```
-
-
-### isInfinite
-A boolean value indicates whether the pager view has infinite number of items. Default is false.
-
-**e.g.**
-
-```objc
-pagerView.isInfinite = YES;
-```
-
-### decelerationDistance
-An unsigned integer value that determines the paging distance of the pager view, which indicates the number of passing items during the deceleration. When the value of this property is FSPagerViewAutomaticDistance, the actual 'distance' is automatically calculated according to the scrolling speed of the pager view. Default is 1.
-
-**e.g.**
-
-```objc
-pagerView.decelerationDistance = 2
-```
-
-### itemSize
-The item size of the pager view. When the value of this property is FSPagerViewAutomaticSize, the items fill the entire visible area of the pager view. Default is FSPagerViewAutomaticSize.
-
-
-**e.g.**
-
-```objc
-pagerView.itemSize = CGSizeMake(200, 180);
-```
-
-### interitemSpacing
-The spacing to use between items in the pager view. Default is 0.
-
-**e.g.**
-
-```objc
-pagerView.interitemSpacing = 10;
-```
-
-## Demo2 - Transformers
-
-|Cross Fading|
-|---|
-| ![1](https://cloud.githubusercontent.com/assets/5186464/22686429/1983b97e-ed5f-11e6-9a32-44c1830df7ac.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeCrossFading];
-```
----
-
-
-
-|Zoom Out|
-|---|
-| ![2](https://cloud.githubusercontent.com/assets/5186464/22686426/19830862-ed5f-11e6-90be-8fb1319cd125.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeZoomOut];
-```
----
-
-
-|Depth|
-|---|
-| ![3](https://cloud.githubusercontent.com/assets/5186464/22686430/19856c1a-ed5f-11e6-8187-9e4395b7597c.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeDepth];
-```
----
-
-
-|Linear|
-|---|
-| ![4](https://cloud.githubusercontent.com/assets/5186464/22686428/198368c0-ed5f-11e6-95df-cfcfe9bc3f29.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeLinear];
-```
----
-
-
-|Overlap|
-|---|
-| ![5](https://cloud.githubusercontent.com/assets/5186464/22686431/198905aa-ed5f-11e6-9312-ec371c8c4e44.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeOverlap];
-```
----
-
-
-|Ferris Wheel|
-|------|
-| ![6](https://cloud.githubusercontent.com/assets/5186464/22686427/19831c08-ed5f-11e6-8bdb-30e762a85d4b.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeFerrisWheel];
-```
----
-
-
-|Inverted Ferris Wheel|
-|------|
-| ![7](https://cloud.githubusercontent.com/assets/5186464/22686433/19b669a0-ed5f-11e6-8bf0-dc23edf8101f.gif) |
-
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeInvertedFerrisWheel];
-```
----
-
-
-|Cover Flow|
-|------|
-| ![8](https://cloud.githubusercontent.com/assets/5186464/22686432/19b567f8-ed5f-11e6-885d-bd660c98b507.gif) |
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeCoverFlow];
-```
----
-
-|Cubic|
-|------|
-| ![9](https://cloud.githubusercontent.com/assets/5186464/23461598/8875080c-fec5-11e6-8db6-6d8864acfcc1.gif) |
-```objc
-pagerView.transformer = [[FSPagerViewTransformer alloc] initWithType:FSPagerViewTransformerTypeCubic];
-```
----
-
-
-> Customize your own transformer by subclassing`FSPagerViewTransformer.`
-
-
-## Demo3 Page Control
-|Page Control|
-|---|
-|![10](https://cloud.githubusercontent.com/assets/5186464/22689720/2baabdb0-ed6d-11e6-8287-ef7a2c0f64bc.gif)
-|
-
-### numberOfPages
-The number of page indicators of the page control. Default is 0.
-
-**e.g.**
-
-```objc
-pageControl.numberOfPages = 5;
-```
-
-### currentPage
-The current page, highlighted by the page control. Default is 0.
-
-**e.g.**
-
-```objc
-pageControl.currentPage = 1;
-```
-### contentHorizontalAlignment
-The horizontal alignment of content within the control’s bounds. Default is center.
-
-**e.g.**
-
-```objc
-pageControl.contentHorizontalAlignment = UIControlContentHorizontalAlignmentRight;
-```
-
-### setStrokeColor:forState:
-Sets the stroke color for page indicators to use for the specified state. (selected/normal).
-
-**e.g.**
-
-```objc
-[pageControl setStrokeColor:[UIColor greenColor] forState:UIControlStateNormal];
-[pageControl setStrokeColor:[UIColor yellowColor] forState:UIControlStateSelected];
-```
-
-
-### setFillColor:forState:
-Sets the fill color for page indicators to use for the specified state. (selected/normal).
-
-**e.g.**
-
-```objc
-[pageControl setFillColor:[UIColor grayColor] forState:UIControlStateNormal];
-[pageControl setFillColor:[UIColor whiteColor] forState:UIControlStateSelected];
-```
-
-### setImage:forState:
-Sets the image for page indicators to use for the specified state. (selected/normal).
-
-**e.g.**
-
-```objc
-[pageControl setImage:[UIImage imageNamed:@"image1"] forState:UIControlStateNormal];
-[pageControl setImage:[UIImage imageNamed:@"image2"] forState:UIControlStateSelected];
-```
-
-### setPath:forState:
-Sets the path for page indicators to use for the specified state. (selected/normal).
-
-**e.g.**
-
-```objc
-[pageControl setPath:[UIBezierPath bezierPathWithRect:CGRectMake(0, 0, 8, 8)] forState:UIControlStateNormal];
-[pageControl setPath: [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, 8, 8)]  forState:UIControlStateSelected];
-```
-
-## Installation
-* Manually
-* Cocoapods
-* Carthage
-
-### Manually
-1. ***[Download](#)*** the source code.
-2. Extract the zip file, simply drag folder ***Sources*** into your project.
-3. Make sure ***Copy items if needed*** is checked.
-
-### Cocoapods
-```ruby
-use_frameworks!
-target '<Your Target Name>' do
-    pod 'FSPagerView'
-end
-```
-
-### Carthage
-```ruby
-github "WenchaoD/FSPagerView"
-```
-
-## Tutorial
-* [Getting started](#getting_started)
-* [Implement FSPagerViewDataSource](#implement_fspagerviewdatasource)
-* [Implement FSPagerViewDelegate](#implement_fspagerviewdelegate)
-
-### 1. Getting started <a id='getting_started'></a>
-
-* Getting started with code
-
-```objc
-// Create a pager view
-FSPagerView *pagerView = [[FSPagerView alloc] initWithFrame:frame1];
-pagerView.dataSource = self;
-pagerView.delegate = self;
-[pagerView registerClass:[FSPagerViewCell class] forCellWithReuseIdentifier:@"cell"];
-[self.view addSubview:pagerView];
-// Create a page control
-FSPageControl *pageControl = [[FSPageControl alloc] initWithFrame:frame2];
-[self.view addSubview:pageControl];
-```
-
-* Getting started with Interface Builder <br/>
-1、Simply drag **UIView** instance into your View Controller, Change the `Custom Class` to `FSPagerView`. (Or `FSPageControl`) <br/>
-2、Link the `dataSource` and `delegate` property of **FSPagerView** to your View Controller. <br/>
-3、Register a cell class.
-
-```objc
-- (void)viewDidLoad 
-{
-	[super viewDidLoad];
-	[self.pagerView registerClass:[FSPagerViewCell class] forCellWithReuseIdentifier:@"cell"];
-}
-```
-
-
-### 2. Implement FSPagerViewDataSource <a id='implement_fspagerviewdatasource'></a>
-```objc
-- (NSInteger)numberOfItemsInpagerView:(FSPagerView *)pagerView
-{
-    return numberOfItems;
-}
-    
-- (FSPagerViewCell *)pagerView:(FSPagerView *)pagerView cellForItemAtIndex:(NSInteger)index
-{
-    FSPagerViewCell *cell = [pagerView dequeueReusableCellWithReuseIdentifier:@"cell" atIndex:index];
-    cell.imageView.image = ...;
-    cell.textLabel.text = ...;
-    return cell;
-}
-```
-
-### 3. Implement FSPagerViewDelegate <a id='implement_fspagerviewdelegate'></a>
-
-```objc
-- (BOOL)pagerView:(FSPagerView *)pagerView shouldHighlightItemAtIndex:(NSInteger)index;
-```
-> Asks the delegate if the item should be highlighted during tracking.
-
----
-
-```objc
-- (void)pagerView:(FSPagerView *)pagerView didHighlightItemAtIndex:(NSInteger)index;
-```
-> Tells the delegate that the item at the specified index was highlighted.
-    
----
-    
-```objc
-- (BOOL)pagerView:(FSPagerView *)pagerView shouldSelectItemAtIndex:(NSInteger)index;
-```
-> Asks the delegate if the specified item should be selected.
-    
----
-    
-```objc
-- (void)pagerView:(FSPagerView *)pagerView didSelectItemAtIndex:(NSInteger)index;
-```
-> Tells the delegate that the item at the specified index was selected.
-    
----
-    
-```objc
-- (void)pagerView:(FSPagerView *)pagerView willDisplayCell:(FSPagerViewCell *)cell forItemAtIndex:(NSInteger)index;
-```
-> Tells the delegate that the specified cell is about to be displayed in the pager view.
-    
----
-    
-```objc
-- (void)pagerView:(FSPagerView *)pagerView didEndDisplayingCell:(FSPagerViewCell *)cell forItemAtIndex:(NSInteger)index;
-```
-> Tells the delegate that the specified cell was removed from the pager view.
-    
----
-    
-```objc
-- (void)pagerViewWillBeginDragging:(FSPagerView *)pagerView;
-```
-> Tells the delegate when the pager view is about to start scrolling the content.
-    
----
-    
-```objc
-- (void)pagerViewWillEndDragging:(FSPagerView *) pagerView targetIndex:(NSInteger)index:
-```
-> Tells the delegate when the user finishes scrolling the content.
-    
----
-    
-```objc
-- (void)pagerViewDidScroll:(FSPagerView *)pagerView;
-```
-> Tells the delegate when the user scrolls the content view within the receiver.
-    
----
-    
-```objc
-- (void)pagerViewDidEndScrollAnimation:(FSPagerView *)pagerView;
-```
-> Tells the delegate when a scrolling animation in the pager view concludes.
-    
----
-    
-```objc
-- (void)pagerViewDidEndDecelerating:(FSPagerView *)pagerView;
-```
-> Tells the delegate that the pager view has ended decelerating the scrolling movement.
-
----
-
-## <a id="support"></a>Support this repo
-* ***Star*** this repo <a href="#"><img style="margin-bottom:-12px" width="72" alt="star" src="https://cloud.githubusercontent.com/assets/5186464/15383105/fcf9cdf0-1dc2-11e6-88db-bf221042a584.png"></a>
-<br/>
-
-* Buy me a ***Coffee***. ☕️ 
-   
-   <a href="https://www.paypal.me/WenchaoD" target="_blank"><img src="https://www.paypalobjects.com/webstatic/i/logo/rebrand/ppcom.svg" width="100" height="40" style="margin-bottom:-15px;"></a> &nbsp;&nbsp;|&nbsp;&nbsp;
-	<a href="https://user-images.githubusercontent.com/5186464/45949944-46960480-c030-11e8-9e90-30b015698cf6.png" target="_blank"><img src="http://a1.mzstatic.com/us/r30/Purple49/v4/50/16/b3/5016b341-39c1-b47b-2994-d7e23823baed/icon175x175.png" width="40" height="40" style="margin-bottom:-15px;-webkit-border-radius:10px;border:1px solid rgba(30, 154, 236, 1);"></a> &nbsp;&nbsp;|&nbsp;&nbsp;
-	<a href="https://cloud.githubusercontent.com/assets/5186464/15096872/b06f3a3a-153c-11e6-89f9-2e9c7b88ef42.png" target="_blank"><img src="http://a4.mzstatic.com/us/r30/Purple49/v4/23/31/14/233114f8-2e8d-7b63-8dc5-85d29893061e/icon175x175.jpeg" height="40" width="40" style="margin-bottom:-15px; -webkit-border-radius: 10px;border:1px solid rgba(43, 177, 0, 1)"></a>
-
---- 
-	
-## Author
-* ***微博:[@WenchaoD](http://weibo.com/WenchaoD)***
-* ***Twitter: [@WenchaoD](https://twitter.com/WenchaoD)***
-* Other repos:
-	* ***[FSCalendar](https://github.com/WenchaoD/FSCalendar)*** 
-
----
-
-# [Documentation](http://cocoadocs.org/docsets/FSPagerView)
\ No newline at end of file
diff --git a/Pods/Manifest.lock b/Pods/Manifest.lock
index d3193b9..6649453 100644
--- a/Pods/Manifest.lock
+++ b/Pods/Manifest.lock
@@ -1,6 +1,5 @@
 PODS:
   - EPSignature (1.0.6)
-  - FSPagerView (0.8.3)
   - ImagePicker (3.2.0)
   - IQKeyboardManagerSwift (7.0.3)
   - LanguageManager-iOS (1.2.7)
@@ -8,7 +7,6 @@ PODS:
 
 DEPENDENCIES:
   - EPSignature
-  - FSPagerView
   - ImagePicker
   - IQKeyboardManagerSwift
   - LanguageManager-iOS
@@ -17,7 +15,6 @@ DEPENDENCIES:
 SPEC REPOS:
   trunk:
     - EPSignature
-    - FSPagerView
     - ImagePicker
     - IQKeyboardManagerSwift
     - LanguageManager-iOS
@@ -25,12 +22,11 @@ SPEC REPOS:
 
 SPEC CHECKSUMS:
   EPSignature: 3fa3b520c80717b98019723faa60a41794b03fbc
-  FSPagerView: 670405b2f18e2a87fa37f20b00de783e562c25a8
   ImagePicker: 1d950bbb2422548ed58791b4ec7f42fe42920511
   IQKeyboardManagerSwift: f9c5dc36cba16ddd2e51fa7d51c34a2e083029b5
   LanguageManager-iOS: 6b2dbb3793445827114708f0759b76e96932d7c8
   NBBottomSheet: aa7a52809b2d7b193f733247b8ce391a59904372
 
-PODFILE CHECKSUM: 23ea4bb572ed7de088aee5894c2fe160357b3d96
+PODFILE CHECKSUM: 55e1d258d6921724b2dcc8fa7966f2e028ae9600
 
 COCOAPODS: 1.14.3
diff --git a/Pods/Pods.xcodeproj/project.pbxproj b/Pods/Pods.xcodeproj/project.pbxproj
index 47cd7ab..a55087a 100644
--- a/Pods/Pods.xcodeproj/project.pbxproj
+++ b/Pods/Pods.xcodeproj/project.pbxproj
@@ -7,368 +7,338 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
-		014ADEB344680FBC5C6D76E16B255CAC /* Pods-MiniScanner-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 123ADF4A6B2F1DEBA5B7482D4983B685 /* Pods-MiniScanner-dummy.m */; };
-		028F3BD1F76536182769D7FA2BB26457 /* ImageStack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47978E33AA1FE786BB675EA3F66DE381 /* ImageStack.swift */; };
-		047539EBA967BC7505B53F36E1A2836A /* focusIcon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = A2A1F3E9AD6E574C81576EFC109E4F56 /* focusIcon@3x.png */; };
-		0615219BFD2EBBE27FF41C2C8816791E /* IQTextFieldViewInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 309F127A50B023B6041C44942C9079DE /* IQTextFieldViewInfo.swift */; };
-		0718CCD0E19136B8DB2A7D4C6585E3ED /* LanguageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8434491D5623794FFD75623AC5720E3C /* LanguageManager.swift */; };
-		08822D4E49DB8618D27BAEDED7911733 /* IQKeyboardManager+Internal.swift in Sources */ = {isa = PBXBuildFile; fileRef = A230ED28736A611DEEC851620E6444DE /* IQKeyboardManager+Internal.swift */; };
-		08C234F2981017EEF271582022F339F3 /* IQUIView+IQKeyboardToolbarDeprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47A7457CB008481373FBC626968AD770 /* IQUIView+IQKeyboardToolbarDeprecated.swift */; };
-		0A4DB572ACD97EC492C4E93A0FFB2E47 /* IQTextFieldViewListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DB66972AE146B779F56CFD49B324220 /* IQTextFieldViewListener.swift */; };
-		0C99571A708CA382A984BDEDA5AE25D5 /* selectedImageGallery@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = C6214DC5E72470BE3105210D7465B90A /* selectedImageGallery@3x.png */; };
-		1021FCA162D086E55DE8D6926F8DA215 /* ImageGalleryViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 689EF9768E3E18B833DD776EAD893408 /* ImageGalleryViewCell.swift */; };
-		103FE4EEFF1BE8BAD0FA047987AFED74 /* IQUIView+Hierarchy.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE1348270A5A7F3FDEFAC32D8E89686A /* IQUIView+Hierarchy.swift */; };
-		10D1A87F45AFB52D2B34D9ABA1A86105 /* UIImageView+Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5761D7B5C5A856ED4D8A03F284C8771F /* UIImageView+Direction.swift */; };
-		14063E1AF70EDDC9F33C8E08DCA0BEF3 /* IQPreviousNextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE7235727A466A9B7BF8342CC42C4B91 /* IQPreviousNextView.swift */; };
-		14638F89550DD287F122C4C8968289F4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		154362EFC8EC0F61F54E24B09266DEB1 /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7136D2DF9E35BE04AE50612BF8809136 /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift */; };
-		178BF9CAADACBF4E8FE49574A848C12A /* NBBottomSheetPresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C5B4DA5F338896C639DBDA08FCCC486 /* NBBottomSheetPresentationController.swift */; };
-		1948830F0F143F2897657B9D75895EFA /* VideoInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA1D8FBFBA4E4BE6EC7D55255DE3EFBC /* VideoInfoView.swift */; };
-		1A7787DB0275CF4A44CA312DD3BA5D33 /* EPSignatureViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 2D93C4B3BEDE27E7A936E76984B03C35 /* EPSignatureViewController.xib */; };
+		028F3BD1F76536182769D7FA2BB26457 /* ImageStack.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7EA56260324998EC43B70CD2092E1FB /* ImageStack.swift */; };
+		0615219BFD2EBBE27FF41C2C8816791E /* IQTextFieldViewInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = E34B4735C7461EBF9AEEC896DEB27C33 /* IQTextFieldViewInfo.swift */; };
+		0718CCD0E19136B8DB2A7D4C6585E3ED /* LanguageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8292FC683D8C22C77C5F637AF2836FA /* LanguageManager.swift */; };
+		08822D4E49DB8618D27BAEDED7911733 /* IQKeyboardManager+Internal.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB94CC5B3F453AA0801700167152FCA1 /* IQKeyboardManager+Internal.swift */; };
+		08C234F2981017EEF271582022F339F3 /* IQUIView+IQKeyboardToolbarDeprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E6FDE31134B7541747D1E89E52E225A /* IQUIView+IQKeyboardToolbarDeprecated.swift */; };
+		09F4E3A6DED312368CE8E037A171BD70 /* selectedImageGallery@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 081BAFFE15D81F33E77489E60A036BE7 /* selectedImageGallery@3x.png */; };
+		0A4DB572ACD97EC492C4E93A0FFB2E47 /* IQTextFieldViewListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F6826627BFA6A69002524426F8CFFB7 /* IQTextFieldViewListener.swift */; };
+		1021FCA162D086E55DE8D6926F8DA215 /* ImageGalleryViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2AC4CEA5F2332B5B286CA6B73D2643EF /* ImageGalleryViewCell.swift */; };
+		103FE4EEFF1BE8BAD0FA047987AFED74 /* IQUIView+Hierarchy.swift in Sources */ = {isa = PBXBuildFile; fileRef = D55EBF017F6625B593286F47CFEB1FA3 /* IQUIView+Hierarchy.swift */; };
+		10D1A87F45AFB52D2B34D9ABA1A86105 /* UIImageView+Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7927C464AC094A95C8B864DF6A0B1D06 /* UIImageView+Direction.swift */; };
+		14063E1AF70EDDC9F33C8E08DCA0BEF3 /* IQPreviousNextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 187B8EDBE8957C190B1EB7C8F949ED80 /* IQPreviousNextView.swift */; };
+		154362EFC8EC0F61F54E24B09266DEB1 /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F0A5164AA0CCC729C8EA5166760BA9E /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift */; };
+		178BF9CAADACBF4E8FE49574A848C12A /* NBBottomSheetPresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D47766C4492BAF84E069DF6E3DD758 /* NBBottomSheetPresentationController.swift */; };
+		1948830F0F143F2897657B9D75895EFA /* VideoInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02E924FDDE7F7B51AEC552C94D9C9AD6 /* VideoInfoView.swift */; };
+		19BA03143F6B7CCC7F6D3A5000333763 /* ON@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 7488E11EF92CBFCB3965EA6F8020E701 /* ON@3x.png */; };
+		1A7787DB0275CF4A44CA312DD3BA5D33 /* EPSignatureViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 56C1C453B74E770D4AC56A090051BCF5 /* EPSignatureViewController.xib */; };
+		1B1937CEB4E9DF65238702771B4232B4 /* video@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 45C50C21EF30A0239628BA0E14464BCE /* video@3x.png */; };
 		1BBD42E84E62842B6EA186CEF24BBF45 /* ImagePicker.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 97AA160F23F0CBEDDAF212103E762FC7 /* ImagePicker.bundle */; };
-		1BBED45FEDD4AF437A762909E4937019 /* CameraMan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B78794BA632342FFC447557E4671B16 /* CameraMan.swift */; };
-		1C3881B0113D3219398154E16AA4413C /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6C332B0108C87436290C293E043023A /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift */; };
-		1D5090C638CFC6ABA603A73B2D890CC7 /* Helper.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB2BF5C6F33D3DA91B2EB11B23EEE3FE /* Helper.swift */; };
+		1BBED45FEDD4AF437A762909E4937019 /* CameraMan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 297D96869095AA06F276F3DA5DD575B7 /* CameraMan.swift */; };
+		1C3881B0113D3219398154E16AA4413C /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5EDE1D4720CA7A048A32667F968ED10 /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift */; };
+		1D5090C638CFC6ABA603A73B2D890CC7 /* Helper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8016BAC4075F40E70BE2133125B01BF5 /* Helper.swift */; };
+		1ECC8F5583B658DA5BC4F8D29132213F /* Pods-MiniScanner-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 123ADF4A6B2F1DEBA5B7482D4983B685 /* Pods-MiniScanner-dummy.m */; };
 		23D11E770DF137CBF802A30E2B19C054 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		24C699F9653980B77F44634EF44641C1 /* IQKeyboardInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69FC816770553B761090561AE8707674 /* IQKeyboardInfo.swift */; };
-		267C4C6C182CC853990C78F13C5318CE /* TopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF2B9AD02F97A175585504BA5B7F448 /* TopView.swift */; };
-		29C03EAF5C27DC851118AEC88ABEC151 /* FSPagerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3703BDC76205E7D102F2BF32B3D8ACC /* FSPagerView.swift */; };
-		2E4A914423BA1B263C96C3BBC43E2245 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1C63F26DA7ECAFB44B0A5DD0BC0E2F89 /* UIKit.framework */; };
-		2F7AE7DED85C12F45995DA2DF033641C /* ON@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = BC0F20E077483A5E6339C4C6304E6507 /* ON@3x.png */; };
-		3402A26F7BBA359E410BEB33C8B74254 /* NBBottomSheetTransitioningDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1BB9A00426C7107F694592F19527BE69 /* NBBottomSheetTransitioningDelegate.swift */; };
-		3452528F3B9B79AD67D45FEA174F71E4 /* IQUICollectionView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4C85B9AE116359EBFD1959406B32999 /* IQUICollectionView+Additions.swift */; };
-		34BDB069A96125DAF2FEF6FF93A3F6AF /* IQToolbarPlaceholderConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92CEF8FFA7885B7EC96C4120D507A08F /* IQToolbarPlaceholderConfiguration.swift */; };
-		35699581E68E1E6F640C681EEDEEE2B6 /* EPSignature-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A7BA040D977C503D2A8C2D9BF404E21C /* EPSignature-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		3573FA382FBE08F99039CED491DB9FF0 /* IQKeyboardManagerSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C94B5C4512123F377D23B93F1FA23097 /* IQKeyboardManagerSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		3806469B2739BBFA16083760004ED9B4 /* ImageGalleryViewDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = E62A4882567E433682E9D7925C2BDA73 /* ImageGalleryViewDataSource.swift */; };
-		38CBE3196BDD577B5E72BC65508A77F8 /* IQTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B5D88BFE14997FA9B22FA4A4B8CD6DA /* IQTextView.swift */; };
-		38FD95DCC2D02D5B78BE9AEE48DBDF25 /* ConstraintsSetup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E44A8883A35E6A01365B1C682A1164D /* ConstraintsSetup.swift */; };
+		24C699F9653980B77F44634EF44641C1 /* IQKeyboardInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F3317C2A83E43FF75DFCFD3FAEB3669 /* IQKeyboardInfo.swift */; };
+		267C4C6C182CC853990C78F13C5318CE /* TopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B71FD6B5A8AC626259BE6B97226F81FB /* TopView.swift */; };
+		28658B67B33D0AF1A396F70CF4C416FD /* cameraIcon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 843CD6046BA80BCDF11AE4FAC807D29B /* cameraIcon@3x.png */; };
+		3402A26F7BBA359E410BEB33C8B74254 /* NBBottomSheetTransitioningDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7F7A4EA7A5659C2F78D04CC218E1440 /* NBBottomSheetTransitioningDelegate.swift */; };
+		3452528F3B9B79AD67D45FEA174F71E4 /* IQUICollectionView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92470A870676C63A27509F38301D521C /* IQUICollectionView+Additions.swift */; };
+		34BDB069A96125DAF2FEF6FF93A3F6AF /* IQToolbarPlaceholderConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3B5F550C3AA900D117E22291DE5D67C /* IQToolbarPlaceholderConfiguration.swift */; };
+		35699581E68E1E6F640C681EEDEEE2B6 /* EPSignature-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A36BA6D882CE68172CAE63D99BCB5BA /* EPSignature-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		3573FA382FBE08F99039CED491DB9FF0 /* IQKeyboardManagerSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8147290C4A326DADC3F305533BD64023 /* IQKeyboardManagerSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		3806469B2739BBFA16083760004ED9B4 /* ImageGalleryViewDataSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5054DCBC2013F1894FA0EE7D6D99005 /* ImageGalleryViewDataSource.swift */; };
+		38CBE3196BDD577B5E72BC65508A77F8 /* IQTextView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A6291B42FA169A1C1919CB49B0B8509 /* IQTextView.swift */; };
+		38FD95DCC2D02D5B78BE9AEE48DBDF25 /* ConstraintsSetup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 290501CF6F70FA1835207284AF05BEE5 /* ConstraintsSetup.swift */; };
 		3CCAA73182C09F77A88AFFA24E96DBB6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		3E21C9612D00C6B92D3FCE3589917729 /* UIView+Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 586B6FC37EB8231AC7C24C1CC2776384 /* UIView+Direction.swift */; };
-		4017CF2B3EE45E7E579E68E6FCFBF732 /* IQKeyboardManager+UIKeyboardNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A5338232CA701AD47A2EA3B534BD224 /* IQKeyboardManager+UIKeyboardNotification.swift */; };
-		40987E046BAD603A58CA00B9A7648588 /* FSPageViewLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5F711A94EB088CF457F893E60C568B4 /* FSPageViewLayout.swift */; };
-		42B931814C7B25871333D5DA9A0E2A41 /* IQKeyboardReturnKeyHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E21781AECFBC7371F2118155ACE5C3C7 /* IQKeyboardReturnKeyHandler.swift */; };
-		4695B952627B345252A52CB26B7747CC /* OFF@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 2E2B400DD678EA303FAFFBEF32CBCA41 /* OFF@3x.png */; };
-		488A767CF7494D169BFB886EDC470F5D /* FSPageViewTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B909C40450F7213C478AE50F7E2D18A9 /* FSPageViewTransformer.swift */; };
-		48A4D5E4D954CB4212E540A92570BBF0 /* UIView+Swizzling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF3F9326AE21BCEED16E14D0872FE9C /* UIView+Swizzling.swift */; };
+		3E21C9612D00C6B92D3FCE3589917729 /* UIView+Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B432B6773BE3F0B4A6976820602F07A /* UIView+Direction.swift */; };
+		4017CF2B3EE45E7E579E68E6FCFBF732 /* IQKeyboardManager+UIKeyboardNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2DB0BCD57E720CE97C1C3CE74B75024 /* IQKeyboardManager+UIKeyboardNotification.swift */; };
+		42B931814C7B25871333D5DA9A0E2A41 /* IQKeyboardReturnKeyHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC4B66ABF37EFD118BC08264BBCA6461 /* IQKeyboardReturnKeyHandler.swift */; };
+		48A4D5E4D954CB4212E540A92570BBF0 /* UIView+Swizzling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 252B706186B99322E0DA5829FCC7D43C /* UIView+Swizzling.swift */; };
 		4CDBAE55660ED186441E9E4EDE6B3D31 /* IQKeyboardManagerSwift.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 8D8069D3964814114ACEC3084C010B59 /* IQKeyboardManagerSwift.bundle */; };
-		50374D59C8ED3AE3E41C30F25859F981 /* ImagePickerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21142CC27FC93E41241CC8948B1EE25C /* ImagePickerController.swift */; };
-		54BAE903D82C39392943869866252D93 /* IQNSArray+Sort.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1DC2A0ED79E1179E28CE75BFECCDA82 /* IQNSArray+Sort.swift */; };
-		597994C3AE8908B1E462BC03AC8C23FB /* IQKeyboardManagerCompatible.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA5483FEE1B87041C4751EA1D4F3EF54 /* IQKeyboardManagerCompatible.swift */; };
+		50374D59C8ED3AE3E41C30F25859F981 /* ImagePickerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9067705903BD2E8C3EC9BD8EBF709221 /* ImagePickerController.swift */; };
+		54BAE903D82C39392943869866252D93 /* IQNSArray+Sort.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62160BE00E3966D4D52808B89DE0B1B3 /* IQNSArray+Sort.swift */; };
+		597994C3AE8908B1E462BC03AC8C23FB /* IQKeyboardManagerCompatible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49FC6FE3F43F76CA598D3253A1731EEB /* IQKeyboardManagerCompatible.swift */; };
+		5C4E571F3ADE020356DAF5143816FC55 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = A532EFEAAE9EEAA7CFA7DF04C7E1808B /* PrivacyInfo.xcprivacy */; };
 		5D35C19C362961F919BE9820991D761E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		5F0469C5B154DC20B844EA2A9B7F8D42 /* IQPlaceholderable.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE58805A3FAC71C6A5782C1B1BB08069 /* IQPlaceholderable.swift */; };
-		5F62DAE67CF97B7C42471EA91B79AA9A /* IQTextFieldViewInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23B7EBFBD51FC4710CDE4AFAE46E8860 /* IQTextFieldViewInfoModel.swift */; };
-		61A0C05934861A0EACC1549F2419289A /* AUTO@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 664FCD8539D02C2C7ABBA15E9666F2B9 /* AUTO@3x.png */; };
-		6418A8A5D32E73D898AB155952180B0C /* LanguageManager-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DA4B76FEC2A143DA2EFFC6D3F7FB7B5A /* LanguageManager-iOS-dummy.m */; };
-		674C6B2E317E657D8EAD3CC73F608540 /* IQKeyboardManager+Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CEB26DB8656A60C8AE2B83EF56A1149 /* IQKeyboardManager+Debug.swift */; };
-		69C7244F5E0D41CF59E5ADC8952F8D0D /* FSPagerViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 842BA45676E86EFC650EFC7B33D1572F /* FSPagerViewCell.swift */; };
-		6D55C34EF7CE4718D8B2FE6CE95C5674 /* DefaultsKeys.swift in Sources */ = {isa = PBXBuildFile; fileRef = 615EB6B3844737F49004E6E4A8F968A0 /* DefaultsKeys.swift */; };
-		6F875A0983E3FB0E0CC0BDA6376F73E8 /* String+Localiz.swift in Sources */ = {isa = PBXBuildFile; fileRef = 398208613C39BD5EF043841FA4CBF884 /* String+Localiz.swift */; };
-		6FAA62F8C663AAEDAB170956E9A298CC /* ImageGalleryLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54A9B08BB29EC7935F6A8F8ACD56BEB0 /* ImageGalleryLayout.swift */; };
-		701904768C60A3F9060518DD58EC2882 /* IQToolbar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 926EAAA6426204DE1DF8D36D2E13EA74 /* IQToolbar.swift */; };
-		71B7397ADA300CDE41CB406BE694A8A2 /* cameraIcon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 8F9A6C68497A6CFFB3FAA52682750752 /* cameraIcon@3x.png */; };
-		733CF7F19636AFF4A97708DFDE0AE53C /* IQKeyboardManagerSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BA790DC54E7A009FDDBBC07056093C41 /* IQKeyboardManagerSwift-dummy.m */; };
-		7399F0854271981516AA79727A0A06C8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		743ED1DCEC16DC2E7FAD8FBDD276EC8F /* ImagePicker-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = DD48D4FC5BD3A99772F4FE6FDB643898 /* ImagePicker-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		5F0469C5B154DC20B844EA2A9B7F8D42 /* IQPlaceholderable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3DC4A4D35E057E5F76427C838E3E495 /* IQPlaceholderable.swift */; };
+		5F62DAE67CF97B7C42471EA91B79AA9A /* IQTextFieldViewInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00AA2070B1A7F8ECC88B6E7F0EEB2167 /* IQTextFieldViewInfoModel.swift */; };
+		6418A8A5D32E73D898AB155952180B0C /* LanguageManager-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BF809679D3CFFBC72878EC9BFEA90F5E /* LanguageManager-iOS-dummy.m */; };
+		674C6B2E317E657D8EAD3CC73F608540 /* IQKeyboardManager+Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B1D47B8C43A0DA0A05A410655A28153 /* IQKeyboardManager+Debug.swift */; };
+		6D55C34EF7CE4718D8B2FE6CE95C5674 /* DefaultsKeys.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DDA4537FCBE11326C1D65EA43B3CC6D /* DefaultsKeys.swift */; };
+		6F875A0983E3FB0E0CC0BDA6376F73E8 /* String+Localiz.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D01E52DE74EF3C733B94F1E045CCD77 /* String+Localiz.swift */; };
+		6FAA62F8C663AAEDAB170956E9A298CC /* ImageGalleryLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84969C2137D2629DFFC29942F8B97FEB /* ImageGalleryLayout.swift */; };
+		701904768C60A3F9060518DD58EC2882 /* IQToolbar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F76805C9416BA1FC318E025ACA3B95EF /* IQToolbar.swift */; };
+		733CF7F19636AFF4A97708DFDE0AE53C /* IQKeyboardManagerSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D4270A3541F22B881BD953A68F6E73F9 /* IQKeyboardManagerSwift-dummy.m */; };
+		743ED1DCEC16DC2E7FAD8FBDD276EC8F /* ImagePicker-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = FDF5381B2554B2BB1D7949E3B9A7DF79 /* ImagePicker-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7586D1882B962E1E31C28CC6396668B3 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1C63F26DA7ECAFB44B0A5DD0BC0E2F89 /* UIKit.framework */; };
-		784DF7F278DC988FEEECB999A9ADFCBB /* BottomContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4A4F7BDE573EF1AD77F082087EBBC731 /* BottomContainerView.swift */; };
-		797DF46337EAC66E47C5ADAF32515524 /* NBBottomSheet.h in Headers */ = {isa = PBXBuildFile; fileRef = E711836675BD919C63BEB7A0930B72B4 /* NBBottomSheet.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		784DF7F278DC988FEEECB999A9ADFCBB /* BottomContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F84A913AFEF518DF42A997F74EC8260 /* BottomContainerView.swift */; };
+		797DF46337EAC66E47C5ADAF32515524 /* NBBottomSheet.h in Headers */ = {isa = PBXBuildFile; fileRef = C6AEEFA5613E0B7BF8F6425A154D6EC9 /* NBBottomSheet.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7B2263CFC47393D3FB5CD8D5F7EB57AD /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1C63F26DA7ECAFB44B0A5DD0BC0E2F89 /* UIKit.framework */; };
-		7DB7E0E519A315B78D72BF7C63C64E30 /* ButtonPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = B021EB40B85B76049C30C2D063F0870D /* ButtonPicker.swift */; };
-		8086BD2DB5F1A0CC88E4F3386570A21C /* IQUITextFieldView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79655C283B54B5F907790F4E79C388EF /* IQUITextFieldView+Additions.swift */; };
-		8234444617FD513B81095D920BFA796B /* NBConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = C698FD30D248D272DAE2F242C5D62EA2 /* NBConfiguration.swift */; };
-		82950EE4BDD57F74749742A3E1566073 /* IQKeyboardManager+UITextFieldViewNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EFB4A164AE952F817BA0A6FCE622791 /* IQKeyboardManager+UITextFieldViewNotification.swift */; };
-		829A79A8C324697D5A619C029AEB0063 /* CameraView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 343F83F1A08E56F19D01674A9BA4DC53 /* CameraView.swift */; };
-		852E6AB133CF7BDE7DE7D836AE201868 /* Languages.swift in Sources */ = {isa = PBXBuildFile; fileRef = CACF959977B91C5F65F381B36C452B6D /* Languages.swift */; };
-		8EAF267614A5AB6196921C15E719AE35 /* NBBottomSheetDismissalTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1DF93E2C3692DABCE7DF9D4735D2645 /* NBBottomSheetDismissalTransition.swift */; };
-		8ED2E941DF0803C8AA331D0D8C722615 /* IQBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 065FDC013F6128B451B9F622F8A98C11 /* IQBarButtonItem.swift */; };
-		8FDA28363A5E49017498FD69AAA8F59F /* IQKeyboardListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1BD1A58666D6C0FD408F4DB3ADC8107 /* IQKeyboardListener.swift */; };
-		907FCA3049CAAF64B579D08D339D118D /* IQBarButtonItemConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DA62F8724EC161B523761C4D312EE6A /* IQBarButtonItemConfiguration.swift */; };
-		91611428D06F5E61CECF70A53E6DA6C6 /* FSPagerViewObjcCompat.h in Headers */ = {isa = PBXBuildFile; fileRef = F047971CD665BC407A8DAA32AD3A9B98 /* FSPagerViewObjcCompat.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		93C0AD77AB416AE90A6BD03E44A9B684 /* EPSignature-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B3FCB83859385DB3694F04D44B40FE18 /* EPSignature-dummy.m */; };
-		94F893223EB4C1C0F829C17900114AFA /* IQUIScrollView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8A8D208D764CFAC89604E6813F1444E /* IQUIScrollView+Additions.swift */; };
-		9517FE286FAA3C856DC6C1B6F91F48CF /* Pods-MiniScanner-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0E8A070B594D65627DD64F5ABC65D271 /* Pods-MiniScanner-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		960957461D403847E92AF1825B4D8506 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = B638343F1BC71A9A9CD3A6D6CA749DC7 /* PrivacyInfo.xcprivacy */; };
+		7DB7E0E519A315B78D72BF7C63C64E30 /* ButtonPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4648CA1088D11129C0BDD49912D6FAB /* ButtonPicker.swift */; };
+		8086BD2DB5F1A0CC88E4F3386570A21C /* IQUITextFieldView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 116DA05004680C76EAB707C0943392EB /* IQUITextFieldView+Additions.swift */; };
+		8234444617FD513B81095D920BFA796B /* NBConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD46A963E6CCE8CD900BA8A7331D7D8C /* NBConfiguration.swift */; };
+		82950EE4BDD57F74749742A3E1566073 /* IQKeyboardManager+UITextFieldViewNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0DA73612FA4F954FCE02EA0ADACE634 /* IQKeyboardManager+UITextFieldViewNotification.swift */; };
+		829A79A8C324697D5A619C029AEB0063 /* CameraView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC2ECE9C7A88988A534C8F7590F3AB64 /* CameraView.swift */; };
+		852E6AB133CF7BDE7DE7D836AE201868 /* Languages.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2B28EA5FE2C09FCEF4DF47D34186FB7 /* Languages.swift */; };
+		8AE718666177B657AE0BBD08AF829DD1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
+		8D935C83E5D7B42A4C6439FFA767CE24 /* AUTO@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = EB8D9081C43164E02C60F65C02702B8E /* AUTO@3x.png */; };
+		8EAF267614A5AB6196921C15E719AE35 /* NBBottomSheetDismissalTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97037D70AD7F37FBCDB7561DA20D7D2D /* NBBottomSheetDismissalTransition.swift */; };
+		8ED2E941DF0803C8AA331D0D8C722615 /* IQBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = F88000230AEFE1CF1FC184347AAE598B /* IQBarButtonItem.swift */; };
+		8FDA28363A5E49017498FD69AAA8F59F /* IQKeyboardListener.swift in Sources */ = {isa = PBXBuildFile; fileRef = 400224F8C71E7053C79E8D5E509534F4 /* IQKeyboardListener.swift */; };
+		907FCA3049CAAF64B579D08D339D118D /* IQBarButtonItemConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 419AB69B674D6C318AC58EE6D9AFF102 /* IQBarButtonItemConfiguration.swift */; };
+		93C0AD77AB416AE90A6BD03E44A9B684 /* EPSignature-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E24E6B8D32E615F0FEF0A78F3C181A09 /* EPSignature-dummy.m */; };
+		94F893223EB4C1C0F829C17900114AFA /* IQUIScrollView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B5E1D310DD754E122DEEE009481A2D6 /* IQUIScrollView+Additions.swift */; };
 		98A4D0D5928A35C7DB3D9272187789A8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3DF46AD6E25D68DB361974528992221 /* CoreGraphics.framework */; };
-		9A00A25ED34A7687C62B02EBB76C1248 /* IQKeyboardConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = B700D2C4CED5ED22050429C7997CF1FE /* IQKeyboardConfiguration.swift */; };
-		9E704111CAAACBF64155A576FC337323 /* LanguageManager-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = ED50ABC97C7298629CFFE2835E5645AE /* LanguageManager-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		9F78D56352F7D932DCEBE416C668C7BA /* IQKeyboardManager+ToolbarActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F23D0E0AE3BDC7AE6A7D331A0FF5AF6 /* IQKeyboardManager+ToolbarActions.swift */; };
-		A4AE2538C33D06CB8C70D5FF35A65D98 /* EPSignatureViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF61B6A70C39B0ACDA33B583642A26EE /* EPSignatureViewController.swift */; };
-		A5E69CC013C4311C8AF52C7F7AB095C9 /* IQUITableView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F5B0BFC63CD2F3B0DF56912D4F54E8 /* IQUITableView+Additions.swift */; };
-		AE7D065E1D48171258FD8F07F7CD592C /* IQKeyboardManagerConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC43EDC562847626ACF7B4E93E5462EF /* IQKeyboardManagerConstants.swift */; };
-		AF715064CF6458D3D89BB563DFDB00C6 /* UIButton+Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4D36302D2F7234AEEC28003C3244EB4 /* UIButton+Direction.swift */; };
-		B0E87F4E370B3A0CD14B50D219AE7B0B /* StackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8CA0DD8AA6C4033E65CAA6FE83870F1 /* StackView.swift */; };
+		9A00A25ED34A7687C62B02EBB76C1248 /* IQKeyboardConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 297848FCF8FE33D0DA0FDA6C8B1F5CC3 /* IQKeyboardConfiguration.swift */; };
+		9E704111CAAACBF64155A576FC337323 /* LanguageManager-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3510141CBBD30B465F757E0A8E2B1097 /* LanguageManager-iOS-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		9F78D56352F7D932DCEBE416C668C7BA /* IQKeyboardManager+ToolbarActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9651F46100B3C105EE27B92C1DFFCEC /* IQKeyboardManager+ToolbarActions.swift */; };
+		A213B981B47C6B4734589B6ED9469132 /* OFF@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 18CC4F437D7A0F3454C4F89BD6CE0AEC /* OFF@3x.png */; };
+		A4AE2538C33D06CB8C70D5FF35A65D98 /* EPSignatureViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1A5BF586C35098EC908E7870B407170 /* EPSignatureViewController.swift */; };
+		A5E69CC013C4311C8AF52C7F7AB095C9 /* IQUITableView+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 619978A0C0036454C22A81173BAA5A6A /* IQUITableView+Additions.swift */; };
+		AE7D065E1D48171258FD8F07F7CD592C /* IQKeyboardManagerConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9F19506C84032240A21541F9EFCA895 /* IQKeyboardManagerConstants.swift */; };
+		AF715064CF6458D3D89BB563DFDB00C6 /* UIButton+Direction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4E6D4AE8BCE2646794F28F0E24A08D1 /* UIButton+Direction.swift */; };
+		B0E87F4E370B3A0CD14B50D219AE7B0B /* StackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 467961922684B2F4C4295CBE0C9CD940 /* StackView.swift */; };
 		B1A786B1A2F11EBD1BF77305EEB710F5 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2EE6749FC108D414ECB83B77EF11BD86 /* QuartzCore.framework */; };
-		B1BFC54288364884DDEAE75027BABE1A /* IQActiveConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 831781174B420BA2000C5A20F9B1A155 /* IQActiveConfiguration.swift */; };
-		B9CF878085ABA2991A9C6F12F9B9DAB3 /* IQTitleBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DB37A30323A7D2ED16581BA15B8351D /* IQTitleBarButtonItem.swift */; };
+		B1BFC54288364884DDEAE75027BABE1A /* IQActiveConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FE3DE7F264E30C392DCECA7921DAEF2 /* IQActiveConfiguration.swift */; };
+		B9CF878085ABA2991A9C6F12F9B9DAB3 /* IQTitleBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A100F9EA89810A00541755ECD7BBB307 /* IQTitleBarButtonItem.swift */; };
 		BD0139B5F1C96514CB66C4310AAF1DF5 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 56B28C4E9F718651E6E1B010F31566EB /* AVFoundation.framework */; };
-		C116540980BCB8D0E54215D9E8C7AD78 /* video@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 5D646977F7C0DA29D63C4E18D9DD6630 /* video@3x.png */; };
-		C85C11573FFE927A84AD0C8BE456AD81 /* FSPagerViewLayoutAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 891FABB9A51285F499148E921B1A8E24 /* FSPagerViewLayoutAttributes.swift */; };
-		CA6D6333D723B4391BD689F68FCF23DF /* EPSignatureView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE559964BD58119769FB19BB95144A6A /* EPSignatureView.swift */; };
-		CA8CFC49D2338D41DA4E83F941867CEB /* ImagePicker-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4AAF24BB95964A47FF71115DCACE5CC1 /* ImagePicker-dummy.m */; };
+		C884AFFEC6B0F6540E8A5593250D5741 /* Pods-MiniScanner-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0E8A070B594D65627DD64F5ABC65D271 /* Pods-MiniScanner-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		CA6D6333D723B4391BD689F68FCF23DF /* EPSignatureView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 452182903F9A76184461CC377DB62A70 /* EPSignatureView.swift */; };
+		CA8CFC49D2338D41DA4E83F941867CEB /* ImagePicker-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3FD2850880C4A8033AED333F5DFAE328 /* ImagePicker-dummy.m */; };
 		CC897E71556348377B4C31307E208C80 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		CC96488C33BFB3BCEE4A665A438CAC36 /* IQUIViewController+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B35CF76304163C551A5E4B592066D0D /* IQUIViewController+Additions.swift */; };
-		CE2C6FD104092EA3F2F0A357C72460A8 /* FSPagerView-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 01ACC366C89CCCD7C9CF3E69462AC2A7 /* FSPagerView-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		D2A598E7174826A7B04036E7AC8AA3B6 /* Storage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D0027E6314671B943C4497115466711 /* Storage.swift */; };
-		D3D1F63C30E95311B687FA924B872C15 /* IQKeyboardManager+Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F2207491E92F152C27D2B4A764A6A93 /* IQKeyboardManager+Deprecated.swift */; };
-		D46F90A0F6FC8F1D2AA4129BC2A934DD /* NBBottomSheet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1935C8E9966B3C94DD69B219D3DBFBD0 /* NBBottomSheet-dummy.m */; };
+		CC96488C33BFB3BCEE4A665A438CAC36 /* IQUIViewController+Additions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5598E57D63117C1B54ADBB7A187B232 /* IQUIViewController+Additions.swift */; };
+		D2A598E7174826A7B04036E7AC8AA3B6 /* Storage.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCB418B4C0BF451B734FFA48AAD9ADF6 /* Storage.swift */; };
+		D3D1F63C30E95311B687FA924B872C15 /* IQKeyboardManager+Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6C5E34F15E4BBDA3480406FF35C1903 /* IQKeyboardManager+Deprecated.swift */; };
+		D46F90A0F6FC8F1D2AA4129BC2A934DD /* NBBottomSheet-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = AD71C20FAD4FE7E08FA8091857A2FDCB /* NBBottomSheet-dummy.m */; };
 		D4BB4D928CB44E6CE753BEA14E5AC918 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */; };
-		D8322CBE73400EE4382D1A042D2D53D3 /* IQUIView+IQKeyboardToolbar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DF9BB8A2089DB5AEEA4B43132D0B074 /* IQUIView+IQKeyboardToolbar.swift */; };
-		D88C2EA8ACCC0DE031D9E7A768062E2C /* IQKeyboardManager+Toolbar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88DFD4B8DC15592A7CD38D8AD9C01668 /* IQKeyboardManager+Toolbar.swift */; };
-		DE3B5070A41194C21898D92DBFFCBE4C /* IQRootControllerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24533AECDB8F27FACE2D96631FC3F307 /* IQRootControllerConfiguration.swift */; };
-		E483FA24409A56AAEDF8A1DEC5F55F16 /* UIImage+NextPrevious.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC7F01FAC278F9B096CFFD78497206CF /* UIImage+NextPrevious.swift */; };
-		E8770A941545BB190D76BF7E5262797D /* IQToolbarConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A9AA0FBABA9E9EEF6521C23B2031158 /* IQToolbarConfiguration.swift */; };
-		EA280E998F6C42AE8492336F762F92D5 /* EPExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E288979D79A43A7925DB41055CDD376 /* EPExtensions.swift */; };
-		EA89DFEFE15FAD82868C74E94F6F1B75 /* FSPagerViewObjcCompat.m in Sources */ = {isa = PBXBuildFile; fileRef = B7F2D378ED96DA779D964000E6DECED9 /* FSPagerViewObjcCompat.m */; };
-		EBB5F245DBEEB13D48F09E0DD75A6C95 /* IQKeyboardManager+Position.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2209E8AC4BD6C9607BD14A1D48B3FBB3 /* IQKeyboardManager+Position.swift */; };
-		ECA11CD4E20DFCA3327CB006B10A3DB8 /* FSPagerCollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E9452E6ADBDB9FF5D00CEDC3ED637F3 /* FSPagerCollectionView.swift */; };
-		ECFE64B0759EFA4F555994B6CDCED624 /* AssetManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F6DD614B85D0662209A3ADCFA367295 /* AssetManager.swift */; };
-		F2562CFCEC42E2989BADC7E823F2C9C3 /* FSPageControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6D6492D4AE05CD36F797199E44F1805 /* FSPageControl.swift */; };
-		F2AF558F96F3C43C3E4C747E45E5637C /* LocationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAA72CEA94002E53D03EC7DCC0E59413 /* LocationManager.swift */; };
-		F2ED9C9337B84D1E42E67BF7F7DAD72C /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90C7704EF389F83C731970D2CDF6595B /* Configuration.swift */; };
-		F56475ACE1A1CFE322DBFA35CDA1A204 /* NBBottomSheetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8059AF588641259180B6DAD45BEF496B /* NBBottomSheetConfiguration.swift */; };
-		F6702D89104E55C112FE16943BE7D41A /* FSPagerView-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A54F7427340E254B559EC1244CA2E45 /* FSPagerView-dummy.m */; };
-		F681FB74C756E0AAFFDC0D414EBD8FA0 /* IQScrollViewConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 545688259B1D4CD8A59AF3D7E0AFE7B9 /* IQScrollViewConfiguration.swift */; };
-		F7C3A4FED58118F9ADC5B4AF9A10B9FC /* ViewDirection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EA72F0B0DD57B9D078AF8EFCE412455 /* ViewDirection.swift */; };
-		F7E2900D9AF732C627F184A258F48DF0 /* NBBottomSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A60D99B014C4219B8F7BF725B9648E36 /* NBBottomSheetController.swift */; };
-		F9DE1A3C506E506F4DA4B7714359E8D1 /* IQKeyboardManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B4086624F01B0B30DDB90F23478F288 /* IQKeyboardManager.swift */; };
-		FB0A76B10B5927494469B16B28CF2B9A /* NBBottomSheetPresentationTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AA92C612F872EADC2BC40A15E01DB23 /* NBBottomSheetPresentationTransition.swift */; };
-		FDEFBFB34E35A4BB332264E0CACCF5D8 /* IQInvocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32A5E10DAD7E67CBAFB25E12CF020274 /* IQInvocation.swift */; };
-		FE4936BFE1B6B6A9E8136010E413A24B /* NBBottomSheet-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 65E35E2A8DCF85A60B0EF9389B0495AE /* NBBottomSheet-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		FF8C6AC907C8F4B527F9A0CBDBCC7F92 /* ImageGalleryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE5D7D46BA438C135B812D0C145CBE6C /* ImageGalleryView.swift */; };
+		D8322CBE73400EE4382D1A042D2D53D3 /* IQUIView+IQKeyboardToolbar.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB5F2D5DFB52DE92C94A23801BAC451C /* IQUIView+IQKeyboardToolbar.swift */; };
+		D88C2EA8ACCC0DE031D9E7A768062E2C /* IQKeyboardManager+Toolbar.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1229814968DD5876FBA87DDA81C5B8F /* IQKeyboardManager+Toolbar.swift */; };
+		DE3B5070A41194C21898D92DBFFCBE4C /* IQRootControllerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 878EC7606D056CAB26A578762AF922D7 /* IQRootControllerConfiguration.swift */; };
+		E483FA24409A56AAEDF8A1DEC5F55F16 /* UIImage+NextPrevious.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEB8E045AED5393DCC7FA1C76AB59AB8 /* UIImage+NextPrevious.swift */; };
+		E8770A941545BB190D76BF7E5262797D /* IQToolbarConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3243FB397BF2AFE225A1FC09542DBF5D /* IQToolbarConfiguration.swift */; };
+		EA280E998F6C42AE8492336F762F92D5 /* EPExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9D8E28679896AEA1627BA66F8580C2 /* EPExtensions.swift */; };
+		EBB5F245DBEEB13D48F09E0DD75A6C95 /* IQKeyboardManager+Position.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05DDE99E61633BB77D72F46FD10F71BC /* IQKeyboardManager+Position.swift */; };
+		ECFE64B0759EFA4F555994B6CDCED624 /* AssetManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9E511B375EE87D380DE8D4B00AE28F4 /* AssetManager.swift */; };
+		F2AF558F96F3C43C3E4C747E45E5637C /* LocationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D01404D467A420F82D2829CE6CD8BB4 /* LocationManager.swift */; };
+		F2ED9C9337B84D1E42E67BF7F7DAD72C /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A6AE173040683BAF2BF0ACE7CB13A0A /* Configuration.swift */; };
+		F56475ACE1A1CFE322DBFA35CDA1A204 /* NBBottomSheetConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = A72C2CB61DAC20DBF7210307C41485C5 /* NBBottomSheetConfiguration.swift */; };
+		F681FB74C756E0AAFFDC0D414EBD8FA0 /* IQScrollViewConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 486835CC5D14C1EA193F8575CA89FDCC /* IQScrollViewConfiguration.swift */; };
+		F7C3A4FED58118F9ADC5B4AF9A10B9FC /* ViewDirection.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC259076A4D444F235DABE44D7425021 /* ViewDirection.swift */; };
+		F7E2900D9AF732C627F184A258F48DF0 /* NBBottomSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54323777101C6AB180A413C0B2DB23B9 /* NBBottomSheetController.swift */; };
+		F9DE1A3C506E506F4DA4B7714359E8D1 /* IQKeyboardManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A353C25676960291A3718B5AFDB81A33 /* IQKeyboardManager.swift */; };
+		FB0A76B10B5927494469B16B28CF2B9A /* NBBottomSheetPresentationTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00B378319A98BB422CBDBE14796C501A /* NBBottomSheetPresentationTransition.swift */; };
+		FDEFBFB34E35A4BB332264E0CACCF5D8 /* IQInvocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = A12B5A63F2CB09B7D22B7E2F4A2210EB /* IQInvocation.swift */; };
+		FE4936BFE1B6B6A9E8136010E413A24B /* NBBottomSheet-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 389AA43304A03366FC2510859AA7DCBA /* NBBottomSheet-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+		FF74A846B2EEC0D52379B48D7963D8C0 /* focusIcon@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 9FC1B2AF5635D8020B43F30629EC2712 /* focusIcon@3x.png */; };
+		FF8C6AC907C8F4B527F9A0CBDBCC7F92 /* ImageGalleryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21D53725C7625527BF97643CF7655C26 /* ImageGalleryView.swift */; };
 /* End PBXBuildFile section */
 
 /* Begin PBXContainerItemProxy section */
-		0473CB2089AEB22D5A94042369CBE127 /* PBXContainerItemProxy */ = {
+		19D95F1858EF2D6E80811860CFD6BF92 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
-			remoteGlobalIDString = 01CB8D6098C21E12CE735619344DE81E;
-			remoteInfo = ImagePicker;
+			remoteGlobalIDString = 727C2007A89D1AD73613E3E2E22998E5;
+			remoteInfo = NBBottomSheet;
 		};
-		195F278E699A41C19ED473B0310CAC62 /* PBXContainerItemProxy */ = {
+		6CD75698768741DC0335DCB2F06CB5BC /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
-			remoteGlobalIDString = 3CAF5EBFE5D1550CFF58AEC93594990A;
-			remoteInfo = EPSignature;
+			remoteGlobalIDString = 982A68D37F5DCBC1FC1FDC0BB2F0EB8E;
+			remoteInfo = "IQKeyboardManagerSwift-IQKeyboardManagerSwift";
 		};
-		35F75C3FB936C4BE71A7B3A5CE8352DE /* PBXContainerItemProxy */ = {
+		8292BF480C5137113C3A6C342933F986 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
 			remoteGlobalIDString = 75F1EA88CB9544AB5CBE20DEC9A011AE;
 			remoteInfo = "LanguageManager-iOS";
 		};
-		368B8A0D7A211FB1D8031E50553E22B1 /* PBXContainerItemProxy */ = {
-			isa = PBXContainerItemProxy;
-			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
-			proxyType = 1;
-			remoteGlobalIDString = 982A68D37F5DCBC1FC1FDC0BB2F0EB8E;
-			remoteInfo = "IQKeyboardManagerSwift-IQKeyboardManagerSwift";
-		};
-		86BCB3533B3E4CC4A62FDD4F9D7AEF5C /* PBXContainerItemProxy */ = {
+		D06F098EB5FE1B281549C568AA85EEA9 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
 			remoteGlobalIDString = 614D1818852890AC7D3CDF68D512C370;
 			remoteInfo = "ImagePicker-ImagePicker";
 		};
-		AE6E02E3D311CB4AEC5F673F47B2F7DE /* PBXContainerItemProxy */ = {
+		D96B4C07AAAD52B947C6F8CFEF7E8807 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
-			remoteGlobalIDString = D4F8239FB329387A8476B964D92D92E7;
-			remoteInfo = FSPagerView;
+			remoteGlobalIDString = B490E7485944099E16C9CBD79119D1D4;
+			remoteInfo = IQKeyboardManagerSwift;
 		};
-		C3EEE11D57DF83B4A602A0BB6B6D5420 /* PBXContainerItemProxy */ = {
+		F3097459B372082D9C20BEF06209FBD6 /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
-			remoteGlobalIDString = B490E7485944099E16C9CBD79119D1D4;
-			remoteInfo = IQKeyboardManagerSwift;
+			remoteGlobalIDString = 3CAF5EBFE5D1550CFF58AEC93594990A;
+			remoteInfo = EPSignature;
 		};
-		F39E3FCE8EA4C0F8CBCC8FCA9435B319 /* PBXContainerItemProxy */ = {
+		FBE5961EEB250DF2DACF4F88C36BCC1E /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
 			proxyType = 1;
-			remoteGlobalIDString = 727C2007A89D1AD73613E3E2E22998E5;
-			remoteInfo = NBBottomSheet;
+			remoteGlobalIDString = 01CB8D6098C21E12CE735619344DE81E;
+			remoteInfo = ImagePicker;
 		};
 /* End PBXContainerItemProxy section */
 
 /* Begin PBXFileReference section */
-		01ACC366C89CCCD7C9CF3E69462AC2A7 /* FSPagerView-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FSPagerView-umbrella.h"; sourceTree = "<group>"; };
-		01FB3E845976BA7356CB95994A0420CD /* IQKeyboardManagerSwift-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "IQKeyboardManagerSwift-Info.plist"; sourceTree = "<group>"; };
-		04420AA069E60E2676B1C8145D489AFE /* IQKeyboardManagerSwift.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = IQKeyboardManagerSwift.release.xcconfig; sourceTree = "<group>"; };
-		065FDC013F6128B451B9F622F8A98C11 /* IQBarButtonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQBarButtonItem.swift; path = IQKeyboardManagerSwift/IQToolbar/IQBarButtonItem.swift; sourceTree = "<group>"; };
-		085D4171A3F780C04EFB71FBC8E635E1 /* LanguageManager-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "LanguageManager-iOS.modulemap"; sourceTree = "<group>"; };
+		00AA2070B1A7F8ECC88B6E7F0EEB2167 /* IQTextFieldViewInfoModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextFieldViewInfoModel.swift; path = IQKeyboardManagerSwift/ReturnKeyHandler/IQTextFieldViewInfoModel.swift; sourceTree = "<group>"; };
+		00B378319A98BB422CBDBE14796C501A /* NBBottomSheetPresentationTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetPresentationTransition.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetPresentationTransition.swift; sourceTree = "<group>"; };
+		02E924FDDE7F7B51AEC552C94D9C9AD6 /* VideoInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoInfoView.swift; path = Source/ImageGallery/VideoInfoView.swift; sourceTree = "<group>"; };
+		05DDE99E61633BB77D72F46FD10F71BC /* IQKeyboardManager+Position.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Position.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Position.swift"; sourceTree = "<group>"; };
+		081BAFFE15D81F33E77489E60A036BE7 /* selectedImageGallery@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "selectedImageGallery@3x.png"; path = "Images/selectedImageGallery@3x.png"; sourceTree = "<group>"; };
+		0A36BA6D882CE68172CAE63D99BCB5BA /* EPSignature-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "EPSignature-umbrella.h"; sourceTree = "<group>"; };
+		0AF6D83B6BEECA27C12EB10E96CF4A52 /* ResourceBundle-ImagePicker-ImagePicker-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-ImagePicker-ImagePicker-Info.plist"; sourceTree = "<group>"; };
+		0B1626D50D1FBDF5976CCCE6F16928A1 /* NBBottomSheet-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "NBBottomSheet-Info.plist"; sourceTree = "<group>"; };
+		0CB32F67F5B5E9A2C263A017E98041AC /* NBBottomSheet-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NBBottomSheet-prefix.pch"; sourceTree = "<group>"; };
+		0CBC68B38C0421EC0AE36B43FB2C7636 /* ImagePicker.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ImagePicker.release.xcconfig; sourceTree = "<group>"; };
 		0E8A070B594D65627DD64F5ABC65D271 /* Pods-MiniScanner-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-MiniScanner-umbrella.h"; sourceTree = "<group>"; };
-		0EFB4A164AE952F817BA0A6FCE622791 /* IQKeyboardManager+UITextFieldViewNotification.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+UITextFieldViewNotification.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+UITextFieldViewNotification.swift"; sourceTree = "<group>"; };
-		0F47FB5E28EE8C8342B1776D813D1A4C /* FSPagerView.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FSPagerView.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		116DA05004680C76EAB707C0943392EB /* IQUITextFieldView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUITextFieldView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUITextFieldView+Additions.swift"; sourceTree = "<group>"; };
 		123ADF4A6B2F1DEBA5B7482D4983B685 /* Pods-MiniScanner-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-MiniScanner-dummy.m"; sourceTree = "<group>"; };
-		13CD760B3298D3E6B007FC21AEFDEF16 /* LanguageManager-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "LanguageManager-iOS-Info.plist"; sourceTree = "<group>"; };
-		1935C8E9966B3C94DD69B219D3DBFBD0 /* NBBottomSheet-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NBBottomSheet-dummy.m"; sourceTree = "<group>"; };
-		1B4086624F01B0B30DDB90F23478F288 /* IQKeyboardManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardManager.swift; path = IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager.swift; sourceTree = "<group>"; };
-		1BB9A00426C7107F694592F19527BE69 /* NBBottomSheetTransitioningDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetTransitioningDelegate.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetTransitioningDelegate.swift; sourceTree = "<group>"; };
+		17EF00C659AFF94B598E7501E2992350 /* ImagePicker.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = ImagePicker.modulemap; sourceTree = "<group>"; };
+		180962FC6F75908EC73049ADB28FC887 /* ImagePicker-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ImagePicker-Info.plist"; sourceTree = "<group>"; };
+		187B8EDBE8957C190B1EB7C8F949ED80 /* IQPreviousNextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQPreviousNextView.swift; path = IQKeyboardManagerSwift/IQToolbar/IQPreviousNextView.swift; sourceTree = "<group>"; };
+		18CC4F437D7A0F3454C4F89BD6CE0AEC /* OFF@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "OFF@3x.png"; path = "Images/OFF@3x.png"; sourceTree = "<group>"; };
 		1C63F26DA7ECAFB44B0A5DD0BC0E2F89 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
-		1E288979D79A43A7925DB41055CDD376 /* EPExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EPExtensions.swift; path = Pod/Classes/EPExtensions.swift; sourceTree = "<group>"; };
-		1EF3F9326AE21BCEED16E14D0872FE9C /* UIView+Swizzling.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Swizzling.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIView+Swizzling.swift"; sourceTree = "<group>"; };
-		21142CC27FC93E41241CC8948B1EE25C /* ImagePickerController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImagePickerController.swift; path = Source/ImagePickerController.swift; sourceTree = "<group>"; };
+		1D01404D467A420F82D2829CE6CD8BB4 /* LocationManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LocationManager.swift; path = Source/LocationManager.swift; sourceTree = "<group>"; };
+		1DA09D0759A4DDF814A83483F582ADB1 /* EPSignature-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "EPSignature-Info.plist"; sourceTree = "<group>"; };
+		2006321B115FD55474FD1B985C1979FA /* EPSignature.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = EPSignature.release.xcconfig; sourceTree = "<group>"; };
 		21A62BB316C6336F03408E50D730FD01 /* Pods-MiniScanner.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-MiniScanner.modulemap"; sourceTree = "<group>"; };
-		2209E8AC4BD6C9607BD14A1D48B3FBB3 /* IQKeyboardManager+Position.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Position.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Position.swift"; sourceTree = "<group>"; };
-		22FCBFA0E2A7651B248460AD3CB4DE32 /* NBBottomSheet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = NBBottomSheet.debug.xcconfig; sourceTree = "<group>"; };
-		23A10D783B0ECA5BA75D4E94BDA01957 /* NBBottomSheet.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = NBBottomSheet.modulemap; sourceTree = "<group>"; };
-		23B7EBFBD51FC4710CDE4AFAE46E8860 /* IQTextFieldViewInfoModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextFieldViewInfoModel.swift; path = IQKeyboardManagerSwift/ReturnKeyHandler/IQTextFieldViewInfoModel.swift; sourceTree = "<group>"; };
-		24533AECDB8F27FACE2D96631FC3F307 /* IQRootControllerConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQRootControllerConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQRootControllerConfiguration.swift; sourceTree = "<group>"; };
-		2D93C4B3BEDE27E7A936E76984B03C35 /* EPSignatureViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = EPSignatureViewController.xib; path = Pod/Classes/EPSignatureViewController.xib; sourceTree = "<group>"; };
-		2E2B400DD678EA303FAFFBEF32CBCA41 /* OFF@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "OFF@3x.png"; path = "Images/OFF@3x.png"; sourceTree = "<group>"; };
+		21D53725C7625527BF97643CF7655C26 /* ImageGalleryView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryView.swift; path = Source/ImageGallery/ImageGalleryView.swift; sourceTree = "<group>"; };
+		252B706186B99322E0DA5829FCC7D43C /* UIView+Swizzling.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Swizzling.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIView+Swizzling.swift"; sourceTree = "<group>"; };
+		26EDF88E14046AAC34BFF99F97D23B05 /* NBBottomSheet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = NBBottomSheet.release.xcconfig; sourceTree = "<group>"; };
+		290501CF6F70FA1835207284AF05BEE5 /* ConstraintsSetup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintsSetup.swift; path = Source/Extensions/ConstraintsSetup.swift; sourceTree = "<group>"; };
+		297848FCF8FE33D0DA0FDA6C8B1F5CC3 /* IQKeyboardConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQKeyboardConfiguration.swift; sourceTree = "<group>"; };
+		297D96869095AA06F276F3DA5DD575B7 /* CameraMan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CameraMan.swift; path = Source/CameraView/CameraMan.swift; sourceTree = "<group>"; };
+		2A6AE173040683BAF2BF0ACE7CB13A0A /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Source/Configuration.swift; sourceTree = "<group>"; };
+		2AC4CEA5F2332B5B286CA6B73D2643EF /* ImageGalleryViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryViewCell.swift; path = Source/ImageGallery/ImageGalleryViewCell.swift; sourceTree = "<group>"; };
+		2E9D8E28679896AEA1627BA66F8580C2 /* EPExtensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EPExtensions.swift; path = Pod/Classes/EPExtensions.swift; sourceTree = "<group>"; };
 		2EE6749FC108D414ECB83B77EF11BD86 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; };
-		2EEF70A7586548C9681199386735B949 /* LanguageManager-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "LanguageManager-iOS.debug.xcconfig"; sourceTree = "<group>"; };
-		309F127A50B023B6041C44942C9079DE /* IQTextFieldViewInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextFieldViewInfo.swift; path = IQKeyboardManagerSwift/LIsteners/Info/IQTextFieldViewInfo.swift; sourceTree = "<group>"; };
-		30A55721765A033C43BEE85DF167DC60 /* ImagePicker.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = ImagePicker.modulemap; sourceTree = "<group>"; };
-		317125123DFF6A76FF8664EF536038C2 /* ResourceBundle-ImagePicker-ImagePicker-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-ImagePicker-ImagePicker-Info.plist"; sourceTree = "<group>"; };
-		32A5E10DAD7E67CBAFB25E12CF020274 /* IQInvocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQInvocation.swift; path = IQKeyboardManagerSwift/IQToolbar/IQInvocation.swift; sourceTree = "<group>"; };
+		3243FB397BF2AFE225A1FC09542DBF5D /* IQToolbarConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQToolbarConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQToolbarConfiguration.swift; sourceTree = "<group>"; };
+		32CC609D1546AF3789419217412783D0 /* IQKeyboardManagerSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = IQKeyboardManagerSwift.modulemap; sourceTree = "<group>"; };
 		3438B9790556194C521D4C9806D29C85 /* Pods_MiniScanner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MiniScanner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		343F83F1A08E56F19D01674A9BA4DC53 /* CameraView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CameraView.swift; path = Source/CameraView/CameraView.swift; sourceTree = "<group>"; };
-		398208613C39BD5EF043841FA4CBF884 /* String+Localiz.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Localiz.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/String+Localiz.swift"; sourceTree = "<group>"; };
-		3AA92C612F872EADC2BC40A15E01DB23 /* NBBottomSheetPresentationTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetPresentationTransition.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetPresentationTransition.swift; sourceTree = "<group>"; };
+		3510141CBBD30B465F757E0A8E2B1097 /* LanguageManager-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "LanguageManager-iOS-umbrella.h"; sourceTree = "<group>"; };
+		389AA43304A03366FC2510859AA7DCBA /* NBBottomSheet-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NBBottomSheet-umbrella.h"; sourceTree = "<group>"; };
 		3B6258C4E2C1059AABC67D66F9314FE8 /* Pods-MiniScanner-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-MiniScanner-acknowledgements.markdown"; sourceTree = "<group>"; };
-		3B78794BA632342FFC447557E4671B16 /* CameraMan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CameraMan.swift; path = Source/CameraView/CameraMan.swift; sourceTree = "<group>"; };
-		3C28E959FA9C6343351C3EA1ED606EBA /* EPSignature-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "EPSignature-Info.plist"; sourceTree = "<group>"; };
-		3DB66972AE146B779F56CFD49B324220 /* IQTextFieldViewListener.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextFieldViewListener.swift; path = IQKeyboardManagerSwift/LIsteners/IQTextFieldViewListener.swift; sourceTree = "<group>"; };
-		3DF9BB8A2089DB5AEEA4B43132D0B074 /* IQUIView+IQKeyboardToolbar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIView+IQKeyboardToolbar.swift"; path = "IQKeyboardManagerSwift/IQToolbar/IQUIView+IQKeyboardToolbar.swift"; sourceTree = "<group>"; };
+		3D666C16AFD99E3736270D569B5DE2F1 /* EPSignature.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = EPSignature.modulemap; sourceTree = "<group>"; };
 		3DFAC6F70B9CECADF5873F487AF082BA /* EPSignature.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = EPSignature.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		3E9452E6ADBDB9FF5D00CEDC3ED637F3 /* FSPagerCollectionView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPagerCollectionView.swift; path = Sources/FSPagerCollectionView.swift; sourceTree = "<group>"; };
-		4105CD9664E76F34242222CF357D24ED /* FSPagerView-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FSPagerView-prefix.pch"; sourceTree = "<group>"; };
-		4138C0C249C44F4ED4EF526B81270B66 /* LanguageManager-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "LanguageManager-iOS-prefix.pch"; sourceTree = "<group>"; };
-		47978E33AA1FE786BB675EA3F66DE381 /* ImageStack.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageStack.swift; path = Source/BottomView/ImageStack.swift; sourceTree = "<group>"; };
-		47A7457CB008481373FBC626968AD770 /* IQUIView+IQKeyboardToolbarDeprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIView+IQKeyboardToolbarDeprecated.swift"; path = "IQKeyboardManagerSwift/IQToolbar/IQUIView+IQKeyboardToolbarDeprecated.swift"; sourceTree = "<group>"; };
-		490673E82DCDC51D3CF4E4936D75E6F6 /* FSPagerView-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FSPagerView-Info.plist"; sourceTree = "<group>"; };
-		4A4F7BDE573EF1AD77F082087EBBC731 /* BottomContainerView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BottomContainerView.swift; path = Source/BottomView/BottomContainerView.swift; sourceTree = "<group>"; };
-		4A5338232CA701AD47A2EA3B534BD224 /* IQKeyboardManager+UIKeyboardNotification.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+UIKeyboardNotification.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+UIKeyboardNotification.swift"; sourceTree = "<group>"; };
-		4AAF24BB95964A47FF71115DCACE5CC1 /* ImagePicker-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ImagePicker-dummy.m"; sourceTree = "<group>"; };
-		4CEB26DB8656A60C8AE2B83EF56A1149 /* IQKeyboardManager+Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Debug.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Debug.swift"; sourceTree = "<group>"; };
-		4D0027E6314671B943C4497115466711 /* Storage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Storage.swift; path = "LanguageManager-iOS/Classes/Helpers/Storage.swift"; sourceTree = "<group>"; };
-		4DA62F8724EC161B523761C4D312EE6A /* IQBarButtonItemConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQBarButtonItemConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQBarButtonItemConfiguration.swift; sourceTree = "<group>"; };
-		4DB37A30323A7D2ED16581BA15B8351D /* IQTitleBarButtonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTitleBarButtonItem.swift; path = IQKeyboardManagerSwift/IQToolbar/IQTitleBarButtonItem.swift; sourceTree = "<group>"; };
-		4E8E62EE488350F66CC08D1D88AF14EE /* NBBottomSheet.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = NBBottomSheet.release.xcconfig; sourceTree = "<group>"; };
-		4EEEA55AC9C261C1EABE60EC57A5021B /* ImagePicker-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ImagePicker-Info.plist"; sourceTree = "<group>"; };
-		4F2207491E92F152C27D2B4A764A6A93 /* IQKeyboardManager+Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Deprecated.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Deprecated.swift"; sourceTree = "<group>"; };
-		507C1B0C545DAAFE25BB8DD789F224EF /* FSPagerView.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FSPagerView.release.xcconfig; sourceTree = "<group>"; };
-		50F1C0F59A45281CE2D310673AE0571F /* NBBottomSheet-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NBBottomSheet-prefix.pch"; sourceTree = "<group>"; };
-		545688259B1D4CD8A59AF3D7E0AFE7B9 /* IQScrollViewConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQScrollViewConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQScrollViewConfiguration.swift; sourceTree = "<group>"; };
-		54A9B08BB29EC7935F6A8F8ACD56BEB0 /* ImageGalleryLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryLayout.swift; path = Source/ImageGallery/ImageGalleryLayout.swift; sourceTree = "<group>"; };
+		3FD2850880C4A8033AED333F5DFAE328 /* ImagePicker-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ImagePicker-dummy.m"; sourceTree = "<group>"; };
+		400224F8C71E7053C79E8D5E509534F4 /* IQKeyboardListener.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardListener.swift; path = IQKeyboardManagerSwift/LIsteners/IQKeyboardListener.swift; sourceTree = "<group>"; };
+		419AB69B674D6C318AC58EE6D9AFF102 /* IQBarButtonItemConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQBarButtonItemConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQBarButtonItemConfiguration.swift; sourceTree = "<group>"; };
+		452182903F9A76184461CC377DB62A70 /* EPSignatureView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EPSignatureView.swift; path = Pod/Classes/EPSignatureView.swift; sourceTree = "<group>"; };
+		45865163BC96B7A2B481C17A0EC1D4F8 /* IQKeyboardManagerSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "IQKeyboardManagerSwift-prefix.pch"; sourceTree = "<group>"; };
+		45B232DE9D6710FE8BF7DC25C2C80333 /* NBBottomSheet.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = NBBottomSheet.debug.xcconfig; sourceTree = "<group>"; };
+		45C50C21EF30A0239628BA0E14464BCE /* video@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "video@3x.png"; path = "Images/video@3x.png"; sourceTree = "<group>"; };
+		467961922684B2F4C4295CBE0C9CD940 /* StackView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StackView.swift; path = Source/BottomView/StackView.swift; sourceTree = "<group>"; };
+		472E9223ECD1656D4CD5CD1BDC50D9CA /* ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist"; sourceTree = "<group>"; };
+		486835CC5D14C1EA193F8575CA89FDCC /* IQScrollViewConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQScrollViewConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQScrollViewConfiguration.swift; sourceTree = "<group>"; };
+		48FAE289F4B7A5D4D99BDB1F74A1C163 /* LanguageManager-iOS-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "LanguageManager-iOS-Info.plist"; sourceTree = "<group>"; };
+		49FC6FE3F43F76CA598D3253A1731EEB /* IQKeyboardManagerCompatible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardManagerCompatible.swift; path = IQKeyboardManagerSwift/IQKeyboardManagerCompatible/IQKeyboardManagerCompatible.swift; sourceTree = "<group>"; };
+		4B432B6773BE3F0B4A6976820602F07A /* UIView+Direction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Direction.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIView+Direction.swift"; sourceTree = "<group>"; };
+		4D01E52DE74EF3C733B94F1E045CCD77 /* String+Localiz.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Localiz.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/String+Localiz.swift"; sourceTree = "<group>"; };
+		4FE3DE7F264E30C392DCECA7921DAEF2 /* IQActiveConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQActiveConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQActiveConfiguration.swift; sourceTree = "<group>"; };
+		54323777101C6AB180A413C0B2DB23B9 /* NBBottomSheetController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetController.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetController.swift; sourceTree = "<group>"; };
 		56B28C4E9F718651E6E1B010F31566EB /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; };
-		5761D7B5C5A856ED4D8A03F284C8771F /* UIImageView+Direction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Direction.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIImageView+Direction.swift"; sourceTree = "<group>"; };
-		586B6FC37EB8231AC7C24C1CC2776384 /* UIView+Direction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Direction.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIView+Direction.swift"; sourceTree = "<group>"; };
-		5D646977F7C0DA29D63C4E18D9DD6630 /* video@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "video@3x.png"; path = "Images/video@3x.png"; sourceTree = "<group>"; };
-		5FF2B9AD02F97A175585504BA5B7F448 /* TopView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TopView.swift; path = Source/TopView/TopView.swift; sourceTree = "<group>"; };
-		615EB6B3844737F49004E6E4A8F968A0 /* DefaultsKeys.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultsKeys.swift; path = "LanguageManager-iOS/Classes/Constants/DefaultsKeys.swift"; sourceTree = "<group>"; };
+		56C1C453B74E770D4AC56A090051BCF5 /* EPSignatureViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = EPSignatureViewController.xib; path = Pod/Classes/EPSignatureViewController.xib; sourceTree = "<group>"; };
+		5A6291B42FA169A1C1919CB49B0B8509 /* IQTextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextView.swift; path = IQKeyboardManagerSwift/IQTextView/IQTextView.swift; sourceTree = "<group>"; };
+		5B1D47B8C43A0DA0A05A410655A28153 /* IQKeyboardManager+Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Debug.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Debug.swift"; sourceTree = "<group>"; };
+		5F8E6400E281B0FB397224FDE9690416 /* IQKeyboardManagerSwift-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "IQKeyboardManagerSwift-Info.plist"; sourceTree = "<group>"; };
+		619978A0C0036454C22A81173BAA5A6A /* IQUITableView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUITableView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUITableView+Additions.swift"; sourceTree = "<group>"; };
+		62160BE00E3966D4D52808B89DE0B1B3 /* IQNSArray+Sort.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQNSArray+Sort.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQNSArray+Sort.swift"; sourceTree = "<group>"; };
+		6224FD5F7C95061A57CAFA73995B3002 /* ImagePicker.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ImagePicker.debug.xcconfig; sourceTree = "<group>"; };
 		6473C16F43F7217C13AEA5FBA6C8247F /* LanguageManager_iOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = LanguageManager_iOS.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		65E35E2A8DCF85A60B0EF9389B0495AE /* NBBottomSheet-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "NBBottomSheet-umbrella.h"; sourceTree = "<group>"; };
-		664FCD8539D02C2C7ABBA15E9666F2B9 /* AUTO@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "AUTO@3x.png"; path = "Images/AUTO@3x.png"; sourceTree = "<group>"; };
-		689EF9768E3E18B833DD776EAD893408 /* ImageGalleryViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryViewCell.swift; path = Source/ImageGallery/ImageGalleryViewCell.swift; sourceTree = "<group>"; };
-		69FC816770553B761090561AE8707674 /* IQKeyboardInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardInfo.swift; path = IQKeyboardManagerSwift/LIsteners/Info/IQKeyboardInfo.swift; sourceTree = "<group>"; };
-		6C5B4DA5F338896C639DBDA08FCCC486 /* NBBottomSheetPresentationController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetPresentationController.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetPresentationController.swift; sourceTree = "<group>"; };
-		7136D2DF9E35BE04AE50612BF8809136 /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardReturnKeyHandler+TextFieldDelegate.swift"; path = "IQKeyboardManagerSwift/ReturnKeyHandler/IQKeyboardReturnKeyHandler+TextFieldDelegate.swift"; sourceTree = "<group>"; };
-		79655C283B54B5F907790F4E79C388EF /* IQUITextFieldView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUITextFieldView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUITextFieldView+Additions.swift"; sourceTree = "<group>"; };
+		6B5E1D310DD754E122DEEE009481A2D6 /* IQUIScrollView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIScrollView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUIScrollView+Additions.swift"; sourceTree = "<group>"; };
+		6F6826627BFA6A69002524426F8CFFB7 /* IQTextFieldViewListener.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextFieldViewListener.swift; path = IQKeyboardManagerSwift/LIsteners/IQTextFieldViewListener.swift; sourceTree = "<group>"; };
+		7488E11EF92CBFCB3965EA6F8020E701 /* ON@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "ON@3x.png"; path = "Images/ON@3x.png"; sourceTree = "<group>"; };
+		7927C464AC094A95C8B864DF6A0B1D06 /* UIImageView+Direction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Direction.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIImageView+Direction.swift"; sourceTree = "<group>"; };
 		798C61760B9BC4B07BC60D42FCC09855 /* Pods-MiniScanner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MiniScanner.release.xcconfig"; sourceTree = "<group>"; };
-		7A54F7427340E254B559EC1244CA2E45 /* FSPagerView-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "FSPagerView-dummy.m"; sourceTree = "<group>"; };
-		7BB12D707BA745ED62C48151519D0E76 /* IQKeyboardManagerSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = IQKeyboardManagerSwift.modulemap; sourceTree = "<group>"; };
+		7C9ABFFD091844286C2E85A20189BF7A /* IQKeyboardManagerSwift.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = IQKeyboardManagerSwift.debug.xcconfig; sourceTree = "<group>"; };
 		7CC191E7994C3C7161A6641B457C9166 /* Pods-MiniScanner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-MiniScanner.debug.xcconfig"; sourceTree = "<group>"; };
-		7F23D0E0AE3BDC7AE6A7D331A0FF5AF6 /* IQKeyboardManager+ToolbarActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+ToolbarActions.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+ToolbarActions.swift"; sourceTree = "<group>"; };
-		7F6DD614B85D0662209A3ADCFA367295 /* AssetManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssetManager.swift; path = Source/AssetManager.swift; sourceTree = "<group>"; };
-		8059AF588641259180B6DAD45BEF496B /* NBBottomSheetConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetConfiguration.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetConfiguration.swift; sourceTree = "<group>"; };
-		82E4B4BB461879C2730CD6E789150CB8 /* ImagePicker-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ImagePicker-prefix.pch"; sourceTree = "<group>"; };
-		831781174B420BA2000C5A20F9B1A155 /* IQActiveConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQActiveConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQActiveConfiguration.swift; sourceTree = "<group>"; };
-		842BA45676E86EFC650EFC7B33D1572F /* FSPagerViewCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPagerViewCell.swift; path = Sources/FSPagerViewCell.swift; sourceTree = "<group>"; };
-		8434491D5623794FFD75623AC5720E3C /* LanguageManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LanguageManager.swift; path = "LanguageManager-iOS/Classes/Main/LanguageManager.swift"; sourceTree = "<group>"; };
-		86D4965F304A9370159F8BEE0D0951D5 /* IQKeyboardManagerSwift.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = IQKeyboardManagerSwift.debug.xcconfig; sourceTree = "<group>"; };
-		88DFD4B8DC15592A7CD38D8AD9C01668 /* IQKeyboardManager+Toolbar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Toolbar.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Toolbar.swift"; sourceTree = "<group>"; };
+		8016BAC4075F40E70BE2133125B01BF5 /* Helper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Helper.swift; path = Source/Helper.swift; sourceTree = "<group>"; };
+		8147290C4A326DADC3F305533BD64023 /* IQKeyboardManagerSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "IQKeyboardManagerSwift-umbrella.h"; sourceTree = "<group>"; };
+		843CD6046BA80BCDF11AE4FAC807D29B /* cameraIcon@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "cameraIcon@3x.png"; path = "Images/cameraIcon@3x.png"; sourceTree = "<group>"; };
+		84969C2137D2629DFFC29942F8B97FEB /* ImageGalleryLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryLayout.swift; path = Source/ImageGallery/ImageGalleryLayout.swift; sourceTree = "<group>"; };
+		878EC7606D056CAB26A578762AF922D7 /* IQRootControllerConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQRootControllerConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQRootControllerConfiguration.swift; sourceTree = "<group>"; };
 		89194C84FD5E62D9D2C9F2157676FF5C /* Pods-MiniScanner-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MiniScanner-acknowledgements.plist"; sourceTree = "<group>"; };
-		891FABB9A51285F499148E921B1A8E24 /* FSPagerViewLayoutAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPagerViewLayoutAttributes.swift; path = Sources/FSPagerViewLayoutAttributes.swift; sourceTree = "<group>"; };
-		8A9AA0FBABA9E9EEF6521C23B2031158 /* IQToolbarConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQToolbarConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQToolbarConfiguration.swift; sourceTree = "<group>"; };
-		8B5D88BFE14997FA9B22FA4A4B8CD6DA /* IQTextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextView.swift; path = IQKeyboardManagerSwift/IQTextView/IQTextView.swift; sourceTree = "<group>"; };
-		8C6B2F7653C95633BB9449F87EB6DBD9 /* LanguageManager-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "LanguageManager-iOS.release.xcconfig"; sourceTree = "<group>"; };
+		8BA50CB662E7C23406F0B83501BA32D7 /* LanguageManager-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "LanguageManager-iOS.debug.xcconfig"; sourceTree = "<group>"; };
 		8D8069D3964814114ACEC3084C010B59 /* IQKeyboardManagerSwift.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = IQKeyboardManagerSwift.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
-		8EA72F0B0DD57B9D078AF8EFCE412455 /* ViewDirection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ViewDirection.swift; path = "LanguageManager-iOS/Classes/Constants/ViewDirection.swift"; sourceTree = "<group>"; };
-		8F9A6C68497A6CFFB3FAA52682750752 /* cameraIcon@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "cameraIcon@3x.png"; path = "Images/cameraIcon@3x.png"; sourceTree = "<group>"; };
-		9027793C7414B308134453884A6716FD /* ImagePicker.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ImagePicker.debug.xcconfig; sourceTree = "<group>"; };
-		90C7704EF389F83C731970D2CDF6595B /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Source/Configuration.swift; sourceTree = "<group>"; };
+		8E6FDE31134B7541747D1E89E52E225A /* IQUIView+IQKeyboardToolbarDeprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIView+IQKeyboardToolbarDeprecated.swift"; path = "IQKeyboardManagerSwift/IQToolbar/IQUIView+IQKeyboardToolbarDeprecated.swift"; sourceTree = "<group>"; };
+		8F0A5164AA0CCC729C8EA5166760BA9E /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardReturnKeyHandler+TextFieldDelegate.swift"; path = "IQKeyboardManagerSwift/ReturnKeyHandler/IQKeyboardReturnKeyHandler+TextFieldDelegate.swift"; sourceTree = "<group>"; };
+		8F3317C2A83E43FF75DFCFD3FAEB3669 /* IQKeyboardInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardInfo.swift; path = IQKeyboardManagerSwift/LIsteners/Info/IQKeyboardInfo.swift; sourceTree = "<group>"; };
+		8F84A913AFEF518DF42A997F74EC8260 /* BottomContainerView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BottomContainerView.swift; path = Source/BottomView/BottomContainerView.swift; sourceTree = "<group>"; };
+		9067705903BD2E8C3EC9BD8EBF709221 /* ImagePickerController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImagePickerController.swift; path = Source/ImagePickerController.swift; sourceTree = "<group>"; };
 		91BC4F27F2DA380ABC44B3609495F0E1 /* NBBottomSheet.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = NBBottomSheet.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		926EAAA6426204DE1DF8D36D2E13EA74 /* IQToolbar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQToolbar.swift; path = IQKeyboardManagerSwift/IQToolbar/IQToolbar.swift; sourceTree = "<group>"; };
-		92CEF8FFA7885B7EC96C4120D507A08F /* IQToolbarPlaceholderConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQToolbarPlaceholderConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQToolbarPlaceholderConfiguration.swift; sourceTree = "<group>"; };
+		92470A870676C63A27509F38301D521C /* IQUICollectionView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUICollectionView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUICollectionView+Additions.swift"; sourceTree = "<group>"; };
+		97037D70AD7F37FBCDB7561DA20D7D2D /* NBBottomSheetDismissalTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetDismissalTransition.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetDismissalTransition.swift; sourceTree = "<group>"; };
 		97AA160F23F0CBEDDAF212103E762FC7 /* ImagePicker.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ImagePicker.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
 		987CD19BC0CE18F2E00B0AD5ABF8670D /* ImagePicker.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ImagePicker.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		9A0A414944257050868C6C9F38FA10DF /* FSPagerView.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = FSPagerView.modulemap; sourceTree = "<group>"; };
-		9B35CF76304163C551A5E4B592066D0D /* IQUIViewController+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIViewController+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUIViewController+Additions.swift"; sourceTree = "<group>"; };
+		9AAA7A084DC8F453913C80DE1E243C39 /* LanguageManager-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "LanguageManager-iOS.release.xcconfig"; sourceTree = "<group>"; };
 		9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
-		9E44A8883A35E6A01365B1C682A1164D /* ConstraintsSetup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConstraintsSetup.swift; path = Source/Extensions/ConstraintsSetup.swift; sourceTree = "<group>"; };
-		A1BD1A58666D6C0FD408F4DB3ADC8107 /* IQKeyboardListener.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardListener.swift; path = IQKeyboardManagerSwift/LIsteners/IQKeyboardListener.swift; sourceTree = "<group>"; };
-		A230ED28736A611DEEC851620E6444DE /* IQKeyboardManager+Internal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Internal.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Internal.swift"; sourceTree = "<group>"; };
-		A2A1F3E9AD6E574C81576EFC109E4F56 /* focusIcon@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "focusIcon@3x.png"; path = "Images/focusIcon@3x.png"; sourceTree = "<group>"; };
-		A4D36302D2F7234AEEC28003C3244EB4 /* UIButton+Direction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Direction.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIButton+Direction.swift"; sourceTree = "<group>"; };
-		A60D99B014C4219B8F7BF725B9648E36 /* NBBottomSheetController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetController.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetController.swift; sourceTree = "<group>"; };
-		A7BA040D977C503D2A8C2D9BF404E21C /* EPSignature-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "EPSignature-umbrella.h"; sourceTree = "<group>"; };
-		A8A8D208D764CFAC89604E6813F1444E /* IQUIScrollView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIScrollView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUIScrollView+Additions.swift"; sourceTree = "<group>"; };
-		A8D2ABDB4E2F157885C7BEE654CF6FC4 /* IQKeyboardManagerSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "IQKeyboardManagerSwift-prefix.pch"; sourceTree = "<group>"; };
+		9DDA4537FCBE11326C1D65EA43B3CC6D /* DefaultsKeys.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultsKeys.swift; path = "LanguageManager-iOS/Classes/Constants/DefaultsKeys.swift"; sourceTree = "<group>"; };
+		9FC1B2AF5635D8020B43F30629EC2712 /* focusIcon@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "focusIcon@3x.png"; path = "Images/focusIcon@3x.png"; sourceTree = "<group>"; };
+		A0DA73612FA4F954FCE02EA0ADACE634 /* IQKeyboardManager+UITextFieldViewNotification.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+UITextFieldViewNotification.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+UITextFieldViewNotification.swift"; sourceTree = "<group>"; };
+		A100F9EA89810A00541755ECD7BBB307 /* IQTitleBarButtonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTitleBarButtonItem.swift; path = IQKeyboardManagerSwift/IQToolbar/IQTitleBarButtonItem.swift; sourceTree = "<group>"; };
+		A1229814968DD5876FBA87DDA81C5B8F /* IQKeyboardManager+Toolbar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Toolbar.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Toolbar.swift"; sourceTree = "<group>"; };
+		A12B5A63F2CB09B7D22B7E2F4A2210EB /* IQInvocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQInvocation.swift; path = IQKeyboardManagerSwift/IQToolbar/IQInvocation.swift; sourceTree = "<group>"; };
+		A353C25676960291A3718B5AFDB81A33 /* IQKeyboardManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardManager.swift; path = IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager.swift; sourceTree = "<group>"; };
+		A3B5F550C3AA900D117E22291DE5D67C /* IQToolbarPlaceholderConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQToolbarPlaceholderConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQToolbarPlaceholderConfiguration.swift; sourceTree = "<group>"; };
+		A532EFEAAE9EEAA7CFA7DF04C7E1808B /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = IQKeyboardManagerSwift/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
+		A72C2CB61DAC20DBF7210307C41485C5 /* NBBottomSheetConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetConfiguration.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetConfiguration.swift; sourceTree = "<group>"; };
 		A8E950A16D00F649C54FFB30F81D7842 /* IQKeyboardManagerSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = IQKeyboardManagerSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; };
-		AC43EDC562847626ACF7B4E93E5462EF /* IQKeyboardManagerConstants.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardManagerConstants.swift; path = IQKeyboardManagerSwift/Constants/IQKeyboardManagerConstants.swift; sourceTree = "<group>"; };
-		AC7F01FAC278F9B096CFFD78497206CF /* UIImage+NextPrevious.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImage+NextPrevious.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/UIImage+NextPrevious.swift"; sourceTree = "<group>"; };
-		AF61B6A70C39B0ACDA33B583642A26EE /* EPSignatureViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EPSignatureViewController.swift; path = Pod/Classes/EPSignatureViewController.swift; sourceTree = "<group>"; };
-		B021EB40B85B76049C30C2D063F0870D /* ButtonPicker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ButtonPicker.swift; path = Source/BottomView/ButtonPicker.swift; sourceTree = "<group>"; };
+		AB5F2D5DFB52DE92C94A23801BAC451C /* IQUIView+IQKeyboardToolbar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIView+IQKeyboardToolbar.swift"; path = "IQKeyboardManagerSwift/IQToolbar/IQUIView+IQKeyboardToolbar.swift"; sourceTree = "<group>"; };
+		AB94CC5B3F453AA0801700167152FCA1 /* IQKeyboardManager+Internal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Internal.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Internal.swift"; sourceTree = "<group>"; };
+		AC259076A4D444F235DABE44D7425021 /* ViewDirection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ViewDirection.swift; path = "LanguageManager-iOS/Classes/Constants/ViewDirection.swift"; sourceTree = "<group>"; };
+		AD71C20FAD4FE7E08FA8091857A2FDCB /* NBBottomSheet-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "NBBottomSheet-dummy.m"; sourceTree = "<group>"; };
 		B2968141E72EA49CC006DD4020E3386D /* Pods-MiniScanner-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-MiniScanner-frameworks.sh"; sourceTree = "<group>"; };
-		B3FCB83859385DB3694F04D44B40FE18 /* EPSignature-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "EPSignature-dummy.m"; sourceTree = "<group>"; };
-		B5A83B1987A0D179A3EAE24B6183FF37 /* ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist"; sourceTree = "<group>"; };
-		B638343F1BC71A9A9CD3A6D6CA749DC7 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = IQKeyboardManagerSwift/PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
-		B6C332B0108C87436290C293E043023A /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardReturnKeyHandler+TextViewDelegate.swift"; path = "IQKeyboardManagerSwift/ReturnKeyHandler/IQKeyboardReturnKeyHandler+TextViewDelegate.swift"; sourceTree = "<group>"; };
-		B700D2C4CED5ED22050429C7997CF1FE /* IQKeyboardConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardConfiguration.swift; path = IQKeyboardManagerSwift/Configuration/IQKeyboardConfiguration.swift; sourceTree = "<group>"; };
-		B7F2D378ED96DA779D964000E6DECED9 /* FSPagerViewObjcCompat.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FSPagerViewObjcCompat.m; path = Sources/FSPagerViewObjcCompat.m; sourceTree = "<group>"; };
-		B909C40450F7213C478AE50F7E2D18A9 /* FSPageViewTransformer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPageViewTransformer.swift; path = Sources/FSPageViewTransformer.swift; sourceTree = "<group>"; };
-		BA1D8FBFBA4E4BE6EC7D55255DE3EFBC /* VideoInfoView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoInfoView.swift; path = Source/ImageGallery/VideoInfoView.swift; sourceTree = "<group>"; };
-		BA790DC54E7A009FDDBBC07056093C41 /* IQKeyboardManagerSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "IQKeyboardManagerSwift-dummy.m"; sourceTree = "<group>"; };
-		BAA72CEA94002E53D03EC7DCC0E59413 /* LocationManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LocationManager.swift; path = Source/LocationManager.swift; sourceTree = "<group>"; };
-		BC0F20E077483A5E6339C4C6304E6507 /* ON@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "ON@3x.png"; path = "Images/ON@3x.png"; sourceTree = "<group>"; };
-		BE1348270A5A7F3FDEFAC32D8E89686A /* IQUIView+Hierarchy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIView+Hierarchy.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift"; sourceTree = "<group>"; };
-		BE559964BD58119769FB19BB95144A6A /* EPSignatureView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EPSignatureView.swift; path = Pod/Classes/EPSignatureView.swift; sourceTree = "<group>"; };
-		C1DC2A0ED79E1179E28CE75BFECCDA82 /* IQNSArray+Sort.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQNSArray+Sort.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQNSArray+Sort.swift"; sourceTree = "<group>"; };
+		B4E6D4AE8BCE2646794F28F0E24A08D1 /* UIButton+Direction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Direction.swift"; path = "LanguageManager-iOS/Classes/Helpers/Extensions/UIButton+Direction.swift"; sourceTree = "<group>"; };
+		B5598E57D63117C1B54ADBB7A187B232 /* IQUIViewController+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIViewController+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUIViewController+Additions.swift"; sourceTree = "<group>"; };
+		B5EDE1D4720CA7A048A32667F968ED10 /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardReturnKeyHandler+TextViewDelegate.swift"; path = "IQKeyboardManagerSwift/ReturnKeyHandler/IQKeyboardReturnKeyHandler+TextViewDelegate.swift"; sourceTree = "<group>"; };
+		B6C5E34F15E4BBDA3480406FF35C1903 /* IQKeyboardManager+Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+Deprecated.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+Deprecated.swift"; sourceTree = "<group>"; };
+		B710E28309BEA5C002164BD008CFB6C0 /* ImagePicker-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ImagePicker-prefix.pch"; sourceTree = "<group>"; };
+		B71FD6B5A8AC626259BE6B97226F81FB /* TopView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TopView.swift; path = Source/TopView/TopView.swift; sourceTree = "<group>"; };
+		B7EA56260324998EC43B70CD2092E1FB /* ImageStack.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageStack.swift; path = Source/BottomView/ImageStack.swift; sourceTree = "<group>"; };
+		BF809679D3CFFBC72878EC9BFEA90F5E /* LanguageManager-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "LanguageManager-iOS-dummy.m"; sourceTree = "<group>"; };
+		C1A5BF586C35098EC908E7870B407170 /* EPSignatureViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EPSignatureViewController.swift; path = Pod/Classes/EPSignatureViewController.swift; sourceTree = "<group>"; };
+		C2B28EA5FE2C09FCEF4DF47D34186FB7 /* Languages.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Languages.swift; path = "LanguageManager-iOS/Classes/Constants/Languages.swift"; sourceTree = "<group>"; };
+		C5054DCBC2013F1894FA0EE7D6D99005 /* ImageGalleryViewDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryViewDataSource.swift; path = Source/ImageGallery/ImageGalleryViewDataSource.swift; sourceTree = "<group>"; };
 		C54FCF3DBFE97D4603C0EACF18FA0D04 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
-		C6214DC5E72470BE3105210D7465B90A /* selectedImageGallery@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "selectedImageGallery@3x.png"; path = "Images/selectedImageGallery@3x.png"; sourceTree = "<group>"; };
-		C698FD30D248D272DAE2F242C5D62EA2 /* NBConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBConfiguration.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBConfiguration.swift; sourceTree = "<group>"; };
-		C6F5B0BFC63CD2F3B0DF56912D4F54E8 /* IQUITableView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUITableView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUITableView+Additions.swift"; sourceTree = "<group>"; };
-		C94B5C4512123F377D23B93F1FA23097 /* IQKeyboardManagerSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "IQKeyboardManagerSwift-umbrella.h"; sourceTree = "<group>"; };
-		CA39A57EEAD9575350DCFB2377E01DD9 /* NBBottomSheet-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "NBBottomSheet-Info.plist"; sourceTree = "<group>"; };
-		CACF959977B91C5F65F381B36C452B6D /* Languages.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Languages.swift; path = "LanguageManager-iOS/Classes/Constants/Languages.swift"; sourceTree = "<group>"; };
-		CE58805A3FAC71C6A5782C1B1BB08069 /* IQPlaceholderable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQPlaceholderable.swift; path = IQKeyboardManagerSwift/IQTextView/IQPlaceholderable.swift; sourceTree = "<group>"; };
-		CE5D7D46BA438C135B812D0C145CBE6C /* ImageGalleryView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryView.swift; path = Source/ImageGallery/ImageGalleryView.swift; sourceTree = "<group>"; };
-		D2E621AE82FB76EEF79C8A2D0102AAF7 /* EPSignature-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "EPSignature-prefix.pch"; sourceTree = "<group>"; };
-		D4C85B9AE116359EBFD1959406B32999 /* IQUICollectionView+Additions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUICollectionView+Additions.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUICollectionView+Additions.swift"; sourceTree = "<group>"; };
-		D5F711A94EB088CF457F893E60C568B4 /* FSPageViewLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPageViewLayout.swift; path = Sources/FSPageViewLayout.swift; sourceTree = "<group>"; };
-		D6D6492D4AE05CD36F797199E44F1805 /* FSPageControl.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPageControl.swift; path = Sources/FSPageControl.swift; sourceTree = "<group>"; };
-		D8CA0DD8AA6C4033E65CAA6FE83870F1 /* StackView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StackView.swift; path = Source/BottomView/StackView.swift; sourceTree = "<group>"; };
-		DA4B76FEC2A143DA2EFFC6D3F7FB7B5A /* LanguageManager-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "LanguageManager-iOS-dummy.m"; sourceTree = "<group>"; };
-		DB2BF5C6F33D3DA91B2EB11B23EEE3FE /* Helper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Helper.swift; path = Source/Helper.swift; sourceTree = "<group>"; };
-		DBE740FF0A3373F56E7AF2A4000D6D8C /* ImagePicker.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ImagePicker.release.xcconfig; sourceTree = "<group>"; };
-		DD48D4FC5BD3A99772F4FE6FDB643898 /* ImagePicker-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ImagePicker-umbrella.h"; sourceTree = "<group>"; };
-		DE7235727A466A9B7BF8342CC42C4B91 /* IQPreviousNextView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQPreviousNextView.swift; path = IQKeyboardManagerSwift/IQToolbar/IQPreviousNextView.swift; sourceTree = "<group>"; };
-		E1DF93E2C3692DABCE7DF9D4735D2645 /* NBBottomSheetDismissalTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetDismissalTransition.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetDismissalTransition.swift; sourceTree = "<group>"; };
-		E21781AECFBC7371F2118155ACE5C3C7 /* IQKeyboardReturnKeyHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardReturnKeyHandler.swift; path = IQKeyboardManagerSwift/ReturnKeyHandler/IQKeyboardReturnKeyHandler.swift; sourceTree = "<group>"; };
-		E3703BDC76205E7D102F2BF32B3D8ACC /* FSPagerView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FSPagerView.swift; path = Sources/FSPagerView.swift; sourceTree = "<group>"; };
-		E3DA260DCB001D3DF844896311887A56 /* EPSignature.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = EPSignature.release.xcconfig; sourceTree = "<group>"; };
-		E6049E937091EF3FC850CDC4BEF9B925 /* EPSignature.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = EPSignature.modulemap; sourceTree = "<group>"; };
-		E62A4882567E433682E9D7925C2BDA73 /* ImageGalleryViewDataSource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageGalleryViewDataSource.swift; path = Source/ImageGallery/ImageGalleryViewDataSource.swift; sourceTree = "<group>"; };
-		E711836675BD919C63BEB7A0930B72B4 /* NBBottomSheet.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NBBottomSheet.h; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheet.h; sourceTree = "<group>"; };
-		EA5483FEE1B87041C4751EA1D4F3EF54 /* IQKeyboardManagerCompatible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardManagerCompatible.swift; path = IQKeyboardManagerSwift/IQKeyboardManagerCompatible/IQKeyboardManagerCompatible.swift; sourceTree = "<group>"; };
-		ED50ABC97C7298629CFFE2835E5645AE /* LanguageManager-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "LanguageManager-iOS-umbrella.h"; sourceTree = "<group>"; };
+		C6AEEFA5613E0B7BF8F6425A154D6EC9 /* NBBottomSheet.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NBBottomSheet.h; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheet.h; sourceTree = "<group>"; };
+		CD46A963E6CCE8CD900BA8A7331D7D8C /* NBConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBConfiguration.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBConfiguration.swift; sourceTree = "<group>"; };
+		CD55E5F51909EE297A2AC039F257AF6F /* EPSignature-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "EPSignature-prefix.pch"; sourceTree = "<group>"; };
+		D2DB0BCD57E720CE97C1C3CE74B75024 /* IQKeyboardManager+UIKeyboardNotification.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+UIKeyboardNotification.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+UIKeyboardNotification.swift"; sourceTree = "<group>"; };
+		D3DC4A4D35E057E5F76427C838E3E495 /* IQPlaceholderable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQPlaceholderable.swift; path = IQKeyboardManagerSwift/IQTextView/IQPlaceholderable.swift; sourceTree = "<group>"; };
+		D4270A3541F22B881BD953A68F6E73F9 /* IQKeyboardManagerSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "IQKeyboardManagerSwift-dummy.m"; sourceTree = "<group>"; };
+		D4648CA1088D11129C0BDD49912D6FAB /* ButtonPicker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ButtonPicker.swift; path = Source/BottomView/ButtonPicker.swift; sourceTree = "<group>"; };
+		D55EBF017F6625B593286F47CFEB1FA3 /* IQUIView+Hierarchy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQUIView+Hierarchy.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift"; sourceTree = "<group>"; };
+		D9651F46100B3C105EE27B92C1DFFCEC /* IQKeyboardManager+ToolbarActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "IQKeyboardManager+ToolbarActions.swift"; path = "IQKeyboardManagerSwift/IQKeyboardManager/IQKeyboardManager+ToolbarActions.swift"; sourceTree = "<group>"; };
+		D9F19506C84032240A21541F9EFCA895 /* IQKeyboardManagerConstants.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardManagerConstants.swift; path = IQKeyboardManagerSwift/Constants/IQKeyboardManagerConstants.swift; sourceTree = "<group>"; };
+		DC9A64B83C916D4FC5C9CE722E697819 /* LanguageManager-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "LanguageManager-iOS-prefix.pch"; sourceTree = "<group>"; };
+		DCB418B4C0BF451B734FFA48AAD9ADF6 /* Storage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Storage.swift; path = "LanguageManager-iOS/Classes/Helpers/Storage.swift"; sourceTree = "<group>"; };
+		E1D47766C4492BAF84E069DF6E3DD758 /* NBBottomSheetPresentationController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetPresentationController.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetPresentationController.swift; sourceTree = "<group>"; };
+		E24E6B8D32E615F0FEF0A78F3C181A09 /* EPSignature-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "EPSignature-dummy.m"; sourceTree = "<group>"; };
+		E34B4735C7461EBF9AEEC896DEB27C33 /* IQTextFieldViewInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQTextFieldViewInfo.swift; path = IQKeyboardManagerSwift/LIsteners/Info/IQTextFieldViewInfo.swift; sourceTree = "<group>"; };
+		E68A22DD9E65EF800882452842690AE1 /* NBBottomSheet.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = NBBottomSheet.modulemap; sourceTree = "<group>"; };
+		E7F7A4EA7A5659C2F78D04CC218E1440 /* NBBottomSheetTransitioningDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NBBottomSheetTransitioningDelegate.swift; path = NBBottomSheet/NBBottomSheet/Sources/NBBottomSheetTransitioningDelegate.swift; sourceTree = "<group>"; };
+		E91F93F84E9AB640A2333FBBF6CCB877 /* EPSignature.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = EPSignature.debug.xcconfig; sourceTree = "<group>"; };
+		E9E511B375EE87D380DE8D4B00AE28F4 /* AssetManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssetManager.swift; path = Source/AssetManager.swift; sourceTree = "<group>"; };
+		EB8D9081C43164E02C60F65C02702B8E /* AUTO@3x.png */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = image.png; name = "AUTO@3x.png"; path = "Images/AUTO@3x.png"; sourceTree = "<group>"; };
+		EC2ECE9C7A88988A534C8F7590F3AB64 /* CameraView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CameraView.swift; path = Source/CameraView/CameraView.swift; sourceTree = "<group>"; };
+		EC4B66ABF37EFD118BC08264BBCA6461 /* IQKeyboardReturnKeyHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQKeyboardReturnKeyHandler.swift; path = IQKeyboardManagerSwift/ReturnKeyHandler/IQKeyboardReturnKeyHandler.swift; sourceTree = "<group>"; };
 		ED8E7C0ED656254925E918D5509B655C /* Pods-MiniScanner-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-MiniScanner-Info.plist"; sourceTree = "<group>"; };
-		EE009617DB5A966C6E58EFC97D17875C /* EPSignature.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = EPSignature.debug.xcconfig; sourceTree = "<group>"; };
-		F047971CD665BC407A8DAA32AD3A9B98 /* FSPagerViewObjcCompat.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FSPagerViewObjcCompat.h; path = Sources/FSPagerViewObjcCompat.h; sourceTree = "<group>"; };
 		F3DF46AD6E25D68DB361974528992221 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; };
-		FD60805FB0B777848E7DD77214586E88 /* FSPagerView.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FSPagerView.debug.xcconfig; sourceTree = "<group>"; };
+		F76805C9416BA1FC318E025ACA3B95EF /* IQToolbar.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQToolbar.swift; path = IQKeyboardManagerSwift/IQToolbar/IQToolbar.swift; sourceTree = "<group>"; };
+		F8292FC683D8C22C77C5F637AF2836FA /* LanguageManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LanguageManager.swift; path = "LanguageManager-iOS/Classes/Main/LanguageManager.swift"; sourceTree = "<group>"; };
+		F88000230AEFE1CF1FC184347AAE598B /* IQBarButtonItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IQBarButtonItem.swift; path = IQKeyboardManagerSwift/IQToolbar/IQBarButtonItem.swift; sourceTree = "<group>"; };
+		FAE9E39FF0684DBEA572BB783B3A18F7 /* IQKeyboardManagerSwift.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = IQKeyboardManagerSwift.release.xcconfig; sourceTree = "<group>"; };
+		FC40942321CA219791F79BDB4C72DA52 /* LanguageManager-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "LanguageManager-iOS.modulemap"; sourceTree = "<group>"; };
+		FDF5381B2554B2BB1D7949E3B9A7DF79 /* ImagePicker-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ImagePicker-umbrella.h"; sourceTree = "<group>"; };
+		FEB8E045AED5393DCC7FA1C76AB59AB8 /* UIImage+NextPrevious.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImage+NextPrevious.swift"; path = "IQKeyboardManagerSwift/UIKitExtensions/UIImage+NextPrevious.swift"; sourceTree = "<group>"; };
 /* End PBXFileReference section */
 
 /* Begin PBXFrameworksBuildPhase section */
+		1F8DF3016F5E08F65F63559E2A2A827B /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
 		2067457DB9BF3FC9BFE99C90B602174A /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
@@ -389,26 +359,26 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		4D23CB6E5CEA9796267913468D4A3CD3 /* Frameworks */ = {
+		356D6AE3CB46F510D123D125D9B58B7C /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				5D35C19C362961F919BE9820991D761E /* Foundation.framework in Frameworks */,
+				8AE718666177B657AE0BBD08AF829DD1 /* Foundation.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		60A6157C9520B77A0217CF22A787E99D /* Frameworks */ = {
+		4D23CB6E5CEA9796267913468D4A3CD3 /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				5D35C19C362961F919BE9820991D761E /* Foundation.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		7AF0B4E0EB5D8A901728672A5277DAFC /* Frameworks */ = {
+		8D97E7F0E48EF9F505EED4D818710D20 /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				14638F89550DD287F122C4C8968289F4 /* Foundation.framework in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -429,41 +399,9 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		CE9AC41D181266461331A2C974AEA95B /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		E5ACBBCF353041B05D869DB1467D16B1 /* Frameworks */ = {
-			isa = PBXFrameworksBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				7399F0854271981516AA79727A0A06C8 /* Foundation.framework in Frameworks */,
-				2E4A914423BA1B263C96C3BBC43E2245 /* UIKit.framework in Frameworks */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
-		0113FD3C8FD8AA93BDC06466006587F3 /* NBBottomSheet */ = {
-			isa = PBXGroup;
-			children = (
-				E711836675BD919C63BEB7A0930B72B4 /* NBBottomSheet.h */,
-				8059AF588641259180B6DAD45BEF496B /* NBBottomSheetConfiguration.swift */,
-				A60D99B014C4219B8F7BF725B9648E36 /* NBBottomSheetController.swift */,
-				E1DF93E2C3692DABCE7DF9D4735D2645 /* NBBottomSheetDismissalTransition.swift */,
-				6C5B4DA5F338896C639DBDA08FCCC486 /* NBBottomSheetPresentationController.swift */,
-				3AA92C612F872EADC2BC40A15E01DB23 /* NBBottomSheetPresentationTransition.swift */,
-				1BB9A00426C7107F694592F19527BE69 /* NBBottomSheetTransitioningDelegate.swift */,
-				C698FD30D248D272DAE2F242C5D62EA2 /* NBConfiguration.swift */,
-				A7F75D63C62A3641741549AB252E760C /* Support Files */,
-			);
-			path = NBBottomSheet;
-			sourceTree = "<group>";
-		};
 		0285214F24466DADA9DB9AC0EF8966F0 /* iOS */ = {
 			isa = PBXGroup;
 			children = (
@@ -476,129 +414,175 @@
 			name = iOS;
 			sourceTree = "<group>";
 		};
-		033ACCB632D94A95AEEF9DCA045558CA /* Resources */ = {
+		0B10F170B5D638262F3C7F41888F7AC7 /* Resources */ = {
 			isa = PBXGroup;
 			children = (
-				2D93C4B3BEDE27E7A936E76984B03C35 /* EPSignatureViewController.xib */,
+				EB8D9081C43164E02C60F65C02702B8E /* AUTO@3x.png */,
+				843CD6046BA80BCDF11AE4FAC807D29B /* cameraIcon@3x.png */,
+				9FC1B2AF5635D8020B43F30629EC2712 /* focusIcon@3x.png */,
+				18CC4F437D7A0F3454C4F89BD6CE0AEC /* OFF@3x.png */,
+				7488E11EF92CBFCB3965EA6F8020E701 /* ON@3x.png */,
+				081BAFFE15D81F33E77489E60A036BE7 /* selectedImageGallery@3x.png */,
+				45C50C21EF30A0239628BA0E14464BCE /* video@3x.png */,
 			);
 			name = Resources;
 			sourceTree = "<group>";
 		};
-		14228F2D01F944CCB04C42A76EB1DBBB /* Support Files */ = {
+		1377F47D0ECC009D7BEFB14769F14316 /* ImagePicker */ = {
+			isa = PBXGroup;
+			children = (
+				E9E511B375EE87D380DE8D4B00AE28F4 /* AssetManager.swift */,
+				8F84A913AFEF518DF42A997F74EC8260 /* BottomContainerView.swift */,
+				D4648CA1088D11129C0BDD49912D6FAB /* ButtonPicker.swift */,
+				297D96869095AA06F276F3DA5DD575B7 /* CameraMan.swift */,
+				EC2ECE9C7A88988A534C8F7590F3AB64 /* CameraView.swift */,
+				2A6AE173040683BAF2BF0ACE7CB13A0A /* Configuration.swift */,
+				290501CF6F70FA1835207284AF05BEE5 /* ConstraintsSetup.swift */,
+				8016BAC4075F40E70BE2133125B01BF5 /* Helper.swift */,
+				84969C2137D2629DFFC29942F8B97FEB /* ImageGalleryLayout.swift */,
+				21D53725C7625527BF97643CF7655C26 /* ImageGalleryView.swift */,
+				2AC4CEA5F2332B5B286CA6B73D2643EF /* ImageGalleryViewCell.swift */,
+				C5054DCBC2013F1894FA0EE7D6D99005 /* ImageGalleryViewDataSource.swift */,
+				9067705903BD2E8C3EC9BD8EBF709221 /* ImagePickerController.swift */,
+				B7EA56260324998EC43B70CD2092E1FB /* ImageStack.swift */,
+				1D01404D467A420F82D2829CE6CD8BB4 /* LocationManager.swift */,
+				467961922684B2F4C4295CBE0C9CD940 /* StackView.swift */,
+				B71FD6B5A8AC626259BE6B97226F81FB /* TopView.swift */,
+				02E924FDDE7F7B51AEC552C94D9C9AD6 /* VideoInfoView.swift */,
+				0B10F170B5D638262F3C7F41888F7AC7 /* Resources */,
+				69769D414834BD844C659CFA8A148FDF /* Support Files */,
+			);
+			path = ImagePicker;
+			sourceTree = "<group>";
+		};
+		1CD1A4CC34821855EE0B47C1DB7536BD /* LanguageManager-iOS */ = {
+			isa = PBXGroup;
+			children = (
+				9DDA4537FCBE11326C1D65EA43B3CC6D /* DefaultsKeys.swift */,
+				F8292FC683D8C22C77C5F637AF2836FA /* LanguageManager.swift */,
+				C2B28EA5FE2C09FCEF4DF47D34186FB7 /* Languages.swift */,
+				DCB418B4C0BF451B734FFA48AAD9ADF6 /* Storage.swift */,
+				4D01E52DE74EF3C733B94F1E045CCD77 /* String+Localiz.swift */,
+				B4E6D4AE8BCE2646794F28F0E24A08D1 /* UIButton+Direction.swift */,
+				7927C464AC094A95C8B864DF6A0B1D06 /* UIImageView+Direction.swift */,
+				4B432B6773BE3F0B4A6976820602F07A /* UIView+Direction.swift */,
+				252B706186B99322E0DA5829FCC7D43C /* UIView+Swizzling.swift */,
+				AC259076A4D444F235DABE44D7425021 /* ViewDirection.swift */,
+				4B36B2F6BD2CAF18A7FFFF0D7E1E84E6 /* Support Files */,
+			);
+			path = "LanguageManager-iOS";
+			sourceTree = "<group>";
+		};
+		26BC96ABCD3829D81C157FA2F5CD0DCE /* Support Files */ = {
 			isa = PBXGroup;
 			children = (
-				085D4171A3F780C04EFB71FBC8E635E1 /* LanguageManager-iOS.modulemap */,
-				DA4B76FEC2A143DA2EFFC6D3F7FB7B5A /* LanguageManager-iOS-dummy.m */,
-				13CD760B3298D3E6B007FC21AEFDEF16 /* LanguageManager-iOS-Info.plist */,
-				4138C0C249C44F4ED4EF526B81270B66 /* LanguageManager-iOS-prefix.pch */,
-				ED50ABC97C7298629CFFE2835E5645AE /* LanguageManager-iOS-umbrella.h */,
-				2EEF70A7586548C9681199386735B949 /* LanguageManager-iOS.debug.xcconfig */,
-				8C6B2F7653C95633BB9449F87EB6DBD9 /* LanguageManager-iOS.release.xcconfig */,
+				3D666C16AFD99E3736270D569B5DE2F1 /* EPSignature.modulemap */,
+				E24E6B8D32E615F0FEF0A78F3C181A09 /* EPSignature-dummy.m */,
+				1DA09D0759A4DDF814A83483F582ADB1 /* EPSignature-Info.plist */,
+				CD55E5F51909EE297A2AC039F257AF6F /* EPSignature-prefix.pch */,
+				0A36BA6D882CE68172CAE63D99BCB5BA /* EPSignature-umbrella.h */,
+				E91F93F84E9AB640A2333FBBF6CCB877 /* EPSignature.debug.xcconfig */,
+				2006321B115FD55474FD1B985C1979FA /* EPSignature.release.xcconfig */,
 			);
 			name = "Support Files";
-			path = "../Target Support Files/LanguageManager-iOS";
+			path = "../Target Support Files/EPSignature";
 			sourceTree = "<group>";
 		};
-		159345AC740753E09FF1E49D7B342203 /* Resources */ = {
+		32620674ED381C186389FA1D871AFD24 /* NBBottomSheet */ = {
 			isa = PBXGroup;
 			children = (
-				664FCD8539D02C2C7ABBA15E9666F2B9 /* AUTO@3x.png */,
-				8F9A6C68497A6CFFB3FAA52682750752 /* cameraIcon@3x.png */,
-				A2A1F3E9AD6E574C81576EFC109E4F56 /* focusIcon@3x.png */,
-				2E2B400DD678EA303FAFFBEF32CBCA41 /* OFF@3x.png */,
-				BC0F20E077483A5E6339C4C6304E6507 /* ON@3x.png */,
-				C6214DC5E72470BE3105210D7465B90A /* selectedImageGallery@3x.png */,
-				5D646977F7C0DA29D63C4E18D9DD6630 /* video@3x.png */,
+				C6AEEFA5613E0B7BF8F6425A154D6EC9 /* NBBottomSheet.h */,
+				A72C2CB61DAC20DBF7210307C41485C5 /* NBBottomSheetConfiguration.swift */,
+				54323777101C6AB180A413C0B2DB23B9 /* NBBottomSheetController.swift */,
+				97037D70AD7F37FBCDB7561DA20D7D2D /* NBBottomSheetDismissalTransition.swift */,
+				E1D47766C4492BAF84E069DF6E3DD758 /* NBBottomSheetPresentationController.swift */,
+				00B378319A98BB422CBDBE14796C501A /* NBBottomSheetPresentationTransition.swift */,
+				E7F7A4EA7A5659C2F78D04CC218E1440 /* NBBottomSheetTransitioningDelegate.swift */,
+				CD46A963E6CCE8CD900BA8A7331D7D8C /* NBConfiguration.swift */,
+				82B9E590AF4CA104F25BE686066D17D4 /* Support Files */,
 			);
-			name = Resources;
+			path = NBBottomSheet;
 			sourceTree = "<group>";
 		};
-		2524B6CA73749FE91A5B77026AB9E48B /* Support Files */ = {
+		3EA95E4CF3A010D9796C8FD8B665C566 /* Support Files */ = {
 			isa = PBXGroup;
 			children = (
-				7BB12D707BA745ED62C48151519D0E76 /* IQKeyboardManagerSwift.modulemap */,
-				BA790DC54E7A009FDDBBC07056093C41 /* IQKeyboardManagerSwift-dummy.m */,
-				01FB3E845976BA7356CB95994A0420CD /* IQKeyboardManagerSwift-Info.plist */,
-				A8D2ABDB4E2F157885C7BEE654CF6FC4 /* IQKeyboardManagerSwift-prefix.pch */,
-				C94B5C4512123F377D23B93F1FA23097 /* IQKeyboardManagerSwift-umbrella.h */,
-				86D4965F304A9370159F8BEE0D0951D5 /* IQKeyboardManagerSwift.debug.xcconfig */,
-				04420AA069E60E2676B1C8145D489AFE /* IQKeyboardManagerSwift.release.xcconfig */,
-				B5A83B1987A0D179A3EAE24B6183FF37 /* ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist */,
+				32CC609D1546AF3789419217412783D0 /* IQKeyboardManagerSwift.modulemap */,
+				D4270A3541F22B881BD953A68F6E73F9 /* IQKeyboardManagerSwift-dummy.m */,
+				5F8E6400E281B0FB397224FDE9690416 /* IQKeyboardManagerSwift-Info.plist */,
+				45865163BC96B7A2B481C17A0EC1D4F8 /* IQKeyboardManagerSwift-prefix.pch */,
+				8147290C4A326DADC3F305533BD64023 /* IQKeyboardManagerSwift-umbrella.h */,
+				7C9ABFFD091844286C2E85A20189BF7A /* IQKeyboardManagerSwift.debug.xcconfig */,
+				FAE9E39FF0684DBEA572BB783B3A18F7 /* IQKeyboardManagerSwift.release.xcconfig */,
+				472E9223ECD1656D4CD5CD1BDC50D9CA /* ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist */,
 			);
 			name = "Support Files";
 			path = "../Target Support Files/IQKeyboardManagerSwift";
 			sourceTree = "<group>";
 		};
-		26A3C923FF2FC3BF84BADEC1E731C9D1 /* Support Files */ = {
+		4A4B14A5B6B233355F4F15CA6F41639D /* EPSignature */ = {
 			isa = PBXGroup;
 			children = (
-				E6049E937091EF3FC850CDC4BEF9B925 /* EPSignature.modulemap */,
-				B3FCB83859385DB3694F04D44B40FE18 /* EPSignature-dummy.m */,
-				3C28E959FA9C6343351C3EA1ED606EBA /* EPSignature-Info.plist */,
-				D2E621AE82FB76EEF79C8A2D0102AAF7 /* EPSignature-prefix.pch */,
-				A7BA040D977C503D2A8C2D9BF404E21C /* EPSignature-umbrella.h */,
-				EE009617DB5A966C6E58EFC97D17875C /* EPSignature.debug.xcconfig */,
-				E3DA260DCB001D3DF844896311887A56 /* EPSignature.release.xcconfig */,
+				2E9D8E28679896AEA1627BA66F8580C2 /* EPExtensions.swift */,
+				452182903F9A76184461CC377DB62A70 /* EPSignatureView.swift */,
+				C1A5BF586C35098EC908E7870B407170 /* EPSignatureViewController.swift */,
+				A2352D8C906BE3FB6FAD9C1888ABF323 /* Resources */,
+				26BC96ABCD3829D81C157FA2F5CD0DCE /* Support Files */,
 			);
-			name = "Support Files";
-			path = "../Target Support Files/EPSignature";
+			path = EPSignature;
 			sourceTree = "<group>";
 		};
-		2A17FA4F601F6E648A9D9E4A00514B43 /* FSPagerView */ = {
+		4B36B2F6BD2CAF18A7FFFF0D7E1E84E6 /* Support Files */ = {
 			isa = PBXGroup;
 			children = (
-				D6D6492D4AE05CD36F797199E44F1805 /* FSPageControl.swift */,
-				3E9452E6ADBDB9FF5D00CEDC3ED637F3 /* FSPagerCollectionView.swift */,
-				E3703BDC76205E7D102F2BF32B3D8ACC /* FSPagerView.swift */,
-				842BA45676E86EFC650EFC7B33D1572F /* FSPagerViewCell.swift */,
-				891FABB9A51285F499148E921B1A8E24 /* FSPagerViewLayoutAttributes.swift */,
-				F047971CD665BC407A8DAA32AD3A9B98 /* FSPagerViewObjcCompat.h */,
-				B7F2D378ED96DA779D964000E6DECED9 /* FSPagerViewObjcCompat.m */,
-				D5F711A94EB088CF457F893E60C568B4 /* FSPageViewLayout.swift */,
-				B909C40450F7213C478AE50F7E2D18A9 /* FSPageViewTransformer.swift */,
-				3012AAA80F07B88F99FF98BFC49DEB12 /* Support Files */,
-			);
-			path = FSPagerView;
+				FC40942321CA219791F79BDB4C72DA52 /* LanguageManager-iOS.modulemap */,
+				BF809679D3CFFBC72878EC9BFEA90F5E /* LanguageManager-iOS-dummy.m */,
+				48FAE289F4B7A5D4D99BDB1F74A1C163 /* LanguageManager-iOS-Info.plist */,
+				DC9A64B83C916D4FC5C9CE722E697819 /* LanguageManager-iOS-prefix.pch */,
+				3510141CBBD30B465F757E0A8E2B1097 /* LanguageManager-iOS-umbrella.h */,
+				8BA50CB662E7C23406F0B83501BA32D7 /* LanguageManager-iOS.debug.xcconfig */,
+				9AAA7A084DC8F453913C80DE1E243C39 /* LanguageManager-iOS.release.xcconfig */,
+			);
+			name = "Support Files";
+			path = "../Target Support Files/LanguageManager-iOS";
 			sourceTree = "<group>";
 		};
-		2E7A5EFE117E058AC986DCE2A08D9981 /* LanguageManager-iOS */ = {
+		67EA5FFBCFCDDED6A445407A917EE0A1 /* Targets Support Files */ = {
 			isa = PBXGroup;
 			children = (
-				615EB6B3844737F49004E6E4A8F968A0 /* DefaultsKeys.swift */,
-				8434491D5623794FFD75623AC5720E3C /* LanguageManager.swift */,
-				CACF959977B91C5F65F381B36C452B6D /* Languages.swift */,
-				4D0027E6314671B943C4497115466711 /* Storage.swift */,
-				398208613C39BD5EF043841FA4CBF884 /* String+Localiz.swift */,
-				A4D36302D2F7234AEEC28003C3244EB4 /* UIButton+Direction.swift */,
-				5761D7B5C5A856ED4D8A03F284C8771F /* UIImageView+Direction.swift */,
-				586B6FC37EB8231AC7C24C1CC2776384 /* UIView+Direction.swift */,
-				1EF3F9326AE21BCEED16E14D0872FE9C /* UIView+Swizzling.swift */,
-				8EA72F0B0DD57B9D078AF8EFCE412455 /* ViewDirection.swift */,
-				14228F2D01F944CCB04C42A76EB1DBBB /* Support Files */,
+				EC99F10DC5C191754BE16B2F6AC739A8 /* Pods-MiniScanner */,
 			);
-			path = "LanguageManager-iOS";
+			name = "Targets Support Files";
 			sourceTree = "<group>";
 		};
-		3012AAA80F07B88F99FF98BFC49DEB12 /* Support Files */ = {
+		69769D414834BD844C659CFA8A148FDF /* Support Files */ = {
 			isa = PBXGroup;
 			children = (
-				9A0A414944257050868C6C9F38FA10DF /* FSPagerView.modulemap */,
-				7A54F7427340E254B559EC1244CA2E45 /* FSPagerView-dummy.m */,
-				490673E82DCDC51D3CF4E4936D75E6F6 /* FSPagerView-Info.plist */,
-				4105CD9664E76F34242222CF357D24ED /* FSPagerView-prefix.pch */,
-				01ACC366C89CCCD7C9CF3E69462AC2A7 /* FSPagerView-umbrella.h */,
-				FD60805FB0B777848E7DD77214586E88 /* FSPagerView.debug.xcconfig */,
-				507C1B0C545DAAFE25BB8DD789F224EF /* FSPagerView.release.xcconfig */,
+				17EF00C659AFF94B598E7501E2992350 /* ImagePicker.modulemap */,
+				3FD2850880C4A8033AED333F5DFAE328 /* ImagePicker-dummy.m */,
+				180962FC6F75908EC73049ADB28FC887 /* ImagePicker-Info.plist */,
+				B710E28309BEA5C002164BD008CFB6C0 /* ImagePicker-prefix.pch */,
+				FDF5381B2554B2BB1D7949E3B9A7DF79 /* ImagePicker-umbrella.h */,
+				6224FD5F7C95061A57CAFA73995B3002 /* ImagePicker.debug.xcconfig */,
+				0CBC68B38C0421EC0AE36B43FB2C7636 /* ImagePicker.release.xcconfig */,
+				0AF6D83B6BEECA27C12EB10E96CF4A52 /* ResourceBundle-ImagePicker-ImagePicker-Info.plist */,
 			);
 			name = "Support Files";
-			path = "../Target Support Files/FSPagerView";
+			path = "../Target Support Files/ImagePicker";
 			sourceTree = "<group>";
 		};
-		39D6CDB78D2E7EAED2CBF8A76DC770A5 /* Products */ = {
+		74EBBEDBF3B9E91A60E18ADBE0893A25 /* Resources */ = {
+			isa = PBXGroup;
+			children = (
+				A532EFEAAE9EEAA7CFA7DF04C7E1808B /* PrivacyInfo.xcprivacy */,
+			);
+			name = Resources;
+			sourceTree = "<group>";
+		};
+		7FE4C9AB96A6A8E628751776D1D495CB /* Products */ = {
 			isa = PBXGroup;
 			children = (
 				3DFAC6F70B9CECADF5873F487AF082BA /* EPSignature.framework */,
-				0F47FB5E28EE8C8342B1776D813D1A4C /* FSPagerView.framework */,
 				987CD19BC0CE18F2E00B0AD5ABF8670D /* ImagePicker.framework */,
 				97AA160F23F0CBEDDAF212103E762FC7 /* ImagePicker.bundle */,
 				A8E950A16D00F649C54FFB30F81D7842 /* IQKeyboardManagerSwift.framework */,
@@ -610,66 +594,79 @@
 			name = Products;
 			sourceTree = "<group>";
 		};
-		3CA2F37400AD74A8892927594B43C307 /* ImagePicker */ = {
+		80AD8CA2B1725CE71EDD106621961603 /* IQKeyboardManagerSwift */ = {
 			isa = PBXGroup;
 			children = (
-				7F6DD614B85D0662209A3ADCFA367295 /* AssetManager.swift */,
-				4A4F7BDE573EF1AD77F082087EBBC731 /* BottomContainerView.swift */,
-				B021EB40B85B76049C30C2D063F0870D /* ButtonPicker.swift */,
-				3B78794BA632342FFC447557E4671B16 /* CameraMan.swift */,
-				343F83F1A08E56F19D01674A9BA4DC53 /* CameraView.swift */,
-				90C7704EF389F83C731970D2CDF6595B /* Configuration.swift */,
-				9E44A8883A35E6A01365B1C682A1164D /* ConstraintsSetup.swift */,
-				DB2BF5C6F33D3DA91B2EB11B23EEE3FE /* Helper.swift */,
-				54A9B08BB29EC7935F6A8F8ACD56BEB0 /* ImageGalleryLayout.swift */,
-				CE5D7D46BA438C135B812D0C145CBE6C /* ImageGalleryView.swift */,
-				689EF9768E3E18B833DD776EAD893408 /* ImageGalleryViewCell.swift */,
-				E62A4882567E433682E9D7925C2BDA73 /* ImageGalleryViewDataSource.swift */,
-				21142CC27FC93E41241CC8948B1EE25C /* ImagePickerController.swift */,
-				47978E33AA1FE786BB675EA3F66DE381 /* ImageStack.swift */,
-				BAA72CEA94002E53D03EC7DCC0E59413 /* LocationManager.swift */,
-				D8CA0DD8AA6C4033E65CAA6FE83870F1 /* StackView.swift */,
-				5FF2B9AD02F97A175585504BA5B7F448 /* TopView.swift */,
-				BA1D8FBFBA4E4BE6EC7D55255DE3EFBC /* VideoInfoView.swift */,
-				159345AC740753E09FF1E49D7B342203 /* Resources */,
-				F77F18FFC2A0B514B85F4840876DA397 /* Support Files */,
+				4FE3DE7F264E30C392DCECA7921DAEF2 /* IQActiveConfiguration.swift */,
+				F88000230AEFE1CF1FC184347AAE598B /* IQBarButtonItem.swift */,
+				419AB69B674D6C318AC58EE6D9AFF102 /* IQBarButtonItemConfiguration.swift */,
+				A12B5A63F2CB09B7D22B7E2F4A2210EB /* IQInvocation.swift */,
+				297848FCF8FE33D0DA0FDA6C8B1F5CC3 /* IQKeyboardConfiguration.swift */,
+				8F3317C2A83E43FF75DFCFD3FAEB3669 /* IQKeyboardInfo.swift */,
+				400224F8C71E7053C79E8D5E509534F4 /* IQKeyboardListener.swift */,
+				A353C25676960291A3718B5AFDB81A33 /* IQKeyboardManager.swift */,
+				5B1D47B8C43A0DA0A05A410655A28153 /* IQKeyboardManager+Debug.swift */,
+				B6C5E34F15E4BBDA3480406FF35C1903 /* IQKeyboardManager+Deprecated.swift */,
+				AB94CC5B3F453AA0801700167152FCA1 /* IQKeyboardManager+Internal.swift */,
+				05DDE99E61633BB77D72F46FD10F71BC /* IQKeyboardManager+Position.swift */,
+				A1229814968DD5876FBA87DDA81C5B8F /* IQKeyboardManager+Toolbar.swift */,
+				D9651F46100B3C105EE27B92C1DFFCEC /* IQKeyboardManager+ToolbarActions.swift */,
+				D2DB0BCD57E720CE97C1C3CE74B75024 /* IQKeyboardManager+UIKeyboardNotification.swift */,
+				A0DA73612FA4F954FCE02EA0ADACE634 /* IQKeyboardManager+UITextFieldViewNotification.swift */,
+				49FC6FE3F43F76CA598D3253A1731EEB /* IQKeyboardManagerCompatible.swift */,
+				D9F19506C84032240A21541F9EFCA895 /* IQKeyboardManagerConstants.swift */,
+				EC4B66ABF37EFD118BC08264BBCA6461 /* IQKeyboardReturnKeyHandler.swift */,
+				8F0A5164AA0CCC729C8EA5166760BA9E /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift */,
+				B5EDE1D4720CA7A048A32667F968ED10 /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift */,
+				62160BE00E3966D4D52808B89DE0B1B3 /* IQNSArray+Sort.swift */,
+				D3DC4A4D35E057E5F76427C838E3E495 /* IQPlaceholderable.swift */,
+				187B8EDBE8957C190B1EB7C8F949ED80 /* IQPreviousNextView.swift */,
+				878EC7606D056CAB26A578762AF922D7 /* IQRootControllerConfiguration.swift */,
+				486835CC5D14C1EA193F8575CA89FDCC /* IQScrollViewConfiguration.swift */,
+				E34B4735C7461EBF9AEEC896DEB27C33 /* IQTextFieldViewInfo.swift */,
+				00AA2070B1A7F8ECC88B6E7F0EEB2167 /* IQTextFieldViewInfoModel.swift */,
+				6F6826627BFA6A69002524426F8CFFB7 /* IQTextFieldViewListener.swift */,
+				5A6291B42FA169A1C1919CB49B0B8509 /* IQTextView.swift */,
+				A100F9EA89810A00541755ECD7BBB307 /* IQTitleBarButtonItem.swift */,
+				F76805C9416BA1FC318E025ACA3B95EF /* IQToolbar.swift */,
+				3243FB397BF2AFE225A1FC09542DBF5D /* IQToolbarConfiguration.swift */,
+				A3B5F550C3AA900D117E22291DE5D67C /* IQToolbarPlaceholderConfiguration.swift */,
+				92470A870676C63A27509F38301D521C /* IQUICollectionView+Additions.swift */,
+				6B5E1D310DD754E122DEEE009481A2D6 /* IQUIScrollView+Additions.swift */,
+				619978A0C0036454C22A81173BAA5A6A /* IQUITableView+Additions.swift */,
+				116DA05004680C76EAB707C0943392EB /* IQUITextFieldView+Additions.swift */,
+				D55EBF017F6625B593286F47CFEB1FA3 /* IQUIView+Hierarchy.swift */,
+				AB5F2D5DFB52DE92C94A23801BAC451C /* IQUIView+IQKeyboardToolbar.swift */,
+				8E6FDE31134B7541747D1E89E52E225A /* IQUIView+IQKeyboardToolbarDeprecated.swift */,
+				B5598E57D63117C1B54ADBB7A187B232 /* IQUIViewController+Additions.swift */,
+				FEB8E045AED5393DCC7FA1C76AB59AB8 /* UIImage+NextPrevious.swift */,
+				74EBBEDBF3B9E91A60E18ADBE0893A25 /* Resources */,
+				3EA95E4CF3A010D9796C8FD8B665C566 /* Support Files */,
 			);
-			path = ImagePicker;
-			sourceTree = "<group>";
-		};
-		3E464AC9EEFEEE8C0975B029E5B7418E /* EPSignature */ = {
-			isa = PBXGroup;
-			children = (
-				1E288979D79A43A7925DB41055CDD376 /* EPExtensions.swift */,
-				BE559964BD58119769FB19BB95144A6A /* EPSignatureView.swift */,
-				AF61B6A70C39B0ACDA33B583642A26EE /* EPSignatureViewController.swift */,
-				033ACCB632D94A95AEEF9DCA045558CA /* Resources */,
-				26A3C923FF2FC3BF84BADEC1E731C9D1 /* Support Files */,
-			);
-			path = EPSignature;
+			path = IQKeyboardManagerSwift;
 			sourceTree = "<group>";
 		};
-		67EA5FFBCFCDDED6A445407A917EE0A1 /* Targets Support Files */ = {
+		82B9E590AF4CA104F25BE686066D17D4 /* Support Files */ = {
 			isa = PBXGroup;
 			children = (
-				EC99F10DC5C191754BE16B2F6AC739A8 /* Pods-MiniScanner */,
+				E68A22DD9E65EF800882452842690AE1 /* NBBottomSheet.modulemap */,
+				AD71C20FAD4FE7E08FA8091857A2FDCB /* NBBottomSheet-dummy.m */,
+				0B1626D50D1FBDF5976CCCE6F16928A1 /* NBBottomSheet-Info.plist */,
+				0CB32F67F5B5E9A2C263A017E98041AC /* NBBottomSheet-prefix.pch */,
+				389AA43304A03366FC2510859AA7DCBA /* NBBottomSheet-umbrella.h */,
+				45B232DE9D6710FE8BF7DC25C2C80333 /* NBBottomSheet.debug.xcconfig */,
+				26EDF88E14046AAC34BFF99F97D23B05 /* NBBottomSheet.release.xcconfig */,
 			);
-			name = "Targets Support Files";
+			name = "Support Files";
+			path = "../Target Support Files/NBBottomSheet";
 			sourceTree = "<group>";
 		};
-		A7F75D63C62A3641741549AB252E760C /* Support Files */ = {
+		A2352D8C906BE3FB6FAD9C1888ABF323 /* Resources */ = {
 			isa = PBXGroup;
 			children = (
-				23A10D783B0ECA5BA75D4E94BDA01957 /* NBBottomSheet.modulemap */,
-				1935C8E9966B3C94DD69B219D3DBFBD0 /* NBBottomSheet-dummy.m */,
-				CA39A57EEAD9575350DCFB2377E01DD9 /* NBBottomSheet-Info.plist */,
-				50F1C0F59A45281CE2D310673AE0571F /* NBBottomSheet-prefix.pch */,
-				65E35E2A8DCF85A60B0EF9389B0495AE /* NBBottomSheet-umbrella.h */,
-				22FCBFA0E2A7651B248460AD3CB4DE32 /* NBBottomSheet.debug.xcconfig */,
-				4E8E62EE488350F66CC08D1D88AF14EE /* NBBottomSheet.release.xcconfig */,
+				56C1C453B74E770D4AC56A090051BCF5 /* EPSignatureViewController.xib */,
 			);
-			name = "Support Files";
-			path = "../Target Support Files/NBBottomSheet";
+			name = Resources;
 			sourceTree = "<group>";
 		};
 		B94D7768568A9992200DB461E8CF687F /* Frameworks */ = {
@@ -680,90 +677,29 @@
 			name = Frameworks;
 			sourceTree = "<group>";
 		};
-		CDA83A613FCB366E70C92238C360E636 /* IQKeyboardManagerSwift */ = {
-			isa = PBXGroup;
-			children = (
-				831781174B420BA2000C5A20F9B1A155 /* IQActiveConfiguration.swift */,
-				065FDC013F6128B451B9F622F8A98C11 /* IQBarButtonItem.swift */,
-				4DA62F8724EC161B523761C4D312EE6A /* IQBarButtonItemConfiguration.swift */,
-				32A5E10DAD7E67CBAFB25E12CF020274 /* IQInvocation.swift */,
-				B700D2C4CED5ED22050429C7997CF1FE /* IQKeyboardConfiguration.swift */,
-				69FC816770553B761090561AE8707674 /* IQKeyboardInfo.swift */,
-				A1BD1A58666D6C0FD408F4DB3ADC8107 /* IQKeyboardListener.swift */,
-				1B4086624F01B0B30DDB90F23478F288 /* IQKeyboardManager.swift */,
-				4CEB26DB8656A60C8AE2B83EF56A1149 /* IQKeyboardManager+Debug.swift */,
-				4F2207491E92F152C27D2B4A764A6A93 /* IQKeyboardManager+Deprecated.swift */,
-				A230ED28736A611DEEC851620E6444DE /* IQKeyboardManager+Internal.swift */,
-				2209E8AC4BD6C9607BD14A1D48B3FBB3 /* IQKeyboardManager+Position.swift */,
-				88DFD4B8DC15592A7CD38D8AD9C01668 /* IQKeyboardManager+Toolbar.swift */,
-				7F23D0E0AE3BDC7AE6A7D331A0FF5AF6 /* IQKeyboardManager+ToolbarActions.swift */,
-				4A5338232CA701AD47A2EA3B534BD224 /* IQKeyboardManager+UIKeyboardNotification.swift */,
-				0EFB4A164AE952F817BA0A6FCE622791 /* IQKeyboardManager+UITextFieldViewNotification.swift */,
-				EA5483FEE1B87041C4751EA1D4F3EF54 /* IQKeyboardManagerCompatible.swift */,
-				AC43EDC562847626ACF7B4E93E5462EF /* IQKeyboardManagerConstants.swift */,
-				E21781AECFBC7371F2118155ACE5C3C7 /* IQKeyboardReturnKeyHandler.swift */,
-				7136D2DF9E35BE04AE50612BF8809136 /* IQKeyboardReturnKeyHandler+TextFieldDelegate.swift */,
-				B6C332B0108C87436290C293E043023A /* IQKeyboardReturnKeyHandler+TextViewDelegate.swift */,
-				C1DC2A0ED79E1179E28CE75BFECCDA82 /* IQNSArray+Sort.swift */,
-				CE58805A3FAC71C6A5782C1B1BB08069 /* IQPlaceholderable.swift */,
-				DE7235727A466A9B7BF8342CC42C4B91 /* IQPreviousNextView.swift */,
-				24533AECDB8F27FACE2D96631FC3F307 /* IQRootControllerConfiguration.swift */,
-				545688259B1D4CD8A59AF3D7E0AFE7B9 /* IQScrollViewConfiguration.swift */,
-				309F127A50B023B6041C44942C9079DE /* IQTextFieldViewInfo.swift */,
-				23B7EBFBD51FC4710CDE4AFAE46E8860 /* IQTextFieldViewInfoModel.swift */,
-				3DB66972AE146B779F56CFD49B324220 /* IQTextFieldViewListener.swift */,
-				8B5D88BFE14997FA9B22FA4A4B8CD6DA /* IQTextView.swift */,
-				4DB37A30323A7D2ED16581BA15B8351D /* IQTitleBarButtonItem.swift */,
-				926EAAA6426204DE1DF8D36D2E13EA74 /* IQToolbar.swift */,
-				8A9AA0FBABA9E9EEF6521C23B2031158 /* IQToolbarConfiguration.swift */,
-				92CEF8FFA7885B7EC96C4120D507A08F /* IQToolbarPlaceholderConfiguration.swift */,
-				D4C85B9AE116359EBFD1959406B32999 /* IQUICollectionView+Additions.swift */,
-				A8A8D208D764CFAC89604E6813F1444E /* IQUIScrollView+Additions.swift */,
-				C6F5B0BFC63CD2F3B0DF56912D4F54E8 /* IQUITableView+Additions.swift */,
-				79655C283B54B5F907790F4E79C388EF /* IQUITextFieldView+Additions.swift */,
-				BE1348270A5A7F3FDEFAC32D8E89686A /* IQUIView+Hierarchy.swift */,
-				3DF9BB8A2089DB5AEEA4B43132D0B074 /* IQUIView+IQKeyboardToolbar.swift */,
-				47A7457CB008481373FBC626968AD770 /* IQUIView+IQKeyboardToolbarDeprecated.swift */,
-				9B35CF76304163C551A5E4B592066D0D /* IQUIViewController+Additions.swift */,
-				AC7F01FAC278F9B096CFFD78497206CF /* UIImage+NextPrevious.swift */,
-				D83F449675FA61063F04877699E1FBD8 /* Resources */,
-				2524B6CA73749FE91A5B77026AB9E48B /* Support Files */,
-			);
-			path = IQKeyboardManagerSwift;
-			sourceTree = "<group>";
-		};
 		CF1408CF629C7361332E53B88F7BD30C = {
 			isa = PBXGroup;
 			children = (
 				9D940727FF8FB9C785EB98E56350EF41 /* Podfile */,
 				B94D7768568A9992200DB461E8CF687F /* Frameworks */,
-				CF40832A62CD5EA22B643D00EBBD9BFD /* Pods */,
-				39D6CDB78D2E7EAED2CBF8A76DC770A5 /* Products */,
+				D3C95BBF75043277050186353459BC4F /* Pods */,
+				7FE4C9AB96A6A8E628751776D1D495CB /* Products */,
 				67EA5FFBCFCDDED6A445407A917EE0A1 /* Targets Support Files */,
 			);
 			sourceTree = "<group>";
 		};
-		CF40832A62CD5EA22B643D00EBBD9BFD /* Pods */ = {
+		D3C95BBF75043277050186353459BC4F /* Pods */ = {
 			isa = PBXGroup;
 			children = (
-				3E464AC9EEFEEE8C0975B029E5B7418E /* EPSignature */,
-				2A17FA4F601F6E648A9D9E4A00514B43 /* FSPagerView */,
-				3CA2F37400AD74A8892927594B43C307 /* ImagePicker */,
-				CDA83A613FCB366E70C92238C360E636 /* IQKeyboardManagerSwift */,
-				2E7A5EFE117E058AC986DCE2A08D9981 /* LanguageManager-iOS */,
-				0113FD3C8FD8AA93BDC06466006587F3 /* NBBottomSheet */,
+				4A4B14A5B6B233355F4F15CA6F41639D /* EPSignature */,
+				1377F47D0ECC009D7BEFB14769F14316 /* ImagePicker */,
+				80AD8CA2B1725CE71EDD106621961603 /* IQKeyboardManagerSwift */,
+				1CD1A4CC34821855EE0B47C1DB7536BD /* LanguageManager-iOS */,
+				32620674ED381C186389FA1D871AFD24 /* NBBottomSheet */,
 			);
 			name = Pods;
 			sourceTree = "<group>";
 		};
-		D83F449675FA61063F04877699E1FBD8 /* Resources */ = {
-			isa = PBXGroup;
-			children = (
-				B638343F1BC71A9A9CD3A6D6CA749DC7 /* PrivacyInfo.xcprivacy */,
-			);
-			name = Resources;
-			sourceTree = "<group>";
-		};
 		EC99F10DC5C191754BE16B2F6AC739A8 /* Pods-MiniScanner */ = {
 			isa = PBXGroup;
 			children = (
@@ -781,34 +717,9 @@
 			path = "Target Support Files/Pods-MiniScanner";
 			sourceTree = "<group>";
 		};
-		F77F18FFC2A0B514B85F4840876DA397 /* Support Files */ = {
-			isa = PBXGroup;
-			children = (
-				30A55721765A033C43BEE85DF167DC60 /* ImagePicker.modulemap */,
-				4AAF24BB95964A47FF71115DCACE5CC1 /* ImagePicker-dummy.m */,
-				4EEEA55AC9C261C1EABE60EC57A5021B /* ImagePicker-Info.plist */,
-				82E4B4BB461879C2730CD6E789150CB8 /* ImagePicker-prefix.pch */,
-				DD48D4FC5BD3A99772F4FE6FDB643898 /* ImagePicker-umbrella.h */,
-				9027793C7414B308134453884A6716FD /* ImagePicker.debug.xcconfig */,
-				DBE740FF0A3373F56E7AF2A4000D6D8C /* ImagePicker.release.xcconfig */,
-				317125123DFF6A76FF8664EF536038C2 /* ResourceBundle-ImagePicker-ImagePicker-Info.plist */,
-			);
-			name = "Support Files";
-			path = "../Target Support Files/ImagePicker";
-			sourceTree = "<group>";
-		};
 /* End PBXGroup section */
 
 /* Begin PBXHeadersBuildPhase section */
-		0608DA1408F82CC4ADBFAF480D0FA2B4 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				CE2C6FD104092EA3F2F0A357C72460A8 /* FSPagerView-umbrella.h in Headers */,
-				91611428D06F5E61CECF70A53E6DA6C6 /* FSPagerViewObjcCompat.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 		11370304D07B86BF4935D7D5A612503A /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
@@ -825,28 +736,28 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		63F686C3D19F8A097B95FBAA087727D3 /* Headers */ = {
+		77150D3DA409E22AAAE3AC967B0FDC17 /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				9517FE286FAA3C856DC6C1B6F91F48CF /* Pods-MiniScanner-umbrella.h in Headers */,
+				3573FA382FBE08F99039CED491DB9FF0 /* IQKeyboardManagerSwift-umbrella.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		77150D3DA409E22AAAE3AC967B0FDC17 /* Headers */ = {
+		9C1E51FBB23B8F5AC126898FEDD00F52 /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				3573FA382FBE08F99039CED491DB9FF0 /* IQKeyboardManagerSwift-umbrella.h in Headers */,
+				797DF46337EAC66E47C5ADAF32515524 /* NBBottomSheet.h in Headers */,
+				FE4936BFE1B6B6A9E8136010E413A24B /* NBBottomSheet-umbrella.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		9C1E51FBB23B8F5AC126898FEDD00F52 /* Headers */ = {
+		E1A4DFD94B34CD656D047F2CE55E141E /* Headers */ = {
 			isa = PBXHeadersBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				797DF46337EAC66E47C5ADAF32515524 /* NBBottomSheet.h in Headers */,
-				FE4936BFE1B6B6A9E8136010E413A24B /* NBBottomSheet-umbrella.h in Headers */,
+				C884AFFEC6B0F6540E8A5593250D5741 /* Pods-MiniScanner-umbrella.h in Headers */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -873,7 +784,7 @@
 			buildRules = (
 			);
 			dependencies = (
-				E9327F4979BAC249AD227EFB65293BB7 /* PBXTargetDependency */,
+				7907CFE4C755F2FC455B6FB6B982A84E /* PBXTargetDependency */,
 			);
 			name = ImagePicker;
 			productName = ImagePicker;
@@ -900,22 +811,21 @@
 		};
 		4372AB6A3C495222906A1ABFD39A4463 /* Pods-MiniScanner */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 4E37980CDFA92572E6955A05C6C57717 /* Build configuration list for PBXNativeTarget "Pods-MiniScanner" */;
+			buildConfigurationList = 21E40E7EF4A668720A0BC4974A414686 /* Build configuration list for PBXNativeTarget "Pods-MiniScanner" */;
 			buildPhases = (
-				63F686C3D19F8A097B95FBAA087727D3 /* Headers */,
-				809C6F992289D71DBD1D7BFA4B05305A /* Sources */,
-				7AF0B4E0EB5D8A901728672A5277DAFC /* Frameworks */,
-				9078164A79E8D5740BDAFCB454C8B826 /* Resources */,
+				E1A4DFD94B34CD656D047F2CE55E141E /* Headers */,
+				AA10E1444171443C0B5BCA1096353377 /* Sources */,
+				356D6AE3CB46F510D123D125D9B58B7C /* Frameworks */,
+				7548C4739E6BCE23ABB1B5BD57E7ED73 /* Resources */,
 			);
 			buildRules = (
 			);
 			dependencies = (
-				4AE52BA60D1AEFF2B1AFFE147C779165 /* PBXTargetDependency */,
-				40292EA58C6CD288650B534FC0E7FCDC /* PBXTargetDependency */,
-				0139628E2EDB9A6AD2B119DE4D1B092B /* PBXTargetDependency */,
-				B1DD8053C35D0B44F2268CAB89353885 /* PBXTargetDependency */,
-				D836F926DCF33106AFD6E73977095C38 /* PBXTargetDependency */,
-				D341CBE09A66072A9CD356EF2EB37FF7 /* PBXTargetDependency */,
+				6D816E6D698E10FDBE40764CC34D49B2 /* PBXTargetDependency */,
+				29743ED8B9772E83B55B66D15C7751B6 /* PBXTargetDependency */,
+				41BDC0B4C02D2F478CF6E580BB0ED276 /* PBXTargetDependency */,
+				1F155C5185BA60981E950C8356C10505 /* PBXTargetDependency */,
+				090A4DADA36A746FDB7C115750022A52 /* PBXTargetDependency */,
 			);
 			name = "Pods-MiniScanner";
 			productName = Pods_MiniScanner;
@@ -924,11 +834,11 @@
 		};
 		614D1818852890AC7D3CDF68D512C370 /* ImagePicker-ImagePicker */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = CB7A73EFBC09495176FD10B3C82A8767 /* Build configuration list for PBXNativeTarget "ImagePicker-ImagePicker" */;
+			buildConfigurationList = 61E5E465E4EBDC7192A60BDB29B54904 /* Build configuration list for PBXNativeTarget "ImagePicker-ImagePicker" */;
 			buildPhases = (
-				C361A7756A2D12C04F9F6C0F631D4AFB /* Sources */,
-				CE9AC41D181266461331A2C974AEA95B /* Frameworks */,
-				469AC1D9DADBAC72A4A8876068211A6A /* Resources */,
+				557CE2F544FA412F5D8D59F28849E31F /* Sources */,
+				8D97E7F0E48EF9F505EED4D818710D20 /* Frameworks */,
+				48F3F81CFBD0387B6D359B8E5102FC29 /* Resources */,
 			);
 			buildRules = (
 			);
@@ -977,11 +887,11 @@
 		};
 		982A68D37F5DCBC1FC1FDC0BB2F0EB8E /* IQKeyboardManagerSwift-IQKeyboardManagerSwift */ = {
 			isa = PBXNativeTarget;
-			buildConfigurationList = 1851179FA635C20329E7C7D49A253636 /* Build configuration list for PBXNativeTarget "IQKeyboardManagerSwift-IQKeyboardManagerSwift" */;
+			buildConfigurationList = 768672492BEBD11B2982745D1B777D28 /* Build configuration list for PBXNativeTarget "IQKeyboardManagerSwift-IQKeyboardManagerSwift" */;
 			buildPhases = (
-				C4304AA8E683E2F927FF7940A08EB4D2 /* Sources */,
-				60A6157C9520B77A0217CF22A787E99D /* Frameworks */,
-				F489B4E141527BB75F5BADD2297267D0 /* Resources */,
+				DA4A3E8A0AB0D7E287665A709E56EC36 /* Sources */,
+				1F8DF3016F5E08F65F63559E2A2A827B /* Frameworks */,
+				2F6648C27D9805F9F5D062160BDC0EBB /* Resources */,
 			);
 			buildRules = (
 			);
@@ -1004,31 +914,13 @@
 			buildRules = (
 			);
 			dependencies = (
-				89C0A28CA8B1E42AE61ADCA14C031FED /* PBXTargetDependency */,
+				0451FAFE12B598AE56109360B5127611 /* PBXTargetDependency */,
 			);
 			name = IQKeyboardManagerSwift;
 			productName = IQKeyboardManagerSwift;
 			productReference = A8E950A16D00F649C54FFB30F81D7842 /* IQKeyboardManagerSwift.framework */;
 			productType = "com.apple.product-type.framework";
 		};
-		D4F8239FB329387A8476B964D92D92E7 /* FSPagerView */ = {
-			isa = PBXNativeTarget;
-			buildConfigurationList = 98343682D690F1F5CF2596A899F35F57 /* Build configuration list for PBXNativeTarget "FSPagerView" */;
-			buildPhases = (
-				0608DA1408F82CC4ADBFAF480D0FA2B4 /* Headers */,
-				5F08C52D6C5CBA958747935FFDA1DFC2 /* Sources */,
-				E5ACBBCF353041B05D869DB1467D16B1 /* Frameworks */,
-				C51D8DC25EB55BC76B82A9E61C8BE832 /* Resources */,
-			);
-			buildRules = (
-			);
-			dependencies = (
-			);
-			name = FSPagerView;
-			productName = FSPagerView;
-			productReference = 0F47FB5E28EE8C8342B1776D813D1A4C /* FSPagerView.framework */;
-			productType = "com.apple.product-type.framework";
-		};
 /* End PBXNativeTarget section */
 
 /* Begin PBXProject section */
@@ -1047,12 +939,11 @@
 				en,
 			);
 			mainGroup = CF1408CF629C7361332E53B88F7BD30C;
-			productRefGroup = 39D6CDB78D2E7EAED2CBF8A76DC770A5 /* Products */;
+			productRefGroup = 7FE4C9AB96A6A8E628751776D1D495CB /* Products */;
 			projectDirPath = "";
 			projectRoot = "";
 			targets = (
 				3CAF5EBFE5D1550CFF58AEC93594990A /* EPSignature */,
-				D4F8239FB329387A8476B964D92D92E7 /* FSPagerView */,
 				01CB8D6098C21E12CE735619344DE81E /* ImagePicker */,
 				614D1818852890AC7D3CDF68D512C370 /* ImagePicker-ImagePicker */,
 				B490E7485944099E16C9CBD79119D1D4 /* IQKeyboardManagerSwift */,
@@ -1065,62 +956,63 @@
 /* End PBXProject section */
 
 /* Begin PBXResourcesBuildPhase section */
-		3B58EC4259531E84AFA63D59D1133D3E /* Resources */ = {
+		2F6648C27D9805F9F5D062160BDC0EBB /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				5C4E571F3ADE020356DAF5143816FC55 /* PrivacyInfo.xcprivacy in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		469AC1D9DADBAC72A4A8876068211A6A /* Resources */ = {
+		3B58EC4259531E84AFA63D59D1133D3E /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				61A0C05934861A0EACC1549F2419289A /* AUTO@3x.png in Resources */,
-				71B7397ADA300CDE41CB406BE694A8A2 /* cameraIcon@3x.png in Resources */,
-				047539EBA967BC7505B53F36E1A2836A /* focusIcon@3x.png in Resources */,
-				4695B952627B345252A52CB26B7747CC /* OFF@3x.png in Resources */,
-				2F7AE7DED85C12F45995DA2DF033641C /* ON@3x.png in Resources */,
-				0C99571A708CA382A984BDEDA5AE25D5 /* selectedImageGallery@3x.png in Resources */,
-				C116540980BCB8D0E54215D9E8C7AD78 /* video@3x.png in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		4A72A323CCD420112722EDFB4439C184 /* Resources */ = {
+		48F3F81CFBD0387B6D359B8E5102FC29 /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				4CDBAE55660ED186441E9E4EDE6B3D31 /* IQKeyboardManagerSwift.bundle in Resources */,
+				8D935C83E5D7B42A4C6439FFA767CE24 /* AUTO@3x.png in Resources */,
+				28658B67B33D0AF1A396F70CF4C416FD /* cameraIcon@3x.png in Resources */,
+				FF74A846B2EEC0D52379B48D7963D8C0 /* focusIcon@3x.png in Resources */,
+				A213B981B47C6B4734589B6ED9469132 /* OFF@3x.png in Resources */,
+				19BA03143F6B7CCC7F6D3A5000333763 /* ON@3x.png in Resources */,
+				09F4E3A6DED312368CE8E037A171BD70 /* selectedImageGallery@3x.png in Resources */,
+				1B1937CEB4E9DF65238702771B4232B4 /* video@3x.png in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		500BEBDB28E9B664CEB4A237CBAE1EC8 /* Resources */ = {
+		4A72A323CCD420112722EDFB4439C184 /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				1BBD42E84E62842B6EA186CEF24BBF45 /* ImagePicker.bundle in Resources */,
+				4CDBAE55660ED186441E9E4EDE6B3D31 /* IQKeyboardManagerSwift.bundle in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		7F8929911997B177FECDE1757E47C40B /* Resources */ = {
+		500BEBDB28E9B664CEB4A237CBAE1EC8 /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				1A7787DB0275CF4A44CA312DD3BA5D33 /* EPSignatureViewController.xib in Resources */,
+				1BBD42E84E62842B6EA186CEF24BBF45 /* ImagePicker.bundle in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		9078164A79E8D5740BDAFCB454C8B826 /* Resources */ = {
+		7548C4739E6BCE23ABB1B5BD57E7ED73 /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		C51D8DC25EB55BC76B82A9E61C8BE832 /* Resources */ = {
+		7F8929911997B177FECDE1757E47C40B /* Resources */ = {
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				1A7787DB0275CF4A44CA312DD3BA5D33 /* EPSignatureViewController.xib in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1131,14 +1023,6 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		F489B4E141527BB75F5BADD2297267D0 /* Resources */ = {
-			isa = PBXResourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				960957461D403847E92AF1825B4D8506 /* PrivacyInfo.xcprivacy in Resources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
 /* End PBXResourcesBuildPhase section */
 
 /* Begin PBXSourcesBuildPhase section */
@@ -1219,27 +1103,10 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		5F08C52D6C5CBA958747935FFDA1DFC2 /* Sources */ = {
-			isa = PBXSourcesBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				F2562CFCEC42E2989BADC7E823F2C9C3 /* FSPageControl.swift in Sources */,
-				ECA11CD4E20DFCA3327CB006B10A3DB8 /* FSPagerCollectionView.swift in Sources */,
-				29C03EAF5C27DC851118AEC88ABEC151 /* FSPagerView.swift in Sources */,
-				F6702D89104E55C112FE16943BE7D41A /* FSPagerView-dummy.m in Sources */,
-				69C7244F5E0D41CF59E5ADC8952F8D0D /* FSPagerViewCell.swift in Sources */,
-				C85C11573FFE927A84AD0C8BE456AD81 /* FSPagerViewLayoutAttributes.swift in Sources */,
-				EA89DFEFE15FAD82868C74E94F6F1B75 /* FSPagerViewObjcCompat.m in Sources */,
-				40987E046BAD603A58CA00B9A7648588 /* FSPageViewLayout.swift in Sources */,
-				488A767CF7494D169BFB886EDC470F5D /* FSPageViewTransformer.swift in Sources */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-		809C6F992289D71DBD1D7BFA4B05305A /* Sources */ = {
+		557CE2F544FA412F5D8D59F28849E31F /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				014ADEB344680FBC5C6D76E16B255CAC /* Pods-MiniScanner-dummy.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
@@ -1254,14 +1121,15 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		C361A7756A2D12C04F9F6C0F631D4AFB /* Sources */ = {
+		AA10E1444171443C0B5BCA1096353377 /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
+				1ECC8F5583B658DA5BC4F8D29132213F /* Pods-MiniScanner-dummy.m in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
-		C4304AA8E683E2F927FF7940A08EB4D2 /* Sources */ = {
+		DA4A3E8A0AB0D7E287665A709E56EC36 /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
@@ -1304,77 +1172,54 @@
 /* End PBXSourcesBuildPhase section */
 
 /* Begin PBXTargetDependency section */
-		0139628E2EDB9A6AD2B119DE4D1B092B /* PBXTargetDependency */ = {
+		0451FAFE12B598AE56109360B5127611 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			name = IQKeyboardManagerSwift;
-			target = B490E7485944099E16C9CBD79119D1D4 /* IQKeyboardManagerSwift */;
-			targetProxy = C3EEE11D57DF83B4A602A0BB6B6D5420 /* PBXContainerItemProxy */;
+			name = "IQKeyboardManagerSwift-IQKeyboardManagerSwift";
+			target = 982A68D37F5DCBC1FC1FDC0BB2F0EB8E /* IQKeyboardManagerSwift-IQKeyboardManagerSwift */;
+			targetProxy = 6CD75698768741DC0335DCB2F06CB5BC /* PBXContainerItemProxy */;
 		};
-		40292EA58C6CD288650B534FC0E7FCDC /* PBXTargetDependency */ = {
+		090A4DADA36A746FDB7C115750022A52 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			name = FSPagerView;
-			target = D4F8239FB329387A8476B964D92D92E7 /* FSPagerView */;
-			targetProxy = AE6E02E3D311CB4AEC5F673F47B2F7DE /* PBXContainerItemProxy */;
+			name = NBBottomSheet;
+			target = 727C2007A89D1AD73613E3E2E22998E5 /* NBBottomSheet */;
+			targetProxy = 19D95F1858EF2D6E80811860CFD6BF92 /* PBXContainerItemProxy */;
 		};
-		4AE52BA60D1AEFF2B1AFFE147C779165 /* PBXTargetDependency */ = {
+		1F155C5185BA60981E950C8356C10505 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			name = EPSignature;
-			target = 3CAF5EBFE5D1550CFF58AEC93594990A /* EPSignature */;
-			targetProxy = 195F278E699A41C19ED473B0310CAC62 /* PBXContainerItemProxy */;
+			name = "LanguageManager-iOS";
+			target = 75F1EA88CB9544AB5CBE20DEC9A011AE /* LanguageManager-iOS */;
+			targetProxy = 8292BF480C5137113C3A6C342933F986 /* PBXContainerItemProxy */;
 		};
-		89C0A28CA8B1E42AE61ADCA14C031FED /* PBXTargetDependency */ = {
+		29743ED8B9772E83B55B66D15C7751B6 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			name = "IQKeyboardManagerSwift-IQKeyboardManagerSwift";
-			target = 982A68D37F5DCBC1FC1FDC0BB2F0EB8E /* IQKeyboardManagerSwift-IQKeyboardManagerSwift */;
-			targetProxy = 368B8A0D7A211FB1D8031E50553E22B1 /* PBXContainerItemProxy */;
+			name = IQKeyboardManagerSwift;
+			target = B490E7485944099E16C9CBD79119D1D4 /* IQKeyboardManagerSwift */;
+			targetProxy = D96B4C07AAAD52B947C6F8CFEF7E8807 /* PBXContainerItemProxy */;
 		};
-		B1DD8053C35D0B44F2268CAB89353885 /* PBXTargetDependency */ = {
+		41BDC0B4C02D2F478CF6E580BB0ED276 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
 			name = ImagePicker;
 			target = 01CB8D6098C21E12CE735619344DE81E /* ImagePicker */;
-			targetProxy = 0473CB2089AEB22D5A94042369CBE127 /* PBXContainerItemProxy */;
-		};
-		D341CBE09A66072A9CD356EF2EB37FF7 /* PBXTargetDependency */ = {
-			isa = PBXTargetDependency;
-			name = NBBottomSheet;
-			target = 727C2007A89D1AD73613E3E2E22998E5 /* NBBottomSheet */;
-			targetProxy = F39E3FCE8EA4C0F8CBCC8FCA9435B319 /* PBXContainerItemProxy */;
+			targetProxy = FBE5961EEB250DF2DACF4F88C36BCC1E /* PBXContainerItemProxy */;
 		};
-		D836F926DCF33106AFD6E73977095C38 /* PBXTargetDependency */ = {
+		6D816E6D698E10FDBE40764CC34D49B2 /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
-			name = "LanguageManager-iOS";
-			target = 75F1EA88CB9544AB5CBE20DEC9A011AE /* LanguageManager-iOS */;
-			targetProxy = 35F75C3FB936C4BE71A7B3A5CE8352DE /* PBXContainerItemProxy */;
+			name = EPSignature;
+			target = 3CAF5EBFE5D1550CFF58AEC93594990A /* EPSignature */;
+			targetProxy = F3097459B372082D9C20BEF06209FBD6 /* PBXContainerItemProxy */;
 		};
-		E9327F4979BAC249AD227EFB65293BB7 /* PBXTargetDependency */ = {
+		7907CFE4C755F2FC455B6FB6B982A84E /* PBXTargetDependency */ = {
 			isa = PBXTargetDependency;
 			name = "ImagePicker-ImagePicker";
 			target = 614D1818852890AC7D3CDF68D512C370 /* ImagePicker-ImagePicker */;
-			targetProxy = 86BCB3533B3E4CC4A62FDD4F9D7AEF5C /* PBXContainerItemProxy */;
+			targetProxy = D06F098EB5FE1B281549C568AA85EEA9 /* PBXContainerItemProxy */;
 		};
 /* End PBXTargetDependency section */
 
 /* Begin XCBuildConfiguration section */
-		191972B2CD0BAA4D702859FFE72BED96 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = DBE740FF0A3373F56E7AF2A4000D6D8C /* ImagePicker.release.xcconfig */;
-			buildSettings = {
-				CODE_SIGNING_ALLOWED = NO;
-				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/ImagePicker";
-				IBSC_MODULE = ImagePicker;
-				INFOPLIST_FILE = "Target Support Files/ImagePicker/ResourceBundle-ImagePicker-ImagePicker-Info.plist";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
-				PRODUCT_NAME = ImagePicker;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				TARGETED_DEVICE_FAMILY = "1,2";
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Release;
-		};
 		21302220AA8668082E71583ECE31B7CA /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = DBE740FF0A3373F56E7AF2A4000D6D8C /* ImagePicker.release.xcconfig */;
+			baseConfigurationReference = 0CBC68B38C0421EC0AE36B43FB2C7636 /* ImagePicker.release.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1387,7 +1232,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/ImagePicker/ImagePicker-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/ImagePicker/ImagePicker-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -1407,7 +1252,7 @@
 			};
 			name = Release;
 		};
-		2E083683897CAD4CAFE6027BFB9CB404 /* Debug */ = {
+		265E4B8B0199C32122BBAF162B6A7A3B /* Debug */ = {
 			isa = XCBuildConfiguration;
 			baseConfigurationReference = 7CC191E7994C3C7161A6641B457C9166 /* Pods-MiniScanner.debug.xcconfig */;
 			buildSettings = {
@@ -1444,44 +1289,9 @@
 			};
 			name = Debug;
 		};
-		31731D2A96C7FF5AA4EE56EC2EB0AE2F /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 507C1B0C545DAAFE25BB8DD789F224EF /* FSPagerView.release.xcconfig */;
-			buildSettings = {
-				"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/FSPagerView/FSPagerView-prefix.pch";
-				INFOPLIST_FILE = "Target Support Files/FSPagerView/FSPagerView-Info.plist";
-				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
-				LD_RUNPATH_SEARCH_PATHS = (
-					"$(inherited)",
-					"@executable_path/Frameworks",
-					"@loader_path/Frameworks",
-				);
-				MODULEMAP_FILE = "Target Support Files/FSPagerView/FSPagerView.modulemap";
-				PRODUCT_MODULE_NAME = FSPagerView;
-				PRODUCT_NAME = FSPagerView;
-				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;
-		};
 		39440596D0B39AE8ECC2717121684FEC /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 8C6B2F7653C95633BB9449F87EB6DBD9 /* LanguageManager-iOS.release.xcconfig */;
+			baseConfigurationReference = 9AAA7A084DC8F453913C80DE1E243C39 /* LanguageManager-iOS.release.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1494,7 +1304,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/LanguageManager-iOS/LanguageManager-iOS-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/LanguageManager-iOS/LanguageManager-iOS-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -1516,7 +1326,7 @@
 		};
 		40133D3EB8F5F41DEF101CB7F221DB6B /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = EE009617DB5A966C6E58EFC97D17875C /* EPSignature.debug.xcconfig */;
+			baseConfigurationReference = E91F93F84E9AB640A2333FBBF6CCB877 /* EPSignature.debug.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1548,43 +1358,9 @@
 			};
 			name = Debug;
 		};
-		434E4A52CBC9F74FA2D8CDD170442C4A /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = FD60805FB0B777848E7DD77214586E88 /* FSPagerView.debug.xcconfig */;
-			buildSettings = {
-				"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/FSPagerView/FSPagerView-prefix.pch";
-				INFOPLIST_FILE = "Target Support Files/FSPagerView/FSPagerView-Info.plist";
-				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
-				LD_RUNPATH_SEARCH_PATHS = (
-					"$(inherited)",
-					"@executable_path/Frameworks",
-					"@loader_path/Frameworks",
-				);
-				MODULEMAP_FILE = "Target Support Files/FSPagerView/FSPagerView.modulemap";
-				PRODUCT_MODULE_NAME = FSPagerView;
-				PRODUCT_NAME = FSPagerView;
-				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 = "";
-			};
-			name = Debug;
-		};
 		57F5390C26CAC63BC7DC9F3A897AD41C /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 9027793C7414B308134453884A6716FD /* ImagePicker.debug.xcconfig */;
+			baseConfigurationReference = 6224FD5F7C95061A57CAFA73995B3002 /* ImagePicker.debug.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1616,9 +1392,9 @@
 			};
 			name = Debug;
 		};
-		7357A4E2D538EC50B39381993F57DBCC /* Release */ = {
+		74A42B7360C7CAE64024B006CBA43A1A /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 04420AA069E60E2676B1C8145D489AFE /* IQKeyboardManagerSwift.release.xcconfig */;
+			baseConfigurationReference = FAE9E39FF0684DBEA572BB783B3A18F7 /* IQKeyboardManagerSwift.release.xcconfig */;
 			buildSettings = {
 				CODE_SIGNING_ALLOWED = NO;
 				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/IQKeyboardManagerSwift";
@@ -1635,7 +1411,7 @@
 		};
 		8C7488EEB2FF7D44EDD6A1FBA48C75CC /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = E3DA260DCB001D3DF844896311887A56 /* EPSignature.release.xcconfig */;
+			baseConfigurationReference = 2006321B115FD55474FD1B985C1979FA /* EPSignature.release.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1648,7 +1424,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/EPSignature/EPSignature-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/EPSignature/EPSignature-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -1668,6 +1444,23 @@
 			};
 			name = Release;
 		};
+		8D94357D87747513B8B34AAE89096A03 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 7C9ABFFD091844286C2E85A20189BF7A /* IQKeyboardManagerSwift.debug.xcconfig */;
+			buildSettings = {
+				CODE_SIGNING_ALLOWED = NO;
+				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/IQKeyboardManagerSwift";
+				IBSC_MODULE = IQKeyboardManagerSwift;
+				INFOPLIST_FILE = "Target Support Files/IQKeyboardManagerSwift/ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist";
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+				PRODUCT_NAME = IQKeyboardManagerSwift;
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				WRAPPER_EXTENSION = bundle;
+			};
+			name = Debug;
+		};
 		90D4D09BCB6A4660E43ACBE9ECB6FE9A /* Debug */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
@@ -1796,64 +1589,9 @@
 			};
 			name = Release;
 		};
-		9FC6A9858115F41C4CEF565EBDE56CA8 /* Release */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 798C61760B9BC4B07BC60D42FCC09855 /* Pods-MiniScanner.release.xcconfig */;
-			buildSettings = {
-				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO;
-				CLANG_ENABLE_OBJC_WEAK = NO;
-				"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-MiniScanner/Pods-MiniScanner-Info.plist";
-				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 15.0;
-				LD_RUNPATH_SEARCH_PATHS = (
-					"$(inherited)",
-					"@executable_path/Frameworks",
-					"@loader_path/Frameworks",
-				);
-				MACH_O_TYPE = staticlib;
-				MODULEMAP_FILE = "Target Support Files/Pods-MiniScanner/Pods-MiniScanner.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;
-		};
-		A4D604173E31DBC1FE5B805782D66A58 /* Debug */ = {
-			isa = XCBuildConfiguration;
-			baseConfigurationReference = 9027793C7414B308134453884A6716FD /* ImagePicker.debug.xcconfig */;
-			buildSettings = {
-				CODE_SIGNING_ALLOWED = NO;
-				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/ImagePicker";
-				IBSC_MODULE = ImagePicker;
-				INFOPLIST_FILE = "Target Support Files/ImagePicker/ResourceBundle-ImagePicker-ImagePicker-Info.plist";
-				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
-				PRODUCT_NAME = ImagePicker;
-				SDKROOT = iphoneos;
-				SKIP_INSTALL = YES;
-				TARGETED_DEVICE_FAMILY = "1,2";
-				WRAPPER_EXTENSION = bundle;
-			};
-			name = Debug;
-		};
 		A73A28CEE205ACFB6072250615C7D39D /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 2EEF70A7586548C9681199386735B949 /* LanguageManager-iOS.debug.xcconfig */;
+			baseConfigurationReference = 8BA50CB662E7C23406F0B83501BA32D7 /* LanguageManager-iOS.debug.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1887,7 +1625,7 @@
 		};
 		B3CF11682A60F02B60820C17EE93D35E /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 86D4965F304A9370159F8BEE0D0951D5 /* IQKeyboardManagerSwift.debug.xcconfig */;
+			baseConfigurationReference = 7C9ABFFD091844286C2E85A20189BF7A /* IQKeyboardManagerSwift.debug.xcconfig */;
 			buildSettings = {
 				CLANG_ENABLE_OBJC_WEAK = NO;
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
@@ -1920,9 +1658,26 @@
 			};
 			name = Debug;
 		};
+		B7F72126190288DAACE0F880A0CE87C7 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 6224FD5F7C95061A57CAFA73995B3002 /* ImagePicker.debug.xcconfig */;
+			buildSettings = {
+				CODE_SIGNING_ALLOWED = NO;
+				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/ImagePicker";
+				IBSC_MODULE = ImagePicker;
+				INFOPLIST_FILE = "Target Support Files/ImagePicker/ResourceBundle-ImagePicker-ImagePicker-Info.plist";
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+				PRODUCT_NAME = ImagePicker;
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				WRAPPER_EXTENSION = bundle;
+			};
+			name = Debug;
+		};
 		B89AE063F35BBC5F3358209AF37E6D16 /* Debug */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 22FCBFA0E2A7651B248460AD3CB4DE32 /* NBBottomSheet.debug.xcconfig */;
+			baseConfigurationReference = 45B232DE9D6710FE8BF7DC25C2C80333 /* NBBottomSheet.debug.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -1956,7 +1711,7 @@
 		};
 		C15C4E31ADF19556825A2743AEF62A77 /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 04420AA069E60E2676B1C8145D489AFE /* IQKeyboardManagerSwift.release.xcconfig */;
+			baseConfigurationReference = FAE9E39FF0684DBEA572BB783B3A18F7 /* IQKeyboardManagerSwift.release.xcconfig */;
 			buildSettings = {
 				CLANG_ENABLE_OBJC_WEAK = NO;
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
@@ -1990,26 +1745,64 @@
 			};
 			name = Release;
 		};
-		C6749BA8DAA3DB384D4F9A84D744AD3D /* Debug */ = {
+		D39ECFFD29F8C3DA103F61A69C7BDEC1 /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 86D4965F304A9370159F8BEE0D0951D5 /* IQKeyboardManagerSwift.debug.xcconfig */;
+			baseConfigurationReference = 0CBC68B38C0421EC0AE36B43FB2C7636 /* ImagePicker.release.xcconfig */;
 			buildSettings = {
 				CODE_SIGNING_ALLOWED = NO;
-				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/IQKeyboardManagerSwift";
-				IBSC_MODULE = IQKeyboardManagerSwift;
-				INFOPLIST_FILE = "Target Support Files/IQKeyboardManagerSwift/ResourceBundle-IQKeyboardManagerSwift-IQKeyboardManagerSwift-Info.plist";
+				CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/ImagePicker";
+				IBSC_MODULE = ImagePicker;
+				INFOPLIST_FILE = "Target Support Files/ImagePicker/ResourceBundle-ImagePicker-ImagePicker-Info.plist";
 				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
-				PRODUCT_NAME = IQKeyboardManagerSwift;
+				PRODUCT_NAME = ImagePicker;
 				SDKROOT = iphoneos;
 				SKIP_INSTALL = YES;
 				TARGETED_DEVICE_FAMILY = "1,2";
 				WRAPPER_EXTENSION = bundle;
 			};
-			name = Debug;
+			name = Release;
+		};
+		E8CC8D3FD98540B83395885C5533CEE1 /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 798C61760B9BC4B07BC60D42FCC09855 /* Pods-MiniScanner.release.xcconfig */;
+			buildSettings = {
+				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO;
+				CLANG_ENABLE_OBJC_WEAK = NO;
+				"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-MiniScanner/Pods-MiniScanner-Info.plist";
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+				LD_RUNPATH_SEARCH_PATHS = (
+					"$(inherited)",
+					"@executable_path/Frameworks",
+					"@loader_path/Frameworks",
+				);
+				MACH_O_TYPE = staticlib;
+				MODULEMAP_FILE = "Target Support Files/Pods-MiniScanner/Pods-MiniScanner.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;
 		};
 		F8AD79C5141E28EAE67B8011B5C3B8F5 /* Release */ = {
 			isa = XCBuildConfiguration;
-			baseConfigurationReference = 4E8E62EE488350F66CC08D1D88AF14EE /* NBBottomSheet.release.xcconfig */;
+			baseConfigurationReference = 26EDF88E14046AAC34BFF99F97D23B05 /* NBBottomSheet.release.xcconfig */;
 			buildSettings = {
 				"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
 				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -2022,7 +1815,7 @@
 				GCC_PREFIX_HEADER = "Target Support Files/NBBottomSheet/NBBottomSheet-prefix.pch";
 				INFOPLIST_FILE = "Target Support Files/NBBottomSheet/NBBottomSheet-Info.plist";
 				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
-				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
@@ -2045,11 +1838,11 @@
 /* End XCBuildConfiguration section */
 
 /* Begin XCConfigurationList section */
-		1851179FA635C20329E7C7D49A253636 /* Build configuration list for PBXNativeTarget "IQKeyboardManagerSwift-IQKeyboardManagerSwift" */ = {
+		21E40E7EF4A668720A0BC4974A414686 /* Build configuration list for PBXNativeTarget "Pods-MiniScanner" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				C6749BA8DAA3DB384D4F9A84D744AD3D /* Debug */,
-				7357A4E2D538EC50B39381993F57DBCC /* Release */,
+				265E4B8B0199C32122BBAF162B6A7A3B /* Debug */,
+				E8CC8D3FD98540B83395885C5533CEE1 /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
@@ -2081,15 +1874,6 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		4E37980CDFA92572E6955A05C6C57717 /* Build configuration list for PBXNativeTarget "Pods-MiniScanner" */ = {
-			isa = XCConfigurationList;
-			buildConfigurations = (
-				2E083683897CAD4CAFE6027BFB9CB404 /* Debug */,
-				9FC6A9858115F41C4CEF565EBDE56CA8 /* Release */,
-			);
-			defaultConfigurationIsVisible = 0;
-			defaultConfigurationName = Release;
-		};
 		5D7A5BCA6DF599B98DA57AB77B8B2795 /* Build configuration list for PBXNativeTarget "NBBottomSheet" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
@@ -2099,20 +1883,20 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		98343682D690F1F5CF2596A899F35F57 /* Build configuration list for PBXNativeTarget "FSPagerView" */ = {
+		61E5E465E4EBDC7192A60BDB29B54904 /* Build configuration list for PBXNativeTarget "ImagePicker-ImagePicker" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				434E4A52CBC9F74FA2D8CDD170442C4A /* Debug */,
-				31731D2A96C7FF5AA4EE56EC2EB0AE2F /* Release */,
+				B7F72126190288DAACE0F880A0CE87C7 /* Debug */,
+				D39ECFFD29F8C3DA103F61A69C7BDEC1 /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
 		};
-		CB7A73EFBC09495176FD10B3C82A8767 /* Build configuration list for PBXNativeTarget "ImagePicker-ImagePicker" */ = {
+		768672492BEBD11B2982745D1B777D28 /* Build configuration list for PBXNativeTarget "IQKeyboardManagerSwift-IQKeyboardManagerSwift" */ = {
 			isa = XCConfigurationList;
 			buildConfigurations = (
-				A4D604173E31DBC1FE5B805782D66A58 /* Debug */,
-				191972B2CD0BAA4D702859FFE72BED96 /* Release */,
+				8D94357D87747513B8B34AAE89096A03 /* Debug */,
+				74A42B7360C7CAE64024B006CBA43A1A /* Release */,
 			);
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Release;
diff --git a/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/FSPagerView.xcscheme b/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/FSPagerView.xcscheme
deleted file mode 100644
index 96fef6e..0000000
--- a/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/FSPagerView.xcscheme
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Scheme
-   LastUpgradeVersion = "1500"
-   version = "1.3">
-   <BuildAction
-      parallelizeBuildables = "YES"
-      buildImplicitDependencies = "YES">
-      <BuildActionEntries>
-         <BuildActionEntry
-            buildForTesting = "YES"
-            buildForRunning = "YES"
-            buildForProfiling = "YES"
-            buildForArchiving = "YES"
-            buildForAnalyzing = "YES">
-            <BuildableReference
-               BuildableIdentifier = "primary"
-               BlueprintIdentifier = "D4F8239FB329387A8476B964D92D92E7"
-               BuildableName = "FSPagerView.framework"
-               BlueprintName = "FSPagerView"
-               ReferencedContainer = "container:Pods.xcodeproj">
-            </BuildableReference>
-         </BuildActionEntry>
-      </BuildActionEntries>
-   </BuildAction>
-   <TestAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      shouldUseLaunchSchemeArgsEnv = "YES">
-      <Testables>
-      </Testables>
-   </TestAction>
-   <LaunchAction
-      buildConfiguration = "Debug"
-      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
-      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
-      launchStyle = "0"
-      useCustomWorkingDirectory = "NO"
-      ignoresPersistentStateOnLaunch = "NO"
-      debugDocumentVersioning = "YES"
-      debugServiceExtension = "internal"
-      allowLocationSimulation = "YES">
-   </LaunchAction>
-   <ProfileAction
-      buildConfiguration = "Release"
-      shouldUseLaunchSchemeArgsEnv = "YES"
-      savedToolIdentifier = ""
-      useCustomWorkingDirectory = "NO"
-      debugDocumentVersioning = "YES">
-   </ProfileAction>
-   <AnalyzeAction
-      buildConfiguration = "Debug">
-   </AnalyzeAction>
-   <ArchiveAction
-      buildConfiguration = "Release"
-      revealArchiveInOrganizer = "YES">
-   </ArchiveAction>
-</Scheme>
diff --git a/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist b/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist
index afdf3cb..fefa7d3 100644
--- a/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/Pods/Pods.xcodeproj/xcuserdata/g.makhoul.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -11,61 +11,54 @@
 			<key>orderHint</key>
 			<integer>0</integer>
 		</dict>
-		<key>FSPagerView.xcscheme</key>
-		<dict>
-			<key>isShown</key>
-			<false/>
-			<key>orderHint</key>
-			<integer>1</integer>
-		</dict>
 		<key>IQKeyboardManagerSwift-IQKeyboardManagerSwift.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>5</integer>
+			<integer>4</integer>
 		</dict>
 		<key>IQKeyboardManagerSwift.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>4</integer>
+			<integer>3</integer>
 		</dict>
 		<key>ImagePicker-ImagePicker.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>3</integer>
+			<integer>2</integer>
 		</dict>
 		<key>ImagePicker.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>2</integer>
+			<integer>1</integer>
 		</dict>
 		<key>LanguageManager-iOS.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>6</integer>
+			<integer>5</integer>
 		</dict>
 		<key>NBBottomSheet.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>7</integer>
+			<integer>6</integer>
 		</dict>
 		<key>Pods-MiniScanner.xcscheme</key>
 		<dict>
 			<key>isShown</key>
 			<false/>
 			<key>orderHint</key>
-			<integer>8</integer>
+			<integer>7</integer>
 		</dict>
 	</dict>
 	<key>SuppressBuildableAutocreation</key>
diff --git a/Pods/FSPagerView/LICENSE b/Pods/TLPhotoPicker/LICENSE
similarity index 93%
rename from Pods/FSPagerView/LICENSE
rename to Pods/TLPhotoPicker/LICENSE
index a1e3bb3..2d3f131 100644
--- a/Pods/FSPagerView/LICENSE
+++ b/Pods/TLPhotoPicker/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2017 FSPagerView (https://github.com/WenchaoD/FSPagerView)
+Copyright (c) 2017 wade.hawk <junhyi.park@gmail.com>
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
diff --git a/Pods/TLPhotoPicker/README.md b/Pods/TLPhotoPicker/README.md
new file mode 100644
index 0000000..e598753
--- /dev/null
+++ b/Pods/TLPhotoPicker/README.md
@@ -0,0 +1,408 @@
+<img src="./Images/tlphotologo.png">
+
+[![Version](https://img.shields.io/cocoapods/v/TLPhotoPicker.svg?style=flat)](http://cocoapods.org/pods/TLPhotoPicker)
+[![License](https://img.shields.io/cocoapods/l/TLPhotoPicker.svg?style=flat)](http://cocoapods.org/pods/TLPhotoPicker)
+[![Platform](https://img.shields.io/cocoapods/p/TLPhotoPicker.svg?style=flat)](http://cocoapods.org/pods/TLPhotoPicker)
+![Swift](https://img.shields.io/badge/%20in-swift%205.0-orange.svg)
+
+## Written in Swift 5.0
+
+TLPhotoPicker enables application to pick images and videos from multiple smart album in iOS, similar to the current facebook app.
+
+## Demo 🙉
+
+| Facebook Picker | TLPhotoPicker  |
+| ------------- | ------------- |
+| ![Facebook Picker](Images/facebook_ex.gif)  | ![TLPhotoPicker](Images/tlphotopicker_ex.gif)  |
+
+## Features
+
+- support smart album collection. 
+  - camera roll, selfies, panoramas, favorites, videos, custom users album
+- selected order index.
+- playback video and live photos.
+  - just one. playback first video or live Photo in bounds of visible cell.
+- display video duration.
+- async phasset request and displayed cell.
+  - scrolling performance is better than facebook in displaying video assets collection.
+- custom cell
+- custom display and selection rules
+- reload of changes that occur in the Photos library.
+- support iCloud Photo Library
+- adds long press preview to images. ( to @smeshko ) [Preview](https://github.com/tilltue/TLPhotoPicker/pull/252#issue-362005178)
+
+| Smart album collection | LivePhotoCell | VideoPhotoCell  | PhotoCell | CustomCell(instagram) |
+| ------------- | ------------- | ------------- | ------------- | ------------- |
+| ![Facebook Picker](Images/smartalbum.png)  | ![LivePhotoCell](Images/livephotocell.png)  | ![VideoPhotoCell](Images/videophotocell.png)  | ![PhotoCell](Images/photocell.png)  | ![PhotoCell](Images/customcell.png)  |
+
+Custom Camera Cell
+
+| Live CameraCell |
+| ------------- |
+| ![Like Line](Images/custom_cameracell.gif)
+
+## Installation 
+
+### Requirements 
+
+- Swift 5.0 ( Swift 4.2 -> use 'version 1.8.3' )
+- iOS 9.1 (for use live photos)
+
+### Cocoapods
+
+TLPhotoPicker is available through [CocoaPods](http://cocoapods.org). To install
+it, simply add the following line to your Podfile:
+
+```ruby
+platform :ios, '9.1'
+pod "TLPhotoPicker"
+```
+
+### Carthage
+
+Carthage is a simple, decentralized dependency manager for Cocoa.
+
+Specify TLPhotoPicker into your project's Cartfile:
+
+```
+github "tilltue/TLPhotoPicker"
+```
+
+### Swift Package Manager
+
+The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler. It is in early development, but TLPhotoPicker does support its use on supported platforms.
+
+Once you have your Swift package set up, adding Alamofire as a dependency is as easy as adding it to the dependencies value of your Package.swift.
+
+```
+dependencies: [
+    .package(url: "https://github.com/tilltue/TLPhotoPicker.git", .upToNextMajor(from: "2.1.0"))
+]
+```
+
+> Don't forget the Privacy Description in `info.plist`.
+<img src="./Images/Privacy.png">
+
+> iOS 14
+> You can suppress the automatic prompting from the system by setting this key to yes in your apps info plist.
+> PHPhotoLibraryPreventAutomaticLimitedAccessAlert = YES
+https://developer.apple.com/videos/play/wwdc2020/10641/
+
+## Usage 
+
+**use delegate**
+
+You can choose delegate method or closure for handle picker event.
+
+```swift 
+class ViewController: UIViewController,TLPhotosPickerViewControllerDelegate {
+    var selectedAssets = [TLPHAsset]()
+    @IBAction func pickerButtonTap() {
+        let viewController = TLPhotosPickerViewController()
+        viewController.delegate = self
+        var configure = TLPhotosPickerConfigure()
+        //configure.nibSet = (nibName: "CustomCell_Instagram", bundle: Bundle.main) // If you want use your custom cell..
+        self.present(viewController, animated: true, completion: nil)
+    }
+    //TLPhotosPickerViewControllerDelegate
+    func shouldDismissPhotoPicker(withTLPHAssets: [TLPHAsset]) -> Bool {
+        // use selected order, fullresolution image
+        self.selectedAssets = withTLPHAssets
+	return true
+    }
+    func dismissPhotoPicker(withPHAssets: [PHAsset]) {
+        // if you want to used phasset. 
+    }
+    func photoPickerDidCancel() {
+        // cancel
+    }
+    func dismissComplete() {
+        // picker viewcontroller dismiss completion
+    }
+    func canSelectAsset(phAsset: PHAsset) -> Bool {
+        //Custom Rules & Display
+        //You can decide in which case the selection of the cell could be forbidden. 
+    }
+    func didExceedMaximumNumberOfSelection(picker: TLPhotosPickerViewController) {
+        // exceed max selection
+    }
+    func handleNoAlbumPermissions(picker: TLPhotosPickerViewController) {
+        // handle denied albums permissions case
+    }
+    func handleNoCameraPermissions(picker: TLPhotosPickerViewController) {
+        // handle denied camera permissions case
+    }
+}
+
+```
+**use closure**
+
+```swift
+    init(withPHAssets: (([PHAsset]) -> Void)? = nil, didCancel: ((Void) -> Void)? = nil)
+    init(withTLPHAssets: (([TLPHAsset]) -> Void)? = nil, didCancel: ((Void) -> Void)? = nil)
+    var canSelectAsset: ((PHAsset) -> Bool)? = nil
+    var didExceedMaximumNumberOfSelection: ((TLPhotosPickerViewController) -> Void)? = nil
+    var handleNoAlbumPermissions: ((TLPhotosPickerViewController) -> Void)? = nil
+    var handleNoCameraPermissions: ((TLPhotosPickerViewController) -> Void)? = nil
+    var dismissCompletion: (() -> Void)? = nil
+```
+```swift
+class ViewController: UIViewController,TLPhotosPickerViewControllerDelegate {
+    var selectedAssets = [TLPHAsset]()
+    @IBAction func pickerButtonTap() {
+        let viewController = TLPhotosPickerViewController(withTLPHAssets: { [weak self] (assets) in // TLAssets
+            self?.selectedAssets = assets
+        }, didCancel: nil)
+        viewController.didExceedMaximumNumberOfSelection = { [weak self] (picker) in
+            //exceed max selection
+        }
+        viewController.handleNoAlbumPermissions = { [weak self] (picker) in
+            // handle denied albums permissions case
+        }
+        viewController.handleNoCameraPermissions = { [weak self] (picker) in
+            // handle denied camera permissions case
+        }
+        viewController.selectedAssets = self.selectedAssets
+        self.present(viewController, animated: true, completion: nil)
+    }
+}
+
+```
+
+**Custom Cell**
+Custom Cell must subclass TLPhotoCollectionViewCell
+```Swift
+class CustomCell_Instagram: TLPhotoCollectionViewCell {
+
+}
+
+//If you want custom camera cell?
+//only used camera cell
+[Sample](https://github.com/tilltue/TLPhotoPicker/blob/master/Example/TLPhotoPicker/CustomCameraCell.swift)
+
+//Adding the possibility to handle cell display according to a specific conditions
+func update(with phAsset: PHAsset)
+func selectedCell()
+func willDisplayCell()
+func endDisplayingCell()
+```
+
+**Custom Rules & Display**
+
+You can implement your own rules to handle the cell display. You can decide in which case the selection of the cell could be forbidden. 
+
+For example, if you want to disable the selection of a cell if its width is under 300, you can follow these steps:
+
+- Override the update method of your custom cell and add your own display rule 
+
+```swift
+override func update(with phAsset: PHAsset) {
+    super.update(with: phAsset)
+    self.sizeRequiredOverlayView?.isHidden = !(phAsset.pixelHeight <= 300 && phAsset.pixelWidth <= 300)
+}
+``` 
+In this code, we show an overlay when the height and width required values are not satisified.
+
+- When you instanciate a `TLPhotosPickerViewController` subclass, you can pass a closure called `canSelectAsset` to handle the selection according to some rules.  ( or delegate)
+
+```Swift
+//use delegate 
+public protocol TLPhotosPickerViewControllerDelegate: class {
+    ...
+    func canSelectAsset(phAsset: PHAsset) -> Bool
+    ...
+}
+
+extension UserViewController: TLPhotosPickerViewControllerDelegate {
+    func canSelectAsset(phAsset: PHAsset) -> Bool {
+        if asset.pixelHeight < 100 || asset.pixelWidth < 100 {
+            self?.showUnsatisifiedSizeAlert(vc: viewController)
+            return false
+        }
+        return true
+    }
+}
+
+//or use closure
+viewController.canSelectAsset = { [weak self] asset -> Bool in
+    if asset.pixelHeight < 100 || asset.pixelWidth < 100 {
+        self?.showUnsatisifiedSizeAlert(vc: viewController)
+        return false
+    }
+    return true
+}
+```
+In this code, we show an alert when the condition in the closure are not satisfiied.
+
+**TLPHAsset**
+
+```swift
+public struct TLPHAsset {
+    public enum AssetType {
+        case photo,video,livePhoto
+    }
+    // phasset 
+    public var phAsset: PHAsset? = nil
+    // selected order index
+    public var selectedOrder: Int = 0
+    // asset type
+    public var type: AssetType
+    // get full resolution image 
+    public var fullResolutionImage: UIImage?
+    // get photo file size (async)
+    public func photoSize(options: PHImageRequestOptions? = nil ,completion: @escaping ((Int)->Void), livePhotoVideoSize: Bool = false)
+    // get video file size (async)
+    public func videoSize(options: PHVideoRequestOptions? = nil, completion: @escaping ((Int)->Void))
+    // get async icloud image (download)
+    @discardableResult
+    public func cloudImageDownload(progressBlock: @escaping (Double) -> Void, completionBlock:@escaping (UIImage?)-> Void ) -> PHImageRequestID?
+    // get original media file async copy temporary media file ( photo(png,gif...etc.) and video ) -> Don't forget, You should delete temporary file.
+    // parmeter : convertLivePhotosToJPG
+    // false : If you want mov file at live photos
+    // true  : If you want png file at live photos ( HEIC )
+    public func tempCopyMediaFile(videoRequestOptions: PHVideoRequestOptions? = nil, 
+                                  imageRequestOptions: PHImageRequestOptions? = nil,
+                                  livePhotoRequestOptions: PHLivePhotoRequestOptions? = nil,
+                                  exportPreset: String = AVAssetExportPresetHighestQuality, 
+                                  convertLivePhotosToJPG: Bool = false, 
+                                  progressBlock:((Double) -> Void)? = nil, 
+                                  completionBlock:@escaping ((URL,String) -> Void)) -> PHImageRequestID?
+    //Apparently, This is not the only way to export video.
+    //There is many way that export a video.
+    //This method was one of them.
+    public func exportVideoFile(options: PHVideoRequestOptions? = nil,
+                                outputURL: URL? = nil,
+                                outputFileType: AVFileType = .mov,
+                                progressBlock:((Double) -> Void)? = nil,
+                                completionBlock:@escaping ((URL,String) -> Void))
+    // get original asset file name
+    public var originalFileName: String?
+}
+```
+>  Note:  convenience export method
+>  fullResolutionImage, cloudImageDownload, tempCopyMediaFile, exportVideoFile
+>  It's not enough if you wanted to use more complicated export asset options. ( progress, export type, etc..)
+
+## Customize 
+
+```swift
+let viewController = TLPhotosPickerViewController()
+var configure = TLPhotosPickerConfigure()
+viewController.configure = configure
+
+public struct TLPhotosPickerConfigure {
+    public var customLocalizedTitle: [String: String] = ["Camera Roll": "Camera Roll"] // Set [:] if you want use default localized title of album
+    public var tapHereToChange = "Tap here to change"
+    public var cancelTitle = "Cancel"
+    public var doneTitle = "Done"
+    public var emptyMessage = "No albums"
+    public var emptyImage: UIImage? = nil
+    public var usedCameraButton = true
+    public var usedPrefetch = false
+    public var previewAtForceTouch = false
+    public var allowedLivePhotos = true
+    public var allowedVideo = true
+    public var allowedAlbumCloudShared = false
+    public var allowedPhotograph = true // for camera : allow this option when you want to take a photos
+    public var allowedVideoRecording = true //for camera : allow this option when you want to recording video.
+    public var recordingVideoQuality: UIImagePickerControllerQualityType = .typeMedium //for camera : recording video quality
+    public var maxVideoDuration:TimeInterval? = nil //for camera : max video recording duration
+    public var autoPlay = true
+    public var muteAudio = true
+    public var preventAutomaticLimitedAccessAlert = true // newest iOS 14
+    public var mediaType: PHAssetMediaType? = nil
+    public var numberOfColumn = 3
+    public var minimumLineSpacing: CGFloat = 5
+    public var minimumInteritemSpacing: CGFloat = 5
+    public var singleSelectedMode = false
+    public var maxSelectedAssets: Int? = nil //default: inf
+    public var fetchOption: PHFetchOptions? = nil //default: creationDate
+    public var fetchCollectionOption: [FetchCollectionType: PHFetchOptions] = [:] 
+    public var singleSelectedMode = false
+    public var selectedColor = UIColor(red: 88/255, green: 144/255, blue: 255/255, alpha: 1.0)
+    public var cameraBgColor = UIColor(red: 221/255, green: 223/255, blue: 226/255, alpha: 1)
+    public var cameraIcon = TLBundle.podBundleImage(named: "camera")
+    public var videoIcon = TLBundle.podBundleImage(named: "video")
+    public var placeholderIcon = TLBundle.podBundleImage(named: "insertPhotoMaterial")
+    public var nibSet: (nibName: String, bundle:Bundle)? = nil // custom cell
+    public var cameraCellNibSet: (nibName: String, bundle:Bundle)? = nil // custom camera cell
+    public var fetchCollectionTypes: [(PHAssetCollectionType,PHAssetCollectionSubtype)]? = nil
+    public var groupByFetch: PHFetchedResultGroupedBy? = nil // cannot be used prefetch options
+    public var supportedInterfaceOrientations: UIInterfaceOrientationMask = .portrait
+    public var popup: [PopupConfigure] = []
+    public init() {
+    }
+}
+
+//Related issue: https://github.com/tilltue/TLPhotoPicker/issues/201
+//e.g.
+//let option = PHFetchOptions()
+//configure.fetchCollectionOption[.assetCollections(.smartAlbum)] = option
+//configure.fetchCollectionOption[.assetCollections(.album)] = option
+//configure.fetchCollectionOption[.topLevelUserCollections] = option
+
+public enum FetchCollectionType {
+    case assetCollections(PHAssetCollectionType)
+    case topLevelUserCollections
+}
+
+public enum PopupConfigure {
+    //Popup album view animation duration
+    case animation(TimeInterval)
+}
+
+// PHFetchedResultGroupedBy
+//
+// CGrouped by date, cannot be used prefetch options
+// take about few seconds ( 5000 image iPhoneX: 1 ~ 1.5 sec ) 
+public enum PHFetchedResultGroupedBy {
+    case year
+    case month
+    case week
+    case day
+    case hour
+    case custom(dateFormat: String)
+}
+
+//customizable photos picker viewcontroller
+class CustomPhotoPickerViewController: TLPhotosPickerViewController {
+    override func makeUI() {
+        super.makeUI()
+        self.customNavItem.leftBarButtonItem = UIBarButtonItem.init(barButtonSystemItem: .stop, target: nil, action: #selector(customAction))
+    }
+    func customAction() {
+        self.dismiss(animated: true, completion: nil)
+    }
+}
+
+//for log
+public protocol TLPhotosPickerLogDelegate: class {
+    func selectedCameraCell(picker: TLPhotosPickerViewController)
+    func deselectedPhoto(picker: TLPhotosPickerViewController, at: Int)
+    func selectedPhoto(picker: TLPhotosPickerViewController, at: Int)
+    func selectedAlbum(picker: TLPhotosPickerViewController, title: String, at: Int)
+}
+
+//for collection supplement view 
+let viewController = TLPhotosPickerViewController()
+viewController.customDataSouces = CustomDataSources() // inherit TLPhotopickerDataSourcesProtocol
+
+public protocol TLPhotopickerDataSourcesProtocol {
+    func headerReferenceSize() -> CGSize
+    func footerReferenceSize() -> CGSize
+    func registerSupplementView(collectionView: UICollectionView)
+    func supplementIdentifier(kind: String) -> String
+    func configure(supplement view: UICollectionReusableView, section: (title: String, assets: [TLPHAsset]))
+}
+
+```
+
+## Author
+
+Does your organization or project use TLPhotoPicker? Please let me know by email.
+
+wade.hawk, junhyi.park@gmail.com
+
+## License 
+
+TLPhotoPicker is available under the MIT license. See the LICENSE file for more info.
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/SynchronizedDictionary.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/SynchronizedDictionary.swift
new file mode 100644
index 0000000..34bba14
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/SynchronizedDictionary.swift
@@ -0,0 +1,54 @@
+//
+//  SynchronizedDictionary.swift
+//  TLPhotoPicker
+//
+//  Created by wade.hawk on 30/03/2019.
+//
+
+import Foundation
+
+public class SynchronizedDictionary<K:Hashable,V> {
+    private var dictionary: [K:V] = [:]
+    private let accessQueue = DispatchQueue(label: "SynchronizedDictionaryAccess",
+                                            attributes: .concurrent)
+    
+    deinit {
+        //print("deinit SynchronizedDictionary")
+    }
+    
+    public func removeAll() {
+        self.accessQueue.async(flags:.barrier) {
+            self.dictionary.removeAll()
+        }
+    }
+    
+    public func removeValue(forKey: K) {
+        self.accessQueue.async(flags:.barrier) {
+            self.dictionary.removeValue(forKey: forKey)
+        }
+    }
+    
+    public func forEach(_ closure: ((K,V) -> Void)) {
+        self.accessQueue.sync {
+            self.dictionary.forEach{ arg in
+                let (key, value) = arg
+                closure(key,value)
+            }
+        }
+    }
+    
+    public subscript(key: K) -> V? {
+        set {
+            self.accessQueue.async(flags:.barrier) {
+                self.dictionary[key] = newValue
+            }
+        }
+        get {
+            var element: V?
+            self.accessQueue.sync {
+                element = self.dictionary[key]
+            }
+            return element
+        }
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAlbumPopView.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAlbumPopView.swift
new file mode 100644
index 0000000..3eaa92a
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAlbumPopView.swift
@@ -0,0 +1,83 @@
+//
+//  TLAlbumPopView.swift
+//  TLPhotosPicker
+//
+//  Created by wade.hawk on 2017. 4. 19..
+//  Copyright © 2017년 wade.hawk. All rights reserved.
+//
+
+import UIKit
+
+protocol PopupViewProtocol: AnyObject {
+    var bgView: UIView! { get set }
+    var popupView: UIView! { get set }
+    var originalFrame: CGRect { get set }
+    var show: Bool { get set }
+    func setupPopupFrame()
+}
+
+extension PopupViewProtocol where Self: UIView {
+    fileprivate func getFrame(scale: CGFloat) -> CGRect {
+        var frame = self.originalFrame
+        frame.size.width = frame.size.width * scale
+        frame.size.height = frame.size.height * scale
+        frame.origin.x = self.frame.width/2 - frame.width/2
+        return frame
+    }
+    func setupPopupFrame() {
+        if self.originalFrame == CGRect.zero {
+            self.originalFrame = self.popupView.frame
+        }else {
+            self.originalFrame.size.height = self.popupView.frame.height
+        }
+    }
+    func show(_ show: Bool, duration: TimeInterval = 0.1) {
+        guard self.show != show else { return }
+        self.layer.removeAllAnimations()
+        self.isHidden = false
+        self.popupView.frame = show ? getFrame(scale: 0.1) : self.popupView.frame
+        self.bgView.alpha = show ? 0 : 1
+        UIView.animate(withDuration: duration, animations: {
+            self.bgView.alpha = show ? 1 : 0
+            self.popupView.transform = show ? CGAffineTransform(scaleX: 1.05, y: 1.05) : CGAffineTransform(scaleX: 0.1, y: 0.1)
+            self.popupView.frame = show ? self.getFrame(scale: 1.05) : self.getFrame(scale: 0.1)
+        }) { _ in
+            self.isHidden = show ? false : true
+            UIView.animate(withDuration: duration) {
+                if show {
+                    self.popupView.transform = CGAffineTransform(scaleX: 1, y: 1)
+                    self.popupView.frame = self.originalFrame
+                }
+                self.show = show
+            }
+        }
+    }
+}
+
+open class TLAlbumPopView: UIView, PopupViewProtocol {
+    @IBOutlet open var bgView: UIView!
+    @IBOutlet open var popupView: UIView!
+    @IBOutlet var popupViewHeight: NSLayoutConstraint!
+    @IBOutlet open var tableView: UITableView!
+    @objc var originalFrame = CGRect.zero
+    @objc var show = false
+    
+    deinit {
+//        print("deinit TLAlbumPopView")
+    }
+    
+    override open func awakeFromNib() {
+        super.awakeFromNib()
+        self.popupView.layer.cornerRadius = 5.0
+        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(tapBgView))
+        self.bgView.addGestureRecognizer(tapGesture)
+        self.tableView.register(UINib(nibName: "TLCollectionTableViewCell", bundle: TLBundle.bundle()), forCellReuseIdentifier: "TLCollectionTableViewCell")
+        if #available(iOS 13.0, *) {
+            self.popupView.backgroundColor = .systemBackground
+        }
+    }
+    
+    @objc func tapBgView() {
+        self.show(false)
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetCollection+Extension.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetCollection+Extension.swift
new file mode 100644
index 0000000..6d1b999
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetCollection+Extension.swift
@@ -0,0 +1,68 @@
+//
+//  TLAssetCollection+Extension.swift
+//  TLPhotoPicker
+//
+//  Created by wade.hawk on 21/01/2019.
+//
+
+import Foundation
+import Photos
+
+public enum PHFetchedResultGroupedBy {
+    case year
+    case month
+    case week
+    case day
+    case hour
+    case custom(dateFormat: String)
+    var dateFormat: String {
+        switch self {
+        case .year:
+            return "yyyy"
+        case .month:
+            return "yyyyMM"
+        case .week:
+            return "yyyyMMW"
+        case .day:
+            return "yyyyMMdd"
+        case .hour:
+            return "yyyyMMddHH"
+        case let .custom(dateFormat):
+            return dateFormat
+        }
+    }
+}
+
+extension TLAssetsCollection {
+    func enumarateFetchResult(groupedBy: PHFetchedResultGroupedBy) -> Dictionary<String,[TLPHAsset]> {
+        let dateFormatter = DateFormatter()
+        dateFormatter.dateFormat = groupedBy.dateFormat
+        var assets = [PHAsset]()
+        assets.reserveCapacity(self.fetchResult?.count ?? 0)
+        self.fetchResult?.enumerateObjects({ (phAsset, idx, stop) in
+            if phAsset.creationDate != nil {
+                assets.append(phAsset)
+            }
+        })
+        let sections = Dictionary(grouping: assets.map{ TLPHAsset(asset: $0) }) { (element) -> String in
+            if let creationDate = element.phAsset?.creationDate {
+                let identifier = dateFormatter.string(from: creationDate)
+                return identifier
+            }
+            return ""
+        }
+        return sections
+    }
+
+    func section(groupedBy: PHFetchedResultGroupedBy) -> [(String,[TLPHAsset])] {
+        let dict = enumarateFetchResult(groupedBy: groupedBy)
+        var sections = [(String,[TLPHAsset])]()
+        let sortedKeys = dict.keys.sorted(by: >)
+        for key in sortedKeys {
+            if let array = dict[key] {
+                sections.append((key, array))
+            }
+        }
+        return sections
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetPreviewViewController.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetPreviewViewController.swift
new file mode 100644
index 0000000..9f7c11a
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetPreviewViewController.swift
@@ -0,0 +1,204 @@
+import UIKit
+import Photos
+import PhotosUI
+
+open class TLAssetPreviewViewController: UIViewController {
+    
+    fileprivate var player: AVPlayer?
+    fileprivate var playerLayer: AVPlayerLayer?
+    
+    fileprivate let imageView: UIImageView = {
+        let view = UIImageView()
+        view.clipsToBounds = false
+        view.contentMode = .scaleAspectFill
+        return view
+    }()
+    
+    fileprivate let livePhotoView = PHLivePhotoView()
+
+    open var asset: PHAsset? {
+        didSet {
+            guard let asset = self.asset else {
+                livePhotoView.livePhoto = nil
+                imageView.image = nil
+                return
+            }
+
+            updatePreferredContentSize(for: asset, isPortrait: UIApplication.shared.orientation?.isPortrait == true)
+            
+            if asset.mediaType == .image {
+                previewImage(from: asset)
+            } else {
+                previewVideo(from: asset)
+            }
+        }
+    }
+    
+    override open func viewDidLoad() {
+        super.viewDidLoad()
+        setupViews()
+    }
+    
+    override open func viewDidLayoutSubviews() {
+        super.viewDidLayoutSubviews()
+        playerLayer?.frame = imageView.bounds
+    }
+    
+    override open func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
+        super.viewWillTransition(to: size, with: coordinator)
+        if let asset = self.asset {
+            updatePreferredContentSize(for: asset, isPortrait: size.height > size.width)
+        }
+    }
+
+    deinit {
+        player?.pause()
+    }
+}
+
+private extension TLAssetPreviewViewController {
+    func setupViews() {
+        view.backgroundColor = .previewBackground
+        view.addAligned(imageView)
+        view.addAligned(livePhotoView)
+    }
+    
+    func fetchImage(for asset: PHAsset, canHandleDegraded: Bool = true, completion: @escaping ((UIImage?) -> Void)) {
+        let options = PHImageRequestOptions()
+        options.isNetworkAccessAllowed = true
+        options.deliveryMode = .opportunistic
+        PHCachingImageManager.default().requestImage(
+            for: asset,
+            targetSize: CGSize(width: asset.pixelWidth, height: asset.pixelHeight),
+            contentMode: .aspectFit,
+            options: options,
+            resultHandler: { (image, info) in
+                if !canHandleDegraded {
+                    if let isDegraded = info?[PHImageResultIsDegradedKey] as? Bool, isDegraded {
+                        return
+                    }
+                }
+                completion(image)
+        })
+    }
+    
+    func updatePreferredContentSize(for asset: PHAsset, isPortrait: Bool) {
+        guard asset.pixelWidth != 0 && asset.pixelHeight != 0 else { return }
+        
+        let contentScale: CGFloat = 1
+        let assetWidth = CGFloat(asset.pixelWidth)
+        let assetHeight = CGFloat(asset.pixelHeight)
+        let assetRatio = assetHeight / assetWidth
+        let screenWidth = isPortrait ? UIScreen.main.bounds.width : UIScreen.main.bounds.height
+        let screenHeight = isPortrait ? UIScreen.main.bounds.height : UIScreen.main.bounds.width
+        let screenRatio = screenHeight / screenWidth
+        
+        if assetRatio > screenRatio {
+            let scale = screenHeight / assetHeight
+            preferredContentSize = CGSize(width: assetWidth * scale * contentScale, height: assetHeight * scale * contentScale)
+        } else {
+            let scale = screenWidth / assetWidth
+            preferredContentSize = CGSize(width: assetWidth * scale * contentScale, height: assetHeight * scale * contentScale)
+        }
+    }
+    
+    func previewVideo(from asset: PHAsset) {
+        livePhotoView.isHidden = true
+        PHCachingImageManager.default().requestAVAsset(
+            forVideo: asset,
+            options: nil,
+            resultHandler: { (avAsset, audio, info) in
+                DispatchQueue.main.async { [weak self] in
+                    self?.imageView.isHidden = false
+                    
+                    if let avAsset = avAsset {
+                        let playerItem = AVPlayerItem(asset: avAsset)
+                        let player = AVPlayer(playerItem: playerItem)
+                        let playerLayer = AVPlayerLayer(player: player)
+                        playerLayer.videoGravity = AVLayerVideoGravity.resizeAspect
+                        playerLayer.masksToBounds = true
+                        playerLayer.frame = self?.imageView.bounds ?? .zero
+                        
+                        self?.imageView.layer.addSublayer(playerLayer)
+                        self?.playerLayer = playerLayer
+                        self?.player = player
+                        
+                        player.play()
+                    } else {
+                        self?.previewPhoto(from: asset)
+                    }
+                }
+        })
+    }
+
+    func previewImage(from asset: PHAsset) {
+        imageView.isHidden = true
+        livePhotoView.isHidden = false
+        
+        if asset.mediaSubtypes == .photoLive {
+            previewLivePhoto(from: asset)
+        } else {
+            previewPhoto(from: asset)
+        }
+    }
+    
+    func previewLivePhoto(from asset: PHAsset) {
+        
+        let options = PHLivePhotoRequestOptions()
+        options.isNetworkAccessAllowed = true
+        options.deliveryMode = .opportunistic
+
+        PHCachingImageManager.default().requestLivePhoto(
+            for: asset,
+            targetSize: CGSize(width: asset.pixelWidth, height: asset.pixelHeight),
+            contentMode: .aspectFill,
+            options: options,
+            resultHandler: { [weak self] (livePhoto, info) in
+                if let livePhoto = livePhoto, info?[PHImageErrorKey] == nil {
+                    self?.livePhotoView.livePhoto = livePhoto
+                    self?.livePhotoView.startPlayback(with: .full)
+                } else {
+                    self?.previewPhoto(from: asset)
+                }
+        })
+    }
+    
+    func previewPhoto(from asset: PHAsset) {
+        imageView.isHidden = false
+        fetchImage(for: asset, canHandleDegraded: false, completion: { self.imageView.image = $0 })
+    }
+}
+
+private extension UIColor {
+    static var previewBackground: UIColor {
+        if #available(iOS 13.0, *) {
+            return .systemBackground
+        } else {
+            return .white
+        }
+    }
+}
+
+private extension UIView {
+    func addAligned(_ view: UIView) {
+        view.translatesAutoresizingMaskIntoConstraints = false
+        addSubview(view)
+        
+        NSLayoutConstraint.activate([
+            view.leadingAnchor.constraint(equalTo: leadingAnchor),
+            view.trailingAnchor.constraint(equalTo: trailingAnchor),
+            view.topAnchor.constraint(equalTo: topAnchor),
+            view.bottomAnchor.constraint(equalTo: bottomAnchor)
+        ])
+    }
+}
+
+private extension UIApplication {
+    var orientation: UIInterfaceOrientation? {
+        if #available(iOS 13.0, *) {
+            return windows.first(where: { $0.isKeyWindow })?.windowScene?.interfaceOrientation
+        } else {
+            return statusBarOrientation
+        }
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetsCollection.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetsCollection.swift
new file mode 100644
index 0000000..aede55f
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLAssetsCollection.swift
@@ -0,0 +1,430 @@
+//
+//  TLAssetsCollection.swift
+//  TLPhotosPicker
+//
+//  Created by wade.hawk on 2017. 4. 18..
+//  Copyright © 2017년 wade.hawk. All rights reserved.
+//
+
+import Foundation
+import Photos
+import PhotosUI
+import MobileCoreServices
+
+public struct TLPHAsset {
+    enum CloudDownloadState {
+        case ready, progress, complete, failed
+    }
+    
+    public enum AssetType {
+        case photo, video, livePhoto
+    }
+    
+    public enum ImageExtType: String {
+        case png, jpg, gif, heic
+    }
+    
+    var state = CloudDownloadState.ready
+    public var phAsset: PHAsset? = nil
+    //Bool to check if TLPHAsset returned is created using camera.
+    public var isSelectedFromCamera = false
+    public var selectedOrder: Int = 0
+    public var type: AssetType {
+        get {
+            guard let phAsset = self.phAsset else { return .photo }
+            if phAsset.mediaSubtypes.contains(.photoLive) {
+                return .livePhoto
+            }else if phAsset.mediaType == .video {
+                return .video
+            }else {
+                return .photo
+            }
+        }
+    }
+    
+    public var fullResolutionImage: UIImage? {
+        get {
+            guard let phAsset = self.phAsset else { return nil }
+            return TLPhotoLibrary.fullResolutionImageData(asset: phAsset)
+        }
+    }
+    
+    public func extType(defaultExt: ImageExtType = .png) -> ImageExtType {
+        guard let fileName = self.originalFileName,
+              let encodedFileName = fileName.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed),
+              let extention = URL(string: encodedFileName)?.pathExtension.lowercased() else {
+                  return defaultExt
+              }
+        return ImageExtType(rawValue: extention) ?? defaultExt
+    }
+    
+    @discardableResult
+    public func cloudImageDownload(progressBlock: @escaping (Double) -> Void, completionBlock:@escaping (UIImage?)-> Void ) -> PHImageRequestID? {
+        guard let phAsset = self.phAsset else { return nil }
+        return TLPhotoLibrary.cloudImageDownload(asset: phAsset, progressBlock: progressBlock, completionBlock: completionBlock)
+    }
+    
+    public var originalFileName: String? {
+        get {
+            guard let phAsset = self.phAsset,let resource = PHAssetResource.assetResources(for: phAsset).first else { return nil }
+            return resource.originalFilename
+        }
+    }
+    
+    public func photoSize(options: PHImageRequestOptions? = nil ,completion: @escaping ((Int)->Void), livePhotoVideoSize: Bool = false) {
+        guard let phAsset = self.phAsset, self.type == .photo || self.type == .livePhoto else { completion(-1); return }
+        var resource: PHAssetResource? = nil
+        if phAsset.mediaSubtypes.contains(.photoLive) == true, livePhotoVideoSize {
+            resource = PHAssetResource.assetResources(for: phAsset).filter { $0.type == .pairedVideo }.first
+        }else {
+            resource = PHAssetResource.assetResources(for: phAsset).filter { $0.type == .photo }.first
+        }
+        if let fileSize = resource?.value(forKey: "fileSize") as? Int {
+            completion(fileSize)
+        }else {
+            PHImageManager.default().requestImageData(for: phAsset, options: nil) { (data, uti, orientation, info) in
+                var fileSize = -1
+                if let data = data {
+                    let bcf = ByteCountFormatter()
+                    bcf.countStyle = .file
+                    fileSize = data.count
+                }
+                DispatchQueue.main.async {
+                    completion(fileSize)
+                }
+            }
+        }
+    }
+    
+    public func videoSize(options: PHVideoRequestOptions? = nil, completion: @escaping ((Int)->Void)) {
+        guard let phAsset = self.phAsset, self.type == .video else {  completion(-1); return }
+        let resource = PHAssetResource.assetResources(for: phAsset).filter { $0.type == .video }.first
+        if let fileSize = resource?.value(forKey: "fileSize") as? Int {
+            completion(fileSize)
+        }else {
+            PHImageManager.default().requestAVAsset(forVideo: phAsset, options: options) { (avasset, audioMix, info) in
+                func fileSize(_ url: URL?) -> Int? {
+                    do {
+                        guard let fileSize = try url?.resourceValues(forKeys: [.fileSizeKey]).fileSize else { return nil }
+                        return fileSize
+                    }catch { return nil }
+                }
+                var url: URL? = nil
+                if let urlAsset = avasset as? AVURLAsset {
+                    url = urlAsset.url
+                }else if let sandboxKeys = info?["PHImageFileSandboxExtensionTokenKey"] as? String, let path = sandboxKeys.components(separatedBy: ";").last {
+                    url = URL(fileURLWithPath: path)
+                }
+                let size = fileSize(url) ?? -1
+                DispatchQueue.main.async {
+                    completion(size)
+                }
+            }
+        }
+    }
+    
+    func MIMEType(_ url: URL?) -> String? {
+        guard let ext = url?.pathExtension else { return nil }
+        if !ext.isEmpty {
+            let UTIRef = UTTypeCreatePreferredIdentifierForTag("public.filename-extension" as CFString, ext as CFString, nil)
+            let UTI = UTIRef?.takeUnretainedValue()
+            UTIRef?.release()
+            if let UTI = UTI {
+                guard let MIMETypeRef = UTTypeCopyPreferredTagWithClass(UTI, kUTTagClassMIMEType) else { return nil }
+                let MIMEType = MIMETypeRef.takeUnretainedValue()
+                MIMETypeRef.release()
+                return MIMEType as String
+            }
+        }
+        return nil
+    }
+    
+    private func tempCopyLivePhotos(phAsset: PHAsset,
+                                    livePhotoRequestOptions: PHLivePhotoRequestOptions? = nil,
+                                    localURL: URL,
+                                    completionBlock:@escaping (() -> Void)) -> PHImageRequestID? {
+        var requestOptions = PHLivePhotoRequestOptions()
+        if let options = livePhotoRequestOptions {
+            requestOptions = options
+        }else {
+            requestOptions.isNetworkAccessAllowed = true
+        }
+        return PHImageManager.default().requestLivePhoto(for: phAsset,
+                                                         targetSize: UIScreen.main.bounds.size,
+                                                         contentMode: .default,
+                                                         options: requestOptions)
+        { (livePhotos, infoDict) in
+            if let livePhotos = livePhotos {
+                let assetResources = PHAssetResource.assetResources(for: livePhotos)
+                assetResources.forEach { (resource) in
+                    if resource.type == .pairedVideo {
+                        PHAssetResourceManager.default().writeData(for: resource, toFile: localURL, options: nil) { (error) in
+                            DispatchQueue.main.async {
+                                completionBlock()
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+    
+    @discardableResult
+    //convertLivePhotosToJPG
+    // false : If you want mov file at live photos
+    // true  : If you want png file at live photos ( HEIC )
+    public func tempCopyMediaFile(videoRequestOptions: PHVideoRequestOptions? = nil,
+                                  imageRequestOptions: PHImageRequestOptions? = nil,
+                                  livePhotoRequestOptions: PHLivePhotoRequestOptions? = nil,
+                                  exportPreset: String = AVAssetExportPresetHighestQuality,
+                                  convertLivePhotosToJPG: Bool = false,
+                                  progressBlock:((Double) -> Void)? = nil,
+                                  completionBlock:@escaping ((URL,String) -> Void)) -> PHImageRequestID? {
+        guard let phAsset = self.phAsset else { return nil }
+        var type: PHAssetResourceType? = nil
+        if phAsset.mediaSubtypes.contains(.photoLive) == true, convertLivePhotosToJPG == false {
+            type = .pairedVideo
+        }else {
+            type = phAsset.mediaType == .video ? .video : .photo
+        }
+        guard let resource = (PHAssetResource.assetResources(for: phAsset).filter{ $0.type == type }).first else { return nil }
+        let fileName = resource.originalFilename
+        var writeURL: URL? = nil
+        if #available(iOS 10.0, *) {
+            writeURL = FileManager.default.temporaryDirectory.appendingPathComponent("\(fileName)")
+        } else {
+            writeURL = URL(fileURLWithPath: NSTemporaryDirectory(), isDirectory: true).appendingPathComponent("\(fileName)")
+        }
+        guard var localURL = writeURL,var mimetype = MIMEType(writeURL) else { return nil }
+        if type == .pairedVideo {
+            return tempCopyLivePhotos(phAsset: phAsset,
+                                      livePhotoRequestOptions: livePhotoRequestOptions,
+                                      localURL: localURL,
+                                      completionBlock: { completionBlock(localURL, mimetype) })
+        }
+        switch phAsset.mediaType {
+        case .video:
+            var requestOptions = PHVideoRequestOptions()
+            if let options = videoRequestOptions {
+                requestOptions = options
+            }else {
+                requestOptions.isNetworkAccessAllowed = true
+            }
+            //iCloud download progress
+            requestOptions.progressHandler = { (progress, error, stop, info) in
+                DispatchQueue.main.async {
+                    progressBlock?(progress)
+                }
+            }
+            return PHImageManager.default().requestExportSession(forVideo: phAsset,
+                                                                 options: requestOptions,
+                                                                 exportPreset: exportPreset)
+            { (session, infoDict) in
+                session?.outputURL = localURL
+                session?.outputFileType = AVFileType.mov
+                session?.exportAsynchronously(completionHandler: {
+                    DispatchQueue.main.async {
+                        completionBlock(localURL, mimetype)
+                    }
+                })
+            }
+        case .image:
+            var requestOptions = PHImageRequestOptions()
+            if let options = imageRequestOptions {
+                requestOptions = options
+            }else {
+                requestOptions.isNetworkAccessAllowed = true
+            }
+            //iCloud download progress
+            requestOptions.progressHandler = { (progress, error, stop, info) in
+                DispatchQueue.main.async {
+                    progressBlock?(progress)
+                }
+            }
+            return PHImageManager.default().requestImageData(for: phAsset,
+                                                             options: requestOptions)
+            { (data, uti, orientation, info) in
+                do {
+                    var data = data
+                    let needConvertLivePhotoToJPG = phAsset.mediaSubtypes.contains(.photoLive) == true && convertLivePhotosToJPG == true
+                    if needConvertLivePhotoToJPG {
+                        let name = localURL.deletingPathExtension().lastPathComponent
+                        localURL.deleteLastPathComponent()
+                        localURL.appendPathComponent("\(name).jpg")
+                        mimetype = "image/jpeg"
+                    }
+                    if needConvertLivePhotoToJPG, let imgData = data, let rawImage = UIImage(data: imgData)?.upOrientationImage() {
+                        data = rawImage.jpegData(compressionQuality: 1)
+                    }
+                    try data?.write(to: localURL)
+                    DispatchQueue.main.async {
+                        completionBlock(localURL, mimetype)
+                    }
+                }catch { }
+            }
+        default:
+            return nil
+        }
+    }
+    
+    private func videoFilename(phAsset: PHAsset) -> URL? {
+        guard let resource = (PHAssetResource.assetResources(for: phAsset).filter{ $0.type == .video }).first else {
+            return nil
+        }
+        var writeURL: URL?
+        let fileName = resource.originalFilename
+        if #available(iOS 10.0, *) {
+            writeURL = FileManager.default.temporaryDirectory.appendingPathComponent("\(fileName)")
+        } else {
+            writeURL = URL(fileURLWithPath: NSTemporaryDirectory(), isDirectory: true).appendingPathComponent("\(fileName)")
+        }
+        return writeURL
+    }
+    
+    //Apparently, This is not the only way to export video.
+    //There is many way that export a video.
+    //This method was one of them.
+    public func exportVideoFile(options: PHVideoRequestOptions? = nil,
+                                outputURL: URL? = nil,
+                                outputFileType: AVFileType = .mov,
+                                progressBlock:((Double) -> Void)? = nil,
+                                completionBlock:@escaping ((URL,String) -> Void)) {
+        guard
+            let phAsset = self.phAsset,
+            phAsset.mediaType == .video,
+            let writeURL = outputURL ?? videoFilename(phAsset: phAsset),
+            let mimetype = MIMEType(writeURL)
+            else {
+                return
+        }
+        var requestOptions = PHVideoRequestOptions()
+        if let options = options {
+            requestOptions = options
+        }else {
+            requestOptions.isNetworkAccessAllowed = true
+        }
+        requestOptions.progressHandler = { (progress, error, stop, info) in
+            DispatchQueue.main.async {
+                progressBlock?(progress)
+            }
+        }
+        PHImageManager.default().requestAVAsset(forVideo: phAsset, options: requestOptions) { (avasset, avaudioMix, infoDict) in
+            guard let avasset = avasset else {
+                return
+            }
+            let exportSession = AVAssetExportSession.init(asset: avasset, presetName: AVAssetExportPresetHighestQuality)
+            exportSession?.outputURL = writeURL
+            exportSession?.outputFileType = outputFileType
+            exportSession?.exportAsynchronously(completionHandler: {
+                completionBlock(writeURL, mimetype)
+            })
+        }
+    }
+    
+    init(asset: PHAsset?) {
+        self.phAsset = asset
+    }
+
+    public static func asset(with localIdentifier: String) -> TLPHAsset? {
+        let fetchResult = PHAsset.fetchAssets(withLocalIdentifiers: [localIdentifier], options: nil)
+        return TLPHAsset(asset: fetchResult.firstObject)
+    }
+}
+
+extension TLPHAsset: Equatable {
+    public static func ==(lhs: TLPHAsset, rhs: TLPHAsset) -> Bool {
+        guard let lphAsset = lhs.phAsset, let rphAsset = rhs.phAsset else { return false }
+        return lphAsset.localIdentifier == rphAsset.localIdentifier
+    }
+}
+
+extension Array {
+    subscript (safe index: Int) -> Element? {
+        return indices ~= index ? self[index] : nil
+    }
+}
+
+public struct TLAssetsCollection {
+    var phAssetCollection: PHAssetCollection? = nil
+    var fetchResult: PHFetchResult<PHAsset>? = nil
+    var useCameraButton: Bool = false
+    var recentPosition: CGPoint = CGPoint.zero
+    var title: String
+    var localIdentifier: String
+    public var sections: [(title: String, assets: [TLPHAsset])]? = nil
+    var count: Int {
+        get {
+            guard let count = self.fetchResult?.count, count > 0 else { return self.useCameraButton ? 1 : 0 }
+            return count + (self.useCameraButton ? 1 : 0)
+        }
+    }
+    
+    init(collection: PHAssetCollection) {
+        self.phAssetCollection = collection
+        self.title = collection.localizedTitle ?? ""
+        self.localIdentifier = collection.localIdentifier
+    }
+    
+    func getAsset(at index: Int) -> PHAsset? {
+        if self.useCameraButton && index == 0 { return nil }
+        let index = index - (self.useCameraButton ? 1 : 0)
+        guard let result = self.fetchResult, index < result.count else { return nil }
+        return result.object(at: max(index,0))
+    }
+    
+    func getTLAsset(at indexPath: IndexPath) -> TLPHAsset? {
+        let isCameraRow = self.useCameraButton && indexPath.section == 0 && indexPath.row == 0
+        if isCameraRow {
+            return nil
+        }
+        if let sections = self.sections {
+            let index = indexPath.row - ((self.useCameraButton && indexPath.section == 0) ? 1 : 0)
+            let result = sections[safe: indexPath.section]
+            return result?.assets[safe: index]
+        }else {
+            var index = indexPath.row
+            index = index - (self.useCameraButton ? 1 : 0)
+            guard let result = self.fetchResult, index < result.count else { return nil }
+            return TLPHAsset(asset: result.object(at: max(index,0)))
+        }
+    }
+    
+    func findIndex(phAsset: PHAsset) -> IndexPath? {
+        guard let sections = self.sections else {
+            return nil
+        }
+        for (offset, section) in sections.enumerated() {
+            if let index = section.assets.firstIndex(where: { $0.phAsset == phAsset }) {
+                return IndexPath(row: index, section: offset)
+            }
+        }
+        return nil
+    }
+    
+    mutating func reloadSection(groupedBy: PHFetchedResultGroupedBy) {
+        var groupedSections = self.section(groupedBy: groupedBy)
+        if self.useCameraButton {
+            groupedSections.insert(("camera",[TLPHAsset(asset: nil)]), at: 0)
+        }
+        self.sections = groupedSections
+    }
+    
+    static func ==(lhs: TLAssetsCollection, rhs: TLAssetsCollection) -> Bool {
+        return lhs.localIdentifier == rhs.localIdentifier
+    }
+}
+
+extension UIImage {
+    func upOrientationImage() -> UIImage? {
+        switch imageOrientation {
+        case .up:
+            return self
+        default:
+            UIGraphicsBeginImageContextWithOptions(size, false, scale)
+            draw(in: CGRect(origin: .zero, size: size))
+            let result = UIGraphicsGetImageFromCurrentImageContext()
+            UIGraphicsEndImageContext()
+            return result
+        }
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLBundle.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLBundle.swift
new file mode 100644
index 0000000..46f23ea
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLBundle.swift
@@ -0,0 +1,29 @@
+//
+//  TLBundle.swift
+//  Pods
+//
+//  Created by wade.hawk on 2017. 5. 9..
+//
+//
+
+import UIKit
+
+open class TLBundle {
+    open class func podBundleImage(named: String) -> UIImage? {
+        let podBundle = Bundle(for: TLBundle.self)
+        if let url = podBundle.url(forResource: "TLPhotoPickerController", withExtension: "bundle") {
+            let bundle = Bundle(url: url)
+            return UIImage(named: named, in: bundle, compatibleWith: nil)
+        }
+        return nil
+    }
+    
+    class func bundle() -> Bundle {
+        let podBundle = Bundle(for: TLBundle.self)
+        if let url = podBundle.url(forResource: "TLPhotoPicker", withExtension: "bundle") {
+            let bundle = Bundle(url: url)
+            return bundle ?? podBundle
+        }
+        return podBundle
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.swift
new file mode 100644
index 0000000..bedd379
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.swift
@@ -0,0 +1,25 @@
+//
+//  TLCollectionTableViewCell.swift
+//  TLPhotosPicker
+//
+//  Created by wade.hawk on 2017. 5. 3..
+//  Copyright © 2017년 wade.hawk. All rights reserved.
+//
+
+import UIKit
+
+open class TLCollectionTableViewCell: UITableViewCell {
+    @IBOutlet open var thumbImageView: UIImageView!
+    @IBOutlet open var titleLabel: UILabel!
+    @IBOutlet open var subTitleLabel: UILabel!
+    
+    override open func awakeFromNib() {
+        super.awakeFromNib()   
+        if #available(iOS 11.0, *) {
+            self.thumbImageView.accessibilityIgnoresInvertColors = true
+        }
+        if #available(iOS 13.0, *) {
+            self.contentView.backgroundColor = .systemBackground
+        }
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.xib b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.xib
new file mode 100644
index 0000000..e8c682c
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLCollectionTableViewCell.xib
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="17156" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+    <device id="retina4_7" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17125"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="TLCollectionTableViewCell" id="9FY-S1-KKQ" customClass="TLCollectionTableViewCell" customModule="TLPhotoPicker">
+            <rect key="frame" x="0.0" y="0.0" width="375" height="75"/>
+            <autoresizingMask key="autoresizingMask"/>
+            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="9FY-S1-KKQ" id="UUZ-nI-xH1">
+                <rect key="frame" x="0.0" y="0.0" width="375" height="75"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="4Dk-kD-sMy">
+                        <rect key="frame" x="15" y="12.5" width="50" height="50"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="50" id="yiu-ZU-58w"/>
+                            <constraint firstAttribute="width" constant="50" id="zAc-Fo-aGe"/>
+                        </constraints>
+                    </imageView>
+                    <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="7nv-2U-xMp">
+                        <rect key="frame" x="75" y="19.5" width="234" height="36.5"/>
+                        <subviews>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Camera Roll" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ES8-Tq-6Wz">
+                                <rect key="frame" x="0.0" y="0.0" width="234" height="17"/>
+                                <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
+                                <nil key="textColor"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="9999" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NuJ-3w-ZAP">
+                                <rect key="frame" x="0.0" y="22" width="234" height="14.5"/>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" red="0.43137254901960786" green="0.43137254901960786" blue="0.43137254901960786" alpha="1" colorSpace="calibratedRGB"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                    </stackView>
+                </subviews>
+                <constraints>
+                    <constraint firstItem="4Dk-kD-sMy" firstAttribute="leading" secondItem="UUZ-nI-xH1" secondAttribute="leading" constant="15" id="7W9-hT-caE"/>
+                    <constraint firstItem="7nv-2U-xMp" firstAttribute="centerY" secondItem="UUZ-nI-xH1" secondAttribute="centerY" id="E6U-ch-GDV"/>
+                    <constraint firstAttribute="trailingMargin" secondItem="7nv-2U-xMp" secondAttribute="trailing" constant="50" id="T3U-hj-718"/>
+                    <constraint firstItem="4Dk-kD-sMy" firstAttribute="centerY" secondItem="UUZ-nI-xH1" secondAttribute="centerY" id="ZHB-JZ-YKE"/>
+                    <constraint firstItem="7nv-2U-xMp" firstAttribute="leading" secondItem="4Dk-kD-sMy" secondAttribute="trailing" constant="10" id="i0n-S1-xnn"/>
+                </constraints>
+            </tableViewCellContentView>
+            <connections>
+                <outlet property="subTitleLabel" destination="NuJ-3w-ZAP" id="vlD-VJ-e5z"/>
+                <outlet property="thumbImageView" destination="4Dk-kD-sMy" id="f8b-VP-j8s"/>
+                <outlet property="titleLabel" destination="ES8-Tq-6Wz" id="sYW-0b-o03"/>
+            </connections>
+            <point key="canvasLocation" x="9.5" y="-83"/>
+        </tableViewCell>
+    </objects>
+</document>
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.swift
new file mode 100644
index 0000000..8de0fc0
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.swift
@@ -0,0 +1,182 @@
+//
+//  TLPhotoCollectionViewCell.swift
+//  TLPhotosPicker
+//
+//  Created by wade.hawk on 2017. 5. 3..
+//  Copyright © 2017년 wade.hawk. All rights reserved.
+//
+
+import UIKit
+import PhotosUI
+
+open class TLPlayerView: UIView {
+    @objc open var player: AVPlayer? {
+        get {
+            return playerLayer.player
+        }
+        set {
+            playerLayer.player = newValue
+        }
+    }
+    
+    @objc open var playerLayer: AVPlayerLayer {
+        return layer as! AVPlayerLayer
+    }
+    
+    // Override UIView property
+    override open class var layerClass: AnyClass {
+        return AVPlayerLayer.self
+    }
+}
+
+open class TLPhotoCollectionViewCell: UICollectionViewCell {
+    private var observer: NSObjectProtocol?
+    @IBOutlet open var imageView: UIImageView?
+    @IBOutlet open var playerView: TLPlayerView?
+    @IBOutlet open var livePhotoView: PHLivePhotoView?
+    @IBOutlet open var liveBadgeImageView: UIImageView?
+    @IBOutlet open var durationView: UIView?
+    @IBOutlet open var videoIconImageView: UIImageView?
+    @IBOutlet open var durationLabel: UILabel?
+    @IBOutlet open var indicator: UIActivityIndicatorView?
+    @IBOutlet open var selectedView: UIView?
+    @IBOutlet open var selectedHeight: NSLayoutConstraint?
+    @IBOutlet open var orderLabel: UILabel?
+    @IBOutlet open var orderBgView: UIView?
+    
+    var configure = TLPhotosPickerConfigure() {
+        didSet {
+            self.selectedView?.layer.borderColor = self.configure.selectedColor.cgColor
+            self.orderBgView?.backgroundColor = self.configure.selectedColor
+            self.videoIconImageView?.image = self.configure.videoIcon
+            self.orderBgView?.isHidden = self.configure.singleSelectedMode
+            self.orderLabel?.isHidden = self.configure.singleSelectedMode
+        }
+    }
+    
+    open internal(set) var asset: PHAsset?
+    
+    @objc open var isCameraCell = false
+    
+    open var duration: TimeInterval? {
+        didSet {
+            guard let duration = self.duration else { return }
+            self.selectedHeight?.constant = -10
+            self.durationLabel?.text = timeFormatted(timeInterval: duration)
+        }
+    }
+    
+    @objc open var player: AVPlayer? = nil {
+        didSet {
+            if self.configure.autoPlay == false { return }
+            if self.player == nil {
+                self.playerView?.playerLayer.player = nil
+                if let observer = self.observer {
+                    NotificationCenter.default.removeObserver(observer)
+                }
+            }else {
+                self.playerView?.playerLayer.player = self.player
+                self.observer = NotificationCenter.default.addObserver(forName: .AVPlayerItemDidPlayToEndTime, object: self.player?.currentItem, queue: nil, using: { [weak self] (_) in
+                    DispatchQueue.main.async {
+                        guard let `self` = self else { return }
+                        self.player?.seek(to: CMTime.zero)
+                        self.player?.play()
+                        self.player?.isMuted = self.configure.muteAudio
+                    }
+                })
+            }
+        }
+    }
+    
+    @objc open var selectedAsset: Bool = false {
+        willSet(newValue) {
+            self.selectedView?.isHidden = !newValue
+            self.durationView?.backgroundColor = newValue ? self.configure.selectedColor : UIColor(red: 0, green: 0, blue: 0, alpha: 0.6)
+            if !newValue {
+                self.orderLabel?.text = ""
+            }
+        }
+    }
+    
+    @objc open func timeFormatted(timeInterval: TimeInterval) -> String {
+        let seconds: Int = lround(timeInterval)
+        var hour: Int = 0
+        var minute: Int = Int(seconds/60)
+        let second: Int = seconds % 60
+        if minute > 59 {
+            hour = minute / 60
+            minute = minute % 60
+            return String(format: "%d:%d:%02d", hour, minute, second)
+        } else {
+            return String(format: "%d:%02d", minute, second)
+        }
+    }
+    
+    @objc open func popScaleAnim() {
+        UIView.animate(withDuration: 0.1, animations: {
+            self.transform = CGAffineTransform(scaleX: 1.05, y: 1.05)
+        }) { _ in
+            UIView.animate(withDuration: 0.1, animations: {
+                self.transform = CGAffineTransform(scaleX: 1, y: 1)
+            })
+        }
+    }
+    
+    @objc open func update(with phAsset: PHAsset) {
+        
+    }
+    
+    @objc open func selectedCell() {
+        
+    }
+    
+    @objc open func willDisplayCell() {
+        
+    }
+    
+    @objc open func endDisplayingCell() {
+        
+    }
+    
+    @objc func stopPlay() {
+        if let player = self.player {
+            player.pause()
+            self.player = nil
+        }
+        self.livePhotoView?.livePhoto = nil
+        self.livePhotoView?.isHidden = true
+        self.livePhotoView?.stopPlayback()
+        self.livePhotoView?.delegate = nil
+    }
+    
+    deinit {
+//        print("deinit TLPhotoCollectionViewCell")
+    }
+    
+    override open func awakeFromNib() {
+        super.awakeFromNib()
+        self.playerView?.playerLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill
+        self.livePhotoView?.isHidden = true
+        self.durationView?.isHidden = true
+        self.selectedView?.isHidden = true
+        self.selectedView?.layer.borderWidth = 10
+        self.selectedView?.layer.cornerRadius = 15
+        self.orderBgView?.layer.cornerRadius = 2
+        self.videoIconImageView?.image = self.configure.videoIcon
+        if #available(iOS 11.0, *) {
+            self.imageView?.accessibilityIgnoresInvertColors = true
+            self.playerView?.accessibilityIgnoresInvertColors = true
+            self.livePhotoView?.accessibilityIgnoresInvertColors = true
+            self.videoIconImageView?.accessibilityIgnoresInvertColors = true
+        }
+    }
+    
+    override open func prepareForReuse() {
+        super.prepareForReuse()
+        stopPlay()
+        self.durationView?.isHidden = true
+        self.durationView?.backgroundColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.6)
+        self.selectedHeight?.constant = 10
+        self.selectedAsset = false
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.xib b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.xib
new file mode 100644
index 0000000..4110de9
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoCollectionViewCell.xib
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="17156" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
+    <device id="retina4_7" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17125"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="TLPhotoCollectionViewCell" id="IF3-4e-v0j" customClass="TLPhotoCollectionViewCell" customModule="TLPhotoPicker">
+            <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+            <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
+                <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="0cR-fZ-1bW">
+                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="vfk-Ao-TKR" customClass="PHLivePhotoView">
+                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                    </view>
+                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="TGh-wt-hcR">
+                        <rect key="frame" x="70" y="70" width="25" height="25"/>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                        <constraints>
+                            <constraint firstAttribute="width" constant="25" id="NMA-SI-Idt"/>
+                            <constraint firstAttribute="height" constant="25" id="XvY-Ee-EA2"/>
+                        </constraints>
+                    </imageView>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="apl-2Q-Hz7" customClass="TLPlayerView" customModule="TLPhotoPicker">
+                        <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                    </view>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="d1a-KW-Ta4">
+                        <rect key="frame" x="-5" y="-5" width="110" height="110"/>
+                        <subviews>
+                            <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hbA-dR-I09">
+                                <rect key="frame" x="75" y="5" width="30" height="30"/>
+                                <subviews>
+                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="1" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Weu-ef-IZ5">
+                                        <rect key="frame" x="1.5" y="8" width="25" height="16"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="25" id="YMX-0Z-bfm"/>
+                                        </constraints>
+                                        <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="13"/>
+                                        <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                        <nil key="highlightedColor"/>
+                                    </label>
+                                </subviews>
+                                <color key="backgroundColor" red="0.27843137254901962" green="0.47058823529411764" blue="0.85098039215686272" alpha="1" colorSpace="calibratedRGB"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="30" id="8ln-g5-eHL"/>
+                                    <constraint firstItem="Weu-ef-IZ5" firstAttribute="leading" secondItem="hbA-dR-I09" secondAttribute="leading" constant="1.5" id="Yw3-zp-UZQ"/>
+                                    <constraint firstAttribute="trailing" secondItem="Weu-ef-IZ5" secondAttribute="trailing" constant="3.5" id="jsL-aw-IED"/>
+                                    <constraint firstItem="Weu-ef-IZ5" firstAttribute="centerY" secondItem="hbA-dR-I09" secondAttribute="centerY" constant="1" id="nUh-b3-s9s"/>
+                                </constraints>
+                            </view>
+                        </subviews>
+                        <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                        <constraints>
+                            <constraint firstAttribute="trailing" secondItem="hbA-dR-I09" secondAttribute="trailing" constant="5" id="hjj-HC-A4B"/>
+                            <constraint firstItem="hbA-dR-I09" firstAttribute="top" secondItem="d1a-KW-Ta4" secondAttribute="top" constant="5" id="xJ1-j7-RX7"/>
+                        </constraints>
+                    </view>
+                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="aju-ob-KlZ">
+                        <rect key="frame" x="0.0" y="75" width="100" height="25"/>
+                        <subviews>
+                            <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Uzf-HJ-aUY">
+                                <rect key="frame" x="5" y="2.5" width="20" height="20"/>
+                                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                            </imageView>
+                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0:02" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="zNx-FC-5V2">
+                                <rect key="frame" x="30" y="0.0" width="65" height="25"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" constant="65" id="3hi-82-ovQ"/>
+                                </constraints>
+                                <fontDescription key="fontDescription" type="system" pointSize="12"/>
+                                <color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                <nil key="highlightedColor"/>
+                            </label>
+                        </subviews>
+                        <color key="backgroundColor" red="0.11109734326601028" green="0.57953345775604248" blue="0.96568840742111206" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                        <constraints>
+                            <constraint firstAttribute="height" constant="25" id="DzP-0j-1SD"/>
+                            <constraint firstItem="zNx-FC-5V2" firstAttribute="top" secondItem="aju-ob-KlZ" secondAttribute="top" id="Lim-xf-cbx"/>
+                            <constraint firstAttribute="bottom" secondItem="zNx-FC-5V2" secondAttribute="bottom" id="T0P-EH-uPu"/>
+                            <constraint firstAttribute="trailing" secondItem="zNx-FC-5V2" secondAttribute="trailing" constant="5" id="uhl-Y8-3g5"/>
+                        </constraints>
+                    </view>
+                    <activityIndicatorView hidden="YES" opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" hidesWhenStopped="YES" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="DZc-ag-e55">
+                        <rect key="frame" x="40" y="40" width="20" height="20"/>
+                    </activityIndicatorView>
+                </subviews>
+            </view>
+            <constraints>
+                <constraint firstAttribute="bottom" secondItem="vfk-Ao-TKR" secondAttribute="bottom" id="2gw-cO-5bN"/>
+                <constraint firstAttribute="bottom" secondItem="aju-ob-KlZ" secondAttribute="bottom" id="2wo-Ki-15d"/>
+                <constraint firstAttribute="trailing" secondItem="aju-ob-KlZ" secondAttribute="trailing" id="2zm-kD-GPn"/>
+                <constraint firstAttribute="bottom" secondItem="apl-2Q-Hz7" secondAttribute="bottom" id="3zu-V3-EAd"/>
+                <constraint firstAttribute="trailing" secondItem="0cR-fZ-1bW" secondAttribute="trailing" id="9sd-Ea-EBO"/>
+                <constraint firstAttribute="trailing" secondItem="vfk-Ao-TKR" secondAttribute="trailing" id="BZ0-ZG-uW5"/>
+                <constraint firstAttribute="bottom" secondItem="TGh-wt-hcR" secondAttribute="bottom" constant="5" id="Ba1-Z6-ypz"/>
+                <constraint firstItem="0cR-fZ-1bW" firstAttribute="leading" secondItem="IF3-4e-v0j" secondAttribute="leading" id="DXe-M9-mxX"/>
+                <constraint firstItem="aju-ob-KlZ" firstAttribute="leading" secondItem="IF3-4e-v0j" secondAttribute="leading" id="FDl-UE-XVM"/>
+                <constraint firstItem="apl-2Q-Hz7" firstAttribute="top" secondItem="IF3-4e-v0j" secondAttribute="top" id="JlA-ya-cf3"/>
+                <constraint firstAttribute="trailing" secondItem="apl-2Q-Hz7" secondAttribute="trailing" id="KZg-oh-B11"/>
+                <constraint firstAttribute="trailing" secondItem="TGh-wt-hcR" secondAttribute="trailing" constant="5" id="Meo-q5-HyZ"/>
+                <constraint firstItem="vfk-Ao-TKR" firstAttribute="leading" secondItem="IF3-4e-v0j" secondAttribute="leading" id="NOQ-KU-fHD"/>
+                <constraint firstItem="vfk-Ao-TKR" firstAttribute="top" secondItem="IF3-4e-v0j" secondAttribute="top" id="NrV-wc-c3q"/>
+                <constraint firstItem="d1a-KW-Ta4" firstAttribute="height" secondItem="IF3-4e-v0j" secondAttribute="height" constant="10" id="VMJ-Qp-D4N"/>
+                <constraint firstItem="apl-2Q-Hz7" firstAttribute="leading" secondItem="IF3-4e-v0j" secondAttribute="leading" id="bsL-0J-0Y5"/>
+                <constraint firstItem="d1a-KW-Ta4" firstAttribute="width" secondItem="IF3-4e-v0j" secondAttribute="width" constant="10" id="clS-DI-jvL"/>
+                <constraint firstItem="d1a-KW-Ta4" firstAttribute="top" secondItem="IF3-4e-v0j" secondAttribute="top" constant="-5" id="d3r-HZ-6We"/>
+                <constraint firstItem="DZc-ag-e55" firstAttribute="centerX" secondItem="IF3-4e-v0j" secondAttribute="centerX" id="fnn-1c-fSn"/>
+                <constraint firstItem="DZc-ag-e55" firstAttribute="centerY" secondItem="IF3-4e-v0j" secondAttribute="centerY" id="qZc-2h-nOx"/>
+                <constraint firstItem="d1a-KW-Ta4" firstAttribute="leading" secondItem="IF3-4e-v0j" secondAttribute="leading" constant="-5" id="sOj-ms-Oo3"/>
+                <constraint firstItem="0cR-fZ-1bW" firstAttribute="top" secondItem="IF3-4e-v0j" secondAttribute="top" id="sSC-fd-MoT"/>
+                <constraint firstAttribute="bottom" secondItem="0cR-fZ-1bW" secondAttribute="bottom" id="xzA-tS-EVK"/>
+            </constraints>
+            <connections>
+                <outlet property="durationLabel" destination="zNx-FC-5V2" id="5SU-lD-AGm"/>
+                <outlet property="durationView" destination="aju-ob-KlZ" id="hiP-Ze-cbc"/>
+                <outlet property="imageView" destination="0cR-fZ-1bW" id="N3f-v5-K9b"/>
+                <outlet property="indicator" destination="DZc-ag-e55" id="R3y-XL-0SY"/>
+                <outlet property="liveBadgeImageView" destination="TGh-wt-hcR" id="cry-3P-rLI"/>
+                <outlet property="livePhotoView" destination="vfk-Ao-TKR" id="uvj-l1-wcp"/>
+                <outlet property="orderBgView" destination="hbA-dR-I09" id="cQo-BP-xh1"/>
+                <outlet property="orderLabel" destination="Weu-ef-IZ5" id="B3t-X5-o3a"/>
+                <outlet property="playerView" destination="apl-2Q-Hz7" id="vTI-ie-mcV"/>
+                <outlet property="selectedHeight" destination="VMJ-Qp-D4N" id="uVe-tQ-4q5"/>
+                <outlet property="selectedView" destination="d1a-KW-Ta4" id="c31-4y-72g"/>
+                <outlet property="videoIconImageView" destination="Uzf-HJ-aUY" id="d7e-Bl-181"/>
+            </connections>
+            <point key="canvasLocation" x="32" y="-10"/>
+        </collectionViewCell>
+    </objects>
+</document>
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoLibrary.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoLibrary.swift
new file mode 100644
index 0000000..cfba485
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotoLibrary.swift
@@ -0,0 +1,293 @@
+//
+//  TLPhotoLibrary.swift
+//  TLPhotosPicker
+//
+//  Created by wade.hawk on 2017. 5. 3..
+//  Copyright © 2017년 wade.hawk. All rights reserved.
+//
+
+import UIKit
+import Photos
+
+protocol TLPhotoLibraryDelegate: AnyObject {
+    func loadCameraRollCollection(collection: TLAssetsCollection)
+    func loadCompleteAllCollection(collections: [TLAssetsCollection])
+}
+
+class TLPhotoLibrary {
+    
+    weak var delegate: TLPhotoLibraryDelegate? = nil
+    
+    lazy var imageManager: PHCachingImageManager = {
+        return PHCachingImageManager()
+    }()
+    internal var limitMode: Bool = false
+    internal var assetCollections: [PHFetchResult<PHAssetCollection>] = []
+    internal var albums: PHFetchResult<PHCollection>? = nil
+    
+    deinit {
+        //        print("deinit TLPhotoLibrary")
+    }
+    
+    @discardableResult
+    func livePhotoAsset(asset: PHAsset, size: CGSize = CGSize(width: 720, height: 1280), progressBlock: Photos.PHAssetImageProgressHandler? = nil, completionBlock:@escaping (PHLivePhoto,Bool)-> Void ) -> PHImageRequestID {
+        let options = PHLivePhotoRequestOptions()
+        options.deliveryMode = .opportunistic
+        options.isNetworkAccessAllowed = true
+        options.progressHandler = progressBlock
+        let scale = min(UIScreen.main.scale,2)
+        let targetSize = CGSize(width: size.width*scale, height: size.height*scale)
+        let requestID = self.imageManager.requestLivePhoto(for: asset, targetSize: targetSize, contentMode: .aspectFill, options: options) { (livePhoto, info) in
+            let complete = (info?["PHImageResultIsDegradedKey"] as? Bool) == false
+            if let livePhoto = livePhoto {
+                completionBlock(livePhoto,complete)
+            }
+        }
+        return requestID
+    }
+    
+    @discardableResult
+    func videoAsset(asset: PHAsset, size: CGSize = CGSize(width: 720, height: 1280), progressBlock: Photos.PHAssetImageProgressHandler? = nil, completionBlock:@escaping (AVPlayerItem?, [AnyHashable : Any]?) -> Void ) -> PHImageRequestID {
+        let options = PHVideoRequestOptions()
+        options.isNetworkAccessAllowed = true
+        options.deliveryMode = .automatic
+        options.progressHandler = progressBlock
+        let requestID = self.imageManager.requestPlayerItem(forVideo: asset, options: options, resultHandler: { playerItem, info in
+            completionBlock(playerItem,info)
+        })
+        return requestID
+    }
+    
+    @discardableResult
+    func imageAsset(asset: PHAsset, size: CGSize = CGSize(width: 160, height: 160), options: PHImageRequestOptions? = nil, completionBlock:@escaping (UIImage,Bool)-> Void ) -> PHImageRequestID {
+        var options = options
+        if options == nil {
+            options = PHImageRequestOptions()
+            options?.isSynchronous = false
+            options?.resizeMode = .exact
+            options?.deliveryMode = .opportunistic
+            options?.isNetworkAccessAllowed = true
+        }
+        let scale = min(UIScreen.main.scale,2)
+        let targetSize = CGSize(width: size.width*scale, height: size.height*scale)
+        let requestID = self.imageManager.requestImage(for: asset, targetSize: targetSize, contentMode: .aspectFill, options: options) { image, info in
+            let complete = (info?["PHImageResultIsDegradedKey"] as? Bool) == false
+            if let image = image {
+                completionBlock(image,complete)
+            }
+        }
+        return requestID
+    }
+    
+    func cancelPHImageRequest(requestID: PHImageRequestID) {
+        self.imageManager.cancelImageRequest(requestID)
+    }
+    
+    @discardableResult
+    class func cloudImageDownload(asset: PHAsset, size: CGSize = PHImageManagerMaximumSize, progressBlock: @escaping (Double) -> Void, completionBlock:@escaping (UIImage?)-> Void ) -> PHImageRequestID {
+        let options = PHImageRequestOptions()
+        options.isSynchronous = false
+        options.isNetworkAccessAllowed = true
+        options.deliveryMode = .opportunistic
+        options.version = .current
+        options.resizeMode = .exact
+        options.progressHandler = { (progress,error,stop,info) in
+            progressBlock(progress)
+        }
+        let requestID = PHCachingImageManager().requestImageData(for: asset, options: options) { (imageData, dataUTI, orientation, info) in
+            if let data = imageData,let _ = info {
+                completionBlock(UIImage(data: data))
+            }else{
+                completionBlock(nil)//error
+            }
+        }
+        return requestID
+    }
+    
+    @discardableResult
+    class func fullResolutionImageData(asset: PHAsset) -> UIImage? {
+        let options = PHImageRequestOptions()
+        options.isSynchronous = true
+        options.resizeMode = .none
+        options.isNetworkAccessAllowed = true
+        options.version = .current
+        var image: UIImage? = nil
+        _ = PHCachingImageManager().requestImageData(for: asset, options: options) { (imageData, dataUTI, orientation, info) in
+            if let data = imageData {
+                image = UIImage(data: data)
+            }
+        }
+        return image
+    }
+}
+
+extension PHFetchOptions {
+    func merge(predicate: NSPredicate) {
+        if let storePredicate = self.predicate {
+            self.predicate = NSCompoundPredicate(andPredicateWithSubpredicates: [storePredicate, predicate])
+        }else {
+            self.predicate = predicate
+        }
+    }
+}
+
+//MARK: - Load Collection
+extension TLPhotoLibrary {
+    func getOption(configure: TLPhotosPickerConfigure) -> PHFetchOptions {
+        let options: PHFetchOptions
+        if let fetchOption = configure.fetchOption {
+            options = fetchOption
+        }else {
+            options = PHFetchOptions()
+            options.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
+        }
+        if let mediaType = configure.mediaType {
+            let mediaPredicate = NSPredicate(format: "mediaType = %i", mediaType.rawValue)
+            options.merge(predicate: mediaPredicate)
+        }
+        if configure.allowedVideo == false {
+            let notVideoPredicate = NSPredicate(format: "mediaType != %i", PHAssetMediaType.video.rawValue)
+            options.merge(predicate: notVideoPredicate)
+        }
+        if configure.allowedLivePhotos == false {
+            let notLivePhotoPredicate = NSPredicate(format: "NOT ((mediaSubtype & %d) != 0)", PHAssetMediaSubtype.photoLive.rawValue)
+            options.merge(predicate: notLivePhotoPredicate)
+        }
+        if let maxVideoDuration = configure.maxVideoDuration {
+            let durationPredicate = NSPredicate(format: "duration < %f", maxVideoDuration)
+            options.merge(predicate: durationPredicate)
+        }
+        return options
+    }
+    
+    func fetchResult(collection: TLAssetsCollection?, configure: TLPhotosPickerConfigure) -> PHFetchResult<PHAsset>? {
+        guard let phAssetCollection = collection?.phAssetCollection else { return nil }
+        let options = getOption(configure: configure)
+        return PHAsset.fetchAssets(in: phAssetCollection, options: options)
+    }
+    
+    func fetchCollection(configure: TLPhotosPickerConfigure) {
+        self.albums = nil
+        self.assetCollections = []
+        let useCameraButton = configure.usedCameraButton
+        let options = getOption(configure: configure)
+        let fetchCollectionOption = configure.fetchCollectionOption
+        
+        func getAlbum(subType: PHAssetCollectionSubtype, result: inout [TLAssetsCollection]) {
+            let collectionOption = fetchCollectionOption[.assetCollections(.album)]
+            let fetchCollection = PHAssetCollection.fetchAssetCollections(with: .album,
+                                                                          subtype: subType,
+                                                                          options: collectionOption)
+            self.assetCollections.append(fetchCollection)
+            var collections = [PHAssetCollection]()
+            fetchCollection.enumerateObjects { (collection, index, _) in 
+                if configure.allowedAlbumCloudShared == false && collection.assetCollectionSubtype == .albumCloudShared {
+                }else {
+                    collections.append(collection)
+                }
+            }
+            for collection in collections {
+                if !result.contains(where: { $0.localIdentifier == collection.localIdentifier }) {
+                    var assetsCollection = TLAssetsCollection(collection: collection)
+                    assetsCollection.title = configure.customLocalizedTitle[assetsCollection.title] ?? assetsCollection.title
+                    assetsCollection.fetchResult = PHAsset.fetchAssets(in: collection, options: options)
+                    if assetsCollection.count > 0 {
+                        result.append(assetsCollection)
+                    }
+                }
+            }
+        }
+        
+        @discardableResult
+        func getSmartAlbum(subType: PHAssetCollectionSubtype,
+                           useCameraButton: Bool = false,
+                           result: inout [TLAssetsCollection])
+            -> TLAssetsCollection?
+        {
+            let collectionOption = fetchCollectionOption[.assetCollections(.smartAlbum)]
+            let fetchCollection = PHAssetCollection.fetchAssetCollections(with: .smartAlbum,
+                                                                          subtype: subType,
+                                                                          options: collectionOption)
+            self.assetCollections.append(fetchCollection)
+            if
+                let collection = fetchCollection.firstObject,
+                result.contains(where: { $0.localIdentifier == collection.localIdentifier }) == false
+            {
+                var assetsCollection = TLAssetsCollection(collection: collection)
+                assetsCollection.title = configure.customLocalizedTitle[assetsCollection.title] ?? assetsCollection.title
+                assetsCollection.fetchResult = PHAsset.fetchAssets(in: collection, options: options)
+                if assetsCollection.count > 0 || useCameraButton {
+                    result.append(assetsCollection)
+                    return assetsCollection
+                }
+            }
+            return nil
+        }
+        if let fetchCollectionTypes = configure.fetchCollectionTypes {
+            DispatchQueue.global(qos: .userInteractive).async { [weak self] in
+                var assetCollections = [TLAssetsCollection]()
+                for (type,subType) in fetchCollectionTypes {
+                    if type == .smartAlbum {
+                        getSmartAlbum(subType: subType, result: &assetCollections)
+                    }else {
+                        getAlbum(subType: subType, result: &assetCollections)
+                    }
+                }
+                DispatchQueue.main.async {
+                    self?.delegate?.loadCompleteAllCollection(collections: assetCollections)
+                }
+            }
+        }else {
+            DispatchQueue.global(qos: .userInteractive).async { [weak self] in
+                var assetCollections = [TLAssetsCollection]()
+                
+                //Recents
+                let recentsCollection = getSmartAlbum(subType: .smartAlbumUserLibrary,
+                                                      useCameraButton: useCameraButton,
+                                                      result: &assetCollections)
+                if var cameraRoll = recentsCollection {
+                    cameraRoll.title = configure.customLocalizedTitle[cameraRoll.title] ?? cameraRoll.title
+                    cameraRoll.useCameraButton = useCameraButton
+                    assetCollections[0] = cameraRoll
+                    DispatchQueue.main.async {
+                        self?.delegate?.loadCameraRollCollection(collection: cameraRoll)
+                    }
+                }
+                //Screenshots
+                getSmartAlbum(subType: .smartAlbumScreenshots, result: &assetCollections)
+                //Selfies
+                getSmartAlbum(subType: .smartAlbumSelfPortraits, result: &assetCollections)
+                //Panoramas
+                getSmartAlbum(subType: .smartAlbumPanoramas, result: &assetCollections)
+                //Favorites
+                getSmartAlbum(subType: .smartAlbumFavorites, result: &assetCollections)
+                //CloudShared
+                getSmartAlbum(subType: .albumCloudShared, result: &assetCollections)
+                //get all another albums
+                getAlbum(subType: .any, result: &assetCollections)
+                if configure.allowedVideo {
+                    //Videos
+                    getSmartAlbum(subType: .smartAlbumVideos, result: &assetCollections)
+                }
+                //Album
+                let collectionOption = fetchCollectionOption[.topLevelUserCollections]
+                let albumsResult = PHCollectionList.fetchTopLevelUserCollections(with: collectionOption)
+                self?.albums = albumsResult
+                albumsResult.enumerateObjects({ (collection, index, stop) -> Void in
+                    guard let collection = collection as? PHAssetCollection else { return }
+                    var assetsCollection = TLAssetsCollection(collection: collection)
+                    assetsCollection.title = configure.customLocalizedTitle[assetsCollection.title] ?? assetsCollection.title
+                    assetsCollection.fetchResult = PHAsset.fetchAssets(in: collection, options: options)
+                    if assetsCollection.count > 0, !assetCollections.contains(where: { $0.localIdentifier == collection.localIdentifier }) {
+                        assetCollections.append(assetsCollection)
+                    }
+                })
+                
+                DispatchQueue.main.async {
+                    self?.delegate?.loadCompleteAllCollection(collections: assetCollections)
+                }
+            }
+        }
+    }
+}
+
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotopickerDataSourcesProtocol.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotopickerDataSourcesProtocol.swift
new file mode 100644
index 0000000..58b97f2
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotopickerDataSourcesProtocol.swift
@@ -0,0 +1,17 @@
+//
+//  TLPhotopickerDataSourcesProtocol.swift
+//  TLPhotoPicker
+//
+//  Created by wade.hawk on 21/01/2019.
+//
+
+import UIKit
+import Photos
+
+public protocol TLPhotopickerDataSourcesProtocol {
+    func headerReferenceSize() -> CGSize
+    func footerReferenceSize() -> CGSize
+    func registerSupplementView(collectionView: UICollectionView)
+    func supplementIdentifier(kind: String) -> String
+    func configure(supplement view: UICollectionReusableView, section: (title: String, assets: [TLPHAsset]))
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.swift b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.swift
new file mode 100644
index 0000000..1b0211e
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.swift
@@ -0,0 +1,1358 @@
+//
+//  TLPhotosPickerViewController.swift
+//  TLPhotosPicker
+//
+//  Created by wade.hawk on 2017. 4. 14..
+//  Copyright © 2017년 wade.hawk. All rights reserved.
+//
+
+import UIKit
+import Photos
+import PhotosUI
+import MobileCoreServices
+
+public protocol TLPhotosPickerViewControllerDelegate: AnyObject {
+    func dismissPhotoPicker(withPHAssets: [PHAsset])
+    func dismissPhotoPicker(withTLPHAssets: [TLPHAsset])
+    func shouldDismissPhotoPicker(withTLPHAssets: [TLPHAsset]) -> Bool
+    func dismissComplete()
+    func photoPickerDidCancel()
+    func canSelectAsset(phAsset: PHAsset) -> Bool
+    func didExceedMaximumNumberOfSelection(picker: TLPhotosPickerViewController)
+    func handleNoAlbumPermissions(picker: TLPhotosPickerViewController)
+    func handleNoCameraPermissions(picker: TLPhotosPickerViewController)
+}
+
+extension TLPhotosPickerViewControllerDelegate {
+    public func deninedAuthoization() { }
+    public func dismissPhotoPicker(withPHAssets: [PHAsset]) { }
+    public func dismissPhotoPicker(withTLPHAssets: [TLPHAsset]) { }
+    public func shouldDismissPhotoPicker(withTLPHAssets: [TLPHAsset]) -> Bool { return true }
+    public func dismissComplete() { }
+    public func photoPickerDidCancel() { }
+    public func canSelectAsset(phAsset: PHAsset) -> Bool { return true }
+    public func didExceedMaximumNumberOfSelection(picker: TLPhotosPickerViewController) { }
+    public func handleNoAlbumPermissions(picker: TLPhotosPickerViewController) { }
+    public func handleNoCameraPermissions(picker: TLPhotosPickerViewController) { }
+}
+
+//for log
+public protocol TLPhotosPickerLogDelegate: AnyObject {
+    func selectedCameraCell(picker: TLPhotosPickerViewController)
+    func deselectedPhoto(picker: TLPhotosPickerViewController, at: Int)
+    func selectedPhoto(picker: TLPhotosPickerViewController, at: Int)
+    func selectedAlbum(picker: TLPhotosPickerViewController, title: String, at: Int)
+}
+
+extension TLPhotosPickerLogDelegate {
+    func selectedCameraCell(picker: TLPhotosPickerViewController) { }
+    func deselectedPhoto(picker: TLPhotosPickerViewController, at: Int) { }
+    func selectedPhoto(picker: TLPhotosPickerViewController, at: Int) { }
+    func selectedAlbum(picker: TLPhotosPickerViewController, collections: [TLAssetsCollection], at: Int) { }
+}
+
+public struct TLPhotosPickerConfigure {
+    public var customLocalizedTitle: [String: String] = ["Camera Roll": "Camera Roll"]
+    public var tapHereToChange = "Tap here to change"
+    public var cancelTitle = "Cancel"
+    public var doneTitle = "Done"
+    public var emptyMessage = "No albums"
+    public var selectMessage = "Select"
+    public var deselectMessage = "Deselect"
+    public var emptyImage: UIImage? = nil
+    public var usedCameraButton = true
+    public var defaultToFrontFacingCamera = false
+    public var usedPrefetch = false
+    public var previewAtForceTouch = false
+    public var startplayBack: PHLivePhotoViewPlaybackStyle = .hint
+    public var allowedLivePhotos = true
+    public var allowedVideo = true
+    public var allowedAlbumCloudShared = false
+    public var allowedPhotograph = true
+    public var allowedVideoRecording = true
+    public var recordingVideoQuality: UIImagePickerController.QualityType = .typeMedium
+    public var maxVideoDuration:TimeInterval? = nil
+    public var autoPlay = true
+    public var muteAudio = true
+    public var preventAutomaticLimitedAccessAlert = true
+    public var mediaType: PHAssetMediaType? = nil
+    public var numberOfColumn = 3
+    public var minimumLineSpacing: CGFloat = 5
+    public var minimumInteritemSpacing: CGFloat = 5
+    public var singleSelectedMode = false
+    public var maxSelectedAssets: Int? = nil
+    public var fetchOption: PHFetchOptions? = nil
+    public var fetchCollectionOption: [FetchCollectionType: PHFetchOptions] = [:]
+    public var selectedColor = UIColor(red: 88/255, green: 144/255, blue: 255/255, alpha: 1.0)
+    public var cameraBgColor = UIColor(red: 221/255, green: 223/255, blue: 226/255, alpha: 1)
+    public var cameraIcon = TLBundle.podBundleImage(named: "camera")
+    public var videoIcon = TLBundle.podBundleImage(named: "video")
+    public var placeholderIcon = TLBundle.podBundleImage(named: "insertPhotoMaterial")
+    public var nibSet: (nibName: String, bundle:Bundle)? = nil
+    public var cameraCellNibSet: (nibName: String, bundle:Bundle)? = nil
+    public var fetchCollectionTypes: [(PHAssetCollectionType,PHAssetCollectionSubtype)]? = nil
+    public var groupByFetch: PHFetchedResultGroupedBy? = nil
+    public var supportedInterfaceOrientations: UIInterfaceOrientationMask = .portrait
+    public var popup: [PopupConfigure] = []
+    public init() {
+        
+    }
+}
+
+public enum FetchCollectionType {
+    case assetCollections(PHAssetCollectionType)
+    case topLevelUserCollections
+}
+
+extension FetchCollectionType: Hashable {
+    private var identifier: String {
+        switch self {
+        case let .assetCollections(collectionType):
+            return "assetCollections\(collectionType.rawValue)"
+        case .topLevelUserCollections:
+            return "topLevelUserCollections"
+        }
+    }
+    
+    public func hash(into hasher: inout Hasher) {
+        hasher.combine(self.identifier)
+    }
+}
+
+public enum PopupConfigure {
+    case animation(TimeInterval)
+}
+
+public struct Platform {
+    public static var isSimulator: Bool {
+        return TARGET_OS_SIMULATOR != 0 // Use this line in Xcode 7 or newer
+    }
+}
+
+
+open class TLPhotosPickerViewController: UIViewController {
+    @IBOutlet open var navigationBar: UINavigationBar!
+    @IBOutlet open var titleView: UIView!
+    @IBOutlet open var titleLabel: UILabel!
+    @IBOutlet open var subTitleStackView: UIStackView!
+    @IBOutlet open var subTitleLabel: UILabel!
+    @IBOutlet open var subTitleArrowImageView: UIImageView!
+    @IBOutlet open var albumPopView: TLAlbumPopView!
+    @IBOutlet open var collectionView: UICollectionView!
+    @IBOutlet open var indicator: UIActivityIndicatorView!
+    @IBOutlet open var popArrowImageView: UIImageView!
+    @IBOutlet open var customNavItem: UINavigationItem!
+    @IBOutlet open var doneButton: UIBarButtonItem!
+    @IBOutlet open var cancelButton: UIBarButtonItem!
+    @IBOutlet open var navigationBarTopConstraint: NSLayoutConstraint!
+    @IBOutlet open var emptyView: UIView!
+    @IBOutlet open var emptyImageView: UIImageView!
+    @IBOutlet open var emptyMessageLabel: UILabel!
+    @IBOutlet open var photosButton: UIBarButtonItem!
+    
+    public weak var delegate: TLPhotosPickerViewControllerDelegate? = nil
+    public weak var logDelegate: TLPhotosPickerLogDelegate? = nil
+    open var selectedAssets = [TLPHAsset]()
+    public var configure = TLPhotosPickerConfigure()
+    public var customDataSouces: TLPhotopickerDataSourcesProtocol? = nil
+    
+    private var usedCameraButton: Bool {
+        return self.configure.usedCameraButton
+    }
+    private var previewAtForceTouch: Bool {
+        return self.configure.previewAtForceTouch
+    }
+    private var allowedVideo: Bool {
+        return self.configure.allowedVideo
+    }
+    private var usedPrefetch: Bool {
+        get {
+            return self.configure.usedPrefetch
+        }
+        set {
+            self.configure.usedPrefetch = newValue
+        }
+    }
+    private var allowedLivePhotos: Bool {
+        get {
+            return self.configure.allowedLivePhotos
+        }
+        set {
+            self.configure.allowedLivePhotos = newValue
+        }
+    }
+    @objc open var canSelectAsset: ((PHAsset) -> Bool)? = nil
+    @objc open var didExceedMaximumNumberOfSelection: ((TLPhotosPickerViewController) -> Void)? = nil
+    @objc open var handleNoAlbumPermissions: ((TLPhotosPickerViewController) -> Void)? = nil
+    @objc open var handleNoCameraPermissions: ((TLPhotosPickerViewController) -> Void)? = nil
+    @objc open var dismissCompletion: (() -> Void)? = nil
+    private var completionWithPHAssets: (([PHAsset]) -> Void)? = nil
+    private var completionWithTLPHAssets: (([TLPHAsset]) -> Void)? = nil
+    private var didCancel: (() -> Void)? = nil
+    
+    private var collections = [TLAssetsCollection]()
+    private var focusedCollection: TLAssetsCollection? = nil
+    private var requestIDs = SynchronizedDictionary<IndexPath,PHImageRequestID>()
+    private var playRequestID: (indexPath: IndexPath, requestID: PHImageRequestID)? = nil
+    private var photoLibrary = TLPhotoLibrary()
+    private var queue = DispatchQueue(label: "tilltue.photos.pikcker.queue")
+    private var queueForGroupedBy = DispatchQueue(label: "tilltue.photos.pikcker.queue.for.groupedBy", qos: .utility)
+    private var thumbnailSize = CGSize.zero
+    private var placeholderThumbnail: UIImage? = nil
+    private var cameraImage: UIImage? = nil
+    
+    deinit {
+        //print("deinit TLPhotosPickerViewController")
+        PHPhotoLibrary.shared().unregisterChangeObserver(self)
+    }
+    
+    required public init?(coder aDecoder: NSCoder) {
+        fatalError("init(coder:) has not been implemented")
+    }
+    
+    public init() {
+        super.init(nibName: "TLPhotosPickerViewController", bundle: TLBundle.bundle())
+    }
+    
+    @objc convenience public init(withPHAssets: (([PHAsset]) -> Void)? = nil, didCancel: (() -> Void)? = nil) {
+        self.init()
+        self.completionWithPHAssets = withPHAssets
+        self.didCancel = didCancel
+    }
+    
+    convenience public init(withTLPHAssets: (([TLPHAsset]) -> Void)? = nil, didCancel: (() -> Void)? = nil) {
+        self.init()
+        self.completionWithTLPHAssets = withTLPHAssets
+        self.didCancel = didCancel
+    }
+    
+    override open var supportedInterfaceOrientations: UIInterfaceOrientationMask {
+        return self.configure.supportedInterfaceOrientations
+    }
+    
+    open override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
+        super.traitCollectionDidChange(previousTraitCollection)
+        
+        if traitCollection.forceTouchCapability == .available && self.previewAtForceTouch {
+            registerForPreviewing(with: self, sourceView: collectionView)
+        }
+
+        updateUserInterfaceStyle()
+    }
+    
+    private func updateUserInterfaceStyle() {
+        if #available(iOS 13.0, *) {
+            let userInterfaceStyle = self.traitCollection.userInterfaceStyle
+            let image = TLBundle.podBundleImage(named: "pop_arrow")
+            let subImage = TLBundle.podBundleImage(named: "arrow")
+            if userInterfaceStyle.rawValue == 2 {
+                self.popArrowImageView.image = image?.colorMask(color: .systemBackground)
+                self.subTitleArrowImageView.image = subImage?.colorMask(color: .white)
+                self.view.backgroundColor = .black
+                self.collectionView.backgroundColor = .black
+            } else {
+                self.popArrowImageView.image = image?.colorMask(color: .white)
+                self.subTitleArrowImageView.image = subImage
+                self.view.backgroundColor = .white
+                self.collectionView.backgroundColor = .white
+            }
+        }
+    }
+    
+    override open func didReceiveMemoryWarning() {
+        super.didReceiveMemoryWarning()
+        self.stopPlay()
+    }
+    
+    private func loadPhotos(limitMode: Bool) {
+        self.photoLibrary.limitMode = limitMode
+        self.photoLibrary.delegate = self
+        self.photoLibrary.fetchCollection(configure: self.configure)
+    }
+    
+    private func processAuthorization(status: PHAuthorizationStatus) {
+        switch status {
+        case .notDetermined:
+            requestAuthorization()
+        case .limited:
+            loadPhotos(limitMode: true)
+        case .authorized:
+            loadPhotos(limitMode: false)
+        case .restricted, .denied:
+            handleDeniedAlbumsAuthorization()
+        @unknown default:
+            break
+        }
+    }
+    
+    private func requestAuthorization() {
+        if #available(iOS 14.0, *) {
+            PHPhotoLibrary.requestAuthorization(for:  .readWrite) { [weak self] status in
+                self?.processAuthorization(status: status)
+            }
+        } else {
+            PHPhotoLibrary.requestAuthorization { [weak self] status in
+                self?.processAuthorization(status: status)
+            }
+        }
+    }
+    
+    private func checkAuthorization() {
+        if #available(iOS 14.0, *) {
+            let status = PHPhotoLibrary.authorizationStatus(for:  .readWrite)
+            processAuthorization(status: status)
+        } else {
+            let status = PHPhotoLibrary.authorizationStatus()
+            processAuthorization(status: status)
+        }
+    }
+    
+    override open func viewDidLoad() {
+        super.viewDidLoad()
+        makeUI()
+        checkAuthorization()
+    }
+    
+    override open func viewDidLayoutSubviews() {
+        super.viewDidLayoutSubviews()
+        if self.thumbnailSize == CGSize.zero {
+            initItemSize()
+        }
+        if #available(iOS 11.0, *) {
+        } else if self.navigationBarTopConstraint.constant == 0 {
+            self.navigationBarTopConstraint.constant = 20
+        }
+    }
+    
+    override open func viewWillAppear(_ animated: Bool) {
+        super.viewWillAppear(animated)
+        if self.photoLibrary.delegate == nil {
+            checkAuthorization()
+        }
+    }
+    
+    private func findIndexAndReloadCells(phAsset: PHAsset) {
+        if
+            self.configure.groupByFetch != nil,
+            let indexPath = self.focusedCollection?.findIndex(phAsset: phAsset)
+        {
+            self.collectionView.reloadItems(at: [indexPath])
+            return
+        }
+        if
+            var index = self.focusedCollection?.fetchResult?.index(of: phAsset),
+            let focused = self.focusedCollection,
+            index != NSNotFound
+        {
+            index += (focused.useCameraButton) ? 1 : 0
+            self.collectionView.reloadItems(at: [IndexPath(row: index, section: 0)])
+        }
+    }
+    
+    open func deselectWhenUsingSingleSelectedMode() {
+        if
+            self.configure.singleSelectedMode == true,
+            let selectedPHAsset = self.selectedAssets.first?.phAsset
+        {
+            self.selectedAssets.removeAll()
+            findIndexAndReloadCells(phAsset: selectedPHAsset)
+        }
+    }
+    
+    open func maxCheck() -> Bool {
+        deselectWhenUsingSingleSelectedMode()
+        if let max = self.configure.maxSelectedAssets, max <= self.selectedAssets.count {
+            self.delegate?.didExceedMaximumNumberOfSelection(picker: self)
+            self.didExceedMaximumNumberOfSelection?(self)
+            return true
+        }
+        return false
+    }
+}
+
+// MARK: - UI & UI Action
+extension TLPhotosPickerViewController {
+    
+    @objc public func registerNib(nibName: String, bundle: Bundle) {
+        self.collectionView.register(UINib(nibName: nibName, bundle: bundle), forCellWithReuseIdentifier: nibName)
+    }
+    
+    private func centerAtRect(image: UIImage?, rect: CGRect, bgColor: UIColor = UIColor.white) -> UIImage? {
+        guard let image = image else { return nil }
+        UIGraphicsBeginImageContextWithOptions(rect.size, false, image.scale)
+        bgColor.setFill()
+        UIRectFill(CGRect(x: 0, y: 0, width: rect.size.width, height: rect.size.height))
+        image.draw(in: CGRect(x:rect.size.width/2 - image.size.width/2, y:rect.size.height/2 - image.size.height/2, width:image.size.width, height:image.size.height))
+        let result = UIGraphicsGetImageFromCurrentImageContext()
+        UIGraphicsEndImageContext()
+        return result
+    }
+    
+    private func initItemSize() {
+        guard let layout = self.collectionView.collectionViewLayout as? UICollectionViewFlowLayout else {
+            return
+        }
+        let count = CGFloat(self.configure.numberOfColumn)
+        let width = floor((self.view.frame.size.width - (self.configure.minimumInteritemSpacing * (count-1))) / count)
+        self.thumbnailSize = CGSize(width: width, height: width)
+        layout.itemSize = self.thumbnailSize
+        layout.minimumInteritemSpacing = self.configure.minimumInteritemSpacing
+        layout.minimumLineSpacing = self.configure.minimumLineSpacing
+        self.collectionView.collectionViewLayout = layout
+        self.placeholderThumbnail = centerAtRect(image: self.configure.placeholderIcon, rect: CGRect(x: 0, y: 0, width: width, height: width))
+        self.cameraImage = centerAtRect(image: self.configure.cameraIcon, rect: CGRect(x: 0, y: 0, width: width, height: width), bgColor: self.configure.cameraBgColor)
+    }
+    
+    @objc open func makeUI() {
+        registerNib(nibName: "TLPhotoCollectionViewCell", bundle: TLBundle.bundle())
+        if let nibSet = self.configure.nibSet {
+            registerNib(nibName: nibSet.nibName, bundle: nibSet.bundle)
+        }
+        if let nibSet = self.configure.cameraCellNibSet {
+            registerNib(nibName: nibSet.nibName, bundle: nibSet.bundle)
+        }
+        self.indicator.startAnimating()
+        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(titleTap))
+        self.titleView.addGestureRecognizer(tapGesture)
+        self.titleLabel.text = self.configure.customLocalizedTitle["Camera Roll"]
+        self.subTitleLabel.text = self.configure.tapHereToChange
+        self.cancelButton.title = self.configure.cancelTitle
+        
+        let attributes: [NSAttributedString.Key: Any] = [.font: UIFont.boldSystemFont(ofSize: UIFont.labelFontSize)]
+        self.doneButton.setTitleTextAttributes(attributes, for: .normal)
+        self.doneButton.title = self.configure.doneTitle
+        self.emptyView.isHidden = true
+        self.emptyImageView.image = self.configure.emptyImage
+        self.emptyMessageLabel.text = self.configure.emptyMessage
+        self.albumPopView.tableView.delegate = self
+        self.albumPopView.tableView.dataSource = self
+        self.popArrowImageView.image = TLBundle.podBundleImage(named: "pop_arrow")
+        self.subTitleArrowImageView.image = TLBundle.podBundleImage(named: "arrow")
+        if #available(iOS 10.0, *), self.usedPrefetch {
+            self.collectionView.isPrefetchingEnabled = true
+            self.collectionView.prefetchDataSource = self
+        } else {
+            self.usedPrefetch = false
+        }
+        if #available(iOS 9.0, *), self.allowedLivePhotos {
+        } else {
+            self.allowedLivePhotos = false
+        }
+        self.customDataSouces?.registerSupplementView(collectionView: self.collectionView)
+        self.navigationBar.delegate = self
+        updateUserInterfaceStyle()
+    }
+    
+    private func updatePresentLimitedLibraryButton() {
+        if #available(iOS 14.0, *), self.photoLibrary.limitMode && self.configure.preventAutomaticLimitedAccessAlert {
+            self.customNavItem.rightBarButtonItems = [self.doneButton, self.photosButton]
+        } else {
+            self.customNavItem.rightBarButtonItems = [self.doneButton]
+        }
+    }
+    
+    private func updateTitle() {
+        guard self.focusedCollection != nil else { return }
+        self.titleLabel.text = self.focusedCollection?.title
+        updatePresentLimitedLibraryButton()
+    }
+    
+    private func reloadCollectionView() {
+        guard self.focusedCollection != nil else {
+            return
+        }
+        if let groupedBy = self.configure.groupByFetch, self.usedPrefetch == false {
+            queueForGroupedBy.async { [weak self] in
+                self?.focusedCollection?.reloadSection(groupedBy: groupedBy)
+                DispatchQueue.main.async {
+                    self?.collectionView.reloadData()
+                }
+            }
+        }else {
+            self.collectionView.reloadData()
+        }
+    }
+    
+    private func reloadTableView() {
+        let count = min(5, self.collections.count)
+        var frame = self.albumPopView.popupView.frame
+        frame.size.height = CGFloat(count * 75)
+        self.albumPopView.popupViewHeight.constant = CGFloat(count * 75)
+        UIView.animate(withDuration: self.albumPopView.show ? 0.1:0) {
+            self.albumPopView.popupView.frame = frame
+            self.albumPopView.setNeedsLayout()
+        }
+        self.albumPopView.tableView.reloadData()
+        self.albumPopView.setupPopupFrame()
+    }
+    
+    private func registerChangeObserver() {
+        PHPhotoLibrary.shared().register(self)
+    }
+    
+    private func getfocusedIndex() -> Int {
+        guard let focused = self.focusedCollection, let result = self.collections.firstIndex(where: { $0 == focused }) else { return 0 }
+        return result
+    }
+    
+    private func getCollection(section: Int) -> PHAssetCollection? {
+        guard section < self.collections.count else {
+            return nil
+        }
+        return self.collections[section].phAssetCollection
+    }
+    
+    private func focused(collection: TLAssetsCollection) {
+        func resetRequest() {
+            cancelAllImageAssets()
+        }
+        resetRequest()
+        self.collections[getfocusedIndex()].recentPosition = self.collectionView.contentOffset
+        var reloadIndexPaths = [IndexPath(row: getfocusedIndex(), section: 0)]
+        self.focusedCollection = collection
+        self.focusedCollection?.fetchResult = self.photoLibrary.fetchResult(collection: collection, configure: self.configure)
+        reloadIndexPaths.append(IndexPath(row: getfocusedIndex(), section: 0))
+        self.albumPopView.tableView.reloadRows(at: reloadIndexPaths, with: .none)
+        self.albumPopView.show(false, duration: self.configure.popup.duration)
+        self.updateTitle()
+        self.reloadCollectionView()
+        self.collectionView.contentOffset = collection.recentPosition
+    }
+    
+    private func cancelAllImageAssets() {
+        self.requestIDs.forEach{ (indexPath, requestID) in
+            self.photoLibrary.cancelPHImageRequest(requestID: requestID)
+        }
+        self.requestIDs.removeAll()
+    }
+    
+    // User Action
+    @objc func titleTap() {
+        guard collections.count > 0 else { return }
+        self.albumPopView.show(self.albumPopView.isHidden, duration: self.configure.popup.duration)
+    }
+    
+    @IBAction open func cancelButtonTap() {
+        self.stopPlay()
+        self.dismiss(done: false)
+    }
+    
+    @IBAction open func doneButtonTap() {
+        self.stopPlay()
+        self.dismiss(done: true)
+    }
+    
+    @IBAction open func limitButtonTap() {
+        if #available(iOS 14.0, *) {
+            PHPhotoLibrary.shared().presentLimitedLibraryPicker(from: self)
+        }
+    }
+    
+    private func dismiss(done: Bool) {
+        var shouldDismiss = true
+        if done {
+            #if swift(>=4.1)
+            self.delegate?.dismissPhotoPicker(withPHAssets: self.selectedAssets.compactMap{ $0.phAsset })
+            #else
+            self.delegate?.dismissPhotoPicker(withPHAssets: self.selectedAssets.flatMap{ $0.phAsset })
+            #endif
+            self.delegate?.dismissPhotoPicker(withTLPHAssets: self.selectedAssets)
+            shouldDismiss = self.delegate?.shouldDismissPhotoPicker(withTLPHAssets: self.selectedAssets) ?? true
+            self.completionWithTLPHAssets?(self.selectedAssets)
+            #if swift(>=4.1)
+            self.completionWithPHAssets?(self.selectedAssets.compactMap{ $0.phAsset })
+            #else
+            self.completionWithPHAssets?(self.selectedAssets.flatMap{ $0.phAsset })
+            #endif
+        }else {
+            self.delegate?.photoPickerDidCancel()
+            self.didCancel?()
+        }
+        if shouldDismiss {
+            self.dismiss(animated: true) { [weak self] in
+                self?.delegate?.dismissComplete()
+                self?.dismissCompletion?()
+            }
+        }
+    }
+    
+    private func canSelect(phAsset: PHAsset) -> Bool {
+        if let closure = self.canSelectAsset {
+            return closure(phAsset)
+        }else if let delegate = self.delegate {
+            return delegate.canSelectAsset(phAsset: phAsset)
+        }
+        return true
+    }
+    
+    private func focusFirstCollection() {
+        if self.focusedCollection == nil, let collection = self.collections.first {
+            self.focusedCollection = collection
+            self.updateTitle()
+            self.reloadCollectionView()
+        }
+    }
+}
+
+// MARK: - TLPhotoLibraryDelegate
+extension TLPhotosPickerViewController: TLPhotoLibraryDelegate {
+    func loadCameraRollCollection(collection: TLAssetsCollection) {
+        self.collections = [collection]
+        self.focusFirstCollection()
+        self.indicator.stopAnimating()
+        self.reloadTableView()
+    }
+    
+    func loadCompleteAllCollection(collections: [TLAssetsCollection]) {
+        self.collections = collections
+        self.focusFirstCollection()
+        let isEmpty = self.collections.count == 0
+        self.subTitleStackView.isHidden = isEmpty
+        self.emptyView.isHidden = !isEmpty
+        self.emptyImageView.isHidden = self.emptyImageView.image == nil
+        self.indicator.stopAnimating()
+        self.reloadTableView()
+        self.registerChangeObserver()
+    }
+}
+
+// MARK: - Camera Picker
+extension TLPhotosPickerViewController: UIImagePickerControllerDelegate, UINavigationControllerDelegate {
+    private func showCameraIfAuthorized() {
+        let cameraAuthorization = AVCaptureDevice.authorizationStatus(for: .video)
+        switch cameraAuthorization {
+        case .authorized:
+            self.showCamera()
+        case .notDetermined:
+            AVCaptureDevice.requestAccess(for: .video, completionHandler: { [weak self] (authorized) in
+                DispatchQueue.main.async { [weak self] in
+                    if authorized {
+                        self?.showCamera()
+                    } else {
+                        self?.handleDeniedCameraAuthorization()
+                    }
+                }
+            })
+        case .restricted, .denied:
+            self.handleDeniedCameraAuthorization()
+        @unknown default:
+            break
+        }
+    }
+
+    private func showCamera() {
+        guard !maxCheck() else { return }
+        let picker = UIImagePickerController()
+        picker.sourceType = .camera
+        var mediaTypes: [String] = []
+        if self.configure.allowedPhotograph {
+            mediaTypes.append(kUTTypeImage as String)
+        }
+        if self.configure.allowedVideoRecording {
+            mediaTypes.append(kUTTypeMovie as String)
+            picker.videoQuality = self.configure.recordingVideoQuality
+            if let duration = self.configure.maxVideoDuration {
+                picker.videoMaximumDuration = duration
+            }
+        }
+        guard mediaTypes.count > 0 else {
+            return
+        }
+        picker.cameraDevice = configure.defaultToFrontFacingCamera ? .front : .rear
+        picker.mediaTypes = mediaTypes
+        picker.allowsEditing = false
+        picker.delegate = self
+        
+        // if user is on ipad using split view controller, present picker as popover
+        if UIDevice.current.userInterfaceIdiom == .pad {
+            picker.modalPresentationStyle = .popover
+            picker.popoverPresentationController?.sourceView = view
+            picker.popoverPresentationController?.sourceRect = .zero
+        }
+        
+        self.present(picker, animated: true, completion: nil)
+    }
+
+    private func handleDeniedAlbumsAuthorization() {
+        DispatchQueue.main.async {
+            self.delegate?.handleNoAlbumPermissions(picker: self)
+            self.handleNoAlbumPermissions?(self)
+        }
+    }
+    
+    private func handleDeniedCameraAuthorization() {
+        DispatchQueue.main.async {
+            self.delegate?.handleNoCameraPermissions(picker: self)
+            self.handleNoCameraPermissions?(self)
+        }
+    }
+    
+    open func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
+        picker.dismiss(animated: true, completion: nil)
+    }
+    
+    open func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
+        if let image = (info[.originalImage] as? UIImage) {
+            var placeholderAsset: PHObjectPlaceholder? = nil
+            PHPhotoLibrary.shared().performChanges({
+                let newAssetRequest = PHAssetChangeRequest.creationRequestForAsset(from: image)
+                placeholderAsset = newAssetRequest.placeholderForCreatedAsset
+            }, completionHandler: { [weak self] (success, error) in
+                guard self?.maxCheck() == false else { return }
+                if success, let `self` = self, let identifier = placeholderAsset?.localIdentifier {
+                    guard let asset = PHAsset.fetchAssets(withLocalIdentifiers: [identifier], options: nil).firstObject,
+                        self.canSelect(phAsset: asset) else { return }
+                    var result = TLPHAsset(asset: asset)
+                    result.selectedOrder = self.selectedAssets.count + 1
+                    result.isSelectedFromCamera = true
+                    self.selectedAssets.append(result)
+                    self.logDelegate?.selectedPhoto(picker: self, at: 1)
+                }
+            })
+        }
+        else if (info[.mediaType] as? String) == kUTTypeMovie as String {
+            var placeholderAsset: PHObjectPlaceholder? = nil
+            PHPhotoLibrary.shared().performChanges({
+                let newAssetRequest = PHAssetChangeRequest.creationRequestForAssetFromVideo(atFileURL: info[.mediaURL] as! URL)
+                placeholderAsset = newAssetRequest?.placeholderForCreatedAsset
+            }) { [weak self] (sucess, error) in
+                guard self?.maxCheck() == false else { return }
+                if sucess, let `self` = self, let identifier = placeholderAsset?.localIdentifier {
+                    guard let asset = PHAsset.fetchAssets(withLocalIdentifiers: [identifier], options: nil).firstObject,
+                        self.canSelect(phAsset: asset) else { return }
+                    var result = TLPHAsset(asset: asset)
+                    result.selectedOrder = self.selectedAssets.count + 1
+                    result.isSelectedFromCamera = true
+                    self.selectedAssets.append(result)
+                    self.logDelegate?.selectedPhoto(picker: self, at: 1)
+                }
+            }
+        }
+        
+        picker.dismiss(animated: true, completion: nil)
+    }
+}
+
+// MARK: - UICollectionView Scroll Delegate
+extension TLPhotosPickerViewController {
+    open func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
+        if !decelerate {
+            videoCheck()
+        }
+    }
+    
+    open func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
+        videoCheck()
+    }
+    
+    private func videoCheck() {
+        func play(asset: (IndexPath,TLPHAsset)) {
+            if self.playRequestID?.indexPath != asset.0 {
+                playVideo(asset: asset.1, indexPath: asset.0)
+            }
+        }
+        guard self.configure.autoPlay else { return }
+        guard self.playRequestID == nil else { return }
+        let visibleIndexPaths = self.collectionView.indexPathsForVisibleItems.sorted(by: { $0.row < $1.row })
+        #if swift(>=4.1)
+        let boundAssets = visibleIndexPaths.compactMap{ indexPath -> (IndexPath,TLPHAsset)? in
+            guard let asset = self.focusedCollection?.getTLAsset(at: indexPath), asset.phAsset?.mediaType == .video else { return nil }
+            return (indexPath,asset)
+        }
+        #else
+        let boundAssets = visibleIndexPaths.flatMap{ indexPath -> (IndexPath,TLPHAsset)? in
+            guard let asset = self.focusedCollection?.getTLAsset(at: indexPath.row),asset.phAsset?.mediaType == .video else { return nil }
+            return (indexPath,asset)
+        }
+        #endif
+        if let firstSelectedVideoAsset = (boundAssets.filter{ getSelectedAssets($0.1) != nil }.first) {
+            play(asset: firstSelectedVideoAsset)
+        }else if let firstVideoAsset = boundAssets.first {
+            play(asset: firstVideoAsset)
+        }
+        
+    }
+}
+// MARK: - Video & LivePhotos Control PHLivePhotoViewDelegate
+extension TLPhotosPickerViewController: PHLivePhotoViewDelegate {
+    private func stopPlay() {
+        guard let playRequest = self.playRequestID else { return }
+        self.playRequestID = nil
+        guard let cell = self.collectionView.cellForItem(at: playRequest.indexPath) as? TLPhotoCollectionViewCell else { return }
+        cell.stopPlay()
+    }
+    
+    private func playVideo(asset: TLPHAsset, indexPath: IndexPath) {
+        stopPlay()
+        guard let phAsset = asset.phAsset else { return }
+        if asset.type == .video {
+            guard let cell = self.collectionView.cellForItem(at: indexPath) as? TLPhotoCollectionViewCell else { return }
+            let requestID = self.photoLibrary.videoAsset(asset: phAsset, completionBlock: { (playerItem, info) in
+                DispatchQueue.main.async { [weak self, weak cell] in
+                    guard let `self` = self, let cell = cell, cell.player == nil else { return }
+                    let player = AVPlayer(playerItem: playerItem)
+                    cell.player = player
+                    player.play()
+                    player.isMuted = self.configure.muteAudio
+                }
+            })
+            if requestID > 0 {
+                self.playRequestID = (indexPath,requestID)
+            }
+        }else if asset.type == .livePhoto && self.allowedLivePhotos {
+            guard let cell = self.collectionView.cellForItem(at: indexPath) as? TLPhotoCollectionViewCell else { return }
+            let requestID = self.photoLibrary.livePhotoAsset(asset: phAsset, size: self.thumbnailSize, completionBlock: { [weak cell] (livePhoto,complete) in
+                cell?.livePhotoView?.isHidden = false
+                cell?.livePhotoView?.livePhoto = livePhoto
+                cell?.livePhotoView?.isMuted = true
+                cell?.livePhotoView?.startPlayback(with: self.configure.startplayBack)
+            })
+            if requestID > 0 {
+                self.playRequestID = (indexPath,requestID)
+            }
+        }
+    }
+    
+    public func livePhotoView(_ livePhotoView: PHLivePhotoView, didEndPlaybackWith playbackStyle: PHLivePhotoViewPlaybackStyle) {
+        livePhotoView.isMuted = true
+        livePhotoView.startPlayback(with: self.configure.startplayBack)
+    }
+    
+    public func livePhotoView(_ livePhotoView: PHLivePhotoView, willBeginPlaybackWith playbackStyle: PHLivePhotoViewPlaybackStyle) {
+    }
+}
+
+// MARK: - PHPhotoLibraryChangeObserver
+extension TLPhotosPickerViewController: PHPhotoLibraryChangeObserver {
+    private func getChanges(_ changeInstance: PHChange) -> PHFetchResultChangeDetails<PHAsset>? {
+        func isChangesCount<T>(changeDetails: PHFetchResultChangeDetails<T>?) -> Bool {
+            guard let changeDetails = changeDetails else {
+                return false
+            }
+            let before = changeDetails.fetchResultBeforeChanges.count
+            let after = changeDetails.fetchResultAfterChanges.count
+            return before != after
+        }
+        
+        func isAlbumsChanges() -> Bool {
+            guard let albums = self.photoLibrary.albums else {
+                return false
+            }
+            let changeDetails = changeInstance.changeDetails(for: albums)
+            return isChangesCount(changeDetails: changeDetails)
+        }
+        
+        func isCollectionsChanges() -> Bool {
+            for fetchResultCollection in self.photoLibrary.assetCollections {
+                let changeDetails = changeInstance.changeDetails(for: fetchResultCollection)
+                if isChangesCount(changeDetails: changeDetails) == true {
+                    return true
+                }
+            }
+            return false
+        }
+        
+        if isAlbumsChanges() || isCollectionsChanges() {
+            DispatchQueue.main.async {
+                self.albumPopView.show(false, duration: self.configure.popup.duration)
+                self.photoLibrary.fetchCollection(configure: self.configure)
+            }
+            return nil
+        }else {
+            guard let changeFetchResult = self.focusedCollection?.fetchResult else { return nil }
+            guard let changes = changeInstance.changeDetails(for: changeFetchResult) else { return nil }
+            return changes
+        }
+    }
+    
+    public func photoLibraryDidChange(_ changeInstance: PHChange) {
+        var addIndex = 0
+        if getfocusedIndex() == 0 {
+            addIndex = self.usedCameraButton ? 1 : 0
+        }
+        DispatchQueue.main.async {
+            guard let changes = self.getChanges(changeInstance) else {
+                return
+            }
+            
+            if changes.hasIncrementalChanges, self.configure.groupByFetch == nil {
+                var deletedSelectedAssets = false
+                var order = 0
+                #if swift(>=4.1)
+                self.selectedAssets = self.selectedAssets.enumerated().compactMap({ (offset,asset) -> TLPHAsset? in
+                    var asset = asset
+                    if let phAsset = asset.phAsset, changes.fetchResultAfterChanges.contains(phAsset) {
+                        order += 1
+                        asset.selectedOrder = order
+                        return asset
+                    }
+                    deletedSelectedAssets = true
+                    return nil
+                })
+                #else
+                self.selectedAssets = self.selectedAssets.enumerated().flatMap({ (offset,asset) -> TLPHAsset? in
+                    var asset = asset
+                    if let phAsset = asset.phAsset, changes.fetchResultAfterChanges.contains(phAsset) {
+                        order += 1
+                        asset.selectedOrder = order
+                        return asset
+                    }
+                    deletedSelectedAssets = true
+                    return nil
+                })
+                #endif
+                if deletedSelectedAssets {
+                    self.focusedCollection?.fetchResult = changes.fetchResultAfterChanges
+                    self.reloadCollectionView()
+                }else {
+                    self.collectionView.performBatchUpdates({ [weak self] in
+                        guard let `self` = self else { return }
+                        self.focusedCollection?.fetchResult = changes.fetchResultAfterChanges
+                        if let removed = changes.removedIndexes, removed.count > 0 {
+                            self.collectionView.deleteItems(at: removed.map { IndexPath(item: $0+addIndex, section:0) })
+                        }
+                        if let inserted = changes.insertedIndexes, inserted.count > 0 {
+                            self.collectionView.insertItems(at: inserted.map { IndexPath(item: $0+addIndex, section:0) })
+                        }
+                        changes.enumerateMoves { fromIndex, toIndex in
+                            self.collectionView.moveItem(at: IndexPath(item: fromIndex, section: 0),
+                                                         to: IndexPath(item: toIndex, section: 0))
+                        }
+                    }, completion: { [weak self] (completed) in
+                        guard let `self` = self else { return }
+                        if completed {
+                            if let changed = changes.changedIndexes, changed.count > 0 {
+                                self.collectionView.reloadItems(at: changed.map { IndexPath(item: $0+addIndex, section:0) })
+                            }
+                        }
+                    })
+                }
+            }else {
+                self.focusedCollection?.fetchResult = changes.fetchResultAfterChanges
+                self.reloadCollectionView()
+            }
+            if let collection = self.focusedCollection {
+                self.collections[self.getfocusedIndex()] = collection
+                self.albumPopView.tableView.reloadRows(at: [IndexPath(row: self.getfocusedIndex(), section: 0)], with: .none)
+            }
+        }
+    }
+}
+
+// MARK: - UICollectionView delegate & datasource
+extension TLPhotosPickerViewController: UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDataSourcePrefetching {
+    private func getSelectedAssets(_ asset: TLPHAsset) -> TLPHAsset? {
+        if let index = self.selectedAssets.firstIndex(where: { $0.phAsset == asset.phAsset }) {
+            return self.selectedAssets[index]
+        }
+        return nil
+    }
+    
+    private func orderUpdateCells() {
+        let visibleIndexPaths = self.collectionView.indexPathsForVisibleItems.sorted(by: { $0.row < $1.row })
+        for indexPath in visibleIndexPaths {
+            guard let cell = self.collectionView.cellForItem(at: indexPath) as? TLPhotoCollectionViewCell else { continue }
+            guard let asset = self.focusedCollection?.getTLAsset(at: indexPath) else { continue }
+            if let selectedAsset = getSelectedAssets(asset) {
+                cell.selectedAsset = true
+                cell.orderLabel?.text = "\(selectedAsset.selectedOrder)"
+            }else {
+                cell.selectedAsset = false
+            }
+        }
+    }
+    
+    //Delegate
+    open func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
+        guard let collection = self.focusedCollection, let cell = self.collectionView.cellForItem(at: indexPath) as? TLPhotoCollectionViewCell else { return }
+        
+        let isCameraRow = collection.useCameraButton && indexPath.section == 0 && indexPath.row == 0
+        
+        if isCameraRow {
+            selectCameraCell(cell)
+            return
+        }
+        
+        toggleSelection(for: cell, at: indexPath)
+    }
+    
+    open func collectionView(_ collectionView: UICollectionView, didEndDisplaying cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
+        if let cell = cell as? TLPhotoCollectionViewCell {
+            cell.endDisplayingCell()
+            cell.stopPlay()
+            if indexPath == self.playRequestID?.indexPath {
+                self.playRequestID = nil
+            }
+        }
+        guard let requestID = self.requestIDs[indexPath] else { return }
+        self.requestIDs.removeValue(forKey: indexPath)
+        self.photoLibrary.cancelPHImageRequest(requestID: requestID)
+    }
+    
+    //Datasource
+    open func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
+        func makeCell(nibName: String) -> TLPhotoCollectionViewCell {
+            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: nibName, for: indexPath) as! TLPhotoCollectionViewCell
+            cell.configure = self.configure
+            cell.imageView?.image = self.placeholderThumbnail
+            cell.liveBadgeImageView?.image = nil
+            return cell
+        }
+        let nibName = self.configure.nibSet?.nibName ?? "TLPhotoCollectionViewCell"
+        var cell = makeCell(nibName: nibName)
+        guard let collection = self.focusedCollection else { return cell }
+        cell.isCameraCell = collection.useCameraButton && indexPath.section == 0 && indexPath.row == 0
+        if cell.isCameraCell {
+            if let nibName = self.configure.cameraCellNibSet?.nibName {
+                cell = makeCell(nibName: nibName)
+            }else{
+                cell.imageView?.image = self.cameraImage
+            }
+            return cell
+        }
+        guard let asset = collection.getTLAsset(at: indexPath) else { return cell }
+        
+        cell.asset = asset.phAsset
+        
+        if let selectedAsset = getSelectedAssets(asset) {
+            cell.selectedAsset = true
+            cell.orderLabel?.text = "\(selectedAsset.selectedOrder)"
+        }else{
+            cell.selectedAsset = false
+        }
+        if asset.state == .progress {
+            cell.indicator?.startAnimating()
+        }else {
+            cell.indicator?.stopAnimating()
+        }
+        if let phAsset = asset.phAsset {
+            if self.usedPrefetch {
+                let options = PHImageRequestOptions()
+                options.deliveryMode = .opportunistic
+                options.resizeMode = .exact
+                options.isNetworkAccessAllowed = true
+                let requestID = self.photoLibrary.imageAsset(asset: phAsset, size: self.thumbnailSize, options: options) { [weak self, weak cell] (image,complete) in
+                    guard let `self` = self else { return }
+                    DispatchQueue.main.async {
+                        if self.requestIDs[indexPath] != nil {
+                            cell?.imageView?.image = image
+                            cell?.update(with: phAsset)
+                            if self.allowedVideo {
+                                cell?.durationView?.isHidden = asset.type != .video
+                                cell?.duration = asset.type == .video ? phAsset.duration : nil
+                            }
+                            if complete {
+                                self.requestIDs.removeValue(forKey: indexPath)
+                            }
+                        }
+                    }
+                }
+                if requestID > 0 {
+                    self.requestIDs[indexPath] = requestID
+                }
+            }else {
+                queue.async { [weak self, weak cell] in
+                    guard let `self` = self else { return }
+                    let requestID = self.photoLibrary.imageAsset(asset: phAsset, size: self.thumbnailSize, completionBlock: { (image,complete) in
+                        DispatchQueue.main.async {
+                            if self.requestIDs[indexPath] != nil {
+                                cell?.imageView?.image = image
+                                cell?.update(with: phAsset)
+                                if self.allowedVideo {
+                                    cell?.durationView?.isHidden = asset.type != .video
+                                    cell?.duration = asset.type == .video ? phAsset.duration : nil
+                                }
+                                if complete {
+                                    self.requestIDs.removeValue(forKey: indexPath)
+                                }
+                            }
+                        }
+                    })
+                    if requestID > 0 {
+                        self.requestIDs[indexPath] = requestID
+                    }
+                }
+            }
+            if self.allowedLivePhotos {
+                cell.liveBadgeImageView?.image = asset.type == .livePhoto ? PHLivePhotoView.livePhotoBadgeImage(options: .overContent) : nil
+                cell.livePhotoView?.delegate = asset.type == .livePhoto ? self : nil
+            }
+        }
+        cell.alpha = 0
+        UIView.transition(with: cell, duration: 0.1, options: .curveEaseIn, animations: {
+            cell.alpha = 1
+        }, completion: nil)
+        return cell
+    }
+    
+    open func numberOfSections(in collectionView: UICollectionView) -> Int {
+        return self.focusedCollection?.sections?.count ?? 1
+    }
+    
+    open func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
+        guard let collection = self.focusedCollection else {
+            return 0
+        }
+        return self.focusedCollection?.sections?[safe: section]?.assets.count ?? collection.count
+    }
+    
+    //Prefetch
+    open func collectionView(_ collectionView: UICollectionView, prefetchItemsAt indexPaths: [IndexPath]) {
+        if self.usedPrefetch {
+            queue.async { [weak self] in
+                guard let `self` = self, let collection = self.focusedCollection else { return }
+                var assets = [PHAsset]()
+                for indexPath in indexPaths {
+                    if let asset = collection.getAsset(at: indexPath.row) {
+                        assets.append(asset)
+                    }
+                }
+                let scale = max(UIScreen.main.scale,2)
+                let targetSize = CGSize(width: self.thumbnailSize.width*scale, height: self.thumbnailSize.height*scale)
+                self.photoLibrary.imageManager.startCachingImages(for: assets, targetSize: targetSize, contentMode: .aspectFill, options: nil)
+            }
+        }
+    }
+    
+    open func collectionView(_ collectionView: UICollectionView, cancelPrefetchingForItemsAt indexPaths: [IndexPath]) {
+        if self.usedPrefetch {
+            for indexPath in indexPaths {
+                guard let requestID = self.requestIDs[indexPath] else { continue }
+                self.photoLibrary.cancelPHImageRequest(requestID: requestID)
+                self.requestIDs.removeValue(forKey: indexPath)
+            }
+            queue.async { [weak self] in
+                guard let `self` = self, let collection = self.focusedCollection else { return }
+                var assets = [PHAsset]()
+                for indexPath in indexPaths {
+                    if let asset = collection.getAsset(at: indexPath.row) {
+                        assets.append(asset)
+                    }
+                }
+                let scale = max(UIScreen.main.scale,2)
+                let targetSize = CGSize(width: self.thumbnailSize.width*scale, height: self.thumbnailSize.height*scale)
+                self.photoLibrary.imageManager.stopCachingImages(for: assets, targetSize: targetSize, contentMode: .aspectFill, options: nil)
+            }
+        }
+    }
+    
+    public func collectionView(_ collectionView: UICollectionView, willDisplay cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
+        guard let cell = cell as? TLPhotoCollectionViewCell else {
+            return
+        }
+        cell.willDisplayCell()
+        if self.usedPrefetch, let collection = self.focusedCollection, let asset = collection.getTLAsset(at: indexPath) {
+            if let selectedAsset = getSelectedAssets(asset) {
+                cell.selectedAsset = true
+                cell.orderLabel?.text = "\(selectedAsset.selectedOrder)"
+            }else{
+                cell.selectedAsset = false
+            }
+        }
+    }
+}
+
+// MARK: - CustomDataSources for supplementary view
+extension TLPhotosPickerViewController: UICollectionViewDelegateFlowLayout {
+    open func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
+        guard let identifier = self.customDataSouces?.supplementIdentifier(kind: kind) else {
+            return UICollectionReusableView()
+        }
+        let reuseView = collectionView.dequeueReusableSupplementaryView(ofKind: kind,
+                                                                        withReuseIdentifier: identifier,
+                                                                        for: indexPath)
+        if let section = self.focusedCollection?.sections?[safe: indexPath.section] {
+            self.customDataSouces?.configure(supplement: reuseView, section: section)
+        }
+        return reuseView
+    }
+    
+    open func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForHeaderInSection section: Int) -> CGSize {
+        if let sections = self.focusedCollection?.sections?[safe: section], sections.title != "camera" {
+            return self.customDataSouces?.headerReferenceSize() ?? CGSize.zero
+        }
+        return CGSize.zero
+    }
+    
+    open func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, referenceSizeForFooterInSection section: Int) -> CGSize {
+        if let sections = self.focusedCollection?.sections?[safe: section], sections.title != "camera" {
+            return self.customDataSouces?.footerReferenceSize() ?? CGSize.zero
+        }
+        return CGSize.zero
+    }
+}
+
+// MARK: - UITableView datasource & delegate
+extension TLPhotosPickerViewController: UITableViewDelegate, UITableViewDataSource {
+    //delegate
+    open func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
+        self.logDelegate?.selectedAlbum(picker: self, title: self.collections[indexPath.row].title, at: indexPath.row)
+        self.focused(collection: self.collections[indexPath.row])
+    }
+    
+    //datasource
+    open func numberOfSections(in tableView: UITableView) -> Int {
+        return 1
+    }
+    
+    open func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
+        return self.collections.count
+    }
+    
+    open func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
+        let cell = tableView.dequeueReusableCell(withIdentifier: "TLCollectionTableViewCell", for: indexPath) as! TLCollectionTableViewCell
+        let collection = self.collections[indexPath.row]
+        cell.titleLabel.text = collection.title
+        cell.subTitleLabel.text = "\(collection.fetchResult?.count ?? 0)"
+        if let phAsset = collection.getAsset(at: collection.useCameraButton ? 1 : 0) {
+            let scale = UIScreen.main.scale
+            let size = CGSize(width: 80*scale, height: 80*scale)
+            self.photoLibrary.imageAsset(asset: phAsset, size: size, completionBlock: {  (image,complete) in
+                DispatchQueue.main.async {
+                    if let cell = tableView.cellForRow(at: indexPath) as? TLCollectionTableViewCell {
+                        cell.thumbImageView.image = image
+                    }
+                }
+            })
+        }
+        cell.accessoryType = getfocusedIndex() == indexPath.row ? .checkmark : .none
+        cell.selectionStyle = .none
+        return cell
+    }
+}
+
+// MARK: - UIViewControllerPreviewingDelegate
+extension TLPhotosPickerViewController: UIViewControllerPreviewingDelegate {
+    public func previewingContext(_ previewingContext: UIViewControllerPreviewing, viewControllerForLocation location: CGPoint) -> UIViewController? {
+        guard self.previewAtForceTouch == true else { return nil }
+        guard let pressingIndexPath = collectionView.indexPathForItem(at: location) else { return nil }
+        guard let pressingCell = collectionView.cellForItem(at: pressingIndexPath) as? TLPhotoCollectionViewCell else { return nil }
+    
+        previewingContext.sourceRect = pressingCell.frame
+        let previewController = TLAssetPreviewViewController()
+        previewController.asset = pressingCell.asset
+        
+        return previewController
+    }
+    
+    public func previewingContext(_ previewingContext: UIViewControllerPreviewing, commit viewControllerToCommit: UIViewController) {}
+    
+    @available(iOS 13.0, *)
+    public func collectionView(_ collectionView: UICollectionView, contextMenuConfigurationForItemAt indexPath: IndexPath, point: CGPoint) -> UIContextMenuConfiguration? {
+        guard self.previewAtForceTouch == true else { return nil }
+        guard let cell = collectionView.cellForItem(at: indexPath) as? TLPhotoCollectionViewCell else { return nil }
+
+        return UIContextMenuConfiguration(identifier: nil, previewProvider: {
+                let previewController = TLAssetPreviewViewController()
+                previewController.asset = cell.asset
+                return previewController
+            
+            }, actionProvider: { [weak self] suggestedActions in
+                guard let self = self else { return nil }
+                let isSelected = cell.selectedAsset
+                let title = isSelected ? self.configure.deselectMessage : self.configure.selectMessage
+                let imageName = isSelected ? "checkmark.circle" : "circle"
+                let toggleSelection = UIAction(title: title, image: UIImage(systemName: imageName)) { [weak self] action in
+                    self?.toggleSelection(for: cell, at: indexPath)
+                }
+
+                return UIMenu(title: "", children: [toggleSelection])
+            }
+        )
+    }
+}
+
+extension TLPhotosPickerViewController {
+    func selectCameraCell(_ cell: TLPhotoCollectionViewCell) {
+        if Platform.isSimulator {
+            print("not supported by the simulator.")
+        } else {
+            if configure.cameraCellNibSet?.nibName != nil {
+                cell.selectedCell()
+            } else {
+                showCameraIfAuthorized()
+            }
+            logDelegate?.selectedCameraCell(picker: self)
+        }
+    }
+    
+    func toggleSelection(for cell: TLPhotoCollectionViewCell, at indexPath: IndexPath) {
+        guard let collection = focusedCollection, var asset = collection.getTLAsset(at: indexPath), let phAsset = asset.phAsset else { return }
+        
+        cell.popScaleAnim()
+        
+        if let index = selectedAssets.firstIndex(where: { $0.phAsset == asset.phAsset }) {
+        //deselect
+            logDelegate?.deselectedPhoto(picker: self, at: indexPath.row)
+            selectedAssets.remove(at: index)
+            #if swift(>=4.1)
+            selectedAssets = selectedAssets.enumerated().compactMap({ (offset,asset) -> TLPHAsset? in
+                var asset = asset
+                asset.selectedOrder = offset + 1
+                return asset
+            })
+            #else
+            selectedAssets = selectedAssets.enumerated().flatMap({ (offset,asset) -> TLPHAsset? in
+                var asset = asset
+                asset.selectedOrder = offset + 1
+                return asset
+            })
+            #endif
+            cell.selectedAsset = false
+            cell.stopPlay()
+            orderUpdateCells()
+            if playRequestID?.indexPath == indexPath {
+                stopPlay()
+            }
+        } else {
+        //select
+            logDelegate?.selectedPhoto(picker: self, at: indexPath.row)
+            guard !maxCheck(), canSelect(phAsset: phAsset) else { return }
+            
+            asset.selectedOrder = selectedAssets.count + 1
+            selectedAssets.append(asset)
+            cell.selectedAsset = true
+            cell.orderLabel?.text = "\(asset.selectedOrder)"
+            
+            if asset.type != .photo, configure.autoPlay {
+                playVideo(asset: asset, indexPath: indexPath)
+            }
+        }
+
+    }
+}
+
+extension TLPhotosPickerViewController: UINavigationBarDelegate {
+    public func position(for bar: UIBarPositioning) -> UIBarPosition {
+        return .topAttached
+    }
+}
+
+extension Array where Element == PopupConfigure {
+    var duration: TimeInterval {
+        var result: TimeInterval = 0.1
+        forEach {
+            if case let .animation(duration) = $0 {
+                result = duration
+            }
+        }
+        return result
+    }
+}
+
+extension UIImage {
+    public func colorMask(color:UIColor) -> UIImage {
+        var result: UIImage?
+        let rect = CGRect(x:0, y:0, width:size.width, height:size.height)
+        UIGraphicsBeginImageContextWithOptions(rect.size, false, scale)
+        if let c = UIGraphicsGetCurrentContext() {
+            self.draw(in: rect)
+            c.setFillColor(color.cgColor)
+            c.setBlendMode(.sourceAtop)
+            c.fill(rect)
+            result = UIGraphicsGetImageFromCurrentImageContext()
+        }
+        UIGraphicsEndImageContext()
+        return result ?? self
+    }
+}
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.xib b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.xib
new file mode 100644
index 0000000..d98af0c
--- /dev/null
+++ b/Pods/TLPhotoPicker/TLPhotoPicker/Classes/TLPhotosPickerViewController.xib
@@ -0,0 +1,232 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="17156" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina4_7" orientation="portrait" appearance="light"/>
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="17125"/>
+        <capability name="Image references" minToolsVersion="11.0"/>
+        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
+        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
+    </dependencies>
+    <objects>
+        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="TLPhotosPickerViewController" customModule="TLPhotoPicker">
+            <connections>
+                <outlet property="albumPopView" destination="Jcn-hC-Umh" id="c3n-m9-wfd"/>
+                <outlet property="cancelButton" destination="sqJ-Z7-zxj" id="J6u-hz-ePK"/>
+                <outlet property="collectionView" destination="4gR-Bn-quP" id="ZOF-qU-cpd"/>
+                <outlet property="customNavItem" destination="5CU-MZ-p1K" id="ih7-d3-nco"/>
+                <outlet property="doneButton" destination="daA-Ag-vVv" id="P53-fy-Sbh"/>
+                <outlet property="emptyImageView" destination="YDZ-o1-AXT" id="TVN-0v-aQc"/>
+                <outlet property="emptyMessageLabel" destination="7qj-q4-rHC" id="Bcp-Hu-lEY"/>
+                <outlet property="emptyView" destination="HPm-Vc-F86" id="4FT-XL-9ql"/>
+                <outlet property="indicator" destination="AEv-G6-dRI" id="coA-3n-07e"/>
+                <outlet property="navigationBar" destination="X8O-Gg-slz" id="Sp9-g1-r4y"/>
+                <outlet property="navigationBarTopConstraint" destination="IKp-hS-tTy" id="MFH-eP-0tb"/>
+                <outlet property="photosButton" destination="spQ-SO-lth" id="Vy3-rM-vY9"/>
+                <outlet property="popArrowImageView" destination="5zn-je-qLx" id="6k9-cH-vcU"/>
+                <outlet property="subTitleArrowImageView" destination="b7w-7R-rco" id="IjY-7S-Zz1"/>
+                <outlet property="subTitleLabel" destination="DON-iU-Cox" id="ZyB-O9-EcR"/>
+                <outlet property="subTitleStackView" destination="kgt-Cn-AXg" id="Vcc-hP-iqe"/>
+                <outlet property="titleLabel" destination="xuG-bc-Oq9" id="2o0-aN-au6"/>
+                <outlet property="titleView" destination="VAz-Py-dsa" id="deY-US-9Jh"/>
+                <outlet property="view" destination="Zyk-dI-msE" id="dxK-gh-unF"/>
+            </connections>
+        </placeholder>
+        <barButtonItem title="photo" id="spQ-SO-lth">
+            <imageReference key="image" image="photo" catalog="system" symbolScale="small"/>
+            <connections>
+                <action selector="limitButtonTap" destination="-1" id="VRo-CG-wO6"/>
+            </connections>
+        </barButtonItem>
+        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
+        <view contentMode="scaleToFill" id="Zyk-dI-msE">
+            <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
+            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+            <subviews>
+                <navigationBar contentMode="scaleToFill" translucent="NO" translatesAutoresizingMaskIntoConstraints="NO" id="X8O-Gg-slz">
+                    <rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
+                    <items>
+                        <navigationItem id="5CU-MZ-p1K">
+                            <nil key="title"/>
+                            <barButtonItem key="leftBarButtonItem" title="Cancel" id="sqJ-Z7-zxj">
+                                <connections>
+                                    <action selector="cancelButtonTap" destination="-1" id="dm0-Ur-I5r"/>
+                                </connections>
+                            </barButtonItem>
+                            <view key="titleView" contentMode="scaleToFill" id="VAz-Py-dsa">
+                                <rect key="frame" x="100.5" y="0.0" width="174.5" height="44"/>
+                                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                                <subviews>
+                                    <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="center" translatesAutoresizingMaskIntoConstraints="NO" id="Ql8-7f-9Uk">
+                                        <rect key="frame" x="0.0" y="0.0" width="174.5" height="44"/>
+                                        <subviews>
+                                            <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="xuG-bc-Oq9">
+                                                <rect key="frame" x="66.5" y="0.0" width="41.5" height="19.5"/>
+                                                <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="16"/>
+                                                <nil key="textColor"/>
+                                                <nil key="highlightedColor"/>
+                                            </label>
+                                            <stackView opaque="NO" contentMode="scaleToFill" alignment="center" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="kgt-Cn-AXg">
+                                                <rect key="frame" x="65" y="19.5" width="44.5" height="24.5"/>
+                                                <subviews>
+                                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumScaleFactor="0.5" translatesAutoresizingMaskIntoConstraints="NO" id="DON-iU-Cox">
+                                                        <rect key="frame" x="0.0" y="5.5" width="29.5" height="13.5"/>
+                                                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="11"/>
+                                                        <nil key="textColor"/>
+                                                        <nil key="highlightedColor"/>
+                                                    </label>
+                                                    <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="b7w-7R-rco">
+                                                        <rect key="frame" x="34.5" y="7.5" width="10" height="10"/>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" priority="999" constant="10" id="7bM-Da-Q8A"/>
+                                                            <constraint firstAttribute="height" priority="999" constant="10" id="OHz-gp-CQp"/>
+                                                        </constraints>
+                                                    </imageView>
+                                                </subviews>
+                                            </stackView>
+                                        </subviews>
+                                    </stackView>
+                                </subviews>
+                                <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                                <constraints>
+                                    <constraint firstAttribute="trailing" secondItem="Ql8-7f-9Uk" secondAttribute="trailing" id="Vv5-au-j7y"/>
+                                    <constraint firstAttribute="bottom" secondItem="Ql8-7f-9Uk" secondAttribute="bottom" id="XNk-yU-iZJ"/>
+                                    <constraint firstItem="Ql8-7f-9Uk" firstAttribute="top" secondItem="VAz-Py-dsa" secondAttribute="top" id="h9o-f1-oRa"/>
+                                    <constraint firstItem="Ql8-7f-9Uk" firstAttribute="leading" secondItem="VAz-Py-dsa" secondAttribute="leading" id="j8K-5o-bAh"/>
+                                </constraints>
+                            </view>
+                            <barButtonItem key="rightBarButtonItem" title="Done" id="daA-Ag-vVv">
+                                <connections>
+                                    <action selector="doneButtonTap" destination="-1" id="BzF-rn-rn4"/>
+                                </connections>
+                            </barButtonItem>
+                        </navigationItem>
+                    </items>
+                </navigationBar>
+                <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="4gR-Bn-quP">
+                    <rect key="frame" x="0.0" y="44" width="375" height="623"/>
+                    <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                    <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="5" minimumInteritemSpacing="5" id="VDa-Pp-VBq">
+                        <size key="itemSize" width="50" height="50"/>
+                        <size key="headerReferenceSize" width="0.0" height="0.0"/>
+                        <size key="footerReferenceSize" width="0.0" height="0.0"/>
+                        <inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
+                    </collectionViewFlowLayout>
+                    <connections>
+                        <outlet property="dataSource" destination="-1" id="6fE-SF-z6F"/>
+                        <outlet property="delegate" destination="-1" id="pjZ-sM-fyY"/>
+                    </connections>
+                </collectionView>
+                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="HPm-Vc-F86">
+                    <rect key="frame" x="0.0" y="44" width="375" height="623"/>
+                    <subviews>
+                        <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="center" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="gi6-Sw-3Zf">
+                            <rect key="frame" x="137.5" y="249" width="100" height="125.5"/>
+                            <subviews>
+                                <imageView userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="YDZ-o1-AXT">
+                                    <rect key="frame" x="0.0" y="0.0" width="100" height="100"/>
+                                    <constraints>
+                                        <constraint firstAttribute="width" priority="999" constant="100" id="VUj-VB-7Kr"/>
+                                        <constraint firstAttribute="height" priority="999" constant="100" id="jBo-WN-gZr"/>
+                                    </constraints>
+                                </imageView>
+                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="7qj-q4-rHC">
+                                    <rect key="frame" x="29.5" y="105" width="41.5" height="20.5"/>
+                                    <fontDescription key="fontDescription" type="system" pointSize="17"/>
+                                    <nil key="textColor"/>
+                                    <nil key="highlightedColor"/>
+                                </label>
+                            </subviews>
+                        </stackView>
+                    </subviews>
+                    <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                    <constraints>
+                        <constraint firstItem="gi6-Sw-3Zf" firstAttribute="centerX" secondItem="HPm-Vc-F86" secondAttribute="centerX" id="FpA-96-esN"/>
+                        <constraint firstItem="gi6-Sw-3Zf" firstAttribute="centerY" secondItem="HPm-Vc-F86" secondAttribute="centerY" id="L0c-BG-65l"/>
+                    </constraints>
+                </view>
+                <activityIndicatorView hidden="YES" opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" hidesWhenStopped="YES" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="AEv-G6-dRI">
+                    <rect key="frame" x="177.5" y="323.5" width="20" height="20"/>
+                </activityIndicatorView>
+                <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Jcn-hC-Umh" customClass="TLAlbumPopView" customModule="TLPhotoPicker">
+                    <rect key="frame" x="0.0" y="44" width="375" height="623"/>
+                    <subviews>
+                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="GKD-We-AdT">
+                            <rect key="frame" x="0.0" y="0.0" width="375" height="623"/>
+                            <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.29999999999999999" colorSpace="calibratedRGB"/>
+                        </view>
+                        <view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="eL2-gJ-b87">
+                            <rect key="frame" x="1" y="17" width="373" height="130"/>
+                            <subviews>
+                                <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" style="plain" separatorStyle="default" rowHeight="75" sectionHeaderHeight="28" sectionFooterHeight="28" translatesAutoresizingMaskIntoConstraints="NO" id="grw-Nk-Sxr">
+                                    <rect key="frame" x="0.0" y="0.0" width="373" height="130"/>
+                                    <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                                </tableView>
+                            </subviews>
+                            <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
+                            <constraints>
+                                <constraint firstItem="grw-Nk-Sxr" firstAttribute="top" secondItem="eL2-gJ-b87" secondAttribute="top" id="DAx-an-6Qt"/>
+                                <constraint firstAttribute="height" constant="130" id="cet-yf-3jU"/>
+                                <constraint firstAttribute="trailing" secondItem="grw-Nk-Sxr" secondAttribute="trailing" id="nM5-IG-MPJ"/>
+                                <constraint firstItem="grw-Nk-Sxr" firstAttribute="leading" secondItem="eL2-gJ-b87" secondAttribute="leading" id="o4b-cS-L3T"/>
+                                <constraint firstAttribute="bottom" secondItem="grw-Nk-Sxr" secondAttribute="bottom" id="sPK-1G-qLo"/>
+                            </constraints>
+                        </view>
+                        <imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="5zn-je-qLx">
+                            <rect key="frame" x="180.5" y="10" width="14" height="7"/>
+                            <constraints>
+                                <constraint firstAttribute="height" constant="7" id="eZN-nB-EHu"/>
+                                <constraint firstAttribute="width" constant="14" id="hWo-ji-iBX"/>
+                            </constraints>
+                        </imageView>
+                    </subviews>
+                    <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
+                    <constraints>
+                        <constraint firstItem="GKD-We-AdT" firstAttribute="top" secondItem="Jcn-hC-Umh" secondAttribute="top" id="83h-bg-tAJ"/>
+                        <constraint firstAttribute="trailing" secondItem="eL2-gJ-b87" secondAttribute="trailing" constant="1" id="IMh-Wh-897"/>
+                        <constraint firstItem="5zn-je-qLx" firstAttribute="centerX" secondItem="Jcn-hC-Umh" secondAttribute="centerX" id="LpE-mT-MxA"/>
+                        <constraint firstItem="eL2-gJ-b87" firstAttribute="top" secondItem="Jcn-hC-Umh" secondAttribute="top" constant="17" id="XtI-9R-CFm"/>
+                        <constraint firstItem="GKD-We-AdT" firstAttribute="leading" secondItem="Jcn-hC-Umh" secondAttribute="leading" id="krq-3L-sxU"/>
+                        <constraint firstItem="eL2-gJ-b87" firstAttribute="top" secondItem="5zn-je-qLx" secondAttribute="bottom" id="tM4-Tb-JsI"/>
+                        <constraint firstItem="eL2-gJ-b87" firstAttribute="leading" secondItem="Jcn-hC-Umh" secondAttribute="leading" constant="1" id="v5O-lt-eKe"/>
+                        <constraint firstAttribute="bottom" secondItem="GKD-We-AdT" secondAttribute="bottom" id="x4Q-bm-MrY"/>
+                        <constraint firstAttribute="trailing" secondItem="GKD-We-AdT" secondAttribute="trailing" id="xdF-2b-pOS"/>
+                    </constraints>
+                    <connections>
+                        <outlet property="bgView" destination="GKD-We-AdT" id="ymr-tp-YBW"/>
+                        <outlet property="popupView" destination="eL2-gJ-b87" id="xgf-xj-Rd4"/>
+                        <outlet property="popupViewHeight" destination="cet-yf-3jU" id="OS3-MZ-s9c"/>
+                        <outlet property="tableView" destination="grw-Nk-Sxr" id="Y3k-8m-iJp"/>
+                    </connections>
+                </view>
+            </subviews>
+            <viewLayoutGuide key="safeArea" id="HLR-WT-D3I"/>
+            <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+            <constraints>
+                <constraint firstItem="HPm-Vc-F86" firstAttribute="bottom" secondItem="HLR-WT-D3I" secondAttribute="bottom" id="0AS-35-SWm"/>
+                <constraint firstItem="AEv-G6-dRI" firstAttribute="centerX" secondItem="Zyk-dI-msE" secondAttribute="centerX" id="44C-fd-MVc"/>
+                <constraint firstItem="X8O-Gg-slz" firstAttribute="leading" secondItem="Zyk-dI-msE" secondAttribute="leading" id="4Ud-fp-qD2"/>
+                <constraint firstItem="4gR-Bn-quP" firstAttribute="top" secondItem="X8O-Gg-slz" secondAttribute="bottom" id="CZx-xl-GLa"/>
+                <constraint firstItem="X8O-Gg-slz" firstAttribute="top" secondItem="HLR-WT-D3I" secondAttribute="top" id="IKp-hS-tTy"/>
+                <constraint firstItem="Jcn-hC-Umh" firstAttribute="top" secondItem="X8O-Gg-slz" secondAttribute="bottom" id="KdD-nT-6tf"/>
+                <constraint firstItem="HPm-Vc-F86" firstAttribute="leading" secondItem="HLR-WT-D3I" secondAttribute="leading" id="M3L-CU-HdQ"/>
+                <constraint firstAttribute="trailing" secondItem="4gR-Bn-quP" secondAttribute="trailing" id="M6b-2G-2m1"/>
+                <constraint firstAttribute="trailing" secondItem="Jcn-hC-Umh" secondAttribute="trailing" id="Njh-ZO-lnq"/>
+                <constraint firstAttribute="bottom" secondItem="Jcn-hC-Umh" secondAttribute="bottom" id="NxH-d8-b65"/>
+                <constraint firstItem="HPm-Vc-F86" firstAttribute="top" secondItem="X8O-Gg-slz" secondAttribute="bottom" id="YyG-QW-0ZP"/>
+                <constraint firstItem="AEv-G6-dRI" firstAttribute="centerY" secondItem="Zyk-dI-msE" secondAttribute="centerY" id="aLU-u9-ALA"/>
+                <constraint firstItem="Jcn-hC-Umh" firstAttribute="leading" secondItem="Zyk-dI-msE" secondAttribute="leading" id="aY7-Ml-cd3"/>
+                <constraint firstItem="HPm-Vc-F86" firstAttribute="trailing" secondItem="HLR-WT-D3I" secondAttribute="trailing" id="aoA-8G-xDA"/>
+                <constraint firstItem="4gR-Bn-quP" firstAttribute="leading" secondItem="Zyk-dI-msE" secondAttribute="leading" id="kb7-vy-yTu"/>
+                <constraint firstItem="4gR-Bn-quP" firstAttribute="bottom" secondItem="HLR-WT-D3I" secondAttribute="bottom" id="qqE-w2-Tsc"/>
+                <constraint firstAttribute="trailing" secondItem="X8O-Gg-slz" secondAttribute="trailing" id="yWV-L2-0f4"/>
+            </constraints>
+            <point key="canvasLocation" x="33.5" y="53.5"/>
+        </view>
+    </objects>
+    <resources>
+        <image name="arrow.png" width="18" height="18"/>
+        <image name="photo" catalog="system" width="128" height="93"/>
+        <image name="pop_arrow.png" width="41" height="20"/>
+    </resources>
+</document>
diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/arrow.png b/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/arrow.png
new file mode 100644
index 0000000000000000000000000000000000000000..94910cf0960045e5764820649279ea9a89858425
GIT binary patch
literal 1105
zcmaJ=TWkzb7(Ut(ZMJcF(6l5@W>tvp&Sft(ldg8nwrpaWX1nNvhtAHNb|>vz%$(ZU
zB1+R*BrXXNp77vF1o6ZJi6)5f;F2JM;K3V>Y8oM&sqXS%O>*Y^|H=1#|K<GWP*>-s
z+M0$M06=YWb0S6drQTY&fc&>TI=Y=~^|-wUcbk1UC))_bRWpNNQkVNt3dw4I=Y7-y
zK&4+x_uw9Bi=dc#Q1&oESGNcofR<L*l9d63VFvYUMvVG&^A-g)HAZcZNQ`8OD64HA
zwo&(RXIdE^P<WMU-2hu$fe7db%h1&a4M%We)U2*RZ10$+;4B0W#Him%^+;V%G;IVU
z!AL-1I2JbZK{gWRS+)ss3>%_ZhUWMH%L?IUfsMksk0Q}*wNFSTI_6>#FGgiCwgj5a
z<#NGXC}`UKG|Tfm&2Tiw1qdSG<P9vl0mJbZ6%xo%Y|X-&X+Td=&X_|uMv+W^m!MlE
zS;LuY6KNRj$`;KA8Ly-wP?G)+)%6nE!7217-+u}_>AZ#L6mrZVTOk+M=l4Qcf@mWd
zn|9hX2a8?o%9_}8vZe(^5w4MBMKe5q?JPl(grwnM*-%h25u=DiP}5W)%=2uNXF}^m
zVzBL@c(W*WFzZ9{Fwb#JC|cwuOl3$%1}<{dKiqIxt~U$1MItAVt?fc;hi&R`wq`*q
zp9@=7Z;q>$&xI??rAachce8)pbn%Fck7t(VmN=!!M+O;po6L1*_2-M^O-v*c@wEFg
z^Zn<~*2)O*Kl5?X=*7eFExvRG9PI;>`)VeA$K(07J%x(9E2_@S<383cJ_sg7&X)%h
z=V7Q<o@yxk7@1jKJwEdEoA~uY)pR2~I{NL*;+aKTcUP~z-PG7PcImCKCJC-q&Ko^D
z;tJQmjrf(@Pv&Q&72}sG-wkFSFS+;PYTKUrBd^eo*ZtILc!H{0HGS&o$-OHJch22^
zUq_77nPnCGhe6@XiRZo#4HMwu#;FI_)9a3b3Ln@>ZJ2yhb9l^q<jMBV#N~~>2Yvz1
C>1Ja9

literal 0
HcmV?d00001

diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/camera@3x.png b/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/camera@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..2c7ebe0c7cd6f9ccd69effbf7ce4e2e93da3b0da
GIT binary patch
literal 3079
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
P`M4><%J_+)Ys`NDI~1p?

literal 0
HcmV?d00001

diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/insertPhotoMaterial@3x.png b/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/insertPhotoMaterial@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..19a8656929646848f76a5e18066902823ea0e839
GIT binary patch
literal 1672
zcmd^==|9v70LFhaV`NMS%NRKl;}|(7SE6y7Msh834zkEK61ho^9Jw~v5>YwA$jzb#
zX@zx7V-|yC*~S$a!;-Q3JNCu%e4iK3+voG7Sy`I#aEo#S0KkJYH?}!t#1C<Cp1RI$
z&8bs>LT$_p0n(Tl0{}P;amEIA5unYd8F{6e=S+IrwZexjQU9K}k5a<(!b-I#Jsj-D
zFR46mW70`e7qJP45=l;pvt7|mK`KVM9a6n8hQ7=+uKAEVhNn;_7RCrQ=exP?p%!?b
zQj*$$jX8NDobKn~1=UYp{}nhHT?Htf@mx5iz2e)hLBLk9)MTZ~26b?DdAR%af!Yh5
z1Hn{ZTQ4YKFVK8vN6-ErQB~qw$$fOFCN$!k8@4@R1~-!b)ET5LkaYa;d{eeJu3T}q
zf-G{)gls&b_H|%zjs-4I6@Qkc*wK)t`!&@R?ou|RUe4VERmIr-AV`&xeM&l{NM^T|
zj0dq`no$}+mZH-YJ8ZU3s#OCX96%)&AqfAw_~~BFciBlliv)@lXump#ZJ}H5>IYgN
z>0Lwa<IPW!nbGD0DjCV%G+FZ8&Uevt_K}^~5I>8Bxh$_ho-;l<m%j6GblSJ?`wRcm
z%6bHw+vEVWs^GOKX{#GGBTF8U@qNkcz?-hKqieAvvEZwXaT`7`QbFcj=D7b#!I*VG
zIWUfgw>IRe_aRogF`zQjZ)yQ?MGG3;`4=*me{Yrm2~M=e&_UrU@@sM8fm+ao^Mp#9
zMB(>EN*iA$<XC@%^w9fLGyGW`MSf&$k_@_GzB-WSl`==E;}XNRdrOcSL1&^by(yV@
z4n9*kacA?n4ySfo+@gqlSBh>cA;yorJlESwc=s4<6n^=zUsUiYI`LIg9tJ6kwSlx1
z+iot>A)jjfu<QJSJSYfaOi#<!d%a2SW+5hQc}s^z@^XT#^12IZaVn#d(w7}b*8QIG
zE^FWG!h&ET1hpEcx-WK;z2T#?Y!?ISY#5gWtxA_R))XDDNREEDk}~vfdR9r@G!6NV
zU&AxaN6S!=9BM#q;dTqWFg!oI*2vrI_|lm$>Pqn)YzwNHY!pu5-#5R9lru7w6Tmc7
z{S<j8#LHnb+aEH9Qr7xVX6D9tc4yP=c?syQMjcGMqqBCPTJJaxcFx(9cZTE)C&EIO
zrGwYEYjKj=M(Jt!E-k-c3M1$)aH2v8QvX;?U<Bo5?>8<T%P2Kt4VHv9ESQnh#GD~S
zzmP~K1UXriS<oMFD_FR@zH$%E(^=4Y_F7dU!pVGZNaKNsfzM<~qs*t-&jLLYLXKXZ
zNd;3aLa_?g0z`NSe@2p;lnp8eNoqggbA^W~-IXqglC;2IQ7>+CCz;heqS{)ut@7n`
zAr~8jEau%Sq0#{XCbfGXtR<SpIJ6F3{(fm3L^eSqg*qRgc%;|GA}z@rKkF>A=)gD*
z!B}XwT(Br32aUptmdtapef9^O-)^11u1xkXpQi(b^~zI;p*_N}xey}t!*0DgD^~sR
z^FZI4HF;*M^-Wuly>3}%s=k0WxM+#XKqxk)J`<d(p${&4hIVdsFqK63posJHl5ZCj
zK#1d2h0UwUym&j{&*Dgn=H7&^iK7>awM0Q^*44@qJ4eI~TWkV_dF6CO`r^&4+;HM=
zZq<rP<Z7b=dk?_B^5TsaOg<Y;_UX@eqk*<7y2hCPYmd^oV=AD#jH=OUa5;#+wya&A
z$6BEpZ9Js09~-(;?E~B80ZIj5)%NS=75RLfWN>C?iYXrc{;$_Z`5%d##|#|Ek$1rT
z=rHYmcR&DpygSNfEh%iNZghv@3>R@1QHQBtFQp_z?}*bh2z0P|TD(*QBCkFk>iZ<d
z1Jh1-TtOu;$9q1~GLCEP%khb|GZ!LZ#CvBZm?N!Uj&dBc`)&;lqtRGAYA4A%F<s~E
cw9jVz_8Z-sdYhNBPOk;PnOGW=3<-(<0hpK!fB*mh

literal 0
HcmV?d00001

diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/pop_arrow.png b/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/pop_arrow.png
new file mode 100644
index 0000000000000000000000000000000000000000..220d39e6ace20809f783efcaeb74ee5adc00fd74
GIT binary patch
literal 1496
zcmV;}1t<E6P)<h;3K|Lk000e1NJLTq001cf000yS1^@s65QG$k00006VoOIv0RI60
z0RN!9r;`8x010qNS#tmY3ljhU3ljkVnw%H_000McNliru;RG5D3LQ$>WV`?X03B&m
zSad^gZEa<4bN~PV002XBWnpw>WFU8GbZ8()Nlj2>E@cM*00lfrL_t(Y$IX@9Z(LUu
z#ee7AbMJh{ADJ<pM6sRV8RH67A&FYk@r-LHmB<XOD$yo!Byj&okO~h-MS}8}2CGt9
z0z5<|Q8IQCkMH-Kvw4`Yn-&r%5a@b3I?~Zzd#%0pQLkM%Pqk9zU^rxde~-h%Lp)<>
zHk;&G&b@p0P+Bt@jmXlBN~OZ7)2Go|^T*FWM;XQW^FN?>wa4bxWxlt%Du4ar3-z0i
zKH|e){G23C2&0Gx4;~Q35pkR_vLlpID5Ve)taHpvPtj~PiKB?8PY)Olha^c%xm?CX
zQ3QasBaCP8v`3z03<d+rr84Dm8KpIG6q9E;);f|n!5EKXu}E#MM!UVv8|`&2Ub-Y&
zYgSfPWO{m9rAf@~Pd?!<fBG}kN(Cp5G|j*QfQTS~QsBgqBnerTqZDXQgHkvV%#+7Y
zh{6b^6r<4y>nzq<_67r@QW;|mZe+>x9OoQamh$-VKAvYdb7p~dr_E2^dynPirf97J
zP+C)~*X8{i+iGfhhA52Kf4oncrZ_iYIDrySN|R+d4<9~6E6vD`$g>=09a)xP4x<pl
z5Tz8_)2PYgEX_!h4A1irzU(~DbF}tYS~|t%))qhNUuF5b%W~qxiLVs*eV_UHd3kMZ
zO{H1NFbp{eL!KTSe3c|1GOo9m?T<%*$t93wImYum0182X?+1)VIZ+s4jKTMPoRhId
z3XCxXK|rlmr@OI1|Lq^s-Pkx*@axc8v%0z}Cue6>6h=64L{UVRWq6Y}d7fiO;~7OM
zd}9z1oO3wm05CH%vm{AExm>1LDl!}nF?mj<TA@@Z6Gb7ym|&??VsUAS3l}f4^T7u!
zH=EBT_$<*{y)HMlw^g}PA<uK}-n~l@1bAArx3`D27AJxSOixdvJ&!01$+C<>v53j?
z4CfqLYqZiJAb@XtjPbCOj!LBxt(6ttXt#NDbCcy}Q>xV}{|bEHXTH&pPN$<pgkSyg
zLk5EZ!{Na*&5Y9?6bg8rCXOOR1m74;6vc=LQ5@qY>p(;ZqX_3fYmZX7Os!t$;-yP$
zUA|1G+x@2s{zL0uc|~SVo>Xa?@cWNH=F?A~V68o#PK6>(Qas}!GOq2M!&qy_q{5IS
zNf2>3C&Y0~mgXp>ICt(G>zxkoU%N)L)%wN+pCwwa)#Tds>#AI-a4;M)7!1g=>^PXi
z;SfF9%g#BhwV0#i=J|*$ACuBrBhF!rW^r+mH@CLv_4_nit-nk0H-#Sr%+EKZ-CkGD
zIz$|w-T911j~*c+q**!%wj2c<BS$BtK-6(Zg<_FL;}q-NE?0X!Ha9o_Z3Ul~`q|l8
zbr>EZN)g5pNgQJ*i9X&>M<f*rrN&b+?m$>rSfJb8;AcBKwEhE&Uub>3CO5Zls%o{0
z%}4C+?h=L}D2~+xFca-iGA0-V0Sk+ZT)BLOUcb*ut0gC<rg$0f{a~E>^>ONrG2FRx
zhrwVlHulJFP{>5RVxho%qd~XZrPuGXxwZ9QSMWut55o|ETeofz$MKiT+<FF)@f@C7
zI?G14!%ug1Sa}H+zi{E#YO=k3Q&lQe@_fYZ?jJZJZLD(?3I!Gy7I^E*75cp%E3KAH
zy(EjDhad=OG#b+FbkxxYFt+{?X7=<MzB5;6tJC4_evi%0`u|M9=UIQUR#RD;QYZx6
zzI_|>{a0V*^$Qoc{_Z<0pI!RD5&XLK*KgcVGcz;zzK?1DaE-S*9hT27Nwrep+W_D9
ynVXxF*VopR6M<j<_IFro<=Y5rt=zwVpT7aQh%Dd6$sb<;0000<MNUMnLSTYbb+2gv

literal 0
HcmV?d00001

diff --git a/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/video.png b/Pods/TLPhotoPicker/TLPhotoPicker/TLPhotoPickerController.bundle/video.png
new file mode 100644
index 0000000000000000000000000000000000000000..68268fb150855c6c452665b7b72c4f1ea6f91570
GIT binary patch
literal 834
zcmV-I1HJr-P)<h;3K|Lk000e1NJLTq001`t001`#1^@s6sN2#;00006VoOIv00000
z008+zyMF)x010qNS#tmY3ljhU3ljkVnw%H_000McNliru;ROc?2_@0&fzJQ{03B&m
zSad^gZEa<4bN~PV002XBWnpw>WFU8GbZ8()Nlj2>E@cM*00O2-L_t(&-eX`G1*2dT
zjDk@x3P!=u1{@sh3>=&s3_LvC48A@-?7MdD?E3xt_ly5D21kz`U7L^)FUil($H2|a
z#lX$YMH|n_%E~ZIoic^>{{VoE8#gK%7#J|{@bJ*abA5fi%>M@vtX#R0Pf}8n`ku42
zv|#u@2tasvI3u<E!~|m`B_){*hP)pe8=FdXL$6%9vS2X8+{cd}XOimn0|ySI|M~Oh
z(UT`n*3O+fw;4mhix)5U{U0QNSWk6#cVjIhHf-3Ci=y!J=g*ghlINyQo5qey|EpK8
z4xxMQ!cg(t^y$+DNHXK|=g;Scg6EbmUoJ_q8J|CYJ~P-ow{g=ZO;XHYLDKtgFgFkP
z?%iwd<m7aM6g|kE`#)GccJ$~`Un?uCO=MT%gEi)k9z7aQj>iVQ=N8OgkZEOQwSeO0
z*I-PRPEL+CRB2ld#+Z|plZzU*o}*f?U|4&Ok&$uGdG7J!$9slt%<bR5{~T2e`ts$=
zj=|XcI)3a}Ik{#G>Z*W&fq}u&%Bu6k@#DF}wm`A8vYK+>z=7ytTUt6gIxgF`b*l@x
zd2Z8C=+CWQxzdzmGroNJvSFz7#OKbMrAeyi)(xdGlzFpf$>Y-h;lqbb=%ZiFLv8eH
z=EMm?*!1t%yvY+q;ngcwat4FPzJ2|=ij=aVC^d!m#F4`r|Ni~^>-p2CXI3s=I3GjN
z{5iAP27~AJZQtfZ^|s}z#Y=t-h9ZC6@@4y|?zwB1E;7uVJc)52J+^h-TEA0A4pZM?
z1wlRrBUL4a`7@>u$ZXH9Et`uy&CM9KM1^SKIerEOL4F1m5g~@Spg@KLd-jC?{rmSl
ztvz+-`0*7bX{pM(65<S+B0>zBB0>zKU=)mkQ7{Td!6+C7qhLq^0O#0}D>q`P9{>OV
M07*qoM6N<$g4GI$?EnA(

literal 0
HcmV?d00001

diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView-Info.plist b/Pods/Target Support Files/FSPagerView/FSPagerView-Info.plist
deleted file mode 100644
index 582bd8b..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView-Info.plist	
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-  <key>CFBundleDevelopmentRegion</key>
-  <string>${PODS_DEVELOPMENT_LANGUAGE}</string>
-  <key>CFBundleExecutable</key>
-  <string>${EXECUTABLE_NAME}</string>
-  <key>CFBundleIdentifier</key>
-  <string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
-  <key>CFBundleInfoDictionaryVersion</key>
-  <string>6.0</string>
-  <key>CFBundleName</key>
-  <string>${PRODUCT_NAME}</string>
-  <key>CFBundlePackageType</key>
-  <string>FMWK</string>
-  <key>CFBundleShortVersionString</key>
-  <string>0.8.3</string>
-  <key>CFBundleSignature</key>
-  <string>????</string>
-  <key>CFBundleVersion</key>
-  <string>${CURRENT_PROJECT_VERSION}</string>
-  <key>NSPrincipalClass</key>
-  <string></string>
-</dict>
-</plist>
diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView-dummy.m b/Pods/Target Support Files/FSPagerView/FSPagerView-dummy.m
deleted file mode 100644
index aea684a..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView-dummy.m	
+++ /dev/null
@@ -1,5 +0,0 @@
-#import <Foundation/Foundation.h>
-@interface PodsDummy_FSPagerView : NSObject
-@end
-@implementation PodsDummy_FSPagerView
-@end
diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView-prefix.pch b/Pods/Target Support Files/FSPagerView/FSPagerView-prefix.pch
deleted file mode 100644
index beb2a24..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView-prefix.pch	
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifdef __OBJC__
-#import <UIKit/UIKit.h>
-#else
-#ifndef FOUNDATION_EXPORT
-#if defined(__cplusplus)
-#define FOUNDATION_EXPORT extern "C"
-#else
-#define FOUNDATION_EXPORT extern
-#endif
-#endif
-#endif
-
diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView-umbrella.h b/Pods/Target Support Files/FSPagerView/FSPagerView-umbrella.h
deleted file mode 100644
index 474ff62..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView-umbrella.h	
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifdef __OBJC__
-#import <UIKit/UIKit.h>
-#else
-#ifndef FOUNDATION_EXPORT
-#if defined(__cplusplus)
-#define FOUNDATION_EXPORT extern "C"
-#else
-#define FOUNDATION_EXPORT extern
-#endif
-#endif
-#endif
-
-#import "FSPagerViewObjcCompat.h"
-
-FOUNDATION_EXPORT double FSPagerViewVersionNumber;
-FOUNDATION_EXPORT const unsigned char FSPagerViewVersionString[];
-
diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView.debug.xcconfig b/Pods/Target Support Files/FSPagerView/FSPagerView.debug.xcconfig
deleted file mode 100644
index a21eb53..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView.debug.xcconfig	
+++ /dev/null
@@ -1,15 +0,0 @@
-CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
-CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/FSPagerView
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
-OTHER_LDFLAGS = $(inherited) -framework "UIKit"
-OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
-PODS_BUILD_DIR = ${BUILD_DIR}
-PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
-PODS_DEVELOPMENT_LANGUAGE = ${DEVELOPMENT_LANGUAGE}
-PODS_ROOT = ${SRCROOT}
-PODS_TARGET_SRCROOT = ${PODS_ROOT}/FSPagerView
-PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
-PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
-SKIP_INSTALL = YES
-USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView.modulemap b/Pods/Target Support Files/FSPagerView/FSPagerView.modulemap
deleted file mode 100644
index cd9f550..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView.modulemap	
+++ /dev/null
@@ -1,6 +0,0 @@
-framework module FSPagerView {
-  umbrella header "FSPagerView-umbrella.h"
-
-  export *
-  module * { export * }
-}
diff --git a/Pods/Target Support Files/FSPagerView/FSPagerView.release.xcconfig b/Pods/Target Support Files/FSPagerView/FSPagerView.release.xcconfig
deleted file mode 100644
index a21eb53..0000000
--- a/Pods/Target Support Files/FSPagerView/FSPagerView.release.xcconfig	
+++ /dev/null
@@ -1,15 +0,0 @@
-CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
-CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/FSPagerView
-GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift
-OTHER_LDFLAGS = $(inherited) -framework "UIKit"
-OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
-PODS_BUILD_DIR = ${BUILD_DIR}
-PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
-PODS_DEVELOPMENT_LANGUAGE = ${DEVELOPMENT_LANGUAGE}
-PODS_ROOT = ${SRCROOT}
-PODS_TARGET_SRCROOT = ${PODS_ROOT}/FSPagerView
-PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates
-PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
-SKIP_INSTALL = YES
-USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.markdown b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.markdown
index 1d53842..7a6d9b5 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.markdown	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.markdown	
@@ -24,29 +24,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 THE SOFTWARE.
 
 
-## FSPagerView
-
-Copyright (c) 2017 FSPagerView (https://github.com/WenchaoD/FSPagerView)
-
-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.
-
-
 ## IQKeyboardManagerSwift
 
 MIT License
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.plist b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.plist
index 559f531..5aa48dc 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.plist	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-acknowledgements.plist	
@@ -41,35 +41,6 @@ THE SOFTWARE.
 			<key>Type</key>
 			<string>PSGroupSpecifier</string>
 		</dict>
-		<dict>
-			<key>FooterText</key>
-			<string>Copyright (c) 2017 FSPagerView (https://github.com/WenchaoD/FSPagerView)
-
-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.
-</string>
-			<key>License</key>
-			<string>MIT</string>
-			<key>Title</key>
-			<string>FSPagerView</string>
-			<key>Type</key>
-			<string>PSGroupSpecifier</string>
-		</dict>
 		<dict>
 			<key>FooterText</key>
 			<string>MIT License
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-input-files.xcfilelist b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-input-files.xcfilelist
index f3a6877..1c544db 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-input-files.xcfilelist	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-input-files.xcfilelist	
@@ -1,6 +1,5 @@
 ${PODS_ROOT}/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks.sh
 ${BUILT_PRODUCTS_DIR}/EPSignature/EPSignature.framework
-${BUILT_PRODUCTS_DIR}/FSPagerView/FSPagerView.framework
 ${BUILT_PRODUCTS_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework
 ${BUILT_PRODUCTS_DIR}/ImagePicker/ImagePicker.framework
 ${BUILT_PRODUCTS_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-output-files.xcfilelist b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-output-files.xcfilelist
index 9369e2e..13e73d2 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-output-files.xcfilelist	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Debug-output-files.xcfilelist	
@@ -1,5 +1,4 @@
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/EPSignature.framework
-${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FSPagerView.framework
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/IQKeyboardManagerSwift.framework
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ImagePicker.framework
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/LanguageManager_iOS.framework
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-input-files.xcfilelist b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-input-files.xcfilelist
index f3a6877..1c544db 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-input-files.xcfilelist	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-input-files.xcfilelist	
@@ -1,6 +1,5 @@
 ${PODS_ROOT}/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks.sh
 ${BUILT_PRODUCTS_DIR}/EPSignature/EPSignature.framework
-${BUILT_PRODUCTS_DIR}/FSPagerView/FSPagerView.framework
 ${BUILT_PRODUCTS_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework
 ${BUILT_PRODUCTS_DIR}/ImagePicker/ImagePicker.framework
 ${BUILT_PRODUCTS_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-output-files.xcfilelist b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-output-files.xcfilelist
index 9369e2e..13e73d2 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-output-files.xcfilelist	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks-Release-output-files.xcfilelist	
@@ -1,5 +1,4 @@
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/EPSignature.framework
-${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FSPagerView.framework
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/IQKeyboardManagerSwift.framework
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ImagePicker.framework
 ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/LanguageManager_iOS.framework
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks.sh b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks.sh
index 9594529..0119b97 100755
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks.sh	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner-frameworks.sh	
@@ -177,7 +177,6 @@ code_sign_if_enabled() {
 
 if [[ "$CONFIGURATION" == "Debug" ]]; then
   install_framework "${BUILT_PRODUCTS_DIR}/EPSignature/EPSignature.framework"
-  install_framework "${BUILT_PRODUCTS_DIR}/FSPagerView/FSPagerView.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/ImagePicker/ImagePicker.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework"
@@ -185,7 +184,6 @@ if [[ "$CONFIGURATION" == "Debug" ]]; then
 fi
 if [[ "$CONFIGURATION" == "Release" ]]; then
   install_framework "${BUILT_PRODUCTS_DIR}/EPSignature/EPSignature.framework"
-  install_framework "${BUILT_PRODUCTS_DIR}/FSPagerView/FSPagerView.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/ImagePicker/ImagePicker.framework"
   install_framework "${BUILT_PRODUCTS_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework"
diff --git a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.debug.xcconfig b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.debug.xcconfig
index fd38585..6ebb170 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.debug.xcconfig	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.debug.xcconfig	
@@ -1,11 +1,11 @@
 ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
-FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature" "${PODS_CONFIGURATION_BUILD_DIR}/FSPagerView" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet"
+FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature/EPSignature.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/FSPagerView/FSPagerView.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker/ImagePicker.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet/NBBottomSheet.framework/Headers"
+HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature/EPSignature.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker/ImagePicker.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet/NBBottomSheet.framework/Headers"
 LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
 LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift $(SDKROOT)/usr/lib/swift
-OTHER_LDFLAGS = $(inherited) -l"swiftCoreGraphics" -framework "AVFoundation" -framework "CoreGraphics" -framework "EPSignature" -framework "FSPagerView" -framework "Foundation" -framework "IQKeyboardManagerSwift" -framework "ImagePicker" -framework "LanguageManager_iOS" -framework "NBBottomSheet" -framework "QuartzCore" -framework "UIKit"
+OTHER_LDFLAGS = $(inherited) -l"swiftCoreGraphics" -framework "AVFoundation" -framework "CoreGraphics" -framework "EPSignature" -framework "Foundation" -framework "IQKeyboardManagerSwift" -framework "ImagePicker" -framework "LanguageManager_iOS" -framework "NBBottomSheet" -framework "QuartzCore" -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/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.release.xcconfig b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.release.xcconfig
index fd38585..6ebb170 100644
--- a/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.release.xcconfig	
+++ b/Pods/Target Support Files/Pods-MiniScanner/Pods-MiniScanner.release.xcconfig	
@@ -1,11 +1,11 @@
 ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
 CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
-FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature" "${PODS_CONFIGURATION_BUILD_DIR}/FSPagerView" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet"
+FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet"
 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
-HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature/EPSignature.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/FSPagerView/FSPagerView.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker/ImagePicker.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet/NBBottomSheet.framework/Headers"
+HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/EPSignature/EPSignature.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/IQKeyboardManagerSwift/IQKeyboardManagerSwift.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/ImagePicker/ImagePicker.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/LanguageManager-iOS/LanguageManager_iOS.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/NBBottomSheet/NBBottomSheet.framework/Headers"
 LD_RUNPATH_SEARCH_PATHS = $(inherited) /usr/lib/swift '@executable_path/Frameworks' '@loader_path/Frameworks'
 LIBRARY_SEARCH_PATHS = $(inherited) "${TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" /usr/lib/swift $(SDKROOT)/usr/lib/swift
-OTHER_LDFLAGS = $(inherited) -l"swiftCoreGraphics" -framework "AVFoundation" -framework "CoreGraphics" -framework "EPSignature" -framework "FSPagerView" -framework "Foundation" -framework "IQKeyboardManagerSwift" -framework "ImagePicker" -framework "LanguageManager_iOS" -framework "NBBottomSheet" -framework "QuartzCore" -framework "UIKit"
+OTHER_LDFLAGS = $(inherited) -l"swiftCoreGraphics" -framework "AVFoundation" -framework "CoreGraphics" -framework "EPSignature" -framework "Foundation" -framework "IQKeyboardManagerSwift" -framework "ImagePicker" -framework "LanguageManager_iOS" -framework "NBBottomSheet" -framework "QuartzCore" -framework "UIKit"
 OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS
 PODS_BUILD_DIR = ${BUILD_DIR}
 PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
-- 
GitLab