From 09b6b8e06de68f73fcb9f8fdf7542304178f3ad8 Mon Sep 17 00:00:00 2001 From: Rob Visentin Date: Wed, 22 Jul 2020 20:39:51 +0200 Subject: [PATCH] SAF-844 Removed BT targets from native iOS project (#1307) * Removed BT targets from native iOS project and cleaned up project structure * Updated README, package.json, and workflows * Update workflows to run correctly by paths, and lints them (#1309) Co-authored-by: Jacob Jaffe --- .github/workflows/deploy.yml | 42 +- .github/workflows/dev_setup.yml | 6 +- .github/workflows/test-e2e.yml | 8 +- .github/workflows/test-ios.yml | 13 +- .github/workflows/test-js.yml | 6 +- README.md | 20 +- ios/AppDelegate.m | 117 - ios/BT/API/APIClient.swift | 241 -- ios/BT/API/APIRequest.swift | 33 - .../API/Helpers/DownloadPackage+Helpers.swift | 17 - ios/BT/API/JSON.swift | 41 - ios/BT/API/Model/DownloadedPackage.swift | 56 - ios/BT/API/Model/Exposure.swift | 44 - ios/BT/API/Model/ExposureConfiguration.swift | 36 - ios/BT/API/Model/ExposureKey.swift | 11 - ios/BT/API/Model/Region.swift | 3 - ios/BT/API/Model/UserState.swift | 19 - .../API/Requests/DiagnosisKeyRequests.swift | 67 - .../Requests/DiagnosisKeyUrlRequests.swift | 51 - .../ExposureConfigurationRequests.swift | 24 - ios/BT/API/Requests/IndexFileRequests.swift | 20 - ios/BT/API/Result.swift | 82 - ios/BT/API/StructuredError.swift | 13 - ios/BT/API/TypeAliases.swift | 3 - ios/BT/BT-Bridging-Header.h | 11 - ios/BT/BT-Development.entitlements | 16 - ios/BT/BT-Production.entitlements | 10 - ios/BT/Config/Debug-BT.xcconfig | 17 - ios/BT/Config/Release-BT.xcconfig | 17 - ios/BT/Config/Staging-BT.xcconfig | 17 - ios/BT/Config/Version.xcconfig | 18 - ios/BT/Constants.swift | 5 - ios/BT/DebugAction.swift | 11 - ios/BT/ExposureManager.swift | 432 ---- .../ENTemporaryExposureKey+Extensions.swift | 26 - .../Foundation/Array+Extensions.swift | 55 - .../Foundation/Date+Extensions.swift | 10 - .../Foundation/Encodable+Extensions.swift | 7 - .../Foundation/List+Extensions.swift | 8 - .../Foundation/Notification+Extensions.swift | 20 - .../Foundation/String+Extensions.swift | 54 - .../Other/ExposureManager+Extensions.swift | 64 - .../AppIcon.appiconset/Contents.json | 62 - .../bt-ios-icon-1024@1x.png | Bin 50171 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-20@2x.png | Bin 1330 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-20@3x.png | Bin 2121 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-29@2x.png | Bin 2006 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-29@3x.png | Bin 3112 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-40@2x.png | Bin 2818 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-40@3x.png | Bin 4449 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-60@2x.png | Bin 4449 -> 0 bytes .../AppIcon.appiconset/bt-ios-icon-60@3x.png | Bin 7046 -> 0 bytes .../AppIconDev.appiconset/Contents.json | 62 - .../bt-ios-icon-1024@1x.png | Bin 50171 -> 0 bytes .../bt-ios-icon-20@2x.png | Bin 1330 -> 0 bytes .../bt-ios-icon-20@3x.png | Bin 2121 -> 0 bytes .../bt-ios-icon-29@2x.png | Bin 2006 -> 0 bytes .../bt-ios-icon-29@3x.png | Bin 3112 -> 0 bytes .../bt-ios-icon-40@2x.png | Bin 2818 -> 0 bytes .../bt-ios-icon-40@3x.png | Bin 4449 -> 0 bytes .../bt-ios-icon-60@2x.png | Bin 4449 -> 0 bytes .../bt-ios-icon-60@3x.png | Bin 7046 -> 0 bytes .../AppIconStaging.appiconset/Contents.json | 62 - .../bt-ios-icon-1024@1x.png | Bin 50171 -> 0 bytes .../bt-ios-icon-20@2x.png | Bin 1330 -> 0 bytes .../bt-ios-icon-20@3x.png | Bin 2121 -> 0 bytes .../bt-ios-icon-29@2x.png | Bin 2006 -> 0 bytes .../bt-ios-icon-29@3x.png | Bin 3112 -> 0 bytes .../bt-ios-icon-40@2x.png | Bin 2818 -> 0 bytes .../bt-ios-icon-40@3x.png | Bin 4449 -> 0 bytes .../bt-ios-icon-60@2x.png | Bin 4449 -> 0 bytes .../bt-ios-icon-60@3x.png | Bin 7046 -> 0 bytes .../BgImage.imageset/Contents.json | 23 - .../BgImage.imageset/bgImage.png | Bin 24889 -> 0 bytes .../BgImage.imageset/bgImage@2x.png | Bin 53051 -> 0 bytes .../BgImage.imageset/bgImage@3x.png | Bin 87285 -> 0 bytes .../logoImage.imageset/Contents.json | 23 - .../logoImage.imageset/bt-logo-512.png | Bin 26498 -> 0 bytes .../logoImage.imageset/bt-logo-512@2x.png | Bin 62966 -> 0 bytes .../logoImage.imageset/bt-logo-512@3x.png | Bin 103982 -> 0 bytes ios/BT/Info.plist | 104 - ios/BT/Storage/BTSecureStorage.swift | 102 - ios/BT/Storage/Persisted.swift | 29 - ios/BT/bridge/DebugMenuModule.m | 78 - ios/BT/bridge/ENPermissionsModule.m | 20 - ios/BT/bridge/ExposureEventEmitter.m | 59 - ios/BT/bridge/ExposureHistoryModule.m | 24 - ios/BT/bridge/ExposureKeyModule.m | 30 - ios/BT/main.m | 18 - ios/BTTestsInfo.plist | 24 - ios/COVIDSafePaths.xcodeproj/project.pbxproj | 1931 +++-------------- .../xcschemes/BT_Development.xcscheme | 107 - .../xcschemes/BT_Production.xcscheme | 104 - .../xcschemes/GPS_Development.xcscheme | 10 +- .../xcschemes/GPS_Production.xcscheme | 10 +- .../Application}/AppDelegate.h | 0 .../Application}/AppDelegate.m | 0 .../Application}/GPS-Production.entitlements | 0 .../Application}/Info.plist | 0 .../Application}/Log.swift | 0 .../Application}/main.m | 0 .../Bridge}/GPS-Bridging-Header.h | 0 .../Bridge}/SecureStorageManager.m | 0 .../Bridge}/SecureStorageManager.swift | 0 .../Config/Debug.xcconfig} | 2 +- .../Config/Release.xcconfig} | 2 +- .../Config/Staging.xcconfig} | 2 +- .../Config/Version.xcconfig | 4 +- .../Extension/Array+Extension.swift | 0 .../Extension/MAURLocation+Extension.swift | 0 .../Extension/String+Extension.swift | 0 .../Localization}/ar.lproj/InfoPlist.strings | 0 .../ar.lproj/Localizable.strings | 0 .../Localization}/da.lproj/InfoPlist.strings | 0 .../da.lproj/Localizable.strings | 0 .../Localization}/en.lproj/InfoPlist.strings | 0 .../en.lproj/Localizable.strings | 0 .../es-PR.lproj/InfoPlist.strings | 0 .../es-PR.lproj/Localizable.strings | 0 .../Localization}/es.lproj/InfoPlist.strings | 0 .../es.lproj/Localizable.strings | 0 .../fr-HT.lproj/Localizable.strings | 0 .../Localization}/fr.lproj/InfoPlist.strings | 0 .../fr.lproj/Localizable.strings | 0 .../Localization}/ht.lproj/InfoPlist.strings | 0 .../ht.lproj/Localizable.strings | 0 .../id.lproj/Localizable.strings | 0 .../Localization}/it.lproj/InfoPlist.strings | 0 .../it.lproj/Localizable.strings | 0 .../Localization}/ml.lproj/InfoPlist.strings | 0 .../ml.lproj/Localizable.strings | 0 .../Localization}/nl.lproj/InfoPlist.strings | 0 .../nl.lproj/Localizable.strings | 0 .../Localization}/pl.lproj/InfoPlist.strings | 0 .../pl.lproj/Localizable.strings | 0 .../pt-BR.lproj/InfoPlist.strings | 0 .../pt-BR.lproj/Localizable.strings | 0 .../ro.lproj/Localizable.strings | 0 .../Localization}/ru.lproj/InfoPlist.strings | 0 .../ru.lproj/Localizable.strings | 0 .../Localization}/sk.lproj/InfoPlist.strings | 0 .../sk.lproj/Localizable.strings | 0 .../Localization}/tl.lproj/InfoPlist.strings | 0 .../tl.lproj/Localizable.strings | 0 .../vi.lproj/Localizable.strings | 0 .../zh-Hant.lproj/Localizable.strings | 0 .../zz-ZZ.lproj/InfoPlist.strings | 0 .../zz-ZZ.lproj/Localizable.strings | 0 .../Base.lproj/LaunchScreen.xib | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-ios-1024@1x.png | Bin .../AppIcon.appiconset/icon-ios-20.png | Bin .../AppIcon.appiconset/icon-ios-20@2x-1.png | Bin .../AppIcon.appiconset/icon-ios-20@2x-2.png | Bin .../AppIcon.appiconset/icon-ios-20@2x.png | Bin .../AppIcon.appiconset/icon-ios-20@3x.png | Bin .../AppIcon.appiconset/icon-ios-29.png | Bin .../AppIcon.appiconset/icon-ios-29@2x-1.png | Bin .../AppIcon.appiconset/icon-ios-29@2x.png | Bin .../AppIcon.appiconset/icon-ios-29@3x.png | Bin .../AppIcon.appiconset/icon-ios-30.png | Bin .../AppIcon.appiconset/icon-ios-40@2x-1.png | Bin .../AppIcon.appiconset/icon-ios-40@2x.png | Bin .../AppIcon.appiconset/icon-ios-40@3x.png | Bin .../AppIcon.appiconset/icon-ios-60@2x.png | Bin .../AppIcon.appiconset/icon-ios-60@3x.png | Bin .../AppIcon.appiconset/icon-ios-76.png | Bin .../AppIcon.appiconset/icon-ios-76@2x.png | Bin .../AppIcon.appiconset/icon-ios-83.5@2x.png | Bin .../AppIconDev.appiconset/Contents.json | 0 .../AppIconStaging.appiconset/100.png | Bin .../AppIconStaging.appiconset/1024.png | Bin .../AppIconStaging.appiconset/114.png | Bin .../AppIconStaging.appiconset/120.png | Bin .../AppIconStaging.appiconset/144.png | Bin .../AppIconStaging.appiconset/152.png | Bin .../AppIconStaging.appiconset/167.png | Bin .../AppIconStaging.appiconset/180.png | Bin .../AppIconStaging.appiconset/20.png | Bin .../AppIconStaging.appiconset/29.png | Bin .../AppIconStaging.appiconset/40.png | Bin .../AppIconStaging.appiconset/50.png | Bin .../AppIconStaging.appiconset/57.png | Bin .../AppIconStaging.appiconset/58.png | Bin .../AppIconStaging.appiconset/60.png | Bin .../AppIconStaging.appiconset/72.png | Bin .../AppIconStaging.appiconset/76.png | Bin .../AppIconStaging.appiconset/80.png | Bin .../AppIconStaging.appiconset/87.png | Bin .../AppIconStaging.appiconset/Contents.json | 0 .../Resources}/Images.xcassets/Contents.json | 0 .../bgImage.imageset/Contents.json | 0 .../bgImage.imageset/loading - light.png | Bin .../bgImage.imageset/loading - light@2x.png | Bin .../bgImage.imageset/loading - light@3x.png | Bin .../logoImage.imageset/COVIDSafePathsLogo.png | Bin .../COVIDSafePathsLogo@2x.png | Bin .../COVIDSafePathsLogo@3x.png | Bin .../logoImage.imageset/Contents.json | 0 .../storage/GPSSecureStorage.swift | 0 .../storage/Location.swift | 0 .../storage}/SafePathsSecureStorage.swift | 0 ios/GPS/Images.xcassets/Contents.json | 6 - ios/GPS/storage/Geohash.swift | 120 - ios/Podfile | 36 +- ios/Podfile.lock | 10 +- package.json | 42 +- 207 files changed, 345 insertions(+), 4532 deletions(-) delete mode 100644 ios/AppDelegate.m delete mode 100644 ios/BT/API/APIClient.swift delete mode 100644 ios/BT/API/APIRequest.swift delete mode 100644 ios/BT/API/Helpers/DownloadPackage+Helpers.swift delete mode 100644 ios/BT/API/JSON.swift delete mode 100644 ios/BT/API/Model/DownloadedPackage.swift delete mode 100644 ios/BT/API/Model/Exposure.swift delete mode 100644 ios/BT/API/Model/ExposureConfiguration.swift delete mode 100644 ios/BT/API/Model/ExposureKey.swift delete mode 100644 ios/BT/API/Model/Region.swift delete mode 100644 ios/BT/API/Model/UserState.swift delete mode 100644 ios/BT/API/Requests/DiagnosisKeyRequests.swift delete mode 100644 ios/BT/API/Requests/DiagnosisKeyUrlRequests.swift delete mode 100644 ios/BT/API/Requests/ExposureConfigurationRequests.swift delete mode 100644 ios/BT/API/Requests/IndexFileRequests.swift delete mode 100644 ios/BT/API/Result.swift delete mode 100644 ios/BT/API/StructuredError.swift delete mode 100644 ios/BT/API/TypeAliases.swift delete mode 100644 ios/BT/BT-Bridging-Header.h delete mode 100644 ios/BT/BT-Development.entitlements delete mode 100644 ios/BT/BT-Production.entitlements delete mode 100644 ios/BT/Config/Debug-BT.xcconfig delete mode 100644 ios/BT/Config/Release-BT.xcconfig delete mode 100644 ios/BT/Config/Staging-BT.xcconfig delete mode 100644 ios/BT/Config/Version.xcconfig delete mode 100644 ios/BT/Constants.swift delete mode 100644 ios/BT/DebugAction.swift delete mode 100644 ios/BT/ExposureManager.swift delete mode 100644 ios/BT/Extensions/Exposure Notifications/ENTemporaryExposureKey+Extensions.swift delete mode 100644 ios/BT/Extensions/Foundation/Array+Extensions.swift delete mode 100644 ios/BT/Extensions/Foundation/Date+Extensions.swift delete mode 100644 ios/BT/Extensions/Foundation/Encodable+Extensions.swift delete mode 100644 ios/BT/Extensions/Foundation/List+Extensions.swift delete mode 100644 ios/BT/Extensions/Foundation/Notification+Extensions.swift delete mode 100644 ios/BT/Extensions/Foundation/String+Extensions.swift delete mode 100644 ios/BT/Extensions/Other/ExposureManager+Extensions.swift delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-1024@1x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-20@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-20@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-29@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-29@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-40@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-40@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-60@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-60@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/Contents.json delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-1024@1x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-20@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-20@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-29@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-29@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-40@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-40@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-60@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-60@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/Contents.json delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-1024@1x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-20@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-20@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-29@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-29@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-40@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-40@3x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-60@2x.png delete mode 100644 ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-60@3x.png delete mode 100644 ios/BT/Images.xcassets/BgImage.imageset/Contents.json delete mode 100644 ios/BT/Images.xcassets/BgImage.imageset/bgImage.png delete mode 100644 ios/BT/Images.xcassets/BgImage.imageset/bgImage@2x.png delete mode 100644 ios/BT/Images.xcassets/BgImage.imageset/bgImage@3x.png delete mode 100644 ios/BT/Images.xcassets/logoImage.imageset/Contents.json delete mode 100644 ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512.png delete mode 100644 ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512@2x.png delete mode 100644 ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512@3x.png delete mode 100644 ios/BT/Info.plist delete mode 100644 ios/BT/Storage/BTSecureStorage.swift delete mode 100644 ios/BT/Storage/Persisted.swift delete mode 100644 ios/BT/bridge/DebugMenuModule.m delete mode 100644 ios/BT/bridge/ENPermissionsModule.m delete mode 100644 ios/BT/bridge/ExposureEventEmitter.m delete mode 100644 ios/BT/bridge/ExposureHistoryModule.m delete mode 100644 ios/BT/bridge/ExposureKeyModule.m delete mode 100644 ios/BT/main.m delete mode 100644 ios/BTTestsInfo.plist delete mode 100644 ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Development.xcscheme delete mode 100644 ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Production.xcscheme rename ios/{ => COVIDSafePaths/Application}/AppDelegate.h (100%) rename ios/{GPS => COVIDSafePaths/Application}/AppDelegate.m (100%) rename ios/{GPS => COVIDSafePaths/Application}/GPS-Production.entitlements (100%) rename ios/{GPS => COVIDSafePaths/Application}/Info.plist (100%) rename ios/{GPS => COVIDSafePaths/Application}/Log.swift (100%) rename ios/{GPS/bridge => COVIDSafePaths/Application}/main.m (100%) rename ios/{GPS => COVIDSafePaths/Bridge}/GPS-Bridging-Header.h (100%) rename ios/{GPS/bridge => COVIDSafePaths/Bridge}/SecureStorageManager.m (100%) rename ios/{GPS/bridge => COVIDSafePaths/Bridge}/SecureStorageManager.swift (100%) rename ios/{GPS/Config/Debug-GPS.xcconfig => COVIDSafePaths/Config/Debug.xcconfig} (94%) rename ios/{GPS/Config/Release-GPS.xcconfig => COVIDSafePaths/Config/Release.xcconfig} (94%) rename ios/{GPS/Config/Staging-GPS.xcconfig => COVIDSafePaths/Config/Staging.xcconfig} (94%) rename ios/{GPS => COVIDSafePaths}/Config/Version.xcconfig (78%) rename ios/{GPS => COVIDSafePaths}/Extension/Array+Extension.swift (100%) rename ios/{GPS => COVIDSafePaths}/Extension/MAURLocation+Extension.swift (100%) rename ios/{GPS => COVIDSafePaths}/Extension/String+Extension.swift (100%) rename ios/{ => COVIDSafePaths/Localization}/ar.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ar.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/da.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/da.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/en.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/en.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/es-PR.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/es-PR.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/es.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/es.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/fr-HT.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/fr.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/fr.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ht.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ht.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/id.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/it.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/it.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ml.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ml.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/nl.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/nl.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/pl.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/pl.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/pt-BR.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/pt-BR.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ro.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ru.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/ru.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/sk.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/sk.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/tl.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/tl.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/vi.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/zh-Hant.lproj/Localizable.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/zz-ZZ.lproj/InfoPlist.strings (100%) rename ios/{ => COVIDSafePaths/Localization}/zz-ZZ.lproj/Localizable.strings (100%) rename ios/COVIDSafePaths/{ => Resources}/Base.lproj/LaunchScreen.xib (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/Contents.json (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-1024@1x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-20.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-1.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-2.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-20@3x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-29.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x-1.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-29@3x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-30.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x-1.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-40@3x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-60@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-60@3x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-76.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-76@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIcon.appiconset/icon-ios-83.5@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconDev.appiconset/Contents.json (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/100.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/1024.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/114.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/120.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/144.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/152.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/167.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/180.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/20.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/29.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/40.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/50.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/57.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/58.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/60.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/72.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/76.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/80.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/87.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/AppIconStaging.appiconset/Contents.json (100%) rename ios/{BT => COVIDSafePaths/Resources}/Images.xcassets/Contents.json (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/bgImage.imageset/Contents.json (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/bgImage.imageset/loading - light.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/bgImage.imageset/loading - light@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/bgImage.imageset/loading - light@3x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@2x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@3x.png (100%) rename ios/{GPS => COVIDSafePaths/Resources}/Images.xcassets/logoImage.imageset/Contents.json (100%) rename ios/{GPS => COVIDSafePaths}/storage/GPSSecureStorage.swift (100%) rename ios/{GPS => COVIDSafePaths}/storage/Location.swift (100%) rename ios/{Common => COVIDSafePaths/storage}/SafePathsSecureStorage.swift (100%) delete mode 100644 ios/GPS/Images.xcassets/Contents.json delete mode 100644 ios/GPS/storage/Geohash.swift diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index ab384e3392..c068b95892 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -4,13 +4,13 @@ on: push: branches: - gps-release - paths-ignore: - - 'package.json' - - 'CHANGELOG.md' + paths-ignore: + - "package.json" + - "CHANGELOG.md" jobs: version_bump: - name: 'Bump version' + name: "Bump version" runs-on: ubuntu-latest steps: @@ -22,10 +22,10 @@ jobs: uses: TriPSs/conventional-changelog-action@v2 with: github-token: ${{ secrets.GITHUB_TOKEN }} - git-message: 'chore(release): {version}' - preset: 'angular' - tag-prefix: '' - output-file: 'CHANGELOG.md' + git-message: "chore(release): {version}" + preset: "angular" + tag-prefix: "" + output-file: "CHANGELOG.md" deploy_android_gps: # gps-release branch only @@ -118,21 +118,21 @@ jobs: KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }} GITHUB_RUN_NUMBER: ${{ github.run_number }} with: - lane: 'release_gps' - subdirectory: 'android' - bundle-install-path: 'vendor/bundle' + lane: "release_gps" + subdirectory: "android" + bundle-install-path: "vendor/bundle" - name: Upload to Google Play beta track uses: maierj/fastlane-action@v1.4.0 with: - lane: 'play_store_gps' - subdirectory: 'android' - bundle-install-path: 'vendor/bundle' + lane: "play_store_gps" + subdirectory: "android" + bundle-install-path: "vendor/bundle" deploy_ios_gps: # gps-release branch only if: github.event_name == 'push' && github.ref == 'refs/heads/gps-release' - runs-on: macOS-latest + runs-on: macos-latest needs: version_bump steps: - uses: actions/checkout@master @@ -197,9 +197,9 @@ jobs: MATCH_GIT_BASIC_AUTH: ${{ secrets.MATCH_GIT_BASIC_AUTH }} SSH_AUTH_SOCK: /tmp/ssh_agent.sock with: - lane: 'release' - subdirectory: 'ios' - bundle-install-path: 'vendor/bundle' + lane: "release" + subdirectory: "ios" + bundle-install-path: "vendor/bundle" - name: Deploy to testflight uses: maierj/fastlane-action@v1.4.0 @@ -212,6 +212,6 @@ jobs: MATCH_GIT_BASIC_AUTH: ${{ secrets.MATCH_GIT_BASIC_AUTH }} SSH_AUTH_SOCK: /tmp/ssh_agent.sock with: - lane: 'deploy' - subdirectory: 'ios' - bundle-install-path: 'vendor/bundle' \ No newline at end of file + lane: "deploy" + subdirectory: "ios" + bundle-install-path: "vendor/bundle" diff --git a/.github/workflows/dev_setup.yml b/.github/workflows/dev_setup.yml index a6dc2df2ae..d32c10ec68 100644 --- a/.github/workflows/dev_setup.yml +++ b/.github/workflows/dev_setup.yml @@ -4,11 +4,11 @@ on: push: branches: [develop] paths: - - 'dev_setup.sh' + - "dev_setup.sh" pull_request: branches: [develop] paths: - - 'dev_setup.sh' + - "dev_setup.sh" jobs: test-ubuntu: @@ -32,7 +32,7 @@ jobs: run: npx react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/ --verbose test-mac: - runs-on: macOS-latest + runs-on: macos-latest steps: - uses: actions/checkout@v2 diff --git a/.github/workflows/test-e2e.yml b/.github/workflows/test-e2e.yml index ea91c4c955..6c65e1b847 100644 --- a/.github/workflows/test-e2e.yml +++ b/.github/workflows/test-e2e.yml @@ -7,7 +7,7 @@ on: jobs: e2e-ios-build: - runs-on: macOS-latest + runs-on: macos-latest # while this job doesn't depend on the previous job explicitly # this will force them not to run in parallel. If they're run in parallel, # the node_modules caches will conflict @@ -66,10 +66,10 @@ jobs: - uses: actions/upload-artifact@v1 with: name: e2e-ios-bin - path: ios/build/Build/Products/Release-GPS-iphonesimulator/GPS.app + path: ios/build/Build/Products/Release-iphonesimulator/GPS.app e2e-iphone-se: - runs-on: macOS-latest + runs-on: macos-latest needs: e2e-ios-build timeout-minutes: 15 env: @@ -104,7 +104,7 @@ jobs: - uses: actions/download-artifact@master with: name: e2e-ios-bin - path: ios/build/Build/Products/Release-GPS-iphonesimulator/GPS.app + path: ios/build/Build/Products/Release-iphonesimulator/GPS.app - run: yarn test:e2e:iphone-se diff --git a/.github/workflows/test-ios.yml b/.github/workflows/test-ios.yml index 8fa05df1ac..764c80fd83 100644 --- a/.github/workflows/test-ios.yml +++ b/.github/workflows/test-ios.yml @@ -4,18 +4,15 @@ on: push: branches: - develop - paths: - - ios/** pull_request: branches: - develop paths: - - ios/** + - "ios/**" jobs: - unit-test-ios-gps: - runs-on: macOS-latest - needs: unit-test + unit-test-ios: + runs-on: macos-latest timeout-minutes: 25 steps: - uses: actions/checkout@master @@ -53,8 +50,8 @@ jobs: - run: pod install --repo-update working-directory: ./ios - - run: | + - run: | xcodebuild test -workspace COVIDSafePaths.xcworkspace \ -scheme GPS_Development \ -destination 'platform=iOS Simulator,name=iPhone 8' \ - working-directory: ./ios \ No newline at end of file + working-directory: ./ios diff --git a/.github/workflows/test-js.yml b/.github/workflows/test-js.yml index 2ace0dc823..98c2c928b8 100644 --- a/.github/workflows/test-js.yml +++ b/.github/workflows/test-js.yml @@ -4,16 +4,14 @@ on: push: branches: - develop - paths: - - app/** pull_request: branches: - develop paths: - - app/** + - 'app/**' jobs: - unit-test: + unit-test-js: runs-on: ubuntu-latest steps: diff --git a/README.md b/README.md index ae9f807de2..81e60651bb 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ src="./assets/Safe_Paths_Logo.png" /> - + **https://pathcheck.org/** @@ -19,9 +19,9 @@ Help us stop COVID-19. -COVID Safe Paths is a mobile app for digital contract tracing (DCT) sponsored by Path Check a nonprofit and developed by a growing global community of engineers, designers, and contributors. Safe Paths is based on research originally conducted at the MIT Media Lab. +COVID Safe Paths is a mobile app for digital contract tracing (DCT) sponsored by Path Check a nonprofit and developed by a growing global community of engineers, designers, and contributors. Safe Paths is based on research originally conducted at the MIT Media Lab. -## Privacy Preserving +## Privacy Preserving What’s truly special about Safe Paths is our strong commitment to preserving the privacy of individual users. We're building an application that can help contain outbreaks of COVID-19 without forcing users to sacrifice their personal privacy. For example, if a user chooses to use Safe Paths to maintain a record of their locations use a time stamped GPS log, which stores 14 days of data in 5 minute increments. The location log is stored on the user's phone. The logged data only leaves the device if the user chooses to send the information to an authorized public health authority (PHA) as part of the contact tracing process. @@ -29,14 +29,14 @@ What’s truly special about Safe Paths is our strong commitment to preserving t Safe Paths is designed to support a range of DCT and public health use cases. Currently the main build uses GPS for location tracking. Our roadmap includes adding support for other location and proximity technologies, symptom tracking, and communication with PHAs. -## Multiple Implementation Strategies +## Multiple Implementation Strategies The Safe Paths app is being developed to support a variety of build 'flavors' of the application around core health and tracing functionality. Reach out to our team to discuss creating a flavor for your use-case. ### Path Check Release of COVID Safe Paths -Safe Paths is available as an app published by Path Check in the [Apple App Store](https://apps.apple.com/us/app/covid-safe-paths/id1508266966) and the [Google Play App Store](https://play.google.com/store/apps/details?id=org.pathcheck.covidsafepaths). Any authorized pubic health authority can use Safe Paths. +Safe Paths is available as an app published by Path Check in the [Apple App Store](https://apps.apple.com/us/app/covid-safe-paths/id1508266966) and the [Google Play App Store](https://play.google.com/store/apps/details?id=org.pathcheck.covidsafepaths). Any authorized pubic health authority can use Safe Paths. -### Custom Builds +### Custom Builds We welcome public health authorities and other organizations implementing digital contact tracing strategies to create custom builds for their specific needs, incorporate Safe Paths features into their applications, or create downstream projects that stay linked to the Safe Paths project. If intending to fork the repository and develop off of it, be aware that this comes "at your own risk" for continued maintenance. @@ -44,7 +44,7 @@ We welcome public health authorities and other organizations implementing digita Safe Paths is designed to work with Safe Places, a tool for contact tracing teams to work with location data in the course of contact tracing interviews and to publish points of concern. Without having to sharing their own location history, a Safe Paths user can download the points of concern from their PHA to identify if they have had risk of an exposure. -## Broad Non-Developer Community +## Broad Non-Developer Community One of the important aspects of the Safe Paths open source project is that it's supported by a large community of volunteers in addition to the open source developer community. Spanning as diverse domains as product management, user research, cryptography, security, compliance, design, and videography more than 1,400 Path Check volunteers are working together to support Safe Paths and help drive adoption around the world. @@ -54,7 +54,7 @@ One of the important aspects of the Safe Paths open source project is that it's [Apps Gone Rogue: Maintaining Personal Privacy in an Epidemic](https://drive.google.com/file/d/1nwOR4drE3YdkCkyy_HBd6giQPPhLEkRc/view?usp=sharing) - The original white paper. -[COVID Safe Paths Slack](covidsafepaths.slack.com) - Where the community lives. +[COVID Safe Paths Slack](covidsafepaths.slack.com) - Where the community lives. [Path-Check/gaen-mobile](https://github.com/Path-Check/gaen-mobile) - PathCheck's GAEN based contract tracing solution. @@ -117,7 +117,7 @@ Populate the following 2 `.env` files with the relevant urls for your GAEN serve #### Android (Windows, Linux, macOS) ``` -yarn run-android-gps ## for the location enabled app +yarn run-android ## for the location enabled app ``` Device storage can be cleared by long-pressing on the app icon in the simulator, clicking "App info", then "Storage", and lastly, "Clear Storage". @@ -133,7 +133,7 @@ yarn install:pod ## only needs to be ran once Then, run the application: ``` -yarn run-ios-gps ## for the location enabled app +yarn run-ios ## for the location enabled app ``` Device storage can be cleared by clicking "Hardware" on the system toolbar, and then "Erase all content and settings". diff --git a/ios/AppDelegate.m b/ios/AppDelegate.m deleted file mode 100644 index 094b44f829..0000000000 --- a/ios/AppDelegate.m +++ /dev/null @@ -1,117 +0,0 @@ -// -// AppDelegate.m -// BT -// -// Created by John Schoeman on 5/28/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -#import -#import "AppDelegate.h" - -#import -#import -#import -#import -#import -#import -#import - -@implementation AppDelegate -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions -{ - RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions]; - RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge - moduleName:@"COVIDSafePaths" - initialProperties:nil]; - - rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1]; - - self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; - - UIViewController *rootViewController = [UIViewController new]; - rootViewController.view = rootView; - - self.window.rootViewController = rootViewController; - [self.window makeKeyAndVisible]; - - UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; - center.delegate = self; - - // Register background task - [[ExposureManager shared] registerBackgroundTask]; - - // Schedule background task - [[ExposureManager shared] scheduleBackgroundTaskIfNeeded]; - - [RNSplashScreen showSplash:@"LaunchScreen" inRootView:rootView]; - return YES; -} - -- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge -{ -#if DEBUG - return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; -#else - return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; -#endif -} - -// Required to register for notifications -- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings -{ - [RNCPushNotificationIOS didRegisterUserNotificationSettings:notificationSettings]; -} -// Required for the register event. -- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken -{ - [RNCPushNotificationIOS didRegisterForRemoteNotificationsWithDeviceToken:deviceToken]; -} -// Required for the notification event. You must call the completion handler after handling the remote notification. -- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo -fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler -{ - [RNCPushNotificationIOS didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler]; -} - -// Required for the registrationError event. -- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error -{ - [RNCPushNotificationIOS didFailToRegisterForRemoteNotificationsWithError:error]; -} -// Required for the localNotification event. -- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification -{ - [RNCPushNotificationIOS didReceiveLocalNotification:notification]; -} - --(BOOL) isFirstTimeClosing { - //Show local notifiation at first time only. - if(![[NSUserDefaults standardUserDefaults] boolForKey:@"cxfed_NotificationAtFirstTimeOnly"]) { - [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"cxfed_NotificationAtFirstTimeOnly"]; - [[NSUserDefaults standardUserDefaults] synchronize]; - return TRUE; - } - return FALSE; -} - -- (BOOL)hasNotificationPermissions { - //Checking local notification permission or not. - UIUserNotificationSettings *grantedSettings = [[UIApplication sharedApplication] currentUserNotificationSettings]; - if (grantedSettings.types != UIUserNotificationTypeNone){ - return TRUE; - } - return FALSE; -} - -- (void)applicationWillTerminate:(UIApplication *)application { - if([self isFirstTimeClosing] && [self hasNotificationPermissions]) { - } -} - --(void)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler -{ - completionHandler(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge); -} - -@end diff --git a/ios/BT/API/APIClient.swift b/ios/BT/API/APIClient.swift deleted file mode 100644 index f612a50589..0000000000 --- a/ios/BT/API/APIClient.swift +++ /dev/null @@ -1,241 +0,0 @@ -import Alamofire - -enum RequestType { - case postKeys, - downloadKeys -} - -final class APIClient { - - let postKeysUrl: URL - let downloadBaseUrl: URL - static let shared = APIClient( - postKeysUrl: URL(string: ReactNativeConfig.env(for: .postKeysUrl))!, - downloadBaseUrl: URL(string: ReactNativeConfig.env(for: .downloadBaseUrl))! - ) - - private let sessionManager: SessionManager - - init(postKeysUrl: URL, downloadBaseUrl: URL) { - self.postKeysUrl = postKeysUrl - self.downloadBaseUrl = downloadBaseUrl - - let configuration = URLSessionConfiguration.default - - let headers = SessionManager.defaultHTTPHeaders - - configuration.httpAdditionalHeaders = headers - configuration.requestCachePolicy = .reloadIgnoringLocalAndRemoteCacheData - - sessionManager = SessionManager(configuration: configuration) - } - - func request(_ request: T, requestType: RequestType, completion: @escaping GenericCompletion) where T.ResponseType == Void { - dataRequest(for: request, requestType: requestType) - .validate(validate) - .response { response in - if let error = response.error { - completion(.failure(error)) - } - else { - completion(GenericSuccess) - } - } - } - - func downloadRequest(_ request: T, requestType: RequestType, completion: @escaping (Result) -> Void) { - downloadRequest(for: request).responseData { response in - guard let data = response.result.value else { - completion(.failure(GenericError.unknown)) - return - } - if let downloadedPackage = DownloadedPackage(compressedData: data) { - completion(.success(downloadedPackage)) - } else { - completion(.failure(GenericError.unknown)) - } - } - } - - func request(_ request: T, requestType: RequestType, completion: @escaping (Result) -> Void) where T.ResponseType == JSONObject { - dataRequest(for: request, requestType: requestType) - .validate(validate) - .responseJSON { response in - switch response.result { - case .success(let value): - completion(.success(value as? JSONObject ?? JSONObject())) - case .failure(let error): - completion(.failure(error)) - } - } - } - - func request(_ request: T, requestType: RequestType, completion: @escaping (Result) -> Void) where T.ResponseType: Decodable { - requestDecodable(request, requestType: requestType, completion: completion) - } - - func requestList(_ request: T, requestType: RequestType, completion: @escaping (Result<[T.ResponseType.Element]>) -> Void) where T.ResponseType: Collection, T.ResponseType.Element: Decodable { - requestDecodables(request, requestType: requestType, completion: completion) - } - - func requestString(_ request: T, requestType: RequestType, completion: @escaping (Result) -> Void) where T.ResponseType == String { - dataRequest(for: request, requestType: requestType) - .validate(validate) - .responseData { response in - switch response.result { - case .success(let data): - completion(.success(String(decoding: data, as: UTF8.self))) - case .failure(let error): - completion(.failure(error)) - } - } - } - - func cancelAllRequests() { - sessionManager.session.getAllTasks { tasks in - tasks.forEach { $0.cancel() } - } - } - - static var documentsDirectory: URL? { - let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) - - return paths.first - } - -} - -// MARK: - Private - -private extension APIClient { - - enum Key { - static let error = "error" - static let errorMessage = "error_description" - } - - func downloadRequest(for request: T) -> DataRequest { - let r = sessionManager.request(downloadBaseUrl.appendingPathComponent(request.path)) - debugPrint(r) - return r - } - - func dataRequest(for request: T, requestType: RequestType) -> DataRequest { - var baseUrl: URL! - switch requestType { - case .postKeys: - baseUrl = postKeysUrl - case .downloadKeys: - baseUrl = downloadBaseUrl - } - let r = sessionManager.request( - baseUrl.appendingPathComponent(request.path, isDirectory: false), - method: request.method, - parameters: request.parameters, - encoding: request.encoding - ) - debugPrint(r) - return r - } - - func validate(request: URLRequest?, response: HTTPURLResponse, data: Data?) -> Request.ValidationResult { - if (200...399).contains(response.statusCode) { - return .success - } - - // Attempt to deserialize structured error, if it exists - if let data = data, let json = (try? JSONSerialization.jsonObject(with: data, options: [])) as? JSONObject, let errorJson = json[Key.error] as? JSONObject { - do { - return .failure(try StructuredError(json: errorJson)) - } catch { - return .failure(error) - } - } - - // Fallback on a simple status code error - return .failure(GenericError(statusCode: response.statusCode)) - } - - func requestDecodable(_ request: T, requestType: RequestType, completion: @escaping (Result) -> Void) where T.ResponseType: Decodable { - dataRequest(for: request, requestType: requestType) - .validate(validate) - .responseData { response in - switch response.result { - case .success(let data): - do { - let decoder = JSONDecoder() - decoder.dateDecodingStrategy = .formatted(DateFormatter.iso8601Full) - completion(.success(try decoder.decode(T.ResponseType.self, from: data))) - } catch { - completion(.failure(error)) - } - case .failure(let error): - completion(.failure(error)) - } - } - } - - func requestDecodables(_ request: T, requestType: RequestType, completion: @escaping (Result<[T.ResponseType.Element]>) -> Void) where T.ResponseType: Collection, T.ResponseType.Element: Decodable { - requestDecodable(CollectionAPIRequest(request: request), requestType: requestType) { result in - switch result { - case .success(let value): - completion(.success(value.results)) - case .failure(let error): - completion(.failure(error)) - } - } - } - -} - -private struct CollectionAPIRequest: APIRequest where T.ResponseType: Collection, T.ResponseType.Element: Decodable { - - typealias ResponseType = ResultsContainer - - let request: T - - var method: HTTPMethod { - return request.method - } - - var path: String { - return request.path - } - - var parameters: Parameters? { - return request.parameters - } - -} - -private struct ResultsContainer: Decodable { - var results: [T] -} - -private extension GenericError { - - init(statusCode: Int) { - switch statusCode { - case 400: - self = .badRequest - case 401: - self = .unauthorized - case 404: - self = .notFound - default: - self = .unknown - } - } - -} - -private extension DateFormatter { - static let iso8601Full: DateFormatter = { - let formatter = DateFormatter() - formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ" - formatter.calendar = Calendar(identifier: .iso8601) - formatter.timeZone = TimeZone(secondsFromGMT: 0) - formatter.locale = Locale(identifier: "en_US_POSIX") - return formatter - }() -} diff --git a/ios/BT/API/APIRequest.swift b/ios/BT/API/APIRequest.swift deleted file mode 100644 index d2ebda9ec9..0000000000 --- a/ios/BT/API/APIRequest.swift +++ /dev/null @@ -1,33 +0,0 @@ -import Alamofire - -protocol APIRequest { - - associatedtype ResponseType - - var method: HTTPMethod { get } - var path: String { get } - var parameters: Parameters? { get } - var encoding: ParameterEncoding { get } - -} - -extension APIRequest { - - var method: HTTPMethod { - return .get - } - - var parameters: Parameters? { - return nil - } - - var encoding: ParameterEncoding { - switch method { - case .get, .connect, .options, .head, .trace: - return URLEncoding.default - case .post, .patch, .put, .delete: - return JSONEncoding.default - } - } - -} diff --git a/ios/BT/API/Helpers/DownloadPackage+Helpers.swift b/ios/BT/API/Helpers/DownloadPackage+Helpers.swift deleted file mode 100644 index d099bf7750..0000000000 --- a/ios/BT/API/Helpers/DownloadPackage+Helpers.swift +++ /dev/null @@ -1,17 +0,0 @@ -import Foundation - -extension DownloadedPackage { - - func writeSignatureEntry(toDirectory directory: URL, filename: String) throws -> URL { - let url = directory.appendingPathComponent(filename).appendingPathExtension("sig") - try signature.write(to: url) - return url - } - - func writeKeysEntry(toDirectory directory: URL, filename: String) throws -> URL { - let url = directory.appendingPathComponent(filename).appendingPathExtension("bin") - try bin.write(to: url) - return url - } - -} diff --git a/ios/BT/API/JSON.swift b/ios/BT/API/JSON.swift deleted file mode 100644 index a806f12540..0000000000 --- a/ios/BT/API/JSON.swift +++ /dev/null @@ -1,41 +0,0 @@ -import Foundation - -typealias JSONObject = [String: Any] -typealias JSONObjectArray = [JSONObject] - -protocol JSONSerializable { - - func toJson() throws -> JSONObject - -} - -protocol JSONDeserializable { - - init(json: JSONObject) throws - -} - -extension Encodable { - - func toJson() throws -> Any { - let encoder = JSONEncoder() - encoder.dateEncodingStrategy = .iso8601 - encoder.dataEncodingStrategy = .base64 - - return try JSONSerialization.jsonObject(with: encoder.encode(self), options: []) - } - -} - -extension Decodable { - - init(json: JSONObject) throws { - let data = try JSONSerialization.data(withJSONObject: json, options: []) - - let decoder = JSONDecoder() - decoder.dateDecodingStrategy = .iso8601 - - self = try decoder.decode(Self.self, from: data) - } - -} diff --git a/ios/BT/API/Model/DownloadedPackage.swift b/ios/BT/API/Model/DownloadedPackage.swift deleted file mode 100644 index b24086690e..0000000000 --- a/ios/BT/API/Model/DownloadedPackage.swift +++ /dev/null @@ -1,56 +0,0 @@ -import Foundation -import ZIPFoundation -import CryptoKit - -struct DownloadedPackage { - - init(keysBin: Data, signature: Data) { - bin = keysBin - self.signature = signature - } - - init?(compressedData: Data) { - guard let archive = Archive(data: compressedData, accessMode: .read) else { - return nil - } - do { - self = try archive.extractKeyPackage() - } catch { - return nil - } - } - - let bin: Data - let signature: Data - -} - -private extension Archive { - typealias KeyPackage = (bin: Data, sig: Data) - enum KeyPackageError: Error { - case binNotFound - case sigNotFound - case signatureCheckFailed - } - - func extractData(from entry: Entry) throws -> Data { - var data = Data() - try _ = extract(entry) { slice in - data.append(slice) - } - return data - } - - func extractKeyPackage() throws -> DownloadedPackage { - guard let binEntry = self["export.bin"] else { - throw KeyPackageError.binNotFound - } - guard let sigEntry = self["export.sig"] else { - throw KeyPackageError.sigNotFound - } - return DownloadedPackage( - keysBin: try extractData(from: binEntry), - signature: try extractData(from: sigEntry) - ) - } -} diff --git a/ios/BT/API/Model/Exposure.swift b/ios/BT/API/Model/Exposure.swift deleted file mode 100644 index f79346637d..0000000000 --- a/ios/BT/API/Model/Exposure.swift +++ /dev/null @@ -1,44 +0,0 @@ -import ExposureNotification -import Foundation -import RealmSwift - -@objcMembers -class Exposure: Object, Codable { - @objc dynamic var id: String = .default - @objc dynamic var date: Int = 0 - @objc dynamic var duration: Double = 0.0 - @objc dynamic var totalRiskScore: Int = 0 - @objc dynamic var transmissionRiskLevel: Int = 0 - - init(id: String, - date: Int, - duration: TimeInterval, - totalRiskScore: ENRiskScore, - transmissionRiskLevel: ENRiskScore) { - self.id = id - self.date = date - self.duration = duration - self.totalRiskScore = Int(totalRiskScore) - self.transmissionRiskLevel = Int(transmissionRiskLevel) - super.init() - } - - required init() { - super.init() - } - - override class func primaryKey() -> String? { - "id" - } - - var asDictionary : [String: Any] { - return [ - "id": id, - "date": date, - "duration": duration, - "totalRiskScore": totalRiskScore, - "transmissionRiskLevel": transmissionRiskLevel - ] - } - -} diff --git a/ios/BT/API/Model/ExposureConfiguration.swift b/ios/BT/API/Model/ExposureConfiguration.swift deleted file mode 100644 index 3571454fa9..0000000000 --- a/ios/BT/API/Model/ExposureConfiguration.swift +++ /dev/null @@ -1,36 +0,0 @@ -import Foundation -import ExposureNotification - -struct ExposureConfiguration: Codable { - - let minimumRiskScore: ENRiskScore - let attenuationDurationThresholds: [Int] - let attenuationLevelValues: [ENRiskLevelValue] - let daysSinceLastExposureLevelValues: [ENRiskLevelValue] - let durationLevelValues: [ENRiskLevelValue] - let transmissionRiskLevelValues: [ENRiskLevelValue] - -} - -extension ExposureConfiguration { - - static var placeholder: ExposureConfiguration = { - ExposureConfiguration(minimumRiskScore: 0, - attenuationDurationThresholds: [50, 70], - attenuationLevelValues: [1, 2, 3, 4, 5, 6, 7, 8], - daysSinceLastExposureLevelValues: [1, 2, 3, 4, 5, 6, 7, 8], - durationLevelValues: [1, 2, 3, 4, 5, 6, 7, 8], - transmissionRiskLevelValues: [1, 2, 3, 4, 5, 6, 7, 8]) - }() - - var asENExposureConfiguration: ENExposureConfiguration { - let config = ENExposureConfiguration() - config.metadata = ["attenuationDurationThresholds": attenuationDurationThresholds] - config.attenuationLevelValues = attenuationLevelValues.map { NSNumber(value: $0) } - config.daysSinceLastExposureLevelValues = daysSinceLastExposureLevelValues.map { NSNumber(value: $0) } - config.durationLevelValues = durationLevelValues.map { NSNumber(value: $0) } - config.transmissionRiskLevelValues = transmissionRiskLevelValues.map { NSNumber(value: $0) } - return config - } - -} diff --git a/ios/BT/API/Model/ExposureKey.swift b/ios/BT/API/Model/ExposureKey.swift deleted file mode 100644 index b80fa6514c..0000000000 --- a/ios/BT/API/Model/ExposureKey.swift +++ /dev/null @@ -1,11 +0,0 @@ -import Foundation -import ExposureNotification - -struct ExposureKey: Codable { - - let key: Data - let rollingPeriod: ENIntervalNumber - let rollingStartNumber: ENIntervalNumber - let transmissionRisk: ENRiskLevel - -} diff --git a/ios/BT/API/Model/Region.swift b/ios/BT/API/Model/Region.swift deleted file mode 100644 index c8971310a7..0000000000 --- a/ios/BT/API/Model/Region.swift +++ /dev/null @@ -1,3 +0,0 @@ -enum Region: String { - case US -} diff --git a/ios/BT/API/Model/UserState.swift b/ios/BT/API/Model/UserState.swift deleted file mode 100644 index 435137b3ae..0000000000 --- a/ios/BT/API/Model/UserState.swift +++ /dev/null @@ -1,19 +0,0 @@ -import Foundation -import RealmSwift - -@objcMembers -class UserState: Object { - static let id = 0 - - @objc dynamic var id: Int = UserState.id - @objc dynamic var dateLastPerformedFileCapacityReset: Date? = nil - @objc dynamic var remainingDailyFileProcessingCapacity: Int = Constants.dailyFileProcessingCapacity - @objc dynamic var exposureDetectionErrorLocalizedDescription: String = .default - @objc dynamic var urlOfMostRecentlyDetectedKeyFile: String = .default - let exposures: List = List() - - override class func primaryKey() -> String? { - "id" - } - -} diff --git a/ios/BT/API/Requests/DiagnosisKeyRequests.swift b/ios/BT/API/Requests/DiagnosisKeyRequests.swift deleted file mode 100644 index c92fd9af89..0000000000 --- a/ios/BT/API/Requests/DiagnosisKeyRequests.swift +++ /dev/null @@ -1,67 +0,0 @@ -import Alamofire -import ExposureNotification - -enum DiagnosisKeyRequest: APIRequest { - - typealias ResponseType = ExposureKey - - case get(URL), - delete(URL) - - var method: HTTPMethod { - switch self { - case .get: - return .get - case .delete: - return .delete - } - } - - var path: String { - return "" - } - - var parameters: Parameters? { - return nil - } - -} - -enum DiagnosisKeyListRequest: APIRequest { - - typealias ResponseType = Void - - case post([ExposureKey], [Region], String, String) - - var method: HTTPMethod { - switch self { - case .post: - return .post - } - } - - var path: String { - switch self { - case .post: - return "" - } - } - - var parameters: Parameters? { - switch self { - case .post(let diagnosisKeys, - let regions, - let certificate, - let hmacKey): - let keys = diagnosisKeys.map { try? $0.toJson() as? JSONObject } - return [ - "temporaryExposureKeys": keys, - "regions": regions.map { $0.rawValue }, - "appPackageName": Bundle.main.bundleIdentifier!, - "verificationPayload": certificate, - "hmackey": hmacKey, - "padding": String(decoding: Data(), as: UTF8.self) - ] - } - } -} diff --git a/ios/BT/API/Requests/DiagnosisKeyUrlRequests.swift b/ios/BT/API/Requests/DiagnosisKeyUrlRequests.swift deleted file mode 100644 index 0882e4042d..0000000000 --- a/ios/BT/API/Requests/DiagnosisKeyUrlRequests.swift +++ /dev/null @@ -1,51 +0,0 @@ -import Alamofire -import ExposureNotification - -enum DiagnosisKeyUrlRequest: APIRequest { - - typealias ResponseType = Void - - case get(String) - - var method: HTTPMethod { - switch self { - case .get: - return .get - } - } - - var path: String { - switch self { - case .get(let path): - return path - } - } - - var parameters: Parameters? { - return nil - } - -} - -enum DiagnosisKeyUrlListRequest: APIRequest { - - typealias ResponseType = [URL] - - case get(Int) - - var method: HTTPMethod { - switch self { - case .get: - return .get - } - } - - var path: String { - return "" - } - - var parameters: Parameters? { - return nil - } - -} diff --git a/ios/BT/API/Requests/ExposureConfigurationRequests.swift b/ios/BT/API/Requests/ExposureConfigurationRequests.swift deleted file mode 100644 index 709a17e057..0000000000 --- a/ios/BT/API/Requests/ExposureConfigurationRequests.swift +++ /dev/null @@ -1,24 +0,0 @@ -import Alamofire -import Foundation - -enum ExposureConfigurationRequest: APIRequest { - - typealias ResponseType = ExposureConfiguration - - case get - - var method: HTTPMethod { - switch self { - case .get: - return .get - } - } - - var path: String { - switch self { - case .get: - return "" - } - } - -} diff --git a/ios/BT/API/Requests/IndexFileRequests.swift b/ios/BT/API/Requests/IndexFileRequests.swift deleted file mode 100644 index f14f728d52..0000000000 --- a/ios/BT/API/Requests/IndexFileRequests.swift +++ /dev/null @@ -1,20 +0,0 @@ -import Alamofire - -enum IndexFileRequest: APIRequest { - - typealias ResponseType = String - - case get - - var method: HTTPMethod { - switch self { - case .get: - return .get - } - } - - var path: String { - (ReactNativeConfig.env(for: .downloadPath)) + "/index.txt" - } - -} diff --git a/ios/BT/API/Result.swift b/ios/BT/API/Result.swift deleted file mode 100644 index 902141e3d8..0000000000 --- a/ios/BT/API/Result.swift +++ /dev/null @@ -1,82 +0,0 @@ -import Alamofire - -public enum Result { - - case success(T) - case failure(Error) - -} - -public enum ExposureResult { - - case success(Int) - case failure(ExposureError) - -} - -public enum GenericError: Error { - - case unknown - case badRequest - case cancelled - case notFound - case notImplemented - case unauthorized - -} - -public enum ExposureError: LocalizedError { - - case `default`(String?) - case dailyFileProcessingLimitExceeded - case cancelled - - public var errorDescription: String? { - switch self { - case .default(message: let message): - guard let unwrappedMessage = message else { - return localizedDescription - } - return unwrappedMessage - case .dailyFileProcessingLimitExceeded: - return "Daily exposure detection file processing limit exceeded" - case .cancelled: - return "Exposure Detection Cancelled" - } - } - -} - -public enum APIError: LocalizedError { - case `default`(message: String?) - - public var errorDescription: String? { - switch self { - case .default(message: let message): - guard let unwrappedMessage = message else { - return "" - } - return unwrappedMessage - } - } - -} - -public let GenericSuccess = GenericResult.success(()) - -public func GenericFailure(_ error: GenericError) -> Result { - return .failure(error) -} - -extension Error { - - public var isCancellation: Bool { - switch self { - case let error as GenericError: - return error == .cancelled - case let error as NSError: - return error.domain == NSURLErrorDomain && error.code == NSURLErrorCancelled - } - } - -} diff --git a/ios/BT/API/StructuredError.swift b/ios/BT/API/StructuredError.swift deleted file mode 100644 index fe3d112c13..0000000000 --- a/ios/BT/API/StructuredError.swift +++ /dev/null @@ -1,13 +0,0 @@ -import Foundation - -struct StructuredError: Error, Decodable { - - let title: String? - let message: String - - init(title: String? = nil, message: String) { - self.title = title - self.message = message - } - -} diff --git a/ios/BT/API/TypeAliases.swift b/ios/BT/API/TypeAliases.swift deleted file mode 100644 index 8d96228a70..0000000000 --- a/ios/BT/API/TypeAliases.swift +++ /dev/null @@ -1,3 +0,0 @@ - -public typealias GenericResult = Result -public typealias GenericCompletion = (GenericResult) -> Void diff --git a/ios/BT/BT-Bridging-Header.h b/ios/BT/BT-Bridging-Header.h deleted file mode 100644 index f99e7ec0c5..0000000000 --- a/ios/BT/BT-Bridging-Header.h +++ /dev/null @@ -1,11 +0,0 @@ -// -// BT-Bridging-Header.h -// BT -// -// Created by John Schoeman on 6/1/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -#import "React/RCTBridgeModule.h" -#import -#import "ReactNativeConfig.h" diff --git a/ios/BT/BT-Development.entitlements b/ios/BT/BT-Development.entitlements deleted file mode 100644 index f86fce9ef6..0000000000 --- a/ios/BT/BT-Development.entitlements +++ /dev/null @@ -1,16 +0,0 @@ - - - - - com.apple.developer.exposure-notification-test - - com.apple.developer.exposure-notification-test-skip-file-verification - - com.apple.developer.exposure-notification-logging - - aps-environment - Development - com.apple.developer.exposure-notification - - - diff --git a/ios/BT/BT-Production.entitlements b/ios/BT/BT-Production.entitlements deleted file mode 100644 index d525d0a851..0000000000 --- a/ios/BT/BT-Production.entitlements +++ /dev/null @@ -1,10 +0,0 @@ - - - - - aps-environment - Production - com.apple.developer.exposure-notification - - - diff --git a/ios/BT/Config/Debug-BT.xcconfig b/ios/BT/Config/Debug-BT.xcconfig deleted file mode 100644 index b76394efaf..0000000000 --- a/ios/BT/Config/Debug-BT.xcconfig +++ /dev/null @@ -1,17 +0,0 @@ -// -// Debug-BT.xcconfig -// COVIDSafePaths -// -// Created by Rob Visentin on 6/26/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -// Configuration settings file format documentation can be found at: -// https://help.apple.com/xcode/#/dev745c5c974 - -#include "Version.xcconfig" - -ASSETCATALOG_COMPILER_APPICON_NAME = AppIconDev -PRODUCT_BUNDLE_IDENTIFIER = org.pathcheck.bt.dev - -ALLOW_INSECURE_HTTP = YES diff --git a/ios/BT/Config/Release-BT.xcconfig b/ios/BT/Config/Release-BT.xcconfig deleted file mode 100644 index 0f136e969b..0000000000 --- a/ios/BT/Config/Release-BT.xcconfig +++ /dev/null @@ -1,17 +0,0 @@ -// -// Release-BT.xcconfig -// COVIDSafePaths -// -// Created by Rob Visentin on 6/26/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -// Configuration settings file format documentation can be found at: -// https://help.apple.com/xcode/#/dev745c5c974 - -#include "Version.xcconfig" - -ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon -PRODUCT_BUNDLE_IDENTIFIER = org.pathcheck.bt - -ALLOW_INSECURE_HTTP = NO diff --git a/ios/BT/Config/Staging-BT.xcconfig b/ios/BT/Config/Staging-BT.xcconfig deleted file mode 100644 index 059f88dd86..0000000000 --- a/ios/BT/Config/Staging-BT.xcconfig +++ /dev/null @@ -1,17 +0,0 @@ -// -// Staging-BT.xcconfig -// COVIDSafePaths -// -// Created by Rob Visentin on 6/26/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -// Configuration settings file format documentation can be found at: -// https://help.apple.com/xcode/#/dev745c5c974 - -#include "Version.xcconfig" - -ASSETCATALOG_COMPILER_APPICON_NAME = AppIconStaging -PRODUCT_BUNDLE_IDENTIFIER = org.pathcheck.bt.staging - -ALLOW_INSECURE_HTTP = NO diff --git a/ios/BT/Config/Version.xcconfig b/ios/BT/Config/Version.xcconfig deleted file mode 100644 index 97a7221d72..0000000000 --- a/ios/BT/Config/Version.xcconfig +++ /dev/null @@ -1,18 +0,0 @@ -// -// Version.xcconfig -// COVIDSafePaths -// -// Created by Rob Visentin on 6/26/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -// Configuration settings file format documentation can be found at: -// https://help.apple.com/xcode/#/dev745c5c974 - -// Staging -MARKETING_VERSION = 1.0.0 -CURRENT_PROJECT_VERSION = 1 - -// Release -MARKETING_VERSION[config=Release-BT] = 1.0.29 -CURRENT_PROJECT_VERSION[config=Release-BT] = 3 diff --git a/ios/BT/Constants.swift b/ios/BT/Constants.swift deleted file mode 100644 index 0f97e059af..0000000000 --- a/ios/BT/Constants.swift +++ /dev/null @@ -1,5 +0,0 @@ -enum Constants { - static let intervalsPerRollingPeriod: Int = 144 - static let exposureLifetimeHours: Int = 336 - static let dailyFileProcessingCapacity: Int = 15 -} diff --git a/ios/BT/DebugAction.swift b/ios/BT/DebugAction.swift deleted file mode 100644 index 0b26cc0f38..0000000000 --- a/ios/BT/DebugAction.swift +++ /dev/null @@ -1,11 +0,0 @@ -@objc enum DebugAction: Int { - case fetchDiagnosisKeys, - detectExposuresNow, - simulateExposureDetectionError, - simulateExposure, - fetchExposures, - getAndPostDiagnosisKeys, - resetExposures, - toggleENAuthorization, - showLastProcessedFilePath -} diff --git a/ios/BT/ExposureManager.swift b/ios/BT/ExposureManager.swift deleted file mode 100644 index a8b26f05f8..0000000000 --- a/ios/BT/ExposureManager.swift +++ /dev/null @@ -1,432 +0,0 @@ -import Foundation -import ExposureNotification -import RealmSwift -import UserNotifications -import BackgroundTasks - -@objc(ExposureManager) -final class ExposureManager: NSObject { - - enum EnabledState: String { - case enabled = "ENABLED" - case disabled = "DISABLED" - } - - enum AuthorizationState: String { - case authorized = "AUTHORIZED" - case unauthorized = "UNAUTHORIZED" - } - - @objc static let shared = ExposureManager() - - private static let backgroundTaskIdentifier = "\(Bundle.main.bundleIdentifier!).exposure-notification" - - let manager = ENManager() - - var enabledState: EnabledState { - return manager.exposureNotificationEnabled ? .enabled : .disabled - } - - var authorizationState: AuthorizationState { - return (ENManager.authorizationStatus == .authorized) ? .authorized : .unauthorized - } - - @objc var currentExposures: String { - return Array(BTSecureStorage.shared.userState.exposures).jsonStringRepresentation() - } - - private var isDetectingExposures = false - - /// Downloaded archives from the GAEN server - private var downloadedPackages = [DownloadedPackage]() - - /// Local urls of the bin/sig files from each archive - private var localUncompressedURLs = [URL]() - - override init() { - super.init() - manager.activate { _ in - // Ensure exposure notifications are enabled if the app is authorized. The app - // could get into a state where it is authorized, but exposure - // notifications are not enabled, if the user initially denied Exposure Notifications - // during onboarding, but then flipped on the "COVID-19 Exposure Notifications" switch - // in Settings. - if self.authorizationState == .authorized && self.enabledState == .disabled { - self.manager.setExposureNotificationEnabled(true) { _ in - // No error handling for attempts to enable on launch - } - } - } - - // Schedule background task if needed whenever EN authorization status changes - NotificationCenter.default.addObserver( - self, - selector: #selector(scheduleBackgroundTaskIfNeeded), - name: .AuthorizationStatusDidChange, - object: nil - ) - } - - deinit { - manager.invalidate() - } - - @objc func requestExposureNotificationAuthorization(enabled: Bool, callback: @escaping RCTResponseSenderBlock) { - // Ensure exposure notifications are enabled if the app is authorized. The app - // could get into a state where it is authorized, but exposure - // notifications are not enabled, if the user initially denied Exposure Notifications - // during onboarding, but then flipped on the "COVID-19 Exposure Notifications" switch - // in Settings. - manager.setExposureNotificationEnabled(enabled) { error in - if let error = error { - callback([error]) - } else { - NotificationCenter.default.post(Notification( - name: .AuthorizationStatusDidChange, - object: self, - userInfo: [ - Notification.UserInfoKey.enabledState: self.enabledState.rawValue, - Notification.UserInfoKey.authorizationState: self.authorizationState.rawValue - ] - )) - callback([String.genericSuccess]) - } - } - } - - @objc func getCurrentENPermissionsStatus(callback: @escaping RCTResponseSenderBlock) { - callback([[authorizationState.rawValue, enabledState.rawValue]]) - } - - @discardableResult func detectExposures(completionHandler: @escaping ((ExposureResult) -> Void)) -> Progress { - - let progress = Progress() - - var lastProcessedUrlPath: String = .default - var processedFileCount: Int = 0 - - // Disallow concurrent exposure detection, because if allowed we might try to detect the same diagnosis keys more than once - guard !isDetectingExposures else { - finish( - .failure(ExposureError.default("Detection Already in Progress")), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler - ) - return progress - } - - isDetectingExposures = true - - // Reset file capacity to 15 if > 24 hours have elapsed since last reset - ExposureManager.updateRemainingFileCapacity() - - // Abort if daily file capacity is exceeded - guard BTSecureStorage.shared.userState.remainingDailyFileProcessingCapacity > 0 else { - finish( - .success([]), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler - ) - return progress - } - - APIClient.shared.requestString(IndexFileRequest.get, requestType: .downloadKeys) { result in - let dispatchGroup = DispatchGroup() - - switch result { - case let .success(indexFileString): - let remoteURLs = indexFileString.gaenFilePaths - let targetUrls = ExposureManager.urlPathsToProcess(remoteURLs) - lastProcessedUrlPath = targetUrls.last ?? .default - processedFileCount = targetUrls.count - for remoteURL in targetUrls { - dispatchGroup.enter() - APIClient.shared.downloadRequest(DiagnosisKeyUrlRequest.get(remoteURL), requestType: .downloadKeys) { result in - switch result { - case .success (let package): - self.downloadedPackages.append(package) - case .failure(let error): - self.finish(.failure(error), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler) - return - } - dispatchGroup.leave() - } - } - - case let .failure(error): - self.finish(.failure(error), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler) - return - } - dispatchGroup.notify(queue: .main) { - do { - try self.downloadedPackages.unpack { urls in - self.localUncompressedURLs = urls - - // TODO: Fetch configuration from API - let enConfiguration = ExposureConfiguration.placeholder.asENExposureConfiguration - ExposureManager.shared.manager.detectExposures(configuration: enConfiguration, diagnosisKeyURLs: self.localUncompressedURLs) { summary, error in - if let error = error { - self.finish(.failure(error), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler) - return - } - let userExplanation = NSLocalizedString(String.newExposureNotificationBody, comment: .default) - ExposureManager.shared.manager.getExposureInfo(summary: summary!, userExplanation: userExplanation) { exposures, error in - if let error = error { - self.finish(.failure(error), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler) - return - } - let newExposures = (exposures ?? []).map { exposure in - Exposure(id: UUID().uuidString, - date: exposure.date.posixRepresentation, - duration: exposure.duration, - totalRiskScore: exposure.totalRiskScore, - transmissionRiskLevel: exposure.transmissionRiskLevel) - } - self.finish(.success(newExposures), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler) - } - } - } - } catch(let error) { - self.finish(.failure(error), - processedFileCount: processedFileCount, - lastProcessedUrlPath: lastProcessedUrlPath, - progress: progress, - completionHandler: completionHandler) - } - } - } - return progress - } - - func finish(_ result: Result<[Exposure]>, - processedFileCount: Int, - lastProcessedUrlPath: String, - progress: Progress, - completionHandler: ((ExposureResult) -> Void)) { - - cleanup() - - isDetectingExposures = false - - if progress.isCancelled { - BTSecureStorage.shared.exposureDetectionErrorLocalizedDescription = GenericError.unknown.localizedDescription - completionHandler(.failure(ExposureError.cancelled)) - } else { - switch result { - case let .success(newExposures): - BTSecureStorage.shared.exposureDetectionErrorLocalizedDescription = .default - BTSecureStorage.shared.remainingDailyFileProcessingCapacity -= processedFileCount - if lastProcessedUrlPath != .default { - BTSecureStorage.shared.urlOfMostRecentlyDetectedKeyFile = lastProcessedUrlPath - } - BTSecureStorage.shared.storeExposures(newExposures) - completionHandler(.success(processedFileCount)) - case let .failure(error): - let exposureError = ExposureError.default(error.localizedDescription) - BTSecureStorage.shared.exposureDetectionErrorLocalizedDescription = error.localizedDescription - postExposureDetectionErrorNotification(exposureError.errorDescription) - completionHandler(.failure(exposureError)) - } - } - } - - @objc func registerBackgroundTask() { - notifyUserBlueToothOffIfNeeded() - BGTaskScheduler.shared.register(forTaskWithIdentifier: ExposureManager.backgroundTaskIdentifier, using: .main) { [weak self] task in - - // Notify the user if bluetooth is off - self?.notifyUserBlueToothOffIfNeeded() - - // Perform the exposure detection - let progress = ExposureManager.shared.detectExposures { result in - switch result { - case .success: - task.setTaskCompleted(success: true) - case .failure: - task.setTaskCompleted(success: false) - } - } - - // Handle running out of time - task.expirationHandler = { - progress.cancel() - BTSecureStorage.shared.exposureDetectionErrorLocalizedDescription = NSLocalizedString("BACKGROUND_TIMEOUT", comment: "Error") - } - - // Schedule the next background task - self?.scheduleBackgroundTaskIfNeeded() - } - } - - @objc func scheduleBackgroundTaskIfNeeded() { - guard ENManager.authorizationStatus == .authorized else { return } - let taskRequest = BGProcessingTaskRequest(identifier: ExposureManager.backgroundTaskIdentifier) - taskRequest.requiresNetworkConnectivity = true - do { - try BGTaskScheduler.shared.submit(taskRequest) - } catch { - print("Unable to schedule background task: \(error)") - } - } - - @objc func getAndPostDiagnosisKeys(certificate: String, - HMACKey: String, - resolve: @escaping RCTPromiseResolveBlock, - reject: @escaping RCTPromiseRejectBlock) { - manager.getDiagnosisKeys { temporaryExposureKeys, error in - if let error = error { - reject(String.noExposureKeysFound, "Failed to get exposure keys", error) - } else { - - let allKeys = (temporaryExposureKeys ?? []) - - // Filter keys > 350 hrs old - let currentKeys = allKeys.current() - - APIClient.shared.request(DiagnosisKeyListRequest.post(currentKeys.compactMap { $0.asCodableKey }, [.US], certificate, HMACKey), - requestType: .postKeys) { result in - switch result { - case .success: - resolve("Submitted: \(currentKeys.count) keys.") - case .failure(let error): - reject(String.networkFailure, "Failed to post exposure keys \(error.localizedDescription)", error) - } - } - } - } - } - - func postExposureDetectionErrorNotification(_ errorString: String?) { - #if DEBUG - let identifier = String.exposureDetectionErrorNotificationIdentifier - - let content = UNMutableNotificationContent() - content.title = String.exposureDetectionErrorNotificationTitle.localized - content.body = errorString ?? String.exposureDetectionErrorNotificationBody.localized - content.sound = .default - let request = UNNotificationRequest(identifier: identifier, content: content, trigger: nil) - UNUserNotificationCenter.current().add(request) { error in - DispatchQueue.main.async { - if let error = error { - print("Error showing error user notification: \(error)") - } - } - } - #endif - } - - @objc func fetchExposureKeys(resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) { - manager.getDiagnosisKeys { (keys, error) in - if let error = error { - print(error) - reject("no_exposure_keys", "There was an error fetching the exposure keys \(error)", error); - } else { - resolve((keys ?? []).map { $0.asDictionary }) - } - } - } - -} - -// MARK: - FileProcessing - -extension ExposureManager { - - static func startIndex(for urlPaths: [String]) -> Int { - let path = BTSecureStorage.shared.userState.urlOfMostRecentlyDetectedKeyFile - if let lastIdx = urlPaths.firstIndex(of: path) { - return min(lastIdx + 1, urlPaths.count) - } - return 0 - } - - static func urlPathsToProcess(_ urlPaths: [String]) -> [String] { - let startIdx = startIndex(for: urlPaths) - let endIdx = min(startIdx + BTSecureStorage.shared.userState.remainingDailyFileProcessingCapacity, urlPaths.count) - return Array(urlPaths[startIdx.. 24 { - BTSecureStorage.shared.remainingDailyFileProcessingCapacity = Constants.dailyFileProcessingCapacity - BTSecureStorage.shared.dateLastPerformedFileCapacityReset = Date() - } - } - - @objc func fetchLastDetectionDate( - resolve: @escaping RCTPromiseResolveBlock, - reject: @escaping RCTPromiseRejectBlock - ) { - guard let lastResetDate = BTSecureStorage.shared.userState.dateLastPerformedFileCapacityReset else { - reject(.detectionNeverPerformed, "No lastResetDate available", GenericError.unknown); - return - } - resolve(lastResetDate.posixRepresentation) - } -} - -// MARK: - Private - -private extension ExposureManager { - - func notifyUserBlueToothOffIfNeeded() { - let identifier = String.bluetoothNotificationIdentifier - - // Bluetooth must be enabled in order for the device to exchange keys with other devices - if ENManager.authorizationStatus == .authorized && manager.exposureNotificationStatus == .bluetoothOff { - let content = UNMutableNotificationContent() - content.title = String.bluetoothNotificationTitle.localized - content.body = String.bluetoothNotificationBody.localized - content.sound = .default - let request = UNNotificationRequest(identifier: identifier, content: content, trigger: nil) - UNUserNotificationCenter.current().add(request) { error in - DispatchQueue.main.async { - if let error = error { - print("Error showing error user notification: \(error)") - } - } - } - } else { - UNUserNotificationCenter.current().removeDeliveredNotifications(withIdentifiers: [identifier]) - } - } - - func cleanup() { - // Delete downloaded files from file system - localUncompressedURLs.cleanup() - localUncompressedURLs = [] - downloadedPackages = [] - } - -} diff --git a/ios/BT/Extensions/Exposure Notifications/ENTemporaryExposureKey+Extensions.swift b/ios/BT/Extensions/Exposure Notifications/ENTemporaryExposureKey+Extensions.swift deleted file mode 100644 index 7b6c355d90..0000000000 --- a/ios/BT/Extensions/Exposure Notifications/ENTemporaryExposureKey+Extensions.swift +++ /dev/null @@ -1,26 +0,0 @@ -import Foundation -import ExposureNotification - -extension ENTemporaryExposureKey { - - var asCodableKey: ExposureKey { - ExposureKey(key: keyData, - rollingPeriod: rollingPeriod, - rollingStartNumber: rollingStartNumber, - transmissionRisk: transmissionRiskLevel) - } - - var asDictionary : [String: Any] { - return [ - "key": keyData, - "rollingPeriod": rollingPeriod, - "rollingStartNumber": rollingStartNumber, - "transmissionRisk": transmissionRiskLevel - ] - } - - static func rollingStartNumber(_ date: Date) -> UInt32 { - UInt32(Int(date.timeIntervalSince1970 / (24 * 60 * 60)) * Constants.intervalsPerRollingPeriod) - } - -} diff --git a/ios/BT/Extensions/Foundation/Array+Extensions.swift b/ios/BT/Extensions/Foundation/Array+Extensions.swift deleted file mode 100644 index a7b5cf73c3..0000000000 --- a/ios/BT/Extensions/Foundation/Array+Extensions.swift +++ /dev/null @@ -1,55 +0,0 @@ -import ExposureNotification -import Foundation - -extension Array where Element == DownloadedPackage { - - func unpack(_ completion: @escaping (([URL]) -> Void)) throws { - guard count > 0 else { - completion([]) - return - } - var uncompressedFileUrls = [URL]() - do { - for idx in (0.. UInt32 { - let date = Calendar.current.date(byAdding: .hour, value: -Constants.exposureLifetimeHours, to: Date())! - return ENTemporaryExposureKey.rollingStartNumber(date) - } - - func current() -> [ENTemporaryExposureKey] { - filter { $0.rollingStartNumber > self.minRollingStartNumber() } - } - -} - -extension Array where Element == URL { - - func cleanup() { - forEach { try? FileManager.default.removeItem(at: $0) } - } - -} - -private extension String { - static let binPath: String = "/export.bin" - static let sigPath: String = "/export.sig" -} diff --git a/ios/BT/Extensions/Foundation/Date+Extensions.swift b/ios/BT/Extensions/Foundation/Date+Extensions.swift deleted file mode 100644 index 6bed35281e..0000000000 --- a/ios/BT/Extensions/Foundation/Date+Extensions.swift +++ /dev/null @@ -1,10 +0,0 @@ -extension Date { - var posixRepresentation: Int { - Int(timeIntervalSince1970) * 1000 - } - - static func hourDifference(from startDate: Date, to endDate: Date) -> Int { - Calendar.current.dateComponents([.hour], from: startDate, to: endDate).hour ?? 0 - } - -} diff --git a/ios/BT/Extensions/Foundation/Encodable+Extensions.swift b/ios/BT/Extensions/Foundation/Encodable+Extensions.swift deleted file mode 100644 index d6839d74d4..0000000000 --- a/ios/BT/Extensions/Foundation/Encodable+Extensions.swift +++ /dev/null @@ -1,7 +0,0 @@ -extension Encodable { - func jsonStringRepresentation() -> String { - let encodedValue = try! JSONEncoder().encode(self) - let string = String(data: encodedValue, encoding: .utf8)! - return string - } -} diff --git a/ios/BT/Extensions/Foundation/List+Extensions.swift b/ios/BT/Extensions/Foundation/List+Extensions.swift deleted file mode 100644 index ecb08390b6..0000000000 --- a/ios/BT/Extensions/Foundation/List+Extensions.swift +++ /dev/null @@ -1,8 +0,0 @@ -import RealmSwift - -extension List where Element: Encodable { - public func encode(to coder: Encoder) throws { - var container = coder.unkeyedContainer() - try container.encode(contentsOf: self) - } -} diff --git a/ios/BT/Extensions/Foundation/Notification+Extensions.swift b/ios/BT/Extensions/Foundation/Notification+Extensions.swift deleted file mode 100644 index d9b286a561..0000000000 --- a/ios/BT/Extensions/Foundation/Notification+Extensions.swift +++ /dev/null @@ -1,20 +0,0 @@ -extension Notification.Name { - public static let StorageTestResultsDidChange = Notification.Name(rawValue: "BTSecureStorageTestResultsDidChange") - public static let StorageExposureDetectionErrorLocalizedDescriptionDidChange = Notification.Name(rawValue: "BTSecureStorageExposureDetectionErrorLocalizedDescriptionDidChange") - public static let dateLastPerformedFileCapacityResetDidChange = Notification.Name(rawValue: "BTSecureStorageDateLastPerformedExposureDetectionDidChange") - public static let HMACKeyDidChange = Notification.Name(rawValue: "BTSecureStorageHMACKeyDidChange") - public static let ExposuresDidChange = Notification.Name(rawValue: "onExposureRecordUpdated") - public static let AuthorizationStatusDidChange = Notification.Name(rawValue: "onEnabledStatusUpdated") - public static let remainingDailyFileProcessingCapacityDidChange = Notification.Name(rawValue: "remainingDailyFileProcessingCapacityDidChange") - public static let UrlOfMostRecentlyDetectedKeyFileDidChange = Notification.Name(rawValue: "UrlOfMostRecentlyDetectedKeyFileDidChange") -} - -extension Notification { - - public enum UserInfoKey { - public static let enabledState = "enabledState" - public static let authorizationState = "authorizationState" - } - -} - diff --git a/ios/BT/Extensions/Foundation/String+Extensions.swift b/ios/BT/Extensions/Foundation/String+Extensions.swift deleted file mode 100644 index 274c6c4a91..0000000000 --- a/ios/BT/Extensions/Foundation/String+Extensions.swift +++ /dev/null @@ -1,54 +0,0 @@ -import Foundation - -extension String { - - static let `default` = "" - - // EN - static let notAuthorized = "notAuthorized" - static let authorized = "authorized" - - // Realm - static let remainingDailyFileProcessingCapacity = "remainingDailyFileProcessingCapacity" - static let urlOfMostRecentlyDetectedKeyFile = "urlOfMostRecentlyDetectedKeyFile" - - // Persisted - static let keyPathTestResults = "testResults" - static let keyPathExposureDetectionErrorLocalizedDescription = "exposureDetectionErrorLocalizedDescription" - static let keyPathdateLastPerformedFileCapacityReset = "dateLastPerformedFileCapacityReset" - static let keyPathExposures = "exposures" - static let keyPathHMACKey = "HMACKey" - - // .env - static let postKeysUrl = "POST_DIAGNOSIS_KEYS_URL" - static let downloadBaseUrl = "DOWNLOAD_BASE_URL" - static let downloadPath = "DOWNLOAD_PATH" - static let hmackey = "HMAC_KEY" - - // Notifications - static let bluetoothNotificationTitle = "Bluetooth Off" - static let bluetoothNotificationBody = "You must enable bluetooth to receive Exposure Notifications." - static let bluetoothNotificationIdentifier = "bluetooth-off" - static let exposureDetectionErrorNotificationTitle = "Error Detecting Exposures" - static let exposureDetectionErrorNotificationBody = "An error occurred while attempting to detect exposures." - static let newExposureNotificationBody = "Someone you were near recently has been diagnosed with COVID-19. Tap for more details." - static let exposureDetectionErrorNotificationIdentifier = "expososure-notification-error" - - // JS Layer - static let genericSuccess = "success" - - // ErrorCodes - static let networkFailure = "network_request_error" - static let noExposureKeysFound = "no_exposure_keys_found" - static let detectionNeverPerformed = "no_last_detection_date" - - // Computed Properties - var gaenFilePaths: [String] { - split(separator: "\n").map { String($0) } - } - - var localized: String { - NSLocalizedString(self, comment: .default) - } - -} diff --git a/ios/BT/Extensions/Other/ExposureManager+Extensions.swift b/ios/BT/Extensions/Other/ExposureManager+Extensions.swift deleted file mode 100644 index ce7c8202d7..0000000000 --- a/ios/BT/Extensions/Other/ExposureManager+Extensions.swift +++ /dev/null @@ -1,64 +0,0 @@ -import ExposureNotification -import Foundation -import RealmSwift - -extension ExposureManager { - - @objc func handleDebugAction(_ action: DebugAction, - resolve: @escaping RCTPromiseResolveBlock, - reject: @escaping RCTPromiseRejectBlock) { - switch action { - case .fetchDiagnosisKeys: - manager.getDiagnosisKeys { (keys, error) in - if let error = error { - reject(error.localizedDescription, "Failed to get exposure keys", error) - } else { - resolve(keys!.map { $0.asDictionary }) - } - } - case .detectExposuresNow: - guard BTSecureStorage.shared.userState.remainingDailyFileProcessingCapacity > 0 else { - let hoursRemaining = 24 - Date.hourDifference(from: BTSecureStorage.shared.userState.dateLastPerformedFileCapacityReset ?? Date(), to: Date()) - reject("Time window Error.", "You have reached the exposure file submission limit. Please wait \(hoursRemaining) hours before detecting exposures again.", GenericError.unknown) - return - } - - detectExposures { result in - switch result { - case .success(let numberOfFilesProcessed): - resolve("Exposure detection successfully executed. Processed \(numberOfFilesProcessed) files.") - case .failure(let exposureError): - reject(exposureError.localizedDescription, exposureError.errorDescription, exposureError) - } - } - case .simulateExposureDetectionError: - BTSecureStorage.shared.exposureDetectionErrorLocalizedDescription = "Unable to connect to server." - ExposureManager.shared.postExposureDetectionErrorNotification("Simulated Error") - resolve(String.genericSuccess) - case .simulateExposure: - let exposure = Exposure(id: UUID().uuidString, - date: Date().posixRepresentation - Int(TimeInterval.random(in: 0...13)) * 24 * 60 * 60 * 1000, - duration: TimeInterval(1), - totalRiskScore: .random(in: 1...8), - transmissionRiskLevel: .random(in: 0...7)) - BTSecureStorage.shared.storeExposures([exposure]) - resolve("Exposures: \(BTSecureStorage.shared.userState.exposures)") - case .fetchExposures: - resolve(currentExposures) - case .getAndPostDiagnosisKeys: - getAndPostDiagnosisKeys(certificate: .default, HMACKey: .default, resolve: resolve, reject: reject) - case .resetExposures: - BTSecureStorage.shared.exposures = List() - resolve("Exposures: \(BTSecureStorage.shared.exposures.count)") - case .toggleENAuthorization: - let enabled = manager.exposureNotificationEnabled ? false : true - requestExposureNotificationAuthorization(enabled: enabled) { result in - resolve("EN Enabled: \(self.manager.exposureNotificationEnabled)") - } - case .showLastProcessedFilePath: - let path = BTSecureStorage.shared.userState.urlOfMostRecentlyDetectedKeyFile - resolve(path) - } - } - -} diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/Contents.json b/ios/BT/Images.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index f3cbfbed15..0000000000 --- a/ios/BT/Images.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "images" : [ - { - "filename" : "bt-ios-icon-20@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "bt-ios-icon-20@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "20x20" - }, - { - "filename" : "bt-ios-icon-29@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "bt-ios-icon-29@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "29x29" - }, - { - "filename" : "bt-ios-icon-40@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "bt-ios-icon-40@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "40x40" - }, - { - "filename" : "bt-ios-icon-60@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "60x60" - }, - { - "filename" : "bt-ios-icon-60@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "60x60" - }, - { - "filename" : "bt-ios-icon-1024@1x.png", - "idiom" : "ios-marketing", - "scale" : "1x", - "size" : "1024x1024" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-1024@1x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-1024@1x.png deleted file mode 100644 index e71db06ce32d82101fcdc009c4ed2c5649b2a419..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50171 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 diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-29@2x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-29@2x.png deleted file mode 100644 index 23a1b687e84bde68f8a1c154105cc57a60c639aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2006 zcmV;{2Pyc8P)-D z5W*D>!=WM|_oZ?cC{QSc-gmpZZFkrAzuDbcU`yY$+h~^kk|s0L`QOg>-v7S;m{C19 z{IU~)4`&D-5Cn+^8iGUv4MC!Th9J>ELy%~o;ejC<3O_)l0v>J?hUAV~B*bZ8Zl&SZ zZs*q`Gph#IuGiq|b(>Gy)(IMP@1jFuyaw^H8h$OWu$J9l!~Zg`+29W}nds9`Mq*T& z0bL)_B2=yNd5_)U#JLO`)^0Ark&{*YT57LIj2voUB((@p`L=Viy6T^E7Hr;8hW&>t z(G;i}Tc(-W3Vbv^4&6Iz71^CSZ9z?)1AS5=71^E1uwdR-dC1MLLnGj96w&rc;h38q zkGO|qhp4D>VCSB4?rKHFb~xB78e-H)c{Bojdq=_$t@b%qC9~VdR_n|K3rb7vu-gHn zQH`F=uFn&Zh|$Y3ayzdUGd|13mFtS#Svk=*<}iFQI{^=wB$73?PAp$tgsnTv_^~gL zOOF|0z{oTsq9Wx7->|I|-!a?Tdh9~jt*^ao#4E#$h>Vcz$}8-6XIi$>l~q=Fhli>7 zO1eqrGO-yqIh#LleIyBWb|-#XUxK%%W+T5)e!ynNl;Fow_?}c3L(3mkLu9EAh|lZ zu+8SgZ~H57B}?*z7Hk`&bk_-ub?A5%&SqHoaWoUDzJ0`%TbO7Mrh;y4-B~JX#^a?M z8@Ee#6d$+kF5}0vCaJykLSxyO4*YRYj;ATzBOnT4qDgHup5rqYtfFSVKMOS{P=xjU(AZh>r9TxRzubyS47 zCKj_;>vRcqJFm%a2tvQ0W^phiMB4auwNM0?84ndsryNQsp>UsuDA0a8+vj9U(1eK_ z3f)No-D;Bt4-Z%IKT+7Ml3f^!dpe!`b4Hdmxnp6uE8K`c%T!$L%Bc$q#XU=SN-{3X zd#ZIpn5Y?Y@?;liYnJUyMmc>fEfs&@j_u?zL}Iub!bC545gqzMw5Svg^BL@Q;wSh`s!gch*fx0Q@YXHt77TZLkbPFPmg;| z#{Cc<8;V{jvfb{zJm>X$>3_Ps3^W9^o zs$sD;~?6mjeJm))pFGp6kxDXK(H^-=K%5}L6m22~7B_K+7|8R5QSQQFgNe10R{i)HYFz4e0w2GB9fy%W-D+-_#>ZHySK2c&|VWk$eHTtLOd2BQ>QR=Q?Gq<(WA44gTm^(e5?QLm4Q|DsxteYq+7mvH1vCs%y zV&P!Xa(PxC@211}w_375Ucb#Q)@CVo#mkPYWb4P;D^%0g2kMulPl!YBo|0126fRhr zr$~Uj(dfP|m0HVwEaWK}VGt9i*&oJ3ALV;UD-)dRYI((}JyKsC8phmp_Oy6B|BPJK zEL~NIqo>5ekS{c;fxT`^DORm5_ME4(*5~56iD=dG-WZ!UFdB&oauQDM(f+AX_uLoF zCTigvGx~YenqPlk$lEndL6bZ6Yc`eK;l@d=sd;Ahv|I=#*42Asl<6MZci(JzM|Y6a zmAVjJI!P^5TK|RL7GT5nrjaBl79(HC$h7fRU**1 z?0R_G-?!L4i({)!_ZnkDxhhkEK7WQ8v91;>6%q57Q5%BkSMi<%2j!(bIDjoR& zdwR8CR;(%Ffu7#OtoPb;-Xzbml##~pBS{XwzfGfV-K3c}`Fj?xIvY7G(C_eaLrOfZ z-Id*J`lSrhKfQ(G5iL<0>$ oqJf47>RZ77BG*;+?TjDrFY&w8d*g9nfdBvi07*qoM6N<$f)pIU1poj5 diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-29@3x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-29@3x.png deleted file mode 100644 index b02241f07da73af148e2bfa576cfc171b9be512d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3112 zcmbW3_dgVl1IEwCJS)yRT$epFKQc;$v)36JS!YxB?v5*TaYlBXQ6VHN$Kgt6OGZT* zXC7A+PIk!p_WcXKuh;j7=Xt-L=lKU7EZoYNgH?zX003~9n!s%T((%7yVfyRgAEtx; z0vKlE90>r3YW`PrhL2Sce@nVZTVs7d!zak<-@xFnXQ>AO;Ir6HJQ)E1Hj*h!&pwWB zqXZbnGbK2n>zwO5+~)f&Pu!CQCr-X`Ka7v(5nSYf?LWK$s$4^G{laW^xUD|DuaLgo zEg?{m+Ni3fIbw#Zfk7W=+-noU4pt8DI!JJt^mI<32rVVF@02AR2T3(|3O>ZE9TWa^ z9&{YI$7c%FzC5g}uJ%c)X|#%keO<^OX6mp&a` z1zeQ|dzzSW?QIIPWJRm!nPgu&6prpWeuUJpcWhsrMa2-~Nt{;CUt@ZxfA|OX#GgpL zKki+m^E3IC?ES~Uq!D^@dMRTy%D}gPtz$T%YngCW^Ij!?#7@bm`_DK58Jlt7D^X>1 zl+2zvD8sR3Jve-qGjn3);c1Gz=am04+-712 zXOn|G9IFV!X-e61xv@f{(jEN_EQ9H*A0VklAiGBNO~{@UGy6W!XD`{~X7?kv%K9`p zNvRn?BpMf1@MN3vy z7enrupUt;)r*?PegJlywhHcmIrSXx6gxi9{bO-2kbr1UU_Z4{0F4jEacDRw~ z32*a3x|z&nn_o(|#MqUqbxF6w1WHYBG)0tz9cl(MubACOjmwsEt$wtSI>nlK) zo#;#R^5PA(Y>%C9&WrdA^?lFDgS=2yu|1!0Y>K!Dmj{ZxjrAV(P{!WDR*31;u;`Z4od`v?`U71IX=|<1Gw`kp1?PE$qlr6>~E>7 zTF4lP4}~|)8SfW-i9lZKi&52&lOdHW-&)VTA^mMPjSNyiBcpx!AFk1~Nu|FQyM>MNW(Xq49Z>SSy#0mTyW3>eL5hr7;xpjV&wHw~=$)iWym8&h^h zs9qKw(Z=`@K4fq>0WRmLZ&YRA@X_+(f>R>#nY*+^s&;-h$a*D#l9mtMLgY8xqV?Pj zMX6LL%4Np2ZO$x_Ws$;+xRb?#Bbz2Wl0s>qW<&|}0%{nUy~bd*^76SxC39Asmi_EM z4q6T*kU_z8IPN;LoXMo+(=*12w~)4zN~gy@dY!SWNdfSl5U=6>B2TdPx*mqA3042D zHlPTRJo4s^>CXlKoX@keTafIB(-Prq6MfOSVTT&`WO&Ucy+$3p3g0`L4X%jj(wA^`Q-hYgztMrRi;ODN)=#{13AOTMdA5l{9!Dz_RxEpwhe@l@Hq zGo8dFTa%VPC-z&Q*KYN3?{6DsywIwS#JIVcTaqxpq}hWP^QTGq2}AO(I>2;oa|ih% zdQ#sk`AxgUifv8e+S6qssr9rT7Qg{Y#{MwWZRu*%(+h^OIsVc;vz+bf0_esCR&Aoy zV(3X`4s~h=;Vb0@$9au5=SkbH1-KCf<5R^FP>2W@+8TV_tb#~DLR6k)J(elD{ zY1E~4L|A6|a7?uE_dYJ=;tyy@_OZ*cl}@Bly%zC0Pol!^Iz@qNCa3y>1SNDkogZiE zbu>8x+fE2#$!SoxSRwfCQ}^?vAN15zs@M;Ml2+C;+jf0YZ5@jt}TukDR9Xy%NY3gMg6yfPW8Z0C)Akbm=ikNqs zUpEY5(gSzcc^VcnL*E<3rM{cFUmHF4uG(*)ACpR5C24zmiu|CwEx;=em_MR_j_pz( z+cE3t5vxJ5Ep&Z3yqlYW&Dwv0=>y`8z@rrQsgQB*^OnH@n5S*Z*IIrQ*rNO&DI|A{ zF@3?TiA3w+#+B{txs({@@ZIO)DN{w6CqZ@jF(^(Bx0h||d@LdPyg_eK_q_eVS`}k? zsp%>`bE{G4mPRsAe(J|y$qAz_7F1MWWAY9?{E*@2wA;dc(g9rZ-S%v}Xw4m^8Q*1O zm(tP4^V^v3G3N`3bTokq4<)pq{yGA>kLlM)yl}HTkPEm$1w3v9_ z3E_>~kt7>yZ82Vf=ezxi(fB)<5S|9x&HI6*2B?3J OJ;2n^3f7>HNcs;G9qH5n diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-40@2x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-40@2x.png deleted file mode 100644 index e5c3f49fa3a9e5a98bdc502dd8574c666dd37ff3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2818 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 diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-40@3x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-40@3x.png deleted file mode 100644 index 1de297a0f1533cd63fd8d8558a6d7eaeb4028209..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4449 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 Vu(3h0^WP#u0MRwkL2Ef8{|EV)asmJV diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-60@2x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-60@2x.png deleted file mode 100644 index 1c3d2b1d58abf6be72bece37b89e4f27fa3acca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4449 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 UoaEQte~SnKMAt+It>uXPA8D&{2mk;8 diff --git a/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-60@3x.png b/ios/BT/Images.xcassets/AppIcon.appiconset/bt-ios-icon-60@3x.png deleted file mode 100644 index 27a512272562da9d89d8bec3e70526953847cb88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7046 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 diff --git a/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-29@2x.png b/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-29@2x.png deleted file mode 100644 index 23a1b687e84bde68f8a1c154105cc57a60c639aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2006 zcmV;{2Pyc8P)-D z5W*D>!=WM|_oZ?cC{QSc-gmpZZFkrAzuDbcU`yY$+h~^kk|s0L`QOg>-v7S;m{C19 z{IU~)4`&D-5Cn+^8iGUv4MC!Th9J>ELy%~o;ejC<3O_)l0v>J?hUAV~B*bZ8Zl&SZ zZs*q`Gph#IuGiq|b(>Gy)(IMP@1jFuyaw^H8h$OWu$J9l!~Zg`+29W}nds9`Mq*T& z0bL)_B2=yNd5_)U#JLO`)^0Ark&{*YT57LIj2voUB((@p`L=Viy6T^E7Hr;8hW&>t z(G;i}Tc(-W3Vbv^4&6Iz71^CSZ9z?)1AS5=71^E1uwdR-dC1MLLnGj96w&rc;h38q zkGO|qhp4D>VCSB4?rKHFb~xB78e-H)c{Bojdq=_$t@b%qC9~VdR_n|K3rb7vu-gHn zQH`F=uFn&Zh|$Y3ayzdUGd|13mFtS#Svk=*<}iFQI{^=wB$73?PAp$tgsnTv_^~gL zOOF|0z{oTsq9Wx7->|I|-!a?Tdh9~jt*^ao#4E#$h>Vcz$}8-6XIi$>l~q=Fhli>7 zO1eqrGO-yqIh#LleIyBWb|-#XUxK%%W+T5)e!ynNl;Fow_?}c3L(3mkLu9EAh|lZ zu+8SgZ~H57B}?*z7Hk`&bk_-ub?A5%&SqHoaWoUDzJ0`%TbO7Mrh;y4-B~JX#^a?M z8@Ee#6d$+kF5}0vCaJykLSxyO4*YRYj;ATzBOnT4qDgHup5rqYtfFSVKMOS{P=xjU(AZh>r9TxRzubyS47 zCKj_;>vRcqJFm%a2tvQ0W^phiMB4auwNM0?84ndsryNQsp>UsuDA0a8+vj9U(1eK_ z3f)No-D;Bt4-Z%IKT+7Ml3f^!dpe!`b4Hdmxnp6uE8K`c%T!$L%Bc$q#XU=SN-{3X zd#ZIpn5Y?Y@?;liYnJUyMmc>fEfs&@j_u?zL}Iub!bC545gqzMw5Svg^BL@Q;wSh`s!gch*fx0Q@YXHt77TZLkbPFPmg;| z#{Cc<8;V{jvfb{zJm>X$>3_Ps3^W9^o zs$sD;~?6mjeJm))pFGp6kxDXK(H^-=K%5}L6m22~7B_K+7|8R5QSQQFgNe10R{i)HYFz4e0w2GB9fy%W-D+-_#>ZHySK2c&|VWk$eHTtLOd2BQ>QR=Q?Gq<(WA44gTm^(e5?QLm4Q|DsxteYq+7mvH1vCs%y zV&P!Xa(PxC@211}w_375Ucb#Q)@CVo#mkPYWb4P;D^%0g2kMulPl!YBo|0126fRhr zr$~Uj(dfP|m0HVwEaWK}VGt9i*&oJ3ALV;UD-)dRYI((}JyKsC8phmp_Oy6B|BPJK zEL~NIqo>5ekS{c;fxT`^DORm5_ME4(*5~56iD=dG-WZ!UFdB&oauQDM(f+AX_uLoF zCTigvGx~YenqPlk$lEndL6bZ6Yc`eK;l@d=sd;Ahv|I=#*42Asl<6MZci(JzM|Y6a zmAVjJI!P^5TK|RL7GT5nrjaBl79(HC$h7fRU**1 z?0R_G-?!L4i({)!_ZnkDxhhkEK7WQ8v91;>6%q57Q5%BkSMi<%2j!(bIDjoR& zdwR8CR;(%Ffu7#OtoPb;-Xzbml##~pBS{XwzfGfV-K3c}`Fj?xIvY7G(C_eaLrOfZ z-Id*J`lSrhKfQ(G5iL<0>$ oqJf47>RZ77BG*;+?TjDrFY&w8d*g9nfdBvi07*qoM6N<$f)pIU1poj5 diff --git a/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-29@3x.png b/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-29@3x.png deleted file mode 100644 index b02241f07da73af148e2bfa576cfc171b9be512d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3112 zcmbW3_dgVl1IEwCJS)yRT$epFKQc;$v)36JS!YxB?v5*TaYlBXQ6VHN$Kgt6OGZT* zXC7A+PIk!p_WcXKuh;j7=Xt-L=lKU7EZoYNgH?zX003~9n!s%T((%7yVfyRgAEtx; z0vKlE90>r3YW`PrhL2Sce@nVZTVs7d!zak<-@xFnXQ>AO;Ir6HJQ)E1Hj*h!&pwWB zqXZbnGbK2n>zwO5+~)f&Pu!CQCr-X`Ka7v(5nSYf?LWK$s$4^G{laW^xUD|DuaLgo zEg?{m+Ni3fIbw#Zfk7W=+-noU4pt8DI!JJt^mI<32rVVF@02AR2T3(|3O>ZE9TWa^ z9&{YI$7c%FzC5g}uJ%c)X|#%keO<^OX6mp&a` z1zeQ|dzzSW?QIIPWJRm!nPgu&6prpWeuUJpcWhsrMa2-~Nt{;CUt@ZxfA|OX#GgpL zKki+m^E3IC?ES~Uq!D^@dMRTy%D}gPtz$T%YngCW^Ij!?#7@bm`_DK58Jlt7D^X>1 zl+2zvD8sR3Jve-qGjn3);c1Gz=am04+-712 zXOn|G9IFV!X-e61xv@f{(jEN_EQ9H*A0VklAiGBNO~{@UGy6W!XD`{~X7?kv%K9`p zNvRn?BpMf1@MN3vy z7enrupUt;)r*?PegJlywhHcmIrSXx6gxi9{bO-2kbr1UU_Z4{0F4jEacDRw~ z32*a3x|z&nn_o(|#MqUqbxF6w1WHYBG)0tz9cl(MubACOjmwsEt$wtSI>nlK) zo#;#R^5PA(Y>%C9&WrdA^?lFDgS=2yu|1!0Y>K!Dmj{ZxjrAV(P{!WDR*31;u;`Z4od`v?`U71IX=|<1Gw`kp1?PE$qlr6>~E>7 zTF4lP4}~|)8SfW-i9lZKi&52&lOdHW-&)VTA^mMPjSNyiBcpx!AFk1~Nu|FQyM>MNW(Xq49Z>SSy#0mTyW3>eL5hr7;xpjV&wHw~=$)iWym8&h^h zs9qKw(Z=`@K4fq>0WRmLZ&YRA@X_+(f>R>#nY*+^s&;-h$a*D#l9mtMLgY8xqV?Pj zMX6LL%4Np2ZO$x_Ws$;+xRb?#Bbz2Wl0s>qW<&|}0%{nUy~bd*^76SxC39Asmi_EM z4q6T*kU_z8IPN;LoXMo+(=*12w~)4zN~gy@dY!SWNdfSl5U=6>B2TdPx*mqA3042D zHlPTRJo4s^>CXlKoX@keTafIB(-Prq6MfOSVTT&`WO&Ucy+$3p3g0`L4X%jj(wA^`Q-hYgztMrRi;ODN)=#{13AOTMdA5l{9!Dz_RxEpwhe@l@Hq zGo8dFTa%VPC-z&Q*KYN3?{6DsywIwS#JIVcTaqxpq}hWP^QTGq2}AO(I>2;oa|ih% zdQ#sk`AxgUifv8e+S6qssr9rT7Qg{Y#{MwWZRu*%(+h^OIsVc;vz+bf0_esCR&Aoy zV(3X`4s~h=;Vb0@$9au5=SkbH1-KCf<5R^FP>2W@+8TV_tb#~DLR6k)J(elD{ zY1E~4L|A6|a7?uE_dYJ=;tyy@_OZ*cl}@Bly%zC0Pol!^Iz@qNCa3y>1SNDkogZiE zbu>8x+fE2#$!SoxSRwfCQ}^?vAN15zs@M;Ml2+C;+jf0YZ5@jt}TukDR9Xy%NY3gMg6yfPW8Z0C)Akbm=ikNqs zUpEY5(gSzcc^VcnL*E<3rM{cFUmHF4uG(*)ACpR5C24zmiu|CwEx;=em_MR_j_pz( z+cE3t5vxJ5Ep&Z3yqlYW&Dwv0=>y`8z@rrQsgQB*^OnH@n5S*Z*IIrQ*rNO&DI|A{ zF@3?TiA3w+#+B{txs({@@ZIO)DN{w6CqZ@jF(^(Bx0h||d@LdPyg_eK_q_eVS`}k? zsp%>`bE{G4mPRsAe(J|y$qAz_7F1MWWAY9?{E*@2wA;dc(g9rZ-S%v}Xw4m^8Q*1O zm(tP4^V^v3G3N`3bTokq4<)pq{yGA>kLlM)yl}HTkPEm$1w3v9_ z3E_>~kt7>yZ82Vf=ezxi(fB)<5S|9x&HI6*2B?3J OJ;2n^3f7>HNcs;G9qH5n diff --git a/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-40@2x.png b/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-40@2x.png deleted file mode 100644 index e5c3f49fa3a9e5a98bdc502dd8574c666dd37ff3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2818 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 diff --git a/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-40@3x.png b/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-40@3x.png deleted file mode 100644 index 1de297a0f1533cd63fd8d8558a6d7eaeb4028209..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4449 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 Vu(3h0^WP#u0MRwkL2Ef8{|EV)asmJV diff --git a/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-60@2x.png b/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-60@2x.png deleted file mode 100644 index 1c3d2b1d58abf6be72bece37b89e4f27fa3acca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4449 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 UoaEQte~SnKMAt+It>uXPA8D&{2mk;8 diff --git a/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-60@3x.png b/ios/BT/Images.xcassets/AppIconDev.appiconset/bt-ios-icon-60@3x.png deleted file mode 100644 index 27a512272562da9d89d8bec3e70526953847cb88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7046 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 diff --git a/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-29@2x.png b/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-29@2x.png deleted file mode 100644 index 23a1b687e84bde68f8a1c154105cc57a60c639aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2006 zcmV;{2Pyc8P)-D z5W*D>!=WM|_oZ?cC{QSc-gmpZZFkrAzuDbcU`yY$+h~^kk|s0L`QOg>-v7S;m{C19 z{IU~)4`&D-5Cn+^8iGUv4MC!Th9J>ELy%~o;ejC<3O_)l0v>J?hUAV~B*bZ8Zl&SZ zZs*q`Gph#IuGiq|b(>Gy)(IMP@1jFuyaw^H8h$OWu$J9l!~Zg`+29W}nds9`Mq*T& z0bL)_B2=yNd5_)U#JLO`)^0Ark&{*YT57LIj2voUB((@p`L=Viy6T^E7Hr;8hW&>t z(G;i}Tc(-W3Vbv^4&6Iz71^CSZ9z?)1AS5=71^E1uwdR-dC1MLLnGj96w&rc;h38q zkGO|qhp4D>VCSB4?rKHFb~xB78e-H)c{Bojdq=_$t@b%qC9~VdR_n|K3rb7vu-gHn zQH`F=uFn&Zh|$Y3ayzdUGd|13mFtS#Svk=*<}iFQI{^=wB$73?PAp$tgsnTv_^~gL zOOF|0z{oTsq9Wx7->|I|-!a?Tdh9~jt*^ao#4E#$h>Vcz$}8-6XIi$>l~q=Fhli>7 zO1eqrGO-yqIh#LleIyBWb|-#XUxK%%W+T5)e!ynNl;Fow_?}c3L(3mkLu9EAh|lZ zu+8SgZ~H57B}?*z7Hk`&bk_-ub?A5%&SqHoaWoUDzJ0`%TbO7Mrh;y4-B~JX#^a?M z8@Ee#6d$+kF5}0vCaJykLSxyO4*YRYj;ATzBOnT4qDgHup5rqYtfFSVKMOS{P=xjU(AZh>r9TxRzubyS47 zCKj_;>vRcqJFm%a2tvQ0W^phiMB4auwNM0?84ndsryNQsp>UsuDA0a8+vj9U(1eK_ z3f)No-D;Bt4-Z%IKT+7Ml3f^!dpe!`b4Hdmxnp6uE8K`c%T!$L%Bc$q#XU=SN-{3X zd#ZIpn5Y?Y@?;liYnJUyMmc>fEfs&@j_u?zL}Iub!bC545gqzMw5Svg^BL@Q;wSh`s!gch*fx0Q@YXHt77TZLkbPFPmg;| z#{Cc<8;V{jvfb{zJm>X$>3_Ps3^W9^o zs$sD;~?6mjeJm))pFGp6kxDXK(H^-=K%5}L6m22~7B_K+7|8R5QSQQFgNe10R{i)HYFz4e0w2GB9fy%W-D+-_#>ZHySK2c&|VWk$eHTtLOd2BQ>QR=Q?Gq<(WA44gTm^(e5?QLm4Q|DsxteYq+7mvH1vCs%y zV&P!Xa(PxC@211}w_375Ucb#Q)@CVo#mkPYWb4P;D^%0g2kMulPl!YBo|0126fRhr zr$~Uj(dfP|m0HVwEaWK}VGt9i*&oJ3ALV;UD-)dRYI((}JyKsC8phmp_Oy6B|BPJK zEL~NIqo>5ekS{c;fxT`^DORm5_ME4(*5~56iD=dG-WZ!UFdB&oauQDM(f+AX_uLoF zCTigvGx~YenqPlk$lEndL6bZ6Yc`eK;l@d=sd;Ahv|I=#*42Asl<6MZci(JzM|Y6a zmAVjJI!P^5TK|RL7GT5nrjaBl79(HC$h7fRU**1 z?0R_G-?!L4i({)!_ZnkDxhhkEK7WQ8v91;>6%q57Q5%BkSMi<%2j!(bIDjoR& zdwR8CR;(%Ffu7#OtoPb;-Xzbml##~pBS{XwzfGfV-K3c}`Fj?xIvY7G(C_eaLrOfZ z-Id*J`lSrhKfQ(G5iL<0>$ oqJf47>RZ77BG*;+?TjDrFY&w8d*g9nfdBvi07*qoM6N<$f)pIU1poj5 diff --git a/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-29@3x.png b/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-29@3x.png deleted file mode 100644 index b02241f07da73af148e2bfa576cfc171b9be512d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3112 zcmbW3_dgVl1IEwCJS)yRT$epFKQc;$v)36JS!YxB?v5*TaYlBXQ6VHN$Kgt6OGZT* zXC7A+PIk!p_WcXKuh;j7=Xt-L=lKU7EZoYNgH?zX003~9n!s%T((%7yVfyRgAEtx; z0vKlE90>r3YW`PrhL2Sce@nVZTVs7d!zak<-@xFnXQ>AO;Ir6HJQ)E1Hj*h!&pwWB zqXZbnGbK2n>zwO5+~)f&Pu!CQCr-X`Ka7v(5nSYf?LWK$s$4^G{laW^xUD|DuaLgo zEg?{m+Ni3fIbw#Zfk7W=+-noU4pt8DI!JJt^mI<32rVVF@02AR2T3(|3O>ZE9TWa^ z9&{YI$7c%FzC5g}uJ%c)X|#%keO<^OX6mp&a` z1zeQ|dzzSW?QIIPWJRm!nPgu&6prpWeuUJpcWhsrMa2-~Nt{;CUt@ZxfA|OX#GgpL zKki+m^E3IC?ES~Uq!D^@dMRTy%D}gPtz$T%YngCW^Ij!?#7@bm`_DK58Jlt7D^X>1 zl+2zvD8sR3Jve-qGjn3);c1Gz=am04+-712 zXOn|G9IFV!X-e61xv@f{(jEN_EQ9H*A0VklAiGBNO~{@UGy6W!XD`{~X7?kv%K9`p zNvRn?BpMf1@MN3vy z7enrupUt;)r*?PegJlywhHcmIrSXx6gxi9{bO-2kbr1UU_Z4{0F4jEacDRw~ z32*a3x|z&nn_o(|#MqUqbxF6w1WHYBG)0tz9cl(MubACOjmwsEt$wtSI>nlK) zo#;#R^5PA(Y>%C9&WrdA^?lFDgS=2yu|1!0Y>K!Dmj{ZxjrAV(P{!WDR*31;u;`Z4od`v?`U71IX=|<1Gw`kp1?PE$qlr6>~E>7 zTF4lP4}~|)8SfW-i9lZKi&52&lOdHW-&)VTA^mMPjSNyiBcpx!AFk1~Nu|FQyM>MNW(Xq49Z>SSy#0mTyW3>eL5hr7;xpjV&wHw~=$)iWym8&h^h zs9qKw(Z=`@K4fq>0WRmLZ&YRA@X_+(f>R>#nY*+^s&;-h$a*D#l9mtMLgY8xqV?Pj zMX6LL%4Np2ZO$x_Ws$;+xRb?#Bbz2Wl0s>qW<&|}0%{nUy~bd*^76SxC39Asmi_EM z4q6T*kU_z8IPN;LoXMo+(=*12w~)4zN~gy@dY!SWNdfSl5U=6>B2TdPx*mqA3042D zHlPTRJo4s^>CXlKoX@keTafIB(-Prq6MfOSVTT&`WO&Ucy+$3p3g0`L4X%jj(wA^`Q-hYgztMrRi;ODN)=#{13AOTMdA5l{9!Dz_RxEpwhe@l@Hq zGo8dFTa%VPC-z&Q*KYN3?{6DsywIwS#JIVcTaqxpq}hWP^QTGq2}AO(I>2;oa|ih% zdQ#sk`AxgUifv8e+S6qssr9rT7Qg{Y#{MwWZRu*%(+h^OIsVc;vz+bf0_esCR&Aoy zV(3X`4s~h=;Vb0@$9au5=SkbH1-KCf<5R^FP>2W@+8TV_tb#~DLR6k)J(elD{ zY1E~4L|A6|a7?uE_dYJ=;tyy@_OZ*cl}@Bly%zC0Pol!^Iz@qNCa3y>1SNDkogZiE zbu>8x+fE2#$!SoxSRwfCQ}^?vAN15zs@M;Ml2+C;+jf0YZ5@jt}TukDR9Xy%NY3gMg6yfPW8Z0C)Akbm=ikNqs zUpEY5(gSzcc^VcnL*E<3rM{cFUmHF4uG(*)ACpR5C24zmiu|CwEx;=em_MR_j_pz( z+cE3t5vxJ5Ep&Z3yqlYW&Dwv0=>y`8z@rrQsgQB*^OnH@n5S*Z*IIrQ*rNO&DI|A{ zF@3?TiA3w+#+B{txs({@@ZIO)DN{w6CqZ@jF(^(Bx0h||d@LdPyg_eK_q_eVS`}k? zsp%>`bE{G4mPRsAe(J|y$qAz_7F1MWWAY9?{E*@2wA;dc(g9rZ-S%v}Xw4m^8Q*1O zm(tP4^V^v3G3N`3bTokq4<)pq{yGA>kLlM)yl}HTkPEm$1w3v9_ z3E_>~kt7>yZ82Vf=ezxi(fB)<5S|9x&HI6*2B?3J OJ;2n^3f7>HNcs;G9qH5n diff --git a/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-40@2x.png b/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-40@2x.png deleted file mode 100644 index e5c3f49fa3a9e5a98bdc502dd8574c666dd37ff3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2818 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 diff --git a/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-40@3x.png b/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-40@3x.png deleted file mode 100644 index 1de297a0f1533cd63fd8d8558a6d7eaeb4028209..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4449 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 Vu(3h0^WP#u0MRwkL2Ef8{|EV)asmJV diff --git a/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-60@2x.png b/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-60@2x.png deleted file mode 100644 index 1c3d2b1d58abf6be72bece37b89e4f27fa3acca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4449 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 UoaEQte~SnKMAt+It>uXPA8D&{2mk;8 diff --git a/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-60@3x.png b/ios/BT/Images.xcassets/AppIconStaging.appiconset/bt-ios-icon-60@3x.png deleted file mode 100644 index 27a512272562da9d89d8bec3e70526953847cb88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7046 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 M_f7w;F>s0fAEvG2(EtDd diff --git a/ios/BT/Images.xcassets/BgImage.imageset/bgImage@2x.png b/ios/BT/Images.xcassets/BgImage.imageset/bgImage@2x.png deleted file mode 100644 index b1249883762d5880d3bdd4637b3bfe2569910d34..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53051 zcmeFY`9G9j_&A;fSPMsR?=PdNTr9S|0-2C@P_2BW1ZLpBa|FMn+P&vS}3O>-d zs_Ur(Kn>#DkpnFN3}7GJQ#XNAtsh&bdLP*E!z;u4ex?-{N}8k>o_WBgcWH7s>P{nF z7rN&Ufis4J@{UJV1oQN_9!TC{UA#1{%);uhT`-D>3w}?}C?)=Cr|$y6hxW=-nq-YL z35IKCC56pV4y-hxmW|ZLoh&Rb6LW z)pQtEEt2r(+^5&Jr@ItN?BHG%ImA?ZK=c9_n#ZS3;F>DL~%_r~8htG)!^RS%itJE6>O3}${g326Qs z(tPRu93Lle`>2>8{)hU>O*A#C;rj$e>E*I|%Y`p{r)#2Z;Vi?jb4A^$!Is_wU~ebE zvep#eI_vg`xvkKbQzz)PxpC`bgToNtMa0aXVBf%ee^PYuw$z-^iS3?5JL3^<^4j`x zXT*V@Ld%gK;4OfrP9Cw2+n&F2`a|ghd6(xB`;K=PoMCQl<65`bYm(vYNHuz@yHoQ7 zo5UZ=^(%uv<1|g|Ol5ea`0-^sTYL7CzROxAh*YG|elQj(qH*k0mdGrfO<)?)XYda0 z(>;}Z+tcGX^}|M%c87Ff_75=2CU>elx6i3M#j}zDdsrDB8Zk81BK50h(NXdP z+Q1lX{ux4i2!$|R(=apXyAD0S`=X8hcaq1!vGpx6$hFuVS^SZ2Fiv&dOC~#2=+Irj zfwa*lbOI%9j!$iS+L~(|}f``5c$@7R-tWIMKxR$50baZw8iNx}S zO$IV%c46&66VA1c)63Hm*7xZ7d~yl-$YorJg!hfArQhtp6wdB;<~4b_ThjcQ!dq3w z?oE#J&Kc^g?%aLAUqwUF=#J1VK`i%Z_--t>u9x!<_U&2uMtOsp>}%|QTF!*jj6YfW zAa=`aeT$W7K3KY>xalT+>*z_6T9pR#bUcBH_uZKg)vAwVUvIz999YxA`K)Y>@cOxF zz7;w1mFrkUkFoL}HGOD&%F8GT?pYfxPHcWy3(a9cL7#E?x5deH;t_ly;jGOywB|W> z&5%FSv-OUC7>F{egL;3lQEko+Rn_|84i{4fYaMNxbEsYz+wc4t8kie8-eefZplBLU z(sU$Ia&!$89=j)>hOy?hm74QwjgiPzU3l|nA=B6_B zH%VDSX2;6Nr>RS}l!*{^m^o+a2=5 zBp*W5gT`||m_I7=I6Nejh$KQYKG+hzGB_|)@uehLjtKDEyp zzn7{qF`ZqxM0-nBE@{QdUPV)wIL&ja9T|?zgUftT+!)Mlp2AG1`Us26g{kVHt5pN>5}4eo$Qv6J~D|^@&d=DSUA;@ zyolnf#Q}%pIinjalFZ;mS@)I~(wUc-3mnq38a#4&_ucItPj8^FA2W2YF ze<2Ptj(3L4SV!UU>Ye>Gu z_;!wBVgYe$Slw+ezM>w@D;}pt(fd*Z84~M=;arJL7d!O{uQSbt=JHNiz@wBINfv+sd3aD%l8o6 ztBPe`1OjCN$P229tIO8zUd8`hlF4JoadI#PH03?R8elTtcp*}{x!G|z7f#fGx^7)V z>R8yRc82e+% zt++u^zREsQML(LWnbgwQm_xZ4T`VI{PB^+tyA9W%qs);(vNp%^x3UTPw|zWg?>I52 zW&c7+PhKnWCB`Gjt#$q=>9+<@S3$XkFDurNybYg!#our`NoH9qu}$f5;LfKsp=a$- z{{_IBc1Qem`}FyV=%k(Zr@M%Vzy8+l6S;%|%#4Xm(-#&%Y^L67_m_OzpY!##GMzcr zGiEkT>~w&Snb)TW*6w2vE7SR4`p%qWpYqDf(zH?W|Np}Dma;W)r1o;;(l4rtb+6+< zPu&$hS-d_P2uu`bmu<@qLs>g9T?-7Szu@*#i~tW-&-Cwtc2>z3yC-PUOki|qkC(#e z$ZQ}`67R^avJq=w`gheY(obPcs;k20CK~p_!5DB$xlH~d4(swPSQY5REctlE-|=Dq z`l}-p%4M@QFHT$EYUtug<}hDY599^1L`~;8yDBijFWd3jtaGr4qU54}8ZyV{(nuS7 zNYuUsW8J{6ZdgsS!0hSMhfnH@e7f@fGUC{FbHN4`_B*x=IE37_Y||P_?0% zZKHgdIx$5b4a6G;#OE_qs@k^NvktT~v!6_{g;4(*?~Kn<9bqM0Lgp0$ zEj@LiRSDU$Utf``r~!5h=Iw4h=>wtObJ=c0ZK!HBsl$iB2Cl|}Kvt*yi8DJvTyBVd zn{)-u|FVM#7^P(?Mj_@x&Dk%rNfT>5oD4F}3!Lz_Rc zhX7gnQB{ym%(XL$09N+Qk;B=|oBtFVSqaRVQ1Jw?#eig>-7cDv;yAwA+iM7_D6AC$ zs&}&>e_iz*MUx0^pX6;sgw_j;R8O1#iO+;YAyQuSAUFkURKgVoiX?~iX~>X7$ro0bw`nEYGC^2?qfcJV8({j?G9v)LEWAd z)kzx-+4?Ir@h=+5Z1IAA-N*sSok|D5Q|Y&j{_=3139IKr#9@MIBi`loQ!6#GPRm)? zZQKIedRuUbaJ^pV`JZ3%W!uWaH@2>zIlb`Re9UDD=hT3x$68ScT}qy6U!A!hxz?rEw$Pm6!z~D>W zFOYM7b4N}7?&=g9HDGvsaYw0x{P8dsC5wF(mvmm*hTneU2~-Zw02uma%VIz9kQG%s z@R@|!EggOemT((T(<}s3Gi`nH9#B_owMuP1p*&iPp@i_abQ%LuE(rrK>lP439& z6S5hEOj6mWUwitT7sz`p2C=A9>VTn6G3lK){EC2DXm<+v0faJV%|2aF9TBGV9Wi+R z5S(@VZBo0=^G0|S?%-&zv2n0o0L|au74pP;vWE%4@~%PTKOJuwg{!I}>xItAs-Sx| zUdxlDRp=<7ZnL0*$S#p`#nYSe=xIzS+t~GLgm#AaousLoTmZmpGJVRIuiP;BECm0f4u^i}o`G4Fo0& ze=m{owB%bA{JdJ$k9=jqh!;S9$MWZyLdTe^0b6v`}?ux@FKHL<;swc%ePK; zHR`{GM`5#fk9x}?XE(?7RdPhe zl+FMh`Jd)TSG|nF5&M}iQ3G3LCsKG-r%gI95LNVY;n|#H z30POPsYWPGTaz$v2$esW05xmgvP0VtsJSx)$UC=h6D}@_F0Z8qurid2wv3C@rjt~_ zN-fx4ExB!r?Y~ER2h5@E{wx_4(;}n@08g6Sw?er_$q)!RSbvaDncJzr0o)J%t1{Ih z9jkYSOPp%)Bbm%h_vH@)?9MHNe2)9KVDld${1#xt#e+qY2M1l{TV#e!BWG0=zF)?* zS0i@Zl8r!NSu={nS@t+jC*7k}m7n9hzU#@!y^4)s(r_j0j-*>E@0zlNv zJ+;B9f#p-V_mHgsH=IpO`FJ$NZDf$*QxQx9L=j*0?41er4cTgVT~26IiSpjsWLlq^w-T7?FiHw4H&X4q&-aR{g5G91Pswt^ZNY-pz&rpau2Yi2t%*EwzVH&iuefSc?KK<%OxvG=jsy|%nwSuIC^0Si*h#^-2Eq;Ummb2j4e@b% zCg<(?O~gV`<|yG>Yf+oChjMX8mS!K;Fp|Ehk(!NV)6Bzi6_&Aod!0+nOCebx!^z}x z=Pws#DXH<@iR6d5vEj!R@2lwe#~ZV;`rVD6j?x;0LaO9i822y7#Y0y88e{{qt)RPO z*$G0*hN>XCmIDzl{fZGgrZhzCLtV0PXGHCZ+UJT1Uj|a}IenT#qn%}Ix)AmdLI({j z?_%(h()oC%YZpj96?t}NSIPsQf4MtqK}+fVt$XazW!QKX%PA7)xUAX_Z)V&p+f!?x zf!Vv>E@WO_+M`!uc_wQ*L>oZ#VqY1@`}#2aIapLl>N(Ea_J3lw+_Pu!A~^3+wBq&^ z%u>{fJ>M_|_TmrQi^tZ_qx4y4xK=3c_JQC{Ir6h0Jkl)W+&Te+-mKEvr_36bF2(3cv^p5wk zh4xA@UICv|RhYNaYRZ(LQk}dCB6gkV>1|1#SzA4%o;acavbojxBdi^oa~H_OtMJJ8x7b@pU}M#p(Qc$M*r!>s5_yY-fpBJ{avmIZ7s`yV|oN@5%o6&=bwQ zvzu56cjZOsNP8pcCaJ`rp-pXVhW!_$@A-JakmH05-u)XV-XpJ<23GP}x)8*d$s6KE zdV`E<8sjL)K?GwfN7>E+?J1!ai(g)!?JNS1Rt@CCR%phs-%-mwUib;CX`)Zr~ zbe2YI5ce%4fk{!9x@b*#?TZ4|jC_8lG)Ev>sammoQ^u6HyrP-pF#}K^_D~A->Kd55aODGATC1HFhfWcE?-QDn#hjK2bp4j-qkfGRXojLj~4eZ);3TmH* z9SqV)5pa}r^=pE@pf{eOfSryYv5C|5Z}TcJiY*3xPGPZ#*c`qFko=5=`;BIQlrR`H zo!zXTO&%q=H!`dPBZDErdU)Le1_N`j`0=kj2fnc?^YQapXQUt2q-(S1im^_+r_-kb*tw1`0ePMrfXGd*IK~3iuW;>WG;)D;2WY>4I zF`3_pElvjM0#97EyUF;Tby?XOkaH)~cJ99M^ts50JAL1tn!>XTpv8VZUhy?B-aOo} zb{5=orTBuX!H!_hp0E6-XF>iB*ur(&D8%pdw31pu_lc1t382@et71r-l}ZJb^P=d& zbSWnLaJ-=lfMy7HRdmZ{>2!_Ca))nA#}f2KKb??Ds(ZW#@_6Z@yk|zVS*P4SGM_l| zbXDNpO5{3otcKc|)Y22ZrE8L1s;9O6!$z!`YKbw$Z8R_s2V?tjCTg|xVc9Ib@a;27 zfj7|phDky_3omf@>>>8ZF$y7xO2x|UT1OA%B2N}!K;4U5zQ3spgjhWHi810#wJC9! zgN%IYoDy1)Zm?orKOCnj$zHg!md6i^ui{&AVm%*!4PD0xf-k)^$ltIxGS-Z>mEIp& z2$P^`x@XscdUb9mcEa5o;1k$t{cB+G>e@gUEyuRb&|z8gW4eEjFl1arV;ht3oMAUyF)#nrhk9${Gd zbfL?(3l|a#3beYffW1JQ*a-14eK8+$LzR9Ei2pm7-HTdQr-AvTpP>wu$eo4_aj=T3 z`IQ@h_?wcT8|vFEpCBW&t+S^%zM~bjd=-=okglrKiB+cEUsb9`&;|h$x(W$0zWJH) zWc5?Y4skjQTDXrO+F!5r{nsmce->j`Yrm+lPf*#r21oG^&RK_MP^mCD7dQ;kar@jv z*VVckKWeQ8O*3qBjN-St+N(^z={3!k#*DMDqy^HGfXF*-Z5ooZ8QyvM_n}+Wq)y{( zM}PnwGrx~l>r&{%6pTR(yc4OSLS6!@IsKL1c?tWOb#)K4VP`ja>t=g=w%GupD~^tv zx`KX__cgg@kecFVvGNot5;6%Y=~7qVF4^=hf3+F{9r*=Hb1$~#yX_U#(080^sS;sZX1gVBvt;k&e;XovS> z%Fhxg+?Xb~tGxdPTJCGZJZ_2A2s{>}`@MqUIH*LQ|Gl!do+hoR;=45DtRx{yZ|~Cf zY5?C@58e@of^ZK?g^2Up_V3P*rY+jGY2dd#{OLDkT>i2Fw{Uu0%lJ}j%0}F|v$MlpwCETXOeFUDsUqi- zwkr>9MLRKPVh&=+Lj?{IH@SCbCI0n(bGWp;?nGou?4^dY$m~lZr91YIEqf=%=}uIL zWL15Y`IwkQj*T44=%8raxIx#o?K|mX6>&Ah?&QX(aIkXj6 zNV9WAIb0h0{vv?29Md*4fX+RqG6A9FO`z(A)Z&xG_(MP78KS*DDj;6E(3@6gD&wFZ&Znrk@<%ptU~q3#F@b{z%j zLGvyG9TE376MuwyWj%n%DhHQsh3A-MiU?%abz6Pxtd;rgC{#}ktQ&dcB#1Q1SG&LE z<#o@wO$_T+HdD?Op_DG@4*r`ahhGp`nq_)kHtZ{)!M9z%6ej6!|ml z&~2ixo$;_se9Oggfv3iC0>;M z>+E2-jokZ3vX!5|DblSW9VOX)bp-s-sg_|udPb~fSkamZr9Btwwukjtiw^apmx;Sn z{|x}@&AF{M$WxIP#-3Krj`V@YhByC>@z~Lg&L&aCIU28nnO_a~>;i99VjOv!~}y6!i1m zZx2cU;KuFCMafbuvq)vnAh@p+wCOG#5Y=)||5fFy`D&zV&&u%2WGTH3teXiU^vP{y ztGJ+S&;ihW0YRVrT%;dC0$h?u-p>Uc(e^a=3`y2c@qolnxYw+FnvDMSh`!^c-|wII zgI?z4z&=~tZ^LOxA^6OIz})%!xR#hT>bkXxZIHjT7AoEta?oo|y~YPRsh;2Bqn`%a zFMYo>f5+32(T54`-|hcXva;jkBJ$08a!n^G;!&X>8O4yat&$y2j=26MbR#R|MG)wl z&PoYsX2rpZK`+Q@&OJK3qeAF&8vw9A<&+hKaXkoDuZeCo?~0XbIJ-GC$d^CUsr#?8 z0&0kp;3yo~&MS&J4H|YYVKO@d5K_Em|#%mjXWXdig zzIL1-2EGPZY4=5k`VdtWUOti5Ez$q%lr~j(x{^8{{(j>*mI*qu07Z14izH^h@?B$( zP}>1gZNrp>bt1mQ=40Wq4^PwDwsxmDk)bnmm&6CTxEVu&;gN@4AIulYpLYLsVUwx> z4|_F^`Rh?NXC1ro_kEkPb%Y)3l0)Rl=_)#T^(ZZXrJDYr&UC^6NnQWoPOHwh@I$XR zHcuYag_lU9IW4{CS#N4+sVmPUbxF=kdS!ZcB z_HbnZ5pWRN_IP!$G9tI_jok~8NP_)=&Ca*LjEV0OHgN~N0U3^3xrc@xGhzf`vg z9e9-px+;GE4}_+qfW9zT!j5*=IrfMuU&*upS3VPv*_x3fU^%a;_l2k#$y#SR*6y|Z zxs`r}v%PAY%)zN}dxhB?$sRGLk*>m^gj>pBTc;wfT$l$LGnEx_Ci6s2?|j~pB(^V$ zGG(f#$dlc@7QESGQ>ECA)%B43Te_q0#t7HE?cQI9h&Jv&p`{*n6R!;aHddELBQ?VA zjFgX12Uc%wgPa>D{<)?#^NQcZ)W?tre>L&_r*`|^#an$7!|8c;tt3M%n3dpt=Ulay zmhRm67D`sGBL48NT(&-K2%&nPYxW_?B!Bz6@*2yuZs6gU0F_%I`=atV%YS_d4u5iv zj4RJMDLp;WE!na;nVRER5lnMG`TXv3o-T!9>k}oo3@FOHmr z(H$<0A!m6VB9xeScV<8J(@mI;&WA7m^AhKmP?-e(CInU&IL{78e?b+?O5ye8g9jL_lb^E(r>376q&;BcsVLg`vZC}F#xxdTC zl9R$DA}%vCY-%VPzNORM+s|;=!h3vMs39pZxW%yj8W-M;IdPl}YgOgz&M-RFwNCa> z3a|#>rFRj#0j;L+b{G^vUewW044D0BYH#bnvoFUVCRMi+yJ^9^drZF@>oDHe$UO>Q zX;x|#7yr|Aev8bsS-dxVqUIK_uPZ81Fi)~2jT-IY?d<*L725JqMTW@+m>o_HrGOvs zlUBrY^2xjTW7|&UAVY=?tZ1+WzgSmDKCJ+$%%H;Uh4qX@a{KV*cDK?5xjnaHE`)M^ z-p0W4;9h|S9PxaV(v~sHHEr-aUl~(Pzk&5>iY1Nw!~BhPw#oc#Rvy~_dg(qo4ybQs z<+Kqs*yNh^{r3qu9*s)IGHnESS|GVaVuij^R^egc9i}hieO``7eIF~BU--=LU&u1M z_3SAWfsF{OS1K}fi#KB#%U4Mhm4U^=m3Odw-P?SZ@gMt^ChK}pr~Tguw%`dopV#W@ z?!k~7)VssPBK{C<@X{a#wajTO*rd^A6G!eQgrG%R?apoPe5_{J*fU2YaMHR}gbjw+ zTDCVg8x1Oq%!Rx}0Q}3PY!K_~Uy;a3R%X3M`YqfMCS>SiuCuFab{8f6-v%N3{e@C} z3oj&@?W(dZkQjdr)!0eDhLsOC2+Lil@-4o5*K$2!kTSpQdjf9yE|#sT278WEJ44r6 zkw`n{t#U#xGBKq2FZea@uk(oIve~e1a^=N;Lgy4A8*zU)AqCwI20C>Sv%3DWkvQ^) z_}}lB_bcR1k@Cq$zu=#FelHMX;khGw*b}$+?UM#Cg52K1aVh(ao+t@ipUs+@;-?FC z>+y&SNGtb+W2M=@rt|q+--2I<`>97fQ?i)8DLyU0Uxb~tg1W9Q4d;k*MsQBg^z&Jr^#E@$Fr*Pz5I*BE-1t##NWDlR~dGli6-4M9hJ ze%y=mJF!*eVbf@l3ok*|a|sCaQ;y3qYoMsN0B)*$dojsExRil8kZm5*u4E&_i z=jSf;D&Vn91i%OqS;?Y-9 zr3ERhFv1_V)VWO|x}f7VwVVpyg4_F@=eD8p(TeNptvjFi_Cbn(DAq9aNS5X={5TQV zst=st2Pvz1cg>$pTob0{QAJ>A*F9B+DUOBU5D9W@9U=B|P=eDH}J0uvdEdr%Ap5((PfSI0W9_@}b2 z-v_f|zIHz7(K)UdhYjEEko8gc?k=(JyqMH|K^Q96$?H?yc3ayXGSOcILrnnWF$cLVQ=bA_1w=@SM))8oKK-@u{jp?QJ@H z{%hci@nnX|m-_tlBWS$HnNU^c^>V#C!LeW#z(o84LofZddlcy?tn8GR0i?e4_!ZT{ zUu9^e^_`I0PGGk#Os^K|L2j)+g~+#NAI`-uM(nS9t?S>)5kTYab~j!MUk6C_v!{Gl zPd?Az@i zvf=cpictL^qgY7eAoljZ{2OFQh?g~^+U1{PcvmlEz9$XL%Ki91^5S+%XA*5IAuBnD1hZ;n?nR%&&Z zkZ#pg1o=7*Mx=JS@+B48mD~V$+Po?L5wv*dWAp9`Je719XF%2LQ*@}`cXm_y4Lbsu zb}|h|#*^h+G)Xy)7pC1mtT?MGbAd=5TF`o^l0u}2tT7*!ZGrh^`UNY_5W>}OX$Lm= zRTEN<87TeYR;6l)^iR8h7%-qmHmzu5W*8;A4hoFX;%FvRVzR8EKAFDZKSs5k8^Oi7Ri}FoQ7<*p>qI8d2 zUqV&#$^zrEpmXt<1k@dH0QuoV+*0g#suGMIN~$KDZeI`TD*jPU!ggi2tOtF(qIMI= zy4Eo8_23%I?9;VJ)9P{I!$O)%j-HQdWWJ4E0?(yUr>-We9ASr>rrCPnZP#gFgOqejAMZGE%idOt&wdL9*Ll@Qfa4Ya|wlvF(OLs{4 zPu+4kUu+PdP>7a%Jf~>NGCgUDAIv?R+%rXh@Pt=t3QP8xQ*^#KJ^A1TiFCZ~bN&q0 zv~)|E!NSO|X)8x^)z8(l`>F|Ll8P`KG8ZaQ|DzHlEFbe|By$RavkD!();d^wk_S2~ z{f+^W%gQ;_${C*OsabLeYG^M8zgFfQtM?Ee-5+>I1Kadoyg&rOc+^w{GfEqdNPoR; z7_CTtqpud5Y$BYU7d|3=j~SibDcTqB;JiN zVg#|yw&*~8uYwZI4$7_k$uG#Vtkc#m;i0dQmixJ5q1$+ zMYNE6biRb*K$9+*f9vTJUJTQit_%X~&#}z*aN>^k3a-y%-2V};HX8_ihWwe*5}?DA9V}Z>RSiN!HwJIUv0vR%VlE-w#JwSW21lUfZ@jl zDm?_>`HBQD08Bh{#J9kOgaEZk9_)xnbm;kRe9t@<>^Co@n>uS9UM1Iwaas3(0Q;i6 zSf`#)49LA+G~FMq+)n^IS&!%4>c4^>zsKm0vhHWQ z5H+Eyc?GY}O9E=jlhVej(Uj-+>?k`m{}p`Fle#L~&jb35CP?#MIbT3`*$Ieh{vp@@ zNKCH(4~2V{`2kclN(aHvRq}7dPZu9Fa+`(!akIA|MSA_tHoZI-IAVveTp zCC9~q=D0{!guub{H<36aaRY5|2aXa*SeF!IELX4$JO$NO?sBmMZqMBvEJl0FD1zv% z&Yhu--V#7f_-i#WKtY&IKx+RUw90~~maQr6!z%`$zWW;P=Wguf9-YG(a<>IEHZfjA z?@t3Y^N97kngz`=H&m73<_xTOSEO&wDQ%&@eKp`fv-Lg|^M(0vY2p&?kMDOm7u~fR zXvm3w7~(~i!Z-N()Eem*cMc_1#AAZR`^L+=myaV3?_}g3Us&LP|JdF+kZzOg+ePfS z(}Z8;|8B?po61!pQawpy34Zc9BhKUOCj0IE2E_RS4c9_!PIU0JwtoImz93T(^hwzD z4>puLlbA?5^R~8m%5b;F4w=hy&gadUh=|$+rT*e7&KOm!&(IcM)uSCN7TP{RgPz<| z_KVZP)wAPF^#*tH$jhg=c2{|%X!%&(=y(QIc#zCn{@=;IL0k(sIg;4c#X?_$$o&Om z;Cq`5zhqToliyFTs4{scAkHY)8?)WQt=X}OA#?O3%dVm`L}q(ZQaH#hqy|mJdxpt! zh3b(kW(BnY#%czpyYBg;H>}SQ1K&kNme2iO|1qAZDrp^b_~b0P+g|n3ld6g0ZN8?F zMgOWaER#`*lGT1o&t7N+)bcFIw43iYta-+3CmO2oO!E%!T~Iic&$cxiYGKnbhcU^% zpxFL1x4`CBODn(-)9DZ-3(_XIZ;CB&S3 z;dt{Ho-&BUA@n(pH{U*liubxr45qvbeYD{jACeRmVQx66_@t;0kvsUw(gsNOW!hWS z*O_&Zva09%Mr-_MD5b}kJ-DQ1uhrRQMtQ2#yv4a z(waILv4xOEb|rIuDvWPFhO9Y6jJmL<|25T$;5)O>xAH9RmPT0XZ~dA17gk*2tl+#0T+;$k*4$FRQCr$jWam~6 z-iwH-^n0@i7x>!s{K-$dNS(eU57^fqSJ7Mc4TpXnr0eU(vvhU&wYEy1jV-oPCU+ad zM)r0u*p+8ji1v-sFKgTi?)+q! z5^nrCA-M+y1>Hcw!V}Vhkk0d*W^0pq&gB5c!#dM*dfYC_#1<7eT;AHHQ4l>B!@)H% zP}EV$8z+$U$k(TUg)r~nl{uM9h=@mvmTA%PY16Rw6 zz5An95i&Bjs$kENvFYN(YGVE4$5HVcpWbC21wReNVdyuTUbgMi^BcJ%Ep7mEc(#ef z;Kk}2czsZ)|6M$>+kg3&Q>t>XUhP96!;D-GQJ+eVq+L zOyo~Usi=#ediLhM%;P9Z5;^S_UAMY^j7Ahc)8S;D6m{?gfyLFMN|Q*xj!BEYp90aL z>Wqa&9GRt(*M6CH!l{x~f&_EEY!0jI-|o;^`|02Hn#$}u#~`9}#D@%y_aWWm`Qaj! zAXt8$5{qF`9sSm%N0dx14DY(qJh2hs)I>=>8ua?EZvJn;fc z)8E*jTjpSpyP9vXVMK+sE4a^D4|}(6(plKWWahJOw{nX@szQ*nj*ffM^RAc669?U- z{Y(q~V3%SU-nYzU`%*DwmrKyDbdOgX(a_}Oj-8!_LIQe?jXh`(GEs$|x;%*KefCXA ztdJjB)`rtt+*#V|@FzT8j%j&r(kxQ8UJPD4GEMFd(eb_mysvI9O;q=eGQ6*-Jr(s@cAk7-$}7 z016i1S6-MjyI_9srDH$!Pvys4?IFIwuCD+=9BW7Wvux9(_ zR<~qJMCFXRQQg zzYNck1Bhj2XYfBlzQ+#G!q)iR>uenWnMb?17KlK%@_KT3?UQ5Ev}|!eTxycX%GF0ueo+RJzGObxm)n!^ZMc? z1FxZb93HyIH|XB*POS=2vYFy8kfXcxUbJc8QE};3_{0J4M7@r}+fvUBdobqO?a?wD zguj9c5#cNO70otrBbNN<1Qs?uPSzI=XduoW5+druo6DQhm1GL0&%;K8@E@D{BN9h=z)MBPzLL#Itcj_ga#bUx)~g%`wYY!h03bD`W;fflTK?65b(HihzTbsJU` zK@;!d)wr&cGHzKAw7#vFc(z+I7%e!+ETOU|<^SMowQEwcR8rvUuKd8)(u0N6 zp)=s+0MjY=GWrd79ZGjA(Rt=NlsHGXK?Bs-7SHeJKwFR#{~m#ifk`=<-I~jobB#7H3O@=W~iY{6{hD|0D%i z@Xw3x7gy*Pe^Klo`dt<(98D3bFK;yV*HFaXJ2*<-){m(N*DZyh0?ymXi=ez-u+2h? zKtzw1wX_Oa$8D?sRJ};*>dTO%jXR)@(-%d(H)WfpQU&L^PX!aw1iDNba=4SQDm-{T zYH2&$Ug>IG>Ov`_-D|!N`HGX7HcRn*;#X<{_=#@e1|Zmy&h(a&)>1Na-P@k+%XnX3 zFpin*46lcO!cOVibn}8B*Dag0eX`>8UY$2NgKNiaB&96$X$-}&+rX|N2cL+|9pJox zf8GejsNe=EElGxQIE~S8d9R47(5I&~?rEjVSB;fL{NG2u6LN(z znVx*~IXu3kZKH(R#cqDNxDo{y2U8!+5bx@g4F$dLrk1`QteEdG6e6+0q8-)B$Jdq+ zdI*EOhu4~l$1y7~-zlR#X=`gHCyysk7~x{z+xY#Z(h@&GH_$jYVCaFf4m5aiYD=H z>4@Hamh1Ac{3<6TShmWp=uW4y{)6*zk4t0FsY;M#?l)MPzit3`mVA>b zC;7q%)fOJ@9QqA_+1Vn!`MzeE-_^;&$s{}krdc|o9wABWb>!Sxc;`#kLCqd-iueta z$PW9X)Ia|9>L_@5Mf$D6owq-zc=^{nA-6QS&H5q726Trrci#&zm5wQ(IpZHU^g?g> z?OYP9_|z5z1Q{z?nzk#(kJP7`cpkR|JQj*Cs^ZP#UQCF9F;%$>mX005?$+zYQ4fzZ z8Rn28V4_ky8aVyOC~qi27zw|4S$D}WW!)1}Vp20V1FAST69cOvM=@>xJbGWBR)Fb> z7*7%fv}ng@M}O-@!Ge4OZ%C4pGm+wgNtcR`Ib!!A(vlyYHMm{U{)*X)hGgpH-5rW>KqsD zsnPOiBbwrI%hb&gyk}xn5ixR&8hVKZUySQMw_U($?J`mIXVz}npO(lu4GC(hiyXT4 zlytpg9y~bGZ&< z)~`{4E|r`QZm+3I(j5C46jAtmPeuya(Jf+LB%PmEN6wfshs07&;L`Hap}IEs3aKv%)7H5%qki^UsJi|N|$h( z8pf2Fct7q6%8WVHr(?2lGyvD&L#oFW_Po!GWwqj^v5H$vrM*u#@;a4;@?uUFny%b8 z`h>R9r!F;af&tv+@+At71B)H&mY#}A-s9zwMl;j(c}qT4WcSw)QVT6?`J;2)6jqk* z5gxeeue!43I64Q;CPVi*ipO!mbCalVNfI(Od~cNR!&cXZ{})Yf9thR<|BqKHEuu}L z3~kn!S7YDHo_!laOkwP6c4JJXC@RX9gzRRO8re*PNd{+y;FZjN7bv-Bywz?a?(zL>E$p(FQWhC%i{Wm6GHivmwV6yx2QTqD9`eksy>T<) z35IHO;|SwnhBS4BFQApFRHCH25u=AD@B!2uydOaYO1Kn4&mldTf+2T4V6 z2#G$TdQzBAz;zAax|eNAT{41?y7J?mk0|;nAVmocNKq|&KEI3aQm2DbN37_!ffDEj}#2-&VB6RYgsxcv3 z>eo_IB6`nckZ>Lwb2#7jTjNC)>$I0{Roi;5QqUUCW6{ zV=&oV^=x;Vy1mWSnTWNkh=pH?ov_WDefT`E=kLig7 zKn?p5Z~tM064&JsOv>i|HQ#FvVg*D{u(`+bxg)|x=WbmCnXT_6;8@HUUy4j)*Ympp zk)iX)bu+Ju>ee9@Q4dU;`-9ET4B%;8T@%tG%J$LGoFIA*{2o~6@E#aNu?PLuV(gYo z*e&IvRtPn=NA@D9Ej!=tf_kqN;&-OSfzh&XNRxZYOc4({Bi}c(U*j<`Nzy#`=S#*9 zLCYU68F7Q2$=UtwYN=vF2-IML0*IzGLTC4B?e{vzbl&6I1#AIE1MI#bHFbGwP?UsL z&B14$q)uIbx(DOD4Tp=c2MWm7v?4xeXlnGzY#rOoWqunb*W{w!A;Z{JckgH(+U=pK zWpi&CL>g*o$k4QxugtJV)xVp=H!N@pH}#tA0LwTXA8&$sO>N00M^bX_sP}p zmj^f^F-*tZE~Oa^?7-`Us1vK;*1rhHHmh{>qaw8P^>;~hG zzzqeSzx80;S00A}{)zB!tmwjO2NVpyEAVWvzmYZx9kD+5ZO?S|?0i8rn~TJWrnk|M z)CbUQzs{^bKBNe7=6nXp_T_T&!Nhbm=e|+oa(2tiuL<+Oq$Soe2<*Jy-{-V$^(Nv@ zOmp=8FQVl7;mF&Z%-p>Sa>+96!-dg+jV%0j7+oZ0%`sB#S8MbB%rKeTIkL4rZ96_{ zv%F+eYCpWXvUQL0imLj7oAKkynW^dZlA8vbIF(ztFUwton5Q^)80IvzEhXiS=Hrk& z;>=x3Cyt}mdNh4dB(g%`3DRk+gF~$3EJr4DY;B+0I3oB8sTjy*3&7ibPYI&!M z!i>o_oSm+jN%YrN|FHuk!q--6A}q>LBs#wE3PHop!0St+=&Spe1fC(Pb7$EV%Uf5h zD+uXVrA5`QM2&OU&EG&8yD~S^Nyz~Tm>pB4Zyd%9{>h20f6v6Bkz#e7`$hOa zW}V1CsDK7}lZyw}CNjeW!vyj)zA-@})I`ygYtkqD+Gve<6=0my3`C7KJ&4D87AN?QR;R@Islyb$whf$VOx;H!Hp@=a)!o zhlMu|T}_k4&^VQ_T{HRyf|OR(Qrg@lK{ecP zwR|dXQ!+H8Sv9|&8@-Q!PK5vMYc|~1Vp+mG!FOr}kbhaUZp~da*qG|@)u3fO3D%r( zjGB7&&|Or}oyMezmqxJ&lpwLhO6|tW1jK*$Mr47q3E23I66qrxzqxW3G$Uy+HO)&)u?Dp6LRmD1!>Vb>A^x%fZp#)~2;8e+;ki?xR zs|e*fovj+qa1#Dw%f^$GGBaSVe=$4o8+A40?2;7nwo=z_7f>p_%iz~@>|a?CMfC6Y zpUuT@O&b78op%{kyxV!%n zgvT0%`#lqJhKQnz;8CDQe7N=NPa_U*^~cQJr7u=$WT8|L15flDA{SZz)Vg|~=6-BR zWHMN-7k1xm0`(!D4n}T&26pOaFy@jPps`i^0o7d+c@KY)L}P^5(IQT)SE1OQG)|k7U*=`5SKCgtz3w|uotD25{gOrKZQ*_X&7a6hUb+|Hg-%{4{uWQ!Cp0BWrhZ z;!gAK=y0SVsvba_otbs@l-JaM&OQw&bbIA!Q*F>}58)bgv9^j2XL9w*w)WJBLWG!}E_{Irl9tBXZLu?=Xtr>(C!e$h| zv)HhyldxJ1zwvx0gT#!W`6+xu)CfP|D9WVE9%g)YuWgzIA!L%0j_%5oR!v%vKSeOU zM;`bU`eK0nrC;k8n^M{OWvqKor;}vNv&{Z&-puS1xs=D^aDK9Ei3J!Ca++CDrlos- z1P>@&J?S10_V2$Ae#Ii1@g2`gfh9Z$>oXzG9VV-a%V)zb!M zo_%eVWxu)F%qbT^h0}8`v2)n005Z5%>B{GT4Pb}xuRN&9&e7aOk3l{d;CSE@3&I}( zNxlvjx0q6eWb*HbWUVXneXlWwn`F6KrCXmXap*(%O3E$MQ{*+e;A{c%$5-!7&x|}1 zgzBBT53~ONr9nDfB|+A*hq6{+>`gw~){XV;2H9%!{j30a)z6jEM|b-7*X21@MdL>| zGqt=)cXXI1{svXKLftkC!!iMC1?P(GSjy#7%SlBs>9E7LjVyoLpQ?u9#a8JdP1!mb zA68sBvqeTa2q9J0A`B_*lQn*W^AfhBPp=!Bj|}_(T>)l+bLE%GDB{r2t5Kv(`iw&tz7{g_^cUxy;&c8AIMr5tSKt1oeBSDcXol-MXC; z6sBod%$2s+kDOmCqBvC+jQ2v}o=H;763*Z4?+u+(H{$pT(ryqRW6D~)`i1fOmo@d| zbiXFlu!c-PzCIWDa%0XrxNtd#%AEr$j}|4rS@$0dlfReKs&;E`N+M{-;xGfFo5m7| zK~HORo*{CUND(Snqst$*RyZrK&HQxl5*Q+^xeO_lUdg>86uA-)X1?aEL$ln4Tn2{* z9H*zD*IgV}s^tFIIW||gt^4hns?EJ~((Qppziib37ymlbGQrteAf-UBIJo8`3n_UT z`vdW?_wfvGsrKC6DaVPD7+O{~PX<7KAoCw|yP)gHSQ4v_;Vy5`Erqr?Joz3lL@n|2 zv(A=D%ox6JpR$J%OV{x3K=m2_B{!D?+smBou^KQwYKJQob3sNRsMKO2pMTaG&v-rB z@O{c)W>|~E+%eYLal)oISL-Tp0CT|^kI>N#zul4kuv3P&*75wsO{P*y*$_^tNSwTN zi5F8yzRD|iOzvmPt^5*}Ciig-n`d;?`X+2m*E1=>?=YiUPm384y#dW@5q-KXj#^&Z z#AhXz`9^|S1xDVksW)YYF7omVPYiB|xu-!HLn1|r-4^K={~mjUkSpAN4o|!?f})d< zMFgEvJ?K`QfhXs8No!8S%Rs_E)#d2X%}WFFu`OF8FlWhZnS?jc29*K-VK~ktP0c|H z-Pm4X`_CIt)PF|rDp_nT)b->{pte`lZ9)qK5SB$U4Zl1m2XY$JTLxYy1g#>#YRx6- zf~#QuOWR*+5+^pwrT9Tu3#ZQM+Zt*Yixma)TF&Ha6q7GxRy?OmIk?pyrvxou=lzv1 z%SP>tGpj2~rJ8**z2Z{s^@;HDJKZ;-6?y=^e$Cijz)S9}Lh^RFYGpO21@GveXtGt? z^@d*YjBXJ>0Fpbw*~mqaRtL&Bgm|->r2PlGKIhh?o--f~6i+~2t-ToJRo}t-&@c94 zSd$}d$aTvp7svJdOn*6a;~1&Gx7|6@(QQc7+b)XO&Q0RnN0&r>uTPDSqbn~eww5)h zg`!tM^E9$GXXTQ8WZq0L zqHBgWLIOtwVR>nnhzoD-)_$J~>82o@FGHi=+X{CsWsir#ilr2fSXNA6`kmf9L}VQ4 z@_vUvC-u3QCmBgjR^wY#x_Lu_K3fUcYF^N*Yw3M5a*V>576A!3YcWtb-`8J$l6FZ* zJJ4U;bvAF$R67XDfY2}&ts~2t@}IhSWx)q(j8gZErX1P6ws)#eiqjNzp0z@_tx%f{ zGkr0XF|5k3>b~x>j#gHA4I=lL5GO{9nM6WWDwZsR7@O&(6+dbBQO3&@w{~_OO%W;@dlQjA~{Aw_|D7O}Ce}c30G+=1I{7!AMG8?+G%J zNo+Vy$-_b!%AZzR!*5X+VoA*V`pAjpzKRd_L1Xh@)2HgZ;(+c3uWo(;tN&^$?)7H= z&*lddAk$fko*T2jSl)0Tv}zS}wb9^`m7wo?bOSIh7C|1y(8^~wBb7tfEtgyz6}#ni z>~SqP;?;ASJ1vWKCecetR7Uv4H4sfmx5dFB=IG&W|^nJvt3r)`_} zI|0XUM0S5qZ}1p_*8WJXYhc+e<+UWrKnB+?r;S0T8uY|QHP|7?%Vkk41CWQ)dFiY8 zy;T;~d+G+8l3nazex_+YG4}nqUK#~bbc3?f0zlRTkV$#^J1cmWKs7|S4ln@L9PI_t zph2&nj4E1E&Mtq7ux&aUiy*eh1XX3XDrOQB+rHb) zz|2t8%8*(;vF06Z6;wQ*il?NlU+ZS!$AR5JJn`4T9w5cq2~Mk-WN|yMxc69|E31F1 z{NkmIsWdqlTsO~)yXTkscG3r1mNx=MQp#!wbYQb@OwAiCa^>x*Wl4XFUa?_uK?cJ~QyC#ql4Cq*GDyBe@8 zT3aYW=*H*5HNR?C*7iZ|ofhDi}An+|a6#b;Rv7i;JN4TOf9)h7Jc0F%@?`?qPQNyfO zn69jeLQN+0z3Yagtj$H(ZPU`&Td8|rA|H@3)nN@8gO0-N_5d14bwRdw#Vb5fF`yON zxA3LRIz+PH2FruP{5f50>S&!{c8?c*p1II9^b7V?Dc7R4| z6Ez%#V%W$23FfdFA|6is6o`3_vl}jo?S#|9OOO`b1?RHkv!L>y9JQj3@p9dXbbY94r~rI5xcKp2-6$ z!>AYB%8sqEES_4`}c!8Jph!1|>Cao&;#fG2-+_AoUz{vK_sG}f@0$Yvn z4oq}q8go^?{8*jE?ALER6$TQoGMTdelKI})DviIpNwcBq+$ z@llh^gk>Uw=AdP-c}lI6{MmsPeFsV#h7Ar)RCHf7L2eW_m8-)qzuNxT^;5l(7IUz0 z-dSs<{I0Kubj^lic^DgQg~H8tDo!EG8X)!0n+MmS$ssyv6qCyXkSU&{GiBq>nf3;q z*|A1Q7%%M5C;w)-szfPUIr8Nx1eSjaG^73z6nf)d5Tu;xbo>Qa zR1hQaDQ)}+teY;n`f~+6^3qO-_j}?4R$7p9KB^qA;GB$cCAU*IE&RW6P63Vx24E~b~ZeJ;w=71dy3dDvR1K+hw3QdLPy;8gCq~(TvWh>?fQEq}tE=GpU9jv`H+5>~gf8%~L_Tbcj%IA9vxXw8k|4(Ey+@DA9Yh^)ujX$HOv zwHIthLw(aDi(V-f@A`1;TEo&qCpKv_to&6<0EMkyAXKxFSo~R`9CG>1&n5kx4ZCo@ z^CG(g1!X<5vSFxXEl%`q&7r-?o^?Q>a2f`sxBw>JzP2BfUw;?RV$dW8+n=u#FomW$ zyan^lbfX^->a!3eznd>pvSfaSg1a!FFG<>38(HA3oxBu~W*MaQ%Sv)KBUbt)tp1Yt~Y)sf>S3SZ5bWs zh*jbzC<)9Sn#Qj%{-jg!U_z!?H~?Jb_UCtm&q!SPh}^2w%mBW;{4~7Q?RwDPA!9H# z%+sPH6O1Zf;AaSg1t<-PaZQa;+mLm`<|Pomg$mc;Xkgo@c47hkZ|g7x08dlU*U zXCl^dJrgfs--~mV*kw4ZsB2bl4-N5=BDFV3V%N9X%*GrJpEVm?W>56foI`0FVVQ}E zUVcRQJkTBnvJ z0+tl*>}9QuyhnSJTFhPlqm1gPN!P4bEXr4)w%}_^TAh>Fe#@JRxSIw28n$Qr9YcYL zax3%5uo}%oZ9?iCfzH>8FPx^-|CE2hhU6h$P%b_orDMM+?ls5L$;uGM4!$su_8 zlYMe-NDYx)ptWyho36!9c|>)t;+AYslS$^rxI8ltTz=qg-HtXruY;kbhByF#D_s3U zvAwAtWy#>I?f^j_(RNx|h^Spk^j}tgT6Kb)ZUDlb`_aK|C7E@AaEBXIR_4qoJrEvL zi4bi0HCfvey=4#kUlbrjy+3n#D35o(+vb;S3wjAxaGgz zrovYVhzL(yuL0`!7hgNr9?_ou-EkUop=+-TLa&ck))=$!Zud;f)3=#Yc~3ZVK+yDD zUP~{A*`-BqEi=B_==3Ta|2NX`e*%Ko;VoD#>OB;Kr;z=Xkkn(q(!(yr`lb5tH7O8FFK~hB(zX&x z=c4aBFNt!9FZO9yUmxwAV(jhkH2ct`?PL^<7Ut1_um>Ir#TyF((F@CXGvn76G6A0r zI+EwYR`mmO9t!0Pi;dWT>4c;rR)OvAB1QDVE>!jGeqwByoCT?Cc)Zh(w)x9blTh z`aQrZ8M2CmTG!tqcoY7GOV>%QIcY`4GIF^3o~aTKRo*XBI(9_2ZvVH(b9W0KnO$1? zFADoNt*s5+$fcHeApyd-_%c279&G#wu8cc+v!7b=IAbvCeB>gDwTJ3!`b54USW>76 z>kpK2#JFg>Fy?HMT*H!`kMU1s(d=UCrZDrsL_QMdbtlsQD`p=4mb?El+ymUwh&c9I zF|#t7a?=N=?1}EZkm(7pzFREpCR}gTWt%w?L^{_p{!Kpg_@6YdW+15Rg^tBIsl1mY z!t0OI80e9VTd6{9Bsb=t4X9&kML9Potf*KpE&e}{s7i3K!4~v0|vh*L#Tc5b1v%_e*KZH*qX>BT&khwxkG)o ziN{lcNn`$SzT7Y%>M4zPpb~M%sD7|ByPaUIvVIn}at0aYWiOy!b$97?1JOz0jS(Uf zNtsK@-HXycd9(eO$)gf6BXncGZ~8+=EVsG7amQ)b%vj9azZ8MvG%Y6RR!cZA=Tct= z-EBrY`%pU+O1wvwXq;sa*@w@;jd*SG1KL)wzAE~FX%Fs;C-Qf!@g7kUX9)_>zvvhl|m1oGtS-$1CM2IK@s~PdxU>H99H7(l4oG3C!_U`@vF=B0N_)n*Ei_3OFa@UER!^lIXNWx@{Zs#9j1F!N62h(WgCw)psW@IpY`if5_2c_A zn&7+wq=g^G^Gx5s^!QE5*Q{J8Fl{GM8{*w6lG~h3jt?y0pCwR!y|(LldTcsTYFpLq zZy`mH}cv_n|Yi96@&yN@~h zUIPu=YKL`!_lGW})w<|L_*q9J5t4yIduzX>6sw-US$IN@HzF-hL$-LUt^tP1OtzVt z&_6N0J+(l6lqzh0d_ty*!~!&Gb+sO_W59n8P ztVbFTHtra$GWyg0tgTYelZ~OoMVmBK%?)l@s36hxA{2&DD!lqmQLrAmHaGHL_DxM9 z&o{*(_srHV^OBCw-q7}B4g{)!`l;*nVY8h<5p)w<;+S}77BFP(Je<_4$;a3T%?Gp9& z-N|$GO?@cdvT8Oh6ChkTY&~J=-LQJeg7Pt>+M7Siop^Dk=RRU$>wi-<8blNw*5Gw^ zv6F1D3tIK}YGZ9|_3+d~sxnK5U50z{J9d>PXyFo@sUu=`ldcGpv^*9NUYPa~7N?}R zZ;PF4%cj^UycaSmYXoa5Yoz&^QXbKorN(sYZ!}};VHMG3QnkyM++vpNUimkbrJtbs zmYiuvTX&7t6l@(xvK8bjpe881)#AL=`h`jU#x#ieYdNY5x1A(K4)t9w>MU`p)N1h!<8-_{Ys(yIH+nuO z<5OAU>ws339_L)tZXSML+qupEP+m6DFhIjKFI%{yT>^rjNK>(ON=8&)$?Q*34d(!= zbio-dI-j#tU4m0l;~-hg&g6?qzAK0TEOW zR)WWMqf^usCCQMg@|S7JWoXrAgTP8e1bFjv5oZ@WOztPOM(gZ8vCF9pC1^;Iq49L{ znAN)IL>}c^Y17b#c8%2gK@C0G(;dm1s}Fw%by#JzGgrK{m|qp^^>qvE3I( zxH}rEKkI_X;KB&rw+xNo{LGEeWKN*=*#P(_&R)0!Fal|Z%j_l-S8YO*NXC~dY>I$I za%los?C^Se!G?`#qcE75u;hJ4?OOaTFTQ_~%Em{;6-7Z-~r1Rk%#EP)qb`^o@LmcZgcJuh~5ufi6_8%09AXG%s%Z+A+*=jHW;)Dcrs>>Dl z$DvDrjc4(onPbgS-81tkta_04BpxKkF(yPrtkrhZQP+uHwH&T{1+ z`sJj(J^OExNc|X4Ph_ic@x$*d*Joh>^6uq#dP7Yt#_mpBw*x$?X=>sQIoLc_xC!3a z1JL&Pe%$?nVk6V|%D?Mr+Y{)@o-4*MWWq@1M%d*XFHKwZSDJ ze{vJlaHUcFZfqa78^+v!F5YyrLvPHThf=RS{l9%F4FhtJ2^Lk@=gTFs&u0RgI}Lr^ zrmJ7@Nz3Z5TW5$`yXZ;}^PD$wjiynFg68g-^sul&9~Z2NVHW&>K!(p1xyB3>V~wNo zf6KZ^D&Dr|vSEu4YrzR~(dKoo9FQW^D>l+r;|sF)%WxVu^-lA$>C`AA!c(Uv+T83} zF9e`T*Qsm&wzdf%2Zx97l@nTzXK2(qxF_}^$Fyc{VCMVrYZB7!iQtdF^EBctvFH76 z4T7%K2E&MM678Bqw+)y$_VF)B>J@EfNF*M;+}6Pry-TPe=d!|KKb=vVSFu*lD8Te< zH3pLq6XJ!fdqjT#G^%{s%dQH&6u=&5*r+}ea?xS}iN89sOWC7t*7>p9C#dA&J;h9m zyMYb%an<)~@j4jx(HN^}w+7f$Y-voHfoestQU%@D#-S zLlxP(7&4OBzb7ZM0yKVgpOum0o2Il@#?b$Ep*EH$JlLhga_!obe?kY#A&NZ~=@Bz^PS>&bUxF9fl&kTZTbk7eWN%}3DLnOW-Alf^`iM?A zseiao6M3qvF}~;8+H;w(6p(T3ldiM4iLN`QS15?27P8Vy!2JrZ=PU)ZXmB>lrAZg^ z=s#07qV`c+@c}cGoQCiF<2{ayb}e1idn>=Ru=Ph0!Y+BHS}@tPT7K?PE0;oR=T3OKFe>^`E zlTP3gykRzmJZCK9#LY`4XzVt%iGQv)d3{9`I|Pe}dC#iktOoCXBJ;5Yl8mM&KwM~G zyR9Vcxn6BX{pF%bQNAfjt*r;gY#Gd?v~UnPJ@hMnZ`Nb91><6!oo{I5lF~NbyV$iy zK1ymvglU#XJLfaP*>fIJ%o}FQ0dcXrB4RlgWj!Yd3&RgVQyMuE!wbVP^mWu$D*z=7 z)jBBe5Hde@vxl?J+0Y{0^8+W$Y$D0lV8>df?t>(6wbU!Ju%tH^`rByD!E>x<*}`BE za}wKZF+9j4?G390Nj+*K85<^u`3z{fyxsxe?HR`@SB^ppw3_d_9NSLGjWYEtv8n%Q zQH-Pnz*tfC&&7_OkR05Ze}sD#e;%GV%TB~^MJ?)J;gVEeeC2rL%z3Y4bzTCOMo13` zB>yZP+$3WKM>xu;J!|!-cFVt}P$-PIn?XCE}7M?1Hv>nH!dZ|0}6n~$3=5q)0?i;gpZ$`ug z@Wk?~!*Ln#pwgjS)#GVKMVUBxxg)sMZAP$*w^d|d_){skgSyHEa3fM2ZB?a8ZwVN_ zT2tXKBUk0&tfdBB1Jl?BU#)^lc$n(9LbrX~`LimXB90cl&_K754>K)FS{Y6bZli=E zxY*u=Yw)X>FiiT17t2wTl6Q#~@_yEVxrJ%T+81tQnz;9b3D%q=8`Spg=W;|~k}~oE zu45N6L*xB3U&1&5jN%lFOxA0L7P9H<_v*4A6<*?`X!uJIb&{BiIW|`kt3SeSRve25 zumLHa8M__e=!FMJ8oc&LnVL|IB7B_h$+-S(Wy>DWMT=e7y z#fWm3ntHu_9a7lcsu#%d;80=!_=E3T`vzKiX0yUlc@sh7!;i8_yB?Fh(0qmO`h0Y>aw^6& zuA0o8Eph`}swz;{f=f)i452ul_|r(57K4Op*%-|PfDfb4X-JBLYwO->gWR~14%+4+ zi5pxVGwsVa^j}`=dkJgxihpot{&*|+nn{`rWDVn;8FWG_-c2G6Qzk_nzHpS092U@H zmnu2^$S!m_*$Pm8S8%JqP{JE}JNg*_E}*IW)@7R$l=TStR3rO&Oa3p&TyF3U#7U|v z_btmOor&v@3<)}kTnVF@tjzwF#oIT$ukeR_e_n4S zp_6cF;U^n>j4>`%qb^@k0x|j`+b0125oA1~lc)+%*K$@kdqw3APWgIEB=+hY(HJOk z)=|Q%M?(6zm{;iE+Qr(T0XT29#nte<`PM&NL(68n^T}ZB6?DNdDrbHfPye)v*xwO1 z=e;BkK;0tgU9g=^1ZSu7z$(_!ZZ*#rD6-OPKj{Za{gce1Jgj^z4dkbcf)ol31VT3^ z!0IiG*;TN}r%INXrAm_X_T+CUeenQhnmqFJL8kv!y>-0~y&=BkC<9;^(wnaWQ0q=b zZG@di*4r$=FKilycR*^yek$m70^%7RVD;kZKJQZ!-yW;k z>W-*vEYS>CYd~vHH6>wZoy`f^dx@)vbJ~d0L^Lj<6DZ<9ho0?D-J9eCyfoecshU5* zd`3Ygs zJn-;nnnfu0A6`NjX0-B7odyT##{F6K1$t~)R_BJz^ueY(b=k;2V6L^DuRei%XQvii zl%dmkQp;x6M?72F0@qKVDu}>zoEcp!*(bIoATCbI>U8F>f&^Yf5}bN?Zm;P+yLi+5 zt_CnxS6kq=8X=y1+$RA?EBO#Vzp8a8w`ciW;2GEXR2$$0s-xcvH=Bw9^&yTY?-D9L z7O!4C^GU%aMpCO2QdzI&`*L;58v=Z7)7YX*b40!%sL%*QJwQpRk5jpkB~>10CBEH= z4IY@)1c4iR?w!2*JbyLEKfvqPAZ2QOqJqS%*Gc+wRvn+}l-i@W~y9|CA$kXqW#*D znX5XwRbO~{XA0ltgb?AS#ChG8PQCn-dXJZa#?LZqG4)AnHC2CRgC-;~WaDS_nwlOA zF8L4p7l-jAaU&9{6|GSzWJA{EPLic*sF{>n6w5&o}6K<6_nsY`R6_(X_-M z)mM_S-S&LP2X3xAINj%z63qxv3ce}F>yA;qI^To|(yvr}w2Q^)@F_oTGUh^$YE^?{ zomoUTZJDPy;I52+jgZZeQvCew)szx5!=k8l&$aEfF|l*rH9dMb9;VG@8{t!Ry$41J zp0zKeJeD2Y#*7BXalXeq!b!BCfk0cN6WU`c1qnKftUjFbVhFdyt!>DgCi@HIF;+zp(mXiBOFYbSY4| z1;8_7C@~(j6Zx0|_|e&cp}sH~2-z{a;pg?b#I8Zv6x!IRYqmmX=pR=;dr+~n@71@#tg1k4TDS~5-c#V zt_HV$1V2S4FzCSPLC*KzSb5ZeI3{Y-+k(Lowz`LG3L5v;e_H2dw>OggV6{I+oyudG z5s_16SD?H%aymNs-*RQWIS`hf`$n~P?`^v=iz2Y#&Z9S`8rQKI;ZmZ;ZF~QWO6}FN z55zlL>A_eLl~40jdU3DaNNdddQSAv}`Z_Nq#)Lnf=4TRz&mK^IMxfGbmhP*MYBrW+ zQ(JO?Zm{Dt|H(67+ZScx_lW2x^Fl*GvGsxq`L0S()%b5`xl&U z{;S5Uipp%A)uI`C+^>7`R~t*%4G}}wreMQCZU))+BPz#ik83t;_do9|wMmyC#|#lg zU9Q$~Rw??2!*wttcQ5m%$3c^}a9mSTrwa7*t{uW5fdbES@m49{Z#Ed~V1U&byQ$sz zf#y1xJBUM}f62bpLbjoX7r%zCwFB8AmD*z7BC*%1 zX6_1wQr9iHIv*0|2lx+Uh!@03gdC%c+=((#^aBLg1j6=j03`@}FW8MG{j%}U=i!gB z;syFxpW(e1UX{h!sZAA@z<-BWl~yb?a_YD=1n7aZB3Y>?veG%Pgz~2UlL~!Xe-0pb z`zMQU<;30F`DXL}$)<9*$0kH|vQK588(!+5?=Cz=+`nRf>aK8Sac0QU)=j7 zMoe1|Jz{HF`UQArnRwn0 zYwyI5{O?D@fxW&a+VnT1x$9)yIn)zHsfxDOIrNBMu}%M93&t_vchVyu9~h(qV@30%6v3l&qKug2&q;3 zhXof#Oq&)o{C~RE4z?kyZj-zXR{;_#`?<$rbHbiLsYa)@CB?g>B7s}BF3(gRQ{;aJ+K>2cJTYDq5}6YIp=*7Nc01+Y<@v8gVbDn(={NsL z*-q#6Jq!Qz@>$pi_eO_<6BVWg<;SQPs{G5pyz(yx%!WG(>XcAZO9XoQDYJ&FjqxFR zfZ1^lkaX@CMcy*XJo}YLx!UP6jW#6cnR}1x(kb-N;csdd9@=WA=aa_gF+=rUrh$AO zJ(E{fo*!K`i{M_Ba83ex^ZdN(ms?*!1UUdD(sO0L)0UHT6!T` zJAB=*vOeDS2;-RMvOv#j5k~FQS*}sZ=B~uP!P1P#!(2>T9txmewAEe@(Y+C#&_KRK z)Jo=+F*&u5(sk8PJhfy=VfW-nQ z#ocU2h&6MiC62w1D8HM>`lmgXR$jb?7}Y`85GU`W3tO73{P@aW9|8u|Nj)Z4 zGpiTNy>hiS!0Eb0!uVhgz-0*GCwi610yE+h3%rqEkS6Mi!}D<5%oE`vVagd||FT|1 ziMHCQ(IVgzw|_DAMS^0OU<{Sj`dKGf46g($;#;y}nk70@DVRH60op(_T#gbAo}v-prFpKjLNA z>1(EAo!*E)9XSaeJ(zEvK&96_XzUj4T+sujN0V9)V3X?f7 z@(AIh%o&Z=ykW)dnoHV6rY;(flxg?sG(yB0&BZX(TI*-@(!$OKMCiSgQNcfj^D$v8 za;>FXw6i`?%FGX4b}Lk z3RZI}`i=sPEr<+IT73*`jVGk7c=Y|w)!JdjSeH8F&BpL=`6Av`+J>L(R< zYSb@k!4l{LUuHoU#C9H~z$Q;OhGQH&Te&c0IM;VUNV}TMn+CSm}6~ z&_*IiRd8ydj^Z0Ckpg-^^s_{YRQl&$y8qnWh^y3~poc5X#izHionX*(g3!ih7pn`*D|7}Xgv1w0GI zexUCB^{s-%?-!wAO+WU!eyNH~mB$zMSOH9&tpZB@5sF{gMJ;46*H_MAP2P3v_58^- zk+IMwsMt&H&cVQSZIz2|#3O$`Mp(YWI6tEo42o8^_NP-^>DoHmS3h-Z%E}nOFum2^ z=R5EztD+1gpB$yPEKR*aY7FwXNb~O*E6j14X0|ptYz%)6U5^^{bL-+f48` z4*&G+i*42G!;Gh$k2rV3qUC>ZLkl(zI;F?i^)EL_Cz)SuW^9gTPMAE7k9VNCCM}yg z{5o;bu!XM;`T7pDQT9-@Z~etn;BdUbW8fG;Klhv)fi?1;8F3V{Tl`v-1`sd0(pdQt z2QgpfPaZbVk&*i>CMCKKZ{Z-T)ti4>ACc8Nyt3vRj}Sa{s&EE46z0ylF5wtWz?Dx_ z!iYs{w*&{s7!!04f-1P_rwO4?4l5d8Vtq`GQfgxzy(JM6MTD6tVVl~UI!}^sUV`1{ z{e0qY$VBm1P;AMqYx$J3iqcfyr1k?}vH_AQ`O>II>OTTVy3Z{m;@1+m$_}YJUH{xp zpYQW~fwRg1ho74YIK!8J@oUYbFjeg9u)-lVvRE|~#r~Zs%U%B^3!uePezdoao~8!E z!jDGuUlWp@CelulKP#wBHe72YUHKM8q*TC<0w>oU5b4K8_EmA`=-ZRpL5IV}-(*uJ z&rH#-@PUH5o$w{_qoC4@vjzq&`=?9x>7H7S!oTISybJPL_gZ>RAYODo@V%tgaN}rw zwX(E9Vz1(12BLaWI4lK!JNFmf&5rT4B<0?wRI_G;w~IBWNrU`ZO$LGk#7iFP-0i%s zCghd*#EGBpQNrs(me0rZb%duzc;y7a7_#h-c=L>YKoc zyH{`S0qo8*X^KM72>L_oP>nyZ_(w$-G8+%P*?bhC+{QYXKadYU+MTgCi&$>i|B^=Z z9L4^Pnv*mR*wtDigi`*qcO z`2e<%adhjx(HI~JsjhY@UB~?(h7B%D`1?)ixH&i{}5d(5HXzb1pR}b2)Ox?z_di1N@@N zI(jz0Z;J9)JwAnbk#MiqM$YxPaDn0Gh(O!~Xzh5-z$*4P*7 zT1@e(M74LOirSjMf|`t6py8Pr|7-6_P>uE2$QQIU%DLFK`JaW}Xvs3`mCwgk7b%K9 zC@)*Wf@tp{>pwZlCx!g$e)y)%wjLRToXZn^in#ePaTot}E)9T3mtto`dZ{IrPjc-R zdictYM)L2ni~+LBBik00n68O)4~3hSeHHhrZu)-@`LA9-ko4|e>7KjR_SglpVQp?` ziY`X{t+V}WaJPcg;u_mK*}Pl<{wBAyJHQcY3hoAtFFhT)PRUUddR+n>>kwaIy!Ptb zV$ndW-&1D#IFx_m?7=|g@(#Xu>>W+$@8xm@f=4gD0<;8O5~(jO1Zzj#A9y#MIHgZ+%{b48f!<;q)pTvaiO5VMreq_tW zG5}i`Z)0jMw*wsdI5YI8%Mc?lTKDBX+`HC&I}fZiR8?13S66q} z{=U8USJ$BHf&l?j-EZD>?4u_o)+5eq%cm?S9?a-sRdgGvb{Z!8{!~=M8vG=RC{Mne zBNj?Djd(;GKP{r%KVl~|DA#q@Qu*KQ*J|s|y*f1iY*a7Dr1A zV`)^fldK*YHK^kW4aduJF2RA41BWb_ic_psTq??>@l;vewSTRbq+M62kEpA*ce%H2 z*`P0-#XQhivGGzqbWuvuaf!KZd!477V}RPt;&e@7oKee9w(V4ubVDkz z5O2WjK?VZJ7I^3zS0>`N`&7W{-Rt(blxyqv`WGp_gnGoTD~yf@`rSccm6|N@ zXYS!FO5>cUpf45v=CI4lZhCLzz!UtExXrb7`vUZ(z}6fVfp`tdWS)Vtvw;sjKoMzW zMfW>%RF4xzyalelAfn|w$&OgHv-?j9`jR>#qv3tsqyU9YoNH9srQ}!~K9M1AL-J-9 zh{}OK>qSb4S3zf=flf{0`Zukg*QP6Jq1QJTP6DETu%;6=o^;BDM_ww{_8rFpy>*kH zH@wEi17YF<+uNw$Y@g=>pcrOOL#tZgI3UaIZ@hP+_5FuFIPd zQw|}pP!m)AaNX|4N8mb}Iey^09YP}7b7#40e4fq72@Ge&H@4>kd9M-P-zMhNTc&qv zd?KC;1HCv=-rsEk*tgMhXocSA!sON0pi*+4-+z^FZ|2r4&h+Scr2e}iXG3_%E6Mpj ziugYI8L7>~vAAcD1z|nCAuv1j4JhgR_y6>|HK+B%3w~E;gs)oP>Z}m@x?<<8e;!Kd zo9GOrrjdjdeS7q3o31`ky?GVVH+oyt)nTJi`eMkBcwv zIm`Od%?STzTi@AI#tber`@5JyEi*%FdKpsk+KjMv(J9AwS87n9WF>xxYWdG_%a49W zScGjV?Gof`@bmt<1>IDyV}IiB*u3Qns=q)c<5+Ly$elo^cRw<3ZreN%voEg$GdeQE zfa|#MQbob7-$bU~JPGvZw!WSYmtdJ@z#{3-gwoA*NlX~moHZL&vd$)1}q^4{y zoUuS@^j+V_fI!c+se7L*LZZE4#=5iSCYL`~IQR-ajkXfmYlfguE%Q)DyH3~a{!v9K z1vfj%dfNPtK427wt^-(xcWa*RR9o)eY}ZbWj^x!J4>#3QO(F~G40lJaZQ|TSs#y7uwoy{7!W-;RO19ZSZRD(mOJN&*Zq5E( zI&?`f)8Z|`h;WJ^*r*b$$DV1*kFO_E(oui5R;u zGkjvA`|(tUE~IAKkSgP?5Sii~Z9T!*l3esjxgdItxtU2Ye@8YhrTZtV8WmC(N(%Y3 z{;uPe4sp{tajtLd3D!&pFz2Fo{g(=-%>3eaXqtrzu|f{TLQ$9@wcN794UgNX3Squ&XHzOH6B9ig3$YdX%fa5`Hdq0F30%tizQM7T$^~Vk z6=TehM^0+85}@7l3^e6ffB{ZucM}ol=(~09OF9q}bRO&v^pf#-8s9Lu*w@!9o>Ifw z&$)BZK>j6B0a0e`+hc$ zBAOiV?dO0FizG##I$bu+SmPB`Ry@q7v;x8v zin`}f3uOj1{%_{_AmeY0X(|1TX&uFAF`bMJotd>laPNguZ1GG?#N!?xYJD`7;%1D@woIv)xjP2S}UryE5Q+wx5U5F#+C%NO4{u4o|pFpUk9_1!_E1G2p?f1SCs{rVmwUF1j5PoZN$xjF0pZ@Q~9f4;8+&E5P>HsO}!%^&M^e}ti& z0vD@SEY46TP;$77QcVeCsw+On*0j8xlh;Ml`P6MCS7fEJll<7?B#0xnppl#{)&oBb zW-S%h-nN}HK0ak7VHP5#l4A(Rs=gz%i?rpSeUK~AF>4Q%u(#aOw~O0sMY-iFxI28< zGGEbrEPc2>S^1brz~dy@F>_3AxhD&SPn3~#luGL2&Ks@zT}KT)jP>riugNzu^rEyp zM}#j$OENtj?T)J{O*fw^s=rM!JKP9o8brBTY#+uf!kCJlRn?i4lnjyL{o%5kf5;s4 z#>gSO?C2XkP}=nvS{SuY&#Uf##gp9+y$!CqVGl~n6SjmMPF_h1P1IkqAl=HwvkqIK z+M7e>`u@D!5*DJC$nO82n)SrHA8u^j;O02*Z2;uCbMvv))zKa&uRQm8h*+qOUI9F` ze)K==ZFD4pbwi{^vd-|iznc8hN$eK-3Be5y(q*-SIdRntm8N`4w1 zONT!1JBPZoS!xU#YEv8)6le1>V=YlscZVs>m z5vV_K&$&fw_s@nwl(n}M{omt!BVJH=OFU>{KP+UP>+ka)b_^(~k-)~Z$ha(1xLu^1 z7+%!6M%*Zy)3FF`y*4v1uN8#F=rI&A4PV71>Q(pk-)c^LLcXc~h$7xRo2d*o ztdV{@&DQ++8{JzETPK<2B%#`zM)}hdf1S#%i`W6xJX+b2Y5VU5JA>5b5bDLS<;j%g z&HL^?s_7t*+XQXbf2*M>K=N*D-3PY;Qx_Kz_k=oxo@!=U9K*9AtKpWk0UC1V&oCG1 z{?1u(MMAHOZkts20S8l~uh3nA?9{7R*h1)be)Zr;&R|x1q5u5++n9!pcV?4RnYA>2 z`Jsn*Cw>fYbm_$>PV?1+tw7fcvmPg}@sDo`)H4l>er;Ci}DN>fQm zEX;Cc@n%Vm&5`5Bx46H8^-8h{x<~urzSqoOW!+;+i_Gszyh?j)JpMmtc$qFk<*Kir z8AI3|V#BZcV4F1AE2*(xQk5A3PhO)rW4BzF9QOCpq-CuKUkHc22q63W+VpWPf?KcN}i1_BhFgS2);(>m^*= zU3!ubmM1b`awUEW%;+5RosI&93;vWHRDigT?_+m-CqZd;q>svP%d5~;Fd~#rxU?0 z`vdo(#V0}k{eISXHF9-5)pz%7Gg&`)N$Bq0xVq7==v;c8+)~W_aDeyQqJ6dsS&403 z!3Em8ZuL`&0Y7WJO6yC3_+Rf63FH?Jrw;#i4+G@NgvgZ+&-+Oq1G!P-;s*Y|-vLfI z6YMzEx?g-M;dd?yJ@S9q`})LfelS?O+CDf>5ti)m(5-f1@TSdL=f}fRO*dLPbPiIX zJ)EgxhhtPsro`>hI<+y(=96F-l)BvJlsErvR$o`$b4-P9!VXV8cQE3k41Zxy%SwrN z^EAGLdsLsQ+I`X8U)?t}TKoLh3^pO=lZrX?m=-o`6`rn4O(m&y>(A4?#B7|V~zp!-$swng~>Ok97ArZi|ZB%;wf=))ohjxGkAGj zcKfpHQ=$FTTl3FbWJX#E?LT*DP>K4Bp`(PnqHO0PL;Am!W2LV99JsTEt=j7&!w0bv z!-e@YGdUbni@S>_C&&DJ>NMM66Mp)TiRqVAX}rI&ssYs=ada%0`lIyyn$V3zcf8_% zx~It901wq7KJ#yujnxO0(MC3nadGz$eEtHRvIElZ~snTyzF*^$-hn_b(Wy!6p|N+ctLWh3XY>jQ z?oyT0S@M|FNU}o4Rz2ciy7~9D#7wdRtT;@xV4`0@YB$K7_V4J%l17RE?3tkqr~0zz zneITaz?A+EnaSsFw7;al3uQ|zX7JWXEI&(wvY;3LM1Ll+-bxOZvxG4`VX{?_gBSXn zq5@3aue!whyBoTCYX}2ehZH%@6jH4Had(Z>k!fWni8MEqp!6ui4sdug&b-^9`D@Ry zUVvxeED9l7^~~LxVR~8TqIa*#@lT%L&DCm>bb(x_Hph!`qEkcX?QO~)a=)adxRFk; zY{S(M$uCVx?+;6d=Q!T`%uS5I(9^9%#e8(=S)op{hlk9jeyXw4;M%z3WFE?#)Y$%J zWF;0k%p5#vi&&bPJ-&s`S4{ckt9kKnvx9_=J*^b&zeOv}T<@#7Rr;7MDyPYw%{;q{|pJ z(~erzRO`jp{-}yKbTeoFa{-v4^sI-A?a>xzBS$TlGMXPNlu^^U7 zFmx$kz9yru-~YoDP=zMw&~A;7XR3WT9EcB&C{xgWkN0Jlx{#6z@B(O4MFypEAHQXa z7h_u=xsAKH6{|lgP*A3AA?cq3K|!;h3gZ=F5q<$ge+k#6?Swv;U=$mg8d%Fg$b+u(f+2u*YLytF1{V5>}9@VHdJk$R!XD^Mj zZJ<>FMlV$QWijGV^)6p&*^g&S4_o_caKcip)zX$nO zoYj(k)_fXmI}brB%QtvCXIAcVyCg_NGZv*7qo^P^os&xC+)VBSHqX>dgQO`Q|5<*c z^N@rrE)b~3>&Ih{gwcZ+@V6O@I$FlN4SkV@SRbEg#Q;j^_sb_Z1#7zXvcrmM$&)#b zg=Y`=wp{C3dejOIKG#|5MgoO!!g?Z~Zn#G0QqrNe$D?ksjXK+2AEQw`5R3QwI=e2F z-jV$xhjFU)d9U$3*VXaXHHVlT z_Mi8pzq^oO0$!HGA(;%C$oX-++3M~NhqLTYihJ#~$T;-DQV(EDgUNCXU~zuV4fGzn zKOOrn@X$L1rs@gIbY+A;N?dX>rW=Cl^ssiw9xpGM@?jzi@9ZKvd;JFsV|7Jl{k||T z#366Xhxfl_Ya*9Yq!bB8eB1mPF?@Q0$WGkXuSVdGRi#U=?;d(f_nH}5gLG6FYp>U@ zn*snU4mA&psK}U^BGo;ZMsf!D_Jc$oJ<8u&^1W3g3_*Mrh3*xad z!WaMq4kYyk3im2k`}j{*tGZz_R^3ZZ(1fM+HHif_HR|2PHJb$>bQfVo=6FyM3J?%S z9f2n{1PVO=OGN1+HL&7?7Dua~QRl;dD14U7a@~gls9ER}AEEi&NJE8$SLo2M(Zs~| zU!xx19moL8je>B_RS>QZ)M~k7-sLu`R1!yDjskRC9VdijOyl@C*T_pZWNuE=ohQu1 zq>F_$vBkUwfWm+&;OVO3d@l(t3uUjxCsiYWj$6A?gWpt%5wKP~y6=0Ve$)Rao3{fXWhBgGIq8uX=<-g&H>0T!sl!u)H zRX@$2gf+vG2Q(LS4+8-9{e8I+gI4`4Zr1BMwA}K}waV~|JAxNZFl1@gdM6Xu{HhzlMAW5iUcPPozd~ap!h~z*l+|5ORE#E_ zt=qgxUF#=c&ijJT`o(ok`Qgq!IEBxPU1;~jL!_u)eVK@*o9kS3L}i6u0f=pt-=;%7 zHvqLCgq`7i4b7UTDuNiGs=NHsGENlU)apNxb7}=Z%wi;S-ORk1ubCW>_`L1!4SZSB zO<{brbTfwcIpp8G;eAPMpqd6yStsgEF^z>X0M_c5H%}$W)6}@-Uxlav|fZT;&8)7I34vzVNkgLSL$vzugEm z?oMKkjdpnv-ljX!bYo{Aat*!buXeU|(9A`7#Ze|>@FSxa3wIQkauEC7?XJX)CV|?Uf!Pornd~r40d!zZbVSkEJlRZw+JLfsp1?<8WH>Ky>Ko9BqI$^8#Ww z+Ptfr#Bun8zjRt6taz2l?dC3YgH^Ht=PyxW_QbcTW>qlxzrVi922t{VmQ$`xMN4R$ z{8X>6^X;!QXKXI_?Fw5-LEZP2rc|~-z$G7qt13#FrU5kfN3ua?0v*2yjw)bMQCQ$r z##*U5amxI9Ny%8MSm3^HlkbXDUw06CY;3m-83>!~XlV`n8`|_!6s5AEiDFm2L+nO) z8JjVV0^LWcBw{7j}Pb?*{mj^j(CmiZ~g8h>_V)TXSb4n zJ@~Ep;F$~cswT5+*2%Xo#h)Ev`w_}IJ=2OXQxl8}8L>0)VC$tNhnj-4&o}<~;g$cw z4c&96mPDq+RN8U9&+K!C0RW9Ux%=nhwosU@1D8`z2>wQ5%ni+nnbK7mY+&W!cn8}t z9*&v*T-`7zh>rWv*X`g-q#ec{$22v-nzRq&p zJHebM-($LE2~y^>t3GEvt|Tu*OVk8~aoBOe z+jnJJ@H>scf?aiI^RAPz8%sael4r!%sMk;2c&T-RkiCKjEi1)EB`4{heIjH}%V--H zTY^lhKE7(*v_s&X@PTI2Z*o+7O`l}mS>i=3V;GQh3cK{2q`pdOw?)`l$H9X(B{^3U zITtysb%(>*m`J?}BH%p{Luz%Et`)t3cFGoYGSCiT#-EUSDVGG#Y)!;3`AE{dHy5+ruTcBQ(|)3RS4 zu^U8e@}hM)*rb=eBeA3~B%<@3-P;B4qh?z3Z%s-lPnSBpT%bxi9I?#GgDV*4!j)jI zocG?#?o5901Hx>+6IXkrzLCE}I^~38qo)jR1+|CtD1BD0!GAccH9)~I*vZ2(5gFU@ zMi+mnQ)g@Ujj4Y4it=uST;=3S;9O{kH{llv z)7Pj!TgxaU4>Ypo)utHThw&3P6s3OB&-^h%4L%7%8rHqspK}UFzCPNvr}lCovo+m` zbbNzq4Op%wJ$X4xNa+8ryERw@Whwocdmn5p?@RV07PUZAhwLm}PNA{iY0)LLkx zMcLlzWFfX#PrymwMg-M9FR7h0%~Ca1`QyotiXz%mCb{FBm+9O3q&1kn>En6@J&ciS%)W<< z6GxDa#1kmp>ClLEYm8>ql8CZ>cs^p-T#XbM_+tsn`vzH+#(_m_`!t>W4Vq<~%3QyX za#fkO(%yQQbdJF%N{!-RBe7lLPi}qBw0##}fI7pOyli>)=Q9<4OPqGo8PmSmqDVo2 z=?9SzjrS+nN7Yu>RJGstA0-@=Z^OjQ#TbHdIfye%EODrS@}`fIxST%;UoB|m;&f$F zzn}*Z_YwDYRvZ!Af7UmiO{q{Yf7~lh>EvTagz+QD%Oreew^&I}-_I`NaPLU%;+0jC z0Y^<{#50>1STDE}+;4K?>b04W%$z54QlE3KPWjl$vK(3Y`3!G3f$?7e<2UkTQ8nuE z57f*3<@$$!m`mhf%VDyn%pCVMEjg^s(>_kHe<>z}f^r)iVKZ?zGhS<~5{(j-zWBaYXa?)G08RYGhEUZwnkq-((SPKy#R z6YO0dKXtF`Sgcxqd~rMJ6Dm#=)%zaFJ2nyT^+@dNa+&NIJ(e$JQ9N+}>=H-nS#K|I z0O~wm+-ytkAaFZ)H)?+0+}AXq#(lDu562~QU5r`aq2&ZlT1&h?dZ;>Wx*&9O3bt-1!$B~(nl9tNkr=q7jSxV|X(e11US+zU$rjog zHo1}Xpd~rFqLIp6R`=Uz;_ksEOK0`($%KO@f8USCWmEbE-Le6@{d!6c)06Kwol)nM zH&2Lir~YMO5-;h<>d)Ydb2p9BhnQpVq~>)zX@>i(F~c-_@=-=EVik9 zo~$S9@kAaa$h;_2LFyiM<6w4OifGUBJ$R~(WFT$VO5#%w#T&mKD-NTrw*56sLjhlQ zJ)AG#RThXqk2xyO@j$;2zV~rBq9kT{ZRl=`9MBn#d48WZEHVyFA|fg_V~{)5Z^V28 z&_a%S37(^;?6-VL>vAyHUAFzw84rt6WCaVr_`oCMLlO`4tYejAkIrWR>XGUTWryA; z5^R>UZzf7#xP>P8W_*ghxaUBn3RiHFp4Fi?qE_b<7P|5`J?MHmQAj~1ERD(fIDwkw zo)~&2@1=Ly@54sy&l2T7E^X&nx`-G<*a8ND=nw{P$k@qY3hFt0d$=z;B3o zOA9y0fk*a(ybUf}5vrBXhxbO};h$9Vt={EKj1@^zpSifwd`=~{`NVR%PQTrVd+^J@ zzG0^N4c}$w&}8lTuvb9E$EP`ced;-SkA6{j3oQY1x0YYn3&3TBqxBaM#Je>-!ye)3Q|5E8j4Jvh$b9A}l5;hC`}m`{eSgsTfh37wB5H%I!TC zZ9Cc1MeKtpP5=7)KElazXxwu6D_~TIyVi@MGVeKu0b=uNuuMwat>#X8UDVjcUG?!Q zy20Yk6E8!GmMRQMg`>x_?yJs61^V9QizGkiOl=IKpJsDNy24SM;>sys6aF;QIM6UX^c!({R`yg?*RaPsA3m(h+}i=aVpE#Ci$qt3^64XZ>=g zCod{t!&pvyI}&kVy40fKe=NvJcd}vC`lIT2iv&dAS89Jt6sJ}^HPAN!i0#SmHy5@f;=*pi%y0bLT{Rr-U<|L+hQpBs8PGWBzF)1~BaKWI4P3?^7q^ocB`Jhq?(l8?&jv@UG-~p! z>?&#vK@dk&?h#4*SXjl;(%#0jYwM9u;<)xf4{59^@T53rSNL?OrUxGDt02qZ^x_dleH*em9k(yS-@iZNkZ?KO(%cDNi%YMLC#w#nYEPn+T&ZXB#5p zGKz4jL%K~XE~k^3e>O-VMJci;zn4xAv1fN?y3xcGv$@=amph$-eMgfHP>QpRN%(t# zeMihwM#{H-zbV($P3ZHyn@4#{AIazYey{3Xgcq>)YX2EzPdD($jk`1l>sG<`Y;z<1 zCT$pX6FV1%og-Ffsi1%euO_F1x=zK76}B7BFZtLG>`FF1R@{5ox)%P01|UMM!J{g# z4*eG$e6cY(Ig4IN-#IRSK92iyaj(p2<90}Zdws_2JTOT*U%*~TKDRj;8oNdxd>}l0 z^Wbc)lcR36d`mvPKvu@d-Ee#bo>~(X2+X<1M{iSV;M@Xi(T;s+A|t4Xazi{gPFWj~*pVT)*`A zRl()A&qT4lCWq~vYpWwn7{D5aw?+8{ZwLnNsf(lIa?F&^{x%)$tGKRKyb-e0SN@l0 z>G)SBW9(DcV|CJL6T+Lp&v@Y^a1(pAdV`mgBPVFS9&Iw!=5>9ZP*yQaLdqST1k^89 zvDISW4zH~zqsCKRBXqF(NYQh#`k5X*MFTXmSqn7mVtneF`Yqg*Bhm(ushh<`+5E37 zw=8O}Xof|Meb3biTzywSP1%irv2EB0bCetGE)|bvjCDe>)!8(_bMMgdc z|3mjG+TSWzas-~_QS#xkE(7Z9LA_wAwA7C(774HY!&pNDtmuFK@AvbGHYUaKnyR7B zsyZ`V+8g=1?`}mLL?x}US@emUxl2KO z<2O!*zg)bDpf*>8MDZNvguL2j!b~n{9*BPm7YR&`S zBZ{n_yX`Uxjgv;&eP2>_m&2c@^U+ETBocF^<5F~o6T_dM_qs_3+Et!E9^*JZnoD~@ z=OCQB`$U%`#nDXFeE9I%K`!~m#cg>fC)M|#D-@di;bZ0zsSo5b#Ywg0=7EfVKlmBs zh8~Dyl(}F&OyqEl#UndLofOy&RNN@_bQENlWpe!fX6ExYrtL;ySGL`jhsi$r_y&C$elqn!>a!QubL;VMlDKDu_wByW+dSX*W2`8iL_44ZaD9VGw zl!GsPYk+}$86s6Gx@Fmz-$Q$Xd)O5Bntpxs_<2$L(+?@8FlTvM8+Ct*eFKTdgv9af zbDQtxXf}0><7oGA^&j9o_F0;*zpVAzthxaP)7+XqVr~jb@>%Gr^mxj$AG^L%XsG)iV#g3kw^}o&G$Z zcQ>5w`@V!=VgMP~c$8rif{vVWJh&ax#-9h?u7k$tqoZs~>F4S734XG$CWAoEx$76V zn+J_)ytlYY#tTA^MJ%&qZL-kcwF8yQWD&9>wPi<=31o=!JwF$7Qhi#jfP}cSI{45+yFH@q*!yZNOqtI^b#`=iI6L4uH^c5Yn_kydVq6{0uYI z!DLRIt;dvog`iS3&mQY3GF%=9`;5~2gH<@1+?oIQ{Bmp6wqD8N#g|S zIS#PIi+UyHp{ioq{-28|@K64gXb%>atF%1skbd(xmRMHBGV|`=U^|NqZIEBrgy8P6 zRU9+XW9zV{yG$kdfDrnUS!H&(v9a5izv(4Ky>0p9M7F3NFX;b|Ec%jcsunTXruGgt z1mw47@Df^K-M|MGS}g~ZgC*ytn^h0b;k6m1>6w2nvE^P*{|!Lkg^N&Ve)%}iFy#e= z6!g}V0_PaHY+11B1r%VpbTR$eD)&pwu6ze6Y9<7mfeXN0Q_!6Kb`7tlAF0E*wfy94 zp*=0XQ9UAx0Q3^q=kalh)bI-J?;QeP(&MMP@M?E@;3hD{wtHii ztL&@R_?V?Ph+?k^$vENQ7uJNUvx+M(%`Sl3=$-!a>(JI#%>zE4A6;hS@pCCpNCUG2 z|5KIYvb)wOrsbaxLV(>ctIvQ7D_9^R(G5=F>YPJ=K+_l*#`9T+%>Pr7Z)^POZ_frf z(l;PNjS_!#+}f!Aq@&>MU^Q1xsz~!2gD+t0pzYzAV^qPv zD6%T<23KHDlt2ydpe(&0_)8SOVk@IQND3@evHZ83WYI!d&4CZ#n|R5oxs9z$a2-DTSVt@D$a;CADhXy0U#;6k!mBq>O~x)N7rZjS7}?Bl3*3*2wZ5+rhj z1lW4jJfuwRonJyxJ^_W%RNH^xMC@`CImD*sIqx9xL-vr6^cu_#0mIwicb)?ZB0gt0 zJdr-M4-fmr$ICIJ1V1AbI0VW4JU3X+&e>jCJt%p9 zPZ@!ZUn3n9_$xZ^&K9rtS)Gdn)E9&Y+*wY|;#$?kZKOu3{IHm!RuCnW3mCEM6R9e0 zh>%L|+q_Soor7{zEimjYMCPH3e=4TkC4-kY3*|Vu?twGp+Zt9k_@7}&L!jV$IvBbSmX|mcR14o?Mo18b$yN-Wp1M5IXC=N&7C)l zubw~&l{(Q4W&V=2zqFa%_BIr7)=M}3%-j3Ft(*9LZ(Cyb+CRT#XyQXv^P8OE?Q1hq zw_W~@V3Fam!w@1+0E}yzw{+#X8#YZs)XPuw%8qyenQY}iL~O!vpJ6jm2+J0a!adw zESegUZ7Ey0q(Wd%^G9b#sjyX=|M3h$kPC6cwv>~yMMfKExU;e%6KxO8wN;)!{7qr= zvM0GY@G@Yob;%mvk`FY~eeQ zn@RqxTmVE+|LAC#nuffy%c`6hPtvBMU97ZD+~atL}X&})vgGJ&^d zdEmW>8@x(xa%6e5jg8z+2=5g+*6UODP};j&X`P;45pPGD)UM8`KZ7gf*s}H>%%_{Q zfvDuV@^j7e_Mw(wF;R?8+uuTUiX`~6s!HFytdczlg3*c+X)@VAK5>(CUwYT#CgPg; zeAvFPKcA8|+>p$|XH0jTI~OzS5Na7er*^M$@I5ZvPc@ELoddt_E3zVQJ`nK;TevBL_%A z0M9QX>XU2=B4hH8O^znF3wzHOfr{UwwR$(GRVSHRl9LTK`)V6wI&@f|S^F=d|Wpp!t6lL1ztYPW(b_TP*4&UWE@5?U=5q!+4UrmGk;x!L!YJ{g21xf`Q&FRrwwITxOyi7Cwv$@XGT~n;t)) zpOJL1F+c6is`+X7CNC@&?R#ot`BpzmH}(T9z0=;A~qAP_pz%7XLT#W|j8xdyn*yp|rfFCe?SOa^}lE6V?$ zkc$fmqemjbXQ$3WZ_4WfN~OikjIX#+X=$kQKa9-qmn7ripw=Co_oMLf4LRvKT7%tp z5$*jNZS&#z7s{w733=$$hBp^*BWKrwWo*eVu9t#{3TK6eqU`bTsst-B;YO;xylZ!U zlS?M(kBn2`PI5cuO9#%*N!_Yx{jRHS(H`*k^+Bgf>PqcR&JKsb)7Ouv56?F%WVL7E zD;s;>ojgl@ycs=5BlTVJ7_QKWHlo+MgC1eA7++sx*0ykUfivgjwx)xi4!ho)sYXuu z%EhA_$Cr=&zKE-EOhheJ#g6VqaN%;1PeUHR1>h>>m~+wda8trNROW`WaPAb_@t3C> z*@rBa9QIRL2`L@I9oC=Pvj$v3q~2=$ti<0{EsBp!P3rwxQa%2Svp{zVKm#mGl@rZj zhFhvlISI1)zfSJvuUpez|3clu{zxM#wXpXq@-P9oPwC3$?>lJcE@$XlazqVlJ!{HY zQWj;83ZJ84{>+Omui(kwtLW~UH6etX9gkR52=q8r1WRXm$C{mDQ(pMXWNoO1f>ql3 z)n35=%DYKaLe)d_!1`5wIGkabsRivRyV;-dIS`@l58}ar2aH==K4aq2!&JWgLEGpM zqDOy#fjMxSp7%>2YgjER$q3!MJY8B#y0qptMd2eM1YDjkGpV2AQjV45%*~Ta^#AIv zrq5cF`+u^KuuuS)voQOaynE`=3b zIp@zNA3JZtzz*V_*bVMiPK^}o3)wX?uX3jr>aDh(@WH8Ye7L`J_vWREy|mqC2l*kg zEc|_1WYXW~Xrzr`X(fuUDweXTa2o{&mS%a#YP-z)+QphhcAV=j{7VPl{WO~7l0tv1 zA8W}o^#yNTn+Yy59QTOMKd`yscm-GKro(Fb^QbZ0!aR3k{~1n0wj_=zk#heb?MizF zN&1(cU+Eg{)d_k4gM=S%NARaNVvH${&zyzx9JS+7Wg{Lnj(VF)jxTf3DGk>PV%?>` zlOJbjad6OgDT&flK92r2Wt4yB8RMA-ymsd1Zrz9+ZtI$Ne3nm1FhdOLV~nZrF8jsP zVtMySQq+e_iQ(0(3QcDTvk9Ttj^diz|RW* zc|wNFYtdGs^hp2x((rY-Cd$=unDL++;m)`@_Tl6?v57yJG~sDUtaZMC-P@YPJ#H#Y zh&al+Y9^kN-2R;ZL3?3mecZ*RW_K_pnWfKbXz8vIa34P1`#Zku9O@sgM)e)P(%t*Z zu7R^Q{vPi>Nu(*;_uHQiIaQlk>}Y+!G0|+dt-e8zYQe@UpuEOeOZ30~R$srL@-#^| zTi7M;*>LV_EyE$t0M+P4_xQ9u6Q!cUN zg2l*X5!Le+ByfaGJQ9^;h&r4h=$?n(|9`*?{$BwM|EKZ)9d7wQv+;jsv^#oV&t2*MAqQ|i=()1mlVU}SkpBgQ&-rWs diff --git a/ios/BT/Images.xcassets/BgImage.imageset/bgImage@3x.png b/ios/BT/Images.xcassets/BgImage.imageset/bgImage@3x.png deleted file mode 100644 index 840c4242d449f62c12d9c1bb3bae1d355d07d096..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87285 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 diff --git a/ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512@2x.png b/ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512@2x.png deleted file mode 100644 index 81e274c42927f03b71318592d893e3657d2d601b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62966 zcmYJb2Rzl^|2Tf`wMQrk$*A5@WG7@?rD^Z1xJ710_P!TIMWvKI8)Ssc5N^rdJM(IA z?aj6By}xto^ZoxHk9UuHo$)-+z0SGs$9g)~4lo~O1^^tmas9FZ0JQL*w1ANw{)OQe z3x|I(xnDQ)1mMUi>L0`nga20GAi~q&+9goXd2E)t-u|NYMF2iMXW73^2f$|3jmsB} z{16M{3<-DF`)qqV-^Q(l&V|m6 zjU?CV(ZznOCz5&ezgUew8IL$xa}C&DdwzE83e-RzKdh0PYeD=%*z*_gzVXnVFQ1sU zPPS14KxqC~*#T*S=DnGlElHV$iAh9EQ)W5?QkpL8?lNYt8SlA)_k4%DUyHI#Z2Y}X z2wB++JsFaE!&iYq8i@=!=o)Ll-zlGJ&A=YqwXfW3Wi6klPlbv^0&wz|<+O7|h@He* zq~xE@q561Yre?M0aM!V_6$U5Tx51}RyPtl94r5xTJE#SYSK6HRQ=0?;+XK-8*xx)= zKLl(0BU=w&?+Bn=!fd}0{BW?i#fbA2Qd| z9!}~Q*WqRh_4jc09CbFOJTr~-&hsmKS|0j>j-4Qn_hRR$IqBdc4J#ilNI4H#gT1XJ zT8$}-DBc6bZTTXWZ%a9O^a8{`(g5tw6A*+#f!|`B!f>z~nMK@xcK^gxk@iQ!zIr8GbX<{_2!mc2}KtrUlvm zbt@d^xUM2RHBjQi0TwR8{mM%pipie=+Kb>u7_oYz6L5w>raR|Etvd4-Fz@YW1q83=V}YW zQ`yK`zR(JwsSY9ks~!sAW|+>2zIE#r061X?+)v;x8FE%V5P(1`CT6aQ7^z9i{f^5R z$o_;;ff#brZq*KCqQGUSpM-8aJK(Xu#||cMPvoV4NTos0JlvN1 z2%tJei|nPCT32M~fS9`wfGu?;U^QVxHmkyo#bHq>=ua;R0kthitW?(LZ5pajksw-y z3YV6;T8AMN0GmiitbPN;6RZDq5P-MOsNY|y-_k#6kuuhWg~@eSfz%~bA%3vT!gB1qhWbu%lLgC{xJ1W4~{$< z1S?gkn&i$+O0HmE(Tp(PC$f1Po8)jvBC=3bS-8R(xDi6JQSNv zT_t2yonsQ35xaR4N)#wQbOJarh^u0I%kI$Wm~-5e&v4j-cK}9An*%~IZ`nR>S%_0H z#j%+3GX7D99^sh!pdgf2233YR^uU9K3#hRjpNBj+dr*G)-0H|vR!MpfM(U{0-_fgb zFwlO0YQ<|tMNu&qfjxGS4oK-V@6rH(zikMl3aHZv>hz@MJ!WW7aQ6{KGfF~O4ns<$ z^+$-*ezX(Jb0Dr}hYH6J`3iWkD`YN1Gl$;I!AN*>bGM4l8!0sn7uei8J)gcGA#-Qt z0G$0q>xChmT(6Y?Hcuc!BdGip;|O|{kAjme2~Lo`=1A^bjCgW)PY_h&HW}`PpS~07OebR_Grt95-qUfRL~Uqe>(=c!G_f zX<{!zI)KdsL@4gVak!;huLUzl7eIpB8<}a4p*?CWKnkfIPJYQsWdM)i5*9ZA*=A&c zJgG(p+>b_RkU8-t!tUu1OpHn>E?mPmxTemJ!QUGckusYOD+I-%=R|SF?5n%Fk=M?^OjG%W&l_{KD z5rUkv$)p1cm%jLDj=g&Rm}(%{$iz5oKg;Tfb{TR-03LXJ^{z#2Cf3S5<27M0gf24OEP3X9eex|E7Xm**tu6rYtfZpMb;clioyMl-NZOQ>r#=G zoJQgz839gyh6w4!F-UU*@+B4!blj@?lujK)9H^fDE&Pb8A1o^fBq*}lFL1FoR@0eI z55d6MV;!^zWZv&GzB*x?2Q5ICZ5NB)K6>?bbY3gx2ZsQcq3@O=|H+gmjHJJRVC1udDs}04g##)FJG6MAy)T;^;8i` z-C<>T5Dd{}Uc$wBO<#m7!Q00W7Nabf^k2Q3EU5QSL9n0xKM}E?1fc6qFO`(ydrxJ4 zD)F*07DD#u{u^s#;6qN{YKK9SReSd@53#H6e(KoR7^HFpl*=i|hypb%RfeGP1rzeW zn@!I01I#NNNU##UeQUHf7n{(_MjZdLr?khmjvj7-YJf5ioFvUdev$0=mMnG;kW??JUI?6Sf#4jQ*LrxY6_bYQ>Q%7fHrH%L_7 z*gws&TfV2mYRfAQnnj7>5^vq8_3cXa|9SRiXztBN|DKG~XG97`K?q`>sRjX>E^+{~ zOVG_c`ztT^L$rt(I$CN9@proZG6%4UhH_+$r>foL;e)g|9>`$nuTz5XTS1!^A$64z zp!@Grkpx#C34umf9z=`&JM8pvMyx)})Za$@g)Y^~h(sSg2yh=J|8hV2U>M*z1y8&4 zm%CW$s~phnK`;;gE{{0{pD2LH zUj`lQ5pZm%dkQsWOO}vJ9uV#J10L+Yzh4O;!BDI(8R7;w?6~%Sh?vcDIv=mjL+I#CXGJ>$2fO*fo z`$5Bl47A5W0hr*lE}!CSrCp-xA6RaKg#vyxR6PL!AV$`Bs)~VX+KrCC$;%4N4fX!| zrhm={{5TW48xTBxX<{e%8NhZmK&uty2!gI3fQ7go$Pxd|Ft>wX<&&R_`cq`fK&P$^ zl|FPe)N>sUH2LV)cpl`8p?W;!mDz!Be>uDonUF*FUPi9K3@2!Y)P~8T)@>k2xch_F z(97MbQ;T7RdWgwup?}`~V@jRJ5;FA8GMSwP`RjR4rJ~TTxQriVzkCwtL z^)ZFI^{TeoJ^CV6E)a+QcUVu89Y}^KM4{&pe@zHnjrVL~jFURteTWvEoz&UyvUU1< z>Ra*H%H{4jX}@FQ&|AU$K@Ulab_`KBks>S-jfYUrkd0%rCR$Rj8rze5PXerJYC1onQc zzPLJ~<}oi2sQKo8IelbX`JV^0>M>MGKF5|ChK%eszRO#1SC*&(#X~em{I& zwN+1T87@3XjpZGGRYdKXSw32N9VmwZEW=+3-rbO+N?fhr{*owkd1E(~vAjUh^}{l% z(md-6Jry+%PPhTfj6F7ONw!fBruj!X{{+h;PYW7*^ze0ONFsZGDGX?*;ju3T(b;Ni|I?bF6X(4czQKl*ln#s(2?7b! zd>r6Vzw+siq2S7Jbur4(ze*AEs^u(1ukLEIs3>Tx?{57o`ju>$7n;!62_mp(ZT^Z0 z6diR}?ncI3p(bR)y{D+~u$&Ctf8D|*6G+7&lfPWR^+0#$C7x4g(JK+HXby@`#cT`z zBU$0)C^OCpclJ1lq5E5n9mEFyRp#xCXeYA+3H%TWx5|99Zq zP!ky0Sa7F#MM=6fLU*11GLz>3TzUd-)f8IQ{%2WIxejzZS7^c2uX?kXNh>OC;Hrf( zwSMA}hKD}t#em8aC{)I;Zy8UbEDAEqu(5fTg41xfmZy`Rmi zf;2fsS7~T?-^;4kEiK)swBAcy-Xvy^7t)0DZYtn)|4S{baopT`pIWC2uIi_G>aZ|} zi9TXWU3EA&lji7Id$QC2yme&fcDFy+XE7PDL-3?MDp29DUYh3(cKQxFoPVXS z)m+q*@Z3iauDM1t_gndu2pp*tbHOdJU;@b8hG4w}cA%f4P&1A}Q^5^Rog z6~Y4(FH8dMdrAIoh3kPS_~h%XBvN?zGKD}Ba$90f__}>g#b z>xi-R`1ps$0xUTnq$WcI5=vY`j*%-XX9QJ;rcs2IVKxN<>X7RFXH6-;wE|`ckzM7A zvD0UhJsmqSCvJzl!z<+pt96gX8QI@#RUA4aSN5*|=l+)*#Y_PaQ*>Cw^u1)tz0UJk zX%54pZNAQ-LYC~O%-DnOniLwuu0DuPXqkNd`U_>v+VXJ!JEq&(xomm4GH+%LPdriN zM#c`T7Z08%6n7_elf!Qi)?)e#RG35*Vmu@di+47>$x~X~zpj4;I43Zty!;j884|w4 zD<8i*mm4E&bmiP#gUiM`z-{e8rchdZBF z!Va*t|GzN)%@KMAA|dA(hBw1U=~aq)o;Su;|`lN1*60t0RY(oX*4=Uy8TksRcu6eWk*}n97I2 ztyg@s+)0`X`k0s|!m6vQYpz6OrK2fVK%h8}Nf{#p zQ>`oX#lhrdWK|vcg?}kB1=a-Fw;fiji!TEA!-ms=KYyJ_l}1^6+D%sv<4nzdbSx#S z-il7))w9c`Gar3<;YUjU$Y!wlr}7~t#{b5nPf8tW2eq=(SIV~Yk*SqZbM(Y^)@QxH zgzN)fCH#DIOU1E5dG)MSyfwYogmm|Ap9DrLD1z1mJ%z?*fl_u-wxfZZc*56$PEw||t#XYyAwjGH0F@JoFK zD&fo8N(|5J!U71Xw=!g>ua%*7YK3(kIV5>bkh%+(PuW%DLbD$5fgiP=-5)uA6jkCs zG9xF||Cd0?E72(r=ukc999=O5OKL|K5{vg^*Sw}0u2fB?Tr$4-Q1`P1Uu9b<>zA^s zn}vmQ0|hlq#6!0w4&;lj3wlO$ls|pk>2Fmkl$)2b9^4p)^o;nhiu z5GT1l#13CThtYxjp#m-9S$ZU!pl+2RN1f+-cxPR4ARW#;D+n`P`lz7t&G(j-TQb;pTNY)`cHu^xwwb&?>rx3%K&|;;ql`^rBMEQW85GFe9&& zUmvDpnlt-ex_?fAFuX5iANZD&!@=>bF(@(@T0xUedZNTwS)PBn4O=oF;YGv;VA^22 z)8Xn`65-Y|Oy?Sh`SqYkBPudrr;_JKM?U}joKAHK(&XcOUu#*-2>zA3B&#iZO;^ft zOQ(ODl2~q3mstO|O8wVOmzLB}VF5mEwlZ@|9S&%zMH6zu?aa}m^yBN=Q|#!>XlhxK z$F1`u8!sij&0Z8W+@|8@Q!Ak`RC%~Ps*3lkgR0=;5c}dtz6w@{@d(w5iXX4I*f|(i zj>$%QwwPt5*QpUw4JS=DX~R?8>SV<(snfnrlwT#x-aRifGtw0CFQkl>x20rRORGiRcZ||+%smkx&QFk- zDvmN@Bk%U&Va!_5{`tV~Y})tk$vWF`;Afz4c0jAkSCUSc^D|nfzk^JZ{p}TNq507K z(kV=RrPRWYSdK>P+vh%bcAo7{WLfk6`RkIe-8F&mefK9@OPUS?O6tZavB9m}x3Q-M zC-oOwAH?@l%erS#*?(?GZL_bWeYvi7rSlY}m*t7qB3DCh;tRsoPTzXe3k_jeCtnE$ zyP_YzyL_tDX z%%-^Yo#-B@-=SB|s)c=F&4<5#Ir=02CQxpC?2K5Egs)b1#l$IYF6UJz^h5v2u(g-VN_wGrywdjHg-A_lCm`=PxpJ@eC;q|n-yfUpEwX|!N)MR zg*A2~&Y?XuX3xn#G`!nM0 zfwnBb?bg=h?y!P)B4kS=n$Osc5cd`J#j8(cm2@@x28M=O+T@%J-Zbiu(~NgT20jP_U_xG`IF&ux5|Ei+E7x(0-Q7y zeY1*TDl6rSnSa${qfBb`2W+VI3Tv!f&{Bh|3eh8eRJglC?-RR}{jkx>S=AD?3cS%= z=Tb%zgVpWx5B9g%7XxgJpO-K5c;#WipGW`K%-RNNMb~aG3dUHpx7M=6AD%0pZ#xIw z_PVo7*or_OUH90_{_5ntjTJ$qv7dKXSzlGB{*Ig1@ESPPkfbDL{Zp#&)QW&ChZn}s z0Q#pM*|zFZ|511V6mbZn?#Nq+HxEYmq=L7>kJM>Ok42l2zQ7T5tavBg&z~YAo4Xp6 z#bfd$l3fD6SL}&5$@tWg7X~MswMkedTqyMkMscBV+cx5p`i$UMXc-2#EzA3L{@1Ch z>9sq=muLwV>{BhlRfyka)U}a~&WMl$!V8l81&cQ%BFr-QqhP>9K{K1*L4~MP3(ArlHHd z_J_x%gQu66ZA`pABQN0r!(6Yw(LCj=v!FH+s47u_ zU2ie8I?{V!_0X+A;~YD!r>7;qH628I`Mlp~oU>BdvaMD!{!)mykf-x(Nnc8tb(WCq z8HhhpJ)rVxmqz_U`;OIZJ6bQN-*E`*QZi6{^MCdGnxZH;CTG7tKx|=S! z*X^mAWLgwT8XD8Z(@b99*}2$pU*;hp-Qt4=A*i$>Te_4h zp)TIIpybGr&+o~IB|03_T^U~fdpBl>o|nxw3Xbnv6a=%-O>;x(%Qx5Pr=hOWMV5n_lnT`U{iNmt%Uh8G=T^mtJT@65i zf7F+C=0%f|5k;dSVAtcMjYF6pOA2nH$*IkIm~La6Cfm6~sb;rt&6N=3>tC?Qu)>2c zq}$kxO@g}kLq@DFF2(ReS4e)CDjNNuw=*^4t?YYW`OWzkBJIysRo@%@_SBcMuM|4! zKC}}&R=MAm5+?#q_D#I-xXGZpYg>KZg+Jpc;1N?TM6URP$sgi-{JzmFPC5%#4|>ox!sqjt|bNW&^zRc(s+zU*n~Np>C@yNJfHO8rzAEMmY?H%90jPQUSt7k>0B>FZtqqz3-ZWV#1Vs z)#iLtL~8_ROHbYD!%7$F4VNenb&Yf1q^uvXjdCPO52&Ir?*?x1F{1lR#rjn8s8>lr zjqzMSE{eRnoFZ9>R@H`b}jz2%sz3y+>mj=oKV zA33rv@dH#<;~UZhzGh*=EAlqxX`M>h*H2wRxJ;a{BJizz`fymlVQhOmU?+N66tI0H zc@|TiFyS60d<_}0GJf+MufJr+h=@kXa!x9tTn9&d177ody>k1Gx2f-hK^9+poTy1_ zgJ3gVa{1PLcAaxya$Z2wyAg&JUTYJ?_R?c3&qnL<cC-+{9La&^0;>h4B0@oRnBfYy%gGJhpSb5(4ME)iFx@zs^ z9baZe?AUq7OP2|$#*^eP_lJa%k=Q=2_U}jK_xo(tnDEL!p=-_VvJ_DDaLG~qWlM&Q zs5}yIyCE!VURI!sBDv(9cj4PsD|eqRRTkg7o><@^LCy-st{?Ez6n)*pmlwDxO9*nC zP~8%{h!DF=y)?0^3Bt*90b5F_q3>tz?LyU?Q*or^HH-uUmYDD)H7E9D)t@hyHV@dA z2D*JCk?EqMHYzasA7R#NaPbv{`+};}e`eRBo^UC43=3kH>5Te5uPU*(Fa)iBcn%x6 z3ttBEk6>@hhLZ}a1023#?)o?LE70Qh0s{JAiFI>a#qn0iPd)hdLn+}r);`X6wnt>N z%*Osw%V8G;u4v~Sv(Q--BWnUI^xk1cWg#GPE>m>DlB`*_5SQ>IDhxK>eWW}Q z<@W@;3k6*I^27pO>&S8gh2w2`U?HTBofZmJ1T7q*n|!E;vNgrDTT=b^#s|&YH{m-S z_JLe~Q+Te?kEttQ()MhjP(?WsyMS`{;65wS&8=$ue#dhS_Qn?M>=4RCgZL%N#aNJn zZ7>E~oxr_>@=5{GWMInEFL(3RjO6l1ql<_{*wxy{*;1B2=V-->JlG6RuW+!S@kC&4 ziv5mYU;otw&b|NXY-^WID+(R!Wv=mF_Q?aqQSeOib*lrh_5rzWS$=kLGoP9ESxc`d zP%^}9kZA<(?2_!Yp3YEqP{P$c7zqmY)-Hq0(ugGNujw@A@1!b<>rxg`S|*DfcU|ua zVc(iwV8K=OE!k0C=N!bcC&-<|x9sb7Ka66b!%2{69O+U6G5Kfz13VIahurZ^qDFyl zV|kiI{1}g&5`ZrP;_ogbBh;2rE61soN!{lP17ohOXC&OG_Xg_k(`a;j6lR0urhc}( z8%r0oqPt73+6lhKd=0tuu$NRBdxrT!9itK^=$nqu@cxMHb1kkLG4Fal^BrsdObYTh z+B6maeQd~9<}I0AdZ^Q1&i=w{jcT!p_8sm2WYxumU~{f+=-Bd7+N;2c=SJp-yt;~R zca|vD9~W^wEMq^WNX!cRzAqJjalOVN1V;)kx@qQkof!P)l417cjXr$26XokWaO}>{ zvmj5kXO_gEx=_y7IyMt>MKSTBMIwuu{Y{O)ty5!#F8pW8N>7b@xXZ5kOC8_b%1UAR z)=l?qKZMvD)Bc4>OxCP_0eg=XF5mYbU5=30pUyKAdF@tvA-==m+=oLVfwooxny}GV zz$|8R)TgA|4tF@7ezHF?DySOP+ou-LhTl}$#1}g&eL`3jzNQHf4BR^J=@u$BIm&aO z!_=k;ku-?J+tU|MyvPLB+uiT+DS@7yEN>9LYWa%GuyQ6`Yi1IPJoo8Bes1d{(L2Yr zlaJlUNG{w)Ue6ocoJ|kue|IYoUUh$IDmDW??`dd4VTsNK(~WXIn<~N-aqrqmD$+BSfbA||x8IS?zQytS=-{#p0$Fhh z_gFHK5puyAX`c5PbG|XL9losHEwo@I!*~eirp3`oJ6)CP zIX<9rINy0p?gLHd!@B##j1l%*8y)XeXVa!K*Hbi}hj`n-?qLFDte!I5q)J>;^z9<* zy??CuTc0rhAor1l*?DiL?~1<BB(fxnpcMb8NLcrg!!KHMBeY=bYd05Nr%2CAd^PH) zjun16g#gtY(^Z=(>%zi0CQI<2-cTlL>82`sm3I`1wW+&`9sF{;emZ2F8pwuKCui;1 zq@2#?B8x1u&U2O(MbED?hUDd1@y01sWa6QTT5{>$TAe*UW3Xnl&^ML4U_6j> z>71`&r;>ugd9ympm%blTg(MI4{|7+~e*17l{E^dEdr*Uhx~rgvfZ1g~Y~_E6b9}MG z%ibaPT#of8dDjHk8>X9&_AX^K)|&;_S$;SXX~&#^Q_Da5K{mA{c<>uiTs03za&CBd zu_8$bcd+Y5bqacb9n+g1k6$>>2(E8#KJT;;WiefSp}8fj0-i>$#5IoQ0_>5y-YqW$#RgjS-Run z4bpm@-0XY#0M&D6kF4-(!YIKA#wvF%5(FQTG20^xiT=B-+`=>k4=!99 zOeh&A&@Nn1GF-ZXw|sKmb_j}Q!tLCijy!yo zCT00p_Z)3u9Z|0&4O2;|S(L`=n(5O`?&uEuy8xy~sGhfRx=h(|6RG4q94)whr_>(v zt#Sdrvio|m;$7X>$_>w9!QiZSerfB3;Gg?JB0L-eZ+7Tx*`@8Yq}=M`5JWAviSrrS zo$u?)QoUwOrN3g$WKSe1DdnQtRgm*sZH7>nnQ zys=dLEhG5)@{Q>8hhq~qNTdS4-PLOt%*cV6nk|#(6Co9N{!Ygczuv9(g>_m(CMmDl zlR8ov*X>jFGkSY7nBU&3XerN%dzY58+#6o!daCFEg_%|$A7i^@KXp4TMDD~Md)>)( zlgEAg9$Rp^Z}INrKKgVE)Z1w6@cA5YYM4{~ z7?Q0!e}03hvf&==Ox@2c`0}~=Bdb&%1JlOcp*qr+D|LZiQV9b4Vw`El)VKNqQ;UB& z@Z&P!Jpr}fLF=0&Q(SMWJYhbbhf?H?(H`9$zsIQl!XtiI-IbmxO&XP}$=teTW;vg*+ z^?&U&|5x^?GcDx$t|J{?Lqm1vLfbJ%5`xFG(kUP1Y68gbUA?{TORv1qyKXKeVhtl` z?iH3bxuKS09%d_&hK-nvGnu{>tTP?PDgi&IBr1v-CgeO}53osd%s4!2H&X7i%`$<# zLJ?)ogv31`c|8lMt$24!;LmtfGkVQx)t^RCCXo_|GHIE@MDyR%aT*w{34o8V-Nscj zI+qTskOb^RfjLla|+VbTYUrGA9T<4P~XK3sd?PuRsG?b!UjW~0^G0WU+ zzaZ>B)R#QCl}Zz^Hmswvey2hS$GMd(FQz+m%Q#m|@{GY<|Abtu^jaaiTwW&=GGP$l zt|?p4O}6NM`@b9zcP&e|qt6;spusJE=J3^{YzZuNYWzqy%P9WRX!ImDz{ zVmGa1R)6Uh#`{bO^6Z`Bm%1o?&QzhdvvYmMh?3*a)swO;-`m@Enm6w*?dnBKth187 z>RN0>+Fuy={)~0AHGq$RE&S?~8

        Bn6i@C!dbstNC}a-OL^ODOJ`vo8$h0tP+7Yi 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⁡CTml7#`8u~j<;ayRBtW(qC}S`S@A^m!$> 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 V-tqhTu>p!i`nrZXd0Ny<{|5*Aj*b8T diff --git a/ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512@3x.png b/ios/BT/Images.xcassets/logoImage.imageset/bt-logo-512@3x.png deleted file mode 100644 index 038fc0224f4f0b9710d7af7f90f6db123cdb6cda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 103982 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 - - - - BGTaskSchedulerPermittedIdentifiers - - com.transistorsoft.fetch - $(PRODUCT_BUNDLE_IDENTIFIER).exposure-notification - - CFBundleDevelopmentRegion - en - CFBundleDisplayName - PathCheck BT - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - $(MARKETING_VERSION) - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - LSApplicationCategoryType - - LSApplicationQueriesSchemes - - itms-apps - - LSRequiresIPhoneOS - - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - NSExceptionDomains - - - NSCameraUsageDescription - To simulate sharing diagnosis keys between a central server by scanning QR codes. - NSMainNibFile - LaunchScreen - UIAppFonts - - IBMPlexSans-Bold.ttf - IBMPlexSans-BoldItalic.ttf - IBMPlexSans-ExtraLight.ttf - IBMPlexSans-ExtraLightItalic.ttf - IBMPlexSans-Italic.ttf - IBMPlexSans-Light.ttf - IBMPlexSans-LightItalic.ttf - IBMPlexSans-Medium.ttf - IBMPlexSans-MediumItalic.ttf - IBMPlexSans.ttf - IBMPlexSans-SemiBold.ttf - IBMPlexSans-SemiBoldItalic.ttf - IBMPlexSans-Thin.ttf - IBMPlexSans-ThinItalic.ttf - IBMPlexMono-Bold.ttf - IBMPlexMono-BoldItalic.ttf - IBMPlexMono-ExtraLight.ttf - IBMPlexMono-ExtraLightItalic.ttf - IBMPlexMono-Italic.ttf - IBMPlexMono-Light.ttf - IBMPlexMono-LightItalic.ttf - IBMPlexMono-Medium.ttf - IBMPlexMono-MediumItalic.ttf - IBMPlexMono.ttf - IBMPlexMono-SemiBold.ttf - IBMPlexMono-SemiBoldItalic.ttf - IBMPlexMono-Thin.ttf - IBMPlexMono-ThinItalic.ttf - - UIBackgroundModes - - fetch - processing - - UILaunchStoryboardName - LaunchScreen - UIRequiredDeviceCapabilities - - armv7 - bluetooth-le - telephony - - UIStatusBarStyle - UIStatusBarStyleLightContent - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - - UIUserInterfaceStyle - Light - UIViewControllerBasedStatusBarAppearance - - - diff --git a/ios/BT/Storage/BTSecureStorage.swift b/ios/BT/Storage/BTSecureStorage.swift deleted file mode 100644 index 3d0688183c..0000000000 --- a/ios/BT/Storage/BTSecureStorage.swift +++ /dev/null @@ -1,102 +0,0 @@ -import ExposureNotification -import Foundation -import RealmSwift - -final class BTSecureStorage: SafePathsSecureStorage { - - static let shared = BTSecureStorage(inMemory: false) - - override var keychainIdentifier: String { - "\(Bundle.main.bundleIdentifier!).realm" - } - - private lazy var realmConfig: Realm.Configuration = { - guard let realmConfig = getRealmConfig() else { - fatalError("Missing realm configuration") - } - return realmConfig - }() - - override init(inMemory: Bool = false) { - super.init(inMemory: inMemory) - if !userStateExists { - resetUserState({ _ in }) - } - } - - override func getRealmConfig() -> Realm.Configuration? { - if let key = getEncryptionKey() { - if (inMemory) { - return Realm.Configuration(inMemoryIdentifier: identifier, encryptionKey: key as Data, schemaVersion: 4, - migrationBlock: { _, _ in }, objectTypes: [UserState.self, Exposure.self]) - } else { - return Realm.Configuration(encryptionKey: key as Data, schemaVersion: 4, - migrationBlock: { _, _ in }, objectTypes: [UserState.self, Exposure.self]) - } - } else { - return nil - } - } - - var userState: UserState { - let realm = try! Realm(configuration: realmConfig) - return realm.object(ofType: UserState.self, forPrimaryKey: 0) ?? UserState() - } - - var userStateExists: Bool { - let realm = try! Realm(configuration: realmConfig) - return realm.object(ofType: UserState.self, forPrimaryKey: 0) != nil - } - - func setUserValue(value: Value, keyPath: String, notificationName: Notification.Name) { - let realm = try! Realm(configuration: realmConfig) - try! realm.write { - realm.create(UserState.self, value: [keyPath: value], update: .modified) - let jsonString = value.jsonStringRepresentation() - NotificationCenter.default.post(name: notificationName, object: jsonString) - } - } - - func resetUserState(_ completion: ((UserState) -> Void)) { - guard let realmConfig = getRealmConfig() else { - return - } - let realm = try! Realm(configuration: realmConfig) - try! realm.write { - let userState = UserState() - realm.add(userState, update: .modified) - completion(userState) - } - } - - func storeExposures(_ exposures: [Exposure]) { - let realm = try! Realm(configuration: realmConfig) - try! realm.write { - userState.exposures.append(objectsIn: exposures) - let jsonString = userState.exposures.jsonStringRepresentation() - NotificationCenter.default.post(name: .ExposuresDidChange, object: jsonString) - } - } - - @Persisted(keyPath: .remainingDailyFileProcessingCapacity, notificationName: .remainingDailyFileProcessingCapacityDidChange, defaultValue: Constants.dailyFileProcessingCapacity) - var remainingDailyFileProcessingCapacity: Int - - @Persisted(keyPath: .urlOfMostRecentlyDetectedKeyFile, notificationName: .UrlOfMostRecentlyDetectedKeyFileDidChange, defaultValue: .default) - var urlOfMostRecentlyDetectedKeyFile: String - - @Persisted(keyPath: .keyPathExposures, notificationName: .ExposuresDidChange, defaultValue: List()) - var exposures: List - - @Persisted(keyPath: .keyPathdateLastPerformedFileCapacityReset, - notificationName: .dateLastPerformedFileCapacityResetDidChange, defaultValue: nil) - var dateLastPerformedFileCapacityReset: Date? - - @Persisted(keyPath: .keyPathHMACKey, - notificationName: .HMACKeyDidChange, defaultValue: "") - var HMACKey: String - - @Persisted(keyPath: .keyPathExposureDetectionErrorLocalizedDescription, notificationName: - .StorageExposureDetectionErrorLocalizedDescriptionDidChange, defaultValue: .default) - var exposureDetectionErrorLocalizedDescription: String - -} diff --git a/ios/BT/Storage/Persisted.swift b/ios/BT/Storage/Persisted.swift deleted file mode 100644 index bed17c777f..0000000000 --- a/ios/BT/Storage/Persisted.swift +++ /dev/null @@ -1,29 +0,0 @@ -import Foundation -import RealmSwift - -@propertyWrapper -class Persisted { - - init(keyPath: String, notificationName: Notification.Name, defaultValue: Value) { - self.keyPath = keyPath - self.notificationName = notificationName - self.wrappedValue = defaultValue - } - - let keyPath: String - let notificationName: Notification.Name - - var wrappedValue: Value { - didSet { - BTSecureStorage.shared.setUserValue(value: wrappedValue, keyPath: keyPath, notificationName: notificationName) - } - } - - var projectedValue: Persisted { self } - - func addObserver(using block: @escaping () -> Void) -> NSObjectProtocol { - return NotificationCenter.default.addObserver(forName: notificationName, object: nil, queue: nil) { _ in - block() - } - } -} diff --git a/ios/BT/bridge/DebugMenuModule.m b/ios/BT/bridge/DebugMenuModule.m deleted file mode 100644 index 521033c4f4..0000000000 --- a/ios/BT/bridge/DebugMenuModule.m +++ /dev/null @@ -1,78 +0,0 @@ -#import -#import -#import "BT-Swift.h" - -@interface DebugMenuModule: NSObject -@end - -@implementation DebugMenuModule - -RCT_EXPORT_MODULE(); - -RCT_REMAP_METHOD(fetchDiagnosisKeys, - fetchDiagnosisKeysWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionFetchDiagnosisKeys resolve:resolve reject:reject]; -} - -RCT_REMAP_METHOD(detectExposuresNow, - detectExposuresNowWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionDetectExposuresNow resolve:resolve reject:reject]; -} - -RCT_REMAP_METHOD(simulateExposureDetectionError, - simulateExposureDetectionErrorWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionSimulateExposureDetectionError resolve:resolve reject:reject]; - -} - -RCT_REMAP_METHOD(simulateExposure, - simulateExposureWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionSimulateExposure resolve:resolve reject:reject]; -} - - -RCT_REMAP_METHOD(fetchExposures, - fetchExposuresWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionSimulateExposure resolve:resolve reject:reject]; -} - -RCT_REMAP_METHOD(toggleExposureNotifications, - toggleExposureNotificationsWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionToggleENAuthorization resolve:resolve reject:reject]; -} - -RCT_REMAP_METHOD(resetExposures, - resetExposuresWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionResetExposures resolve:resolve reject:reject]; -} - -RCT_REMAP_METHOD(submitExposureKeys, - submitExposureKeysResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionGetAndPostDiagnosisKeys resolve:resolve reject:reject]; -} - - -RCT_REMAP_METHOD(showLastProcessedFilePath, - showLastProcessedFilePathResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] handleDebugAction:DebugActionShowLastProcessedFilePath resolve:resolve reject:reject]; -} - -@end diff --git a/ios/BT/bridge/ENPermissionsModule.m b/ios/BT/bridge/ENPermissionsModule.m deleted file mode 100644 index 3b479dbfd4..0000000000 --- a/ios/BT/bridge/ENPermissionsModule.m +++ /dev/null @@ -1,20 +0,0 @@ -#import -#import -#import "BT-Swift.h" - -@interface ENPermissionsModule: NSObject -@end - -@implementation ENPermissionsModule - -RCT_EXPORT_MODULE(); - -RCT_EXPORT_METHOD(requestExposureNotificationAuthorization: (RCTResponseSenderBlock)callback) { - [[ExposureManager shared] requestExposureNotificationAuthorizationWithEnabled:YES callback:callback]; -} - -RCT_EXPORT_METHOD(getCurrentENPermissionsStatus: (RCTResponseSenderBlock)callback) { - [[ExposureManager shared] getCurrentENPermissionsStatusWithCallback:callback]; -} - -@end diff --git a/ios/BT/bridge/ExposureEventEmitter.m b/ios/BT/bridge/ExposureEventEmitter.m deleted file mode 100644 index f469c35dc4..0000000000 --- a/ios/BT/bridge/ExposureEventEmitter.m +++ /dev/null @@ -1,59 +0,0 @@ -#import -#import - -// Notification/Event Names -NSString *const onEnabledStatusUpdated = @"onEnabledStatusUpdated"; -NSString *const onExposuresChanged = @"onExposureRecordUpdated"; - -@interface ExposureEventEmitter : RCTEventEmitter -@end - -@implementation ExposureEventEmitter - -+ (BOOL)requiresMainQueueSetup -{ - return YES; // only do this if your module initialization relies on calling UIKit! -} - -RCT_EXPORT_MODULE(); - -- (instancetype)init -{ - self = [super init]; - if (self) { - [self startObserving]; - } - return self; -} - - -- (NSArray *)supportedEvents { - return @[ - onExposuresChanged, - onEnabledStatusUpdated - ]; -} - -- (void)startObserving { - [self stopObserving]; - for (NSString *event in [self supportedEvents]) { - [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(handleNotification:) - name:event - object:nil]; - } -} - -- (void)stopObserving { - [[NSNotificationCenter defaultCenter] removeObserver:self]; -} - -# pragma mark Private - -- (void)handleNotification:(NSNotification *)notification { - - [self sendEventWithName:notification.name body: notification.object]; - -} - -@end diff --git a/ios/BT/bridge/ExposureHistoryModule.m b/ios/BT/bridge/ExposureHistoryModule.m deleted file mode 100644 index 3c868fe5cb..0000000000 --- a/ios/BT/bridge/ExposureHistoryModule.m +++ /dev/null @@ -1,24 +0,0 @@ -#import -#import -#import -#import "BT-Swift.h" - -@interface ExposureHistoryModule: NSObject -@end - -@implementation ExposureHistoryModule - -RCT_EXPORT_MODULE(); - -RCT_EXPORT_METHOD(getCurrentExposures: (RCTResponseSenderBlock)callback) { - callback(@[[[ExposureManager shared] currentExposures]]); -} - -RCT_REMAP_METHOD(fetchLastDetectionDate, - fetchLastDetectionDateWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] fetchLastDetectionDateWithResolve:resolve reject:reject]; -} - -@end diff --git a/ios/BT/bridge/ExposureKeyModule.m b/ios/BT/bridge/ExposureKeyModule.m deleted file mode 100644 index ad834f4492..0000000000 --- a/ios/BT/bridge/ExposureKeyModule.m +++ /dev/null @@ -1,30 +0,0 @@ -#import -#import -#import -#import "BT-Swift.h" - -@interface ExposureKeyModule: NSObject -@end - -@implementation ExposureKeyModule - -RCT_EXPORT_MODULE(); - -RCT_REMAP_METHOD(fetchExposureKeys, - fetchExposureKeysWithResolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] fetchExposureKeysWithResolve:resolve reject:reject]; -} - -RCT_REMAP_METHOD(postDiagnosisKeys, - certificate: (NSString *)certificate - hmacKey: (NSString *)HMACKey - resolver:(RCTPromiseResolveBlock)resolve - rejecter:(RCTPromiseRejectBlock)reject) -{ - [[ExposureManager shared] getAndPostDiagnosisKeysWithCertificate:certificate HMACKey:HMACKey resolve:resolve reject:reject]; -} - - -@end diff --git a/ios/BT/main.m b/ios/BT/main.m deleted file mode 100644 index 5732e9a03a..0000000000 --- a/ios/BT/main.m +++ /dev/null @@ -1,18 +0,0 @@ -// -// main.m -// BT -// -// Created by John Schoeman on 5/28/20. -// Copyright © 2020 Path Check Inc. All rights reserved. -// - -#import - -#import "AppDelegate.h" - -int main(int argc, char * argv[]) { - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} - diff --git a/ios/BTTestsInfo.plist b/ios/BTTestsInfo.plist deleted file mode 100644 index 66f61f3829..0000000000 --- a/ios/BTTestsInfo.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0.28 - CFBundleSignature - ???? - CFBundleVersion - 1.0.28 - - diff --git a/ios/COVIDSafePaths.xcodeproj/project.pbxproj b/ios/COVIDSafePaths.xcodeproj/project.pbxproj index 119dc74f70..d82bb97d3d 100644 --- a/ios/COVIDSafePaths.xcodeproj/project.pbxproj +++ b/ios/COVIDSafePaths.xcodeproj/project.pbxproj @@ -9,7 +9,6 @@ /* Begin PBXBuildFile section */ 00E356F31AD99517003FC87E /* COVIDSafePathsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* COVIDSafePathsTests.m */; }; 0814DA4E882656978623FE96 /* libPods-GPS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D04E3B4F6078718D8B62A9D /* libPods-GPS.a */; }; - 0835F8922441054A00E95AE3 /* RNBackgroundFetch+AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0835F8902441054900E95AE3 /* RNBackgroundFetch+AppDelegate.m */; }; 08445F4C24283AFF008754AC /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F4B24283AFF008754AC /* Accelerate.framework */; }; 08445F4E24283B0B008754AC /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F4D24283B0B008754AC /* CoreData.framework */; }; 08445F50242849C1008754AC /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F4F242849C1008754AC /* CoreGraphics.framework */; }; @@ -27,134 +26,51 @@ 08445F6824284A52008754AC /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F6724284A52008754AC /* UIKit.framework */; }; 12922BC2C16E4BCCB3F4EA44 /* IBMPlexSans-Bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 668BDA050EF549C6B0759425 /* IBMPlexSans-Bold.ttf */; }; 1360D7CA70F14549967C9912 /* IBMPlexMono-ThinItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3918820E06534ED8B0C3323C /* IBMPlexMono-ThinItalic.ttf */; }; - 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; - 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB11A68108700A75B9A /* LaunchScreen.xib */; }; - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 25004E4C90704C6B807B88C7 /* IBMPlexMono-MediumItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 71F26FBF5BDA423184286546 /* IBMPlexMono-MediumItalic.ttf */; }; 2606D1B2B11C4D419867361F /* IBMPlexSans-MediumItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A57577D96B89452694B53982 /* IBMPlexSans-MediumItalic.ttf */; }; 271089B024698720009AC76F /* LocationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 271089AF24698720009AC76F /* LocationTests.swift */; }; 271881C02461AF76001DE067 /* SafePathsSecureStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 271881BF2461AF76001DE067 /* SafePathsSecureStorage.swift */; }; 271881C32461BF19001DE067 /* RealmSecureStorageTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 271881C22461BF19001DE067 /* RealmSecureStorageTest.swift */; }; 276AB15C245291DE00D39B58 /* Location.swift in Sources */ = {isa = PBXBuildFile; fileRef = 276AB15B245291DE00D39B58 /* Location.swift */; }; - 27F931572459E28800E1024C /* SecureStorageManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 27F931562459E28800E1024C /* SecureStorageManager.m */; }; - 27F9315A2459E2BD00E1024C /* SecureStorageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27F931592459E2BD00E1024C /* SecureStorageManager.swift */; }; 3AD7E092BBC64F37879D040B /* IBMPlexMono.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 08F2A97BB10A459D962AB877 /* IBMPlexMono.ttf */; }; 3C14AE6C1C3B4428A17E7616 /* IBMPlexSans-LightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C98841A50F7B43E5987C2D4A /* IBMPlexSans-LightItalic.ttf */; }; 3E97D87FD88C42B79836C314 /* IBMPlexMono-Italic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8CA5CB7E2A134220AB62370B /* IBMPlexMono-Italic.ttf */; }; - 49C5264730115D459DEB65DA /* libPods-BT.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B7372C03D7AA19943931FCE4 /* libPods-BT.a */; }; 4B96C998B698BEF36609E7BA /* libPods-GPSTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6A9CA53C8BA83132D03AD65C /* libPods-GPSTests.a */; }; 522B6187A48A4AF3A676D5A0 /* IBMPlexSans-Thin.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1423A22FF9E04F88BEEE42D6 /* IBMPlexSans-Thin.ttf */; }; 527CA705E5514AF9BEAC9A2F /* IBMPlexMono-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6C8CF282C4264C88A4ED8ABF /* IBMPlexMono-Medium.ttf */; }; 57693D8BEF8A40C289F7168A /* IBMPlexSans-ExtraLightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3A582C62ABAC478BBD976037 /* IBMPlexSans-ExtraLightItalic.ttf */; }; 6858E21561F14E61A6A85280 /* IBMPlexSans-SemiBoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 747AA5DBBC684319A8273F2C /* IBMPlexSans-SemiBoldItalic.ttf */; }; 68D8970624809AA50091A254 /* Scrypt in Frameworks */ = {isa = PBXBuildFile; productRef = 68D8970524809AA50091A254 /* Scrypt */; }; - 68D8970C24809B4E0091A254 /* MAURLocation+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8970B24809B4E0091A254 /* MAURLocation+Extension.swift */; }; 68D8970F24809CEB0091A254 /* Geohash.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8970E24809CEB0091A254 /* Geohash.swift */; }; - 68D8971224809DAE0091A254 /* Array+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8971124809DAE0091A254 /* Array+Extension.swift */; }; - 68D8971524809E4B0091A254 /* String+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8971424809E4B0091A254 /* String+Extension.swift */; }; 68D8971824809F5C0091A254 /* MARULocation+ExtensionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8971724809F5C0091A254 /* MARULocation+ExtensionTests.swift */; }; 68D8971A24809F9C0091A254 /* GeohashTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8971924809F9C0091A254 /* GeohashTests.swift */; }; 68D8971C24809FB50091A254 /* Array+ExtensionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68D8971B24809FB50091A254 /* Array+ExtensionTests.swift */; }; - 68EFB21324856EC6003D84F3 /* Scrypt in Frameworks */ = {isa = PBXBuildFile; productRef = 68EFB21224856EC6003D84F3 /* Scrypt */; }; - 68EFB215248570C2003D84F3 /* Log.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68EFB214248570C2003D84F3 /* Log.swift */; }; 7A2281C376904F23BCA10FCA /* IBMPlexSans.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 89D241005D9647C4B0586127 /* IBMPlexSans.ttf */; }; 8A5B44AA7D724388B70F100B /* IBMPlexSans-ExtraLight.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 36B22BAB357B44949D2E168C /* IBMPlexSans-ExtraLight.ttf */; }; 8CB0C49FEC0F493D95420B30 /* IBMPlexMono-ExtraLight.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3053DF05D78949A09366B85D /* IBMPlexMono-ExtraLight.ttf */; }; 966BF87C9654448280E34CD8 /* IBMPlexSans-Italic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 210E5F50B07048118538B796 /* IBMPlexSans-Italic.ttf */; }; A0DE2282B6A14351BC318062 /* IBMPlexMono-Thin.ttf in Resources */ = {isa = PBXBuildFile; fileRef = DF7DA7FE28F84E9EA7A6E4D4 /* IBMPlexMono-Thin.ttf */; }; A5EA4480D4CC4B468D4B4DDC /* IBMPlexMono-SemiBoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 997AE6137471448A99893BC8 /* IBMPlexMono-SemiBoldItalic.ttf */; }; - B01CF5299E2C4108F39C1232 /* libPods-BTTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D74339326986C2F8EE1F59BA /* libPods-BTTests.a */; }; - B2A58219244CE80C000F39A6 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = B2A5821B244CE80C000F39A6 /* InfoPlist.strings */; }; - B507A9EE24A197FF00E039D5 /* DownloadedPackage.swift in Sources */ = {isa = PBXBuildFile; fileRef = B507A9ED24A197FF00E039D5 /* DownloadedPackage.swift */; }; - B507AA0724A2533200E039D5 /* DownloadPackage+Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = B507AA0624A2533200E039D5 /* DownloadPackage+Helpers.swift */; }; - B52D88C0248F0FC00071ED51 /* SafePathsSecureStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 271881BF2461AF76001DE067 /* SafePathsSecureStorage.swift */; }; B52D88C2248F0FD90071ED51 /* GPSSecureStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = B52D88C1248F0FD90071ED51 /* GPSSecureStorage.swift */; }; - B52D88C4248F10FD0071ED51 /* BTSecureStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = B52D88C3248F10FD0071ED51 /* BTSecureStorage.swift */; }; - B54CBF26249A72E700218477 /* Region.swift in Sources */ = {isa = PBXBuildFile; fileRef = B54CBF25249A72E700218477 /* Region.swift */; }; - B54CBF32249A738500218477 /* IndexFileRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B54CBF31249A738500218477 /* IndexFileRequests.swift */; }; - B5582D47249943E5001458A9 /* ExposureEventEmitter.m in Sources */ = {isa = PBXBuildFile; fileRef = B5582D43249943DE001458A9 /* ExposureEventEmitter.m */; }; - B576CC4324993F5200CDD9D9 /* Date+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B576CC3D24993F4C00CDD9D9 /* Date+Extensions.swift */; }; - B576CC4424993F5200CDD9D9 /* Encodable+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B576CC4024993F4C00CDD9D9 /* Encodable+Extensions.swift */; }; - B596C0722488127D00943B79 /* ENPermissionsModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B596C0712488127D00943B79 /* ENPermissionsModule.m */; }; - B59F4C3524BDF879007B09D5 /* ExposureHistoryModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B59F4C3424BDF879007B09D5 /* ExposureHistoryModule.m */; }; - B59F4C3724BE0658007B09D5 /* List+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B59F4C3624BE0658007B09D5 /* List+Extensions.swift */; }; - B5A6FD6E24BC9E69007D328C /* ExposureManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5A6FD6A24BC9E54007D328C /* ExposureManagerTests.swift */; }; - B5C9723024B8A909007F4C0B /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5C9722F24B8A909007F4C0B /* Constants.swift */; }; - B5E29D54249E3BE100E686DC /* ExposureManager+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5E29D53249E3BE100E686DC /* ExposureManager+Extensions.swift */; }; - B5E79437249E666B00BD8596 /* Array+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5E79436249E666B00BD8596 /* Array+Extensions.swift */; }; - B5FB3B43248BD61A001DB1D5 /* DebugMenuModule.m in Sources */ = {isa = PBXBuildFile; fileRef = B5FB3B42248BD61A001DB1D5 /* DebugMenuModule.m */; }; - B5FBB0BD2490339900433980 /* DiagnosisKeyUrlRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FBB0BC2490339900433980 /* DiagnosisKeyUrlRequests.swift */; }; - B5FBB0CF24916A4C00433980 /* DebugAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FBB0CE24916A4C00433980 /* DebugAction.swift */; }; - B5FBB0D124916A7200433980 /* Persisted.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FBB0D024916A7200433980 /* Persisted.swift */; }; - B5FBB0D324916B3600433980 /* String+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FBB0D224916B3600433980 /* String+Extensions.swift */; }; - B5FBB0D524916D8900433980 /* UserState.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FBB0D424916D8900433980 /* UserState.swift */; }; - B5FBB0D724916DE100433980 /* Notification+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FBB0D624916DE100433980 /* Notification+Extensions.swift */; }; - B5FC37C12489B075006474EB /* APIClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37C02489B075006474EB /* APIClient.swift */; }; - B5FC37C62489B1B3006474EB /* APIRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37C52489B1B3006474EB /* APIRequest.swift */; }; - B5FC37CA2489B1C1006474EB /* JSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37C92489B1C1006474EB /* JSON.swift */; }; - B5FC37CC2489B251006474EB /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37CB2489B251006474EB /* Result.swift */; }; - B5FC37CE2489B359006474EB /* TypeAliases.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37CD2489B359006474EB /* TypeAliases.swift */; }; - B5FC37D02489B3DE006474EB /* StructuredError.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37CF2489B3DE006474EB /* StructuredError.swift */; }; - B5FC37D8248A784F006474EB /* DiagnosisKeyRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37D7248A784F006474EB /* DiagnosisKeyRequests.swift */; }; - B5FC37DD248A78D2006474EB /* ExposureKey.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37DC248A78D2006474EB /* ExposureKey.swift */; }; - B5FC37DF248A78FC006474EB /* ExposureConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37DE248A78FC006474EB /* ExposureConfiguration.swift */; }; - B5FC37E1248A7EED006474EB /* ExposureConfigurationRequests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37E0248A7EED006474EB /* ExposureConfigurationRequests.swift */; }; - B5FC37E3248A82AE006474EB /* Exposure.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37E2248A82AE006474EB /* Exposure.swift */; }; - B5FC37F6248A9968006474EB /* ENTemporaryExposureKey+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FC37F5248A9968006474EB /* ENTemporaryExposureKey+Extensions.swift */; }; BB916399F2D64D8D89249A05 /* IBMPlexSans-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 5D98D5DA5B77459FACDD673D /* IBMPlexSans-Light.ttf */; }; BEA401E86568452A9E8FF210 /* IBMPlexSans-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C42F32AF52974EE8ADEE67B5 /* IBMPlexSans-Medium.ttf */; }; - C53FD08B24719AD1006D3268 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F6724284A52008754AC /* UIKit.framework */; }; - C53FD08C24719AD1006D3268 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F6524284A42008754AC /* SystemConfiguration.framework */; }; - C53FD08D24719AD1006D3268 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F6324284A36008754AC /* QuartzCore.framework */; }; - C53FD08E24719AD1006D3268 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F6124284A2C008754AC /* OpenGLES.framework */; }; - C53FD08F24719AD1006D3268 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F5F24284A22008754AC /* libz.tbd */; }; - C53FD09024719AD1006D3268 /* libc++.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F5D24284A15008754AC /* libc++.tbd */; }; - C53FD09124719AD1006D3268 /* ImageIO.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F5B24284A08008754AC /* ImageIO.framework */; }; - C53FD09224719AD1006D3268 /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F59242849FD008754AC /* GLKit.framework */; }; - C53FD09324719AD1006D3268 /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F57242849F1008754AC /* CoreText.framework */; }; - C53FD09424719AD1006D3268 /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F55242849E5008754AC /* CoreTelephony.framework */; }; - C53FD09524719AD1006D3268 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F53242849D8008754AC /* CoreLocation.framework */; }; - C53FD09624719AD1006D3268 /* CoreImage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F51242849CF008754AC /* CoreImage.framework */; }; - C53FD09724719AD1006D3268 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F4F242849C1008754AC /* CoreGraphics.framework */; }; - C53FD09824719AD1006D3268 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F4D24283B0B008754AC /* CoreData.framework */; }; - C53FD09924719AD1006D3268 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08445F4B24283AFF008754AC /* Accelerate.framework */; }; - C53FD09E24719AD1006D3268 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB11A68108700A75B9A /* LaunchScreen.xib */; }; - C53FD09F24719AD1006D3268 /* IBMPlexMono-Bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = AE25A1CE9ED048DC83FAE7B0 /* IBMPlexMono-Bold.ttf */; }; - C53FD0A024719AD1006D3268 /* IBMPlexMono-BoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 9B4A262ECA724F9CAB9A2C70 /* IBMPlexMono-BoldItalic.ttf */; }; - C53FD0A124719AD1006D3268 /* IBMPlexMono-ExtraLight.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3053DF05D78949A09366B85D /* IBMPlexMono-ExtraLight.ttf */; }; - C53FD0A224719AD1006D3268 /* IBMPlexMono-ExtraLightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 167DF82F84E242A39CBEB042 /* IBMPlexMono-ExtraLightItalic.ttf */; }; - C53FD0A324719AD1006D3268 /* IBMPlexMono-Italic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 8CA5CB7E2A134220AB62370B /* IBMPlexMono-Italic.ttf */; }; - C53FD0A424719AD1006D3268 /* IBMPlexMono-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E5C8EDCCEFCE4874A747E404 /* IBMPlexMono-Light.ttf */; }; - C53FD0A524719AD1006D3268 /* IBMPlexMono-LightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CF0DA9BBE69043D2BD80FF3B /* IBMPlexMono-LightItalic.ttf */; }; - C53FD0A624719AD1006D3268 /* IBMPlexMono-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6C8CF282C4264C88A4ED8ABF /* IBMPlexMono-Medium.ttf */; }; - C53FD0A724719AD1006D3268 /* IBMPlexMono-MediumItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 71F26FBF5BDA423184286546 /* IBMPlexMono-MediumItalic.ttf */; }; - C53FD0A824719AD1006D3268 /* IBMPlexMono-SemiBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BF6254720C1D4A3288ECE351 /* IBMPlexMono-SemiBold.ttf */; }; - C53FD0A924719AD1006D3268 /* IBMPlexMono-SemiBoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 997AE6137471448A99893BC8 /* IBMPlexMono-SemiBoldItalic.ttf */; }; - C53FD0AA24719AD1006D3268 /* IBMPlexMono-Thin.ttf in Resources */ = {isa = PBXBuildFile; fileRef = DF7DA7FE28F84E9EA7A6E4D4 /* IBMPlexMono-Thin.ttf */; }; - C53FD0AB24719AD1006D3268 /* IBMPlexMono-ThinItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3918820E06534ED8B0C3323C /* IBMPlexMono-ThinItalic.ttf */; }; - C53FD0AC24719AD1006D3268 /* IBMPlexMono.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 08F2A97BB10A459D962AB877 /* IBMPlexMono.ttf */; }; - C53FD0AD24719AD1006D3268 /* IBMPlexSans-Bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 668BDA050EF549C6B0759425 /* IBMPlexSans-Bold.ttf */; }; - C53FD0AE24719AD1006D3268 /* IBMPlexSans-BoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C6CBA4DBBF104AC1AB920555 /* IBMPlexSans-BoldItalic.ttf */; }; - C53FD0AF24719AD1006D3268 /* IBMPlexSans-ExtraLight.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 36B22BAB357B44949D2E168C /* IBMPlexSans-ExtraLight.ttf */; }; - C53FD0B024719AD1006D3268 /* IBMPlexSans-ExtraLightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3A582C62ABAC478BBD976037 /* IBMPlexSans-ExtraLightItalic.ttf */; }; - C53FD0B124719AD1006D3268 /* IBMPlexSans-Italic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 210E5F50B07048118538B796 /* IBMPlexSans-Italic.ttf */; }; - C53FD0B224719AD1006D3268 /* IBMPlexSans-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 5D98D5DA5B77459FACDD673D /* IBMPlexSans-Light.ttf */; }; - C53FD0B324719AD1006D3268 /* IBMPlexSans-LightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C98841A50F7B43E5987C2D4A /* IBMPlexSans-LightItalic.ttf */; }; - C53FD0B424719AD1006D3268 /* IBMPlexSans-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = C42F32AF52974EE8ADEE67B5 /* IBMPlexSans-Medium.ttf */; }; - C53FD0B524719AD1006D3268 /* IBMPlexSans-MediumItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = A57577D96B89452694B53982 /* IBMPlexSans-MediumItalic.ttf */; }; - C53FD0B624719AD1006D3268 /* IBMPlexSans-SemiBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 4904B061CC24439783E20928 /* IBMPlexSans-SemiBold.ttf */; }; - C53FD0B724719AD1006D3268 /* IBMPlexSans-SemiBoldItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 747AA5DBBC684319A8273F2C /* IBMPlexSans-SemiBoldItalic.ttf */; }; - C53FD0B824719AD1006D3268 /* IBMPlexSans-Thin.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1423A22FF9E04F88BEEE42D6 /* IBMPlexSans-Thin.ttf */; }; - C53FD0B924719AD1006D3268 /* IBMPlexSans-ThinItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FF7D8132928346A2904ED363 /* IBMPlexSans-ThinItalic.ttf */; }; - C53FD0BA24719AD1006D3268 /* IBMPlexSans.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 89D241005D9647C4B0586127 /* IBMPlexSans.ttf */; }; - C550A66624B7906F002CA7F2 /* ExposureKeyModule.m in Sources */ = {isa = PBXBuildFile; fileRef = C550A66524B7906F002CA7F2 /* ExposureKeyModule.m */; }; - C58463E42486C51100BCB842 /* ExposureManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58463E32486C51100BCB842 /* ExposureManager.swift */; }; - C5850A64247D5A41007A596B /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = C5850A63247D5A41007A596B /* Images.xcassets */; }; - C5AA24D824768FFF00BA0A99 /* COVIDSafePathsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* COVIDSafePathsTests.m */; }; - C5C850C7248014F700A494CA /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = C5C850C6248014F700A494CA /* main.m */; }; - C5C850CA2480156200A494CA /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = C5C850C92480156200A494CA /* AppDelegate.m */; }; - C5EF723724864F8500AA39D5 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = C5EF72202485D0E600AA39D5 /* main.m */; }; D43E27B6F1E045D798270A11 /* IBMPlexSans-SemiBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 4904B061CC24439783E20928 /* IBMPlexSans-SemiBold.ttf */; }; + D4B4A85F24C8A16400E00A99 /* Log.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A85A24C8A16400E00A99 /* Log.swift */; }; + D4B4A86024C8A16400E00A99 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A85B24C8A16400E00A99 /* main.m */; }; + D4B4A86124C8A16400E00A99 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A85D24C8A16400E00A99 /* AppDelegate.m */; }; + D4B4A88B24C8A17300E00A99 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A86424C8A17300E00A99 /* Localizable.strings */; }; + D4B4A88C24C8A17300E00A99 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A86624C8A17300E00A99 /* InfoPlist.strings */; }; + D4B4A89124C8A18E00E00A99 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A88E24C8A18E00E00A99 /* LaunchScreen.xib */; }; + D4B4A89224C8A18E00E00A99 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A89024C8A18E00E00A99 /* Images.xcassets */; }; + D4B4A8A024C8A1A700E00A99 /* MAURLocation+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A89424C8A1A700E00A99 /* MAURLocation+Extension.swift */; }; + D4B4A8A124C8A1A700E00A99 /* String+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A89524C8A1A700E00A99 /* String+Extension.swift */; }; + D4B4A8A224C8A1A700E00A99 /* Array+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A89624C8A1A700E00A99 /* Array+Extension.swift */; }; + D4B4A8A324C8A1A700E00A99 /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A89824C8A1A700E00A99 /* Debug.xcconfig */; }; + D4B4A8A424C8A1A700E00A99 /* Release.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A89924C8A1A700E00A99 /* Release.xcconfig */; }; + D4B4A8A524C8A1A700E00A99 /* Version.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A89A24C8A1A700E00A99 /* Version.xcconfig */; }; + D4B4A8A624C8A1A700E00A99 /* Staging.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = D4B4A89B24C8A1A700E00A99 /* Staging.xcconfig */; }; + D4B4A8A724C8A1A700E00A99 /* SecureStorageManager.m in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A89D24C8A1A700E00A99 /* SecureStorageManager.m */; }; + D4B4A8A824C8A1A700E00A99 /* SecureStorageManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B4A89F24C8A1A700E00A99 /* SecureStorageManager.swift */; }; D668C3DAB08B4FCBB01E8C2D /* IBMPlexMono-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = E5C8EDCCEFCE4874A747E404 /* IBMPlexMono-Light.ttf */; }; D7E714F18C9C4172BC01ADF8 /* IBMPlexMono-SemiBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BF6254720C1D4A3288ECE351 /* IBMPlexMono-SemiBold.ttf */; }; DED6BB86437B4610B1CD3302 /* IBMPlexSans-ThinItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = FF7D8132928346A2904ED363 /* IBMPlexSans-ThinItalic.ttf */; }; @@ -180,13 +96,6 @@ remoteGlobalIDString = 3D7682761D8E76B80014119E; remoteInfo = SplashScreen; }; - C5AA24E32476901700BA0A99 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; - proxyType = 1; - remoteGlobalIDString = C53FD07D24719AD1006D3268; - remoteInfo = BT; - }; C5C850E024804A0300A494CA /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = C5C850DC24804A0300A494CA /* RCTBackgroundGeolocation.xcodeproj */; @@ -197,11 +106,9 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; 00E356EE1AD99517003FC87E /* GPSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = GPSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* COVIDSafePathsTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = COVIDSafePathsTests.m; sourceTree = ""; }; - 0835F8902441054900E95AE3 /* RNBackgroundFetch+AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "RNBackgroundFetch+AppDelegate.m"; path = "../../node_modules/react-native-background-fetch/ios/RNBackgroundFetch/RNBackgroundFetch+AppDelegate.m"; sourceTree = ""; }; 08445F4324283A2F008754AC /* GoogleMapsBase.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GoogleMapsBase.framework; path = "GoogleMaps-3.8.0/Base/Frameworks/GoogleMapsBase.framework"; sourceTree = ""; }; 08445F4524283A40008754AC /* GoogleMaps.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GoogleMaps.framework; path = "GoogleMaps-3.8.0/Maps/Frameworks/GoogleMaps.framework"; sourceTree = ""; }; 08445F4724283A46008754AC /* GoogleMapsCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GoogleMapsCore.framework; path = "GoogleMaps-3.8.0/Maps/Frameworks/GoogleMapsCore.framework"; sourceTree = ""; }; @@ -224,12 +131,8 @@ 08F2A97BB10A459D962AB877 /* IBMPlexMono.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = IBMPlexMono.ttf; path = ../shared/assets/fonts/IBMPlexMono.ttf; sourceTree = ""; }; 0AB0A08F38494307BF6F0EBC /* IBMPlexMono-ThinItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-ThinItalic.ttf"; path = "../app/assets/fonts/IBMPlexMono-ThinItalic.ttf"; sourceTree = ""; }; 0DD29292C60B45029B7823D6 /* IBMPlexSans-ExtraLight.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-ExtraLight.ttf"; path = "../app/assets/fonts/IBMPlexSans-ExtraLight.ttf"; sourceTree = ""; }; + 0EA86B049D0BB9D221E6F627 /* Pods-GPSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPSTests.debug.xcconfig"; path = "Target Support Files/Pods-GPSTests/Pods-GPSTests.debug.xcconfig"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* GPS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = GPS.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 13B07FB21A68108700A75B9A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 141B3702EDB77175BCFE1BA2 /* Pods-BTTests.release-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BTTests.release-bt.xcconfig"; path = "Target Support Files/Pods-BTTests/Pods-BTTests.release-bt.xcconfig"; sourceTree = ""; }; 1423A22FF9E04F88BEEE42D6 /* IBMPlexSans-Thin.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Thin.ttf"; path = "../shared/assets/fonts/IBMPlexSans-Thin.ttf"; sourceTree = ""; }; 145476A32A7724DCC004C292 /* Pods-GPS.staging-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.staging-gps.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.staging-gps.xcconfig"; sourceTree = ""; }; @@ -241,8 +144,6 @@ 271881BF2461AF76001DE067 /* SafePathsSecureStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SafePathsSecureStorage.swift; sourceTree = ""; }; 271881C22461BF19001DE067 /* RealmSecureStorageTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RealmSecureStorageTest.swift; sourceTree = ""; }; 276AB15B245291DE00D39B58 /* Location.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Location.swift; sourceTree = ""; }; - 27F931562459E28800E1024C /* SecureStorageManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SecureStorageManager.m; sourceTree = ""; }; - 27F931592459E2BD00E1024C /* SecureStorageManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureStorageManager.swift; sourceTree = ""; }; 2CE99177C2D5C9E6462639A1 /* Pods-GPS.staging-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.staging-bt.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.staging-bt.xcconfig"; sourceTree = ""; }; 2E9077612439A903005C98DE /* SplashScreen.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SplashScreen.xcodeproj; path = "../node_modules/react-native-splash-screen/ios/SplashScreen.xcodeproj"; sourceTree = ""; }; 2F42C67AFB6A35F87118053B /* Pods-GPSTests.release-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPSTests.release-gps.xcconfig"; path = "Target Support Files/Pods-GPSTests/Pods-GPSTests.release-gps.xcconfig"; sourceTree = ""; }; @@ -257,6 +158,7 @@ 450B58D199444B7D8DEE6A0A /* IBMPlexSans-Italic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Italic.ttf"; path = "../app/assets/fonts/IBMPlexSans-Italic.ttf"; sourceTree = ""; }; 4904B061CC24439783E20928 /* IBMPlexSans-SemiBold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-SemiBold.ttf"; path = "../shared/assets/fonts/IBMPlexSans-SemiBold.ttf"; sourceTree = ""; }; 4E3ED4D343165DDCF8CF6F14 /* Pods-GPS.debug-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.debug-bt.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.debug-bt.xcconfig"; sourceTree = ""; }; + 500296CFBBD33FA70F4403EF /* Pods-GPS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.debug.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.debug.xcconfig"; sourceTree = ""; }; 530526E48807C46118B2B9B7 /* Pods-GPSTests.staging-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPSTests.staging-bt.xcconfig"; path = "Target Support Files/Pods-GPSTests/Pods-GPSTests.staging-bt.xcconfig"; sourceTree = ""; }; 53A0C1C57CED4660822FE560 /* IBMPlexMono-Medium.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Medium.ttf"; path = "../app/assets/fonts/IBMPlexMono-Medium.ttf"; sourceTree = ""; }; 542F7FB7FF534DC2A7D428AE /* IBMPlexSans.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = file; name = IBMPlexSans.ttf; path = ../app/assets/fonts/IBMPlexSans.ttf; sourceTree = ""; }; @@ -265,17 +167,15 @@ 56E8CDA04E244E24A9781CA8 /* IBMPlexSans-SemiBoldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-SemiBoldItalic.ttf"; path = "../app/assets/fonts/IBMPlexSans-SemiBoldItalic.ttf"; sourceTree = ""; }; 5D1446DDD4674BFAA520C0E8 /* IBMPlexMono-ExtraLight.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-ExtraLight.ttf"; path = "../app/assets/fonts/IBMPlexMono-ExtraLight.ttf"; sourceTree = ""; }; 5D98D5DA5B77459FACDD673D /* IBMPlexSans-Light.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Light.ttf"; path = "../shared/assets/fonts/IBMPlexSans-Light.ttf"; sourceTree = ""; }; + 606EB844E7D64AB33707A02E /* Pods-GPSTests.staging.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPSTests.staging.xcconfig"; path = "Target Support Files/Pods-GPSTests/Pods-GPSTests.staging.xcconfig"; sourceTree = ""; }; 667ABCBB6E3FBF03F44D3672 /* Pods-GPS.debug-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.debug-gps.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.debug-gps.xcconfig"; sourceTree = ""; }; 668BDA050EF549C6B0759425 /* IBMPlexSans-Bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Bold.ttf"; path = "../shared/assets/fonts/IBMPlexSans-Bold.ttf"; sourceTree = ""; }; 67DC43BDE1EF8997F26F2108 /* Pods-BT.release-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BT.release-bt.xcconfig"; path = "Target Support Files/Pods-BT/Pods-BT.release-bt.xcconfig"; sourceTree = ""; }; - 68D8970B24809B4E0091A254 /* MAURLocation+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "MAURLocation+Extension.swift"; sourceTree = ""; }; 68D8970E24809CEB0091A254 /* Geohash.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Geohash.swift; sourceTree = ""; }; - 68D8971124809DAE0091A254 /* Array+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Array+Extension.swift"; sourceTree = ""; }; - 68D8971424809E4B0091A254 /* String+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+Extension.swift"; sourceTree = ""; }; 68D8971724809F5C0091A254 /* MARULocation+ExtensionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "MARULocation+ExtensionTests.swift"; sourceTree = ""; }; 68D8971924809F9C0091A254 /* GeohashTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GeohashTests.swift; sourceTree = ""; }; 68D8971B24809FB50091A254 /* Array+ExtensionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Array+ExtensionTests.swift"; sourceTree = ""; }; - 68EFB214248570C2003D84F3 /* Log.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Log.swift; sourceTree = ""; }; + 69C0CB99A1291E1928585D63 /* Pods-GPS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.release.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.release.xcconfig"; sourceTree = ""; }; 6A9CA53C8BA83132D03AD65C /* libPods-GPSTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-GPSTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 6BA94CE8425944B8990A49B3 /* IBMPlexSans-Bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Bold.ttf"; path = "../app/assets/fonts/IBMPlexSans-Bold.ttf"; sourceTree = ""; }; 6C8CF282C4264C88A4ED8ABF /* IBMPlexMono-Medium.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Medium.ttf"; path = "../shared/assets/fonts/IBMPlexMono-Medium.ttf"; sourceTree = ""; }; @@ -283,6 +183,7 @@ 71F26FBF5BDA423184286546 /* IBMPlexMono-MediumItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-MediumItalic.ttf"; path = "../shared/assets/fonts/IBMPlexMono-MediumItalic.ttf"; sourceTree = ""; }; 747AA5DBBC684319A8273F2C /* IBMPlexSans-SemiBoldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-SemiBoldItalic.ttf"; path = "../shared/assets/fonts/IBMPlexSans-SemiBoldItalic.ttf"; sourceTree = ""; }; 751F8AE184B9709A8C3817BF /* Pods-BTTests.staging-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BTTests.staging-gps.xcconfig"; path = "Target Support Files/Pods-BTTests/Pods-BTTests.staging-gps.xcconfig"; sourceTree = ""; }; + 78335934CC8BDA43BF1F4759 /* Pods-GPS.staging.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPS.staging.xcconfig"; path = "Target Support Files/Pods-GPS/Pods-GPS.staging.xcconfig"; sourceTree = ""; }; 844C843F62B5585C2F2346EA /* Pods-BT.staging-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BT.staging-bt.xcconfig"; path = "Target Support Files/Pods-BT/Pods-BT.staging-bt.xcconfig"; sourceTree = ""; }; 89D241005D9647C4B0586127 /* IBMPlexSans.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = IBMPlexSans.ttf; path = ../shared/assets/fonts/IBMPlexSans.ttf; sourceTree = ""; }; 8CA5CB7E2A134220AB62370B /* IBMPlexMono-Italic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Italic.ttf"; path = "../shared/assets/fonts/IBMPlexMono-Italic.ttf"; sourceTree = ""; }; @@ -295,106 +196,85 @@ A74024E269FF63C56B1025EA /* Pods-BTTests.release-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BTTests.release-gps.xcconfig"; path = "Target Support Files/Pods-BTTests/Pods-BTTests.release-gps.xcconfig"; sourceTree = ""; }; AE25A1CE9ED048DC83FAE7B0 /* IBMPlexMono-Bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Bold.ttf"; path = "../shared/assets/fonts/IBMPlexMono-Bold.ttf"; sourceTree = ""; }; B27E26E7076641EFB4386943 /* IBMPlexSans-ExtraLightItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-ExtraLightItalic.ttf"; path = "../app/assets/fonts/IBMPlexSans-ExtraLightItalic.ttf"; sourceTree = ""; }; - B2A58213244CE76C000F39A6 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; - B2A58216244CE778000F39A6 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; }; - B2A5821A244CE80C000F39A6 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A5821C244CE8D6000F39A6 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A5821D244CE988000F39A6 /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A5821E244CE988000F39A6 /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/Localizable.strings; sourceTree = ""; }; - B2A5821F244CE9EB000F39A6 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A58220244CE9EB000F39A6 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/Localizable.strings; sourceTree = ""; }; - B2A58221244CE9F7000F39A6 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A58222244CE9F7000F39A6 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/Localizable.strings; sourceTree = ""; }; - B2A58223244CEA20000F39A6 /* fr-HT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "fr-HT"; path = "fr-HT.lproj/InfoPlist.strings"; sourceTree = ""; }; - B2A58224244CEA20000F39A6 /* fr-HT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "fr-HT"; path = "fr-HT.lproj/Localizable.strings"; sourceTree = ""; }; - B2A58225244CEA6C000F39A6 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/InfoPlist.strings"; sourceTree = ""; }; - B2A58226244CEA6C000F39A6 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; - B2A58227244CEA7B000F39A6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A58228244CEA7B000F39A6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = ""; }; - B2A58229244CEA84000F39A6 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A5822A244CEA84000F39A6 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; - B2A5822B244CEA8F000F39A6 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/InfoPlist.strings; sourceTree = ""; }; - B2A5822C244CEA8F000F39A6 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Localizable.strings; sourceTree = ""; }; - B2A5822D244CEA9F000F39A6 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/InfoPlist.strings"; sourceTree = ""; }; - B2A5822E244CEA9F000F39A6 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/Localizable.strings"; sourceTree = ""; }; B3D0B8224679467D85423742 /* IBMPlexMono-Italic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Italic.ttf"; path = "../app/assets/fonts/IBMPlexMono-Italic.ttf"; sourceTree = ""; }; B3ED5E905B1401FCBA420CFF /* Pods-GPSTests.debug-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPSTests.debug-gps.xcconfig"; path = "Target Support Files/Pods-GPSTests/Pods-GPSTests.debug-gps.xcconfig"; sourceTree = ""; }; - B507A9ED24A197FF00E039D5 /* DownloadedPackage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DownloadedPackage.swift; sourceTree = ""; }; - B507AA0624A2533200E039D5 /* DownloadPackage+Helpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "DownloadPackage+Helpers.swift"; sourceTree = ""; }; B52D88C1248F0FD90071ED51 /* GPSSecureStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GPSSecureStorage.swift; sourceTree = ""; }; - B52D88C3248F10FD0071ED51 /* BTSecureStorage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BTSecureStorage.swift; sourceTree = ""; }; - B54CBF25249A72E700218477 /* Region.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Region.swift; sourceTree = ""; }; - B54CBF31249A738500218477 /* IndexFileRequests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IndexFileRequests.swift; sourceTree = ""; }; - B5582D43249943DE001458A9 /* ExposureEventEmitter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ExposureEventEmitter.m; sourceTree = ""; }; - B576CC3D24993F4C00CDD9D9 /* Date+Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Date+Extensions.swift"; sourceTree = ""; }; - B576CC4024993F4C00CDD9D9 /* Encodable+Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Encodable+Extensions.swift"; sourceTree = ""; }; - B596C0712488127D00943B79 /* ENPermissionsModule.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ENPermissionsModule.m; sourceTree = ""; }; - B59F4C3424BDF879007B09D5 /* ExposureHistoryModule.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ExposureHistoryModule.m; sourceTree = ""; }; - B59F4C3624BE0658007B09D5 /* List+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "List+Extensions.swift"; sourceTree = ""; }; B5A6FD6A24BC9E54007D328C /* ExposureManagerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExposureManagerTests.swift; sourceTree = ""; }; B5C490A72498F84000588A5F /* Region.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Region.swift; sourceTree = ""; }; - B5C9722F24B8A909007F4C0B /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = ""; }; - B5E29D53249E3BE100E686DC /* ExposureManager+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ExposureManager+Extensions.swift"; sourceTree = ""; }; - B5E79436249E666B00BD8596 /* Array+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Array+Extensions.swift"; sourceTree = ""; }; - B5FB3B42248BD61A001DB1D5 /* DebugMenuModule.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DebugMenuModule.m; sourceTree = ""; }; - B5FBB0BC2490339900433980 /* DiagnosisKeyUrlRequests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiagnosisKeyUrlRequests.swift; sourceTree = ""; }; - B5FBB0CE24916A4C00433980 /* DebugAction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DebugAction.swift; sourceTree = ""; }; - B5FBB0D024916A7200433980 /* Persisted.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Persisted.swift; sourceTree = ""; }; - B5FBB0D224916B3600433980 /* String+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+Extensions.swift"; sourceTree = ""; }; - B5FBB0D424916D8900433980 /* UserState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserState.swift; sourceTree = ""; }; - B5FBB0D624916DE100433980 /* Notification+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Notification+Extensions.swift"; sourceTree = ""; }; - B5FC37C02489B075006474EB /* APIClient.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIClient.swift; sourceTree = ""; }; - B5FC37C52489B1B3006474EB /* APIRequest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIRequest.swift; sourceTree = ""; }; - B5FC37C92489B1C1006474EB /* JSON.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSON.swift; sourceTree = ""; }; - B5FC37CB2489B251006474EB /* Result.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Result.swift; sourceTree = ""; }; - B5FC37CD2489B359006474EB /* TypeAliases.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeAliases.swift; sourceTree = ""; }; - B5FC37CF2489B3DE006474EB /* StructuredError.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StructuredError.swift; sourceTree = ""; }; - B5FC37D7248A784F006474EB /* DiagnosisKeyRequests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiagnosisKeyRequests.swift; sourceTree = ""; }; - B5FC37DC248A78D2006474EB /* ExposureKey.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExposureKey.swift; sourceTree = ""; }; - B5FC37DE248A78FC006474EB /* ExposureConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExposureConfiguration.swift; sourceTree = ""; }; - B5FC37E0248A7EED006474EB /* ExposureConfigurationRequests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExposureConfigurationRequests.swift; sourceTree = ""; }; - B5FC37E2248A82AE006474EB /* Exposure.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Exposure.swift; sourceTree = ""; }; - B5FC37F5248A9968006474EB /* ENTemporaryExposureKey+Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ENTemporaryExposureKey+Extensions.swift"; sourceTree = ""; }; B7372C03D7AA19943931FCE4 /* libPods-BT.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-BT.a"; sourceTree = BUILT_PRODUCTS_DIR; }; BF6254720C1D4A3288ECE351 /* IBMPlexMono-SemiBold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-SemiBold.ttf"; path = "../shared/assets/fonts/IBMPlexMono-SemiBold.ttf"; sourceTree = ""; }; BFBEC306069776E19FE33586 /* Pods-BT.debug-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BT.debug-gps.xcconfig"; path = "Target Support Files/Pods-BT/Pods-BT.debug-gps.xcconfig"; sourceTree = ""; }; C42F32AF52974EE8ADEE67B5 /* IBMPlexSans-Medium.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Medium.ttf"; path = "../shared/assets/fonts/IBMPlexSans-Medium.ttf"; sourceTree = ""; }; - C504FDC1249D15260024219C /* BT-Production.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "BT-Production.entitlements"; sourceTree = ""; }; - C504FDC4249D155D0024219C /* BT-Development.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "BT-Development.entitlements"; sourceTree = ""; }; - C504FDC5249D15990024219C /* GPS-Production.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "GPS-Production.entitlements"; sourceTree = ""; }; - C53FD0C124719AD1006D3268 /* BT.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BT.app; sourceTree = BUILT_PRODUCTS_DIR; }; - C53FD0C224719AD2006D3268 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - C550A66524B7906F002CA7F2 /* ExposureKeyModule.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ExposureKeyModule.m; sourceTree = ""; }; - C56190A12485332E009A6756 /* BT-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "BT-Bridging-Header.h"; sourceTree = ""; }; - C58463E32486C51100BCB842 /* ExposureManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExposureManager.swift; sourceTree = ""; }; - C5850A63247D5A41007A596B /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - C5AA24E124768FFF00BA0A99 /* BTTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = BTTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - C5C850C6248014F700A494CA /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - C5C850C92480156200A494CA /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = SOURCE_ROOT; }; C5C850DC24804A0300A494CA /* RCTBackgroundGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTBackgroundGeolocation.xcodeproj; path = "../node_modules/@mauron85/react-native-background-geolocation/ios/RCTBackgroundGeolocation.xcodeproj"; sourceTree = ""; }; C5C850E324804A5200A494CA /* libBackgroundGeolocation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libBackgroundGeolocation.a; sourceTree = BUILT_PRODUCTS_DIR; }; C5C850F8248125A800A494CA /* libBackgroundGeolocation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = libBackgroundGeolocation.a; sourceTree = BUILT_PRODUCTS_DIR; }; - C5C850FB24812AAB00A494CA /* GPS-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "GPS-Bridging-Header.h"; sourceTree = ""; }; - C5EF72202485D0E600AA39D5 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = main.m; path = bridge/main.m; sourceTree = ""; }; C6CBA4DBBF104AC1AB920555 /* IBMPlexSans-BoldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-BoldItalic.ttf"; path = "../shared/assets/fonts/IBMPlexSans-BoldItalic.ttf"; sourceTree = ""; }; C840FB7884D64E6FA97ECC2C /* IBMPlexSans-Medium.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Medium.ttf"; path = "../app/assets/fonts/IBMPlexSans-Medium.ttf"; sourceTree = ""; }; C98841A50F7B43E5987C2D4A /* IBMPlexSans-LightItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-LightItalic.ttf"; path = "../shared/assets/fonts/IBMPlexSans-LightItalic.ttf"; sourceTree = ""; }; CC1EBAC6486247BFA5EF04EB /* IBMPlexSans-SemiBold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-SemiBold.ttf"; path = "../app/assets/fonts/IBMPlexSans-SemiBold.ttf"; sourceTree = ""; }; CF0DA9BBE69043D2BD80FF3B /* IBMPlexMono-LightItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-LightItalic.ttf"; path = "../shared/assets/fonts/IBMPlexMono-LightItalic.ttf"; sourceTree = ""; }; D04E298A8C92F0D267143C3A /* Pods-BTTests.staging-bt.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BTTests.staging-bt.xcconfig"; path = "Target Support Files/Pods-BTTests/Pods-BTTests.staging-bt.xcconfig"; sourceTree = ""; }; - D4CB500824A66A2900405D61 /* Version.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Version.xcconfig; sourceTree = ""; }; - D4CB500924A66ACB00405D61 /* Debug-GPS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Debug-GPS.xcconfig"; sourceTree = ""; }; - D4CB500A24A66B6400405D61 /* Staging-GPS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Staging-GPS.xcconfig"; sourceTree = ""; }; - D4CB500B24A66B8700405D61 /* Release-GPS.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Release-GPS.xcconfig"; sourceTree = ""; }; - D4CB502824A66C5D00405D61 /* Version.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Version.xcconfig; sourceTree = ""; }; - D4CB502A24A66C7500405D61 /* Debug-BT.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Debug-BT.xcconfig"; sourceTree = ""; }; - D4CB502B24A66C7500405D61 /* Release-BT.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Release-BT.xcconfig"; sourceTree = ""; }; - D4CB502C24A66C7500405D61 /* Staging-BT.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Staging-BT.xcconfig"; sourceTree = ""; }; + D4B4A85924C8A16400E00A99 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + D4B4A85A24C8A16400E00A99 /* Log.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Log.swift; sourceTree = ""; }; + D4B4A85B24C8A16400E00A99 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + D4B4A85C24C8A16400E00A99 /* GPS-Production.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = "GPS-Production.entitlements"; sourceTree = ""; }; + D4B4A85D24C8A16400E00A99 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + D4B4A85E24C8A16400E00A99 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + D4B4A86524C8A17300E00A99 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A86724C8A17300E00A99 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A86824C8A17300E00A99 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A86924C8A17300E00A99 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A86A24C8A17300E00A99 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A86B24C8A17300E00A99 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A86C24C8A17300E00A99 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A86D24C8A17300E00A99 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A86E24C8A17300E00A99 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A86F24C8A17300E00A99 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A87024C8A17300E00A99 /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A87124C8A17300E00A99 /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A87224C8A17300E00A99 /* ml */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ml; path = ml.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A87324C8A17300E00A99 /* ml */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ml; path = ml.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A87424C8A17300E00A99 /* fr-HT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "fr-HT"; path = "fr-HT.lproj/Localizable.strings"; sourceTree = ""; }; + D4B4A87524C8A17300E00A99 /* zh-Hant */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/Localizable.strings"; sourceTree = ""; }; + D4B4A87624C8A17300E00A99 /* es-PR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-PR"; path = "es-PR.lproj/Localizable.strings"; sourceTree = ""; }; + D4B4A87724C8A17300E00A99 /* es-PR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-PR"; path = "es-PR.lproj/InfoPlist.strings"; sourceTree = ""; }; + D4B4A87824C8A17300E00A99 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A87924C8A17300E00A99 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A87A24C8A17300E00A99 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; + D4B4A87B24C8A17300E00A99 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/InfoPlist.strings"; sourceTree = ""; }; + D4B4A87C24C8A17300E00A99 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A87D24C8A17300E00A99 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A87E24C8A17300E00A99 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A87F24C8A17300E00A99 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A88024C8A17300E00A99 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A88124C8A17300E00A99 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A88224C8A17300E00A99 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A88324C8A17300E00A99 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A88424C8A17300E00A99 /* zz-ZZ */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zz-ZZ"; path = "zz-ZZ.lproj/Localizable.strings"; sourceTree = ""; }; + D4B4A88524C8A17300E00A99 /* zz-ZZ */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zz-ZZ"; path = "zz-ZZ.lproj/InfoPlist.strings"; sourceTree = ""; }; + D4B4A88624C8A17300E00A99 /* ht */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ht; path = ht.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A88724C8A17300E00A99 /* ht */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ht; path = ht.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A88824C8A17300E00A99 /* ro */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ro; path = ro.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A88924C8A17300E00A99 /* tl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tl; path = tl.lproj/Localizable.strings; sourceTree = ""; }; + D4B4A88A24C8A17300E00A99 /* tl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tl; path = tl.lproj/InfoPlist.strings; sourceTree = ""; }; + D4B4A88F24C8A18E00E00A99 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; + D4B4A89024C8A18E00E00A99 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + D4B4A89424C8A1A700E00A99 /* MAURLocation+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "MAURLocation+Extension.swift"; sourceTree = ""; }; + D4B4A89524C8A1A700E00A99 /* String+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+Extension.swift"; sourceTree = ""; }; + D4B4A89624C8A1A700E00A99 /* Array+Extension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Array+Extension.swift"; sourceTree = ""; }; + D4B4A89824C8A1A700E00A99 /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + D4B4A89924C8A1A700E00A99 /* Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + D4B4A89A24C8A1A700E00A99 /* Version.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Version.xcconfig; sourceTree = ""; }; + D4B4A89B24C8A1A700E00A99 /* Staging.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Staging.xcconfig; sourceTree = ""; }; + D4B4A89D24C8A1A700E00A99 /* SecureStorageManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SecureStorageManager.m; sourceTree = ""; }; + D4B4A89E24C8A1A700E00A99 /* GPS-Bridging-Header.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "GPS-Bridging-Header.h"; sourceTree = ""; }; + D4B4A89F24C8A1A700E00A99 /* SecureStorageManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SecureStorageManager.swift; sourceTree = ""; }; D5A05B8E61DC402E8753A057 /* IBMPlexMono-ExtraLightItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-ExtraLightItalic.ttf"; path = "../app/assets/fonts/IBMPlexMono-ExtraLightItalic.ttf"; sourceTree = ""; }; D5CD9AD3FED744E6B5F0CEF9 /* IBMPlexMono.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = file; name = IBMPlexMono.ttf; path = ../app/assets/fonts/IBMPlexMono.ttf; sourceTree = ""; }; D5DFB90A472F4881A3C888C3 /* IBMPlexSans-ThinItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-ThinItalic.ttf"; path = "../app/assets/fonts/IBMPlexSans-ThinItalic.ttf"; sourceTree = ""; }; D74339326986C2F8EE1F59BA /* libPods-BTTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-BTTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; DF7DA7FE28F84E9EA7A6E4D4 /* IBMPlexMono-Thin.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Thin.ttf"; path = "../shared/assets/fonts/IBMPlexMono-Thin.ttf"; sourceTree = ""; }; + E2D33B0C827A4C85EDDD6272 /* Pods-GPSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-GPSTests.release.xcconfig"; path = "Target Support Files/Pods-GPSTests/Pods-GPSTests.release.xcconfig"; sourceTree = ""; }; E5C8EDCCEFCE4874A747E404 /* IBMPlexMono-Light.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexMono-Light.ttf"; path = "../shared/assets/fonts/IBMPlexMono-Light.ttf"; sourceTree = ""; }; E872D3374DDA4AA29E3D8511 /* IBMPlexSans-Thin.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "IBMPlexSans-Thin.ttf"; path = "../app/assets/fonts/IBMPlexSans-Thin.ttf"; sourceTree = ""; }; EB49F7B51E4014329A4AA36D /* Pods-BT.staging-gps.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-BT.staging-gps.xcconfig"; path = "Target Support Files/Pods-BT/Pods-BT.staging-gps.xcconfig"; sourceTree = ""; }; @@ -446,38 +326,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - C53FD08A24719AD1006D3268 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - C53FD08B24719AD1006D3268 /* UIKit.framework in Frameworks */, - C53FD08C24719AD1006D3268 /* SystemConfiguration.framework in Frameworks */, - C53FD08D24719AD1006D3268 /* QuartzCore.framework in Frameworks */, - C53FD08E24719AD1006D3268 /* OpenGLES.framework in Frameworks */, - C53FD08F24719AD1006D3268 /* libz.tbd in Frameworks */, - C53FD09024719AD1006D3268 /* libc++.tbd in Frameworks */, - C53FD09124719AD1006D3268 /* ImageIO.framework in Frameworks */, - C53FD09224719AD1006D3268 /* GLKit.framework in Frameworks */, - C53FD09324719AD1006D3268 /* CoreText.framework in Frameworks */, - C53FD09424719AD1006D3268 /* CoreTelephony.framework in Frameworks */, - C53FD09524719AD1006D3268 /* CoreLocation.framework in Frameworks */, - C53FD09624719AD1006D3268 /* CoreImage.framework in Frameworks */, - C53FD09724719AD1006D3268 /* CoreGraphics.framework in Frameworks */, - C53FD09824719AD1006D3268 /* CoreData.framework in Frameworks */, - C53FD09924719AD1006D3268 /* Accelerate.framework in Frameworks */, - 68EFB21324856EC6003D84F3 /* Scrypt in Frameworks */, - 49C5264730115D459DEB65DA /* libPods-BT.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5AA24D924768FFF00BA0A99 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - B01CF5299E2C4108F39C1232 /* libPods-BTTests.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ @@ -531,6 +379,12 @@ 2F42C67AFB6A35F87118053B /* Pods-GPSTests.release-gps.xcconfig */, 530526E48807C46118B2B9B7 /* Pods-GPSTests.staging-bt.xcconfig */, FF44B2971AD1FA3EB0E99224 /* Pods-GPSTests.staging-gps.xcconfig */, + 500296CFBBD33FA70F4403EF /* Pods-GPS.debug.xcconfig */, + 69C0CB99A1291E1928585D63 /* Pods-GPS.release.xcconfig */, + 78335934CC8BDA43BF1F4759 /* Pods-GPS.staging.xcconfig */, + 0EA86B049D0BB9D221E6F627 /* Pods-GPSTests.debug.xcconfig */, + E2D33B0C827A4C85EDDD6272 /* Pods-GPSTests.release.xcconfig */, + 606EB844E7D64AB33707A02E /* Pods-GPSTests.staging.xcconfig */, ); path = Pods; sourceTree = ""; @@ -601,34 +455,26 @@ 13B07FAE1A68108700A75B9A /* COVIDSafePaths */ = { isa = PBXGroup; children = ( - B52D88BF248F0F130071ED51 /* Common */, - C53FD0C324719C25006D3268 /* BT */, - C53FD07C247199A4006D3268 /* GPS */, - 008F07F21AC5B25A0029DE68 /* main.jsbundle */, - 13B07FB11A68108700A75B9A /* LaunchScreen.xib */, - 13B07FAF1A68108700A75B9A /* AppDelegate.h */, - B2A58212244CE76C000F39A6 /* Localizable.strings */, - ); - name = COVIDSafePaths; - sourceTree = ""; - }; - 276F786A245B6C8A00312927 /* bridge */ = { - isa = PBXGroup; - children = ( - 27F931562459E28800E1024C /* SecureStorageManager.m */, - 27F931592459E2BD00E1024C /* SecureStorageManager.swift */, + D4B4A85824C8A16400E00A99 /* Application */, + D4B4A89C24C8A1A700E00A99 /* Bridge */, + D4B4A89724C8A1A700E00A99 /* Config */, + D4B4A89324C8A1A700E00A99 /* Extension */, + D4B4A86324C8A17300E00A99 /* Localization */, + D4B4A88D24C8A18E00E00A99 /* Resources */, + 276F786C245B6CB400312927 /* Storage */, ); - path = bridge; + path = COVIDSafePaths; sourceTree = ""; }; - 276F786C245B6CB400312927 /* storage */ = { + 276F786C245B6CB400312927 /* Storage */ = { isa = PBXGroup; children = ( - 276AB15B245291DE00D39B58 /* Location.swift */, 68D8970E24809CEB0091A254 /* Geohash.swift */, B52D88C1248F0FD90071ED51 /* GPSSecureStorage.swift */, + 276AB15B245291DE00D39B58 /* Location.swift */, + 271881BF2461AF76001DE067 /* SafePathsSecureStorage.swift */, ); - path = storage; + path = Storage; sourceTree = ""; }; 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { @@ -669,16 +515,6 @@ name = Products; sourceTree = ""; }; - 68D8970A24809B2D0091A254 /* Extension */ = { - isa = PBXGroup; - children = ( - 68D8970B24809B4E0091A254 /* MAURLocation+Extension.swift */, - 68D8971124809DAE0091A254 /* Array+Extension.swift */, - 68D8971424809E4B0091A254 /* String+Extension.swift */, - ); - path = Extension; - sourceTree = ""; - }; 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( @@ -696,8 +532,8 @@ 08445F4524283A40008754AC /* GoogleMaps.framework */, 08445F4324283A2F008754AC /* GoogleMapsBase.framework */, 13B07FAE1A68108700A75B9A /* COVIDSafePaths */, - 832341AE1AAA6A7D00B99B32 /* Libraries */, 00E356EF1AD99517003FC87E /* COVIDSafePathsTests */, + 832341AE1AAA6A7D00B99B32 /* Libraries */, 83CBBA001A601CBA00E9B192 /* Products */, 2D16E6871FA4F8E400B85C8A /* Frameworks */, 08CFC7C2232A41A8F8E9E0B0 /* Pods */, @@ -714,28 +550,10 @@ children = ( 13B07F961A680F5B00A75B9A /* GPS.app */, 00E356EE1AD99517003FC87E /* GPSTests.xctest */, - C53FD0C124719AD1006D3268 /* BT.app */, - C5AA24E124768FFF00BA0A99 /* BTTests.xctest */, ); name = Products; sourceTree = ""; }; - B507AA0524A2531000E039D5 /* Helpers */ = { - isa = PBXGroup; - children = ( - B507AA0624A2533200E039D5 /* DownloadPackage+Helpers.swift */, - ); - path = Helpers; - sourceTree = ""; - }; - B52D88BF248F0F130071ED51 /* Common */ = { - isa = PBXGroup; - children = ( - 271881BF2461AF76001DE067 /* SafePathsSecureStorage.swift */, - ); - path = Common; - sourceTree = ""; - }; B562F041249A64400006647B /* Recovered References */ = { isa = PBXGroup; children = ( @@ -744,176 +562,74 @@ name = "Recovered References"; sourceTree = ""; }; - B5E29D4A249E3A7D00E686DC /* Foundation */ = { - isa = PBXGroup; - children = ( - B5FBB0D224916B3600433980 /* String+Extensions.swift */, - B5E79436249E666B00BD8596 /* Array+Extensions.swift */, - B576CC3D24993F4C00CDD9D9 /* Date+Extensions.swift */, - B576CC4024993F4C00CDD9D9 /* Encodable+Extensions.swift */, - B59F4C3624BE0658007B09D5 /* List+Extensions.swift */, - B5FBB0D624916DE100433980 /* Notification+Extensions.swift */, - ); - path = Foundation; - sourceTree = ""; - }; - B5E29D4D249E3A8700E686DC /* Exposure Notifications */ = { - isa = PBXGroup; - children = ( - B5FC37F5248A9968006474EB /* ENTemporaryExposureKey+Extensions.swift */, - ); - path = "Exposure Notifications"; - sourceTree = ""; - }; - B5E29D4E249E3A8F00E686DC /* Other */ = { - isa = PBXGroup; - children = ( - B5E29D53249E3BE100E686DC /* ExposureManager+Extensions.swift */, - ); - path = Other; - sourceTree = ""; - }; - B5FC37BD2489B05F006474EB /* API */ = { - isa = PBXGroup; - children = ( - B507AA0524A2531000E039D5 /* Helpers */, - B5FC37DB248A78C3006474EB /* Model */, - B5FC37D12489C25D006474EB /* Requests */, - B5FC37C02489B075006474EB /* APIClient.swift */, - B5FC37CF2489B3DE006474EB /* StructuredError.swift */, - B5FC37CB2489B251006474EB /* Result.swift */, - B5FC37CD2489B359006474EB /* TypeAliases.swift */, - B5FC37C52489B1B3006474EB /* APIRequest.swift */, - B5FC37C92489B1C1006474EB /* JSON.swift */, - ); - path = API; - sourceTree = ""; - }; - B5FC37D12489C25D006474EB /* Requests */ = { + C5C850DD24804A0300A494CA /* Products */ = { isa = PBXGroup; children = ( - B5FC37D7248A784F006474EB /* DiagnosisKeyRequests.swift */, - B5FBB0BC2490339900433980 /* DiagnosisKeyUrlRequests.swift */, - B54CBF31249A738500218477 /* IndexFileRequests.swift */, - B5FC37E0248A7EED006474EB /* ExposureConfigurationRequests.swift */, + C5C850E124804A0300A494CA /* libRCTBackgroundGeolocation.a */, ); - path = Requests; - sourceTree = ""; - }; - B5FC37DB248A78C3006474EB /* Model */ = { - isa = PBXGroup; - children = ( - B5FC37DC248A78D2006474EB /* ExposureKey.swift */, - B507A9ED24A197FF00E039D5 /* DownloadedPackage.swift */, - B5FC37DE248A78FC006474EB /* ExposureConfiguration.swift */, - B54CBF25249A72E700218477 /* Region.swift */, - B5FC37E2248A82AE006474EB /* Exposure.swift */, - B5FBB0D424916D8900433980 /* UserState.swift */, - ); - path = Model; + name = Products; sourceTree = ""; }; - B5FC37E4248A82D6006474EB /* Storage */ = { + D4B4A85824C8A16400E00A99 /* Application */ = { isa = PBXGroup; children = ( - B52D88C3248F10FD0071ED51 /* BTSecureStorage.swift */, - B5FBB0D024916A7200433980 /* Persisted.swift */, - ); - path = Storage; + D4B4A85924C8A16400E00A99 /* AppDelegate.h */, + D4B4A85D24C8A16400E00A99 /* AppDelegate.m */, + D4B4A85C24C8A16400E00A99 /* GPS-Production.entitlements */, + D4B4A85E24C8A16400E00A99 /* Info.plist */, + D4B4A85A24C8A16400E00A99 /* Log.swift */, + D4B4A85B24C8A16400E00A99 /* main.m */, + ); + path = Application; sourceTree = ""; }; - B5FC37F2248A9934006474EB /* Extensions */ = { + D4B4A86324C8A17300E00A99 /* Localization */ = { isa = PBXGroup; children = ( - B5E29D4E249E3A8F00E686DC /* Other */, - B5E29D4D249E3A8700E686DC /* Exposure Notifications */, - B5E29D4A249E3A7D00E686DC /* Foundation */, + D4B4A86624C8A17300E00A99 /* InfoPlist.strings */, + D4B4A86424C8A17300E00A99 /* Localizable.strings */, ); - path = Extensions; - sourceTree = ""; - }; - C53FD07C247199A4006D3268 /* GPS */ = { - isa = PBXGroup; - children = ( - D4CB500524A66A1A00405D61 /* Config */, - 68D8970A24809B2D0091A254 /* Extension */, - 276F786C245B6CB400312927 /* storage */, - 276F786A245B6C8A00312927 /* bridge */, - 13B07FB01A68108700A75B9A /* AppDelegate.m */, - 68EFB214248570C2003D84F3 /* Log.swift */, - C5EF72202485D0E600AA39D5 /* main.m */, - B2A5821B244CE80C000F39A6 /* InfoPlist.strings */, - 13B07FB61A68108700A75B9A /* Info.plist */, - 13B07FB51A68108700A75B9A /* Images.xcassets */, - 0835F8902441054900E95AE3 /* RNBackgroundFetch+AppDelegate.m */, - C5C850FB24812AAB00A494CA /* GPS-Bridging-Header.h */, - C504FDC5249D15990024219C /* GPS-Production.entitlements */, - ); - path = GPS; - sourceTree = ""; - }; - C53FD0C324719C25006D3268 /* BT */ = { - isa = PBXGroup; - children = ( - D4CB502524A66C5D00405D61 /* Config */, - B5FC37F2248A9934006474EB /* Extensions */, - B5FC37E4248A82D6006474EB /* Storage */, - B5FC37BD2489B05F006474EB /* API */, - C57BDFB124883EF400CE62B1 /* bridge */, - C5C850C92480156200A494CA /* AppDelegate.m */, - C5C850C6248014F700A494CA /* main.m */, - C53FD0C224719AD2006D3268 /* Info.plist */, - C5850A63247D5A41007A596B /* Images.xcassets */, - C56190A12485332E009A6756 /* BT-Bridging-Header.h */, - C58463E32486C51100BCB842 /* ExposureManager.swift */, - B5C9722F24B8A909007F4C0B /* Constants.swift */, - B5FBB0CE24916A4C00433980 /* DebugAction.swift */, - C504FDC1249D15260024219C /* BT-Production.entitlements */, - C504FDC4249D155D0024219C /* BT-Development.entitlements */, - ); - path = BT; + path = Localization; sourceTree = ""; }; - C57BDFB124883EF400CE62B1 /* bridge */ = { + D4B4A88D24C8A18E00E00A99 /* Resources */ = { isa = PBXGroup; children = ( - B596C0712488127D00943B79 /* ENPermissionsModule.m */, - C550A66524B7906F002CA7F2 /* ExposureKeyModule.m */, - B59F4C3424BDF879007B09D5 /* ExposureHistoryModule.m */, - B5FB3B42248BD61A001DB1D5 /* DebugMenuModule.m */, - B5582D43249943DE001458A9 /* ExposureEventEmitter.m */, + D4B4A89024C8A18E00E00A99 /* Images.xcassets */, + D4B4A88E24C8A18E00E00A99 /* LaunchScreen.xib */, ); - path = bridge; + path = Resources; sourceTree = ""; }; - C5C850DD24804A0300A494CA /* Products */ = { + D4B4A89324C8A1A700E00A99 /* Extension */ = { isa = PBXGroup; children = ( - C5C850E124804A0300A494CA /* libRCTBackgroundGeolocation.a */, + D4B4A89624C8A1A700E00A99 /* Array+Extension.swift */, + D4B4A89424C8A1A700E00A99 /* MAURLocation+Extension.swift */, + D4B4A89524C8A1A700E00A99 /* String+Extension.swift */, ); - name = Products; + path = Extension; sourceTree = ""; }; - D4CB500524A66A1A00405D61 /* Config */ = { + D4B4A89724C8A1A700E00A99 /* Config */ = { isa = PBXGroup; children = ( - D4CB500924A66ACB00405D61 /* Debug-GPS.xcconfig */, - D4CB500B24A66B8700405D61 /* Release-GPS.xcconfig */, - D4CB500A24A66B6400405D61 /* Staging-GPS.xcconfig */, - D4CB500824A66A2900405D61 /* Version.xcconfig */, + D4B4A89824C8A1A700E00A99 /* Debug.xcconfig */, + D4B4A89924C8A1A700E00A99 /* Release.xcconfig */, + D4B4A89B24C8A1A700E00A99 /* Staging.xcconfig */, + D4B4A89A24C8A1A700E00A99 /* Version.xcconfig */, ); path = Config; sourceTree = ""; }; - D4CB502524A66C5D00405D61 /* Config */ = { + D4B4A89C24C8A1A700E00A99 /* Bridge */ = { isa = PBXGroup; children = ( - D4CB502A24A66C7500405D61 /* Debug-BT.xcconfig */, - D4CB502B24A66C7500405D61 /* Release-BT.xcconfig */, - D4CB502C24A66C7500405D61 /* Staging-BT.xcconfig */, - D4CB502824A66C5D00405D61 /* Version.xcconfig */, + D4B4A89E24C8A1A700E00A99 /* GPS-Bridging-Header.h */, + D4B4A89D24C8A1A700E00A99 /* SecureStorageManager.m */, + D4B4A89F24C8A1A700E00A99 /* SecureStorageManager.swift */, ); - path = Config; + path = Bridge; sourceTree = ""; }; /* End PBXGroup section */ @@ -962,49 +678,6 @@ productReference = 13B07F961A680F5B00A75B9A /* GPS.app */; productType = "com.apple.product-type.application"; }; - C53FD07D24719AD1006D3268 /* BT */ = { - isa = PBXNativeTarget; - buildConfigurationList = C53FD0BC24719AD1006D3268 /* Build configuration list for PBXNativeTarget "BT" */; - buildPhases = ( - B8B3F66D67BD3E6B2C9A66F0 /* [CP] Check Pods Manifest.lock */, - C53FD07F24719AD1006D3268 /* Start Packager */, - C53FD08024719AD1006D3268 /* Sources */, - C53FD08A24719AD1006D3268 /* Frameworks */, - C53FD09B24719AD1006D3268 /* Resources */, - D447FDBA24BF332B00250621 /* Configure ATS */, - C53FD0BB24719AD1006D3268 /* Bundle React Native code and images */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = BT; - packageProductDependencies = ( - 68EFB21224856EC6003D84F3 /* Scrypt */, - ); - productName = COVIDSafePaths; - productReference = C53FD0C124719AD1006D3268 /* BT.app */; - productType = "com.apple.product-type.application"; - }; - C5AA24D124768FFF00BA0A99 /* BTTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = C5AA24DC24768FFF00BA0A99 /* Build configuration list for PBXNativeTarget "BTTests" */; - buildPhases = ( - C7E79764B7E41310387F475F /* [CP] Check Pods Manifest.lock */, - C5AA24D524768FFF00BA0A99 /* Sources */, - C5AA24D924768FFF00BA0A99 /* Frameworks */, - C5AA24DB24768FFF00BA0A99 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - C5AA24E42476901700BA0A99 /* PBXTargetDependency */, - ); - name = BTTests; - productName = COVIDSafePathsTests; - productReference = C5AA24E124768FFF00BA0A99 /* BTTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ @@ -1024,9 +697,6 @@ 13B07F861A680F5B00A75B9A = { LastSwiftMigration = 1130; }; - C5AA24D124768FFF00BA0A99 = { - TestTargetID = C53FD07D24719AD1006D3268; - }; }; }; buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "COVIDSafePaths" */; @@ -1048,6 +718,15 @@ "zh-Hant", sk, "pt-BR", + ar, + da, + "es-PR", + pl, + nl, + "zz-ZZ", + ht, + tl, + fil, ); mainGroup = 83CBB9F61A601CBA00E9B192; packageReferences = ( @@ -1069,8 +748,6 @@ targets = ( 13B07F861A680F5B00A75B9A /* GPS */, 00E356ED1AD99517003FC87E /* GPSTests */, - C53FD07D24719AD1006D3268 /* BT */, - C5AA24D124768FFF00BA0A99 /* BTTests */, ); }; /* End PBXProject section */ @@ -1104,26 +781,27 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, - B2A58219244CE80C000F39A6 /* InfoPlist.strings in Resources */, - 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */, E815ED8FD59D4635AD64CCB3 /* IBMPlexMono-Bold.ttf in Resources */, F4A4CE1B537D4CDA9FED9458 /* IBMPlexMono-BoldItalic.ttf in Resources */, 8CB0C49FEC0F493D95420B30 /* IBMPlexMono-ExtraLight.ttf in Resources */, FB74D96D942D4B9FBECB1175 /* IBMPlexMono-ExtraLightItalic.ttf in Resources */, 3E97D87FD88C42B79836C314 /* IBMPlexMono-Italic.ttf in Resources */, + D4B4A8A524C8A1A700E00A99 /* Version.xcconfig in Resources */, D668C3DAB08B4FCBB01E8C2D /* IBMPlexMono-Light.ttf in Resources */, F4E13CA171B74075A5EECD71 /* IBMPlexMono-LightItalic.ttf in Resources */, 527CA705E5514AF9BEAC9A2F /* IBMPlexMono-Medium.ttf in Resources */, 25004E4C90704C6B807B88C7 /* IBMPlexMono-MediumItalic.ttf in Resources */, D7E714F18C9C4172BC01ADF8 /* IBMPlexMono-SemiBold.ttf in Resources */, A5EA4480D4CC4B468D4B4DDC /* IBMPlexMono-SemiBoldItalic.ttf in Resources */, + D4B4A88B24C8A17300E00A99 /* Localizable.strings in Resources */, A0DE2282B6A14351BC318062 /* IBMPlexMono-Thin.ttf in Resources */, 1360D7CA70F14549967C9912 /* IBMPlexMono-ThinItalic.ttf in Resources */, 3AD7E092BBC64F37879D040B /* IBMPlexMono.ttf in Resources */, + D4B4A89224C8A18E00E00A99 /* Images.xcassets in Resources */, 12922BC2C16E4BCCB3F4EA44 /* IBMPlexSans-Bold.ttf in Resources */, F3B14B1B97834BBC886F10D5 /* IBMPlexSans-BoldItalic.ttf in Resources */, 8A5B44AA7D724388B70F100B /* IBMPlexSans-ExtraLight.ttf in Resources */, + D4B4A8A424C8A1A700E00A99 /* Release.xcconfig in Resources */, 57693D8BEF8A40C289F7168A /* IBMPlexSans-ExtraLightItalic.ttf in Resources */, 966BF87C9654448280E34CD8 /* IBMPlexSans-Italic.ttf in Resources */, BB916399F2D64D8D89249A05 /* IBMPlexSans-Light.ttf in Resources */, @@ -1131,54 +809,14 @@ BEA401E86568452A9E8FF210 /* IBMPlexSans-Medium.ttf in Resources */, 2606D1B2B11C4D419867361F /* IBMPlexSans-MediumItalic.ttf in Resources */, D43E27B6F1E045D798270A11 /* IBMPlexSans-SemiBold.ttf in Resources */, + D4B4A8A624C8A1A700E00A99 /* Staging.xcconfig in Resources */, + D4B4A8A324C8A1A700E00A99 /* Debug.xcconfig in Resources */, 6858E21561F14E61A6A85280 /* IBMPlexSans-SemiBoldItalic.ttf in Resources */, 522B6187A48A4AF3A676D5A0 /* IBMPlexSans-Thin.ttf in Resources */, DED6BB86437B4610B1CD3302 /* IBMPlexSans-ThinItalic.ttf in Resources */, + D4B4A89124C8A18E00E00A99 /* LaunchScreen.xib in Resources */, 7A2281C376904F23BCA10FCA /* IBMPlexSans.ttf in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C53FD09B24719AD1006D3268 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C53FD09E24719AD1006D3268 /* LaunchScreen.xib in Resources */, - C53FD09F24719AD1006D3268 /* IBMPlexMono-Bold.ttf in Resources */, - C53FD0A024719AD1006D3268 /* IBMPlexMono-BoldItalic.ttf in Resources */, - C53FD0A124719AD1006D3268 /* IBMPlexMono-ExtraLight.ttf in Resources */, - C5850A64247D5A41007A596B /* Images.xcassets in Resources */, - C53FD0A224719AD1006D3268 /* IBMPlexMono-ExtraLightItalic.ttf in Resources */, - C53FD0A324719AD1006D3268 /* IBMPlexMono-Italic.ttf in Resources */, - C53FD0A424719AD1006D3268 /* IBMPlexMono-Light.ttf in Resources */, - C53FD0A524719AD1006D3268 /* IBMPlexMono-LightItalic.ttf in Resources */, - C53FD0A624719AD1006D3268 /* IBMPlexMono-Medium.ttf in Resources */, - C53FD0A724719AD1006D3268 /* IBMPlexMono-MediumItalic.ttf in Resources */, - C53FD0A824719AD1006D3268 /* IBMPlexMono-SemiBold.ttf in Resources */, - C53FD0A924719AD1006D3268 /* IBMPlexMono-SemiBoldItalic.ttf in Resources */, - C53FD0AA24719AD1006D3268 /* IBMPlexMono-Thin.ttf in Resources */, - C53FD0AB24719AD1006D3268 /* IBMPlexMono-ThinItalic.ttf in Resources */, - C53FD0AC24719AD1006D3268 /* IBMPlexMono.ttf in Resources */, - C53FD0AD24719AD1006D3268 /* IBMPlexSans-Bold.ttf in Resources */, - C53FD0AE24719AD1006D3268 /* IBMPlexSans-BoldItalic.ttf in Resources */, - C53FD0AF24719AD1006D3268 /* IBMPlexSans-ExtraLight.ttf in Resources */, - C53FD0B024719AD1006D3268 /* IBMPlexSans-ExtraLightItalic.ttf in Resources */, - C53FD0B124719AD1006D3268 /* IBMPlexSans-Italic.ttf in Resources */, - C53FD0B224719AD1006D3268 /* IBMPlexSans-Light.ttf in Resources */, - C53FD0B324719AD1006D3268 /* IBMPlexSans-LightItalic.ttf in Resources */, - C53FD0B424719AD1006D3268 /* IBMPlexSans-Medium.ttf in Resources */, - C53FD0B524719AD1006D3268 /* IBMPlexSans-MediumItalic.ttf in Resources */, - C53FD0B624719AD1006D3268 /* IBMPlexSans-SemiBold.ttf in Resources */, - C53FD0B724719AD1006D3268 /* IBMPlexSans-SemiBoldItalic.ttf in Resources */, - C53FD0B824719AD1006D3268 /* IBMPlexSans-Thin.ttf in Resources */, - C53FD0B924719AD1006D3268 /* IBMPlexSans-ThinItalic.ttf in Resources */, - C53FD0BA24719AD1006D3268 /* IBMPlexSans.ttf in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5AA24DB24768FFF00BA0A99 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( + D4B4A88C24C8A17300E00A99 /* InfoPlist.strings in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1243,83 +881,6 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - B8B3F66D67BD3E6B2C9A66F0 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-BT-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - C53FD07F24719AD1006D3268 /* Start Packager */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Start Packager"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; - showEnvVarsInLog = 0; - }; - C53FD0BB24719AD1006D3268 /* Bundle React Native code and images */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Bundle React Native code and images"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh\n"; - }; - C7E79764B7E41310387F475F /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-BTTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; D447FDB724BF310000250621 /* Configure ATS */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -1338,24 +899,6 @@ shellPath = /bin/sh; shellScript = "/usr/libexec/PlistBuddy -c \"Set :NSAppTransportSecurity:NSAllowsArbitraryLoads ${ALLOW_INSECURE_HTTP}\" ${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\n"; }; - D447FDBA24BF332B00250621 /* Configure ATS */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = "Configure ATS"; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/usr/libexec/PlistBuddy -c \"Set :NSAppTransportSecurity:NSAllowsArbitraryLoads ${ALLOW_INSECURE_HTTP}\" ${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\n"; - }; FD10A7F022414F080027D42C /* Start Packager */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -1395,73 +938,18 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - C5EF723724864F8500AA39D5 /* main.m in Sources */, + D4B4A8A824C8A1A700E00A99 /* SecureStorageManager.swift in Sources */, + D4B4A8A724C8A1A700E00A99 /* SecureStorageManager.m in Sources */, 271881C02461AF76001DE067 /* SafePathsSecureStorage.swift in Sources */, - 0835F8922441054A00E95AE3 /* RNBackgroundFetch+AppDelegate.m in Sources */, - 68EFB215248570C2003D84F3 /* Log.swift in Sources */, - 68D8971224809DAE0091A254 /* Array+Extension.swift in Sources */, + D4B4A8A224C8A1A700E00A99 /* Array+Extension.swift in Sources */, + D4B4A8A124C8A1A700E00A99 /* String+Extension.swift in Sources */, + D4B4A85F24C8A16400E00A99 /* Log.swift in Sources */, 68D8970F24809CEB0091A254 /* Geohash.swift in Sources */, - 27F931572459E28800E1024C /* SecureStorageManager.m in Sources */, - 68D8971524809E4B0091A254 /* String+Extension.swift in Sources */, - 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */, + D4B4A86124C8A16400E00A99 /* AppDelegate.m in Sources */, B52D88C2248F0FD90071ED51 /* GPSSecureStorage.swift in Sources */, - 68D8970C24809B4E0091A254 /* MAURLocation+Extension.swift in Sources */, + D4B4A8A024C8A1A700E00A99 /* MAURLocation+Extension.swift in Sources */, 276AB15C245291DE00D39B58 /* Location.swift in Sources */, - 27F9315A2459E2BD00E1024C /* SecureStorageManager.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C53FD08024719AD1006D3268 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - B5FBB0D524916D8900433980 /* UserState.swift in Sources */, - B5FBB0D724916DE100433980 /* Notification+Extensions.swift in Sources */, - B54CBF26249A72E700218477 /* Region.swift in Sources */, - C550A66624B7906F002CA7F2 /* ExposureKeyModule.m in Sources */, - B54CBF32249A738500218477 /* IndexFileRequests.swift in Sources */, - B52D88C4248F10FD0071ED51 /* BTSecureStorage.swift in Sources */, - B5FC37CC2489B251006474EB /* Result.swift in Sources */, - C58463E42486C51100BCB842 /* ExposureManager.swift in Sources */, - B5FC37C62489B1B3006474EB /* APIRequest.swift in Sources */, - B5FBB0D124916A7200433980 /* Persisted.swift in Sources */, - B5FBB0BD2490339900433980 /* DiagnosisKeyUrlRequests.swift in Sources */, - C5C850CA2480156200A494CA /* AppDelegate.m in Sources */, - B5FC37E3248A82AE006474EB /* Exposure.swift in Sources */, - B576CC4324993F5200CDD9D9 /* Date+Extensions.swift in Sources */, - B52D88C0248F0FC00071ED51 /* SafePathsSecureStorage.swift in Sources */, - B5FB3B43248BD61A001DB1D5 /* DebugMenuModule.m in Sources */, - B5582D47249943E5001458A9 /* ExposureEventEmitter.m in Sources */, - C5C850C7248014F700A494CA /* main.m in Sources */, - B59F4C3524BDF879007B09D5 /* ExposureHistoryModule.m in Sources */, - B596C0722488127D00943B79 /* ENPermissionsModule.m in Sources */, - B5FC37D8248A784F006474EB /* DiagnosisKeyRequests.swift in Sources */, - B59F4C3724BE0658007B09D5 /* List+Extensions.swift in Sources */, - B5FBB0D324916B3600433980 /* String+Extensions.swift in Sources */, - B507A9EE24A197FF00E039D5 /* DownloadedPackage.swift in Sources */, - B5FC37F6248A9968006474EB /* ENTemporaryExposureKey+Extensions.swift in Sources */, - B5E29D54249E3BE100E686DC /* ExposureManager+Extensions.swift in Sources */, - B5FC37C12489B075006474EB /* APIClient.swift in Sources */, - B5FC37CE2489B359006474EB /* TypeAliases.swift in Sources */, - B507AA0724A2533200E039D5 /* DownloadPackage+Helpers.swift in Sources */, - B576CC4424993F5200CDD9D9 /* Encodable+Extensions.swift in Sources */, - B5FBB0CF24916A4C00433980 /* DebugAction.swift in Sources */, - B5FC37E1248A7EED006474EB /* ExposureConfigurationRequests.swift in Sources */, - B5FC37DD248A78D2006474EB /* ExposureKey.swift in Sources */, - B5FC37DF248A78FC006474EB /* ExposureConfiguration.swift in Sources */, - B5E79437249E666B00BD8596 /* Array+Extensions.swift in Sources */, - B5FC37CA2489B1C1006474EB /* JSON.swift in Sources */, - B5FC37D02489B3DE006474EB /* StructuredError.swift in Sources */, - B5C9723024B8A909007F4C0B /* Constants.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5AA24D524768FFF00BA0A99 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - B5A6FD6E24BC9E69007D328C /* ExposureManagerTests.swift in Sources */, - C5AA24D824768FFF00BA0A99 /* COVIDSafePathsTests.m in Sources */, + D4B4A86024C8A16400E00A99 /* main.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1474,754 +962,78 @@ target = 13B07F861A680F5B00A75B9A /* GPS */; targetProxy = 271881CB2461C95F001DE067 /* PBXContainerItemProxy */; }; - C5AA24E42476901700BA0A99 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - platformFilter = ios; - target = C53FD07D24719AD1006D3268 /* BT */; - targetProxy = C5AA24E32476901700BA0A99 /* PBXContainerItemProxy */; - }; /* End PBXTargetDependency section */ /* Begin PBXVariantGroup section */ - 13B07FB11A68108700A75B9A /* LaunchScreen.xib */ = { + D4B4A86424C8A17300E00A99 /* Localizable.strings */ = { isa = PBXVariantGroup; children = ( - 13B07FB21A68108700A75B9A /* Base */, + D4B4A86524C8A17300E00A99 /* ar */, + D4B4A86824C8A17300E00A99 /* en */, + D4B4A86A24C8A17300E00A99 /* es */, + D4B4A86C24C8A17300E00A99 /* da */, + D4B4A86E24C8A17300E00A99 /* it */, + D4B4A87024C8A17300E00A99 /* sk */, + D4B4A87224C8A17300E00A99 /* ml */, + D4B4A87424C8A17300E00A99 /* fr-HT */, + D4B4A87524C8A17300E00A99 /* zh-Hant */, + D4B4A87624C8A17300E00A99 /* es-PR */, + D4B4A87824C8A17300E00A99 /* pl */, + D4B4A87A24C8A17300E00A99 /* pt-BR */, + D4B4A87C24C8A17300E00A99 /* vi */, + D4B4A87D24C8A17300E00A99 /* ru */, + D4B4A87F24C8A17300E00A99 /* fr */, + D4B4A88124C8A17300E00A99 /* id */, + D4B4A88224C8A17300E00A99 /* nl */, + D4B4A88424C8A17300E00A99 /* zz-ZZ */, + D4B4A88624C8A17300E00A99 /* ht */, + D4B4A88824C8A17300E00A99 /* ro */, + D4B4A88924C8A17300E00A99 /* tl */, ); - name = LaunchScreen.xib; - path = COVIDSafePaths; + name = Localizable.strings; sourceTree = ""; }; - B2A58212244CE76C000F39A6 /* Localizable.strings */ = { + D4B4A86624C8A17300E00A99 /* InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( - B2A58213244CE76C000F39A6 /* en */, - B2A58216244CE778000F39A6 /* it */, - B2A5821E244CE988000F39A6 /* sk */, - B2A58220244CE9EB000F39A6 /* ro */, - B2A58222244CE9F7000F39A6 /* id */, - B2A58224244CEA20000F39A6 /* fr-HT */, - B2A58226244CEA6C000F39A6 /* pt-BR */, - B2A58228244CEA7B000F39A6 /* ru */, - B2A5822A244CEA84000F39A6 /* es */, - B2A5822C244CEA8F000F39A6 /* vi */, - B2A5822E244CEA9F000F39A6 /* zh-Hant */, + D4B4A86724C8A17300E00A99 /* ar */, + D4B4A86924C8A17300E00A99 /* en */, + D4B4A86B24C8A17300E00A99 /* es */, + D4B4A86D24C8A17300E00A99 /* da */, + D4B4A86F24C8A17300E00A99 /* it */, + D4B4A87124C8A17300E00A99 /* sk */, + D4B4A87324C8A17300E00A99 /* ml */, + D4B4A87724C8A17300E00A99 /* es-PR */, + D4B4A87924C8A17300E00A99 /* pl */, + D4B4A87B24C8A17300E00A99 /* pt-BR */, + D4B4A87E24C8A17300E00A99 /* ru */, + D4B4A88024C8A17300E00A99 /* fr */, + D4B4A88324C8A17300E00A99 /* nl */, + D4B4A88524C8A17300E00A99 /* zz-ZZ */, + D4B4A88724C8A17300E00A99 /* ht */, + D4B4A88A24C8A17300E00A99 /* tl */, ); - name = Localizable.strings; + name = InfoPlist.strings; sourceTree = ""; }; - B2A5821B244CE80C000F39A6 /* InfoPlist.strings */ = { + D4B4A88E24C8A18E00E00A99 /* LaunchScreen.xib */ = { isa = PBXVariantGroup; children = ( - B2A5821A244CE80C000F39A6 /* en */, - B2A5821C244CE8D6000F39A6 /* it */, - B2A5821D244CE988000F39A6 /* sk */, - B2A5821F244CE9EB000F39A6 /* ro */, - B2A58221244CE9F7000F39A6 /* id */, - B2A58223244CEA20000F39A6 /* fr-HT */, - B2A58225244CEA6C000F39A6 /* pt-BR */, - B2A58227244CEA7B000F39A6 /* ru */, - B2A58229244CEA84000F39A6 /* es */, - B2A5822B244CEA8F000F39A6 /* vi */, - B2A5822D244CEA9F000F39A6 /* zh-Hant */, + D4B4A88F24C8A18E00E00A99 /* Base */, ); - name = InfoPlist.strings; + name = LaunchScreen.xib; sourceTree = ""; }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ - 00E356F61AD99517003FC87E /* Debug-BT */ = { + D4CB500C24A66BB800405D61 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = F6854A5E4C5120F2760E0E62 /* Pods-GPSTests.debug-bt.xcconfig */; + baseConfigurationReference = D4B4A89824C8A1A700E00A99 /* Debug.xcconfig */; buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GPS.app/GPS"; - }; - name = "Debug-BT"; - }; - 00E356F71AD99517003FC87E /* Release-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 3B644EE0F2C85738FCD937EA /* Pods-GPSTests.release-bt.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GPS.app/GPS"; - }; - name = "Release-BT"; - }; - 13B07F941A680F5B00A75B9A /* Debug-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4E3ED4D343165DDCF8CF6F14 /* Pods-GPS.debug-bt.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "GPS/GPS-Production.entitlements"; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - DEAD_CODE_STRIPPING = NO; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/@mauron85/react-native-background-geolocation/ios/common/BackgroundGeolocation", - ); - INFOPLIST_FILE = GPS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/BVLinearGradient\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/FBReactNativeSpec\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Folly\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Permission-LocationAlways\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Permission-Notifications\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RCTTypeSafety\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCAsyncStorage\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCMaskedView\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCPushNotificationIOS\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNFS\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNGestureHandler\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNPermissions\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNReanimated\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNSVG\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNScreens\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNShare\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNZipArchive\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-Core\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-CoreModules\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTActionSheet\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTAnimation\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTBlob\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTImage\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTLinking\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTNetwork\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTSettings\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTText\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTVibration\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-cxxreact\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsi\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsiexecutor\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsinspector\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Yoga\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/glog\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-background-timer\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-safe-area-context\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-uuid-generator\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-viewpager\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/rn-fetch-blob\"", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = GPS; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Debug-BT"; - }; - 13B07F951A680F5B00A75B9A /* Release-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 977BE49F665F3E0768AD52E3 /* Pods-GPS.release-bt.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "GPS/GPS-Production.entitlements"; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - DEAD_CODE_STRIPPING = YES; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/@mauron85/react-native-background-geolocation/ios/common/BackgroundGeolocation", - ); - INFOPLIST_FILE = GPS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/BVLinearGradient\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/FBReactNativeSpec\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Folly\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Permission-LocationAlways\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Permission-Notifications\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RCTTypeSafety\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCAsyncStorage\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCMaskedView\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCPushNotificationIOS\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNFS\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNGestureHandler\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNPermissions\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNReanimated\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNSVG\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNScreens\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNShare\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNZipArchive\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-Core\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-CoreModules\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTActionSheet\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTAnimation\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTBlob\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTImage\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTLinking\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTNetwork\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTSettings\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTText\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTVibration\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-cxxreact\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsi\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsiexecutor\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsinspector\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Yoga\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/glog\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-background-timer\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-safe-area-context\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-uuid-generator\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-viewpager\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/rn-fetch-blob\"", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = GPS; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - }; - name = "Release-BT"; - }; - 83CBBA201A601CBA00E9B192 /* Debug-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D4CB502A24A66C7500405D61 /* Debug-BT.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Debug-BT"; - }; - 83CBBA211A601CBA00E9B192 /* Release-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D4CB502B24A66C7500405D61 /* Release-BT.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Release-BT"; - }; - C53FD0BD24719AD1006D3268 /* Debug-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = FB93AEF93E757536F638DE58 /* Pods-BT.debug-bt.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "BT/BT-Production.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEAD_CODE_STRIPPING = NO; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 6R7GW6VJ2A; - INFOPLIST_FILE = BT/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/ZIPFoundation/ZIPFoundation.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Private/Realm/Realm.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Public/SSZipArchive/SSZipArchive.modulemap\" -D DEBUG"; - PRODUCT_BUNDLE_IDENTIFIER = org.pathcheck.mn.bt; - PRODUCT_NAME = BT; - PROVISIONING_PROFILE_SPECIFIER = "PathCheck Dev"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Debug-BT"; - }; - C53FD0BF24719AD1006D3268 /* Release-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 67DC43BDE1EF8997F26F2108 /* Pods-BT.release-bt.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "BT/BT-Production.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Distribution"; - CODE_SIGN_STYLE = Manual; - DEAD_CODE_STRIPPING = YES; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 6R7GW6VJ2A; - INFOPLIST_FILE = BT/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/ZIPFoundation/ZIPFoundation.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Private/Realm/Realm.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Public/SSZipArchive/SSZipArchive.modulemap\""; - PRODUCT_BUNDLE_IDENTIFIER = org.pathcheck.mn.bt; - PRODUCT_NAME = BT; - PROVISIONING_PROFILE_SPECIFIER = "pathcheck-mn-bt-appstore"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - }; - name = "Release-BT"; - }; - C5AA24DD24768FFF00BA0A99 /* Debug-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 323E903F3DAB2E4C925FECBD /* Pods-BTTests.debug-bt.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BT.app/BT"; - }; - name = "Debug-BT"; - }; - C5AA24DF24768FFF00BA0A99 /* Release-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 141B3702EDB77175BCFE1BA2 /* Pods-BTTests.release-bt.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BT.app/BT"; - }; - name = "Release-BT"; - }; - D4CB500C24A66BB800405D61 /* Debug-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D4CB500924A66ACB00405D61 /* Debug-GPS.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = "Debug-GPS"; - }; - D4CB500D24A66BB800405D61 /* Debug-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 667ABCBB6E3FBF03F44D3672 /* Pods-GPS.debug-gps.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "GPS/GPS-Production.entitlements"; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - DEAD_CODE_STRIPPING = NO; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", - "$(SRCROOT)/../node_modules/@mauron85/react-native-background-geolocation/ios/common/BackgroundGeolocation", - ); - INFOPLIST_FILE = GPS/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"${PODS_CONFIGURATION_BUILD_DIR}/BVLinearGradient\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/DoubleConversion\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/FBReactNativeSpec\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Folly\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Permission-LocationAlways\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Permission-Notifications\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RCTTypeSafety\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCAsyncStorage\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCMaskedView\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNCPushNotificationIOS\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNFS\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNGestureHandler\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNPermissions\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNReanimated\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNSVG\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNScreens\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNShare\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/RNZipArchive\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-Core\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-CoreModules\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTActionSheet\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTAnimation\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTBlob\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTImage\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTLinking\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTNetwork\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTSettings\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTText\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-RCTVibration\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-cxxreact\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsi\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsiexecutor\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/React-jsinspector\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/ReactCommon\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/SSZipArchive\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/Yoga\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/glog\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-background-timer\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-geolocation\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-safe-area-context\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-splash-screen\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-uuid-generator\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-viewpager\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/react-native-webview\"", - "\"${PODS_CONFIGURATION_BUILD_DIR}/rn-fetch-blob\"", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - PRODUCT_NAME = GPS; - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Debug-GPS"; - }; - D4CB500E24A66BB800405D61 /* Debug-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B3ED5E905B1401FCBA420CFF /* Pods-GPSTests.debug-gps.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GPS.app/GPS"; - }; - name = "Debug-GPS"; - }; - D4CB500F24A66BB800405D61 /* Debug-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BFBEC306069776E19FE33586 /* Pods-BT.debug-gps.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "BT/BT-Production.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEAD_CODE_STRIPPING = NO; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = BT/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/ZIPFoundation/ZIPFoundation.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Private/Realm/Realm.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Public/SSZipArchive/SSZipArchive.modulemap\" -D DEBUG"; - PRODUCT_NAME = BT; - PROVISIONING_PROFILE_SPECIFIER = "match Development org.pathcheck.bt"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = "Debug-GPS"; - }; - D4CB501024A66BB800405D61 /* Debug-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 93396F628DA498595B93956B /* Pods-BTTests.debug-gps.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BT.app/BT"; - }; - name = "Debug-GPS"; - }; - D4CB501624A66BCE00405D61 /* Staging-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D4CB502C24A66C7500405D61 /* Staging-BT.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; @@ -2244,11 +1056,18 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; - ENABLE_NS_ASSERTIONS = NO; + COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -2256,22 +1075,22 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Staging-BT"; + name = Debug; }; - D4CB501724A66BCE00405D61 /* Staging-BT */ = { + D4CB500D24A66BB800405D61 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 2CE99177C2D5C9E6462639A1 /* Pods-GPS.staging-bt.xcconfig */; + baseConfigurationReference = 500296CFBBD33FA70F4403EF /* Pods-GPS.debug.xcconfig */; buildSettings = { CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "GPS/GPS-Production.entitlements"; + CODE_SIGN_ENTITLEMENTS = "$(PROJECT_NAME)/Application/GPS-Production.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; - DEAD_CODE_STRIPPING = YES; + DEAD_CODE_STRIPPING = NO; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 79Z8HUPGC3; HEADER_SEARCH_PATHS = ( @@ -2279,7 +1098,7 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/@mauron85/react-native-background-geolocation/ios/common/BackgroundGeolocation", ); - INFOPLIST_FILE = GPS/Info.plist; + INFOPLIST_FILE = "$(PROJECT_NAME)/Application/Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -2339,19 +1158,23 @@ ); PRODUCT_NAME = GPS; PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; + SWIFT_OBJC_BRIDGING_HEADER = "$(PROJECT_NAME)/Bridge/GPS-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; }; - name = "Staging-BT"; + name = Debug; }; - D4CB501824A66BCE00405D61 /* Staging-BT */ = { + D4CB500E24A66BB800405D61 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 530526E48807C46118B2B9B7 /* Pods-GPSTests.staging-bt.xcconfig */; + baseConfigurationReference = 0EA86B049D0BB9D221E6F627 /* Pods-GPSTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ENABLE_MODULES = YES; - COPY_PHASE_STRIP = NO; DEVELOPMENT_TEAM = 79Z8HUPGC3; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = ( @@ -2367,73 +1190,15 @@ PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GPS.app/GPS"; }; - name = "Staging-BT"; - }; - D4CB501924A66BCE00405D61 /* Staging-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 844C843F62B5585C2F2346EA /* Pods-BT.staging-bt.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "BT/BT-Production.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEAD_CODE_STRIPPING = YES; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = BT/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/ZIPFoundation/ZIPFoundation.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Private/Realm/Realm.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Public/SSZipArchive/SSZipArchive.modulemap\""; - PRODUCT_NAME = BT; - PROVISIONING_PROFILE_SPECIFIER = "match Development org.pathcheck.bt"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - }; - name = "Staging-BT"; - }; - D4CB501A24A66BCE00405D61 /* Staging-BT */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D04E298A8C92F0D267143C3A /* Pods-BTTests.staging-bt.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BT.app/BT"; - }; - name = "Staging-BT"; + name = Debug; }; - D4CB501B24A66BD400405D61 /* Staging-GPS */ = { + D4CB501B24A66BD400405D61 /* Staging */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D4CB500A24A66B6400405D61 /* Staging-GPS.xcconfig */; + baseConfigurationReference = D4B4A89B24C8A1A700E00A99 /* Staging.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -2477,14 +1242,14 @@ VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Staging-GPS"; + name = Staging; }; - D4CB501C24A66BD400405D61 /* Staging-GPS */ = { + D4CB501C24A66BD400405D61 /* Staging */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 145476A32A7724DCC004C292 /* Pods-GPS.staging-gps.xcconfig */; + baseConfigurationReference = 78335934CC8BDA43BF1F4759 /* Pods-GPS.staging.xcconfig */; buildSettings = { CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "GPS/GPS-Production.entitlements"; + CODE_SIGN_ENTITLEMENTS = "$(PROJECT_NAME)/Application/GPS-Production.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; DEAD_CODE_STRIPPING = YES; @@ -2495,7 +1260,7 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/@mauron85/react-native-background-geolocation/ios/common/BackgroundGeolocation", ); - INFOPLIST_FILE = GPS/Info.plist; + INFOPLIST_FILE = "$(PROJECT_NAME)/Application/Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -2555,14 +1320,14 @@ ); PRODUCT_NAME = GPS; PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; + SWIFT_OBJC_BRIDGING_HEADER = "$(PROJECT_NAME)/Bridge/GPS-Bridging-Header.h"; SWIFT_VERSION = 5.0; }; - name = "Staging-GPS"; + name = Staging; }; - D4CB501D24A66BD400405D61 /* Staging-GPS */ = { + D4CB501D24A66BD400405D61 /* Staging */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FF44B2971AD1FA3EB0E99224 /* Pods-GPSTests.staging-gps.xcconfig */; + baseConfigurationReference = 606EB844E7D64AB33707A02E /* Pods-GPSTests.staging.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ENABLE_MODULES = YES; @@ -2583,73 +1348,14 @@ PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GPS.app/GPS"; }; - name = "Staging-GPS"; - }; - D4CB501E24A66BD400405D61 /* Staging-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = EB49F7B51E4014329A4AA36D /* Pods-BT.staging-gps.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "BT/BT-Production.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEAD_CODE_STRIPPING = YES; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = BT/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/ZIPFoundation/ZIPFoundation.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Private/Realm/Realm.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Public/SSZipArchive/SSZipArchive.modulemap\""; - PRODUCT_NAME = BT; - PROVISIONING_PROFILE_SPECIFIER = "match Development org.pathcheck.bt"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - }; - name = "Staging-GPS"; - }; - D4CB501F24A66BD400405D61 /* Staging-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 751F8AE184B9709A8C3817BF /* Pods-BTTests.staging-gps.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BT.app/BT"; - }; - name = "Staging-GPS"; + name = Staging; }; - D4CB502024A66BFA00405D61 /* Release-GPS */ = { + D4CB502024A66BFA00405D61 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D4CB500B24A66B8700405D61 /* Release-GPS.xcconfig */; + baseConfigurationReference = D4B4A89924C8A1A700E00A99 /* Release.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -2693,14 +1399,14 @@ VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; }; - name = "Release-GPS"; + name = Release; }; - D4CB502124A66BFA00405D61 /* Release-GPS */ = { + D4CB502124A66BFA00405D61 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 22E0DA6B2DECC1B29A4C7B64 /* Pods-GPS.release-gps.xcconfig */; + baseConfigurationReference = 69C0CB99A1291E1928585D63 /* Pods-GPS.release.xcconfig */; buildSettings = { CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "GPS/GPS-Production.entitlements"; + CODE_SIGN_ENTITLEMENTS = "$(PROJECT_NAME)/Application/GPS-Production.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; DEAD_CODE_STRIPPING = YES; @@ -2711,7 +1417,7 @@ "$(SRCROOT)/../node_modules/react-native-splash-screen/ios", "$(SRCROOT)/../node_modules/@mauron85/react-native-background-geolocation/ios/common/BackgroundGeolocation", ); - INFOPLIST_FILE = GPS/Info.plist; + INFOPLIST_FILE = "$(PROJECT_NAME)/Application/Info.plist"; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -2771,14 +1477,14 @@ ); PRODUCT_NAME = GPS; PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; + SWIFT_OBJC_BRIDGING_HEADER = "$(PROJECT_NAME)/Bridge/GPS-Bridging-Header.h"; SWIFT_VERSION = 5.0; }; - name = "Release-GPS"; + name = Release; }; - D4CB502224A66BFA00405D61 /* Release-GPS */ = { + D4CB502224A66BFA00405D61 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 2F42C67AFB6A35F87118053B /* Pods-GPSTests.release-gps.xcconfig */; + baseConfigurationReference = E2D33B0C827A4C85EDDD6272 /* Pods-GPSTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ENABLE_MODULES = YES; @@ -2799,69 +1505,10 @@ PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SWIFT_OBJC_BRIDGING_HEADER = "GPS/GPS-Bridging-Header.h"; SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GPS.app/GPS"; }; - name = "Release-GPS"; - }; - D4CB502324A66BFA00405D61 /* Release-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A5B812656CA17568F2153FC2 /* Pods-BT.release-gps.xcconfig */; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "BT/BT-Production.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEAD_CODE_STRIPPING = YES; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = BT/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-lc++", - ); - OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.modulemap\" -Xcc -fmodule-map-file=\"${PODS_CONFIGURATION_BUILD_DIR}/ZIPFoundation/ZIPFoundation.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Private/Realm/Realm.modulemap\" -Xcc -fmodule-map-file=\"${PODS_ROOT}/Headers/Public/SSZipArchive/SSZipArchive.modulemap\""; - PRODUCT_NAME = BT; - PROVISIONING_PROFILE_SPECIFIER = "match Development org.pathcheck.bt"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - }; - name = "Release-GPS"; - }; - D4CB502424A66BFA00405D61 /* Release-GPS */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A74024E269FF63C56B1025EA /* Pods-BTTests.release-gps.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - COPY_PHASE_STRIP = NO; - DEVELOPMENT_TEAM = 79Z8HUPGC3; - INFOPLIST_FILE = COVIDSafePathsTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.5; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - OTHER_LDFLAGS = ( - "-ObjC", - "-lc++", - "$(inherited)", - ); - PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "BT/BT-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/BT.app/BT"; - }; - name = "Release-GPS"; + name = Release; }; /* End XCBuildConfiguration section */ @@ -2869,67 +1516,32 @@ 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "GPSTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 00E356F61AD99517003FC87E /* Debug-BT */, - D4CB500E24A66BB800405D61 /* Debug-GPS */, - 00E356F71AD99517003FC87E /* Release-BT */, - D4CB502224A66BFA00405D61 /* Release-GPS */, - D4CB501824A66BCE00405D61 /* Staging-BT */, - D4CB501D24A66BD400405D61 /* Staging-GPS */, + D4CB500E24A66BB800405D61 /* Debug */, + D4CB502224A66BFA00405D61 /* Release */, + D4CB501D24A66BD400405D61 /* Staging */, ); defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-BT"; + defaultConfigurationName = Debug; }; 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "GPS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 13B07F941A680F5B00A75B9A /* Debug-BT */, - D4CB500D24A66BB800405D61 /* Debug-GPS */, - 13B07F951A680F5B00A75B9A /* Release-BT */, - D4CB502124A66BFA00405D61 /* Release-GPS */, - D4CB501724A66BCE00405D61 /* Staging-BT */, - D4CB501C24A66BD400405D61 /* Staging-GPS */, + D4CB500D24A66BB800405D61 /* Debug */, + D4CB502124A66BFA00405D61 /* Release */, + D4CB501C24A66BD400405D61 /* Staging */, ); defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-BT"; + defaultConfigurationName = Debug; }; 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "COVIDSafePaths" */ = { isa = XCConfigurationList; buildConfigurations = ( - 83CBBA201A601CBA00E9B192 /* Debug-BT */, - D4CB500C24A66BB800405D61 /* Debug-GPS */, - 83CBBA211A601CBA00E9B192 /* Release-BT */, - D4CB502024A66BFA00405D61 /* Release-GPS */, - D4CB501624A66BCE00405D61 /* Staging-BT */, - D4CB501B24A66BD400405D61 /* Staging-GPS */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-BT"; - }; - C53FD0BC24719AD1006D3268 /* Build configuration list for PBXNativeTarget "BT" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C53FD0BD24719AD1006D3268 /* Debug-BT */, - D4CB500F24A66BB800405D61 /* Debug-GPS */, - C53FD0BF24719AD1006D3268 /* Release-BT */, - D4CB502324A66BFA00405D61 /* Release-GPS */, - D4CB501924A66BCE00405D61 /* Staging-BT */, - D4CB501E24A66BD400405D61 /* Staging-GPS */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-BT"; - }; - C5AA24DC24768FFF00BA0A99 /* Build configuration list for PBXNativeTarget "BTTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C5AA24DD24768FFF00BA0A99 /* Debug-BT */, - D4CB501024A66BB800405D61 /* Debug-GPS */, - C5AA24DF24768FFF00BA0A99 /* Release-BT */, - D4CB502424A66BFA00405D61 /* Release-GPS */, - D4CB501A24A66BCE00405D61 /* Staging-BT */, - D4CB501F24A66BD400405D61 /* Staging-GPS */, + D4CB500C24A66BB800405D61 /* Debug */, + D4CB502024A66BFA00405D61 /* Release */, + D4CB501B24A66BD400405D61 /* Staging */, ); defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Release-BT"; + defaultConfigurationName = Debug; }; /* End XCConfigurationList section */ @@ -2950,11 +1562,6 @@ package = 68D8970424809AA40091A254 /* XCRemoteSwiftPackageReference "swift-scrypt" */; productName = Scrypt; }; - 68EFB21224856EC6003D84F3 /* Scrypt */ = { - isa = XCSwiftPackageProductDependency; - package = 68D8970424809AA40091A254 /* XCRemoteSwiftPackageReference "swift-scrypt" */; - productName = Scrypt; - }; /* End XCSwiftPackageProductDependency section */ }; rootObject = 83CBB9F71A601CBA00E9B192 /* Project object */; diff --git a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Development.xcscheme b/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Development.xcscheme deleted file mode 100644 index 7f77c2eefc..0000000000 --- a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Development.xcscheme +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Production.xcscheme b/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Production.xcscheme deleted file mode 100644 index 0d6a29191f..0000000000 --- a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/BT_Production.xcscheme +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Development.xcscheme b/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Development.xcscheme index b114798f8d..7ccbb10e6a 100644 --- a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Development.xcscheme +++ b/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Development.xcscheme @@ -41,7 +41,7 @@ @@ -59,7 +59,7 @@ + buildConfiguration = "Debug"> diff --git a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Production.xcscheme b/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Production.xcscheme index 432c72e106..0d1176e2a3 100644 --- a/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Production.xcscheme +++ b/ios/COVIDSafePaths.xcodeproj/xcshareddata/xcschemes/GPS_Production.xcscheme @@ -41,7 +41,7 @@ @@ -59,7 +59,7 @@ + buildConfiguration = "Release"> diff --git a/ios/AppDelegate.h b/ios/COVIDSafePaths/Application/AppDelegate.h similarity index 100% rename from ios/AppDelegate.h rename to ios/COVIDSafePaths/Application/AppDelegate.h diff --git a/ios/GPS/AppDelegate.m b/ios/COVIDSafePaths/Application/AppDelegate.m similarity index 100% rename from ios/GPS/AppDelegate.m rename to ios/COVIDSafePaths/Application/AppDelegate.m diff --git a/ios/GPS/GPS-Production.entitlements b/ios/COVIDSafePaths/Application/GPS-Production.entitlements similarity index 100% rename from ios/GPS/GPS-Production.entitlements rename to ios/COVIDSafePaths/Application/GPS-Production.entitlements diff --git a/ios/GPS/Info.plist b/ios/COVIDSafePaths/Application/Info.plist similarity index 100% rename from ios/GPS/Info.plist rename to ios/COVIDSafePaths/Application/Info.plist diff --git a/ios/GPS/Log.swift b/ios/COVIDSafePaths/Application/Log.swift similarity index 100% rename from ios/GPS/Log.swift rename to ios/COVIDSafePaths/Application/Log.swift diff --git a/ios/GPS/bridge/main.m b/ios/COVIDSafePaths/Application/main.m similarity index 100% rename from ios/GPS/bridge/main.m rename to ios/COVIDSafePaths/Application/main.m diff --git a/ios/GPS/GPS-Bridging-Header.h b/ios/COVIDSafePaths/Bridge/GPS-Bridging-Header.h similarity index 100% rename from ios/GPS/GPS-Bridging-Header.h rename to ios/COVIDSafePaths/Bridge/GPS-Bridging-Header.h diff --git a/ios/GPS/bridge/SecureStorageManager.m b/ios/COVIDSafePaths/Bridge/SecureStorageManager.m similarity index 100% rename from ios/GPS/bridge/SecureStorageManager.m rename to ios/COVIDSafePaths/Bridge/SecureStorageManager.m diff --git a/ios/GPS/bridge/SecureStorageManager.swift b/ios/COVIDSafePaths/Bridge/SecureStorageManager.swift similarity index 100% rename from ios/GPS/bridge/SecureStorageManager.swift rename to ios/COVIDSafePaths/Bridge/SecureStorageManager.swift diff --git a/ios/GPS/Config/Debug-GPS.xcconfig b/ios/COVIDSafePaths/Config/Debug.xcconfig similarity index 94% rename from ios/GPS/Config/Debug-GPS.xcconfig rename to ios/COVIDSafePaths/Config/Debug.xcconfig index 9cf487b385..686ae72a90 100644 --- a/ios/GPS/Config/Debug-GPS.xcconfig +++ b/ios/COVIDSafePaths/Config/Debug.xcconfig @@ -1,5 +1,5 @@ // -// Debug-GPS.xcconfig +// Debug.xcconfig // COVIDSafePaths // // Created by Rob Visentin on 6/26/20. diff --git a/ios/GPS/Config/Release-GPS.xcconfig b/ios/COVIDSafePaths/Config/Release.xcconfig similarity index 94% rename from ios/GPS/Config/Release-GPS.xcconfig rename to ios/COVIDSafePaths/Config/Release.xcconfig index 82868cb2f6..579d6731ca 100644 --- a/ios/GPS/Config/Release-GPS.xcconfig +++ b/ios/COVIDSafePaths/Config/Release.xcconfig @@ -1,5 +1,5 @@ // -// Release-GPS.xcconfig +// Release.xcconfig // COVIDSafePaths // // Created by Rob Visentin on 6/26/20. diff --git a/ios/GPS/Config/Staging-GPS.xcconfig b/ios/COVIDSafePaths/Config/Staging.xcconfig similarity index 94% rename from ios/GPS/Config/Staging-GPS.xcconfig rename to ios/COVIDSafePaths/Config/Staging.xcconfig index cae74c5ce5..d60b901ff4 100644 --- a/ios/GPS/Config/Staging-GPS.xcconfig +++ b/ios/COVIDSafePaths/Config/Staging.xcconfig @@ -1,5 +1,5 @@ // -// Staging-GPS.xcconfig +// Staging.xcconfig // COVIDSafePaths // // Created by Rob Visentin on 6/26/20. diff --git a/ios/GPS/Config/Version.xcconfig b/ios/COVIDSafePaths/Config/Version.xcconfig similarity index 78% rename from ios/GPS/Config/Version.xcconfig rename to ios/COVIDSafePaths/Config/Version.xcconfig index 7ae4157fb6..5d0d011e84 100644 --- a/ios/GPS/Config/Version.xcconfig +++ b/ios/COVIDSafePaths/Config/Version.xcconfig @@ -14,5 +14,5 @@ MARKETING_VERSION = 1.0.0 CURRENT_PROJECT_VERSION = 8 // Release -MARKETING_VERSION[config=Release-GPS] = 1.2.1 -CURRENT_PROJECT_VERSION[config=Release-GPS] = 1 +MARKETING_VERSION[config=Release] = 1.2.1 +CURRENT_PROJECT_VERSION[config=Release] = 1 diff --git a/ios/GPS/Extension/Array+Extension.swift b/ios/COVIDSafePaths/Extension/Array+Extension.swift similarity index 100% rename from ios/GPS/Extension/Array+Extension.swift rename to ios/COVIDSafePaths/Extension/Array+Extension.swift diff --git a/ios/GPS/Extension/MAURLocation+Extension.swift b/ios/COVIDSafePaths/Extension/MAURLocation+Extension.swift similarity index 100% rename from ios/GPS/Extension/MAURLocation+Extension.swift rename to ios/COVIDSafePaths/Extension/MAURLocation+Extension.swift diff --git a/ios/GPS/Extension/String+Extension.swift b/ios/COVIDSafePaths/Extension/String+Extension.swift similarity index 100% rename from ios/GPS/Extension/String+Extension.swift rename to ios/COVIDSafePaths/Extension/String+Extension.swift diff --git a/ios/ar.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/ar.lproj/InfoPlist.strings similarity index 100% rename from ios/ar.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/ar.lproj/InfoPlist.strings diff --git a/ios/ar.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/ar.lproj/Localizable.strings similarity index 100% rename from ios/ar.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/ar.lproj/Localizable.strings diff --git a/ios/da.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/da.lproj/InfoPlist.strings similarity index 100% rename from ios/da.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/da.lproj/InfoPlist.strings diff --git a/ios/da.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/da.lproj/Localizable.strings similarity index 100% rename from ios/da.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/da.lproj/Localizable.strings diff --git a/ios/en.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/en.lproj/InfoPlist.strings similarity index 100% rename from ios/en.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/en.lproj/InfoPlist.strings diff --git a/ios/en.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/en.lproj/Localizable.strings similarity index 100% rename from ios/en.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/en.lproj/Localizable.strings diff --git a/ios/es-PR.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/es-PR.lproj/InfoPlist.strings similarity index 100% rename from ios/es-PR.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/es-PR.lproj/InfoPlist.strings diff --git a/ios/es-PR.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/es-PR.lproj/Localizable.strings similarity index 100% rename from ios/es-PR.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/es-PR.lproj/Localizable.strings diff --git a/ios/es.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/es.lproj/InfoPlist.strings similarity index 100% rename from ios/es.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/es.lproj/InfoPlist.strings diff --git a/ios/es.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/es.lproj/Localizable.strings similarity index 100% rename from ios/es.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/es.lproj/Localizable.strings diff --git a/ios/fr-HT.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/fr-HT.lproj/Localizable.strings similarity index 100% rename from ios/fr-HT.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/fr-HT.lproj/Localizable.strings diff --git a/ios/fr.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/fr.lproj/InfoPlist.strings similarity index 100% rename from ios/fr.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/fr.lproj/InfoPlist.strings diff --git a/ios/fr.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/fr.lproj/Localizable.strings similarity index 100% rename from ios/fr.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/fr.lproj/Localizable.strings diff --git a/ios/ht.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/ht.lproj/InfoPlist.strings similarity index 100% rename from ios/ht.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/ht.lproj/InfoPlist.strings diff --git a/ios/ht.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/ht.lproj/Localizable.strings similarity index 100% rename from ios/ht.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/ht.lproj/Localizable.strings diff --git a/ios/id.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/id.lproj/Localizable.strings similarity index 100% rename from ios/id.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/id.lproj/Localizable.strings diff --git a/ios/it.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/it.lproj/InfoPlist.strings similarity index 100% rename from ios/it.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/it.lproj/InfoPlist.strings diff --git a/ios/it.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/it.lproj/Localizable.strings similarity index 100% rename from ios/it.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/it.lproj/Localizable.strings diff --git a/ios/ml.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/ml.lproj/InfoPlist.strings similarity index 100% rename from ios/ml.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/ml.lproj/InfoPlist.strings diff --git a/ios/ml.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/ml.lproj/Localizable.strings similarity index 100% rename from ios/ml.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/ml.lproj/Localizable.strings diff --git a/ios/nl.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/nl.lproj/InfoPlist.strings similarity index 100% rename from ios/nl.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/nl.lproj/InfoPlist.strings diff --git a/ios/nl.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/nl.lproj/Localizable.strings similarity index 100% rename from ios/nl.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/nl.lproj/Localizable.strings diff --git a/ios/pl.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/pl.lproj/InfoPlist.strings similarity index 100% rename from ios/pl.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/pl.lproj/InfoPlist.strings diff --git a/ios/pl.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/pl.lproj/Localizable.strings similarity index 100% rename from ios/pl.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/pl.lproj/Localizable.strings diff --git a/ios/pt-BR.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/pt-BR.lproj/InfoPlist.strings similarity index 100% rename from ios/pt-BR.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/pt-BR.lproj/InfoPlist.strings diff --git a/ios/pt-BR.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/pt-BR.lproj/Localizable.strings similarity index 100% rename from ios/pt-BR.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/pt-BR.lproj/Localizable.strings diff --git a/ios/ro.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/ro.lproj/Localizable.strings similarity index 100% rename from ios/ro.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/ro.lproj/Localizable.strings diff --git a/ios/ru.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/ru.lproj/InfoPlist.strings similarity index 100% rename from ios/ru.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/ru.lproj/InfoPlist.strings diff --git a/ios/ru.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/ru.lproj/Localizable.strings similarity index 100% rename from ios/ru.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/ru.lproj/Localizable.strings diff --git a/ios/sk.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/sk.lproj/InfoPlist.strings similarity index 100% rename from ios/sk.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/sk.lproj/InfoPlist.strings diff --git a/ios/sk.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/sk.lproj/Localizable.strings similarity index 100% rename from ios/sk.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/sk.lproj/Localizable.strings diff --git a/ios/tl.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/tl.lproj/InfoPlist.strings similarity index 100% rename from ios/tl.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/tl.lproj/InfoPlist.strings diff --git a/ios/tl.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/tl.lproj/Localizable.strings similarity index 100% rename from ios/tl.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/tl.lproj/Localizable.strings diff --git a/ios/vi.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/vi.lproj/Localizable.strings similarity index 100% rename from ios/vi.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/vi.lproj/Localizable.strings diff --git a/ios/zh-Hant.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/zh-Hant.lproj/Localizable.strings similarity index 100% rename from ios/zh-Hant.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/zh-Hant.lproj/Localizable.strings diff --git a/ios/zz-ZZ.lproj/InfoPlist.strings b/ios/COVIDSafePaths/Localization/zz-ZZ.lproj/InfoPlist.strings similarity index 100% rename from ios/zz-ZZ.lproj/InfoPlist.strings rename to ios/COVIDSafePaths/Localization/zz-ZZ.lproj/InfoPlist.strings diff --git a/ios/zz-ZZ.lproj/Localizable.strings b/ios/COVIDSafePaths/Localization/zz-ZZ.lproj/Localizable.strings similarity index 100% rename from ios/zz-ZZ.lproj/Localizable.strings rename to ios/COVIDSafePaths/Localization/zz-ZZ.lproj/Localizable.strings diff --git a/ios/COVIDSafePaths/Base.lproj/LaunchScreen.xib b/ios/COVIDSafePaths/Resources/Base.lproj/LaunchScreen.xib similarity index 100% rename from ios/COVIDSafePaths/Base.lproj/LaunchScreen.xib rename to ios/COVIDSafePaths/Resources/Base.lproj/LaunchScreen.xib diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/Contents.json b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/Contents.json rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/Contents.json diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-1024@1x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-1024@1x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-1024@1x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-1024@1x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-1.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-1.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-1.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-1.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-2.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-2.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-2.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x-2.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@2x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@3x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@3x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-20@3x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-20@3x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x-1.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x-1.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x-1.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x-1.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29@2x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29@3x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29@3x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-29@3x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-29@3x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-30.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-30.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-30.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-30.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x-1.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x-1.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x-1.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x-1.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-40@2x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-40@3x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-40@3x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-40@3x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-40@3x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-60@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-60@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-60@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-60@2x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-60@3x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-60@3x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-60@3x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-60@3x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-76.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-76.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-76.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-76.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-76@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-76@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-76@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-76@2x.png diff --git a/ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-83.5@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-83.5@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIcon.appiconset/icon-ios-83.5@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIcon.appiconset/icon-ios-83.5@2x.png diff --git a/ios/GPS/Images.xcassets/AppIconDev.appiconset/Contents.json b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconDev.appiconset/Contents.json similarity index 100% rename from ios/GPS/Images.xcassets/AppIconDev.appiconset/Contents.json rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconDev.appiconset/Contents.json diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/100.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/100.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/100.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/100.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/1024.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/1024.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/1024.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/1024.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/114.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/114.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/114.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/114.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/120.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/120.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/120.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/120.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/144.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/144.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/144.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/144.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/152.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/152.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/152.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/152.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/167.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/167.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/167.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/167.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/180.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/180.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/180.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/180.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/20.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/20.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/20.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/20.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/29.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/29.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/29.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/29.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/40.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/40.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/40.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/40.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/50.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/50.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/50.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/50.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/57.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/57.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/57.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/57.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/58.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/58.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/58.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/58.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/60.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/60.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/60.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/60.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/72.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/72.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/72.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/72.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/76.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/76.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/76.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/76.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/80.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/80.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/80.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/80.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/87.png b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/87.png similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/87.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/87.png diff --git a/ios/GPS/Images.xcassets/AppIconStaging.appiconset/Contents.json b/ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/Contents.json similarity index 100% rename from ios/GPS/Images.xcassets/AppIconStaging.appiconset/Contents.json rename to ios/COVIDSafePaths/Resources/Images.xcassets/AppIconStaging.appiconset/Contents.json diff --git a/ios/BT/Images.xcassets/Contents.json b/ios/COVIDSafePaths/Resources/Images.xcassets/Contents.json similarity index 100% rename from ios/BT/Images.xcassets/Contents.json rename to ios/COVIDSafePaths/Resources/Images.xcassets/Contents.json diff --git a/ios/GPS/Images.xcassets/bgImage.imageset/Contents.json b/ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/Contents.json similarity index 100% rename from ios/GPS/Images.xcassets/bgImage.imageset/Contents.json rename to ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/Contents.json diff --git a/ios/GPS/Images.xcassets/bgImage.imageset/loading - light.png b/ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/loading - light.png similarity index 100% rename from ios/GPS/Images.xcassets/bgImage.imageset/loading - light.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/loading - light.png diff --git a/ios/GPS/Images.xcassets/bgImage.imageset/loading - light@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/loading - light@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/bgImage.imageset/loading - light@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/loading - light@2x.png diff --git a/ios/GPS/Images.xcassets/bgImage.imageset/loading - light@3x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/loading - light@3x.png similarity index 100% rename from ios/GPS/Images.xcassets/bgImage.imageset/loading - light@3x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/bgImage.imageset/loading - light@3x.png diff --git a/ios/GPS/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo.png b/ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo.png similarity index 100% rename from ios/GPS/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo.png diff --git a/ios/GPS/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@2x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@2x.png similarity index 100% rename from ios/GPS/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@2x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@2x.png diff --git a/ios/GPS/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@3x.png b/ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@3x.png similarity index 100% rename from ios/GPS/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@3x.png rename to ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/COVIDSafePathsLogo@3x.png diff --git a/ios/GPS/Images.xcassets/logoImage.imageset/Contents.json b/ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/Contents.json similarity index 100% rename from ios/GPS/Images.xcassets/logoImage.imageset/Contents.json rename to ios/COVIDSafePaths/Resources/Images.xcassets/logoImage.imageset/Contents.json diff --git a/ios/GPS/storage/GPSSecureStorage.swift b/ios/COVIDSafePaths/storage/GPSSecureStorage.swift similarity index 100% rename from ios/GPS/storage/GPSSecureStorage.swift rename to ios/COVIDSafePaths/storage/GPSSecureStorage.swift diff --git a/ios/GPS/storage/Location.swift b/ios/COVIDSafePaths/storage/Location.swift similarity index 100% rename from ios/GPS/storage/Location.swift rename to ios/COVIDSafePaths/storage/Location.swift diff --git a/ios/Common/SafePathsSecureStorage.swift b/ios/COVIDSafePaths/storage/SafePathsSecureStorage.swift similarity index 100% rename from ios/Common/SafePathsSecureStorage.swift rename to ios/COVIDSafePaths/storage/SafePathsSecureStorage.swift diff --git a/ios/GPS/Images.xcassets/Contents.json b/ios/GPS/Images.xcassets/Contents.json deleted file mode 100644 index da4a164c91..0000000000 --- a/ios/GPS/Images.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/ios/GPS/storage/Geohash.swift b/ios/GPS/storage/Geohash.swift deleted file mode 100644 index b34ad544e8..0000000000 --- a/ios/GPS/storage/Geohash.swift +++ /dev/null @@ -1,120 +0,0 @@ -// The MIT License (MIT) -// -// Copyright (c) 2019 Naoki Hiroshima -// -// 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. -// Influenced by https://github.com/nh7a/Geohash/blob/master/Sources/Geohash/Geohash.swift -// GeoHash information https://www.movable-type.co.uk/scripts/geohash.html -import Foundation - -public struct Geohash { - public static func decode(hash: String) -> (latitude: (min: Double, max: Double), longitude: (min: Double, max: Double))? { - // For example: hash = u4pruydqqvj - let bits = hash.map { bitmap[$0] ?? "?" }.joined(separator: "") - guard bits.count % 5 == 0 else { return nil } - // bits = 1101000100101011011111010111100110010110101101101110001 - - let (lat, lon) = bits.enumerated().reduce(into: ([Character](), [Character]())) { - if $1.0 % 2 == 0 { - $0.1.append($1.1) - } else { - $0.0.append($1.1) - } - } - // lat = [1,1,0,1,0,0,0,1,1,1,1,1,1,1,0,1,0,1,1,0,0,1,1,0,1,0,0] - // lon = [1,0,0,0,0,1,1,1,0,1,1,0,0,1,1,0,1,0,0,1,1,1,0,1,1,1,0,1] - - func combiner(array a: (min: Double, max: Double), value: Character) -> (Double, Double) { - let mean = (a.min + a.max) / 2 - return value == "1" ? (mean, a.max) : (a.min, mean) - } - - let latRange = lat.reduce((-90.0, 90.0), combiner) - // latRange = (57.649109959602356, 57.649111300706863) - - let lonRange = lon.reduce((-180.0, 180.0), combiner) - // lonRange = (10.407439023256302, 10.407440364360809) - - return (latRange, lonRange) - } - - public static func encode(latitude: Double, longitude: Double, length: Int) -> String { - // For example: (latitude, longitude) = (57.6491106301546, 10.4074396938086) - func combiner(array a: (min: Double, max: Double, array: [String]), value: Double) -> (Double, Double, [String]) { - let mean = (a.min + a.max) / 2 - if value < mean { - return (a.min, mean, a.array + "0") - } else { - return (mean, a.max, a.array + "1") - } - } - - let lat = Array(repeating: latitude, count: length*5).reduce((-90.0, 90.0, [String]()), combiner) - // lat = (57.64911063015461, 57.649110630154766, [1,1,0,1,0,0,0,1,1,1,1,1,1,1,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,0,...]) - - let lon = Array(repeating: longitude, count: length*5).reduce((-180.0, 180.0, [String]()), combiner) - // lon = (10.407439693808236, 10.407439693808556, [1,0,0,0,0,1,1,1,0,1,1,0,0,1,1,0,1,0,0,1,1,1,0,1,1,1,0,1,0,1,..]) - - let latlon = lon.2.enumerated().flatMap { [$1, lat.2[$0]] } - // latlon - [1,1,0,1,0,0,0,1,0,0,1,0,1,0,1,1,0,1,1,1,1,1,0,1,0,1,1,1,1,...] - - let bits = latlon.enumerated().reduce([String]()) { $1.0 % 5 > 0 ? $0 << $1.1 : $0 + $1.1 } - // bits: [11010,00100,10101,10111,11010,11110,01100,10110,10110,11011,10001,10010,10101,...] - - let arr = bits.compactMap { charmap[$0] } - // arr: [u,4,p,r,u,y,d,q,q,v,j,k,p,b,...] - - return String(arr.prefix(length)) - } - - /// Radius around center point of a given location - public static let GEO_CIRCLE_RADII: [(latitude: Double, longitude: Double)] = [ - (0, 0), // center - (0.0001, 0), // N - (0.00007, 0.00007), // NE - (0, 0.0001), // E - (-0.00007, 0.00007), // SE - (-0.0001, 0), // S - (-0.00007, -0.00007), // SW - (0, -0.0001), // W - (0.00007, -0.00007) //NW - ] - - // MARK: Private - private static let bitmap = "0123456789bcdefghjkmnpqrstuvwxyz".enumerated() - .map {($1, String(integer: $0, radix: 2, padding: 5))} - .reduce(into: [Character: String]()) { $0[$1.0] = $1.1 } - - private static let charmap = bitmap - .reduce(into: [String: Character]()) { $0[$1.1] = $1.0 } -} - -private func + (left: [String], right: String) -> [String] { - var arr = left - arr.append(right) - return arr -} - -private func << (left: [String], right: String) -> [String] { - var arr = left - var s = arr.popLast()! - s += right - arr.append(s) - return arr -} diff --git a/ios/Podfile b/ios/Podfile index 5851c592d5..b833e8895f 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -2,12 +2,11 @@ platform :ios, '9.0' require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' project 'COVIDSafePaths.xcodeproj', -'Debug-BT' => :debug, -'Debug-GPS' => :debug, -'Release-BT' => :release, -'Release-GPS' => :release, -'Staging-BT' => :release, -'Staging-GPS' => :release +'Debug' => :debug, +'Release' => :release, +'Staging' => :release + +inhibit_all_warnings! def shared_pods # Pods for COVIDSafePaths @@ -46,8 +45,7 @@ def shared_pods pod 'RNReanimated', :path => '../node_modules/react-native-reanimated' - permissions_path = '../node_modules/react-native-permissions/ios' - pod 'Permission-Notifications', :path => "#{permissions_path}/Notifications.podspec" + pod 'Permission-Notifications', :path => "../node_modules/react-native-permissions/ios/Notifications.podspec" pod 'Realm', :modular_headers => true pod 'RealmSwift', :modular_headers => true @@ -56,16 +54,7 @@ def shared_pods end def gps_pods - permissions_path = '../node_modules/react-native-permissions/ios' - pod 'Permission-LocationAlways', :path => "#{permissions_path}/LocationAlways.podspec" -end - -def bt_pods - ### These should be removed in a future commit - permissions_path = '../node_modules/react-native-permissions/ios' - pod 'Permission-LocationAlways', :path => "#{permissions_path}/LocationAlways.podspec" - pod 'Alamofire', '~> 4.9.1' - pod 'ZIPFoundation' + pod 'Permission-LocationAlways', :path => "../node_modules/react-native-permissions/ios/LocationAlways.podspec" end target 'GPS' do @@ -73,19 +62,8 @@ target 'GPS' do shared_pods end -target 'BT' do - bt_pods - shared_pods -end - target 'GPSTests' do inherit! :search_paths gps_pods shared_pods end - -target 'BTTests' do - inherit! :search_paths - bt_pods - shared_pods -end diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 62da032b14..6b409781ba 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,7 +1,6 @@ PODS: - "@mauron85_react-native-background-geolocation (0.6.3)": - React - - Alamofire (4.9.1) - boost-for-react-native (1.63.0) - BVLinearGradient (2.5.6): - React @@ -290,11 +289,9 @@ PODS: - SSZipArchive (= 2.2.2) - SSZipArchive (2.2.2) - Yoga (1.14.0) - - ZIPFoundation (0.9.11) DEPENDENCIES: - "@mauron85_react-native-background-geolocation (from `../node_modules/@mauron85/react-native-background-geolocation`)" - - Alamofire (~> 4.9.1) - BVLinearGradient (from `../node_modules/react-native-linear-gradient`) - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) @@ -354,16 +351,13 @@ DEPENDENCIES: - RNSVG (from `../node_modules/react-native-svg`) - RNZipArchive (from `../node_modules/react-native-zip-archive`) - Yoga (from `../node_modules/react-native/ReactCommon/yoga`) - - ZIPFoundation SPEC REPOS: trunk: - - Alamofire - boost-for-react-native - Realm - RealmSwift - SSZipArchive - - ZIPFoundation EXTERNAL SOURCES: "@mauron85_react-native-background-geolocation": @@ -479,7 +473,6 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: "@mauron85_react-native-background-geolocation": fa34ab82e94212be16ef6e75c32bcb707b0a1524 - Alamofire: 85e8a02c69d6020a0d734f6054870d7ecb75cf18 boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872 DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2 @@ -538,8 +531,7 @@ SPEC CHECKSUMS: RNZipArchive: ab51bc004a31657f34010254a9182014c6a81217 SSZipArchive: fa16b8cc4cdeceb698e5e5d9f67e9558532fbf23 Yoga: f2a7cd4280bfe2cca5a7aed98ba0eb3d1310f18b - ZIPFoundation: b1f0de4eed33e74a676f76e12559ab6b75990197 -PODFILE CHECKSUM: d641f53b267b5fdc2398388c8211cf0739401d29 +PODFILE CHECKSUM: a70cd2a7867b1a342049fd907a0dace84082799b COCOAPODS: 1.9.1 diff --git a/package.json b/package.json index 513ebc61d4..42a41bddbf 100644 --- a/package.json +++ b/package.json @@ -10,10 +10,8 @@ "format": "yarn prettier --write", "lint": "eslint ./", "validate": "yarn prettier --list-different && yarn tsc && yarn lint", - "run-android-bt": "react-native run-android --variant=btDebug --appId=org.pathcheck.covidsafepathsBt", - "run-android-gps": "react-native run-android --variant=gpsDebug --appId=org.pathcheck.covidsafepaths", - "run-ios-bt": "yarn install:pod && react-native run-ios --scheme \"BT_Development\" --configuration \"Debug-BT\" --simulator \"iPhone 11 (13.5)\"", - "run-ios-gps": "yarn install:pod && react-native run-ios --scheme \"GPS_Development\" --configuration \"Debug-GPS\"", + "run-android": "react-native run-android --variant=gpsDebug --appId=org.pathcheck.covidsafepaths", + "run-ios": "yarn install:pod && react-native run-ios --scheme \"GPS_Development\" --configuration \"Debug\"", "preinstall": "node -e \"if(process.env.npm_execpath.indexOf('yarn') === -1) throw new Error('You must use Yarn to install, not NPM')\"", "install:pod": "cd ios && bundle install --quiet && bundle exec pod install --silent", "postinstall": "./scripts/install-submodules.sh node_modules/\\@mauron85/react-native-background-geolocation && patch-package && node ./scripts/replace.js && npx react-native-jetifier", @@ -186,48 +184,24 @@ }, "configurations": { "iphone11.sim": { - "binaryPath": "ios/build/Build/Products/Release-GPS-iphonesimulator/GPS.app", - "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme GPS_Production -configuration Release-GPS -sdk iphonesimulator -derivedDataPath ios/build", + "binaryPath": "ios/build/Build/Products/Release-iphonesimulator/GPS.app", + "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme GPS_Production -configuration Release -sdk iphonesimulator -derivedDataPath ios/build", "type": "ios.simulator", "device": { "type": "iPhone 11" } }, "iphone8.sim": { - "binaryPath": "ios/build/Build/Products/Release-GPS-iphonesimulator/GPS.app", - "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme GPS_Production -configuration Release-GPS -sdk iphonesimulator -derivedDataPath ios/build", + "binaryPath": "ios/build/Build/Products/Release-iphonesimulator/GPS.app", + "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme GPS_Production -configuration Release -sdk iphonesimulator -derivedDataPath ios/build", "type": "ios.simulator", "device": { "type": "iPhone 8" } }, "iphone-se.sim": { - "binaryPath": "ios/build/Build/Products/Release-GPS-iphonesimulator/GPS.app", - "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme GPS_Production -configuration Release-GPS -sdk iphonesimulator -derivedDataPath ios/build", - "type": "ios.simulator", - "device": { - "type": "iPhone SE (2nd generation)" - } - }, - "iphone11-bt.sim": { - "binaryPath": "ios/build/Build/Products/Release-BT-iphonesimulator/BT.app", - "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme BT_Production -configuration Release-BT -sdk iphonesimulator -derivedDataPath ios/build", - "type": "ios.simulator", - "device": { - "type": "iPhone 11" - } - }, - "iphone8-bt.sim": { - "binaryPath": "ios/build/Build/Products/Release-BT-iphonesimulator/BT.app", - "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme BT_Production -configuration Release-BT -sdk iphonesimulator -derivedDataPath ios/build", - "type": "ios.simulator", - "device": { - "type": "iPhone 8" - } - }, - "iphone-se-bt.sim": { - "binaryPath": "ios/build/Build/Products/Release-BT-iphonesimulator/BT.app", - "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme BT_Production -configuration Release-BT -sdk iphonesimulator -derivedDataPath ios/build", + "binaryPath": "ios/build/Build/Products/Release-iphonesimulator/GPS.app", + "build": "xcodebuild -workspace ios/COVIDSafePaths.xcworkspace -scheme GPS_Production -configuration Release -sdk iphonesimulator -derivedDataPath ios/build", "type": "ios.simulator", "device": { "type": "iPhone SE (2nd generation)"